Resource to allow a user to login with SAML SSO.

GET /auth/saml/login

Responses

  • 302

    Redirect to the SAML IDP.

  • 400

    Wrong parameter.

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

































































































Share or unshare all assets for given project and asset type.

POST /actions/projects/{project_id}/asset-types/{asset_type_id}/assets/share

Path parameters

  • project_id Required
  • asset_type_id Required

Responses

  • 201

    All assets modified.

POST /actions/projects/{project_id}/asset-types/{asset_type_id}/assets/share
curl \
 --request POST 'http://api.example.com/actions/projects/{project_id}/asset-types/{asset_type_id}/assets/share' \
 --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"






























































































































































Retrieve a model corresponding at given ID and return it as a JSON object.

GET /data/entities/{instance_id}

Path parameters

  • instance_id Required

Responses

  • 200

    Model as a JSON object

  • 400

    Statement error

  • 404

    Value error

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
































































Retrieve a model corresponding at given ID and return it as a JSON object.

GET /data/departments/{instance_id}

Path parameters

  • instance_id Required

Responses

  • 200

    Model as a JSON object

  • 400

    Statement error

  • 404

    Value error

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




























Retrieve all entries for given model.

GET /data/file-status/

Filters can be specified in the query string.

Responses

  • 200

    All entries for given model

  • 400

    Format error

  • 403

    Permission denied

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




































Retrieve all entries for given model.

GET /data/output-files

Filters can be specified in the query string.

Responses

  • 200

    All entries for given model

  • 400

    Format error

  • 403

    Permission denied

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
























Retrieve an output type corresponding at given ID and return it as a

GET /data/output-types/{instance_id}

JSON object.

Path parameters

  • output_type_id Required

Responses

  • 200

    Model as a JSON object

  • 400

    Statement error

  • 404

    Value error

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
























































Retrieve a model corresponding at given ID and return it as a JSON object.

GET /data/attachment-files/{instance_id}

Path parameters

  • instance_id Required

Responses

  • 200

    Model as a JSON object

  • 400

    Statement error

  • 404

    Value error

GET /data/attachment-files/{instance_id}
curl \
 --request GET '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/studios

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

Responses

  • 200

    Model created

  • 400

    Error

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








Delete a model corresponding at given ID and return it as a JSON object.

DELETE /data/studios/{instance_id}

Path parameters

  • instance_id Required

Responses

  • 204

    Model deleted

  • 400

    Statement or integrity error

  • 404

    Instance non-existant

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
































Retrieve all entries for given model.

GET /data/plugins

Filters can be specified in the query string.

Responses

  • 200

    All entries for given model

  • 400

    Format error

  • 403

    Permission denied

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
















































































































Export as csv.

GET /export/csv/time-spents.csv

Responses

  • 200

    Exported as csv

GET /export/csv/time-spents.csv
curl \
 --request GET 'http://api.example.com/export/csv/time-spents.csv' \
 --header "Authorization: $API_KEY"

























Create new output file linked to assets through an instance of this asset for a given shot.

POST /data/asset-instances/{asset_instance_id}/entities/{temporal_entity_id}/output-files/new

Some output files are linked to assets through an instance of this asset for a given shot. Each time a CG artist is satisfied by what he did on a working file, he can create an output file that will be linked to a target instance. It keeps track of the working file at the origin of the output file. An output type is required for better categorization (textures, caches, ...). A task type can be set too to give the department related to the output file.

Path parameters

  • asset_instance_id Required
  • temporal_entity_id Required

Responses

  • 200

    New output file created

  • 400

    Given output file already exists Given person not found Given output type not found

POST /data/asset-instances/{asset_instance_id}/entities/{temporal_entity_id}/output-files/new
curl \
 --request POST 'http://api.example.com/data/asset-instances/{asset_instance_id}/entities/{temporal_entity_id}/output-files/new' \
 --header "Authorization: $API_KEY"




























































Download a working file.

GET /data/working-files/{working_file_id}/file

Path parameters

  • working_file_id Required

Responses

  • 200

    Working file downloaded

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













































































Delete error.

DELETE /import/shotgun/errors/{error_id}

Path parameters

  • error_id Required

Responses

  • 204

    Error deleted

  • 404

    Error non-existant or Statement error

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








Import remove instance.

POST /import/shotgun/remove/shot

Responses

  • 204

    Instance removed

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
















Import remove instance.

POST /import/shotgun/remove/projectconnection

Responses

  • 204

    Instance removed

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




















































































































































































































































Retrieve all previews related to a given entity.

