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"
















































































Responses

  • Redirect to the SAML IDP.

  • Wrong parameter.

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









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




















































































Retrieve all shared assets used in project.

GET /data/projects/{project_id}/assets/shared-used

Responses

  • All shared assets used in project

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









Resource to allow the modification of assets linked to an entity.

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

Responses

  • Modification of assets linked to an entity

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












































Add an asset instance to given shot.

POST /data/shots/{shot_id}/asset-instances

Path parameters

Responses

  • Asset instance added to given shot

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

























Add given files to the comment entry as attachments.

POST /actions/tasks/{task_id}/comments/{comment_id}/add-attachment

Path parameters

Responses

  • Given files added to the comment entry as attachments

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

Responses

  • All attachment files related to given project

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

























































































































GET /data/task-types/{instance_id}
curl \
 --request GET '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"

Update a model with data given in the request body.

PUT /data/tasks/{instance_id}

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

Responses

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
















Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

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




























































































Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

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

Retrieve all entries for given model.

GET /data/preview-files

Filters can be specified in the query string.

Responses

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




















































Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

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




Update a model with data given in the request body.

PUT /data/asset-instances/{instance_id}

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

Responses

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
















Create a model with data given in the request body.

POST /data/notifications/

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

Responses

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








































































Retrieve all entries for given model.

GET /data/news/

Filters can be specified in the query string.

Responses

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












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
































































Create a model with data given in the request body.

POST /data/entity-links/

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

Responses

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




































Create a model with data given in the request body.

POST /data/chat-messages/

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

Responses

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








































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
















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
















Responses

  • Model deleted

  • Statement or integrity error

  • Instance non-existant

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

Retrieve all entries for given model.

GET /data/plugins

Filters can be specified in the query string.

Responses

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

























Responses

  • All task types related to given edit

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








Responses

  • Data versions of given edit

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





























































































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"

Get all output files for given entity and given output type.

GET /data/entities/{entity_id}/output-types/{output_type_id}/output-files

Responses

  • All output files for given entity and given output type

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

















































Import shotgun resource.

POST /import/shotgun/sequences

Responses

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








Responses

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








Responses

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












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
































Import remove instance.

POST /import/shotgun/remove/asset

Responses

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




































Import project edits.

POST /import/csv/projects/{project_id}/edits

Path parameters

Responses

POST /import/csv/projects/{project_id}/edits
curl \
 --request POST 'http://api.example.com/import/csv/projects/{project_id}/edits' \
 --header "Authorization: $API_KEY"

























































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













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




















































































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"




Allow admin to change password for given user.

POST /actions/persons/{person_id}/change-password

Prior to modifying the password, it requires to be admin. An admin can't change other admins password. The new password requires a confirmation to ensure that the admin didn't make a mistake by typing the new password.

Path parameters

Responses

  • Password changed

  • Invalid password or inactive user

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

































Retrieve all build jobs related to given project.

GET /data/projects/{project_id}/build-jobs

It's mainly used for synchronisation purpose.

Responses

  • All build jobs related to given project

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


























































































































































































Return task statuses linked to a production

GET /data/projects/{project_id}/settings/task-status

Responses

  • Task statuses linked to production

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

Add a task type linked to a production.

POST /data/projects/{project_id}/settings/task-status

Path parameters

Responses

  • Task type added to production

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
















Remove a preview background file from a production.

DELETE /data/projects/{project_id}/settings/preview-background-files/{preview_background_file_id}

Responses

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
































Retrieve schedule items for given production

GET /data/projects/{project_id}/schedule-items

Responses

  • All schedule items of given production

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




























Responses

  • All shots related to given episode

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












Responses

  • All shots tasks related to given episode

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




















































Create a scene for given project.

POST /data/projects/{project_id}/scenes

Path parameters

Responses

  • Scene created for given project

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

























































Responses

  • Previews linked to given task

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












Return task assigned to given user of which status has is_done flag sets to true.

GET /data/persons/{person_id}/done-tasks

It return only tasks related to open projects.

Responses

  • Tasks assigned to user that are done

GET /data/persons/{person_id}/done-tasks
curl \
 --request GET 'http://api.example.com/data/persons/{person_id}/done-tasks' \
 --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"




























Retrieve desktop login logs.

GET /data/user/desktop-login-logs

Responses

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








Responses

  • Day off object for current user and given date

  • Wrong date format

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












Responses

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

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








DELETE /actions/user/chats/{entity_id}/join
curl \
 --request DELETE 'http://api.example.com/actions/user/chats/{entity_id}/join' \
 --header "Authorization: $API_KEY"