Firefighters
Manage firefighter records — list, create, update, and delete personnel in your department.
Overview #
The Firefighters API provides full CRUD operations for managing firefighter personnel records. All endpoints are scoped to your tenant — you can only access firefighters belonging to your department.
Fields Reference #
| Name | Type | Description | |
|---|---|---|---|
| id | uuid | Optional | Unique identifier |
| firstName | string | Required | First name (1-100 characters) |
| lastName | string | Required | Last name (1-100 characters) |
| phoneNumber | string | Optional | Phone number (up to 50 characters) |
| string | Optional | Email address | |
| dateOfBirth | datetime | Optional | Date of birth (ISO 8601) |
| invitationStatus | string | Optional | Invitation status to the platform |
| userId | uuid | Optional | Linked user account ID |
List Firefighters #
Returns a paginated list of firefighters. Supports search, sorting, and pagination.
GET /api/v1/firefighters
Query Parameters
| Name | Type | Description | |
|---|---|---|---|
| page | integer | Optional | Page number (default: 1) |
| pageSize | integer | Optional | Items per page (default: 20, max: 100) |
| search | string | Optional | Search by name, email, or phone |
| sortBy | string | Optional | Sort field (e.g. firstName, lastName) |
| sortDir | string | Optional | Sort direction: asc or desc (default: desc) |
bash Request
curl -X GET "https://app.firecustos.com/api/v1/firefighters?page=1&pageSize=10&search=Ivan" \
-H "Authorization: Bearer fc_your_api_key_here" 200 OK
json Response
{
"data": {
"items": [
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"firstName": "Ivan",
"lastName": "Horvat",
"phoneNumber": "+385 91 234 5678",
"email": "ivan.horvat@example.com",
"dateOfBirth": "1990-05-15T00:00:00Z",
"invitationStatus": null,
"userId": null
}
],
"page": 1,
"pageSize": 10,
"totalCount": 1,
"totalPages": 1,
"hasPreviousPage": false,
"hasNextPage": false
},
"totalCount": 1
} Get Firefighter #
Returns a single firefighter by ID.
GET /api/v1/firefighters/{id}
Path Parameters
| Name | Type | Description | |
|---|---|---|---|
| id | uuid | Required | Firefighter UUID |
bash Request
curl -X GET https://app.firecustos.com/api/v1/firefighters/3fa85f64-5717-4562-b3fc-2c963f66afa6 \
-H "Authorization: Bearer fc_your_api_key_here" 200 OK
json Response
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"firstName": "Ivan",
"lastName": "Horvat",
"phoneNumber": "+385 91 234 5678",
"email": "ivan.horvat@example.com",
"dateOfBirth": "1990-05-15T00:00:00Z",
"invitationStatus": null,
"userId": null
} Create Firefighter #
Creates a new firefighter record.
POST /api/v1/firefighters
Request Body
| Name | Type | Description | |
|---|---|---|---|
| firstName | string | Required | First name (1-100 characters) |
| lastName | string | Required | Last name (1-100 characters) |
| phoneNumber | string | Optional | Phone number (up to 50 characters) |
| string | Optional | Email address | |
| dateOfBirth | datetime | Optional | Date of birth (ISO 8601) |
bash Request
curl -X POST https://app.firecustos.com/api/v1/firefighters \
-H "Authorization: Bearer fc_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"firstName":"Marko","lastName":"Perić","phoneNumber":"+385 98 765 4321","email":"marko.peric@example.com","dateOfBirth":"1985-03-22T00:00:00Z"}' 201 Created
json Response
{
"id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"firstName": "Marko",
"lastName": "Perić",
"phoneNumber": "+385 98 765 4321",
"email": "marko.peric@example.com",
"dateOfBirth": "1985-03-22T00:00:00Z",
"invitationStatus": null,
"userId": null
} Update Firefighter #
Updates an existing firefighter record. All fields in the request body are required — this is a full replacement.
PUT /api/v1/firefighters/{id}
Path Parameters
| Name | Type | Description | |
|---|---|---|---|
| id | uuid | Required | Firefighter UUID |
Request Body
| Name | Type | Description | |
|---|---|---|---|
| firstName | string | Required | First name (1-100 characters) |
| lastName | string | Required | Last name (1-100 characters) |
| phoneNumber | string | Optional | Phone number (up to 50 characters) |
| string | Optional | Email address | |
| dateOfBirth | datetime | Optional | Date of birth (ISO 8601) |
bash Request
curl -X PUT https://app.firecustos.com/api/v1/firefighters/7c9e6679-7425-40de-944b-e07fc1f90ae7 \
-H "Authorization: Bearer fc_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"firstName":"Marko","lastName":"Perić","phoneNumber":"+385 98 765 0000","email":"marko.peric@example.com","dateOfBirth":"1985-03-22T00:00:00Z"}' 200 OK
json Response
{
"id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"firstName": "Marko",
"lastName": "Perić",
"phoneNumber": "+385 98 765 0000",
"email": "marko.peric@example.com",
"dateOfBirth": "1985-03-22T00:00:00Z",
"invitationStatus": null,
"userId": null
} Delete Firefighter #
Deletes a firefighter record (soft delete).
DELETE /api/v1/firefighters/{id}
Path Parameters
| Name | Type | Description | |
|---|---|---|---|
| id | uuid | Required | Firefighter UUID |
bash Request
curl -X DELETE https://app.firecustos.com/api/v1/firefighters/7c9e6679-7425-40de-944b-e07fc1f90ae7 \
-H "Authorization: Bearer fc_your_api_key_here" 204 No Content
On success, the API returns an empty response with status 204.