Filmers Endpoint
For full field documentation, see the Filmer entity.
Filmers are listed and managed using the FreeFallFilms identifier.
You can provide an external_id for your own purposes, this is treated as a regular field, and must be unique.
Endpoints
List Filmers
GET /api/f1/sync/filmers
Returns a list of filmers. By default, returns only external filmers (those with an external_id set).
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
include_all |
boolean | No | true to return all filmers, including those without an external_id (default: false) |
Response
[
{
"id": 52,
"external_id": "EXT123",
"name": "John Doe",
"email": "john@example.com",
"tandem_instructor": true,
"videographer": false,
"active": true
}
]
(some fields omitted for brevity)
Get Filmer
GET /api/f1/sync/filmers/:id
Retrieves a specific filmer by their ID.
Response
{
"id": 52,
"external_id": "EXT123",
"name": "John Doe",
"email": "john@example.com",
"tandem_instructor": true,
"videographer": false,
"active": true
}
Create Filmer
POST /api/f1/sync/filmers
Creates a new filmer.
Request Format
{
"external_id": "EXT123",
"external_service": "dropzone_service",
"name": "John Doe",
"email": "john@example.com",
"tandem_instructor": true,
"videographer": false,
"active": true
}
See Filmer entity for full field descriptions.
Success Response
{
"id": 52,
"external_id": "EXT123",
"name": "John Doe",
"status": "created"
}
(some fields omitted for brevity)
Error Response
{
"error": "email is required",
"status": "unprocessable_content"
}
Update Filmer
POST /api/f1/sync/filmers
To update - call create again using the FFF id.
The only difference is that you'll get a status ok rather than status created.
Request Format
{
"id": 52,
"name": "John Doe Updated"
}
Success Response
{
"id": 52,
"name": "John Doe Updated",
"status": "ok"
}
(some fields omitted for brevity)
Error Responses
{
"error": "email is required",
"status": "unprocessable_content"
}
{
"id": 9999,
"error": "filmer not found",
"status": "not_found"
}
id must be the id of an existing filmer. To create a new filmer, leave id out - FreeFallFilms assigns it.
Delete Filmer
DELETE /api/f1/sync/filmers/:id
Permanently deletes a filmer.
Note - you can only delete a filmer if they have no associated records (bookings, jumps, etc).
To remove a filmer from the iPad list, set active = false.
Response
Returns 204 No Content on success.
If the filmer still has associated records, the delete is refused:
json
{
"id": 52,
"errors": ["Cannot delete record because dependent jumps exist"],
"status": "unprocessable_content"
}
Notes
- Validation errors will return appropriate error messages and status codes
- Create/Update operations return the complete filmer object with a status field