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"









































































































































































Retrieve all shared assets used in project episode.

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

Responses

  • All shared assets used in project episode

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






























































































Create a new comment for given task.

POST /actions/tasks/{task_id}/comment

It requires a text, a task_status and a person as arguments. This way, comments keep history of status changes. When the comment is created, it updates the task status with given task status.

Path parameters

Responses

  • New comment created

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

















Create a model with data given in the request body.

POST /data/persons

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

Responses

POST /data/persons
curl \
 --request POST 'http://api.example.com/data/persons' \
 --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/entities/{instance_id}
curl \
 --request GET 'http://api.example.com/data/entities/{instance_id}' \
 --header "Authorization: $API_KEY"




















































































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
























































































































































Create a model with data given in the request body.

POST /data/comments

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

Responses

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








Update a model with data given in the request body.

PUT /data/custom-actions/{instance_id}

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

Responses

PUT /data/custom-actions/{instance_id}
curl \
 --request PUT '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/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"




































































































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




























































Update a model with data given in the request body.

PUT /data/entity-links/{instance_id}

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

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












































Retrieve all entries for given model.

GET /data/preview-background-files

Filters can be specified in the query string.

Responses

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
















































































































































































Export as csv.

GET /export/csv/projects.csv

Responses

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












































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"

Download a working file.

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

Responses

  • 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"





















































































Import remove instance.

POST /import/shotgun/remove/person

Responses

POST /import/shotgun/remove/person
curl \
 --request POST 'http://api.example.com/import/shotgun/remove/person' \
 --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"








Import the estimations of task-types for given episode of given project.

POST /import/csv/projects/{project_id}/episodes/{episode_id}/task-types/{task_type_id}/estimations

Path parameters

Responses

POST /import/csv/projects/{project_id}/episodes/{episode_id}/task-types/{task_type_id}/estimations
curl \
 --request POST 'http://api.example.com/import/csv/projects/{project_id}/episodes/{episode_id}/task-types/{task_type_id}/estimations' \
 --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"
















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"












Retrieve all playlists related to given project.

POST /data/projects/{project_id}/playlists/temp

It's mainly used for synchronisation purpose.

Path parameters

Responses

  • All playlists related to given project

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




































Responses

  • Thumbnail downloaded

  • Access not allowed

  • Object instance not found

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

























































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

Add an asset type linked to a production.

POST /data/projects/{project_id}/settings/asset-types

Path parameters

Responses

  • Asset type added to production

POST /data/projects/{project_id}/settings/asset-types
curl \
 --request POST 'http://api.example.com/data/projects/{project_id}/settings/asset-types' \
 --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/all
curl \
 --request GET 'http://api.example.com/data/shots/all' \
 --header "Authorization: $API_KEY"
GET /data/shots/with-tasks
curl \
 --request GET 'http://api.example.com/data/shots/with-tasks' \
 --header "Authorization: $API_KEY"
















































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
































































































































Responses

  • Number of tasks by status, task types and episodes for given project

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




























Delete all tasks for a given task type and project.

DELETE /actions/projects/{project_id}/task-types/{task_type_id}/delete-tasks

It's mainly used when tasks are created by mistake at the beginning of the project.

Responses

  • All tasks for given task type and project deleted

DELETE /actions/projects/{project_id}/task-types/{task_type_id}/delete-tasks
curl \
 --request DELETE 'http://api.example.com/actions/projects/{project_id}/task-types/{task_type_id}/delete-tasks' \
 --header "Authorization: $API_KEY"
































Add given timeframe to time spent by a person on a task for a given day.

POST /actions/tasks/{task_id}/time-spents/{date}/persons/{person_id}/add

Path parameters

Responses

  • Given timeframe added to time spent by given person on given task for given day

  • Wrong date format

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




















Create a new task for given asset and task type.

POST /actions/projects/{project_id}/task-types/{task_type_id}/assets/create-tasks

Path parameters

Responses

  • New task for given asset and task type created

POST /actions/projects/{project_id}/task-types/{task_type_id}/assets/create-tasks
curl \
 --request POST 'http://api.example.com/actions/projects/{project_id}/task-types/{task_type_id}/assets/create-tasks' \
 --header "Authorization: $API_KEY"





















































Responses

  • Open projects for which the user has at least one task assigned

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




























































Responses

  • Filter groups for the current user and only for open projects

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