Log in user by creating and registering auth tokens.

POST /auth/login

Login is based on email and password. If no user match given email and a destkop ID, it looks in matching the desktop ID with the one stored in database. It is useful for clients that run on desktop tools and that don't know user email.

Responses

POST /auth/login
curl \
 --request POST 'http://api.example.com/auth/login' \
 --header "Authorization: $API_KEY"
















Resource to allow a user to change his password when he forgets it.

PUT /auth/reset-password

It uses a classic scheme: a token is sent by email to the user. Then he can change his password.

Responses

  • Password reset

  • Invalid password Wrong or expired token Inactive user

PUT /auth/reset-password
curl \
 --request PUT 'http://api.example.com/auth/reset-password' \
 --header "Authorization: $API_KEY"
















































Responses

  • FIDO device registered.

  • Invalid password Wrong or expired token Inactive user

POST /auth/fido
curl \
 --request POST 'http://api.example.com/auth/fido' \
 --header "Authorization: $API_KEY"












GET /data/asset-types
curl \
 --request GET 'http://api.example.com/data/asset-types' \
 --header "Authorization: $API_KEY"









































































































Resource to retrieve the casting of a given entity.

GET /data/projects/{project_id}/entities/{entity_id}/casting

Responses

  • Casting of given entity

GET /data/projects/{project_id}/entities/{entity_id}/casting
curl \
 --request GET 'http://api.example.com/data/projects/{project_id}/entities/{entity_id}/casting' \
 --header "Authorization: $API_KEY"








































Responses

  • All camera instances linked to scene

GET /data/scenes/{scene_id}/camera-instances
curl \
 --request GET 'http://api.example.com/data/scenes/{scene_id}/camera-instances' \
 --header "Authorization: $API_KEY"













































































Retrieve all entries for given model.

GET /data/projects

Filters can be specified in the query string.

Responses

GET /data/projects
curl \
 --request GET 'http://api.example.com/data/projects' \
 --header "Authorization: $API_KEY"

Create a model with data given in the request body.

POST /data/projects

JSON format is expected. The model performs the validation automatically when instantiated.

Responses

POST /data/projects
curl \
 --request POST 'http://api.example.com/data/projects' \
 --header "Authorization: $API_KEY"
GET /data/projects/{instance_id}
curl \
 --request GET 'http://api.example.com/data/projects/{instance_id}' \
 --header "Authorization: $API_KEY"
















GET /data/project-status/{instance_id}
curl \
 --request GET 'http://api.example.com/data/project-status/{instance_id}' \
 --header "Authorization: $API_KEY"












Create a model with data given in the request body.

POST /data/entity-types

JSON format is expected. The model performs the validation automatically when instantiated.

Responses

POST /data/entity-types
curl \
 --request POST 'http://api.example.com/data/entity-types' \
 --header "Authorization: $API_KEY"




























Retrieve all entries for given model.

GET /data/task-types

Filters can be specified in the query string.

Responses

GET /data/task-types
curl \
 --request GET 'http://api.example.com/data/task-types' \
 --header "Authorization: $API_KEY"








Update a model with data given in the request body.

PUT /data/task-types/{instance_id}

JSON format is expected. Model performs the validation automatically when fields are modified.

Responses

PUT /data/task-types/{instance_id}
curl \
 --request PUT 'http://api.example.com/data/task-types/{instance_id}' \
 --header "Authorization: $API_KEY"
















Update a model with data given in the request body.

PUT /data/task-status/{instance_id}

JSON format is expected. Model performs the validation automatically when fields are modified.

Responses

PUT /data/task-status/{instance_id}
curl \
 --request PUT 'http://api.example.com/data/task-status/{instance_id}' \
 --header "Authorization: $API_KEY"




Retrieve all entries for given model.

GET /data/tasks

Filters can be specified in the query string.

Responses

GET /data/tasks
curl \
 --request GET 'http://api.example.com/data/tasks' \
 --header "Authorization: $API_KEY"
























































