DeskBee API (1.1)

Download OpenAPI specification:Download

Welcome to Deskbee's technical documentation

📢 This documentation is under construction, but you will find most of the information you need to help improve and simplify the Deskbee experience.

Introduction

Deskbee provides a REST API so you can integrate or automate actions.

The communication base address is api.deskbee.io, always accompanied by the secure protocol https://. API versions are grouped by directory, suffixed to base address (https://api.deskbee.io/v1.1).

📢 We can provide an environment for internal testing and development tests. Just contact help@deskbee.co

Parameters

The API supports two methods for sending parameters

QueryString

curl --request POST 'https://api.deskbee.io/v1.1/oauth/token' \
--data-raw 'grant_type=client_credentials&client_id=942ff....e4e23676e'

JSON

curl --request POST 'https://api.deskbee.io/v1.1/oauth/token' \
--header   'Content-Type: application/json' \
--data-raw '{
    "grant_type" : "client_credentials",
    "client_id' :"",
    "client_secret' : "",
    "scope" : ""
}'

Pagination

Some requests made in the API will return a list of information, this information will not be returned in a single response, this is because some responses may have a lot of information, so these requests are paginated.

The Deskbee API uses paging by cursor, in this paging a key parameter is used.

The client receives a variable named cursor along with the response. This cursor is a pointer that points to a specific item that needs to be sent with a request. The server then uses the cursor to fetch the other set of items.

Cursor-based paging is more complex and is preferred when dealing with a real-time dataset.

Below is an example of a cursor-paged JSON response:

Request / Response

Description of the parameters that can be sent in the Deskbee API pagination

Parameters Description
limit Number of individual objects that are returned on each page. max: 250
curl -i -X GET 'https://api.deskbee.io/v1.1/users?limit=1' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <token>'

Description of the parameters received in the Deskbee API pagination

Parameters Description
links.next Url that tells which page to request next. If not displayed, this will be the last page
links.prev Url that reports the previous data page. If not displayed, this is the first page
{
  "data": [{
    ...
  }, {
    ...
  }, {
    ...
  }],
  "links": {
    "prev": "https://api.deskbee.io/v1.1/users?cursor=eyJuYW1lIjoiS3VyaXJpbiIsIl9wb2ludHNUb05leHRJdGVtcyI6ZmFsc2V9",
    "next": "https://api.deskbee.io/v1.1/users?cursor=eyJuYW1lIjoiS3VyaXJpbiIsIl9wb2ludHNUb05leHRJdGVtcyI6dHJ1ZX0"
  },
  "meta": {
    "path": "https://api.deskbee.io/v1.1/users",
    "per_page": "2"
  }
}

Response

All responses are returned in valid JSON format.

Dates are returned in ISO8601 format.

{
  // ...
  "created_at": "2020-01-01T12:00:00Z",
  "updated_at": "2020-01-01T13:00:00Z",
  // ...
}

Each response returns an appropriate HTTP code as specified https://datatracker.ietf.org/doc/html/rfc7231#section-6

Successful Returns

Codes Message Description
200 OK Successful request for a GET, DELETE or PUT that completed synchronously
201 Created Successful request for a POST, PUT
202 Accepted Request accepted for a POST, PUT, DELETE, or PATCH that will be processed asynchronously
204 No Content Request successfully carried out, however, there is no content to return
{
    "data": {
        "uuid": "68b0327b-e0f9-40e2-a81c-15fb0d981ede",
        "name": "Grupo Teste",
        "is_checkin_home_office": false,
        "created_at": "2021-09-23T14:28:36-03:00",
        "updated_at": "2021-09-23T14:28:36-03:00"
    }
}

Error Returns

In the event of returning an error, HTTP Status Code different from 2xx for example, a structured and consistent error will be generated in the body of the response.

Field Type Description
error Int Error code, same as the code returned in the HTTP Status (machine-readable)
id String Identifier of the occurred error (machine-readable)
message String User-friendly message explaining the error, human-readable.
errors String[] Error parameters, listing the errors reported in the request.
{
  "error": 422
  "id": "unprocessable_entity",
  "message": "The given data failed to pass validation.",
  "errors": {
    "email": ["The email field is required."],
    "name": ["The name field is required."]
  }
}

Error Codes

Errors returned by the Deskbee API

Code Message ID Description
400 Bad Request unexpected_value The sent data is invalid or non-existent
400 Bad Request oauth_escope Invalid OAuth Authentication Scope
401 Unauthorized unauthenticated Not authorized to access this method
401 Unauthorized oauth_server Error in access credentials to generate JWT token
401 Unauthorized oauth_unauthorized Authorization error in OAuth authentication
404 Not Found not_found Endpoint not found or non-existent
422 Unprocessable Entity unprocessable_entity Your request contains invalid parameters
507 Insufficient Storage query_error Unable to store your data
429 Too Many Requests request_limit You have exceeded the consumption limit, try again later
500 Internal Server Error internal_error Something went wrong with the Server, report the problem

Creating Application

To begin integration with Deskbee's API, it is necessary to create a ClientApi in the Deskbee Panel.

📢 Only users with Admin and Master Profile permissions have access to the integrations menu

  1. Access the Deskbee Panel, Integrations > ClientApi and click on New Client
  2. Enter a name that will be used to identify the application and choose what it will have access to.
  3. After successfully creating the application, click on the data visualization icon.
  4. The Client ID, Client Secret and Scopes will be displayed. These are the 3 pieces of data needed to create an Authentication Token (OAuth2).

