- List Users
- Get Specific User Information
- Invite Users
- Check Total Invitation Send Requests
- Update User Information
- Resend User Invitation
- List Printing Settings of all Users
- Add Users to Groups
- Remove Users from Groups
- Get Total Groups of a User
- Delete a User
Users
A user can be a Member of one or more Organizations. Only users who are also members of the organizations you manage are displayed
List Users
This function takes pagination parameters limit and offset to restrict the list of users.
An ordinary user only gets their own information and cannot retrieve information about the other users in the organization. Only an admin can retrieve the list of all users associated with the organization.
GET "https://account.ezeep.com/v1/users/"
Response attributes:
| Attribute | Type | Description |
|---|---|---|
| id | string | uuid |
| string | email of the user | |
| first_name | string | first name of the user |
| last_name | string | last name of the user |
| display_name | string | full name |
| date_joined | string | date (ISO 8601) of joining the ezeep cloud |
| azure_profile | object | azure profile |
| id_profile | object | if azure profile, then it will have an id |
| user_invitations | list of objects | list of email, expire_date and delivery_status of a user |
| roles | list of strings | admin or a user |
| is_verified | boolean | whether the user is verified |
Example Request
curl -X GET "https://account.ezeep.com/v1/users/" \
--header "Authorization: Bearer <access_token>"
Example Response
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"id": "99e3ca15-fafc-4e37-a741-842e1ae4ad07",
"email": "jane.doe@example.com",
"first_name": "Jane",
"last_name": "Doe",
"display_name": "Jane Doe",
"date_joined": "2021-05-21T11:32:27.796675Z",
"azure_profile": null,
"id_profile": null,
"user_invitations": [
{
"id": "e142a76f-0179-4afd-818c-663a821c2e2e",
"updated": "2021-05-21T11:32:27.817491Z",
"email": "jane.doe@example.com",
"expire_date": "2021-06-20T13:32:20.642000Z",
"delivery_status": "SENT",
"invitation_status": "EXPIRED"
}
],
"roles": ["user"],
"is_verified": false
},
{
"id": "9f2e2cc1-58ee-4426-998f-62644895f162",
"email": "john.doe@example.com",
"first_name": "John",
"last_name": "Doe",
"display_name": "John Doe",
"date_joined": "2021-04-06T20:01:43.481259Z",
"azure_profile": null,
"id_profile": {
"oid": "55555555-5555-4555-8555-555555555555",
"preferred_username": "john.doe@example.com",
"name": ""
},
"user_invitations": null,
"roles": ["admin"],
"is_verified": true
}
]
}
Get Specific User Information
To get the details of a specific user, send a request with the user id.
GET "https://account.ezeep.com/v1/users/<id>/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | string | yes | uuid of the user (path parameter) |
Response attributes:
| Attribute | Type | Description |
|---|---|---|
| id | string | uuid |
| string | email of the user | |
| first_name | string | first name of the user |
| last_name | string | last name of the user |
| display_name | string | full name |
| date_joined | string | date (ISO 8601) of joining the ezeep cloud |
| azure_profile | object | azure profile |
| id_profile | object | if azure profile, then it will have an id |
| user_invitations | list of objects | list of email, expire_date and delivery_status of a user |
| roles | list of strings | admin or a user |
| is_verified | boolean | whether the user is verified |
Example Request
curl -X GET "https://account.ezeep.com/v1/users/99e3ca15-fafc-4e37-a741-842e1ae4ad07/" \
--header "Authorization: Bearer <access_token>"
Example Response
{
"id": "99e3ca15-fafc-4e37-a741-842e1ae4ad07",
"email": "jane.doe@example.com",
"first_name": "Jane",
"last_name": "Doe",
"display_name": "Jane Doe",
"date_joined": "2021-05-21T11:32:27.796675Z",
"azure_profile": null,
"id_profile": null,
"user_invitations": [
{
"id": "e142a76f-0179-4afd-818c-663a821c2e2e",
"updated": "2021-05-21T11:32:27.817491Z",
"email": "jane.doe@example.com",
"expire_date": "2021-06-20T13:32:20.642000Z",
"delivery_status": "SENT",
"invitation_status": "EXPIRED"
}
],
"roles": ["user"],
"is_verified": false
}
Invite Users
To invite a user, send an invitation request. The user then accepts the invitation.
POST "https://account.ezeep.com/v1/userinvitations/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | str | no | uuid |
| str | yes | user_email | |
| expire_date | str | yes | YYYY-MM-DDThh:mm:ss |
| delivery_status | str | no | info about delivery status verifying if request will be sent or not |
| invitation_status | str | no | invitation is expired or accepted |
| Authorization | str | yes | Bearer |
Example Request
curl -X POST "https://account.ezeep.com/v1/userinvitations/" \
--header "Authorization: Bearer <access_token>" \
--header "Content-Type: application/json" \
--data "{
\"email\": \"user@example.com\",
\"expire_date\": \"2021-07-22T15:15:33\"
}"
Example Response
{
"id": "9c056c16-47db-4972-a132-39d14216c3e2",
"updated": "2021-06-22T14:07:20.922318Z",
"email": "user@example.com",
"expire_date": "2021-07-22T15:15:33.761000Z",
"delivery_status": "SENT",
"invitation_status": "OPEN"
}
Check Total Invitation Send Requests
Lists the invitations sent from this account.
GET "https://account.ezeep.com/v1/userinvitations/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | str | no | uuid |
| str | no | user_email | |
| expire_date | str | no | YYYY-MM-DDThh:mm:ss |
| delivery_status | str | no | info about delivery status verifying if request will be sent or not |
| invitation_status | str | no | invitation is expired or accepted |
| Authorization | str | yes | Bearer |
Example Request
curl -X GET "https://account.ezeep.com/v1/userinvitations/" \
--header "Authorization: Bearer <access_token>"
Example Response
{
"count": 3,
"next": null,
"previous": null,
"results": [
{
"id": "1a130f47-04ca-4bd9-aab8-1bdab5ba3447",
"updated": "2021-06-22T13:17:15.565108Z",
"email": "user@example.com",
"expire_date": "2021-07-22T15:15:33.761000Z",
"delivery_status": "SENT",
"invitation_status": "ACCEPTED"
},
{
"id": "074bf6b1-28b6-415b-826c-7d4480cde685",
"updated": "2021-05-21T11:35:30.149403Z",
"email": "user2@example.com",
"expire_date": "2021-06-20T13:35:17.892000Z",
"delivery_status": "SENT",
"invitation_status": "EXPIRED"
},
{
"id": "e142a76f-0179-4afd-818c-663a821c2e2e",
"updated": "2021-05-21T11:32:27.817491Z",
"email": "jane.doe@example.com",
"expire_date": "2021-06-20T13:32:20.642000Z",
"delivery_status": "SENT",
"invitation_status": "EXPIRED"
}
]
}
Update User Information
The only attributes the client can change are first_name, last_name, email and roles.
PATCH "https://account.ezeep.com/v1/users/<user_id>/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| user_id | string | yes | uuid of the user (path parameter) |
| first_name | string | no | new first name of the user |
| last_name | string | no | new last name of the user |
| string | no | new email of the user | |
| roles | list of strings | no |
["admin"] or ["user"]
|
Example Request
curl -X PATCH "https://account.ezeep.com/v1/users/44444444-4444-4444-8444-444444444444/" \
--header "Authorization: Bearer <access_token>" \
--header "Content-Type: application/json" \
--data "{
\"last_name\": \"Doe\",
\"roles\" : [\"user\"]
}"
Example Response
{
"id": "44444444-4444-4444-8444-444444444444",
"email": "alex.doe@example.com",
"first_name": "Alex",
"last_name": "Doe",
"display_name": "Alex Doe",
"date_joined": "2021-06-22T14:15:16.343893Z",
"azure_profile": null,
"id_profile": null,
"user_invitations": [
{
"id": "6016428a-0185-4639-9aef-4ccf4e1718a3",
"updated": "2021-06-22T14:15:16.364398Z",
"email": "alex.doe@example.com",
"expire_date": "2021-07-22T15:15:33Z",
"delivery_status": "SENT",
"invitation_status": "OPEN"
}
],
"roles": ["user"],
"is_verified": false
}
Resend User Invitation
When the client sends an invitation to a user it generates a unique user_invitation id, which is totally different from user unique id. To resend the invitation the client needs the user invitation id.
PATCH "https://account.ezeep.com/v1/userinvitations/<invitation_id>/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| invitation_id | str | yes | uuid |
| str | no | user_email | |
| expire_date | str | no | YYYY-MM-DDThh:mm:ss |
| delivery_status | str | no | info about delivery status verifying if request will be sent or not |
| invitation_status | str | no | invitation is expired or accepted |
| Authorization | str | yes | Bearer |
Example Request
curl -X PATCH "https://account.ezeep.com/v1/userinvitations/e142a76f-0179-4afd-818c-663a821c2e2e/" \
--header "Authorization: Bearer <access_token>" \
--header "Content-Type: application/json" \
--data "{
\"email\": \"jane.doe@example.com\",
\"expire_date\": \"2021-07-22T15:15:33Z\"
}"
Example Response
{
"id": "e142a76f-0179-4afd-818c-663a821c2e2e",
"email": "jane.doe@example.com",
"expire_date": "2021-07-22T15:15:33Z"
}
List Printing Settings of all Users
Lists the printing settings of all users and the groups each user belongs to.
GET "https://api2.ezeep.com/printing/v1/users/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | str | no | uuid |
| local_printing_enabled | bool | no | local printing support |
| self_service_enabled | bool | no | self service enabled |
| myprinters_enabled | bool | no | printer selection in user portal |
| pull_printing_enabled | bool | no | pull printing enabled |
| groups | str | no | user associated with groups |
Example Request
curl -X GET "https://api2.ezeep.com/printing/v1/users/" \
--header "Authorization: Bearer <access_token>"
Example Response
{
"count": 4,
"next": null,
"previous": null,
"results": [
{
"id": "99e3ca15-fafc-4e37-a741-842e1ae4ad07",
"local_printing_enabled": false,
"self_service_enabled": true,
"myprinters_enabled": true,
"groups": [{ "group_id": "e882245a-9619-4de8-87e4-28ccf25435cf" }]
},
{
"id": "9f2e2cc1-58ee-4426-998f-62644895f162",
"local_printing_enabled": false,
"self_service_enabled": true,
"myprinters_enabled": true,
"groups": [{ "group_id": "22222222-2222-4222-8222-222222222222" }]
},
{
"id": "a83b3e13-d69f-4e62-9073-cccae4e35bd9",
"local_printing_enabled": false,
"self_service_enabled": true,
"myprinters_enabled": true,
"groups": []
},
{
"id": "44444444-4444-4444-8444-444444444444",
"local_printing_enabled": false,
"self_service_enabled": true,
"myprinters_enabled": true,
"groups": [{ "group_id": "22222222-2222-4222-8222-222222222222" }]
}
]
}
Add Users to Groups
A user can be part of multiple groups. You need the user_id and the group_id.
This endpoint and Remove Users from Groups use the same URL and HTTP method. The groups array in the request body replaces the user’s current group memberships. If the user is already in group A and you want to add group B, send the group_id of both A and B. If you send only B, the user is removed from A.
PATCH "https://api2.ezeep.com/printing/v1/users/<user_id>/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | str | yes | uuid |
| local_printing_enabled | bool | no | local printing support |
| self_service_enabled | bool | no | self service enabled |
| myprinters_enabled | bool | no | printer selection in user portal |
| pull_printing_enabled | bool | no | pull printing enabled |
| groups | str | yes | user associated with groups |
Example Request
curl -X PATCH 'https://api2.ezeep.com/printing/v1/users/44444444-4444-4444-8444-444444444444/' \
--header "Authorization: Bearer <access_token>" \
--header "Content-Type: application/json" \
--data '{
"groups":[
{"group_id":"22222222-2222-4222-8222-222222222222"},{"group_id":"bd63ffd9-6904-46ec-b271-b258a59f07a5"}
]
}'
Example Response
{
"id": "44444444-4444-4444-8444-444444444444",
"local_printing_enabled": false,
"self_service_enabled": true,
"myprinters_enabled": true,
"groups": [
{
"group_id": "bd63ffd9-6904-46ec-b271-b258a59f07a5"
},
{
"group_id": "22222222-2222-4222-8222-222222222222"
}
]
}
Remove Users from Groups
To remove a user from a group, send a groups list that omits that group’s group_id. In the following example, the user from the previous example keeps group 22222222-2222-4222-8222-222222222222 and is removed from group bd63ffd9-6904-46ec-b271-b258a59f07a5.
PATCH "https://api2.ezeep.com/printing/v1/users/<user_id>/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | str | yes | uuid |
| local_printing_enabled | bool | no | local printing support |
| self_service_enabled | bool | no | self service enabled |
| myprinters_enabled | bool | no | printer selection in user portal |
| pull_printing_enabled | bool | no | pull printing enabled |
| groups | str | yes | user associated with groups |
Example Request
curl -X PATCH "https://api2.ezeep.com/printing/v1/users/44444444-4444-4444-8444-444444444444/" \
--header "Authorization: Bearer <access_token>" \
--header "Content-Type: application/json" \
--data "{
\"groups\":[
{\"group_id\":\"22222222-2222-4222-8222-222222222222\"}
]
}"
Example Response
{
"id": "44444444-4444-4444-8444-444444444444",
"local_printing_enabled": false,
"self_service_enabled": true,
"myprinters_enabled": true,
"groups": [
{
"group_id": "22222222-2222-4222-8222-222222222222"
}
]
}
Get Total Groups of a User
Returns the groups a user belongs to. A user can be part of more than one group.
GET "https://api2.ezeep.com/printing/v1/users/<id>/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | str | yes | uuid |
| local_printing_enabled | bool | no | local printing support |
| self_service_enabled | bool | no | self service enabled |
| myprinters_enabled | bool | no | printer selection in user portal |
| pull_printing_enabled | bool | no | pull printing enabled |
| groups | str | no | user associated with groups |
Example Request
curl -X GET "https://api2.ezeep.com/printing/v1/users/0050a068-cc7b-4490-951a-06920a610ee5/" \
--header "Authorization: Bearer <access_token>"
Example Response
{
"id": "0050a068-cc7b-4490-951a-06920a610ee5",
"local_printing_enabled": true,
"self_service_enabled": true,
"myprinters_enabled": false,
"groups": [{ "group_id": "33333333-3333-4333-8333-333333333333" }]
}
Delete a User
Each user has a specific id; an admin can delete a specific user by using this user_id.
DELETE "https://account.ezeep.com/v1/users/<id>/"
| Attribute | Type | Required | Description |
|---|---|---|---|
| id | string | yes | uuid of the user to delete (path parameter) |
Example Request
curl -X DELETE "https://account.ezeep.com/v1/users/0810f57c-6ce6-4ef0-badc-dcd121576b84/" \
--header "Authorization: Bearer <access_token>"
If successful, returns 204 No Content.