ユーザー名とパスワードでログインし、JWTトークンを取得します
| userName required | string |
| password required | string |
{- "userName": "string",
- "password": "string"
}{- "token": "string",
- "permission": "string",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string"
}特定のユーザーのログイン記録を取得します
| userid required | string |
[- {
- "status": "string",
- "failureReason": "string",
- "ipAddress": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "userName": "string",
- "fullName": "string"
}
][- {
- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}
]個人整理コードを使用して新規ユーザーを登録します
| displayName required | string |
| password required | string |
| registrationCode required | string |
string |
{- "displayName": "string",
- "password": "string",
- "registrationCode": "string",
- "email": "string"
}{- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}{- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}特定のユーザーの情報を更新します
| userName required | string |
| fullName | string |
string | |
| userName | string |
| displayName | string |
| expirationDate | string <date-time> |
| roll | string |
{- "fullName": "string",
- "email": "string",
- "userName": "string",
- "displayName": "string",
- "expirationDate": "2019-08-24T14:15:22Z",
- "roll": "string"
}{- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}{- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}ログインユーザー自身の情報を更新します
| fullName | string |
| userName | string |
| displayName | string |
{- "fullName": "string",
- "userName": "string",
- "displayName": "string"
}{- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}ログインユーザー自身のパスワードを変更します
| oldPassword required | string |
| newPassword required | string |
{- "oldPassword": "string",
- "newPassword": "string"
}{- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}リセットコードを使用してパスワードを再設定します
| email required | string |
| resetPasswordCode required | string |
| newPassword required | string |
{- "email": "string",
- "resetPasswordCode": "string",
- "newPassword": "string"
}{- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}[- {
- "fullName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "code": "string",
- "ShortId": "string",
- "ShortUrl": "string",
- "expireIn": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z"
}
]運営によるユーザーの事前登録と個人整理コードの発行
| fullName required | string |
| userName required | string |
| organizationId required | string |
| email required | string |
| initialPassword required | string |
| expirationDate required | string <date-time> |
{- "fullName": "string",
- "userName": "string",
- "organizationId": "string",
- "email": "string",
- "initialPassword": "string",
- "expirationDate": "2019-08-24T14:15:22Z"
}{- "fullName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "code": "string",
- "ShortId": "string",
- "ShortUrl": "string",
- "expireIn": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z"
}特定の仮登録情報を取得します
| code required | string |
| X-Initial-Password required | string |
{- "fullName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "code": "string",
- "ShortId": "string",
- "ShortUrl": "string",
- "expireIn": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z"
}{- "fullName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "code": "string",
- "ShortId": "string",
- "ShortUrl": "string",
- "expireIn": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z"
}{- "fullName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "code": "string",
- "ShortId": "string",
- "ShortUrl": "string",
- "expireIn": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z"
}ユーザーのポイント一覧を取得します(バッジ情報付き)
| organizationId | string 組織IDで絞り込み(任意) |
[- {
- "nickname": "string",
- "points": 0,
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "badges": [
- {
- "id": "string",
- "imageUrl": "string"
}
]
}
]特定のユーザーの学習記録とログイン記録を取得します
| userid required | string |
{- "userName": "string",
- "studies": [
- { }
], - "loginLogs": [
- {
- "status": "string",
- "failureReason": "string",
- "ipAddress": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "userName": "string",
- "fullName": "string"
}
]
}特定のユーザーが所有するバッジの一覧を取得します(管理者用)
| userId | string ユーザーID(運営ユーザーのみ指定可能) |
[- {
- "id": "string",
- "badge": {
- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}, - "awardedAt": "2019-08-24T14:15:22Z",
- "source": "string",
- "sourceId": "string"
}
][- {
- "id": "string",
- "badge": {
- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}, - "awardedAt": "2019-08-24T14:15:22Z",
- "source": "string",
- "sourceId": "string"
}
]指定されたユーザーに学校教員権限を付与します。 運営ユーザーのみが実行可能です。
| userName required | string non-empty 権限を付与するユーザーのユーザー名 |
{- "userName": "target_user"
}{- "success": true,
- "message": "ユーザー「田中太郎」に学校教員権限を付与しました。",
- "user": {
- "userName": "target_user",
- "fullName": "田中 太郎",
- "displayName": "田中太郎",
- "email": "tanaka@example.com",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "permission": "30",
- "type": {
- "id": "30",
- "name": "学校教員"
}
}
}指定されたユーザーから学校教員権限を剥奪し、一般ユーザーに戻します。 運営ユーザーのみが実行可能です。
| userName required | string non-empty 権限を剥奪するユーザーのユーザー名 |
{- "userName": "target_user"
}{- "success": true,
- "message": "ユーザー「田中太郎」から学校教員権限を剥奪しました。",
- "user": {
- "userName": "target_user",
- "fullName": "田中 太郎",
- "displayName": "田中太郎",
- "email": "tanaka@example.com",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "permission": "30",
- "type": {
- "id": "30",
- "name": "学校教員"
}
}
}新規組織を作成します
| id required | string |
| name required | string |
| shortName required | string |
{- "id": "string",
- "name": "string",
- "shortName": "string"
}{- "id": "string",
- "name": "string",
- "shortName": "string"
}問題セットの一覧を取得します
| tags | string タグIDをカンマ区切りで指定 |
[- {
- "id": "string",
- "title": "string",
- "description": "string",
- "count": 0,
- "quizzes": [
- {
- "id": "string",
- "source": "string",
- "order": 0,
- "numOfQuestions": 0
}
], - "tags": [
- {
- "id": "string",
- "path": "string",
- "name": "string"
}
]
}
]新規問題セットを作成します
| title required | string |
required | Array of objects |
| description required | string |
| tags required | Array of strings |
{- "title": "string",
- "quizzes": [
- {
- "id": "string",
- "source": "string",
- "numOfQuestions": 0
}
], - "description": "string",
- "tags": [
- "string"
]
}{- "id": "string",
- "title": "string",
- "description": "string",
- "count": 0,
- "quizzes": [
- {
- "id": "string",
- "source": "string",
- "order": 0,
- "numOfQuestions": 0
}
], - "tags": [
- {
- "id": "string",
- "path": "string",
- "name": "string"
}
]
}特定の問題セットの問題を取得します
| id required | string |
| limit | integer |
| offset | integer |
| sort | string Value: "random" |
{- "id": "string",
- "title": "string",
- "description": "string",
- "count": 0,
- "quizzes": [
- {
- "id": "string",
- "source": "string",
- "order": 0,
- "numOfQuestions": 0,
- "modified": true,
- "modificationNote": "string",
- "bodyBlocks": [
- {
- "type": "planeText",
- "content": "string"
}
], - "questions": [
- {
- "id": 0,
- "symbol": "string",
- "bodyBlocks": [
- {
- "type": "planeText",
- "content": "string"
}
], - "answer": {
- "type": "singleSelect",
- "choices": [
- [
- {
- "id": 0,
- "symbol": "string",
- "label": "string"
}
]
], - "freeWord": {
- "regularExpression": "string"
}, - "correct": [
- [
- 0
]
]
}, - "solution": [
- {
- "type": "planeText",
- "content": "string"
}
]
}
]
}
], - "tags": [
- {
- "id": "string",
- "path": "string",
- "name": "string"
}
], - "limit": 0,
- "offset": 0
}特定の問題セットを更新します
| id required | string |
| title | string |
Array of objects | |
| description | string |
| tags | Array of strings |
{- "title": "string",
- "quizzes": [
- {
- "id": "string",
- "source": "string"
}
], - "description": "string",
- "tags": [
- "string"
]
}{- "id": "string",
- "title": "string",
- "description": "string",
- "count": 0,
- "quizzes": [
- {
- "id": "string",
- "source": "string",
- "order": 0,
- "numOfQuestions": 0
}
], - "tags": [
- {
- "id": "string",
- "path": "string",
- "name": "string"
}
]
}[- {
- "id": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "lastModifiedAt": "2019-08-24T14:15:22Z",
- "title": "string",
- "number": "string",
- "category": "string",
- "level": "string",
- "jsonString": "string",
- "status": "string",
- "assigned": "string",
- "lastModifiedUser": {
- "userName": "string",
- "fullName": "string",
- "displayName": "string"
}
}
]新規問題入力ジョブを作成します
| title required | string |
| number required | string |
| category required | string |
| level required | string |
| assigned required | string |
| status | string |
| jsonString | string |
{- "title": "string",
- "number": "string",
- "category": "string",
- "level": "string",
- "assigned": "string",
- "status": "string",
- "jsonString": "string"
}{- "id": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "lastModifiedAt": "2019-08-24T14:15:22Z",
- "title": "string",
- "number": "string",
- "category": "string",
- "level": "string",
- "jsonString": "string",
- "status": "string",
- "assigned": "string",
- "lastModifiedUser": {
- "userName": "string",
- "fullName": "string",
- "displayName": "string"
}
}{- "id": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "lastModifiedAt": "2019-08-24T14:15:22Z",
- "title": "string",
- "number": "string",
- "category": "string",
- "level": "string",
- "jsonString": "string",
- "status": "string",
- "assigned": "string",
- "lastModifiedUser": {
- "userName": "string",
- "fullName": "string",
- "displayName": "string"
}
}特定の問題入力ジョブを更新します
| id required | string |
| title | string |
| number | string |
| category | string |
| level | string |
| assigned | string |
| jsonString | string |
| status | string |
{- "title": "string",
- "number": "string",
- "category": "string",
- "level": "string",
- "assigned": "string",
- "jsonString": "string",
- "status": "string"
}[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "user": {
- "userName": "string",
- "fullName": "string",
- "displayName": "string"
}, - "quizSet": {
- "id": "string",
- "title": "string",
- "description": "string",
- "count": 0,
- "tags": [
- {
- "id": "string",
- "path": "string",
- "name": "string"
}
]
}, - "quiz": {
- "id": "string",
- "source": "string",
- "numOfQuestions": 0
}, - "answers": [
- { }
], - "numOfCorrectQuestions": 0
}
]学習記録を登録し、ポイントを発行します
| quizSetId required | string |
| quizId required | string |
required | Array of objects |
[- {
- "quizSetId": "string",
- "quizId": "string",
- "answers": [
- {
- "choiced": [
- [
- 0
]
], - "text": "string",
- "correct": true
}
]
}
]{- "numOfQuizzes": 0,
- "numOfQuestions": 0,
- "numOfCorrectQuestions": 0,
- "point": {
- "totalGiven": 0,
- "availableThisWeek": 0,
- "maximumThisWeek": 0
}, - "transactions": [
- {
- "id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "type": {
- "id": "string",
- "name": "string"
}, - "amount": 0,
- "commentPublic": "string",
- "stock": {
- "id": "string",
- "name": "string",
- "description": "string",
- "updatedAt": "2019-08-24T14:15:22Z"
}
}
]
}間違えた問題の学習記録を取得します
| limit | integer |
| offset | integer |
[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "user": {
- "userName": "string",
- "fullName": "string",
- "displayName": "string"
}, - "quizSet": {
- "id": "string",
- "title": "string",
- "description": "string",
- "count": 0,
- "tags": [
- {
- "id": "string",
- "path": "string",
- "name": "string"
}
]
}, - "quiz": {
- "id": "string",
- "source": "string",
- "numOfQuestions": 0
}, - "answers": [
- { }
], - "numOfCorrectQuestions": 0
}
]ポイント取引の履歴を取得します
| limit | integer |
| offset | integer |
[- {
- "id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "type": {
- "id": "string",
- "name": "string"
}, - "amount": 0,
- "commentPublic": "string",
- "stock": {
- "id": "string",
- "name": "string",
- "description": "string",
- "updatedAt": "2019-08-24T14:15:22Z"
}
}
]特定の株の詳細情報を取得します
| id required | string |
| limit | integer |
| offset | integer |
| includePrecisionPrice | string |
{- "id": "string",
- "name": "string",
- "description": "string",
- "updatedAt": "2019-08-24T14:15:22Z",
- "currentPrice": 0,
- "currentPrecisionPrice": 0,
- "histories": [
- {
- "price": 0,
- "timestamp": "2019-08-24T14:15:22Z",
- "precisionPrice": 0
}
]
}株の価格推移情報を登録します
| id required | string |
| precisionPrice required | number |
| publishedAt required | string <date-time> |
{- "precisionPrice": 0,
- "publishedAt": "2019-08-24T14:15:22Z"
}{- "id": "string",
- "stock": {
- "id": "string",
- "name": "string",
- "description": "string",
- "updatedAt": "2019-08-24T14:15:22Z"
}, - "price": 0,
- "precisionPrice": 0,
- "publishedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z"
}[- {
- "id": "string",
- "stock": {
- "id": "string",
- "name": "string",
- "description": "string",
- "updatedAt": "2019-08-24T14:15:22Z"
}, - "quantity": 0,
- "purchasePrice": 0,
- "purchasedAt": "2019-08-24T14:15:22Z",
- "currentPrice": 0,
- "currentPriceTimestamp": "2019-08-24T14:15:22Z"
}
]株を購入します
| stockId required | string |
| quantity required | integer |
{- "stockId": "string",
- "quantity": 0
}{- "id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "type": {
- "id": "string",
- "name": "string"
}, - "amount": 0,
- "commentPublic": "string",
- "stock": {
- "id": "string",
- "name": "string",
- "description": "string",
- "updatedAt": "2019-08-24T14:15:22Z"
}
}保有株を売却します
| id required | string |
| quantity | integer |
{- "quantity": 0
}{- "purchasePrice": 0,
- "sellPrice": 0,
- "sellQuantity": 0,
- "totalPriceDiff": 0,
- "transaction": {
- "id": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "type": {
- "id": "string",
- "name": "string"
}, - "amount": 0,
- "commentPublic": "string",
- "stock": {
- "id": "string",
- "name": "string",
- "description": "string",
- "updatedAt": "2019-08-24T14:15:22Z"
}
}
}[- {
- "id": "string",
- "name": "string",
- "type": "company",
- "isPinned": true,
- "unreadCount": 0,
- "lastMessageTimestamp": "2019-08-24T14:15:22Z",
- "canSendMessage": true,
- "isPublic": true,
- "description": "string"
}
]新規チャットルームを作成します
| name required | string |
| type required | string Enum: "company" "school" "admin" |
| description | string |
| canSendMessage | boolean |
| isPublic | boolean |
| participants required | Array of strings |
{- "name": "string",
- "type": "company",
- "description": "string",
- "canSendMessage": true,
- "isPublic": true,
- "participants": [
- "string"
]
}{- "id": "string",
- "name": "string",
- "type": "company",
- "isPinned": true,
- "unreadCount": 0,
- "lastMessageTimestamp": "2019-08-24T14:15:22Z",
- "canSendMessage": true,
- "isPublic": true,
- "description": "string",
- "participants": [
- {
- "id": "string",
- "userName": "string",
- "fullName": "string"
}
]
}特定のチャットルームのメッセージを取得します
| roomId required | string |
| limit | integer |
| offset | integer |
{- "messages": [
- {
- "id": "string",
- "sender": {
- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}, - "chatRoom": {
- "id": "string",
- "name": "string",
- "type": "company",
- "isPinned": true,
- "unreadCount": 0,
- "lastMessageTimestamp": "2019-08-24T14:15:22Z",
- "canSendMessage": true,
- "isPublic": true,
- "description": "string"
}, - "content": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "isRead": true,
- "attachments": [
- {
- "id": "string",
- "name": "string",
- "type": "string",
- "url": "string",
- "previewUrl": "string"
}
]
}
], - "total": 0,
- "limit": 0,
- "offset": 0
}特定のチャットルームにメッセージを送信します
| roomId required | string |
| content required | string |
Array of objects (Attachment) |
{- "content": "string",
- "attachments": [
- {
- "id": "string",
- "name": "string",
- "type": "string",
- "url": "string",
- "previewUrl": "string"
}
]
}{- "id": "string",
- "sender": {
- "id": "string",
- "status": "active",
- "userName": "string",
- "fullName": "string",
- "displayName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "email": "string",
- "emailVerified": true,
- "permission": "string",
- "pointBalance": 0,
- "expirationDate": "2019-08-24T14:15:22Z"
}, - "chatRoom": {
- "id": "string",
- "name": "string",
- "type": "company",
- "isPinned": true,
- "unreadCount": 0,
- "lastMessageTimestamp": "2019-08-24T14:15:22Z",
- "canSendMessage": true,
- "isPublic": true,
- "description": "string"
}, - "content": "string",
- "timestamp": "2019-08-24T14:15:22Z",
- "isRead": true,
- "attachments": [
- {
- "id": "string",
- "name": "string",
- "type": "string",
- "url": "string",
- "previewUrl": "string"
}
]
}現在のメンテナンスステータスを取得します。メンテナンス中の場合はメッセージも取得します。一般ユーザー向けのエンドポイントは https://storage.googleapis.com/clemy-maintenance/clemy-web-client/prod/status.json を指定してください。
{- "maintenance": true,
- "message": "string",
- "timestamp": "2019-08-24T14:15:22Z"
}メンテナンスステータスを更新します
| maintenance required | boolean メンテナンスモードの有効/無効 |
| message | string メンテナンス中に表示するメッセージ |
{- "maintenance": true,
- "message": "string"
}{- "success": true,
- "message": "string"
}管理者用APIです。作成されたプロモーションコードの一覧を取得します。
| active | boolean 現在有効なコードのみを取得するかどうか |
| limit | integer Default: 50 取得する最大件数 |
| offset | integer Default: 0 取得開始位置のオフセット |
{- "success": true,
- "data": [
- {
- "code": "EVENT2023",
- "name": "イベント参加特典",
- "description": "2023年企業見学会参加特典",
- "type": "point",
- "pointAmount": 500,
- "badgeId": null,
- "startDate": "2023-01-01T00:00:00.000Z",
- "endDate": "2023-12-31T23:59:59.999Z",
- "isReusable": false,
- "maxUsesPerUser": 1,
- "totalUses": 100,
- "currentUses": 5,
- "createdAt": "2023-04-15T09:12:33.456Z",
- "createdBy": {
- "userName": "admin_user",
- "displayName": "システム管理者"
}
}
], - "pagination": {
- "total": 25,
- "limit": 50,
- "offset": 0
}
}管理者用APIです。新しいプロモーションコードを作成します。
プロモーションコード作成リクエスト
| code required | string |
| name required | string |
| description | string |
| type required | string (PromoCodeType) Enum: "point" "badge" "both" プロモーションコードの種類 |
| pointAmount required | integer >= 0 |
| badgeId | string or null |
| startDate required | string <date-time> |
| endDate required | string <date-time> |
| isReusable required | boolean |
| maxUsesPerUser required | integer >= 1 |
| totalUses required | integer -1は無制限を表します |
{- "code": "EVENT2023",
- "name": "イベント参加特典",
- "description": "2023年企業見学会参加特典",
- "type": "point",
- "pointAmount": 500,
- "badgeId": "badge_001",
- "startDate": "2023-01-01T00:00:00.000Z",
- "endDate": "2023-12-31T23:59:59.999Z",
- "isReusable": false,
- "maxUsesPerUser": 1,
- "totalUses": 100
}{- "success": true,
- "promoCode": {
- "code": "EVENT2023",
- "name": "イベント参加特典",
- "description": "2023年企業見学会参加特典",
- "type": "point",
- "pointAmount": 500,
- "badgeId": null,
- "startDate": "2023-01-01T00:00:00.000Z",
- "endDate": "2023-12-31T23:59:59.999Z",
- "isReusable": false,
- "maxUsesPerUser": 1,
- "totalUses": 100,
- "currentUses": 0,
- "createdAt": "2023-04-15T09:12:33.456Z"
}
}管理者用APIです。指定されたコードのプロモーションコード詳細を取得します。
| code required | string プロモーションコード |
| includeUsages | boolean Default: false 使用履歴を含めるかどうか |
{- "success": true,
- "data": {
- "code": "EVENT2023",
- "name": "イベント参加特典",
- "description": "2023年企業見学会参加特典",
- "type": "point",
- "pointAmount": 500,
- "badgeId": null,
- "startDate": "2023-01-01T00:00:00.000Z",
- "endDate": "2023-12-31T23:59:59.999Z",
- "isReusable": false,
- "maxUsesPerUser": 1,
- "totalUses": 100,
- "currentUses": 5,
- "createdAt": "2023-04-15T09:12:33.456Z",
- "createdBy": {
- "userName": "admin_user",
- "displayName": "システム管理者"
}, - "usages": [
- {
- "id": "5f3b6a8d-c8e2-4f9a-9e9d-6c2a8d0f1a2b",
- "userId": "user_123",
- "userName": "user_account",
- "displayName": "ユーザー名",
- "usedAt": "2023-05-10T14:32:15.789Z",
- "pointsAwarded": 500,
- "badgeAwarded": null
}
]
}
}ユーザーがプロモーションコードを使用してポイントやバッジを獲得します。
プロモーションコード使用リクエスト
| code required | string |
{- "code": "EVENT2023"
}{- "success": true,
- "message": "プロモーションコードが正常に使用されました。",
- "rewards": {
- "points": 500,
- "badge": null
}, - "transaction": {
- "id": "8a4b7c9d-1e3f-5a2b-8c9d-1e3f5a2b8c9d",
- "timestamp": "2023-05-10T14:32:15.789Z",
- "type": {
- "id": "promo_code",
- "name": "プロモーションコード使用"
}, - "amount": 500,
- "commentPublic": "プロモーションコード「イベント参加特典」の使用により500ポイントを獲得しました。"
}, - "newBalance": 1500
}ユーザーのポイント一覧を取得します(バッジ情報付き)
| organizationId | string 組織IDで絞り込み(任意) |
[- {
- "nickname": "string",
- "points": 0,
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}, - "badges": [
- {
- "id": "string",
- "imageUrl": "string"
}
]
}
]特定のユーザーが所有するバッジの一覧を取得します(管理者用)
| userId | string ユーザーID(運営ユーザーのみ指定可能) |
[- {
- "id": "string",
- "badge": {
- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}, - "awardedAt": "2019-08-24T14:15:22Z",
- "source": "string",
- "sourceId": "string"
}
][- {
- "id": "string",
- "badge": {
- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}, - "awardedAt": "2019-08-24T14:15:22Z",
- "source": "string",
- "sourceId": "string"
}
]システムに登録されているバッジの一覧を取得します
| publicOnly | boolean Default: false 公開バッジのみを取得する場合はtrue |
[- {
- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}
]新しいバッジを作成します(管理者専用)
| name required | string バッジ名 |
| description required | string バッジの説明 |
| imageUrl required | string バッジ画像のURL |
| emoji required | string バッジを表す絵文字 |
| isPublic required | boolean 公開バッジかどうか |
{- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true
}{- "success": true,
- "badge": {
- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}
}IDを指定してバッジの詳細情報を取得します
| id required | string バッジID |
{- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}既存のバッジを更新します(管理者専用)
| id required | string バッジID |
| name | string |
| description | string |
| imageUrl | string |
| emoji | string |
| isPublic | boolean |
{- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true
}{- "success": true,
- "badge": {
- "id": "string",
- "name": "string",
- "description": "string",
- "imageUrl": "string",
- "emoji": "string",
- "isPublic": true,
- "createdAt": "2019-08-24T14:15:22Z"
}
}特定のバッジを持っているユーザーの一覧を取得します
| id required | string バッジID |
| limit | integer Default: 20 取得する最大件数 |
| offset | integer Default: 0 取得開始位置 |
{- "data": [
- {
- "user": {
- "userName": "string",
- "displayName": "string",
- "fullName": "string",
- "organization": {
- "id": "string",
- "name": "string",
- "shortName": "string"
}
}, - "badge": {
- "emoji": "string"
}, - "displayWithBadge": "string",
- "awardedAt": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "total": 0,
- "limit": 0,
- "offset": 0
}
}特定のユーザーにバッジを付与します(管理者専用)
| id required | string バッジID |
| force | boolean Default: false 既に持っている場合も再付与する |
| userName required | string 付与対象のユーザー名 |
| source | string 付与ソース(例:manual, event等) |
| sourceId | string ソースの識別子 |
{- "userName": "string",
- "source": "string",
- "sourceId": "string"
}{- "success": true,
- "message": "string",
- "userBadge": {
- "id": "string",
- "awardedAt": "2019-08-24T14:15:22Z",
- "user": {
- "userName": "string",
- "displayName": "string"
}, - "badge": {
- "id": "string",
- "name": "string",
- "emoji": "string"
}
}
}複数のユーザーに同じバッジを一括付与します(管理者専用)
| id required | string バッジID |
| userNames required | Array of strings 付与対象のユーザー名リスト |
| source | string 付与ソース |
| sourceId | string ソースの識別子 |
| overwrite | boolean 既に持っている場合も再付与する |
{- "userNames": [
- "string"
], - "source": "string",
- "sourceId": "string",
- "overwrite": true
}{- "success": true,
- "message": "string",
- "results": {
- "totalRequested": 0,
- "successCount": 0,
- "skippedCount": 0,
- "successUserNames": [
- "string"
], - "skippedUserNames": [
- "string"
]
}
}特定のユーザーからバッジを剥奪します(管理者専用)
| id required | string バッジID |
| userName required | string 剥奪対象のユーザー名 |
{- "userName": "string"
}{- "success": true,
- "message": "string",
- "revokedBadge": {
- "id": "string",
- "awardedAt": "2019-08-24T14:15:22Z",
- "user": {
- "userName": "string",
- "displayName": "string"
}, - "badge": {
- "id": "string",
- "name": "string",
- "emoji": "string"
}
}
}複数のユーザーから同じバッジを一括剥奪します(管理者専用)
| id required | string バッジID |
| userNames required | Array of strings 剥奪対象のユーザー名リスト |
| ignoreNotFound | boolean 見つからないユーザーを無視するかどうか |
{- "userNames": [
- "string"
], - "ignoreNotFound": true
}{- "success": true,
- "message": "string",
- "results": {
- "totalRequested": 0,
- "totalFound": 0,
- "successCount": 0,
- "skippedCount": 0,
- "notFoundCount": 0,
- "successUserNames": [
- "string"
], - "skippedUserNames": [
- "string"
], - "notFoundUserNames": [
- "string"
]
}
}商品の在庫情報を新規登録します(管理者専用)
| microcmsId required | string microCMSの商品ID |
| stock required | integer 在庫数 |
| isAvailable required | boolean 販売可能かどうか |
{- "microcmsId": "string",
- "stock": 0,
- "isAvailable": true
}{- "success": true,
- "item": {
- "microcmsId": "string",
- "stock": 0,
- "isAvailable": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
}商品の在庫情報を更新します(管理者専用)
| microcmsId required | string microCMSの商品ID |
| stock | integer 在庫数 |
| isAvailable | boolean 販売可能かどうか |
{- "stock": 0,
- "isAvailable": true
}{- "success": true,
- "item": {
- "microcmsId": "string",
- "stock": 0,
- "isAvailable": true,
- "updatedAt": "2019-08-24T14:15:22Z"
}
}商品を購入し、在庫を減らし、ユーザーのポイントを消費します
| microcmsId required | string microCMSの商品ID |
| quantity required | integer 購入数量(現時点では1のみサポート) |
{- "microcmsId": "string",
- "quantity": 0
}{- "success": true,
- "message": "string",
- "purchase": {
- "id": "string",
- "user": {
- "id": "string",
- "userName": "string",
- "displayName": "string"
}, - "microcmsId": "string",
- "itemName": "string",
- "points": 0,
- "purchasedAt": "2019-08-24T14:15:22Z"
}, - "newBalance": 0
}購入履歴を取得します。一般ユーザーは自分の購入履歴のみ閲覧可能、運営者は全ユーザーの購入履歴を閲覧可能です。
| limit | integer Default: 20 一度に取得する件数 |
| offset | integer Default: 0 取得開始位置 |
| userId | string 特定ユーザーの購入履歴のみ取得(運営者のみ指定可能) |
{- "data": [
- {
- "id": "string",
- "user": {
- "id": "string",
- "userName": "string",
- "displayName": "string"
}, - "microcmsId": "string",
- "itemName": "string",
- "points": 0,
- "purchasedAt": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "total": 0,
- "limit": 0,
- "offset": 0
}
}会社に対するリアクションを更新(追加・削除)します
| companyId required | string |
| reaction required | string Enum: "like" "good" "wantToGo" "interested" |
{- "reaction": "like"
}{- "counts": {
- "property1": 0,
- "property2": 0
}, - "userReactions": {
- "property1": true,
- "property2": true
}
}