This section gives details of each API endpoint and details the methods supported, the parameters supported and the results that will be returned.
Endpoint: /users
Represents the collection of all the users defined on the server:
GET /users
Returns an array of all the users defined on the server.
GET /users/<user_id>
Returns the user with the specified id.
POST /users
Add a new user to the system. POST data contains JSON User object. Returns the ID of the newly created User.
PUT /users/<user_id>
Update the User specified by <user_id> with the values in the JSON User object passed in the PUT data. Only fields present in the passed in JSON User object will be updated.
DELETE /users/<user_id>
Delete the User specified by <user_id>. Any items currently owned by the user will pass to the anonymous user.
Endpoint: /groups
Represents the collection of all the Production Groups defined on the server:
GET /groups
Returns an array of all the role defined on the server.
GET /groups/<group_id>
Returns the Production Group with the specified <group_id>.
POST /groups
Create a new Production Group based on the JSON Production Group object passed in the POST data. Returns the ID of the newly created Production Group.
PUT /groups/<group_id>
Update the Production Group specified by <group_id> with the values in the JSON Production Group object passed in the PUT data. Only fields present in the passed in JSON Production Group object will be updated.
PUT /groups/<groupID>/roles
Update the Role Permissions for this Production Group. PUT data contains an array of Role objects, each with two fields set – the Role’s ID and the Role’s Permissions with respect this Production Group. Roles not present in the list are assumed to have no Permissions with respect to this Production Group and will have any existing permissions removed.
DELETE /groups/<group_id>
Delete the Production Group specified by <group_id>.
Endpoint: /Roles
Represents the collection of all the Roles defined on the server:
GET /roles
Returns an array of all the Role defined on the server.
GET /roles/<role_id>
Returns the production role with the specified <role_id>.
GET /roles/<roleID>/permissions?groupID=<groupID>
Returns the set of Role Permissions (as a String[]) that apply to the specified Role with respect to the specified Production Group.
POST /roles
Create a new Role based on the JSON Role object passed in the POST data. Returns the ID of the newly created Role.
PUT /roles/<role_id>
Update the Role specified by <role_id> with the values in the JSON Role object passed in the PUT data. Only fields present in the passed in JSON Role object will be updated.
DELETE /roles/<role_id>
Delete the Role specified by <role_id>.
Endpoint: /Fields
Represents the collection of all the Field Definitions defined on the server:
GET /fields[?include=<include_flags>][&filter=<filter>][&skip=<skip>&take=<take>][&groupID=<groupID>][&onlyQueryableFields=true]
Returns a PartialResultSet of Field Definitions that conform to the passed in parameters:
Parameter | Function |
---|---|
include | Determines which Field Definitions to include in the results and also whether to return additional related data within each Field Definition. Supported values are:
|
filter | Only return FieldDefinitions whose name contains the specified string |
skip/take | Controls which portion of the result set to return. See PartialResultSet |
groupID | For built-in fields, use the specified group to determine the correct set of Picklist values if applicable. |
onlyQueryableFields | Only return FieldDefinitions for fields that can be used in Clip Query filter expressions |
GET /fields/<field_id>
Returns the Field Definition with the specified <field_id>, where <field_id> can be either the numeric ID of a user-defined custom field, or the short string ID of a built-in field (e.g. NM1, STS etc.).
GET /fields/<field_id>/list[?groupID=<group_id>][&include=values]
Returns the Picklist object associated with the FieldDefinition specified by <field_id>, where <field_id> can be either the numeric ID of a user-defined custom field, or the short string ID of a built-in field (e.g. NM1, STS etc.). For built-in fields the groupID parameter must be provided to identify the Production Group that the Picklist definition should be taken from.
If the optional include=values parameter is included then the actual picklist values are included with with the picklist.
GET /fields/<field_id>/list/values[?groupID=<group_id>]
Returns the Picklist values associated with the FieldDefinition specified by <field_id>, where <field_id> can be either the numeric ID of a user-defined custom field, or the short string ID of a built-in field (e.g. NM1, STS etc.). For built-in fields the groupID parameter must be provided to identify the Production Group that the values should be taken from.
GET /fields/<field_id>/values
Returns a complete list of all the unique values held in the database for the specified field. For large databases this can be an expensive operation, since every clip needs to be considered.
GET /fields/types
Returns all the available user-defined field types as an array of ID/Name pairs.
POST /fields
Create a new Field Definition based on the JSON Field Definition object passed in the POST data. Returns the ID of the newly created Field Definition.
PUT /fields/<field_id>
Update the Field Definition specified by <field_id> with the values in the JSON FieldDefinition object passed in the PUT data. Only properties present in the passed in JSON FieldDefinition object will be updated.
PUT /fields/<field_id>/list[?groupID=<group_id>]
Update the Picklist associated with the Field Definition specified by <field_id> with the values in the JSON Picklist object passed in the PUT data. The values of <field_id> can be either the numeric ID of a user-defined custom field, or the short string ID of a built-in field (e.g. NM1, STS etc.). For built-in fields the groupID parameter must be provided to identify the Production Group that the Picklist belongs to.
DELETE /fields/<field_id>
Delete the Field Definition specified by <field_id>.
Endpoint: /viewsets
Represents the collection of all the viewsets defined on the server:
GET /viewsets
Returns an array of all the viewsets defined on the server.
GET /viewsets/<viewset_id>
Returns the ViewSet with the specified id.
POST /viewsets
Add a new ViewSet to the system. POST data contains JSON ViewSet object. Returns the ID of the newly created ViewSet.
PUT /viewsets/<viewset_id>
Update the ViewSet specified by <viewset_id> with the values in the JSON ViewSet object passed in the PUT data. Only fields present in the passed in JSON ViewSet object will be updated.
DELETE /viewsets/<viewset_id>
Delete the ViewSet specified by <viewset_id>.
Endpoint: /views
Represents the collection of all the views defined on the server:
GET /views[?include=<include_options>][&groupID=<group_id>]
Returns an array of the views defined on the server based on the supplied parameters.
Parameter | Function |
---|---|
include | Determines which views to include in the results and also whether to return additional related data within each view. Supported values are:
|
groupID | For built-in fields, use the specified group to determine the correct set of Picklist values if applicable. |
GET /views/<view_id>
Returns the user with the specified id.
GET /views/<view_id>/fields
Returns the ViewFields defined for the the specified view.
POST /views
Add a new user to the system. POST data contains JSON View object. Returns the ID of the newly created View.
PUT /views/<view_id>
Update the View specified by <view_id> with the values in the JSON View object passed in the PUT data. Only fields present in the passed in JSON View object will be updated.
PUT /views/<view_id>/fields
Update the fields associated with the specified View using with the array of JSON ViewField objects passed in the PUT data.
DELETE /views/<view_id>
Delete the View specified by <view_id>.
Endpoint: /panelsets
Represents the collection of all the PanelSets defined on the server:
GET /panelsets
Returns an array of all the PanelSets defined on the server.
GET /panelsets/<panelset_id>
Returns the PanelSet with the specified id.
POST /panelsets
Add a new PanelSet to the system. POST data contains JSON PanelSet object. Returns the ID of the newly created PanelSet.
PUT /panelsets/<panelset_id>
Update the PanelSet specified by <panelset_id> with the values in the JSON PanelSet object passed in the PUT data. Only fields present in the passed in JSON PanelSet object will be updated.
DELETE /PanelSets/<panelset_id>
Delete the PanelSet specified by <panelset_id>.
Endpoint: /panels
Represents the collection of all the panels defined on the server:
GET /panels[?include=<include_options>][&groupID=<group_id>]
Returns an array of the panels defined on the server based on the supplied parameters.
Parameter | Function |
---|---|
include | Determines which panels to include in the results and also whether to return additional related data within each panel. Supported values are:
|
groupID | For built-in fields, use the specified group to determine the correct set of Picklist values if applicable. |
GET /panels/<panel_id>
Returns the user with the specified id.
GET /panels/<panel_id>/fields
Returns the PanelFields defined for the the specified panel.
POST /panels
Add a new user to the system. POST data contains JSON Panel object. Returns the ID of the newly created Panel.
PUT /panels/<panel_id>
Update the Panel specified by <panel_id> with the values in the JSON Panel object passed in the PUT data. Only fields present in the passed in JSON Panel object will be updated.
PUT /panels/<panel_id>/fields
Update the fields associated with the specified Panel using with the array of JSON PanelField objects passed in the PUT data.
DELETE /panels/<panel_id>
Delete the Panel specified by <panel_id>.
Endpoint: /mediastores
Represents the collection of all the mediastores defined on the server:
GET /mediastores
Returns an array of all the mediastores defined on the server.
GET /mediastores/<mediastore_id>
Returns the MediaStore with the specified id.
POST /mediastores
Add a new MediaStore to the system. POST data contains JSON MediaStore object. Returns the ID of the newly created ViewSet.
POST/mediastores/<mediastore_id>/paths
Add a new MediaPath to the MediaStore specified by <mediastore_id>.
PUT /mediastores/<mediastore_id>
Update the MediaStore specified by <mediastore_id> with the values in the JSON MediaStore object passed in the PUT data. Only fields present in the passed in JSON MediaStore object will be updated.
PUT /mediastores/<mediastore_id>/paths/<mediapath_id>
Update the MediaPath specified by <mediapath_id> within the MediaStore specified by <mediastore_id> with the values in the JSON MediaPath object passed in the PUT data. Only fields present in the passed in JSON MediaPath object will be updated.
DELETE /mediastores/<mediastore_id>
Delete the MediaStore specified by <mediastore_id>.