User

User represents a user in the Recrubo platform. Creating users is not necessary for many tasks, however some tasks require a user to be created. For example, embedding Recrubo iframes in to your application, creating appointments and logging in.

Endpoints

  • GET /users/{id} - Retrieves a specific user by ID.

  • GET /users - Retrieves a list of all users.

  • POST /users - Creates a new user.

  • PATCH /users/{id} - Updates a specific user by ID.

  • DELETE /users/{id} - Deletes a specific user by ID.

Attributes

Field
Type
Description

firstName

String

The firstName for the user.

lastName

String

The lastName for the user.

fullName

String

FullName is a read only field with the combined first & last name.

email

String

The email for the user.

phone

String

The phone number for the user.

timeZone

String

The timezone in which the user will see times in embedded components.

externalId

String

ExternalId is a field for external systems to store a tracking number.

createdAt

DateTime

The timestamp when the user was created.

updatedAt

DateTime

The timestamp when the user was last updated.

HTTP Methods

Field
GET
POST
PATCH

firstName

X

X

X

lastName

X

X

X

fullName

X

email

X

X

X

phone

X

X

X

timeZone

X

X

X

externalId

X

X

X

createdAt

X

updatedAt

X

Required Fields for Creation (POST)

Field
Type
Example value

firstName

String

John

lastName

String

Doe

fullName

String

John Doe

phone

String

31657116372

timeZone

String

Europe/Amsterdam

externalId

String

1234

createdAt

Timestamp

2024-05-13T00:00:00+00:00

updatedAt

Timestamp

2024-05-13T00:00:00+00:00

Example POST body

{
  "data": {
    "type": "users",
    "attributes": {
      "firstName": "John",
      "lastName": "Doe",
      "email": "[email protected]",
      "phone": "31657116372",
      "timeZone": "Europe/Amsterdam",
      "externalId": "1234"
    }
  }
}

Example PATCH body

{
  "data": {
    "type": "users",
    "attributes": {
      "timeZone": "Europe/Berlin"
    },
    "relationships": {
      "candidates": {
        "data": [
          { "type": "candidates", "id": "2e23b4b4-4b4b-4b4b-4b4b-4b4b4b4b4b4b" }
        ]
      }
    }
  }
}

OpenAPI

Create a User

post
Authorizations
Body
Responses
201

user created

