Auth
登录用户
GET
/
auth
/
login-o-auth

user 登陆. 在这个示例中,我们用准入指令(access token)(1234)来call你的查找的URL(lookup URL)(比方说,是 https://oauth.provider/user?t=<%=accessToken%> 。在这个例子中,返回的查找URL(lookup URL)是 { id: 'abcd' }。我们将数据库中储存的OAuthIdentity用户信息与这个id匹配。如果匹配成功,用户即可登录并被引导到主页。

Query parameters
provider
string

你的授权(oAuth)提供者ID

accessToken
optional string

通过传输你的查询网址以便于拿到用户ID。如果没有“代码”这一环节是必须项。

code
optional string

通过传输到授权指令的终端以便于拿到指令。如果没有“代码”这一环节是必须项。如果没有accessToken(“访问指令”)这一环节是必须项。

redirect
optional string

登陆成功后,用户导航路径会被清除。

errorRedirect
optional string

如果错误出现,将用户重置于这个网址,请求参数至少需要code(“代码”)、errorName(“错误名称”)和message(“消息”)等字段。

Clans
将用户添加到部落
PUT
/
clan
/
:handle
/
members

在部落中加入一个用户

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
userId
string

使用字符串 _idslug 来识别要加入部落的用户.

Response
This endpoint returns an object.
_id
optional string
name
optional string
displayName
optional string
members
optional list of strings
ownerID
optional string
description
optional string
type
optional string
kind
optional string
metadata
optional map from strings to any
Classrooms
获得一间教室
GET
/
classrooms

教室模式之返回教室细节.

Query parameters
code
string

教室 code(”代码”)

retMemberLimit
optional double

设置返回的教室中显示的学生数量

Response
This endpoint returns an object.
_id
optional string
name
optional string
members
optional list of strings
ownerID
optional string
description
optional string
code
optional string
codeCamel
optional string
courses
optional list of objects
Show 4 properties
clanId
optional string
Classrooms
创建一个教室
POST
/
classrooms

创建一个新的空“教室”

Request
This endpoint expects an object.
name
string

教室名称

ownerID
string
aceConfig
object
Show property
Response
This endpoint returns an object.
_id
optional string
name
optional string
members
optional list of strings
ownerID
optional string
description
optional string
code
optional string
codeCamel
optional string
courses
optional list of objects
Show 4 properties
clanId
optional string
Classrooms
添加会员
PUT
/
classrooms
/
:handle
/
members

在教室插入一个用户.

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
code
string

加入教室需使用代码

userId
string

使用字符串 _idslug 用来在教室中增加用户.

retMemberLimit
optional double

设置返回的教室中显示的学生数量, 默认值为 1000

Response
This endpoint returns an object.
_id
optional string
name
optional string
members
optional list of strings
ownerID
optional string
description
optional string
courses
optional list of objects
Show 4 properties
Classrooms
从教室中移出一个学生
DELETE
/
classrooms
/
:handle
/
members

从教室中移出一个学生

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
userId
string

使用字符串 _idslug 用来从教室中移出用户.

retMemberLimit
optional double

设置返回的教室中显示的学生数量, 默认值为 1000

Response
This endpoint returns an object.
_id
optional string
name
optional string
members
optional list of strings
ownerID
optional string
description
optional string
courses
optional list of objects
Show 4 properties
Classrooms
在课程中注册用户
PUT
/
classrooms
/
:classroomHandle
/
courses
/
:courseHandle
/
enrolled

在一个教室里的一门课程上注册一个用户。 如果课程是付费课程,用户需要一个有效的订阅许可。 用户必须是教室中的一个成员。

Path parameters
classroomHandle
string

教室 _id.

courseHandle
string

课程 _id.

Query parameters
retMemberLimit
optional double

设置返回的教室中显示的学生数量, 默认值为 1000

Request
This endpoint expects an object.
userId
string
Response
This endpoint returns an object.
_id
optional string
name
optional string
members
optional list of strings
ownerID
optional string
description
optional string
courses
optional list of objects
Show 4 properties
Classrooms
删除注册用户
PUT
/
classrooms
/
:classroomHandle
/
courses
/
:courseHandle
/
remove-enrolled

将用户从注册的课程和教室中移除。

Path parameters
classroomHandle
string

教室_id.

courseHandle
string

课程_id.

Query parameters
retMemberLimit
optional double

设置返回的教室中显示的学生数量, 默认值为 1000

Request
This endpoint expects an object.
userId
string
Response
This endpoint returns an object.
_id
optional string
name
optional string
members
optional list of strings
ownerID
optional string
description
optional string
courses
optional list of objects
Show 4 properties
Classrooms
获取会员统计信息
GET
/
classrooms
/
:classroomHandle
/
stats

返回教室中所有学生的相关数据

Path parameters
classroomHandle
string

教室 _id.

Query parameters
project
optional string

限制返回的数据内容, 由以下字符串按逗号连接组成: ["creator", "playtime", "state.complete"...]

memberLimit
optional double

返回值中的学生数量, 默认为 10, 最大值为 100

memberSkip
optional double

返回值中跳过的学生数量, 和 memberLimit 共同起到分页作用

Response
This endpoint returns a list of objects.
_id
optional string
stats
optional object
Show 2 properties
Classrooms
玩过关卡
GET
/
classrooms
/
:classroomHandle
/
members
/
:memberHandle
/
sessions

返回这个教室中用户所玩得所有关卡.

Path parameters
classroomHandle
string

教室 _id.

memberHandle
string

教室成员 _id.

Response
This endpoint returns a list of objects.
state
optional object
Show property
level
optional object
Show property
levelID
optional string

关卡名,如 wakka-maul

creator
optional string
playtime
optional integer

以秒为单位游戏所玩时间

changed
optional string
created
optional string
dateFirstCompleted
optional string
submitted
optional boolean

对于竞技场来说,这一关是否已经加入进阶关卡。

published
optional boolean

分享的项目。这些项目是否已经分享给了同学。

Stats
获取游戏时间统计数据
GET
/
playtime-stats

返回游戏时间统计

Query parameters
startDate
optional string

早先有一个已经注册的用户重新创建

endDate
optional string

早先有一个已经注册的用户重新创建

country
optional string

按照国家字符串进行过滤

Response
This endpoint returns an object.
playTime
optional double

以秒统计游戏使用时间

gamesPlayed
optional double

所玩的级别

Stats
获取许可证统计信息
GET
/
license-stats

返回订阅数据统计

Response
This endpoint returns an object.
licenseDaysGranted
optional double

授权订阅天数总数量

licenseDaysUsed
optional double

订阅许可天数已使用数量

licenseDaysRemaining
optional double

订阅许可天数剩余数量

activeLicenses
optional double

活跃/有效订阅许可数量

Users
创建用户
POST
/
users

创建一个User(“用户”)

Request
This endpoint expects an object.
name
string
email
string
role
optional enum

"student" 或者 "teacher"

Show 2 enum values
preferredLanguage
optional string
heroConfig
optional object
Show property
birthday
optional string
Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
获取用户
GET
/
users
/
:handle

返回一个User(“用户”)。

Path parameters
handle
string

文件中的 _id 或者 slug.

Query parameters
includePlayTime
optional string

设置非空字符串包括反馈函数stats.playTime

Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
Update
PUT
/
users
/
:handle

修改一个 User("用户") 的姓名

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
name
optional string

设置一个新姓名

birthday
optional string

设置生日

Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
按用户获取教室
GET
/
users
/
:handle
/
classrooms

返回Clasrooms(“教室”)清单,这个用户(如果是学生)在教室里或者是教室的主人(如果是老师)。

Path parameters
handle
string

文件中的 _id 或者 slug.

Query parameters
retMemberLimit
optional double

设置返回的教室中显示的学生数量

Response
This endpoint returns a list of objects.
_id
optional string
name
optional string
members
optional list of strings
ownerID
optional string
description
optional string
code
optional string
codeCamel
optional string
courses
optional list of objects
Show 4 properties
clanId
optional string
Users
获取用户英雄
PUT
/
users
/
:handle
/
hero-config

设置用户的英雄。

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
thangType
optional string
Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
设置用户的代码配置
PUT
/
users
/
:handle
/
ace-config

设置用户的代码配置 ( 指用户在编辑器中可以修改的设置 ) , 如代码补全等.

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
liveCompletion
optional boolean

控制代码自动补全提示是否出现, 默认值是 true

behaviors
optional boolean

控制括号, 引号是否自动补齐, 默认值是 false

language
optional string

控制个人账号(学生账号无效)使用的语言, 目前仅支持 python, javascript, cpp, lua, coffeescript

Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
将一个OAuth2身份
POST
/
users
/
:handle
/
o-auth-identities

将一个OAuth2身份(OAuth2 identity)加给用户,用户可以以此身份登录。你需要将一个OAuth代码或者准入指令(access token)发送到这个端口。 1. 如果没有获得准入指令(access token)的话,系统会使用OAuth2指令URL(OAuth2 token URL)来交换获得的代码,以此获得准入指令(access token)。 2. 然后系统会在你的服务上使用查找URL(lookup URL)爱你的通过准入指令(access token) (改指令可能是你之前给予的,或者是在第一步中获得的)来查找这名用户。 并预计获得一个回应一个id属性的JSON对象。 3. 之后系统将保存用户id到我们的用户数据库中,作为一个新的OAuthIdentity. 在这个示例中, 我们用准入指令(access token)(1234)来call你的查找网址(lookup URL)(比方说是 https://oauth.provider/user?t=<%= accessToken %>)然后查找网址(lookup URL)返回{ id: 'abcd' },我们已经将这个用户储存到我们的数据库中了。

Users
授予订阅
PUT
/
users
/
:handle
/
subscription

在一段时间内授权用户访问“主页”版本的高级访问权限。

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
ends
string
Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
撤销他的高级访问权限
PUT
/
users
/
:handle
/
shorten-subscription

如果用户在一段时间已经有了高级访问权限,这将缩短/撤销他的高级访问权限。 如果结束时间少于或者等于现在时间,将撤销订阅权限并将结束时间设置为现在时间,否则将缩短订阅时间。

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
ends
string
Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
格兰特“课堂”版
PUT
/
users
/
:handle
/
license

在一段时间内给予用户使用“教室”版本的权限。定义他们的角色为"student"(“学生”)。

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
ends
string
Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
缩短用户许可
PUT
/
users
/
:handle
/
shorten-license

如果用户在一定时间内已经登陆“教室”版本,这将缩短或撤销他的权限。 如果结束比现在时间短或者和现在时间相同, 这将撤销登陆,并将结束时间设置为当前时间,否则这将缩短注册时间。

Path parameters
handle
string

文件中的 _id 或者 slug.

Request
This endpoint expects an object.
ends
string
Response
This endpoint returns an object.
_id
optional string
email
optional string
name
optional string
slug
optional string
role
optional string
stats
optional object
Show 3 properties
oAuthIdentities
optional list of objects
Show 2 properties
subscription
optional object
Show 2 properties
license
optional object
Show 2 properties
Users
搜索用户
GET
/
user-lookup
/
:property
/
:value

采用唯一、可识别属性重新定向到/users/{handle}

Path parameters
property
string

查找属性对应字符串,也许是 "israel-id" 或者 "name".

value
string

查找的值.