Collection
Authorizations
Query parameters
pageintegerOptionalDefault:
The page to retrieve. Default: 1.
1
per_pageinteger · max: 50OptionalDefault:
The number of results per page. Default: 20, Max: 50.
20
Responses
200
The collections the authenticated user has permission to.
application/json
401
Authorization information is missing or invalid.
get
GET /api/public/v1/collections HTTP/1.1
Host: tw.instructuremedia.com
Authorization: YOUR_API_KEY
Accept: */*
{
"collections": [
{
"id": 1,
"name": "text",
"type": "text",
"permission": "text",
"owner": {
"id": 1,
"full_name": "text",
"display_name": "text",
"email": "text"
},
"created_at": "2025-06-27T08:26:11.189Z",
"course_id": 1
}
]
}
Authorizations
Query parameters
namestringRequired
The name of the collection.
user_idintegerOptional
ID of the user to create the collection on behalf of. If not provided, the collection will be created in the requestor's library
Responses
201
The collection object that was created.
application/json
401
Authorization information is missing or invalid.
403
If a user without permission tries to call this endpoint with user_id parameter, the call is rejected with 403 Forbidden.
404
The user was not found by id.
422
Invalid user_id is provided.
post
POST /api/public/v1/collections HTTP/1.1
Host: tw.instructuremedia.com
Authorization: YOUR_API_KEY
Accept: */*
{
"collection": {
"id": 1,
"name": "text",
"type": "text",
"permission": "text",
"owner": {
"id": 1,
"full_name": "text",
"display_name": "text",
"email": "text"
},
"created_at": "2025-06-27T08:26:11.189Z",
"course_id": 1
}
}
Authorizations
Path parameters
collection_idinteger · int64Required
The ID of the collection.
Responses
200
The collection object.
application/json
401
Authorization information is missing or invalid.
403
If a user without proper permissions tries to call this endpoint, the call is rejected with 403 Forbidden.
404
The collection was not found.
422
Invalid collection_id is provided.
get
GET /api/public/v1/collections/{collection_id} HTTP/1.1
Host: tw.instructuremedia.com
Authorization: YOUR_API_KEY
Accept: */*
{
"collection": {
"id": 1,
"name": "text",
"type": "text",
"permission": "text",
"owner": {
"id": 1,
"full_name": "text",
"display_name": "text",
"email": "text"
},
"created_at": "2025-06-27T08:26:11.189Z",
"course_id": 1
}
}
Authorizations
Path parameters
collection_idinteger · int64Required
The ID of the collection
Query parameters
pageintegerOptionalDefault:
The page to retrieve. Default: 1.
1
per_pageinteger · max: 50OptionalDefault:
The number of results per page. Default: 20, Max: 50.
20
Responses
200
The list of media in a specific collection.
application/json
401
Authorization information is missing or invalid.
403
If a user without proper permissions tries to call this endpoint, the call is rejected with 403 Forbidden.
404
The collection was not found by ID.
get
GET /api/public/v1/collections/{collection_id}/media HTTP/1.1
Host: tw.instructuremedia.com
Authorization: YOUR_API_KEY
Accept: */*
{
"media": [
{
"id": 1,
"title": "text",
"description": "text",
"duration": 1,
"created_at": "2025-06-27T08:26:11.189Z",
"thumbnail_url": "text",
"transcoding_status": "text",
"owner": {
"id": 1,
"full_name": "text",
"display_name": "text",
"email": "text"
},
"size": 1,
"source": "text",
"embed_id": "text",
"lti_launch_id": "text"
}
]
}
Authorizations
Path parameters
collection_idinteger · int64Required
The ID of the collection.
Responses
200
List of users and groups extended with permission type.
application/json
401
Authorization information is missing or invalid.
403
If a user without proper permissions tries to call this endpoint, the call is rejected with 403 Forbidden.
404
The collection was not found.
422
Invalid collection_id is provided.
get
GET /api/public/v1/collections/{collection_id}/permissions HTTP/1.1
Host: tw.instructuremedia.com
Authorization: YOUR_API_KEY
Accept: */*
{
"users": [
{
"id": 1,
"full_name": "text",
"display_name": "text",
"email": "text",
"permission": "text"
}
],
"groups": [
{
"id": 1,
"name": "text",
"permission": "text"
}
]
}
Authorizations
Path parameters
collection_idinteger · int64Required
The ID of the collection.
Body
An array with objects describing the permissions to add or update or destroy.
actionstring · enumRequiredPossible values:
The action to perform.
idintegerRequired
The id of the user or group.
share_typestring · enumRequiredPossible values:
The share type.
permission_typestring · enumOptionalDefault:
The permission type. The default is "view".
view
Possible values: Responses
200
Permissions were added, the updated list of permissions is returned.
application/json
400
One ore more permission was not found or can not be created, because already exists
401
Authorization information is missing or invalid.
403
If a user without proper permissions tries to call this endpoint, the call is rejected with 403 Forbidden.
404
The collection was not found.
422
Invalid collection_id is provided.
post
POST /api/public/v1/collections/{collection_id}/permissions HTTP/1.1
Host: tw.instructuremedia.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 73
[
{
"action": "create",
"id": 1,
"share_type": "user",
"permission_type": "view"
}
]
{
"users": [
{
"id": 1,
"full_name": "text",
"display_name": "text",
"email": "text",
"permission": "text"
}
],
"groups": [
{
"id": 1,
"name": "text",
"permission": "text"
}
]
}
Last updated
Was this helpful?