Skip to main content

Collection Endpoints

Collection Endpoints and Parameters

Create a New Collection

Add a User to a Collection

Add a Schedule to a Collection

Add a Workflow to a Collection

Add a User Group to a Collection

Retrieve a Collection Record

Retrieve Records of All Collections

Update an Existing Collection

Update User Permissions of a Collection

Update User Group Permissions of a Collection

Remove a User from a Collection

Remove a Workflow from a Collection

Remove a Schedule from a Collection

Remove a User Group from a Collection

Delete a Collection

To learn more about the objects relations and how to use them in the API, go to the Object Relations section.

For more information about collections, visit the Collections help page.

Create a New Collection

To create a collection, use the POST {baseURL}/v3/collections endpoint.

Note

Only Curators can use this API endpoint. The authenticated API user must have the "Create Collections" permission to use this endpoint, else 401 Unauthorized will be returned.

Parameters

  • contract (body): To create a collection, the contract parameter is required. Specify the following to create a collection:

    • name (string): Required. Specify a collection name.

Request Example: cURL

curl --location --request POST 'http://localhost/webapi//v3/collections' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'name=Accounting'

Add a User to a Collection

To add a user to an existing collection, use the POST {baseURL}/v3/collections/{collectionId}/users endpoint.

Note

Only Curators can use this API endpoint.

082A8515AB7ADDAAD5B04255CF2AE567.png

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection to add a user to.

  • addUsersContract (body): Required. Enter an information about the users and their permissions. Specify the following to add users to a collection:

    • userId (string): Required. Specify the ID of a user you want to add to a collection.

    • expirationDate (string): Optional. Specify the expiration date for the user to be part of this collection. Enter the date and time in ISO8601 format.

    • collectionsPermissions (body):

      • isAdmin (boolean): Required. Specify whether the user should be admin for this collection.

      • canAddAssets (boolean): Required. Specify whether the user can add assets to the collection.

      • canUpdateAssets (boolean): Required. Specify whether the user can update assets in the collection.

      • canRemoveAssets (boolean): Required. Specify whether the user can remove assets from the collection.

      • canAddUsers (boolean): Optional. Specify whether the user can add other users to the collection.

      • canRemoveUsers (boolean): Optional. Specify whether the user can remove users from the collection.

For more information about roles and permissions, visit the User Roles and Permissions page. When no role is selected, the default is the default role as specified by a Server administrator in the Admin interface.

Request Example: cURL

curl --location --request POST 'http://localhost/webapi//v3/collections/7917969784f84bd09442f66996ecb8f3/users' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'userId=61d80f862835728c94328082' \ --data-urlencode 'isAdmin=true' \ --data-urlencode 'canAddAssets=true' \ --data-urlencode 'canRemoveAssets=true' \ --data-urlencode 'canUpdateAssets=true' \ --data-urlencode 'canAddUsers=true' \ --data-urlencode 'canRemoveUsers=true' \ --data-urlencode 'expirationDate=2007-08-17T19:18:11.924Z'

Add a Schedule to a Collection

To add a schedule to an existing collection, use the POST {baseURL}/v3/collections/{collectionId}/schedules endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection to add a schedule to.

  • contract (body): Required. Enter an information about the schedule. Specify the following:

    • scheduleId (string): Required. Specify the schedule ID you want to add to the collection.

Request Example: cURL

curl --location --request POST 'http://localhost/webapi//v3/collections/7917969784f84bd09442f66996ecb8f3/schedules' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'scheduleId=61d80f334528377728c94328082'

Add a Workflow to a Collection

To add a workflow to an existing collection, use the POST {baseURL}/v3/collections/{collectionId}/workflows endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection to add a workflow to.

  • contract (body): Required. Enter an information about the users and their permissions. Specify the following:

    • workflowId (string): Required. Specify the workflow ID you want to add to the collection.

Request Example: cURL

curl --location --request POST 'http://localhost/webapi//v3/collections/7917969784f84bd09442f66996ecb8f3/workflows' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'workflowId=61d80f334223377728c9432'

Add a User Group to a Collection

