cam — Cloud Access Management
cam · 2019-01-16
ListUsersForGroup
POST
Query the list of users associated with a user group.
Wire call
Converge Cloud is RPC over HTTP. There is one path — / — and the action travels in the X-TC-Action header. The /cam/ListUsersForGroup path used in the OpenAPI document is a documentation convenience so each action is addressable; it is not a route on the server.
curl
curl -sS https://cam.api3.convergecloud.com/ \
-H 'Authorization: TC3-HMAC-SHA256 Credential=<SecretId>/<YYYY-MM-DD>/cam/tc3_request, SignedHeaders=content-type;host;x-tc-action, Signature=<sig>' \
-H 'Content-Type: application/json; charset=utf-8' \
-H 'Host: cam.api3.convergecloud.com' \
-H 'X-TC-Action: ListUsersForGroup' \
-H 'X-TC-Version: 2019-01-16' \
-H 'X-TC-Timestamp: <unix-seconds>' \
-H 'X-TC-Region: luzon' \
-d '{}'Request parameters
| Field | Type | Required | Description |
|---|---|---|---|
| GroupId | integer | Yes | User group ID |
| Page | integer | No | Page number; default is 1 |
| Rp | integer | No | Number of entries per page; default is 20 |
Response
Fields are returned inside the Response envelope. Converge Cloud answers HTTP 200 for errors as well as successes, so read Response.Error rather than the status code — and test for the presence of that object, because Code is occasionally the empty string.
| Field | Type | Description |
|---|---|---|
| TotalNum | integer | Total number of users associated with the User Group |
| UserInfo | GroupMemberInfo[] | Sub-user information |
| RequestId | string | The unique request ID, which is returned for each request. RequestId is required for locating a problem. |
Success
{
"Response": {
"TotalNum": …,
"UserInfo": …,
"RequestId": "…"
}
}Error
{
"Response": {
"Error": { "Code": "…", "Message": "…" },
"RequestId": "…"
}
}Try it
CredentialThe key never leaves this tab — it signs the request here. The signed request goes to /api-relay/cam.
Request bodyvalid JSONPOST cam.api3.convergecloud.com · ListUsersForGroup
Read-only. Creates nothing.
What failure looks like
Example error responses for this action. Match on Code.
Recorded error 1
{
"Response": {
"Error": {
"Code": "InternalError.SystemError",
"Message": "record not found",
"code": 1001,
"msg": "record not found",
"value": null
},
"RequestId": "8f5e9d75-034a-8575-f1b0-c4e6bb67b145"
}
}Recorded error 2
{
"Response": {
"Error": {
"Code": "InternalError.SystemError",
"Message": "record not found",
"code": 1001,
"msg": "record not found",
"value": null
},
"RequestId": "01066e44-996f-d606-7b02-380ae2c3eba7"
}
}