Skip to content

Users

Manage the data held about people in your team using the following requests.

NOTE

There is no POST /users endpoint because a user is not created directly. A user is created when an invite (sent to them) is received and accepted. That ensures their consent and also that their email is valid. To add a user to your team, please see POST /invites.

GET /users

Example request

shell
curl \
-H "Authorization: Bearer YOUR-API-KEY" \
"https://api.vidbeo.com/v2/users"
curl \
-H "Authorization: Bearer YOUR-API-KEY" \
"https://api.vidbeo.com/v2/users"

Example response

json
{
    "success": true,
    "result": [
        {
          "id": "abcde12345abcde12345a",
          "name": "Test User",
          "email": "[email protected]",
          "role": "viewer",
          "authentication": "password",
          "notifications": [],
          "enabled": true,
          "mfa_required": false,
          "verified_email": true,
          "created_by": "abcde12345abcde1234a",
          "created_time": "2022-01-01T00:00:00.000Z",
          "updated_by": "abcde12345abcde12345a",
          "updated_time": "2022-01-01T00:00:00.000Z"
        },
        ...
    ],
    "links": {},
    "errors": []
}
{
    "success": true,
    "result": [
        {
          "id": "abcde12345abcde12345a",
          "name": "Test User",
          "email": "[email protected]",
          "role": "viewer",
          "authentication": "password",
          "notifications": [],
          "enabled": true,
          "mfa_required": false,
          "verified_email": true,
          "created_by": "abcde12345abcde1234a",
          "created_time": "2022-01-01T00:00:00.000Z",
          "updated_by": "abcde12345abcde12345a",
          "updated_time": "2022-01-01T00:00:00.000Z"
        },
        ...
    ],
    "links": {},
    "errors": []
}

Optional parameters

NameTypeDefaultInformation
limitString25Maximum number to return
cursorString""Used to get the next page of results: if applicable we return this as part of the links.next URL

GET /users/:id

Example request

shell
curl \
-H "Authorization: Bearer YOUR-API-KEY" \
"https://api.vidbeo.com/v2/users/abcde12345abcde12345a"
curl \
-H "Authorization: Bearer YOUR-API-KEY" \
"https://api.vidbeo.com/v2/users/abcde12345abcde12345a"

Example response

json
{
  "success": true,
  "result": {
    "id": "abcde12345abcde12345a",
    "name": "Test User",
    "email": "[email protected]",
    "role": "viewer",
    "authentication": "password",
    "notifications": [],
    "enabled": true,
    "mfa_required": false,
    "verified_email": true,
    "created_by": "abcde12345abcde1234a",
    "created_time": "2022-01-01T00:00:00.000Z",
    "updated_by": "abcde12345abcde12345a",
    "updated_time": "2022-01-01T00:00:00.000Z"
  },
  "links": null,
  "errors": []
}
{
  "success": true,
  "result": {
    "id": "abcde12345abcde12345a",
    "name": "Test User",
    "email": "[email protected]",
    "role": "viewer",
    "authentication": "password",
    "notifications": [],
    "enabled": true,
    "mfa_required": false,
    "verified_email": true,
    "created_by": "abcde12345abcde1234a",
    "created_time": "2022-01-01T00:00:00.000Z",
    "updated_by": "abcde12345abcde12345a",
    "updated_time": "2022-01-01T00:00:00.000Z"
  },
  "links": null,
  "errors": []
}

Response format

KeyTypeDescription
idStringThe unique identifier given to this user
nameStringTheir full name (e.g. "John Smith")
emailStringTheir email address
roleStringTheir role (we currently support predefined ones of: "viewer", "uploader", "admin" or "owner")
authenticationStringHow the user is authenticated (either "password" or "sso")
notificationsArrayAn array of strings listing the events to email the user about
enabledBooleanA user can be temporarily disabled so that they can't sign in, but do still exist
mfa_requiredBooleanIf they have enabled MFA (2FA), meaning they need to enter a code in additiion to their password
verified_emailBooleanWe send a link to click to verify they own the email address entered and so manage this value internally
created_byStringThe ID of the user who created it (if known)
created_timeStringThe date and time it was created
updated_byStringThe ID of the user who last modified it (if known)
updated_timeStringThe date and time it was last modified

PATCH /users/:id

The body of the request should contain one, or more, attributes that you would like to update for the user. Please be very careful when making changes to existing items to avoid losing data, particularly if a particular key has sub-keys.

It is not currently possible to change a user's email because we need to verify an address. That is handled as part of inviting a new user and so for a user with a new email address, please send a new invite to that new address.

Example request

shell
curl \
-g \
-H "Authorization: Bearer YOUR-API-KEY" \
-H "Content-Type: application/json" \
-X PATCH \
-d '{"name":"Example User"}' \
"https://api.vidbeo.com/v2/users/abcde12345abcde12345a"
curl \
-g \
-H "Authorization: Bearer YOUR-API-KEY" \
-H "Content-Type: application/json" \
-X PATCH \
-d '{"name":"Example User"}' \
"https://api.vidbeo.com/v2/users/abcde12345abcde12345a"

Example response

json
{
  "success": true,
  "result": {
    "id": "abcde12345abcde12345a",
    "name": "Example User",
    "email": "[email protected]",
    "role": "viewer",
    "authentication": "password",
    "notifications": [],
    "enabled": true,
    "mfa_required": false,
    "verified_email": true,
    "created_by": "abcde12345abcde1234a",
    "created_time": "2022-01-01T00:00:00.000Z",
    "updated_by": "abcde12345abcde12345a",
    "updated_time": "2022-01-01T00:00:00.000Z"
  },
  "links": null,
  "errors": []
}
{
  "success": true,
  "result": {
    "id": "abcde12345abcde12345a",
    "name": "Example User",
    "email": "[email protected]",
    "role": "viewer",
    "authentication": "password",
    "notifications": [],
    "enabled": true,
    "mfa_required": false,
    "verified_email": true,
    "created_by": "abcde12345abcde1234a",
    "created_time": "2022-01-01T00:00:00.000Z",
    "updated_by": "abcde12345abcde12345a",
    "updated_time": "2022-01-01T00:00:00.000Z"
  },
  "links": null,
  "errors": []
}

DELETE /users/:id

Example request

shell
curl \
-H "Authorization: Bearer YOUR-API-KEY" \
-X DELETE \
"https://api.vidbeo.com/v2/users/abcde12345abcde12345a"
curl \
-H "Authorization: Bearer YOUR-API-KEY" \
-X DELETE \
"https://api.vidbeo.com/v2/users/abcde12345abcde12345a"

Example response

json
{
  "success": true,
  "result": {},
  "links": null,
  "errors": []
}
{
  "success": true,
  "result": {},
  "links": null,
  "errors": []
}