To add a user group to an existing collection, use the POST {baseURL}/v3/collections/{collectionId}/userGroups endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection to add a user group to.

  • addUserGroupsContract (body): Required. Enter an information about the user group and its permissions. Specify the following:

    • userGroupId (string): Required. Specify the ID of a user group you want to add to a collection.

    • expirationDate (string): Optional. Specify the expiration date for the user group to be part of this collection. Enter the date and time after which the user was created in ISO8601 format.

    • collectionsPermissions (body): Required.

      • isAdmin (boolean): Optional. Specify whether the user group members should be admins for this collection. Default is false.

      • canAddAssets (boolean): Optional. Specify whether the user group members can add assets to the collection. Default is false.

      • canRemoveAssets (boolean): Optional. Specify whether the user group members can remove assets from the collection. Default is false.

      • canUpdateAssets (boolean): Optional. Specify whether the user group members can update assets in the collection. Default is false.

      • canAddUsers (boolean): Optional. Specify whether the user group members can add other users to the collection. Default is false.

      • canRemoveUsers (boolean): Required. Specify whether the user group members can remove other users from the collection. Default is false.

For more information about roles and permissions, visit the User Roles and Permissions page. When no role is selected, the default is the default role as specified by a Server administrator in the Admin interface.

Request Example: cURL

curl --location --request POST 'http://localhost/webapi//v3/collections/7917969784f84bd09442f66996ecb8f3/userGroups?addUserGroupsContract' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'userGroupId=61d83e2ef778247f14e8e6b6' \ --data-urlencode 'isAdmin=true' \ --data-urlencode 'canAddAssets=false' \ --data-urlencode 'canRemoveAssets=true' \ --data-urlencode 'canUpdateAssets=false' \ --data-urlencode 'canAddUsers=true' \ --data-urlencode 'canRemoveUsers=true'

Retrieve a Collection Record

To retrieve details about an existing collection, use the GET {baseURL}/v3/collections/{collectionId} endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to get the information about the collection.

Request Example: cURL

curl --location --request GET 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c' \ --header 'Authorization: Bearer BearerTokenGoesHere'

Retrieve Records of All Collections

To retrieve all accessible collection records, use the GET {baseURL}/v3/collections endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • view (string): Optional. Can be left without a value. You can choose from the following values: ‘Default’ and ‘Full’. If this parameter is set to 'Default’, then a reduced view object will be returned. When not specified, the ‘Default’ value is used.

Request Example: cURL

curl --location --request GET 'http://localhost/webapi/v3/collections?view=Full' \ --header 'Authorization: Bearer BearerTokenGoesHere'

Update an Existing Collection

To update the name and/or owner of an existing collection, use the PUT {baseURL}/v3/collections/{collectionId} endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • updateCollectionContract (body): Required. Enter information about the collection owner you want to change. Specify the following:

    • name (string): Required. Enter the new name of the collection.

    • ownerId (string): Required. Enter the ID of the new owner.

Request Example: cURL

curl --location --request PUT 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'name=Accounting' \ --data-urlencode 'ownerId=61db388fc565144387d45086'

Update User Permissions of a Collection

To update user permissions within an existing collection, use the PUT {baseURL}/v3/collections/{collectionId}/users/{userId}/permissions endpoint.

Note

Only Curators can use this API endpoint. For Windows Authentication configured Server instances, provide the Active Directory Sid for the userId parameter.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • userId (string): Required. Enter a user ID you want to change the permissions for.

  • updatePermissionsContract (body): Required. Enter the user ID for which you want to change permissions. Specify the following:

    • expirationDate (date): Required. Specify the expiration date of a user.

    • collectionsPermissions (body): Required. Enter the user ID of the new owner. Specify the following:

      • isAdmin (boolean): Required. Specify whether the user should be admin for this collection.

      • canAddAssets (boolean): Required. Specify whether the user can add assets to the collection.

      • canRemoveAssets (boolean): Required. Specify whether the user can remove assets from the collection.

      • canUpdateAssets (boolean): Required. Specify whether the user can update assets in the collection.

      • canAddUsers (boolean): Required. Specify whether the user can add other users to the collection.

      • canRemoveUsers (boolean): Required. Specify whether the user can remove other users from the collection.

For more information about roles and permissions, visit the User Roles and Permissions page. When no role is selected, the default is the default role as specified by a Server administrator in the Admin interface.

Request Example: cURL

curl --location --request PUT 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c/users/61db388fc565144387d45086/permissions' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'isAdmin=true' \ --data-urlencode 'canAddAssets=true' \ --data-urlencode 'canRemoveAssets=true' \ --data-urlencode 'canUpdateAssets=true' \ --data-urlencode 'canAddUsers=true' \ --data-urlencode 'canRemoveUsers=true'

Update User Group Permissions of a Collection

