オンラインクラス認証APIキー
- 講師としてログイン。APIキーを取得。
オンラインクラスリソース
- 講師(service_manager) => 複数のサービス(services) => 複数のコース(learning_courses)
- 受講生(user) => 複数のコース(learning_courses)
レスポンスステータス
200「成功」
201「成功(リソースの作成)」
400「クライアントエラー」
400「APIキーが無効です」
404「リソースが見つからない」
500「サーバエラー」
講師が管理しているコースを全て取得(GET)
curl -v -X GET https://www.the-online-class.com/api/v1/service_manager/learning_courses \
-H 'Authorization: Bearer {token}' \
HTTPリクエスト
GET https://www.the-online-class.com/api/v1/service_manager/learning_courses
リクエストヘッダー
Authorization
- Bearer
{channel access token}
パスパラメータ
パスパラメータ | 説明 |
---|---|
service_ids | 講師が管理しているサービスのID |
レスポンス
ステータスコード200
とコース情報のJSONオブジェクトの配列を返します。
{
"status": "200",
"message": "Loaded LearningCourses",
"learning_courses": [
{
"id": 1,
"name": "フリーエンジニアコース",
"course_duration": 365,
"is_schedule_force": true
},
{
"id": 2,
"name": "フリーエンジニアコース",
"course_duration": 365,
"is_schedule_force": true
}
]
}
key | type | 説明 |
---|---|---|
learning_courses[].id | Number | コースのID |
learning_courses[].name | String | コースの名前 |
learning_courses[].course_duration | Number | コースの受講期限 |
learning_courses[].is_schedule_force | Boolean | コース受講生に学習スケジュールの設定を強制させるかどうかのフラグ |
講師が管理しているのコースを取得(GET)
curl -v -X POST https://www.the-online-class.com/api/v1/service_manager/learning_courses/{learning_course_id} \
-H 'Authorization: Bearer {token}' \
HTTPリクエスト
GET https://www.the-online-class.com/api/v1/service_manager/learning_courses/{learning_course_id}
リクエストヘッダー
Authorization
- Bearer
{token}
パスパラメータ
リクエストパラメーター | 説明 |
---|---|
learning_course_id (必須) | コースのID |
レスポンス
ステータスコード200
とコース情報のJSONオブジェクトを返します。
{
"status": "200",
"message": "Loaded LearningCourse",
"learning_course": {
"id": 1,
"name": "フリーエンジニア養成コース",
"course_duration": null,
"is_schedule_force": true
}
}
key | type | 説明 |
---|---|---|
learning_course.id | Number | コースのID |
learning_course.name | String | コースの名前 |
learning_course.course_duration | Number | コースの受講期限 |
learning_course.is_schedule_force | Boolean | コース受講生に学習スケジュールの設定を強制させるかどうかのフラグ |
講師が管理しているのコース情報を更新(PATCH)
curl -v -X PATCH https://www.the-online-class.com/api/v1/service_manager/learning_courses/{learning_course_id} \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {token}' \
-d '{ \
"name": "フリーエンジニアコース", \
"course_duration": 365, \
"is_schedule_force": true \
}'
HTTPリクエスト
PATCH https://www.the-online-class.com/api/v1/service_manager/learning_courses/{learning_course_id}
リクエストヘッダー
Authorization
- Bearer
{token}
リクエストボディー
{
"name": "フリーエンジニアコース",
"course_duration": 365,
"is_schedule_force": true
}
リクエストボディー | タイプ | 説明 |
---|---|---|
name | String | コースの名前 |
course_duration | Number | コースの受講期限 |
is_schedule_force | Boolean | コース受講生に学習スケジュールの設定を強制させるかどうかのフラグ |
※name,course_duration,is_schedule_forceのいずれかのパラメーターを含めてください
レスポンス
ステータスコード200
と更新コース情報のJSONオブジェクトを返します。
{
"status": "200",
"message": "Updated LearningCourse",
"learning_course": {
"id": 1,
"name": "test",
"course_duration": 365,
"is_schedule_force": true
}
}
key | type | 説明 |
---|---|---|
learning_course.id | Number | コースのID |
learning_course.name | String | コースの名前 |
learning_course.course_duration | Number | コースの受講期限 |
learning_course.is_schedule_force | Boolean | コース受講生に学習スケジュールの設定を強制させるかどうかのフラグ |
講師が管理している全受講生取得(GET)
curl -v -X GET https://www.the-online-class.com/api/v1/service_manager/users \
-H 'Authorization: Bearer {token}'
HTTPリクエスト
GET https://www.the-online-class.com/api/v1/service_manager/users
リクエストヘッダー
Authorization
- Bearer
{token}
パスパラメーター
パスパラメーター | 説明 |
---|---|
learning_course_ids | コースのIDの配列 |
レスポンス
ステータスコード200
と受講生情報のJSONオブジェクトの配列を返します。
{
"status": "200",
"message": "Loaded users",
"users": [
{
"id": 1,
"email": "k.kfjfdsjaojima09211986@gmail.com",
"name": "小島",
"learning_courses": [
{
"id": 1,
"name": "test"
}
]
},
{
"id": 2,
"email": "kamifjlsanomi.3nd@docomo.ne.jp",
"name": "尾﨑",
"learning_courses": [
{
"id": 1,
"name": "test"
}
]
}
]
}
key | type | 説明 |
---|---|---|
users | 配列 | 受講生オブジェクトの配列 |
users[].id | String | 受講生のID |
users[].name | String | 受講生の名前 |
users[].email | String | 受講生のemail |
users[].learning_courses | 配列 | 受講生の受講コースオブジェクトの配列 |
users[].learning_courses[].id | String | 受講生の受講コースのID |
users[].learning_courses[].name | String | 受講生の受講コースの名前 |
特定受講生一人の情報取得(GET)
curl -v -X GET https://www.the-online-class.com/api/v1/service_manager/users/1 \
-H 'Authorization: Bearer {token}' \
HTTPリクエスト
GET https://www.the-online-class.com/api/v1/service_manager/users/{user_id}
(emailを指定してユーザーを特定する場合)
GET https://www.the-online-class.com/api/v1/service_manager/users/find_email
リクエストヘッダー
Authorization
- Bearer
{token}
パスパラメーター(/find_email でemailを指定してユーザーを特定)
パスパラメーター | 説明 |
---|---|
ユーザーのemail |
レスポンス
ステータスコード200
と受講生情報のJSONオブジェクトを返します。
{
"status": "200",
"message": "Loaded user",
"user": {
"id": 1,
"email": "k.kfjfdsjaojima09211986@gmail.com",
"name": "小島",
"learning_courses": [
{
"id": 1,
"name": "test"
}
]
}
}
key | type | 説明 |
---|---|---|
uesr[].id | String | 受講生のID |
uesr[].name | String | 受講生の名前 |
uesr[].email | String | 受講生のemail |
uesr[].learning_courses | 配列 | 受講生の受講コースオブジェクトの配列 |
uesr[].learning_courses[].id | String | 受講生の受講コースのID |
uesr[].learning_courses[].name | String | 受講生の受講コースの名前 |
特定受講生一人の情報を更新(PATCH)
curl -v -X PATCH https://www.the-online-class.com/api/v1/service_manager/users/1 \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {token}' \
-d '{
"can_learning_course_ids": [1,2],
"can_not_learning_course_ids": [3]
}'
HTTPリクエスト
PATCH https://www.the-online-class.com/api/v1/service_manager/users/{user_id}
(emailを指定してユーザーを特定する場合)
GET https://www.the-online-class.com/api/v1/service_manager/users/find_email
リクエストヘッダー
Authorization
- Bearer
{token}
パスパラメーター(/find_email でemailを指定してユーザーを特定)
パスパラメーター | 説明 |
---|---|
ユーザーのemail |
リクエストボディー
{
"can_learning_course_ids":[1],
"can_not_learning_course_ids":[2]
}
リクエストボディー | タイプ | 説明 |
---|---|---|
can_learning_course_ids | コースIDの配列 | 受講可能にしたいコースのIDを指定 |
can_not_learning_course_ids | コースIDの配列 | 受講不可能にしたいコースのIDを指定 |
レスポンス
ステータスコード200
と受講生情報のJSONオブジェクトの配列を返します。
{
"status": "200",
"message": "Updated user",
"user": {
"id": 1,
"email": "k.kfjfdsjaojima09211986@gmail.com",
"name": "小島",
"learning_courses": [
{
"id": 2,
"name": "フリーエンジニアコース"
}
]
}
}
key | type | 説明 |
---|---|---|
user.id | String | 受講生のID |
user.name | String | 受講生の名前 |
user.email | String | 受講生のemail |
user.learning_courses | 配列 | 受講生の受講コースオブジェクトの配列 |
user.learning_courses[].id | String | 受講生の受講コースのID |
user.learning_courses[].name | String | 受講生の受講コースの名前 |
特定受講生を管理対象から削除(DELETE)
curl -v -X DELETE https://www.the-online-class.com/api/v1/service_manager/users/1 \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {token}' \
-d '{ \
service_ids:[1,2] \
}'
HTTPリクエスト
DELETE https://www.the-online-class.com/api/v1/service_manager/users/{user_id}
(emailを指定してユーザーを特定する場合)
GET https://www.the-online-class.com/api/v1/service_manager/users/find_email
リクエストヘッダー
Authorization
- Bearer
{token}
パスパラメーター(/find_email でemailを指定してユーザーを特定)
パスパラメーター | 説明 |
---|---|
ユーザーのemail |
リクエストボディー
{
"service_ids": [1,2]
}
リクエストボディー | タイプ | 説明 |
---|---|---|
service_ids(必須) | String | 管理対象から外すservice_idの配列 |
レスポンス
ステータスコード200
と管理対象除外受講生情報のJSONオブジェクトを返します。
{
"status": "200",
"message": "Deleted user",
"user": {
"id": 1,
"email": "k.kfjfdsjaojima09211986@gmail.com",
"name": "小島",
"learning_courses": []
}
}
key | type | 説明 |
---|---|---|
user.id | String | 受講生のID |
user.name | String | 受講生の名前 |
user.email | String | 受講生のemail |
user.learning_courses | 配列 | 受講生の受講コースオブジェクトの配列 |
user.learning_courses[].id | String | 受講生の受講コースのID |
user.learning_courses[].name | String | 受講生の受講コースの名前 |
新規受講生作成(POST)
curl -v POST https://www.the-online-class.com/api/v1/service_manager/users \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {token}' \
-d '{ \
"users":{ \
"name": "テストユーザー", \
"email": "test22222@email.com", \
"password": "password", \
}, \
"can_learning_course_ids": "1,2", \
}'
HTTPリクエスト
POST https://www.the-online-class.com/api/v1/service_manager/users
リクエストヘッダー
Authorization
- Bearer
{token}
リクエストボディー
{
"users":{
"name": "テストユーザー",
"email": "test22222@email.com",
"password": "password"
},
"can_learning_course_ids": [1,2],
"can_not_learning_course_ids": [3]
}
リクエストボディー | タイプ | 説明 |
---|---|---|
name | String | 新規に作成する受講生の名前(nameがない場合、emailの値になります) |
email(必須) | String | 新規に作成する受講生のemail |
password(必須) | String | 新規に作成する受講生のpassword |
can_learning_course_ids | コースIDの配列 | 受講可能にしたいコースのIDを指定 |
can_not_learning_course_ids | コースIDの配列 | 受講不可能にしたいコースのIDを指定 |
レスポンス
ステータスコード200
と管理対象除外受講生情報のJSONオブジェクトを返します。
{
"status": "201",
"message": "Created user",
"user": {
"id": 40,
"email": "test22222@email.com",
"name": "テストユーザー",
"learning_courses": [
{
"id": 1,
"name": "test"
},
{
"id": 2,
"name": "フリーエンジニアコース"
}
]
}
}
key | type | 説明 |
---|---|---|
user.id | String | 受講生のID |
user.name | String | 受講生の名前 |
user.email | String | 受講生のemail |
user.learning_courses | 配列 | 受講生の受講コースオブジェクトの配列 |
user.learning_courses[].id | String | 受講生の受講コースのID |
user.learning_courses[].name | String | 受講生の受講コースの名前 |