GET /data/file-status/{instance_id}
curl \
 --request GET 'http://api.example.com/data/file-status/{instance_id}' \
 --header "Authorization: $API_KEY"




















































































Delete a preview file corresponding at given ID and retuns

DELETE /data/preview-files/{instance_id}

a 204 status code.

Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

DELETE /data/preview-files/{instance_id}
curl \
 --request DELETE 'http://api.example.com/data/preview-files/{instance_id}' \
 --header "Authorization: $API_KEY"








Responses

GET /data/working-files/{instance_id}
curl \
 --request GET 'http://api.example.com/data/working-files/{instance_id}' \
 --header "Authorization: $API_KEY"












Create a model with data given in the request body.

POST /data/attachment-files

JSON format is expected. The model performs the validation automatically when instantiated.

Responses

POST /data/attachment-files
curl \
 --request POST 'http://api.example.com/data/attachment-files' \
 --header "Authorization: $API_KEY"












































Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

DELETE /data/time-spents/{instance_id}
curl \
 --request DELETE 'http://api.example.com/data/time-spents/{instance_id}' \
 --header "Authorization: $API_KEY"




























GET /data/custom-actions/{instance_id}
curl \
 --request GET 'http://api.example.com/data/custom-actions/{instance_id}' \
 --header "Authorization: $API_KEY"




















Update a model with data given in the request body.

PUT /data/status-automations/{instance_id}

JSON format is expected. Model performs the validation automatically when fields are modified.

Responses

PUT /data/status-automations/{instance_id}
curl \
 --request PUT 'http://api.example.com/data/status-automations/{instance_id}' \
 --header "Authorization: $API_KEY"

Retrieve all entries for given model.

GET /data/asset-instances/

Filters can be specified in the query string.

Responses

GET /data/asset-instances/
curl \
 --request GET 'http://api.example.com/data/asset-instances/' \
 --header "Authorization: $API_KEY"








































Create a model with data given in the request body.

POST /data/events/

JSON format is expected. The model performs the validation automatically when instantiated.

Responses

POST /data/events/
curl \
 --request POST 'http://api.example.com/data/events/' \
 --header "Authorization: $API_KEY"








Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

DELETE /data/events/{instance_id}
curl \
 --request DELETE 'http://api.example.com/data/events/{instance_id}' \
 --header "Authorization: $API_KEY"
























Create a model with data given in the request body.

POST /data/search-filters/

JSON format is expected. The model performs the validation automatically when instantiated.

Responses

POST /data/search-filters/
curl \
 --request POST 'http://api.example.com/data/search-filters/' \
 --header "Authorization: $API_KEY"








Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

DELETE /data/search-filters/{instance_id}
curl \
 --request DELETE 'http://api.example.com/data/search-filters/{instance_id}' \
 --header "Authorization: $API_KEY"




































Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

DELETE /data/schedule-items/{instance_id}
curl \
 --request DELETE 'http://api.example.com/data/schedule-items/{instance_id}' \
 --header "Authorization: $API_KEY"
















DELETE /data/news/{instance_id}
curl \
 --request DELETE 'http://api.example.com/data/news/{instance_id}' \
 --header "Authorization: $API_KEY"




















Retrieve all entries for given model.

GET /data/metadata-descriptors/

Filters can be specified in the query string.

Responses

GET /data/metadata-descriptors/
curl \
 --request GET 'http://api.example.com/data/metadata-descriptors/' \
 --header "Authorization: $API_KEY"

Create a model with data given in the request body.

POST /data/metadata-descriptors/

JSON format is expected. The model performs the validation automatically when instantiated.

Responses

POST /data/metadata-descriptors/
curl \
 --request POST 'http://api.example.com/data/metadata-descriptors/' \
 --header "Authorization: $API_KEY"




Update a model with data given in the request body.

PUT /data/metadata-descriptors/{instance_id}

JSON format is expected. Model performs the validation automatically when fields are modified.

Responses

