URLs
- http://example.com/api/ usergroups:すべてのユーザーグループを参照。
GET
とPOST
をサポート。 - http://example.com/api/ usergroups/:id:特定のユーザー グループを参照。
GET
、PUT
、DELETE
をサポート。 - http://example.com/api/ users/:id/usergroups/:指定されたユーザーが属するユーザーグループを参照。
GET
をサポート。 - http://example.com/api/ users/:id/usergroups/:id:指定されたユーザーが属する特定のユーザーグループを参照。
PUT
、DELETE
をサポート。
ユーザーグループID1と2は、それぞれゲストと登録ユーザー用に予約されています。これらのグループは、直接参照しない限り表示されません。これらのグループを削除や変更することはできません。
フィルタリング
特定のプロパティを持つユーザーグループを検索するには、次のパラメータを使用します。
パラメータ | 説明 |
---|---|
タイプ | 特定のタイプのユーザー グループを表示。A :管理者グループC :顧客グループ |
状態 | 特定のステータスを持つユーザー グループを表示。A :有効H :非表示D :無効 |
例
http://example.com/api/usergroups?status=A
レスポンスは、すべてのアクティブなユーザーグループを含む配列です。
http://example.com/api/users?status=D&type=C
レスポンスは、無効ステータスのすべての顧客グループを含む配列です。
フィールド
ユーザーグループには、項目によって表されるいくつかのプロパティがあります。
サポートされているフィールドの完全なリストを以下に示します (必須フィールドには*が付いています)。
以下の表に記載されていない項目は、APIリクエストJSON データ内で発生した場合は無視されます。
フィールド名 | 説明 | 利用可能なメソッド | サポートされている値 |
---|---|---|---|
usergroup_id | ユーザー グループの ID。 | GET | integer |
type* | ユーザーグループのタイプ。 | GET POST PUT | A :管理者C :お客様 |
status* | ユーザーグループのステータス。 | GET POST PUT | A :有効H :非表示D :無効 |
usergroup | ユーザーグループの名前。 | GET POST PUT | string |
privileges | このグループのメンバーの権限。これは管理者グループにのみ適用されます。 | GET | array |
使用例
GET /usergroups/
curl -X GET 'http://example.com/api/usergroups'
この例のリクエストは、ユーザーグループのリストを返します。
GET /usergroups/:id
curl -X GET 'http://example.com/api/usergroups/3'
この例のリクエストでは、usergroup_id=3
を持つユーザーグループのプロパティを返します。
POST /usergroups/
HTTPリクエストの本文でデータを送信します。データはcontent-type
に準拠している必要があります。
ユーザーグループを正常に作成すると、HTTP/1.1 201 Created が返されます。
ユーザーグループを作成できなかった場合は、HTTP/1.1 400 Bad Requestが返されます。
必須項目:type, status
使用可能な項目:status, type, usergroup
curl --header 'Content-type: text/plain' -X POST 'http://example.com/api/usergroups' --data-binary 'type=A&status=D&usergroup=Managers'
この例のリクエストでは、 Managersという新しい管理者グループを作成します。ユーザー グループのステータスはDisabledに設定されます。
レスポンスでは、ユーザー グループの ID を受け取ります。
{usergroup_id: 5}
PUT /usergroups/:id/
HTTPリクエストの本文でデータを送信します。データはcontent-type
に準拠している必要があります。
必須項目:type, status
使用可能な項目:status, type, usergroup
curl --header 'Content-type: text/plain' -X PUT 'http://example.com/api/usergroups/5' --data-binary 'type=A&status=A'
この例のリクエストでは、ユーザーグループusergroup_id=5
(この場合はManagers ) のステータスをActiveに設定します。
レスポンスでは、ユーザーグループのIDを受け取ります。
{usergroup_id: 5}
DELETE /usergroups/:id
ユーザーグループを正常に削除すると、HTTP/1.1 204 No Content が返されます。
ユーザーグループを削除できなかった場合は、HTTP/1.1 400 Bad Requestが返されます。
ユーザーグループが存在しない場合は、HTTP/1.1 404 Not Foundが返されます。
curl -X DELETE 'http://example.com/api/usergroups/5'
この例のリクエストでは、usergroup_id=5
を持つユーザーグループを削除します
ユーザーとユーザーグループ
ユーザーのグループを表示
user_id=3
を持つユーザーがさまざまなユーザーグループでどのようなステータスを持っているかを確認してみましょう。
curl -X GET 'http://example.com/api/users/3/usergroups'
レスポンスとして、ユーザーグループIDとそのグループ内のユーザーのステータスを含む配列が返されます。
このリクエストでは、そのユーザーに対して利用可能ステータスを持つグループは返されません。
パラメータ | 説明 |
---|---|
link_id | ユーザーをグループに割り当てるリンクの ID。 |
usergroup_id | ユーザー グループの ID。 |
status | グループ内のユーザーのステータスA :有効:ユーザーはグループの一員ですF :利用可能:ユーザーはグループに属していませんP :保留:お客様がグループへの参加をリクエストD :拒否:お客様のグループ参加リクエストが拒否されました |
グループ内のユーザーのステータスを変更
ユーザーをグループに追加する場合は、グループ内でのユーザーのステータスをアクティブに変更します。 user_id=3
のユーザーをusergroup_id=5
のユーザーグループに追加してみましょう。
curl --header 'Content-type: text/plain' -X PUT 'http://example.com/api/users/3/usergroups/5' --data-binary 'status=A'
このリクエストは、指定されたグループにユーザーを追加し、ステータスをActiveに設定します。次のメッセージが表示されます:Status has been changed.。
ユーザーをグループに追加できなかった場合は、HTTP/1.1 400 Bad Requestが返されます。
指定された ID のユーザー グループが存在しない場合、または管理者グループにお客様を追加しようとしている場合は、エラー 400 が表示されることがあります。
ユーザーが存在しない場合は、HTTP/1.1 404 Not Foundが返されます。
グループからユーザーを削除
グループからユーザーを削除するには、次の 2 つの方法があります。
- グループ内のユーザーのステータスを利用可能に設定します。
curl --header 'Content-type: text/plain' -X PUT 'http://example.com/api/users/3/usergroups/5' --data-binary 'status=F'
DELETE
を使用します。
curl -X DELETE 'http://example.com/api/users/3/usergroups/5'