Skip to content
GET/{organizationId}/{mandateId}/booking/events/{eventId}

Get event

Returns a specific event with all of its details for a given mandate

Required permissions:

  • mandate.read

  • event.read

Path Parameters

organizationIdstringrequired
mandateIdstringrequired
eventIdstringrequired

Authentication: X-API-Key

Request

GET/{organizationId}/{mandateId}/booking/events/{eventId}
curl --request GET 'https://cloud.campai.com/api/{organizationId}/{mandateId}/booking/events/{eventId}' \
  --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

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

Response

200
{
  "_id": "000000000000000000000001",
  "mandate": "000000000000000000000001",
  "info": {
    "title": "string",
    "description": "string",
    "details": "string",
    "image": {
      "resource": "string"
    },
    "color": "",
    "place": {
      "type": "resource"
    },
    "tags": "string",
    "categories": [
      {
        "name": "string",
        "nameNormalized": "string",
        "bookingCategoryId": "000000000000000000000001"
      }
    ]
  },
  "settings": {
    "acceptCancelMode": "optIn",
    "selfCheckInBeforeMinutes": 0,
    "maxAttendees": 1,
    "minAttendees": {
      "count": 1,
      "deadlineRelative": {
        "value": 1,
        "unit": "hours"
      },
      "deadline": null
    },
    "waitlist": {
      "mode": "ordered",
      "offerAvailableHours": 1
    },
    "permanent": true,
    "notifyFirstHours": 1,
    "notifySecondHours": 1,
    "notifyThirdHours": 1,
    "confirmationMailText": "string",
    "confirmationMailAttachments": [
      {
        "resource": "string",
        "id": "string"
      }
    ],
    "waitlistMailText": "string",
    "checkIn": {
      "qrCode": true
    }
  },
  "offer": {
    "sessionMinutes": 1,
    "sessionRetries": 0,
    "paymentMethods": {
      "sepaCreditTransfer": {
        "internal": true,
        "cashAccount": "000000000000000000000001",
        "note": "string"
      },
      "sepaDirectDebit": {
        "internal": true,
        "cashAccount": "000000000000000000000001",
        "note": "string"
      },
      "online": {
        "internal": true,
        "note": "string",
        "stripe": true,
        "paypal": false
      },
      "cash": {
        "internal": true,
        "note": "string"
      }
    },
    "paymentMethodsPending": "unpaid",
    "paymentDueDate": null,
    "disallowCancelation": true,
    "refundPolicies": [
      {
        "refundUntil": {
          "value": 0,
          "unit": "hours"
        },
        "priceModifier": {
          "value": 0,
          "type": "%"
        },
        "pointModifier": {
          "value": 0,
          "type": "%"
        }
      }
    ],
    "refundText": "string",
    "form": {
      "groups": [
        {
          "id": "string",
          "label": "string",
          "fields": [
            {
              "id": "string",
              "type": "placeholder",
              "name": "string"
            }
          ]
        }
      ]
    },
    "formSettings": {
      "addressMode": "none",
      "applicantType": "person",
      "organisationNamePlaceholder": "string",
      "requirePhone": true,
      "showDiscountCode": true,
      "showRefundPolicies": true,
      "membershipNumberLabel": "string"
    },
    "attachReceipt": true,
    "rates": [
      {
        "id": "string",
        "name": "string",
        "description": "string",
        "availableFrom": {
          "value": 1,
          "unit": "hours"
        },
        "availableTo": {
          "value": 1,
          "unit": "hours"
        },
        "member": {
          "tags": "string",
          "tagsMode": "any",
          "allMandates": false,
          "perTicket": false
        },
        "charge": {
          "type": "price",
          "price": {
            "isNet": true,
            "price": 0,
            "taxCode": "string",
            "account": 1,
            "costCenter1": 1,
            "costCenter2": 1
          },
          "punchCard": {
            "punchCard": "000000000000000000000001",
            "punchCardName": "string",
            "punchCardPrice": {
              "isNet": true,
              "price": 0,
              "taxCode": "string",
              "account": 1,
              "costCenter1": 1,
              "costCenter2": 1
            },
            "points": 1
          }
        },
        "standard": true,
        "availableAmount": 1
      }
    ],
    "services": [
      {
        "service": "000000000000000000000001",
        "serviceName": "string",
        "serviceDescription": "string",
        "serviceOptions": [
          {
            "id": "string",
            "name": "string",
            "description": "string",
            "price": {
              "isNet": true,
              "price": 0,
              "taxCode": "string",
              "account": 1,
              "costCenter1": 1,
              "costCenter2": 1
            }
          }
        ],
        "serviceMinOptions": 1,
        "serviceMaxOptions": 1,
        "availableAmount": 1
      }
    ],
    "availability": {
      "fromType": "anytime",
      "fromDate": "2026-06-15T22:30:00Z",
      "fromRelative": {
        "value": 1,
        "unit": "hours"
      },
      "from": null,
      "toType": "start",
      "toDate": "2026-06-15T22:30:00Z",
      "toRelative": {
        "value": 1,
        "unit": "hours"
      },
      "to": null
    },
    "attendeeMode": "multiple",
    "team": {
      "requiresSize": true,
      "minimumSize": 1,
      "maximumSize": 1,
      "chargeBySize": true,
      "label": "string"
    },
    "rate": null,
    "bookingRestriction": "soldOut",
    "displaySettings": {
      "seatsAvailableThreshold": 0
    },
    "serviceSettings": {
      "required": true,
      "selection": "single"
    },
    "permanent": {
      "beforeStart": true,
      "proRata": true
    },
    "offer": "000000000000000000000001",
    "offerName": "string",
    "mode": "disabled",
    "ratesStatistics": {},
    "seriesStatistics": {
      "canceled": [
        {
          "from": 0,
          "to": 0
        }
      ]
    },
    "servicesBooked": {},
    "useCustomRates": true
  },
  "schedule": {
    "timezone": "string",
    "meetBeforeMinutes": 0,
    "rrule": "string",
    "blocking": {
      "holidays": {
        "public": true,
        "school": true,
        "countryCode": "DE",
        "stateCode": "string"
      },
      "ics": {
        "url": "string",
        "error": "string"
      }
    },
    "blockingMode": "none"
  },
  "series": {
    "id": "string",
    "index": 0,
    "total": 1,
    "status": "active"
  },
  "instructors": [
    {
      "name": "string",
      "type": "user",
      "userId": "string",
      "image": {
        "resource": "string"
      }
    }
  ],
  "period": {
    "from": "2026-06-15T22:30:00Z",
    "to": "2026-06-15T22:30:00Z",
    "status": "available"
  },
  "statistics": {
    "attendees": 0,
    "waitlisted": 0,
    "offered": 0,
    "pending": 0,
    "confirmed": 0,
    "canceled": 0,
    "checkedIn": 0
  },
  "cancelation": {
    "canceledAt": "2026-06-15T22:30:00Z",
    "canceledBy": {
      "name": "string",
      "type": "user",
      "userId": "string",
      "image": {
        "resource": "string"
      }
    },
    "reason": "string"
  }
}

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": []
}