To update user group permissions within an existing collection, use the PUT {baseURL}/v3/collections/{collectionId}/userGroups/{userGroupId}/permissions endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • userGroupId (string): Required. Enter a user group ID you want to change the permissions for.

  • updatePermissionsContract (body): Required. Enter the user group ID for which you want to change permissions. Specify the following:

    • expirationDate (date): Optional. Specify the expiration date for a user group.

    • collectionsPermissions (body): Required. Specify the following:

      • isAdmin (boolean): Required. Specify whether the user group members should be admin for this collection.

      • canAddAssets (boolean): Required. Specify whether the user group members can add assets to the collection.

      • canRemoveAssets (boolean): Required. Specify whether the user group members can remove assets from the collection.

      • canUpdateAssets (boolean): Required. Specify whether the user group members can update assets in the collection.

      • canAddUsers (boolean): Required. Specify whether the user group members can add other users to the collection.

      • canRemoveUsers (boolean): Required. Specify whether the user group members can remove users to the collection.

For more information about roles and permissions, visit the User Roles and Permissions page. When no role is selected, the default is the default role as specified by a Server administrator in the Admin interface.

Request Example: cURL

curl --location --request PUT 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c/userGroups/61db38834tssrdrs4cc65144387d4508/permissions' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Bearer BearerTokenGoesHere' \ --data-urlencode 'isAdmin=true' \ --data-urlencode 'canAddAssets=true' \ --data-urlencode 'canRemoveAssets=false' \ --data-urlencode 'canUpdateAssets=true' \ --data-urlencode 'canAddUsers=true' \ --data-urlencode 'canRemoveUsers=true'

Remove a User from a Collection

To remove a user from an existing collection, use the DELETE {baseURL}/v3/collections/{collectionId}/users/{userId} endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • userId (string): Required. Enter a user ID you want to remove from the collection.

Request Example: cURL

curl --location --request DELETE 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c/users/61db388fc565144387d45086' \ --header 'Authorization: Bearer BearerTokenGoesHere'

Remove a Workflow from a Collection

To remove a workflow from an existing collection, use the DELETE {baseURL}/v3/collections/{collectionId}/workflows/{appId} endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • appId (string): Required. Enter a workflow ID you want to remove from the collection.

Request Example: cURL

curl --location --request DELETE 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c/workflows/61db388fc565144387d45086' \ --header 'Authorization: Bearer BearerTokenGoesHere'

Remove a Schedule from a Collection

To remove a schedule from an existing collection, use the DELETE {baseURL}/v3/collections/{collectionId}/schedules/{scheduleId} endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • scheduleId (string): Required. Enter a schedule ID you want to remove from the collection.

Request Example: cURL

curl --location --request DELETE 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c/schedules/61db3777c565144387d450867' \ --header 'Authorization: Bearer BearerTokenGoesHere'

Remove a User Group from a Collection

To remove a user group from an existing collection, use the DELETE {baseURL}/v3/collections/{collectionId}/userGroups/{userGroupId} endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • userGroupId (string): Required. Enter a user group ID you want to remove from the collection.

Request Example: cURL

curl --location --request DELETE 'http://localhost/webapi/v3/collections/a374ce806fd4488a8a5f07da1005334c/userGroups/61dc063d9938fe43b5e8fc80' \ --header 'Authorization: Bearer BearerTokenGoesHere'

Delete a Collection

To delete a collection, use the DELETE {baseURL}/v3/collections/{collectionId} endpoint.

Note

Only Curators can use this API endpoint.

Parameters

  • collectionId (string): Required. Enter a collection ID to specify the collection you want to update.

  • forceDelete (boolean): Optional. Select whether you want to force the deletion of a collection in case this collection has links to other objects, such as users, groups, workflows, and schedules. If you want the collection deleted and all links cleaned up, set the forceDelete parameter to true. When not selected, the default value is false. This parameter is used in order to protect against an errant call.

Request Example: cURL

curl --location --request DELETE 'http://localhost/webapi/v3/collections/253fcf0b10204dc085f07bdf1b40e759?forceDelete=true' \ --header 'Authorization: Bearer BearerTokenGoesHere'

Objects Relations

If you are creating a collection, you can use created objects as follows:

Object created: "id" (for example, "id": "7917969784f84bd09442f66996ecb8f3")

You can use it as:

Postman Request Examples

POST /v3/collections

Use POST /v3/collections endpoint.

GET /v3/collections/

Use GET /v3/collections endpoint.

PUT /v3/collections/{collectionId}

Use PUT /v3/collections/{collectionId} endpoint.

To know more about Postman requests, visit the How to Use Postman help page.