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"

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

POST /auth/reset-password

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

Responses

  • Reset token sent

  • Email not listed in database

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
































Responses

  • new recovery codes.

  • Invalid password Wrong or expired token Inactive user

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




Responses

  • FIDO device pre-registered.

  • Invalid password Wrong or expired token Inactive user

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









































































Retrieve all scene asset instances linked to asset.

GET /data/assets/{asset_id}/scene-asset-instances

Responses

  • All scene asset instances linked to asset

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








Retrieve all assets for given project and entity type.

GET /data/projects/{project_id}/asset-types/{asset_type_id}/assets

Responses

  • All assets for given project and entity type

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




















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

Resource to retrieve the casting of assets from given asset type.

GET /data/projects/{project_id}/asset-types/{asset_type_id}/casting

Responses

  • Casting of assets from given asset type

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




































Responses

  • All assets linked to shot

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





















Delete given comment reply.

DELETE /data/tasks/{task_id}/comments/{comment_id}/reply/{reply_id}

Responses

  • Given comment reply deleted

DELETE /data/tasks/{task_id}/comments/{comment_id}/reply/{reply_id}
curl \
 --request DELETE 'http://api.example.com/data/tasks/{task_id}/comments/{comment_id}/reply/{reply_id}' \
 --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"





























































Retrieve all entries for given model.

GET /data/project-status

Filters can be specified in the query string.

Responses

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
























































































































Create a model with data given in the request body.

POST /data/output-types

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

Responses

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
















































































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












































Retrieve all entries for given model.

GET /data/custom-actions/

Filters can be specified in the query string.

Responses

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
















































































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




















Update a model with data given in the request body.

PUT /data/notifications/{instance_id}

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

Responses

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








































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




































































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

































































































































































Create new working file.

POST /data/tasks/{task_id}/working-files/new

A working file is a file used to produce output files. It is the file the CG artist is working on. It is versioned, tied to a task and a software and requires a comment each time it is created. A path is generated for each file created. The path format is defined in the file tree template file.

Path parameters

Responses

  • New working file created

  • Given working file already exists

POST /data/tasks/{task_id}/working-files/new
curl \
 --request POST 'http://api.example.com/data/tasks/{task_id}/working-files/new' \
 --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"












Return all types of output generated for given instance.

GET /data/asset-instances/{asset_instance_id}/entities/{temporal_entity_id}/output-types

Responses

  • All types of output generated for given instance and temporal_entity

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













































































Responses

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
































Responses

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












Delete error.

DELETE /import/shotgun/errors/{error_id}

Responses

  • Error deleted

  • 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 project shots via a .csv file.

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

Path parameters

Responses

  • The lists of imported assets.

  • The .csv file is not properly formatted.

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

























































Responses

  • Date and CPU, memory and jobs stats

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









































































































Create a thumbnail for given object instance.

POST /pictures/thumbnails/projects/{instance_id}

Path parameters

Responses

  • Thumbnail created

  • Cannot found related object.

POST /pictures/thumbnails/projects/{instance_id}
curl \
 --request POST 'http://api.example.com/pictures/thumbnails/projects/{instance_id}' \
 --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"













































Remove an asset type from a production.

DELETE /data/projects/{project_id}/settings/asset-types/{asset_type_id}

Responses

DELETE /data/projects/{project_id}/settings/asset-types/{asset_type_id}
curl \
 --request DELETE 'http://api.example.com/data/projects/{project_id}/settings/asset-types/{asset_type_id}' \
 --header "Authorization: $API_KEY"




















































































































Retrieve a budget entry for given production and budget

GET /data/projects/{project_id}/budgets/{budget_id}/entries/{entry_id}

Responses

  • Budget entry retrieved

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





















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
























Retrieve all previews related to a given shot.

GET /data/shots/{shot_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/shots/{shot_id}/preview-files
curl \
 --request GET 'http://api.example.com/data/shots/{shot_id}/preview-files' \
 --header "Authorization: $API_KEY"




























































Retrieve all sequence entries for a given episode.

GET /data/episodes/{episode_id}/sequences

Filters can be specified in the query string.

Responses

  • All sequence entries for given episode

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





































































































































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

























































































































Responses

  • Tasks related to given asset for current user

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




































































































































































Return the list of sequence ids to which the current user has

GET /data/user/projects/{project_id}/task-types/{task_type_id}/sequence-subscriptions

subscribed for given task type.

Responses

  • List of sequence ids to which the current user has subscribed for given task type

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