View, create, update and manage users belonging to the requesting company.
GET /users
Description | Get a list of all the users in the client account. |
Resource URL | https://app.klipfolio.com/api/1.0/users |
Parameters | client_id (string) — show only users belonging to a specific client email (string) — search for a user by email address external_id (string) — show only users that have the specified external_id full (true/false) — include associations (tab_instances, properties) (only works when specifying external_id) include_roles (true/false) — include the user’s roles include_groups (true/false) — include the user’s groups |
Example Request
GET https://app.klipfolio.com/api/1/users
Example Response (external_id is not displayed if it is null)
{
"data": {
"users": [
{
"id": "ab05f4a011e6a93fb307f4e3e970c3c0",
"first_name": "Trial",
"last_name": "User",
"email": "[email protected]",
"date_last_login": "2016-06-03T17:05:54Z"
}
]
},
"meta": {
"status": 200,
"success": true
}
}
GET /users/{id}
Description | Get details for the specified user. |
Permissions | user.manage |
Resource URL | https://app.klipfolio.com/api/1.0/users/{id} |
Parameters | full (true/false) — include associations (tab_instances, groups, roles, properties) |
Example Request
GET https://app.klipfolio.com/api/1/users/0123456789abcdef0123456789abcdef?full=true
Example Response (external_id is not displayed if it is null)
{
"meta": {
"success": true,
"status": 200
},
"data": {
"id": "c17db511dbc00421d0a093fc8c236064",
"company": "Hello",
"first_name": "Jane",
"last_name": "Doe",
"email": "[email protected]",
"date_last_login": "2016-06-17T18:12:11Z",
"date_created": "2016-06-17T18:12:06Z",
"is_locked_out": false,
"tab_instances": [
"a46d2e3fb99072c19f7997128e3e6f66",
"b8b305c4ba9287b7fbabc40831744444"
],
"groups": [
{
"id": "0016c12db53a58901bf19fd5e285c438",
"name": "Trial Users"
}
],
"roles": [
"26a3d3fb4cd6bf23d35b4126be26e5f3"
],
"properties": {}
}
}
POST /users
Description | Create a new user, optionally for a client. user.manage |
Permissions | user.manage |
Resource URL | https://app.klipfolio.com/api/1/users or https://app.klipfolio.com/api/1/users?send_email=true |
Fields | first_name, last_name, roles, email, password (optional), external_id (optional), client_id (optional), send_email (default is false). |
Example Request
Note: Optionally include 'client_id' in the post data to create a user for a client, optionally include ‘external_id’ in the post data to add an external id to the new user, optionally include 'password' in the post data to set the password, optionally include ?send_email=true in the post data to send a welcome email to the user.
POST https://app.klipfolio.com/api/1/users -d
"{
'client_id': '0123456789abcdef0123456789abcdef',
'first_name': 'Jane',
'last_name': 'Doe',
'email': '[email protected]',
'roles': ['0123456789abcdef0123456789abcdef'],
'password': 'tempPassword'
}"
Example Response
{
"data": {},
"meta": {
"location": "/users/0123456789abcdef0123456789abcdef",
"status": 201,
"success": true
}
}
PUT /users/{id}
Description | Update the specified user. |
Permissions | user.manage |
Resource URL | https://app.klipfolio.com/api/1.0/users |
Fields | first_name, last_name, external_id, email |
Example Request (only fields to be updated need to be sent)
PUT https://app.klipfolio.com/api/1/users/0123456789abcdef0123456789abcdef -d
"{
'first_name': 'Janet',
}"
Example Response
{
"data": {},
"meta": {
"status": 200,
"success": true
}
}
DELETE /users/{id}
Description Permissions Resource URL Parameters Response codes | Delete the specified user. user.manage https://app.klipfolio.com/api/1.0/users none 400 — missing {id} 401 — access denied to non-admins and users from other companies 403 — forbidden to: delete your own account, delete the super admin, delete the technical contact, delete the business contact 404 ({id} not found |
Permissions | user.manage |
Resource URL | https://app.klipfolio.com/api/1/users |
Parameters | None. |
Example Request
DELETE https://app.klipfolio.com/api/1/users/0123456789abcdef0123456789abcdef
Example Response
{
"data": {},
"meta": {
"status": 200,
"success": true
}
}