Skip to content
GET/{organizationId}/{mandateId}/booking/resources/reservations/{reservationId}

Get reservation

Returns a specific reservation for a specific resource on a specific site for a given mandate

Required permissions:

  • mandate.read

  • resource.read

  • resourceReservation.read

Path Parameters

organizationIdstringrequired
mandateIdstringrequired
reservationIdstringrequired

Authentication: X-API-Key

Request

GET/{organizationId}/{mandateId}/booking/resources/reservations/{reservationId}
curl --request GET 'https://cloud.campai.com/api/{organizationId}/{mandateId}/booking/resources/reservations/{reservationId}' \
  --header 'X-API-Key: YOUR_API_KEY'

Responses

This endpoint returns different response codes based on the request outcome.

200Successful response

Content-Type: application/json

ObjectId as string

ObjectId as string

typestringrequired

Options:

bookingeventcustom
statusstringrequired

Options:

pendingconfirmedcanceledcheckedInreservedmaintenanceblockedoutOfOrderclosedother

ObjectId as string

resourceNamestringrequired

Additional properties are not allowed.

Additional properties are not allowed.

rrulestring | nullrequired

Additional properties are not allowed.

descriptionstringoptional

maxLength: 400

Additional properties are not allowed.

Additional properties are not allowed.

quantityinteger | nullrequired

maximum: 9007199254740991

exclusiveMinimum: 0

Additional properties are not allowed.

createdAtdate-time | nulloptional

Response

200
{
  "_id": "000000000000000000000001",
  "mandate": "000000000000000000000001",
  "type": "booking",
  "status": "pending",
  "resource": "000000000000000000000001",
  "resourceName": "string",
  "site": {
    "site": "000000000000000000000001",
    "name": "string",
    "address": {
      "country": "string",
      "zip": "string",
      "city": "string",
      "addressLine": "string"
    },
    "timezone": "string"
  },
  "period": {
    "from": "2026-06-15T22:30:00Z",
    "to": "2026-06-15T22:30:00Z"
  },
  "rrule": "string",
  "series": {
    "id": "string",
    "index": 0,
    "total": 1,
    "status": "active"
  },
  "quantity": 1
}

400Invalid input data

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

400
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}

401Authorization not provided

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

401
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}

403Insufficient access

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

403
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}

404Not found

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

404
{
  "code": "NOT_FOUND",
  "message": "Not found",
  "issues": []
}

500Internal server error

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

500
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}