📢 ATTENTION

For compliance, choose only the scopes that the application needs to use

ClientCredentialsJWT

Security Scheme Type: HTTP
HTTP Authorization Scheme: bearer
Bearer format: JWT

Authentication

Authentication

Obtain JWT Token

To authenticate in the Deskbee API, we use the client_credential OAuth flow.

📢 The client credentials flow is a server-to-server flow. There is no user authentication involved in the process

This flow is useful for systems that need to perform API operations when no user is present. These can be night operations or other operations involving contact between two applications / systems.

The Flow consists of:

  1. Make a POST request to the OAuth server OAuth server issues Access Token Use this Access Token for API consumption
  2. OAuth issues the Access Token
  3. Use this Access Token for API consumption
Request Body schema: application/json
required
grant_type
string
client_id
string
client_secret
string

Responses

Request samples

Content type
application/json
{
  • "grant_type": "client_credentials",
  • "client_id": "943e47a1.....afc40e491",
  • "client_secret": "7gWtVs9P.....PEyjRVqz05QdyB"
}

Response samples

Content type
application/json
{
  • "access_token": "eyJ...yqU",
  • "token_type": "Bearer",
  • "expires_in": "3600"
}

Buildings

Everything about your Buildings

Get building

Returns a single building

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the building to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

List all buildings

Returns a list of buildings

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchBuildingParams)
Example: search='place_type:workspace;is_active:false'

Search filters. Use semicolon-separated key:value pairs.

user_scope
string <uuid>
Example: user_scope=123e4567-e89b-12d3-a456-426614174000

Scope-based filter, filtering buildings only by the user's uuid according to the spatial restrictions configured in the deskbee panel.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Floors

Everything about your Floors

Get floor

Returns a single floor

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the floor to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

List all floors

Returns a list of floors

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchFloorParams)
Example: search='place_type:workspace;is_active:false'

Search filters. Use semicolon-separated key:value pairs.

user_scope
string <uuid>
Example: user_scope=123e4567-e89b-12d3-a456-426614174000

Scope-based filter, filtering buildings only by the user's uuid according to the spatial * restrictions configured in the deskbee panel.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Parkings

Everything about your parkings

Get parking

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

UUID of the parking

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

List all parkings

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchFloorParams)
Example: search='place_type:workspace;is_active:false'

Search filters. Use semicolon-separated key:value pairs.

object (ResponseFilterVacancies)
Example: response_filter=date:2024/01/01;start_hour:06:00;end_hour:11:00

Filter response. Use semicolon-separated key:value pairs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Places

Places

Get place

Returns a single place

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the place to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

List all places

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchPlaceParams)
Example: search='place_type:workspace'

Search filters. Use semicolon-separated key:value pairs.

user_scope
string <uuid>
Example: user_scope=123e4567-e89b-12d3-a456-426614174000

Scope-based filter, filtering buildings only by the user's uuid according to the spatial * restrictions configured in the deskbee panel.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Cost Center

Returns data from cost centers

List cost centers

Returns list of cost centers

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchCostCenterParams)
Example: search='name:developer'

Search filters. Use semicolon-separated key:value pairs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create cost center

Add a cost center

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
name
required
string

name of the cost center

code
required
string

code of the cost center

description
string

description or a note about the cost center

Responses

Request samples

