Put Ace Config
curl --request PUT \
--url https://codecombat.com/api/users/{handle}/ace-config \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"liveCompletion": true,
"behaviors": true,
"language": "<string>"
}
'import requests
url = "https://codecombat.com/api/users/{handle}/ace-config"
payload = {
"liveCompletion": True,
"behaviors": True,
"language": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({liveCompletion: true, behaviors: true, language: '<string>'})
};
fetch('https://codecombat.com/api/users/{handle}/ace-config', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://codecombat.com/api/users/{handle}/ace-config",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'liveCompletion' => true,
'behaviors' => true,
'language' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://codecombat.com/api/users/{handle}/ace-config"
payload := strings.NewReader("{\n \"liveCompletion\": true,\n \"behaviors\": true,\n \"language\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://codecombat.com/api/users/{handle}/ace-config")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"liveCompletion\": true,\n \"behaviors\": true,\n \"language\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://codecombat.com/api/users/{handle}/ace-config")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"liveCompletion\": true,\n \"behaviors\": true,\n \"language\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"email": "<string>",
"name": "<string>",
"slug": "<string>",
"role": "<string>",
"stats": {
"gamesCompleted": 123,
"concepts": {},
"playTime": 123
},
"oAuthIdentities": [
{
"provider": "<string>",
"id": "<string>"
}
],
"subscription": {
"ends": "<string>",
"active": true
},
"license": {
"ends": "<string>",
"active": true
}
}Users
Put Ace Config
Set the user’s aceConfig (the settings for the in-game Ace code editor), such as whether to enable autocomplete.
PUT
/
users
/
{handle}
/
ace-config
Put Ace Config
curl --request PUT \
--url https://codecombat.com/api/users/{handle}/ace-config \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"liveCompletion": true,
"behaviors": true,
"language": "<string>"
}
'import requests
url = "https://codecombat.com/api/users/{handle}/ace-config"
payload = {
"liveCompletion": True,
"behaviors": True,
"language": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({liveCompletion: true, behaviors: true, language: '<string>'})
};
fetch('https://codecombat.com/api/users/{handle}/ace-config', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://codecombat.com/api/users/{handle}/ace-config",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'liveCompletion' => true,
'behaviors' => true,
'language' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://codecombat.com/api/users/{handle}/ace-config"
payload := strings.NewReader("{\n \"liveCompletion\": true,\n \"behaviors\": true,\n \"language\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://codecombat.com/api/users/{handle}/ace-config")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"liveCompletion\": true,\n \"behaviors\": true,\n \"language\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://codecombat.com/api/users/{handle}/ace-config")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"liveCompletion\": true,\n \"behaviors\": true,\n \"language\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"email": "<string>",
"name": "<string>",
"slug": "<string>",
"role": "<string>",
"stats": {
"gamesCompleted": 123,
"concepts": {},
"playTime": 123
},
"oAuthIdentities": [
{
"provider": "<string>",
"id": "<string>"
}
],
"subscription": {
"ends": "<string>",
"active": true
},
"license": {
"ends": "<string>",
"active": true
}
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Path Parameters
The document's _id or slug.
Body
application/json
controls whether autocompletion snippets show up, the default value is true
controls whether things like automatic parenthesis and quote completion happens, the default value is false
only for home users, should be one of ["python", "javascript", "cpp", "lua", "coffeescript"] right now
Response
200 - application/json
The affected user
Subset of properties listed here
Usually either 'teacher' or 'student'
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