application/vnd.api+json
post
POST /public/v2/users/ HTTP/1.1
Host: {defaulthost}
Authorization: YOUR_API_KEY
Content-Type: application/vnd.api+json
Accept: */*
Content-Length: 156

{
  "data": {
    "id": "text",
    "type": "text",
    "attributes": {
      "firstName": "text",
      "lastName": "text",
      "email": "text",
      "phone": "text",
      "timeZone": "text",
      "externalId": "text"
    }
  }
}
{
  "data": {
    "id": "33f7086b-32bb-477e-b1f6-cbb5c2524394",
    "type": "users",
    "attributes": {
      "createdAt": "2024-08-20T10:45:12+00:00",
      "updatedAt": "2024-08-20T10:45:12+00:00",
      "firstName": "Recrubo",
      "lastName": "Tester",
      "email": "[email protected]",
      "fullName": "Recrubo Tester",
      "phone": null,
      "timeZone": "Europe/Amsterdam",
      "externalId": null
    },
    "relationships": {
      "candidates": {
        "links": {
          "related": "/public/v2/candidates?filter[userId]=33f7086b-32bb-477e-b1f6-cbb5c2524394"
        }
      }
    }
  },
  "meta": {}
}

Retrieve all Users

get
Authorizations
Responses
200

users found

application/vnd.api+json
get
GET /public/v2/users HTTP/1.1
Host: {defaulthost}
Authorization: YOUR_API_KEY
Accept: */*
{
  "data": [
    {
      "id": "d086febb-1a7d-446e-ba98-fc897e91cc22",
      "type": "users",
      "attributes": {
        "createdAt": "2024-08-20T10:45:12+00:00",
        "updatedAt": "2024-08-20T10:45:12+00:00",
        "firstName": "Recrubo",
        "lastName": "Tester",
        "email": "[email protected]",
        "fullName": "Recrubo Tester",
        "phone": null,
        "timeZone": "Europe/Amsterdam",
        "externalId": null
      },
      "relationships": {
        "candidates": {
          "links": {
            "related": "/public/v2/candidates?filter[userId]=d086febb-1a7d-446e-ba98-fc897e91cc22"
          }
        }
      }
    },
    {
      "id": "000c212c-45c7-46d4-a9a9-be6c033af41c",
      "type": "users",
      "attributes": {
        "createdAt": "2024-08-20T10:45:12+00:00",
        "updatedAt": "2024-08-20T10:45:12+00:00",
        "firstName": "Recrubo",
        "lastName": "Tester",
        "email": "[email protected]",
        "fullName": "Recrubo Tester",
        "phone": null,
        "timeZone": "Europe/Amsterdam",
        "externalId": null
      },
      "relationships": {
        "candidates": {
          "links": {
            "related": "/public/v2/candidates?filter[userId]=000c212c-45c7-46d4-a9a9-be6c033af41c"
          }
        }
      }
    },
    {
      "id": "27a43848-a337-4198-a545-ec3870ac4617",
      "type": "users",
      "attributes": {
        "createdAt": "2024-08-20T10:45:12+00:00",
        "updatedAt": "2024-08-20T10:45:12+00:00",
        "firstName": "Recrubo",
        "lastName": "Tester",
        "email": "[email protected]",
        "fullName": "Recrubo Tester",
        "phone": null,
        "timeZone": "Europe/Amsterdam",
        "externalId": null
      },
      "relationships": {
        "candidates": {
          "links": {
            "related": "/public/v2/candidates?filter[userId]=27a43848-a337-4198-a545-ec3870ac4617"
          }
        }
      }
    }
  ],
  "meta": {
    "total": 3,
    "totalUnfiltered": 3,
    "currentSize": 25,
    "currentPage": 1,
    "maxPage": 1
  }
}

Retrieve a single user

get
Authorizations
Path parameters
idstringRequired
Responses
200

user found

application/vnd.api+json
get
GET /public/v2/users/{id} HTTP/1.1
Host: {defaulthost}
Authorization: YOUR_API_KEY
Accept: */*
{
  "data": {
    "id": "e1137be5-8bf9-4593-864c-d3342ce2c773",
    "type": "users",
    "attributes": {
      "createdAt": "2024-08-20T10:45:12+00:00",
      "updatedAt": "2024-08-20T10:45:12+00:00",
      "firstName": "Recrubo",
      "lastName": "Tester",
      "email": "[email protected]",
      "fullName": "Recrubo Tester",
      "phone": null,
      "timeZone": "Europe/Amsterdam",
      "externalId": null
    },
    "relationships": {
      "candidates": {
        "links": {
          "related": "/public/v2/candidates?filter[userId]=e1137be5-8bf9-4593-864c-d3342ce2c773"
        }
      }
    }
  },
  "meta": {}
}

Patch a User

patch
Authorizations
Path parameters
idstringRequired
Body
Responses
200

user updated

No content

patch
PATCH /public/v2/users/{id} HTTP/1.1
Host: {defaulthost}
Authorization: YOUR_API_KEY
Content-Type: application/vnd.api+json
Accept: */*
Content-Length: 156

{
  "data": {
    "id": "text",
    "type": "text",
    "attributes": {
      "firstName": "text",
      "lastName": "text",
      "email": "text",
      "phone": "text",
      "timeZone": "text",
      "externalId": "text"
    }
  }
}

No content

Destroy a User

delete
Authorizations
Path parameters
idstringRequired
Responses
204

user destroyed

No content

delete
DELETE /public/v2/users/{id} HTTP/1.1
Host: {defaulthost}
Authorization: YOUR_API_KEY
Accept: */*

No content

Last updated