Content type
application/json
{
  • "name": "Commodities",
  • "code": "1900623",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Get cost center

Returns a single cost center

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the cost center to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Edit cost center

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the cost center

Request Body schema: application/json
required
name
required
string

name of the cost center

code
required
string

code of the cost center

description
string

description or a note about the cost center

Responses

Request samples

Content type
application/json
{
  • "name": "Commodities",
  • "code": "1900623",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Remove cost center

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the cost center

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Users

Returns data from users

List users

Returns list of users

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchUserApiClient)
Example: search='email:eq:[email protected];is_squad:false'

Search filters. Use semicolon-separated key:value pairs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create user

Add a user

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
name
string

Name of the user

email
string <email>

Unique email address of the user

is_send_mail
boolean

Flag to indicate if mail should be sent

identifier
string

Identifier of the user

enrollment
string

The enrollment number used to associate Deskbee users with other platforms. This serves as a unique identifier for integration purposes.

squad_uuid
string <uuid>

Unique identifier of the squad

status
boolean

Indicates the user's status. When true, the user is active; when false, the user is deactivated and cannot log in to Deskbee.

object

Free-form object for user documents, used exclusively for integrations with access control and guest pass systems. Any information can be included as key-value pairs.

tags
Array of strings <uuid> [ items <uuid > ]

List of UUIDs representing user tags.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "email": "[email protected]",
  • "is_send_mail": true,
  • "identifier": "string",
  • "enrollment": "ENROLL12345",
  • "squad_uuid": "addd4fbe-876a-4d8c-833d-e952be1b0f18",
  • "status": true,
  • "documents": {
    },
  • "tags": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Get user

Returns a single user

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the user to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Edit user

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

User UUID

Request Body schema: application/json
required
name
string

Name of the user

email
string <email>

Unique email address of the user

is_send_mail
boolean

Flag to indicate if mail should be sent

identifier
string

Identifier of the user

enrollment
string

The enrollment number used to associate Deskbee users with other platforms. This serves as a unique identifier for integration purposes.

squad_uuid
string <uuid>

Unique identifier of the squad

status
boolean

Indicates the user's status. When true, the user is active; when false, the user is deactivated and cannot log in to Deskbee.

object

Free-form object for user documents, used exclusively for integrations with access control and guest pass systems. Any information can be included as key-value pairs.

tags
Array of strings <uuid> [ items <uuid > ]

List of UUIDs representing user tags.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "email": "[email protected]",
  • "is_send_mail": true,
  • "identifier": "string",
  • "enrollment": "ENROLL12345",
  • "squad_uuid": "addd4fbe-876a-4d8c-833d-e952be1b0f18",
  • "status": true,
  • "documents": {
    },
  • "tags": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Remove user

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

User UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Add users to groups

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
squads
Array of strings <uuid> [ items <uuid > ]

List of squad UUIDs.

users
Array of strings <uuid> [ items <uuid > ]

List of user UUIDs.

Responses

Request samples

Content type
application/json
{
  • "squads": [
    ],
  • "users": [
    ]
}

Response samples

Content type
application/json
{
  • "data": ""
}

Remove users to groups

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
squads
Array of strings <uuid> [ items <uuid > ]

List of squad UUIDs.

users
Array of strings <uuid> [ items <uuid > ]

List of user UUIDs.

Responses

Request samples

Content type
application/json
{
  • "squads": [
    ],
  • "users": [
    ]
}

Response samples

Content type
application/json
{
  • "data": ""
}

List Users Tags

List the user tags

Authorizations:
ClientCredentialsJWT

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create users Tags

Submits data to create a user tag

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
name
string

Unique name for the user tag.

access
string
Enum: "public" "private"

Access level for the user tag, must be either 'public' or 'private'.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "access": "public"
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Squads

Returns data from squads

Get squad

Returns a single squad

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

UUID of the squad to return

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Edit squad

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

Squad UUID

Request Body schema: application/json
required
name
required
string

group name

Responses

Request samples

Content type
application/json
{
  • "name": "Commodities"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Remove squad

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

Squad UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

List squads

Returns list of squads

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchSquadParams)
Example: search='name:developer'

Search filters. Use semicolon-separated key:value pairs.

user_scope
string <uuid>
Example: user_scope=123e4567-e89b-12d3-a456-426614174000

Scope-based filter, filtering buildings only by the user's uuid according to the spatial restrictions configured in the deskbee panel.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create squad

Add a squad

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
name
required
string

group name

Responses

Request samples

Content type
application/json
{
  • "name": "Commodities"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Spatial Restrictions

Returns a list of squads along with their spatial restrictions, including blocks by area such as floor, building, sector, or site.s

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchSquadParams)
Example: search='name:developer'

Search filters. Use semicolon-separated key:value pairs.

user_scope
string <uuid>
Example: user_scope=123e4567-e89b-12d3-a456-426614174000

Scope-based filter, filtering buildings only by the user's uuid according to the spatial restrictions configured in the deskbee panel.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Temporal Restriction

Returns the temporal restriction of a squad for a specific place type

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

UUID of the squad

placeType
required
string
Enum: "workspace" "meetingroom" "parking" "bus" "dininghall" "locker" "service"

Place type slug

query Parameters
timezone
string
Example: timezone=America/New_York

IANA timezone for hour conversion (defaults to account timezone)

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update Temporal Restriction

Updates the temporal restriction for multiple squads for a specific place type

Authorizations:
ClientCredentialsJWT
path Parameters
placeType
required
string
Enum: "workspace" "meetingroom" "parking" "bus" "dininghall" "locker" "service"

Place type slug

Request Body schema: application/json
required
squad_uuids
required
Array of strings <uuid> [ items <uuid > ]

UUIDs of the squads to update (max 100)

days_of_week
Array of strings
Items Enum: "monday" "tuesday" "wednesday" "thursday" "friday" "saturday" "sunday"
max_hours
number or null
object or null

Occupancy hours restriction

max_recurrence_days
number or null
object or null

Booking limit per period

max_reserve_expired
number or null
max_start_days
number or null
min_start_days
number or null
object or null

Time slot lock for booking

is_extend_booking
boolean
business_days_only
boolean

When true, min/max_start_days count only business days (skips Saturdays and Sundays)

object or null

Booking window restriction

limit_start_hour
string or null <time>

Booking start hour limit

object or null

Hour limit for booking (bus)

object or null

Fixed booking time (parking)

timezone
string or null

IANA timezone for hour conversion (e.g. America/New_York). Defaults to account timezone.

Responses

Request samples

Content type
application/json
{
  • "squad_uuids": [
    ],
  • "days_of_week": [
    ],
  • "max_hours": 8,
  • "occupancy_hours": {
    },
  • "max_recurrence_days": 30,
  • "booking_limit": {
    },
  • "max_reserve_expired": 10,
  • "max_start_days": 90,
  • "min_start_days": 2,
  • "time_slot_locked": {
    },
  • "is_extend_booking": true,
  • "business_days_only": false,
  • "limit_to_book": {
    },
  • "limit_start_hour": "23:00",
  • "hour_limit_booking": {
    },
  • "static_book_time": {
    },
  • "timezone": "America/Sao_Paulo"
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

GuestPass

Returns list of third-party invitations and external guests

List GuestPass Invitations

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchGuestPass)
Example: search='search=period:2024/01/01,2024/01/30;state=active'

Search filters. Use semicolon-separated key:value pairs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create a GuestPass invitation

Creates a GuestPass invitation on behalf of a host (person_uuid) for one or more guests.

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
title
required
string <= 255 characters

Invitation title.

description
string <= 1000 characters

Optional description.

area_uuid
required
string <uuid>

UUID of the area where the visit will happen. Must have GuestPass enabled.

date
required
string

Visit date (d/m/Y).

start_hour
required
string

Start time (H:i).

end_hour
required
string

End time (H:i), after start_hour.

person_uuid
required
string <uuid>

UUID of the host (the person on whose behalf the invitation is created).

doc_type
string <= 20 characters

Optional document type applied to the host's Person.

doc_number
string <= 50 characters

Optional document number applied to the host's Person.

booking_uuid
string <uuid>

Optional UUID of a linked Booking.

required
Array of objects non-empty

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "description": "string",
  • "area_uuid": "23f67669-918a-4ed0-bb44-b0229619d79c",
  • "date": "17/07/2026",
  • "start_hour": "14:00",
  • "end_hour": "17:00",
  • "person_uuid": "1803ceba-b654-49fe-a565-0f0facf1d27f",
  • "doc_type": "string",
  • "doc_number": "string",
  • "booking_uuid": "f4eed8e3-aacb-417a-9f78-ebb308e5bd15",
  • "guests": []
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update Guest Pass Status

Updates the status of a guest pass to 'Passed' (status id = 4) and sends email notifications to the host and a designated concierge or receptionist.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

User UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Guest Pass Invitation Details

Fetches detailed information about a specific guest pass invitation by UUID, including reason, schedule, floor, guest list, current status and approval history.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

GuestPass guest UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel a Guest Pass invitation

Cancels an active Guest Pass invitation. Idempotent: cancelling an already-cancelled invitation returns 200 with the current state. Returns 409 if the invitation is in a non-cancellable state (passed, expired, or under external integration).

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

GuestPassGuest UUID (same UUID returned by GET /guestpass)

Request Body schema: application/json
optional
is_send_email
boolean

When true, Deskbee sends a cancellation email to the guest. Default false.

Responses

Request samples

Content type
application/json
{
  • "is_send_email": true
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Bookings

Bookings Details

Fetches detailed information about a specific reservation and its associated check-in data using the reservation's unique identifier (UUID).

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

Booking UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

List Bookings

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchBooking)
Example: search='search=period:2024/01/01,2024/01/30;state=reserved'

Search filters. Use semicolon-separated key:value pairs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create Workstation (DEPRECATED) Deprecated

⚠️ DEPRECATED — DO NOT USE FOR NEW INTEGRATIONS

This endpoint is kept for backward compatibility with existing integrations only. It accepts workstation bookings only with the original payload schema (no meeting rooms, no guests, no recurrence).

Migration

New endpoint When to use
POST /bookings/workspaces Workstation bookings
POST /bookings/meeting-rooms Meeting room bookings (with guests, online meeting link)

The new endpoints support:

  • person_uuid (preferred) instead of user_uuid — identifies the host (booking owner)
  • User-Scope header — identifies the booker (executor, for audit trail). Allows scenarios like 'secretary booking on behalf of director'.
  • Meeting-specific features (meeting object: title, online link, guests)

Audit trail via User-Scope

Even on this legacy endpoint, the optional User-Scope request header is honored: when present, owner in the response points to the booker (executor) while person keeps the host (user_uuid). Omit the header to get the original behavior (owner == person).

Schema returned by this endpoint

The response is the same BookingResource shape across all booking endpoints — including meeting, guests, owner, etc. fields. Existing clients that ignore unknown fields are not affected.

Authorizations:
ClientCredentialsJWT
header Parameters
User-Scope
string <uuid>

UUID of the booker — the user performing the action, recorded for audit trail. Falls back to the host (user_uuid) when omitted. Use User-Scope (dash) — recommended HTTP convention. The legacy user_scope (underscore) is also accepted but may be silently dropped by reverse proxies (e.g. nginx default underscores_in_headers off).

Request Body schema: application/json
required
user_uuid
required
string <uuid>

UUID of the user who owns the booking.

date
required
string <date>
start_hour
required
string <time>
end_hour
required
string <time>
place_uuid
string <uuid>

UUID of a specific workstation.

floor_uuid
string <uuid>

Required when place_uuid is omitted. The system picks the first available workstation on the floor.

is_send_email
boolean

Responses

Request samples

Content type
application/json
{
  • "user_uuid": "7c4d2d7d-8620-4fb3-967a-4a621082cf1f",
  • "date": "2024/01/30",
  • "start_hour": "08:00",
  • "end_hour": "15:00",
  • "place_uuid": "a1998e5c-7d53-454f-ac7a-ce908acc5631",
  • "floor_uuid": "fb41c11a-b256-4172-9281-a04f78acbcef",
  • "is_send_email": true
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel Booking

Cancels an existing booking (soft delete with notifications). Works for both workstations and meeting rooms. For meeting rooms, guests are notified and any linked tickets/calendar events are also cancelled.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Booking UUID

header Parameters
User-Scope
string <uuid>

UUID of the user performing the cancellation. Used for audit trail and notifications. Use User-Scope (dash) — recommended HTTP convention. The legacy user_scope (underscore) is also accepted but may be silently dropped by reverse proxies (e.g. nginx default underscores_in_headers off).

Request Body schema: application/json
optional
is_send_email
boolean

If false, suppresses the cancellation notification to the host. Default true.

Responses

Request samples

Content type
application/json
{
  • "is_send_email": true
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Create Meeting Room

Creates a meeting room booking. Supports guests, online meeting link (manual or auto-generated via calendar integration) and recurrence. Place type is enforced — workstations are rejected with 422.

Host vs Booker

Every booking has two associated people:

Concept Field Description
Host person_uuid (body, preferred) or user_uuid (body, fallback) The person the booking is for (booking owner)
Booker User-Scope (header, optional) The user performing the action (audit trail). Defaults to the host when omitted.

Use case for User-Scope: a secretary booking a meeting room on behalf of a director. person_uuid = director, User-Scope = secretary. The booking is owned by the director, but auditing records that the secretary acted.

Note on header name: User-Scope (dash) is the recommended HTTP convention. The legacy user_scope (underscore) is also accepted but may be silently dropped by reverse proxies (e.g. nginx default underscores_in_headers off).

Authorizations:
ClientCredentialsJWT
header Parameters
User-Scope
string <uuid>

UUID of the booker — the user performing the action, recorded for audit trail. Falls back to the host when omitted. Use to distinguish 'who is the booking for' (person_uuid, body) from 'who actually made it' (User-Scope, header). The legacy user_scope (underscore) is also accepted for backward compatibility.

Request Body schema: application/json
required
person_uuid
string <uuid>

UUID of the person who owns the booking (host).

date
required
string <date>
start_hour
required
string <time>
end_hour
required
string <time>
place_uuid
required
string <uuid>

UUID of the meeting room — required.

is_send_email
boolean
object

Meeting details.

Responses

Request samples

Content type
application/json
{
  • "person_uuid": "1803ceba-b654-49fe-a565-0f0facf1d27f",
  • "date": "2024/01/30",
  • "start_hour": "08:00",
  • "end_hour": "15:00",
  • "place_uuid": "a1998e5c-7d53-454f-ac7a-ce908acc5631",
  • "is_send_email": true,
  • "meeting": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update Meeting Room

Updates an existing meeting-room booking with partial fields. Omitted fields keep their current value. Supports changing datetime, place_uuid (must be a meeting room), meeting.* fields and the guest list. Guest list is replaced: emails not in the array are removed; new emails are added. Bookings of workstations return 404 — use PUT /bookings/workspaces/{uuid} instead.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Booking UUID

header Parameters
User-Scope
string <uuid>

UUID of the user performing the update. Used for audit trail. Use User-Scope (dash) — recommended HTTP convention. The legacy user_scope (underscore) is also accepted but may be silently dropped by reverse proxies (e.g. nginx default underscores_in_headers off).

Request Body schema: application/json
required
date
string <date>

Validacao do request de edicao (PUT /bookings/meeting-rooms/{uuid}).

Todos os campos sao opcionais (atualizacao parcial). Datas seguem o padrao "tudo ou nada" — date, start_hour, end_hour devem vir juntos ou nenhum.

Tenant scoping (filtro account_id) vive na Action, nao no Request.

start_hour
string <time>
end_hour
string <time>
place_uuid
string <uuid>

New meeting-room UUID. Sending a workstation UUID returns 422.

is_send_notification
boolean

If false, suppresses host notification. Default true.

object

Meeting fields. Sending the array replaces current values for the fields present.

Responses

Request samples

Content type
application/json
{
  • "date": "2026/05/08",
  • "start_hour": "09:00",
  • "end_hour": "10:00",
  • "place_uuid": "a1998e5c-7d53-454f-ac7a-ce908acc5631",
  • "is_send_notification": true,
  • "meeting": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Create Workstation

Creates a workstation booking. Either place_uuid (specific workstation) or floor_uuid (system picks the first available one) is required. Place type is enforced — meeting rooms are rejected with 422.

Host vs Booker

Every booking has two associated people:

Concept Field Description
Host person_uuid (body, preferred) or user_uuid (body, fallback) The person the booking is for (booking owner)
Booker User-Scope (header, optional) The user performing the action (audit trail). Defaults to the host when omitted.

Use case for User-Scope: a secretary booking a workstation on behalf of a director. person_uuid = director, User-Scope = secretary. The booking is owned by the director, but auditing records that the secretary acted.

Note on header name: User-Scope (dash) is the recommended HTTP convention. The legacy user_scope (underscore) is also accepted but may be silently dropped by reverse proxies (e.g. nginx default underscores_in_headers off).

Authorizations:
ClientCredentialsJWT
header Parameters
User-Scope
string <uuid>

UUID of the booker — the user performing the action, recorded for audit trail. Falls back to the host when omitted. Use to distinguish 'who is the booking for' (person_uuid, body) from 'who actually made it' (User-Scope, header). The legacy user_scope (underscore) is also accepted for backward compatibility.

Request Body schema: application/json
required
person_uuid
string <uuid>

UUID of the person who owns the booking (host).

date
required
string <date>
start_hour
required
string <time>
end_hour
required
string <time>
place_uuid
string <uuid>

UUID of a specific workstation.

floor_uuid
string <uuid>

Required when place_uuid is omitted. The system picks the first available workstation on the floor.

is_send_email
boolean

Responses

Request samples

Content type
application/json
{
  • "person_uuid": "1803ceba-b654-49fe-a565-0f0facf1d27f",
  • "date": "2024/01/30",
  • "start_hour": "08:00",
  • "end_hour": "15:00",
  • "place_uuid": "a1998e5c-7d53-454f-ac7a-ce908acc5631",
  • "floor_uuid": "fb41c11a-b256-4172-9281-a04f78acbcef",
  • "is_send_email": true
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update Workstation

Updates an existing workstation booking with partial fields. Omitted fields keep their current value. Supports changing datetime and place_uuid (must be a workstation). Meeting/guests fields are NOT accepted on this endpoint. Bookings of meeting rooms return 404 — use PUT /bookings/meeting-rooms/{uuid} instead.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Booking UUID

header Parameters
User-Scope
string <uuid>

UUID of the user performing the update. Used for audit trail. Use User-Scope (dash) — recommended HTTP convention. The legacy user_scope (underscore) is also accepted but may be silently dropped by reverse proxies (e.g. nginx default underscores_in_headers off).

Request Body schema: application/json
required
date
string <date>

Validacao do request de edicao (PUT /bookings/workspaces/{uuid}).

Aceita apenas campos relevantes para estacao de trabalho: datas e place. Workspace nao tem meeting/guests — campos meeting enviados pelo cliente caem fora de validated() (Laravel descarta silenciosamente campos nao declarados em rules()).

Tenant scoping (filtro account_id) vive na Action, nao no Request.

start_hour
string <time>
end_hour
string <time>
place_uuid
string <uuid>

New workstation UUID. Sending a meeting-room UUID returns 422.

is_send_notification
boolean

If false, suppresses host notification. Default true.

Responses

Request samples

Content type
application/json
{
  • "date": "2026/05/08",
  • "start_hour": "09:00",
  • "end_hour": "10:00",
  • "place_uuid": "a1998e5c-7d53-454f-ac7a-ce908acc5631",
  • "is_send_notification": true
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Checkin

Check-ins participants

Returns a list of all check-ins associated with a specific booking, including check-ins by both the host and participants (if participant check-ins are enabled in the Deskbee Panel).

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

Booking UUID

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Check In Booking

This endpoint performs a check-in for an active reservation identified by the reservation uuid.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

Booking UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Check Out Booking

This endpoint performs a checkout for a specified reservation, freeing up the reserved space.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

Booking UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel an Active Booking

Cancels an active reservation that has not yet had a check-in. This frees up the reserved space.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string

Booking UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Tickets

Operations for listing ticket templates (service request types)

List tickets

Returns a paginated list of ticket templates (service request types) available for creating ticket events.

Authorizations:
ClientCredentialsJWT
query Parameters
search
string
Example: search=category_uuid:61a9e017-57ed-4413-b0ff-918b8e72ba2b;type:operational

Search parameters. Format: key:value;key2:value2. Available filters: category_uuid, type (operational|administrative), is_active (true|false), name

page
integer
Default: 1

Page number for pagination

per_page
integer <= 100
Default: 15

Number of items per page

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "links": {
    },
  • "meta": {
    }
}

Get ticket details

Returns detailed information about a specific ticket template, including its custom fields.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Ticket UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Ticket Events

Operations for managing ticket events (service requests)

Ticket Event Details

Fetches detailed information about a specific ticket event using its unique identifier (UUID).

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Ticket event UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel Ticket Event

Cancels a ticket event. This is the only way to set a ticket status to 'canceled'.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Ticket event UUID

header Parameters
user_scope
string <uuid>

UUID of the user performing the action. Identifies who performed the action for audit trail purposes.

Request Body schema: application/json
optional
requester_uuid
string <uuid>

Optional UUID of the person responsible for the cancellation. If not provided, uses the authenticated user.

Responses

Request samples

Content type
application/json
{
  • "requester_uuid": "e1882de9-7a76-4f1b-8358-4df49674707a"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

List Ticket Events

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchTicketParams)
Example: search=search=status:closed;period:2023/03/01,2023/03/29;type:operational

Search filters. Use semicolon-separated key:value pairs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create Ticket Event

Creates a new ticket event.

Authorizations:
ClientCredentialsJWT
header Parameters
user_scope
string <uuid>

UUID of the user performing the action. Identifies who performed the action for audit trail purposes.

Request Body schema: application/json
required
ticket_uuid
required
string <uuid>

Required UUID of the ticket category.

requester_uuid
string <uuid>

Optional UUID of the requester (person). Must be a pre-registered user in Deskbee.

place_uuid
string <uuid>

Required for operational tickets. UUID of the place.

scheduled_date
string <date>

Optional scheduled date in 'd/m/Y' format.

scheduled_hour
string <time>

Optional scheduled time in 'H:i' format.

description
string

Optional ticket description.

Array of objects

Custom fields. Send only uid + value, metadata is retrieved from ticket template. Required only when the ticket has required fields.

Responses

Request samples

Content type
application/json
{
  • "ticket_uuid": "47751844-dac7-49e3-afa2-8f67c63eb1b0",
  • "requester_uuid": "f12e440d-f4b2-418c-b7d6-6055a1d74fb3",
  • "place_uuid": "a1998e5c-7d53-454f-ac7a-ce908acc5631",
  • "scheduled_date": "25/11/2025",
  • "scheduled_hour": "14:30",
  • "description": "Problema com o ar condicionado",
  • "fields": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Change Ticket Event Status

Changes the status of a ticket event. Allowed statuses: open, progress, adjustment, closed. To cancel a ticket, use DELETE /tickets/events/{uuid}.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Ticket event UUID

header Parameters
user_scope
string <uuid>

UUID of the user performing the action. Identifies who performed the action for audit trail purposes.

Request Body schema: application/json
required
status
required
string
Enum: "open" "progress" "adjustment" "closed"

Required new status for the ticket event. To cancel use DELETE /tickets/{uuid}.

description
string

Optional observation/description for the status change.

requester_uuid
string <uuid>

Optional UUID of the person responsible for the action. If not provided, uses the authenticated user.

Responses

Request samples

Content type
application/json
{
  • "status": "closed",
  • "description": "Chamado resolvido com sucesso",
  • "requester_uuid": "e1882de9-7a76-4f1b-8358-4df49674707a"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Catering Events

Operations for viewing catering event requests

List Catering Events

Lists catering event requests for the authenticated account.

Authorizations:
ClientCredentialsJWT
query Parameters
object (SearchCateringEventParams)
Example: search=status:finalized,canceled;period:2026/03/01,2026/03/31;name:Reunião

Search filters. Use semicolon-separated key:value pairs.

limit
integer
Example: limit=25

Items per page (max 250, default 25)

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Catering Event Details

Fetches detailed information about a specific catering event.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Catering event UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Caterings

Operations for viewing catering services and menu items

List Catering Services

Lists catering services available in the account.

Authorizations:
ClientCredentialsJWT

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

List Catering Items

Lists available menu items for a catering service.

Authorizations:
ClientCredentialsJWT
path Parameters
uuid
required
string <uuid>

Catering service UUID

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

BeeBadge

Endpoints for client-side integration to grant/revoke physical access via BeeBadge Agents.

Get BeeBadge Access

Retrieves details of a specific BeeBadge access by UUID.

Authorizations:
None
path Parameters
uuid
required
string <uuid>

BeeBadge access UUID

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Grant access

Grants BeeBadge access to a user. Requires authentication via Bearer token.

Authorizations:
None
Request Body schema: application/json
required

Data for granting access. At least one of qr_code or credentials is required.

connection_uuid
required
string <uuid>

BeeBadge connection UUID

person_match_value
required
string

User identifier value (email, enrollment, identifier or UUID). The identifier type must be configured in the connection.

start_date
required
string <date-time>

Access start date and time (ISO 8601 format)

end_date
required
string <date-time>

Access end date and time (must be after start_date, ISO 8601 format)

qr_code
string or null

QR code for access. Required if credentials is not provided.

object or null

Badge credentials. Required if qr_code is not provided. When provided, all internal fields are required.

Responses

Request samples

Content type
application/json
{
  • "connection_uuid": "550e8400-e29b-41d4-a716-446655440000",
  • "person_match_value": "[email protected]",
  • "start_date": "2025-01-15T08:00:00Z",
  • "end_date": "2025-01-15T18:00:00Z",
  • "qr_code": "QRCODE123456789",
  • "credentials": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Revoke access

Revokes a previously granted BeeBadge access. Requires authentication via Bearer token.

Authorizations:
None
Request Body schema: application/json
required

Connection and access UUIDs to be revoked

connection_uuid
required
string <uuid>

BeeBadge connection UUID

access_uuid
required
string <uuid>

Access UUID to be revoked (returned in grant)

Responses

Request samples

Content type
application/json
{
  • "connection_uuid": "550e8400-e29b-41d4-a716-446655440000",
  • "access_uuid": "660e8400-e29b-41d4-a716-446655440000"
}

Response samples

Content type
application/json
{
  • "data": { }
}

Personal Badge

Create Personal Badge

Generates a customizable QR code for access control and IoT interactions through Deskbee integration with other systems.

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
identifier_type
string

Type of the identifier. For example, 'email'.

identifier
string

The actual identifier value. For example, an email address.

code
string <uuid>

Unique code associated with the identifier.

Responses

Request samples

Content type
application/json
{
  • "identifier_type": "string",
  • "identifier": "[email protected]",
  • "code": "f5d62b05-370e-48be-a755-8675ca146431"
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Checkin Automation

The Check-in Automation is a form of integration in which a device sends an event to Deskbee, indicating the Device Code that identifies the location of the person and the person's identifier. With this information, Deskbee locates reservations made by this user in the building structure linked to the device that sent the event, thereby performing the person's automated check-in.

To implement this automation, it is necessary to develop a call to the Deskbee API whenever there is any interaction with the Turnstile / Device. For this purpose, you should contact the company that provides your Access Control to carry out this implementation.

In the Deskbee Panel, navigate to Integrations > Automation and click on 'Checkin / Checkout Automation'.

📢 Contact your Access Control provider to carry out this implementation.

Automate Check-in

Receives the entry device code and a person's identifier (enrollment number or document number), searches for reservations for the specified building and person, and performs check-in or check-out for the found reservations.

Authorizations:
ClientCredentialsJWT
Request Body schema: application/json
required
Array
device
string

Identifier of the entry device.

person
string

Code identifying the person, which can be an enrollment number or a document identifier..

date
string <date-time>

ISO 8601 formatted date and time when the event was generated.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "data": {
    }
}

Events

Bookings

This webhook is triggered when a booking is created, updated, or deleted. It sends a payload with detailed information about the booking event.

Request Body schema: application/json
required
subscription_id
string <uuid>

Webhook subscription ID.

transaction_id
string <uuid>

Unique transaction ID for the event.

account
string

Account code associated with the event.

send_at
string <date-time>

Date and time of the event.

event
string

Event type for booking.

object

Details of the booking action.

object

Additional detailed information about the booking.

Responses

Request samples

Content type
application/json
{
  • "subscription_id": "aa11a4c2-a467-43db-b413-c4ab0f5cf627",
  • "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  • "account": "string",
  • "send_at": "2019-08-24T14:15:22Z",
  • "event": "booking",
  • "resource": {
    },
  • "included": {
    }
}

Guest Check-in

This webhook is triggered when a participant of a meeting performs a check-in, but only if participant check-in is enabled in the Deskbee Panel under meeting room settings. It sends detailed information about the check-in and the associated booking.

Request Body schema: application/json
required
subscription_id
string <uuid>

Webhook subscription ID.

transaction_id
string <uuid>

Unique transaction ID for the event.

account
string

Account code associated with the event.

send_at
string <date-time>

Date and time of the event.

event
string

Event type for guest check-in.

object

Details of the booking action.

object

Additional information related to the booking and the guest check-in event.

Responses

Request samples

Content type
application/json
{
  • "subscription_id": "aa11a4c2-a467-43db-b413-c4ab0f5cf627",
  • "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  • "account": "string",
  • "send_at": "2019-08-24T14:15:22Z",
  • "event": "guest_checkin",
  • "resource": {
    },
  • "included": {
    }
}

Check-in / Check-out

This webhook is triggered when a check-in or check-out is performed, sending details about the booking and the check-in/check-out action.

Request Body schema: application/json
required
subscription_id
string <uuid>

Webhook subscription ID.

transaction_id
string <uuid>

Unique transaction ID for the event.

account
string

Account code associated with the event.

send_at
string <date-time>

Date and time of the event.

event
string

Event type for check-in or check-out.

object

Details of the check-in/check-out action.

object

Additional information about the booking and check-in/check-out.

Responses

Request samples

Content type
application/json
{
  • "subscription_id": "aa11a4c2-a467-43db-b413-c4ab0f5cf627",
  • "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  • "account": "string",
  • "send_at": "2019-08-24T14:15:22Z",
  • "event": "checkin",
  • "resource": {
    },
  • "included": {
    }
}

Locker Open

This webhook is triggered when a locker is opened, either due to check-in/check-out or when the 'open locker' button is pressed in the app. It sends a payload with the details of the action and the related booking.

Request Body schema: application/json
required
subscription_id
string <uuid>

Webhook subscription ID.

transaction_id
string <uuid>

Unique transaction ID for the event.

account
string

Account code associated with the event.

send_at
string <date-time>

Date and time of the event.

event
string

Event type, in this case, locker.

object

Details of the locker action.

object

Additional information about the locker.

Responses

Request samples

Content type
application/json
{
  • "subscription_id": "aa11a4c2-a467-43db-b413-c4ab0f5cf627",
  • "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  • "account": "string",
  • "send_at": "2019-08-24T14:15:22Z",
  • "event": "locker",
  • "resource": {
    },
  • "included": {
    }
}

Squads

This endpoint is triggered to send data when a group event occurs in Deskbee. Events may include the creation, update, or deletion of a group. The webhook URL and event types are configured by the client in the Deskbee Panel. When a corresponding event is triggered, the webhook sends this payload containing details of the subscription, transaction, account, time of sending, event type, and group resource information.

Request Body schema: application/json
required

Webhook event payload for group events.

subscription_id
string <uuid>

The webhook subscription ID.

transaction_id
string <uuid>

Unique ID for the webhook event transaction.

account
string

Account associated with the event.

send_at
string <date-time>

The date and time when the event is sent.

event
string

The identifier of the webhook event.

object

Details of the group resource involved in the event.

Responses

Request samples

Content type
application/json
{
  • "subscription_id": "aa11a4c2-a467-43db-b413-c4ab0f5cf627",
  • "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  • "account": "string",
  • "send_at": "2019-08-24T14:15:22Z",
  • "event": "squad",
  • "resource": {
    }
}

Ticket Events

This webhook is triggered when a ticket event (chamado) is created, updated, or deleted. It sends a payload with detailed information about the ticket event.

Request Body schema: application/json
required
subscription_id
string <uuid>

Webhook subscription ID.

transaction_id
string <uuid>

Unique transaction ID for the event.

account
string

Account code associated with the event.

send_at
string <date-time>

Date and time of the event.

event
string

Event type for ticket event.

object

Details of the ticket event action.

object

Additional detailed information about the ticket event.

Responses

Request samples

Content type
application/json
{
  • "subscription_id": "aa11a4c2-a467-43db-b413-c4ab0f5cf627",
  • "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  • "account": "string",
  • "send_at": "2019-08-24T14:15:22Z",
  • "event": "ticket_event",
  • "resource": {
    },
  • "included": {
    }
}

Users

This webhook is triggered when a user is created, updated, or deleted. It sends a payload with details of the action and the affected user.

Request Body schema: application/json
required
subscription_id
string <uuid>

The webhook subscription ID.

transaction_id
string <uuid>

Unique transaction ID for the event.

account
string

Account code associated with the event.

send_at
string <date-time>

Date and time of the event.

event
string

Event type, in this case, user.

object

Details of the user action.

object

Additional information about the user.

Responses

Request samples

Content type
application/json
{
  • "subscription_id": "aa11a4c2-a467-43db-b413-c4ab0f5cf627",
  • "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  • "account": "string",
  • "send_at": "2019-08-24T14:15:22Z",
  • "event": "user",
  • "resource": {
    },
  • "included": {
    }
}