SkyPrep API

介绍

欢迎来到SkyPrep API。这个API允许你在SkyPrep中执行大多数常见的操作。这包括对用户、组、课程和注册的创建、读取、更新和删除操作。

API是一个简单的HTTP GET/POST接口,使用查询字符串参数(例如请求可以看起来像https://api.skyprep.io/admin/api/create_user?api_key=12345
&user_email = sampleuser@www.jeanhegland.com&first_name =詹姆斯……
)或POST主体参数。它围绕易用性进行设计,并且在许多编程和脚本语言中使用起来相当简单。

注意:强烈建议使用HTTP POST方法进行所有API请求,因为这将防止API密钥在服务器日志/浏览器历史记录中被意外泄露。

默认情况下,所有响应都以JSON格式返回。要返回XML,请附加参数格式等于xml的请求。

API的RESTful版本将在不久的将来可用。

我们建议使用邮递员的客户使用API进行测试,以了解数据是如何返回的。

如果你只是在谷歌Chrome浏览器中测试API,你还应该安装JSONView它将格式化并正确地取消显示JSON格式的文本。

所有的API请求都是为了https://api.skyprep.io/admin/api

任何问题都可以发送到api@www.jeanhegland.com


sdk

身份验证

API需要帐户的API密钥(api_key)及SkyPrep域名(acct_key)作为每个请求的一部分提供,以及您的平台域(没有任何HTTP或HTTPS前缀)。API密钥可以在平台的Customization选项卡中找到。所有请求必须包括api_key

**一定要保持api_key私人和安全。不要公开API密钥。**

不久的将来,将提供一个使用签名参数(HMAC/SHA2)进行身份验证的API版本,该参数不包括作为请求有效负载一部分的API密钥,以允许在面向公众/非服务器端链接中嵌入API调用。

获取https://api.skyprep.io/admin/api/test_connection #sample parameters {"api_key": "Your API Key", //Required "acct_key": "yourskyprepdomain.skyprepapp.com" //Required} #sample response {"message": "success"}

用户

SkyPrep API允许添加、更新和删除用户。

获取所有用户

获取系统中的所有用户。
返回一个JSON数组。

得到https://api.skyprep.io/admin/api/get_users
限制
整数每页的结果数量
抵消/页
整数基于上述限制的页面。
电子邮件
字符串您正在寻找的用户名
first_name
字符串通过名字找到用户
last_name
字符串根据姓氏查找用户
created_within_the_past_day
布尔在过去24小时内创建的用户。
order_by_created_at_desc
布尔按降级用户创建日期排序的订单结果
包括
布尔在响应中包含用户所属的用户组信息
include_learning_paths
布尔在响应中包含用户所在的学习路径信息
得到https://api.skyprep.io/admin/api/get_users示例响应[{" id ": 32岁的“first_name”:“约翰”,“last_name”:“母鹿”、“用户名”:“john.doe@www.jeanhegland.com”,“card_no”:“Emp。# 3211221”,“created_at”:“2013年6月23日12:00:00”/ / JSON数据},{" id ": 44岁“first_name”:“詹姆斯”,“last_name”:“迪尔”、“用户名”:"james.deere@www.jeanhegland.com", "card_no": "Emp. # 1472546", "created_at": "June 28 2013 12:00:00" //更多JSON数据},....]

得到一个用户

可以使用API检索用户数据。

得到https://api.skyprep.io/admin/api/get_user
User_id(或user_email):
整数或字符串用户的内部ID(不能更改)或用户电子邮件。
得到https://api.skyprep.io/admin/api/get_user样本参数{“user_id”:内部SkyPrep user_id(独特的)/ /或“user_email”:“用户电子邮件”}#示例响应{" id ": 32岁的“first_name”:“约翰”,“last_name”:“母鹿”、“用户名”:“john.doe@www.jeanhegland.com”,“card_no”:“Emp。# 3211221”/ / JSON数据}

创建一个用户

通过传入这些参数,可以通过API创建用户(学习者、管理员、管理人员)

