Authentication

Jwt authorization (http_api_key)

Format in header: Authorization: Bearer {token}.

Value example: Bearer xxxxx.yyyyy.zzzzz














Responses

  • Registration successful

  • Invalid password or email

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






















































































































































































































Delete given entity link.

DELETE /data/projects/{project_id}/entity-links/{entity_link_id}

It's mainly used for synchronisation purpose.

DELETE /data/projects/{project_id}/entity-links/{entity_link_id}
curl \
 --request DELETE 'http://api.example.com/data/projects/{project_id}/entity-links/{entity_link_id}' \
 --header "Authorization: $API_KEY"

























Acknowledge given comment.

POST /data/tasks/{task_id}/comments/{comment_id}/ack

If it's already acknowledged, remove acknowledgement.

Path parameters

Responses

  • Comment acknowledged

POST /data/tasks/{task_id}/comments/{comment_id}/ack
curl \
 --request POST 'http://api.example.com/data/tasks/{task_id}/comments/{comment_id}/ack' \
 --header "Authorization: $API_KEY"




































Creates new comments for given task. Each comments requires a text, a

POST /actions/tasks/{task_id}/batch-comment

task_status and a person as arguments.

Path parameters

Responses

  • New comments created

POST /actions/tasks/{task_id}/batch-comment
curl \
 --request POST 'http://api.example.com/actions/tasks/{task_id}/batch-comment' \
 --header "Authorization: $API_KEY"

Creates new comments for given task. Each comments requires a task_id,

POST /actions/tasks/batch-comment

text, a task_status and a person as arguments.

Responses

  • New comments created

POST /actions/tasks/batch-comment
curl \
 --request POST 'http://api.example.com/actions/tasks/batch-comment' \
 --header "Authorization: $API_KEY"

























































Retrieve all entries for given model.

GET /data/entity-types

Filters can be specified in the query string.

Responses

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












Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

DELETE /data/entity-types/{instance_id}
curl \
 --request DELETE 'http://api.example.com/data/entity-types/{instance_id}' \
 --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"




























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
























Retrieve all entries for given model.

GET /data/organisations

Filters can be specified in the query string.

Responses

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




































































Update a model with data given in the request body.

PUT /data/output-files/{instance_id}

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

Responses

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




























Create a model with data given in the request body.

POST /data/preview-files

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

Responses

POST /data/preview-files
curl \
 --request POST 'http://api.example.com/data/preview-files' \
 --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"




























Create a model with data given in the request body.

POST /data/asset-instances/

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

Responses

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
















































































































Retrieve all entries for given model.

GET /data/schedule-items/

Filters can be specified in the query string.

Responses

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




GET /data/schedule-items/{instance_id}
curl \
 --request GET 'http://api.example.com/data/schedule-items/{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"
































































































































































Retrieve all entries for given model.

GET /data/studios

Filters can be specified in the query string.

Responses

GET /data/studios
curl \
 --request GET 'http://api.example.com/data/studios' \
 --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"
















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









































































Responses

  • All preview files linked to given entity

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






























Export a given playlist as csv.

GET /export/csv/playlists/{playlist_id}

Responses

  • Playlist exported as csv

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

















































































Responses

  • All types of output generated for given entity

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









































































Responses

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




Responses

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
















































































































Responses

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








Responses

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















































Retrieve desktop login logs.

GET /data/persons/{person_id}/desktop-login-logs

Desktop login logs can only be created by current user.

Responses

GET /data/persons/{person_id}/desktop-login-logs
curl \
 --request GET 'http://api.example.com/data/persons/{person_id}/desktop-login-logs' \
 --header "Authorization: $API_KEY"












































Responses

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

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








Responses

  • Table giving time spent by user and by day for given year and month

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

Responses

  • All day off recorded for given month

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






















































































































Download a thumbnail.

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

Responses

  • Thumbnail downloaded

  • Instance not allowed

  • Picture file not found

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

Download a generic file preview.

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

Responses

  • Generic file preview downloaded

  • Instance not allowed

  • Non-movie file not found

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








































Create a thumbnail for given object instance.

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

Path parameters

Responses

  • Thumbnail created

  • Cannot found related object.

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





















































































































Add a preview background file linked to a production.