PUT /data/metadata-descriptors/{instance_id}
curl \
 --request PUT 'http://api.example.com/data/metadata-descriptors/{instance_id}' \
 --header "Authorization: $API_KEY"




























































































































Retrieve all salary scale entries.

GET /data/salary-scales

Retrieve all salary scale entries.

Responses

  • All salary scale entries

  • Permission denied

GET /data/salary-scales
curl \
 --request GET 'http://api.example.com/data/salary-scales' \
 --header "Authorization: $API_KEY"





































Retrieve all edit entries.

GET /data/edits

Filters can be specified in the query string.

Responses

GET /data/edits
curl \
 --request GET 'http://api.example.com/data/edits' \
 --header "Authorization: $API_KEY"





























































GET /data/events/last
curl \
 --request GET 'http://api.example.com/data/events/last' \
 --header "Authorization: $API_KEY"









GET /export/csv/projects/{project_id}/shots.csv
curl \
 --request GET 'http://api.example.com/export/csv/projects/{project_id}/shots.csv' \
 --header "Authorization: $API_KEY"

Export casting linked to a given project as csv.

GET /export/csv/projects/{project_id}/casting.csv

Responses

  • Casting exported as csv

GET /export/csv/projects/{project_id}/casting.csv
curl \
 --request GET 'http://api.example.com/export/csv/projects/{project_id}/casting.csv' \
 --header "Authorization: $API_KEY"









































Responses

  • Last working files revision for each file name for given task

GET /data/tasks/{task_id}/working-files/last-revisions
curl \
 --request GET 'http://api.example.com/data/tasks/{task_id}/working-files/last-revisions' \
 --header "Authorization: $API_KEY"

Generate a working file path from file tree template.

POST /data/tasks/{task_id}/working-file-path

Generate file path based on several parameters: task, software, mode, revision and separator. Revision can be computed automatically as next revision if not given.

Path parameters

Responses

  • Working file path generated

  • Malformed file tree

POST /data/tasks/{task_id}/working-file-path
curl \
 --request POST 'http://api.example.com/data/tasks/{task_id}/working-file-path' \
 --header "Authorization: $API_KEY"
















































GET /data/entities/{entity_id}/output-files
curl \
 --request GET 'http://api.example.com/data/entities/{entity_id}/output-files' \
 --header "Authorization: $API_KEY"








Generate an output file path from file tree template

POST /data/entities/{entity_id}/output-file-path

Generate file path based on several parameters: entity, output type, task type, revision, mode, name and separator. Revision can be computed automatically as next revision if not given.

Path parameters

Responses

  • Output file path generated

  • Malformed file tree

POST /data/entities/{entity_id}/output-file-path
curl \
 --request POST 'http://api.example.com/data/entities/{entity_id}/output-file-path' \
 --header "Authorization: $API_KEY"













































































Import shotgun resource.

POST /import/shotgun/projectconnections

Responses

POST /import/shotgun/projectconnections
curl \
 --request POST 'http://api.example.com/import/shotgun/projectconnections' \
 --header "Authorization: $API_KEY"












Import remove instance.

POST /import/shotgun/remove/shot

Responses

POST /import/shotgun/remove/shot
curl \
 --request POST 'http://api.example.com/import/shotgun/remove/shot' \
 --header "Authorization: $API_KEY"





























































































































Responses

  • Configuration object including self-hosted status, Crisp token, indexer configuration, SAML status, and dark theme status.

GET /config
curl \
 --request GET 'http://api.example.com/config' \
 --header "Authorization: $API_KEY"






































Get aggregated time spents for given person and month.

GET /data/persons/{person_id}/time-spents/month/{year}/{month}

Responses

  • Aggregated time spents for given person and month

  • Wrong date format

GET /data/persons/{person_id}/time-spents/month/{year}/{month}
curl \
 --request GET 'http://api.example.com/data/persons/{person_id}/time-spents/month/{year}/{month}' \
 --header "Authorization: $API_KEY"
















Get ended shots used for quota calculation of this day.