GET /data/playlists/entities/{entity_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.

Path parameters

  • entity_id Required

Responses

  • 200

    All previews related to given entity

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





































Download a movie preview.

GET /movies/originals/preview-files/{instance_id}.mp4

It stores the preview file and generates three picture files matching preview when it's possible: a square thumbnail, a rectangle thumbnail and a midsize file.

Path parameters

  • instance_id Required

Responses

  • 200

    Movie preview downloaded

  • 403

    Instance not allowed

  • 404

    File not found

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

Download a movie preview.

GET /movies/originals/preview-files/{instance_id}/download

Path parameters

  • instance_id Required

Responses

  • 200

    Movie preview downloaded

  • 403

    Instance not allowed

  • 404

    File not found

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




Download a thumbnail.

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

Path parameters

  • instance_id Required

Responses

  • 200

    Thumbnail downloaded

  • 403

    Instance not allowed

  • 404

    Picture file not found

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




























Download the thumbnail linked to given object instance.

GET /pictures/thumbnails/organisations/{instance_id}

Path parameters

  • instance_id Required

Responses

  • 200

    Thumbnail downloaded

  • 403

    Access not allowed

  • 404

    Object instance not found

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












Download the thumbnail linked to given object instance.

GET /pictures/thumbnails/persons/{instance_id}

Path parameters

  • instance_id Required

Responses

  • 200

    Thumbnail downloaded

  • 403

    Access not allowed

  • 404

    Object instance not found

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





































































Add a person to a production team.

POST /data/projects/{project_id}/team

Path parameters

  • project_id Required

Responses

  • 201

    Person added to the production team

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

Retrieve task types linked to the production

GET /data/projects/{project_id}/task-types

Path parameters

  • project_id Required

Responses

  • 200

    Task types linked to the production

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




























































Create a new metadata descriptor

POST /data/projects/{project_id}/metadata-descriptors

It serves to describe extra fields listed in the data attribute of entities.

Path parameters

  • project_id Required

Responses

  • 201

    Create a new metadata descriptor

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




















Retrieve task type schedule items for given production

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

Path parameters

  • project_id Required

Responses

  • 200

    All task types schedule items of given production

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
































Delete a budget for given production

DELETE /data/projects/{project_id}/budgets/{budget_id}

Path parameters

  • project_id Required
  • budget_id Required

Responses

  • 204

    Empty response

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














































































Retrieve given scene.

GET /data/scenes/{scene_id}

Path parameters

  • scene_id Required

Responses

  • 200

    Given scene

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




































Delete given episode.

DELETE /data/episodes/{episode_id}

Path parameters

  • episode_id Required

Responses

  • 204

    Given episode deleted

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












Retrieve all task types related to a given episode.

GET /data/episodes/{episode_id}/task-types

Path parameters

  • episode_id Required

Responses

  • 200

    All task types related to given episode

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




























Retrieve all scenes related to a given sequence.

GET /data/sequences/{sequence_id}/scenes

Path parameters

  • sequence_id Required

Responses

  • 200

    All scenes related to given sequence

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








Retrieve all tasks related to a given sequence.

GET /data/sequences/{sequence_id}/shot-tasks

Path parameters

  • sequence_id Required

Responses

  • 200

    All task types related to given sequence

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

































































Get comment corresponding at given ID.

GET /data/tasks/{task_id}/comments/{comment_id}

Path parameters

  • task_id Required
  • comment_id Required

Responses

  • 200

    Comment corresponding at given ID

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
































































































































User

Set `has_avatar` flag to False for current user and remove its avatar

DELETE /actions/persons/{person_id}/clear-avatar

file.

Responses

  • 204

    Avatar file deleted

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








Return tasks related to given shot for current user.

GET /data/user/shots/{shot_id}/tasks

Path parameters

  • shot_id Required

Responses

  • 200

    Tasks related to given shot

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




































Return sequences related to given project if the current user has access

GET /data/user/projects/{project_id}/sequences

to it.

Path parameters

  • project_id Required

Responses

  • 200

    Sequences related to given project

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








Return scenes related to given sequence if the current user has access

GET /data/user/sequences/{sequence_id}/scenes

to it.

Path parameters

  • sequence_id Required

Responses

  • 200

    Scenes related to given sequence

GET /data/user/sequences/{sequence_id}/scenes
curl \
 --request GET 'http://api.example.com/data/user/sequences/{sequence_id}/scenes' \
 --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.

Path parameters

  • task_id Required

Responses

  • 204

    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"

























































































Retrieve all concepts related to a given project.

GET /data/projects/{project_id}/concepts

Path parameters

  • project_id Required

Responses

  • 200

    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"