POST /data/projects/{project_id}/settings/preview-background-files

Path parameters

Responses

  • Preview background file added to production

POST /data/projects/{project_id}/settings/preview-background-files
curl \
 --request POST 'http://api.example.com/data/projects/{project_id}/settings/preview-background-files' \
 --header "Authorization: $API_KEY"


























































































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
















GET /data/shots/{shot_id}/assets
curl \
 --request GET 'http://api.example.com/data/shots/{shot_id}/assets' \
 --header "Authorization: $API_KEY"




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




























Responses

  • All task types related to given scene

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
















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




































































Responses

  • All shots related to given project

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












































Set frames for given shots.

POST /actions/projects/{project_id}/task-types/{task_type_id}/set-shot-nb-frames

Responses

  • Frames set for given shots

POST /actions/projects/{project_id}/task-types/{task_type_id}/set-shot-nb-frames
curl \
 --request POST 'http://api.example.com/actions/projects/{project_id}/task-types/{task_type_id}/set-shot-nb-frames' \
 --header "Authorization: $API_KEY"

























































Retrieve all subcriptions to tasks related to given project.

GET /data/projects/{project_id}/subscriptions

It's mainly used for synchronisation purpose.

Responses

  • All subcriptions to tasks related to given project

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




























Get time spent on a given task and date.

GET /actions/tasks/{task_id}/time-spents/{date}

Responses

  • Time spent on given task and date

  • Wrong date format

GET /actions/tasks/{task_id}/time-spents/{date}
curl \
 --request GET 'http://api.example.com/actions/tasks/{task_id}/time-spents/{date}' \
 --header "Authorization: $API_KEY"




















Add a preview to given comment.

POST /actions/tasks/{task_id}/comments/{comment_id}/preview-files/{preview_file_id}

Path parameters

Responses

  • Preview added to given comment

POST /actions/tasks/{task_id}/comments/{comment_id}/preview-files/{preview_file_id}
curl \
 --request POST 'http://api.example.com/actions/tasks/{task_id}/comments/{comment_id}/preview-files/{preview_file_id}' \
 --header "Authorization: $API_KEY"

































































Responses

  • Tasks related to given sequence for current user

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












































Responses

  • Filter for current user and only for open projects created

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












































































Remove the subscription entry matching given task and current user.

DELETE /actions/user/tasks/{task_id}/unsubscribe

The user will no longer receive notifications for this task.

Responses

  • Subscription entry removed

DELETE /actions/user/tasks/{task_id}/unsubscribe
curl \
 --request DELETE 'http://api.example.com/actions/user/tasks/{task_id}/unsubscribe' \
 --header "Authorization: $API_KEY"




Return true if current user has subscribed to given sequence and

GET /data/user/entities/{sequence_id}/task-types/{task_type_id}/subscribed

task type.

Responses

  • True if current user has subscribed to given sequence and task type, False otherwise

GET /data/user/entities/{sequence_id}/task-types/{task_type_id}/subscribed
curl \
 --request GET 'http://api.example.com/data/user/entities/{sequence_id}/task-types/{task_type_id}/subscribed' \
 --header "Authorization: $API_KEY"








Remove a subscription entry for given sequence, tasl type

DELETE /actions/user/sequences/{sequence_id}/task-types/{task_type_id}/unsubscribe

and current user.

Responses

  • Subscription entry removed

DELETE /actions/user/sequences/{sequence_id}/task-types/{task_type_id}/unsubscribe
curl \
 --request DELETE 'http://api.example.com/actions/user/sequences/{sequence_id}/task-types/{task_type_id}/unsubscribe' \
 --header "Authorization: $API_KEY"













Create a new chat message.

POST /data/entities/{entity_id}/chat/messages

Path parameters

  • entity_id Required

    ID of the entity related to the chat

Responses

  • Chat message created

  • Not participant of the chat

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
















































Retrieve all previews related to a given concept.

GET /data/concepts/{concept_id}/preview-files

It sends them as a dict. Keys are related task type ids and values are arrays of preview for this task type.

Responses

  • All previews related to given episode

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

Retrieve all concepts related to a given project.

GET /data/projects/{project_id}/concepts

Responses

  • All concepts related to given project

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