文章https://api.skyprep.io/admin/api/create_user
电子邮件:
字符串(必需)用户的电子邮件
密码:
字符串(可选)用户的密码。这必须是8个字符。否则,将自动生成密码。
first_name:
字符串用户的名字
last_name:
字符串用户的姓
email_notifications
布尔用户是否收到邮件通知
卡号:
字符串用户的唯一用户标识符(例如student #, badge #)
细胞:
字符串用户手机号码
标题:
字符串用户名称
工作电话:
字符串用户的工作电话号码
地址:
字符串用户地址
角色:
字符串可用角色:admin, manager, content_manager, learner
ca_ {x}:
字符串自定义属性{x}
(注意:x是0到10之间的一个数字,例如ca_3)共有11个自定义属性
send_login_information:
布尔(假)是否向用户发送登录信息(用户名/密码)。
邮递https://api.skyprep.io/admin/api/create_user #示例参数{“email”:“james”。doakes@www.jeanhegland.com“名字”:“詹姆斯”,“姓氏”:“道克斯”,“角色”:“经理”,“头衔”:“侦探”,“手机”:“818-333-3333”,“工作电话”:“818-444-4444”,“地址”:“佛罗里达州迈阿密德克斯特大道10号”“卡号”:“徽章号158-612”,“卡号0”:“别名:Bay Harbor Butcher”}#样本响应{“id”:21,“名字”:“James”,“姓氏”:“Doakes”,“用户名”:“James”。doakes@www.jeanhegland.com“,”卡号“:”徽章编号158-612“,”角色“:”经理“//其他用户数据}”

更新用户

通过传入这些参数,用户(学习者、管理员、管理人员)可以通过API进行更新。如果参数被省略,则不更新它们。

邮递https://api.skyprep.io/admin/api/update_user

注:参数与创建以上

文章https://api.skyprep.io/admin/api/update_user样本参数{“user_email”:“james.doakes@www.jeanhegland.com”“first_name”:“詹姆斯”,“last_name”:“Doakes”,“角色”:“admin”“标题”:“侦探”,“细胞”:“818-333-3333”,“work_phone”:“818-444-4444”、“地址”:“十德克斯特开迈阿密FL”“card_no”:“徽章编号158 - 612”,“ca_0”:“别名:Bay Harbour Butcher", "access_start_date": "July 31, 2015", "access_end_date": "July 30, 2017"} #示例响应{"id": 21, "first_name": "James", "last_name": "Doakes", "username": "james.doakes@www.jeanhegland.com", "card_no": "Badge No 158-612", //其他用户数据}

删除一个用户

永久删除用户。

文章https://api.skyprep.io/admin/api/destroy_user
user_email:
字符串(必需)要删除的用户的电子邮件
POST https://api.skyprep.io/admin/api/destroy_user #示例参数{"user_email": "james.doakes@www.jeanhegland.com"} #示例响应{"message": "success"}

检索自动登录链接(SSO)

为用户获取自动登录URL(通过电子邮件)

user_email:
字符串(必需)用户的电子邮件
autocreate:
布尔(假)如果设置,则平台中不存在该用户时,将自动创建该用户
user_first_name:
字符串用户的名字
user_last_name:
字符串用户的姓
相关联:
字符串(每日)可以是'otl'或'daily'。OTL生成一次性登录键,因此如果返回的链接被遵循,它将不再工作。每天生成一个可用于全天(UTC时间)的登录密钥。
user_groups:
字符串用户应该注册的用户组名列表,用分号(;)分隔。如果群组不存在,群组也会自动创建。
(注意:这应该是名称作为字符串,而不是id)
获取https://api.skyprep.io/admin/api/get_login_key/ #示例参数{"user_email": 'dexter.morgan@www.jeanhegland.com', "autocreate": true, "key_type": "daily", "user_groups": "Forensics Lab;Miami PD Staff"} #示例响应{"email": "dexter.morgan@www.jeanhegland.com", "login_key": "abcdefghijklmnopqrstuvwxyz0123456789", "url":“https://yourskyprepdomain.skyprepapp.com/account/signin?username=dexter.morgan@www.jeanhegland.com&login_key = abcdefghijklmnopqrstuvwxyz012345689 "}

获取用户注册的课程

获得用户当前注册的所有课程(直接通过组和课程包)。
返回一个JSON的课程数组。

得到https://api.skyprep.io/admin/api/get_user_courses
user_email:
字符串(必需)用户的电子邮件
获取https://api.skyprep.io/admin/api/get_user_courses #sample response (Array) [{//Course JSON 1}, {//Course JSON 2}, ///....更多的课程)

批量将用户注册到课程、组和课程包中

用户数据可以被大量收录到课程、组和课程包中。

文章https://api.skyprep.io/admin/api/mass_enroll
user_id
整数(必需)以逗号分隔的用户id
或user_emails
电子邮件(必需)以逗号分隔的用户电子邮件
user_group_ids
整数要登记的组的以逗号分隔的id
course_ids
整数要注册的课程的以逗号分隔的id
课程包ID
整数要注册的课程包的逗号分隔ID
获取https://api.skyprep.io/admin/api/mass_enroll #示例参数{"user_emails": "dexter@www.jeanhegland.com,james@www.jeanhegland.com" "course_ids": "84,96,101,323", "user_group_ids": "505,680,4,122", "course_bundle_ids": "222"} #示例响应{"message": "success"}

课程

SkyPrep API允许你更新和删除课程。它还允许您将用户和用户组注册到课程中。

把所有的课程

在系统中获取所有课程

收到https://api.skyprep.io/admin/api/get_courses
获取https://api.skyprep.io/admin/api/get_courses #sample response [{//Course JSON 1}, {//Course JSON 2}]

课程

课程包含以下可以更新的字段。beta API目前返回额外的参数和信息,但只有下面的参数可以通过update_user行动。

id:
整数课程的内部ID(不能更改)
名称:
字符串课程名称
描述:
字符串课程描述
end_date:
日期课程结束日期
start_date:
日期开课日期
获取https://api.skyprep.io/admin/api/get_course #样本参数{"course_id": The internal SkyPrep course_id (unique)} #样本响应{"id": 101, "name": "My Course", ....//更多JSON数据}

创建课程

创建一个课程。

文章https://api.skyprep.io/admin/api/create_course
名称:
字符串课程名称
描述:
字符串课程描述。
start_date:
datetime课程的开始日期。
end_date:
字符串课程的结束日期。
活动:
布尔课程是否有效(即是否对学习者开放)
邮递https://api.skyprep.io/admin/api/create_course #样本参数{“name”:“Pratice to Perfect”,“active”:“true”}样本响应{“id”:“8877”,“name”:“Pratice to Perfect”,…}

更新一个课程

更新的课程。

文章https://api.skyprep.io/admin/api/update_course
course_id:
整数(必需)课程ID
名称:
字符串课程名称
描述:
字符串课程描述。
start_date:
datetime课程的开始日期。
end_date:
字符串课程的结束日期。
活动:
布尔课程是否有效(即是否对学习者开放)
POST https://api.skyprep.io/admin/api/update_course #示例参数{"course_id": "6294", "name": "How to Catch A Serial Killer", "active": "true"} #示例响应{"message": "success"}

删除一个课程

从系统中永久删除课程。

文章https://api.skyprep.io/admin/api/destroy_course
course_id
整数(必需)内部SkyPrep课程id
POST https://api.skyprep.io/admin/api/destroy_course #sample parameters {"course_id": "8812"} #sample response {"message": "success"}

将用户注册到课程中

可以使用API检索用户数据。

得到https://api.skyprep.io/admin/api/enroll_user_in_course
user_id
整数(必需)用户ID
或user_email
字符串(必需)用户的电子邮件
course_id
整数课程ID
course_enrollment_expiration_date
datetime或字符串注册将过期的日期
POST https://api.skyprep.io/admin/api/enroll_user_in_course #示例参数{"user_email": "dexter@www.jeanhegland.com", "course_id": "144123"} #示例响应{"message": "success"}

从课程中删除用户

文章https://api.skyprep.io/admin/api/remove_user_from_course
user_id
整数(必需)用户ID
或user_email
字符串用户的电子邮件地址
course_id
整数(必需)用户组ID
POST https://api.skyprep.io/admin/api/remove_user_from_course #示例参数{"user_email": "doakes@www.jeanhegland.com", "course_id": "18872"} #示例响应{"message": "success"}

将用户注册到课程中

将单个用户注册到多个课程中。课程作为以逗号分隔的课程id列表传入

文章https://api.skyprep.io/admin/api/enroll_user_in_courses
user_id
整数(必需)用户ID
course_ids
整数(必需)课程id(以逗号分隔)
POST https://api.skyprep.io/admin/api/enroll_user_in_courses #示例参数{"user_id": "77121" "course_ids": "13,889,15,796,9788"} #示例响应{"message": "success"}

将课程添加到用户组

文章https://api.skyprep.io/admin/api/add_course_to_user_group
course_id
整数(必需)课程ID
user_group_id
整数(必需)用户组ID
end_date
datetime或字符串这门课的最后一天是这个小组的一部分
邮递https://api.skyprep.io/admin/api/add_course_to_user_group #示例参数{“用户组id”:“1821”,“课程id”:“123123”}示例响应{“消息”:“成功”}

获取课程一次性密码(OTP)课程订阅密钥

OTP键是可以提供给学习者的课程注册键,这样他们就可以使用课程自注册链接自行注册课程。

它们类似于你可以在SkyPrep界面中设置的课程订阅键。唯一的区别是OTP键只能被单个用户使用一次。

当您需要提供有限的课程访问权限,但又不想提前注册用户时,OTP键非常有用。你可以简单地把钥匙发给他们,他们准备好了就可以注册了。

OTP键对于销售课程也很有用。当买家购买课程时,您可以向他们提供OTP密钥和注册课程的链接。OTP键只能使用一次。

请注意,生成的OTP密钥与主密钥绑定在一起subscribe_key课程的价值。如果subscribe_key更改时,OTP键会失效,除非subscribe_key恢复到以前的状态。

得到https://api.skyprep.io/admin/api/get_course_otp
course_id:
整数或字符串课程ID
数(默认值:10):
整数要生成的OTP密钥的数量
收到https://api.skyprep.io/admin/api/get_course_otp #样本参数{“课程id”:“171”,“计数”:2}#样本响应:[“1234-5123-412”,“6712-zhja-181”]

获取用户在课程中的状态

可以使用API检索用户数据。

得到https://api.skyprep.io/admin/api/get_user_course_status
User_id(或user_email):
整数或字符串用户的内部ID(不能更改)或用户电子邮件。
course_id
整数课程的内部ID。
收到https://api.skyprep.io/admin/api/get_user_course_status #示例参数{“用户id”:内部SkyPrep用户id(唯一)//或“用户电子邮件”:“用户电子邮件”,“课程id”:“8781”}示例响应{“状态”:“通过”}

将课程或学习路径添加到目录中

向目录中添加课程或学习路径。另外,还可以按用户组限制课程和学习路径的目录访问。

文章https://api.skyprep.io/admin/api/add_course_or_learning_path_to_catalog
course_ids:
整数要添加到目录中的课程的以逗号分隔的id
learning_path_ids:
整数要添加到目录中的学习路径的以逗号分隔的id
用户组标识:
整数用于限制上述课程或学习路径的用户组id(以逗号分隔)
POST https://api.skyprep.io/admin/api/add_course_or_learning_path_to_catalog #示例参数{"course_ids": "90210, 55555", "learning_path_ids": "33162, 60606", "user_group_ids" " 77070,84060 "} #示例响应{"message": "success"}

从目录中删除课程或学习路径

从目录中删除课程或学习路径。这将有效地从课程或学习路径所限制的用户组中删除可见性。

文章https://api.skyprep.io/admin/api/remove_course_or_learning_path_from_catalog
course_id:
整数要从目录中删除的课程ID
learning_path_id:
整数要从目录中删除的学习路径的ID
//AND/OR "learning_path_id": "66890"} #sample response {"message": "success"}

更新目录中的课程或学习路径注册

邮递https://api.skyprep.io/admin/api/update_catalog_enrollments
course_id:
整数要添加到目录中的课程的ID
available_to_all_users:
布尔这个选项只与上面的course_id相关。如果这个设置为true,那么上面的课程将通过课程目录提供给平台中的每个人。
learning_path_id:
整数要添加到目录中的学习路径ID
用户组标识:
整数用于限制上述课程或学习路径的用户组id(以逗号分隔)
POST https://api.skyprep.io/admin/api/update_catalog_enrollments #sample parameters {"course_id": "90210, 55555", "learning_path_id": "33162, 60606", "user_group_ids" " 77070,84060 "} #sample response {"message": "success"}

用户组

SkyPrep API允许添加、更新和删除用户组。

用户组

用户组(即组)是用户集合和课程集合。注册到用户组的用户可以访问该用户组所包含的所有课程。

得到https://api.skyprep.io/admin/api/get_user_groups

获取用户组

获取用户组及其所有用户的列表。

得到https://api.skyprep.io/admin/api/get_user_group

user_group_id
整数(必需)用户组ID
#示例参数{“用户组id”:“6401”}示例响应{“名称”:“我的课程”,“用户”:[//用户列表]}

创建用户组

通过传入这些参数,可以通过API创建用户组(学习者、管理员、管理人员)

文章https://api.skyprep.io/admin/api/create_user_group
的名字
字符串(必需)用户组名
course_ids
字符串此用户组应该可以访问的用逗号分隔的球场id
user_id
字符串应该是该组成员的用户id,由逗号分隔。
subscribe_key
字符串如果用户通过web注册URL注册,则需要输入密码才能注册到该组。
user_group_id
整数该用户组所属的用户组ID。
POST https://api.skyprep.io/admin/api/create_user_group #示例参数{"name": 'Sales Team', "course_ids": "693,431,6090", "user_ids": "352,454,5553"} #示例响应{"id": "123", "name": "Sales Team" ....}

更新用户组

更新用户组

文章https://api.skyprep.io/admin/api/update_user_group

的名字
字符串(必需)用户组名
描述
字符串用户组的描述信息
subscribe_key
字符串如果用户通过web注册URL注册,则需要输入密码才能注册到该组。
user_group_id
整数(必需)该用户组所属的用户组ID。

删除用户组

删除用户组

文章https://api.skyprep.io/admin/api/destroy_user_group

POST https://api.skyprep.io/admin/api/destroy_user_group #示例参数{"user_group_id": "6612"} #示例响应{"message": "success"}

将用户注册到用户组

邮递https://api.skyprep.io/admin/api/enroll_user_in_user_group
user_id
整数(必需)用户ID
user_group_id
整数(必需)用户组ID
user_group_enrollment_expiration_date
datetime或字符串用户组注册的截止日期
POST https://api.skyprep.io/admin/api/enroll_user_in_user_group #sample parameters {"user_id": The internal SkyPrep user_id (unique) //OR "user_email": "The users email"} #sample response {"message": "success"}

从用户组中移除用户

文章https://api.skyprep.io/admin/api/remove_user_from_user_group
user_id
整数(必需)用户ID
user_group_id
整数(必需)用户组ID
POST https://api.skyprep.io/admin/api/remove_user_from_user_group #示例参数{"user_id": "212", "user_group_id": "7633"} #示例响应{"message": "success"}

获取用户的用户组列表

获取用户所属组的列表。

得到https://api.skyprep.io/admin/api/get_user_group_enrollments_for_user
User_id(或user_email):
整数或字符串用户的内部ID(不能更改)或用户电子邮件。
获取https://api.skyprep.io/admin/api/get_user #样本参数{"user_id": The internal SkyPrep user_id (unique) //或"user_email": "The users email"} #样本响应[{"id": "1234", "name": "Marketing Group",…}, {"id": 4512, "name": "Sales Group",…},……]

将课程添加到用户组

文章https://api.skyprep.io/admin/api/add_course_to_user_group
course_id
整数(必需)课程ID
user_group_id
整数(必需)用户组ID
end_date
datetime或字符串这门课的最后一天是这个小组的一部分
邮递https://api.skyprep.io/admin/api/add_course_to_user_group #示例参数{“用户组id”:“1821”,“课程id”:“123123”}示例响应{“消息”:“成功”}

从用户组中删除课程

文章https://api.skyprep.io/admin/api/remove_course_from_user_group
course_id
整数(必需)课程ID
user_group_id
整数(必需)用户组ID
POST https://api.skyprep.io/admin/api/remove_course_from_course_group #sample parameters {"course_id": SkyPrep内部课程id (unique) //OR "user_group_id": "The internal SkyPrep user_group_id"} #sample response {"message": "success"}

学习路径

SkyPrep API允许您添加、更新和删除学习路径。

获取所有学习路径

收到https://api.skyprep.io/admin/api/get_learning_paths

找到一条学习路径

找到一条学习之路。

得到https://api.skyprep.io/admin/api/get_learning_path

learning_path_id
整数(必需)学习路径的ID
#sample response {"name": "My Learning Path", "description": "Learning Path description"}

创建学习路径

通过传入这些参数,可以通过API创建学习路径以及课程和用户注册

文章https://api.skyprep.io/admin/api/create_learning_path
的名字
字符串(必需)学习路径的名称
描述
字符串学习路径的描述
course_ids
字符串应该添加到此学习路径的课程id,由逗号分隔
user_id
字符串应该是此学习路径成员的用户id,由逗号分隔
user_group_ids
字符串应该添加到此学习路径的组id,由逗号分隔
文章https://api.skyprep.io/admin/api/create_learning_path样本参数{“名称”:“101年管理”,“描述”:“如何成功地管理你的团队”“course_ids”:“693431、6090”、“user_id”:“352454、5553”、“user_group_ids”:“111,222,333”}#示例响应{" id ": " 123 ",“名字”:“101年管理”……}

更新学习路径

更新学习路径

文章https://api.skyprep.io/admin/api/update_learning_path

learning_path_id
整数(必需)学习路径的id
的名字
字符串学习路径的名称
描述
字符串学习路径的描述
POST https://api.skyprep.io/admin/api/update_learning_path #sample parameters {"learning_path_id": "1234", "name": "New Learning Path name", "description": "New Learning Path description"} #sample response {"message": "success"}

删除学习路径

删除学习路径

**请注意:这是一个不可逆的动作。请谨慎使用此路线。**

文章https://api.skyprep.io/admin/api/destroy_learning_path

learning_path_id
整数(必需)学习路径的id
POST https://api.skyprep.io/admin/api/destroy_learning_path #sample parameters {"learning_path_id": "6612"} #sample response {"message": "success"}

将课程添加到学习路径中

文章https://api.skyprep.io/admin/api/add_course_to_learning_path
course_id
整数(必需)课程ID
learning_path_id
整数(必需)学习路径的ID
end_date
datetime或字符串这门课的最后一天是这个学习路径的一部分
POST https://api.skyprep.io/admin/api/add_course_to_learning_path #示例参数{"learning_path_id": "1821", "course_id": "123123"} #示例响应{"message": "success"}

从学习路径中删除一门课程

文章https://api.skyprep.io/admin/api/remove_course_from_learning_path
course_id
整数(必需)课程ID
learning_path_id
整数(必需)学习路径的ID
POST https://api.skyprep.io/admin/api/remove_course_from_learning_path #sample parameters {"course_id": SkyPrep内部课程id(唯一)"learning_path_id": "The internal SkyPrep learning_path_id"} #sample response {"message": "success"}

将组添加到学习路径中

文章https://api.skyprep.io/admin/api/add_group_to_learning_path
user_group_id
整数(必需)组的ID
learning_path_id
整数(必需)学习路径的ID
POST https://api.skyprep.io/admin/api/add_group_to_learning_path #示例参数{"learning_path_id": "1821", "user_group_id": "123123"} #示例响应{"message": "success"}

从学习路径中移除组

文章https://api.skyprep.io/admin/api/remove_group_from_learning_path
user_group_id
整数(必需)组的ID
learning_path_id
整数(必需)学习路径的ID
POST https://api.skyprep.io/admin/api/remove_group_from_course_group #sample parameters {"user_group_id": SkyPrep内部组id(唯一)"learning_path_id": "The internal SkyPrep learning_path_id"} #sample response {"message": "success"}

教练领导的培训

SkyPrep API允许您添加、更新和删除讲师指导的培训。

参加所有教练指导的培训

得到https://api.skyprep.io/admin/api/get_instructor_led_trainings

参加教练指导的培训

参加教练指导的培训。

收到https://api.skyprep.io/admin/api/get_instructor_led_training

instructor_led_training_id
整数(必需)讲师指导培训的ID
include_courses
布尔将返回与讲师指导培训相关的课程
#样本参数{“讲师指导的培训id”:“543”}样本响应{“名称”:“我的讲师指导的培训”,“描述”:“讲师指导的培训描述”}

找一个教练指导的训练时段

找一个教练指导的训练时段。

得到https://api.skyprep.io/admin/api/get_instructor_led_training_timeslot

instructor_led_training_timeslot_id
整数(必需)指导员带领的训练时段的ID
#示例参数{"instructor_led_training_timeslot_id": "555"}

获得教练主导的训练时段

收集教练引导的训练时间。

得到https://api.skyprep.io/admin/api/get_instructor_led_training_timeslots

开始日期
datetime讲师主导的训练时段开始日期
end_date
datetime讲师主导的训练时间结束日期
#示例参数{"start_date": "2020-01-01", "end_date": "2020-02-01"} #示例响应{"description": "指导者主导的培训时点描述","location": "时点位置","指导者":"指导者姓名"}

创建一个教练引导的培训时段

通过传入这些参数,可以通过API创建指导者引导的培训时隙

文章https://api.skyprep.io/admin/api/create_instructor_led_training_timeslot
instructor_led_training_id
整数(必需)讲师指导培训的ID
描述
字符串(必需)讲师主导的训练时间的描述
显示时区
字符串(必需)会话时间所在的时区
commencement_time
字符串(必需)时隙开始的时间
end_time
字符串(必需)时隙会话结束的时间
容量
整数(必需)这个时段的可用座位数
地方
字符串时隙的位置
教练
字符串指导课程的讲师
文章https://api.skyprep.io/admin/api/create_instructor_led_training_timeslot样本参数{“instructor_led_training_id”:“555”,“display_timezone”:“UTC”,“描述”:“描述”,“能力”:" 555 "}#反应{" id ": " 666 ",“能力”:“555”,“display_timezone”:“UTC”,“描述”:“描述”}

更新教练主导的训练时段

通过传入这些参数,可以通过API更新教员主导的培训时隙

文章https://api.skyprep.io/admin/api/update_instructor_led_training_timeslot
instructor_led_training_timeslot_id
整数(必需)指导员带领的训练时段的ID
描述
字符串(必需)讲师主导的训练时间的描述
显示时区
字符串(必需)会话时间所在的时区
commencement_time
字符串(必需)时隙开始的时间
end_time
字符串(必需)时隙会话结束的时间
容量
整数(必需)这个时段的可用座位数
地方
字符串时隙的位置
教练
字符串指导课程的讲师
文章https://api.skyprep.io/admin/api/update_instructor_led_training_timeslot样本参数{“instructor_led_training_timeslot_id”:“111”,“display_timezone”:“UTC”,“描述”:“描述”,“能力”:" 555 "}#反应{" id ": " 111 ",“能力”:“555”,“display_timezone”:“UTC”,“描述”:“描述”}

删除指导者引导的训练时段

删除指导者引导的训练时段

**请注意:这是一个不可逆的动作。请谨慎使用此路线。**

文章https://api.skyprep.io/admin/api/delete_instructor_led_training_timeslot

instructor_led_training_timeslot_id
字符串(必需)指导员带领的训练时段ID
POST https://api.skyprep.io/admin/api/delete_instructor_led_training_timeslot #样本参数{"instructor_led_training_timeslot_id": "6612"} #样本响应{"message": "success"}

获得教练带领的训练时段登记

获得教练带领的训练时段登记。

得到https://api.skyprep.io/admin/api/get_instructor_led_training_timeslot_registrations

instructor_led_training_timeslot_id
整数(必需)指导员带领的训练时段的ID
#示例参数{"instructor_led_training_timeslot_id": "555"}

创建一个指导者主导的培训时段注册

通过传入这些参数,可以通过API创建教员引导的培训时隙注册

文章https://api.skyprep.io/admin/api/create_instructor_led_training_timeslot_registrations
instructor_led_training_timeslot_id
整数(必需)指导员带领的训练时段的ID
user_id
整数(必需)用户ID
course_progress_id
整数您要添加的用户的课程进度ID
course_id
整数该课程的ID是讲师领导的培训的一部分
状态
字符串您希望将用户设置为的状态。缺省情况下,状态为pending。其他状态是“出席”或“缺席”
文章https://api.skyprep.io/admin/api/create_instructor_led_training_timeslot_registrations样本参数{“instructor_led_training_timeslot_id”:“555”,“user_id”:“111”“course_progress_id”:“444”,“course_id”:“333”,“状态”:“出席”}#示例响应{" id ": " 666 ",“状态”:“出席”,“user_id”:“111”……}

删除指导者主导的培训时隙注册

删除指导者主导的培训时隙注册

**请注意:这是一个不可逆的动作。请谨慎使用此路线。**

文章https://api.skyprep.io/admin/api/destroy_instructor_led_training_timeslot_registrations

讲师领导的培训时间段注册ID
字符串(必需)指导者主导的训练时隙注册的逗号分开的id
POST https://api.skyprep.io/admin/api/destroy_instructor_led_training_timeslot_registrations #样本参数{"instructor_led_training_timeslot_registration_ids": "6612, 4124, 6578"} #样本响应{"message": "success"}

更新教师主导的培训时段登记

更新教师主导的培训时段登记

文章https://api.skyprep.io/admin/api/update_instructor_led_training_timeslot_registration

instructor_led_training_timeslot_registration_id
整数(必需)指导员带领的训练时段注册证明
状态
字符串(必需)您希望将用户设置为的状态。缺省情况下,状态为pending。其他状态是“出席”或“缺席”
POST https://api.skyprep.io/admin/api/update_instructor_led_training_timeslot_registration #sample parameters {"instructor_led_training_timeslot_registration_id": "6612", "status": "attended"} #sample response {"instructor_led_training_timeslot_registration_id": "6612", "status": "attended"…}

课程进展

SkyPrep API允许你在课程中更新和删除用户的课程进度。

获得所有课程的进展为一个单一的课程

得到https://api.skyprep.io/admin/api/get_course_progresses
course_id
整数(必需)课程ID
course_ids
整数课程id(以逗号分隔)
user_id
整数用户ID
user_id
整数用户id(以逗号分隔)
active_courses_only
布尔仅显示课程处于活动状态时的课程进度
登记
布尔仅显示用户当前注册的课程进展
user_login_status
字符串 激活、不激活或禁用(逗号分隔)
状态
字符串 通过、失败、未启动或正在进行中(逗号分隔)
days_until_deadline_greater_than
整数超过截止日期的天数
days_until_deadline_less_than
整数比截止日期少的天数
completion_date_greater_than
整数超过完成日期的天数
completion_date_less_than
整数比完工日期少的天数
得到https://api.skyprep.io/admin/api/get_course_progresses样本参数{" course_id ": " 8812 "} #示例响应[{" id ": 21869068,“状态”:“通过”,“days_until_deadline”:空,“created_at”:“2020 - 03 - 21 t12:02:11.000z”、“updated_at”:“2021 - 04 - 08 - t22:36:07.000z”、“skip_prerequisites”:假的,“course_id”:50606年,“course_name”:“普通考试课程”、“user_id”:590142年,“user_email”:“aaron@example.com”、“commencement_date”:空,“completion_date”:“2020 - 11 - 06 t00:40:18.000z”、“last_course_item_id”:空,“percent_viewed”:0,“expiration_date”:空,“过期”:假的,“access_date”:空,“deadline_date”:空,“override_dates”:假的,“real_end_date”:空,“real_start_date”:空,“certificate_view_link”:“https://sampleapi.skyprepapp.com/certificates/show?course_progress_id=21869068&f=pdf”,“computed_deadline_date”:空,“formatted_commencement_date”:“”,“formatted_completion_date”:“06-Nov 2020”,“formatted_expiration_date”:“”,“formatted_access_date”:“”,“formatted_deadline_date”:"", "formatted_real_end_date": "", "formatted_real_start_date": "", "formatted_computed_deadline_date": ""}]

获得课程进步

获得课程进步

得到https://api.skyprep.io/admin/api/get_course_progress
user_id
整数(必需)用户ID
course_id
整数(必需)课程ID
或course_progress_id
整数(必需)课程进度ID
得到https://api.skyprep.io/admin/api/get_course_progress样本参数{" course_progress_id ": " 96854 "} #示例响应{" id ": 21869068,“状态”:“通过”,“days_until_deadline”:空,“created_at”:“2020 - 03 - 21 t12:02:11.000z”、“updated_at”:“2021 - 04 - 08 - t22:36:07.000z”、“skip_prerequisites”:假的,“course_id”:50606年,“course_name”:“普通考试课程”、“user_id”:590142年,“user_email”:“aaron@example.com”、“commencement_date”:空,“completion_date”:“2020 - 11 - 06 t00:40:18.000z”、“last_course_item_id”:空,“percent_viewed”:0,“expiration_date”:空,“过期”:假的,“access_date”:空,“deadline_date”:空,“override_dates”:假的,“real_end_date”:空,“real_start_date”:空,“certificate_view_link”:“https://sampleapi.skyprepapp.com/certificates/show?course_progress_id=21869068&f=pdf”,“computed_deadline_date”:空,“formatted_commencement_date”:“”,“formatted_completion_date”:“06-Nov 2020”,“formatted_expiration_date”:“”,“formatted_access_date”:“”,“formatted_deadline_date”:", "formatted_real_end_date": "", "formatted_real_start_date": "", "formatted_computed_deadline_date": ""}

更新课程进度

更新课程进度

文章https://api.skyprep.io/admin/api/update_course_progress
course_progress_id
整数(必需)课程进度ID
completion_date
datetime完成日期
set_status
字符串之一已通过、失败、正在进行、不适用、未启动
POST https://api.skyprep.io/admin/api/update_course_progress #示例参数{"course_progress_id": "96854", "set_status": "failed"} #示例响应{"message": "success"}

删除课程进度

从系统中永久删除课程进度

文章https://api.skyprep.io/admin/api/destroy_course_progress
课程\进度\ id:
整数(必需)coures_进程的内部SkyPrep ID
POST https://api.skyprep.io/admin/api/destroy_course_progress #示例参数{"course_progress_id": "96854"} #示例响应{"message": "success"}

获取单个用户的课程项目的进度

获取用户课程项的进度。
这个调用需要exam_id、user_id、course_id、course_progress_id和course_item_id的某种组合,以便API通过特定的course_item返回用户进度的状态。
例如,如果指定course_item_id和user_id,系统将找出属于course_item的课程,获取该课程中用户的course_progress,然后获取该course_progress的course_item_progress。
另一个例子。如果你指定exam_id和course_progress_id,系统会发现course_progress,算出用户和课程,并找到相匹配的第一个课程项目,课程,考试作为其exam_id,并返回用户course_item course_item进展。

得到https://api.skyprep.io/admin/api/get_course_item_progress
user_id
整数用户ID
course_id
整数课程ID
course_item_id
整数课程项的ID
exam_id
整数考试的ID
course_progress_id
整数课程进度ID
获取https://api.skyprep.io/admin/api/get_course_item_progress #sample parameters {"course_id": "1234", "user_id": "5223", "course_item_id": "5231",} #sample response {"message": "success"}

设置课程项目进度

为课程中的用户设置课程项目的进度

文章https://api.skyprep.io/admin/api/set_course_item_progress
course_id
整数(必需)课程ID
user_id
整数(必需)用户ID
------
course_progress_id
整数课程进度ID
course_item_id
课程项的ID1
set_status
要设置为(通过、失败、正在进行、未启动)的状态
分数
比分将被扳平
时间
开始的时间
completion_date
项目完成的日期
POST https://api.skyprep.io/admin/api/set_course_item_progress #sample parameters {"user_id": "124112", "set_status": "failed"} #sample response {"message": "success"}

报告

SkyPrep API允许您生成CSV报告。

得到一个报告

报告可以通过传入report_type参数以及报告所需的其他参数(例如:user_idcourse_idexam_id等等)。

文章https://api.skyprep.io/admin/api/get_report
格式:
之一
csv(默认)
xlsx
report_type:
字符串(必需)之一
所有用户
所有课程
single_user
single_course
single_user_single_course
single_user_single_group
single_group_all_users
single_group_all_courses
single_exam
获取https://api.skyprep.io/admin/api/get_report #示例参数{"report_type": "single_course_single_user", "user_id": "41", "course_id": "88"}

异步生成报告

报告可以通过传入report_type参数以及报告所需的其他参数(例如:user_idcourse_idexam_id等等)。

一个status_url返回,您可以访问它以获取报告的状态和数据(当报告准备好时)。

文章https://api.skyprep.io/admin/api/generate_async_report
格式:
之一
csv(默认)
xlsx
report_type:
字符串(必需)之一
所有用户
所有课程
single_user
single_course
single_user_single_course
single_user_single_group
single_group_all_users
single_group_all_courses
single_exam
收到https://api.skyprep.io/admin/api/generate_async_report #示例参数{“报告类型”:“所有用户”,“格式”:“csv”}示例响应{“状态url”:https://api.skyprepapp.com/admin/api/get_async_report?report_id=1234" }

游戏化

SkyPrep API可以让你获得用户平衡,并创建游戏化交易,为用户分配点数。

平衡用户游戏化

获得用户游戏化平衡。

得到https://api.skyprep.io/admin/api/get_user_gamification_balance

user_id(或电子邮件)
整数/字符串(必需)用户或用户邮件的内部ID
#sample parameters {"email": "testuser@example.com"} #sample response {"gamification_balance": 700}

为用户创建游戏化交易

通过传入这些参数,可以通过API创建用户的游戏化事务

文章https://api.skyprep.io/admin/api/create_gamification_transaction
user_id
整数(必需)用户ID
整数(必需)从他们的游戏化平衡中添加或扣除的金额
描述
字符串此交易的描述
{"id": 5678, "user_id": 12345, "amount": -200, "description": " deducpoints for spending on another platform"} #示例响应{"id": 5678, "user_id": 12345, "amount": 200, "description": " deducpoints for spending on another platform", "balance":900, "unique_transaction_id": "ebbb00e005dcbd439894d86b7fcf8eeb94c1f66e11c66843fb4bda1bd154159f",}

经理

SkyPrep API允许您分配与组关联的管理员权限。

从用户组获取管理员权限

从用户组获取管理员权限。

收到https://api.skyprep.io/admin/api/get_manager_permissions_from_user_group

user_id
整数(必需)用户的ID
user_group_id
整数(必需)用户组ID
#样品参数{“user_id”:“90210”,“user_group_id”:" 888 "}#示例响应{" id ": " 2006 ", "用户":{" id ":“2”“用户名”:“rita.bennett@www.jeanhegland.com”,“first_name”:“丽塔”、“last_name”:“班纳特”},“can_add_users”:“真正的”、“can_receive_notifications”:“真正的”、“can_edit_course_progress”:“真正的”、“can_remove_users”:"false", "can_add_exisiting_users": "false", "user_group": {"id": "333", "name": "Miami Metro警察局"},"can_manage_all_group_users_courses": "false", "can_add_courses_to_user_group": "true", "can_remove_courses_from_user_group": "true", "can_edit_user_password": "false"}

从用户组中删除管理器

从用户组中删除管理器。

得到https://api.skyprep.io/admin/api/remove_manager_from_user_group

user_id
整数(必需)用户的ID
user_group_id
整数(必需)用户组ID
#示例参数{"user_id": "90210", "user_group_id": "888"} #示例响应{"message": "success"}

将管理员分配给用户组

将管理员分配给用户组。

得到https://api.skyprep.io/admin/api/assign_manager_to_user_group

user_id
整数(必需)用户的ID
user_group_id
整数(必需)用户组ID
can_add_users
布尔添加用户到用户组的权限
can_receive_notifications
布尔允许从用户组接收关于用户的通知
can_edit_course_progress
布尔编辑用户组中用户的课程进度的权限
can_remove_users
布尔具有从用户组中移除用户的权限
can_add_exisiting_users
布尔将现有用户从用户列表添加到用户组的权限
can_manage_all_group_users_courses
布尔管理用户组中用户的所有课程的权限
can_add_courses_to_user_group
布尔允许将课程添加到用户组
can_remove_courses_from_user_group
布尔允许从用户组中删除课程
can_edit_user_password
布尔从用户组编辑用户密码的权限
#样品参数{“user_id”:“90210”,“user_group_id”:“888”,“can_add_courses_to_user_group”:“0”,“can_remove_courses_from_user_group”:“0”,}#示例响应{" id ": " 2006 ", "用户":{" id ":“2”“用户名”:“rita.bennett@www.jeanhegland.com”,“first_name”:“丽塔”、“last_name”:“班纳特”},“can_add_users”:“真正的”、“can_receive_notifications”:“真正的”、“can_edit_course_progress”:“真正的”、“can_remove_users”:“false”,“can_add_exisiting_users”:“false”,“user_group”:{" id ": " 333 ", "名称":“迈阿密地铁警察部门”},“can_manage_all_group_users_courses”:“false”,“can_add_courses_to_user_group”:"can_remove_courses_from_user_group": "false", "can_edit_user_password": "false"}

更新用户组中的管理员权限

更新用户组中的管理器权限。

收到https://api.skyprep.io/admin/api/update_manager_permissions_in_user_group

user_id
整数(必需)用户的ID
user_group_id
整数(必需)用户组ID
can_add_users
布尔添加用户到用户组的权限
can_receive_notifications
布尔允许从用户组接收关于用户的通知
can_edit_course_progress
布尔编辑用户组中用户的课程进度的权限
can_remove_users
布尔具有从用户组中移除用户的权限
can_add_exisiting_users
布尔将现有用户从用户列表添加到用户组的权限
can_manage_all_group_users_courses
布尔管理用户组中用户的所有课程的权限
can_add_courses_to_user_group
布尔允许将课程添加到用户组
can_remove_courses_from_user_group
布尔允许从用户组中删除课程
can_edit_user_password
布尔从用户组编辑用户密码的权限
#样品参数{“user_id”:“90210”,“user_group_id”:“888”“can_add_courses_to_user_group”:“0”,“can_remove_courses_from_user_group”:“0”,}#示例响应{" id ": " 2006 ", "用户":{" id ":“2”“用户名”:“rita.bennett@www.jeanhegland.com”,“first_name”:“丽塔”、“last_name”:“班纳特”},“can_add_users”:“真正的”、“can_receive_notifications”:“真正的”、“can_edit_course_progress”:“真正的”、“can_remove_users”:“false”,“can_add_exisiting_users”:“false”,“user_group”:{" id ": " 333 ", "名称":“迈阿密地铁警察部门”},“can_manage_all_group_users_courses”:“false”,“can_add_courses_to_user_group”:"can_remove_courses_from_user_group": "false", "can_edit_user_password": "false"}

你的SkyPrep帐户

SkyPrep API允许您更新您的SkyPrep帐户。

账户

您的SkyPrep账户信息。

得到https://api.skyprep.io/admin/api/get_program
收到https://api.skyprep.io/admin/api/get_program #示例响应{“acct_key”:“myapp.skyprepapp.com”,“name”:“您的SkyPrep培训计划”,//更多JSON数据}

获取系统数据

获取关于平台的数据/统计数据

得到https://api.skyprep.io/admin/api/get_data
data_type:
字符串(必需)之一user_count,
admin_count,
learner_count,
course_count,
用户组计数
获取https://api.skyprep.io/admin/api/get_data #sample parameters {"data_type": "learner_count"} #sample response {"data": "587"}

内容

SkyPrep API允许您获取内容。

得到的材料

获得平台中的所有材料

得到https://api.skyprep.io/admin/api/get_materials
获取https://api.skyprep.io/admin/api/get_materials #sample response [{//Material 1}, {//Material 2}]
Baidu