Playlists
Attributes | |||
---|---|---|---|
id | Integer | Unique numeric identifier | |
name | String | Human readable name identifying this playlist | |
duration | Integer | Total duration of all clips in milliseconds (only if include_clips=true&download_preferences[videoheight]=540&download_preferences[fallback]=higher) | |
total_file_size | Integer | Total file size of all streaming clips matching the download preferences in bytes (only if include_clips=true&download_preferences[videoheight]=540&download_preferences[fallback]=higher) | |
clip_ids | Array of integers | Ids of all clips matching filters (only included if include_clips=true) | |
folder_id | Integer | Id of the playlist's parent folder | |
total_clips_count | Integer | Count of all clips in playlist (only included if include_clips=true) | |
filter_clips_count | Integer | Count of all clips matching the filters (only included if include_clips=true and with filters set) | |
clips | Array of clips | All clips matching filters (only included if include_clips=true) | |
clips_match_download_preference | Boolean | Indicated whether all clips have mediafiles matching download preference (only if include_clips=true&download_preferences[videoheight]=540&download_preferences[fallback]=higher) |
Actions | |||
---|---|---|---|
List all playlists in folder | GET | /projects/{project_id}/folders/{folder_id}/playlists | optional: sort by position: ?sort_by=position&direction=desc |
List all playlists in folder | POST | /projects/{project_id}/folders/{folder_id}/playlists/filter |
optional: sort by position: ?sort_by=position&direction=desc
optional: include subfolders: ?include_subfolders=true
Optional pagination: e.g. "?page=1&per_page=20" (both params have to be set) Navigation links are contained in response header 'Links'; there are also headers for 'Total' and 'Per-Page' It is also possible to filter by part of the clip name with parameter "q": /projects/{project_id}/playlists/filter?filters%5Bscene%5D%5B%5D=1&q=clipname It is possible to filter by playlist id: /projects/{project_id}/playlists/filter?filters%5Bplaylist%5D%5B%5D=782118 See here for getting possible filters: 10.10 Metadata Download preferences To get duration and file size of the whole playlist you have to specify download_preferences: This only works together with include_clips=true Example: download_preferences[videoheight]=540&download_preferences[fallback]=higher Allowed values for videoheight: 270,540,720,1080,2160 Allowed values for fallback: lower,higher |
List all playlists in project | GET | /projects/{project_id}/playlists |
to include clips in result: ?include_clips=true
to limit amount of clips in result: &clip_limit=5 When you include clips a total_clips_count and a filtered_clips_count will be populated Optional: sort by created_at: ?sort_by=created_at&direction=desc |
List all playlists in project | POST | /projects/{project_id}/playlists/filter |
to include clips in result: ?include_clips=true
to limit amount of clips in result: &clip_limit=5 When you include clips a total_clips_count and a filtered_clips_count will be populated Optional: sort by created_at: ?sort_by=created_at&direction=desc It is also possible to filter by part of the clip name with parameter "q": /projects/{project_id}/playlists/filter?filters%5Bscene%5D%5B%5D=1&q=clipname It is possible to filter by playlist id: /projects/{project_id}/playlists/filter?filters%5Bplaylist%5D%5B%5D=782118 See here for getting possible filters: 10.10 Metadata Download preferences To get duration and file size of the whole playlist you have to specify download_preferences: Example: download_preferences[videoheight]=540&download_preferences[fallback]=higher Allowed values for videoheight: 270,540,720,1080,2160 Allowed values for fallback: lower,higher Optional pagination: e.g. "?page=1&per_page=20" (both params have to be set) Navigation links are contained in response header 'Links'; there are also headers for 'Total' and 'Per-Page' |
Show | GET | /projects/{project_id}/folders/{folder_id}/playlists/{id} | Header MUST contain: "Accept: application/json" |
Create | POST | /projects/{project_id}/folders/{folder_id}/playlists | necessary data: {"name":"playlist name"} |
Update | PUT | /projects/{project_id}/folders/{folder_id}/playlists/{id} | necessary data: {"name":"updated playlist name"} |
Destroy | DELETE | /projects/{project_id}/folders/{folder_id}/playlists/{id} | - |
Example:
Creating a playlist with setting an "Accept"-header:
POST /api/projects/6/folders/157/playlists HTTP/1.1 Authorization: Bearer example-token Accept: application/json Content-Type: application/json data: {"name":"example-playlist"}
response:
HTTP/1.1 201 Created { "status": 201, "status_message": "Created", "info": "", "data": {"playlist":{"id":61441,"name":"example-playlist","folder_id":157}} }