GET /data/persons/{person_id}/quota-shots/day/{year}/{month}/{day}

Path parameters

Responses

  • Ended shots used for quota calculation of this day

  • Wrong date format

GET /data/persons/{person_id}/quota-shots/day/{year}/{month}/{day}
curl \
 --request GET 'http://api.example.com/data/persons/{person_id}/quota-shots/day/{year}/{month}/{day}' \
 --header "Authorization: $API_KEY"








Responses

  • Table giving time spent by user and by week for given year

GET /data/persons/time-spents/week-table/{year}
curl \
 --request GET 'http://api.example.com/data/persons/time-spents/week-table/{year}' \
 --header "Authorization: $API_KEY"












Return all day off recorded for given month and person.

GET /data/persons/{person_id}/day-offs/month/{year}/{month}

Responses

  • All day off recorded for given month and person

GET /data/persons/{person_id}/day-offs/month/{year}/{month}
curl \
 --request GET 'http://api.example.com/data/persons/{person_id}/day-offs/month/{year}/{month}' \
 --header "Authorization: $API_KEY"








GET /actions/persons/{person_id}/invite
curl \
 --request GET 'http://api.example.com/actions/persons/{person_id}/invite' \
 --header "Authorization: $API_KEY"

Add a user to given department.

POST /actions/persons/{person_id}/departments/add

Path parameters

Responses

  • User added to given department

POST /actions/persons/{person_id}/departments/add
curl \
 --request POST 'http://api.example.com/actions/persons/{person_id}/departments/add' \
 --header "Authorization: $API_KEY"




















Retrieve all playlists related to given episode.

GET /data/projects/{project_id}/episodes/{episode_id}/playlists

The full list is returned because the number of playlists in an episode is not that big.

Responses

  • All playlists related to given episode

GET /data/projects/{project_id}/episodes/{episode_id}/playlists
curl \
 --request GET 'http://api.example.com/data/projects/{project_id}/episodes/{episode_id}/playlists' \
 --header "Authorization: $API_KEY"
















































































Download a thumbnail.

GET /pictures/previews/preview-files/{instance_id}.png

Responses

  • Thumbnail downloaded

  • Instance not allowed

  • Picture file not found

GET /pictures/previews/preview-files/{instance_id}.png
curl \
 --request GET 'http://api.example.com/pictures/previews/preview-files/{instance_id}.png' \
 --header "Authorization: $API_KEY"












Download the thumbnail linked to given object instance.

GET /pictures/thumbnails/organisations/{instance_id}.png

Responses

  • Thumbnail downloaded

  • Access not allowed

  • Object instance not found

GET /pictures/thumbnails/organisations/{instance_id}.png
curl \
 --request GET 'http://api.example.com/pictures/thumbnails/organisations/{instance_id}.png' \
 --header "Authorization: $API_KEY"

Create a thumbnail for given object instance.

POST /pictures/thumbnails/organisations/{instance_id}.png

Path parameters

Responses

  • Thumbnail created

  • Cannot found related object.

POST /pictures/thumbnails/organisations/{instance_id}.png
curl \
 --request POST 'http://api.example.com/pictures/thumbnails/organisations/{instance_id}.png' \
 --header "Authorization: $API_KEY"








































Download a preview background file.

GET /pictures/preview-background-files/{instance_id}.{extension}

Responses

  • Preview background file downloaded

  • Preview background file not found

GET /pictures/preview-background-files/{instance_id}.{extension}
curl \
 --request GET 'http://api.example.com/pictures/preview-background-files/{instance_id}.{extension}' \
 --header "Authorization: $API_KEY"








Allow to change orders of previews for a single revision.

PUT /actions/preview-files/{preview_file_id}/update-position

This preview will be used to illustrate the entity.

Responses

  • Orders of previews changed for a single revision

PUT /actions/preview-files/{preview_file_id}/update-position
curl \
 --request PUT 'http://api.example.com/actions/preview-files/{preview_file_id}/update-position' \
 --header "Authorization: $API_KEY"