Operations related to assets, which are created through the /assets
resources. The Wowza Video service can store and transcode mp4 files that you can tag, manage, and restream.
This operation creates an asset. You can only upload MP4 format and H.264 and AAC encoded files. Any files with unsupported codecs are rejected.
Provide the details of the asset to create in the body of the request.
Success
Unauthorized
Unprocessable Entity
{- "asset": {
- "file_name": "MyAsset.mp4"
}
}
{- "asset": {
- "id": "2adffc17",
- "created_at": "2021-06-30T18:02:20.000Z",
- "file_name": "MyAsset.mp4",
}
}
This operation shows limited details for all of your assets. For detailed information, fetch a single asset.
filter | string Restricts the data that gets returned by filtering on one or more values associated with a field. For more information and examples, see the technical article How to get filtered query results with the Wowza Video REST API. Example: filter[0][field]=created_at&filter[0][gte]=2021-07-14T17:47:45.000Z |
query | string Restricts the data that gets returned by querying on one or more values associated with a set of fields. For more information and examples, see the technical article How to get filtered query results with the Wowza Video REST API. Example: sort_direction=desc&sort_column=created_at&per_page=30&state=completed&query=sample |
page | integer Returns a paginated view of results from the HTTP request. Specify a positive integer to indicate which page of the results should be displayed. The default is 1. For more information and examples, see Get paginated query results with the Wowza Video REST API. |
per_page | integer For use with the page parameter. Indicates how many records should be included in a page of results. A valid value is any positive integer. The default and maximum value is 1000. |
Success
required | Array of objects (assets) | ||||||||||||||||||||||||
Array
|
Unauthorized
// Using cURL curl -H "Authorization: Bearer ${WV_JWT}" \ -H "Content-Type: application/json" \ -X "GET" \ "${WV_HOST}/api/v1.10/assets"
{- "assets": [
- {
- "id": "wdjfqvsv",
- "name": "MyAsset",
- "created_at": "2020-01-29T17:16:21.849Z",
- "updated_at": "2020-01-31T16:06:47.849Z",
- "playback_enabled": true,
- "state": "completed",
- "processing_percentage": 0.1,
- "file_size": 1570024,
- "file_name": "MyFile.mp4"
}, - {
- "id": "KyxWKtHQ",
- "name": "MyAsset2",
- "created_at": "2020-01-29T17:16:21.849Z",
- "updated_at": "2020-01-31T02:26:05.849Z",
- "playback_enabled": true,
- "state": "completed",
- "processing_percentage": 0.3,
- "file_size": 70284,
- "file_name": "MyFile2.mp4"
}, - {
- "id": "Ly40ZDSg",
- "name": "MyAsset3",
- "created_at": "2020-01-29T17:16:21.849Z",
- "updated_at": "2020-01-30T18:13:18.849Z",
- "playback_enabled": true,
- "state": "completed",
- "processing_percentage": 0,
- "file_size": 882391,
- "file_name": "MyFile3.mp4"
}
]
}
This operation shows the details of a specific asset.
The fields returned vary depending on when you send this request. For example, if a resource hasn't been created yet during the processing state, you won't see available_renditions in the response.
Tip: If your original upload URL expired and you need a new one for an asset, send this request and the response will contain a new upload URL.
Success
required | object (asset) | ||||||||||||||||||||||||||||||||||||||||||||||
|
Unauthorized
Forbidden
Not Found
Gone
// Using cURL curl -H "Authorization: Bearer ${WV_JWT}" \ -H "Content-Type: application/json" \ -X "GET" \ "${WV_HOST}/api/v1.10/assets/2adffc17"
{- "asset": {
- "available_renditions": [
- {
- "height": 480,
- "width": 848,
- "bitrate_kbps": 1600
}
], - "id": "i4qsbwvi",
- "name": "My Asset",
- "description": "My Asset Description",
- "playback_enabled": true,
- "tags": [
- "Tag1",
- "Tag2",
- "Tag3"
], - "vod_stream_id": "l9qsbwvf",
- "recording_id": "l8qsbwvu",
- "state": "completed",
- "created_at": "2021-06-30T18:02:20.000Z",
- "updated_at": "2021-06-30T18:02:20.000Z",
- "file_size": 2372820,
- "duration": 9241,
- "unique_viewers": 5986,
- "total_viewing_time": 4492549,
- "average_view_time": 12580,
- "total_storage_size": 19513598,
- "file_name": "MyAsset.mp4",
- "processing_percentage": 100
}
}
This operation updates an asset. Assets must be uploaded and complete processing before they can be updated.
The fields returned vary depending on when you send this request. For example, if a stream doesn't have unique viewer data, you won't see unique_viewers in the response.
Provide the details of the asset to update in the body of the request.
required | object (asset) | ||||||||
|
Success
required | object (asset_update_output) | ||||||||||||||||||||||||||||||||||||||||||||
|
Unauthorized
Forbidden
Not Found
Gone
Asset Not Available
{- "asset": {
- "description": "My Asset Description",
- "name": "My Live Stream",
- "playback_enabled": true,
- "tags": [
- "Tag1",
- "Tag2",
- "Tag3"
]
}
}
{- "asset": {
- "available_renditions": [
- {
- "height": 480,
- "width": 848,
- "bitrate_kbps": 1600
}
], - "id": "i4qsbwvi",
- "name": "My Asset",
- "description": "My Asset Description",
- "playback_enabled": true,
- "tags": [
- "Tag1",
- "Tag2",
- "Tag3"
], - "vod_stream_id": "l9qsbwvf",
- "recording_id": "l8qsbwvu",
- "state": "completed",
- "created_at": "2021-06-30T18:02:20.000Z",
- "updated_at": "2021-06-30T18:02:20.000Z",
- "file_size": 2372820,
- "duration": 9241,
- "unique_viewers": 5986,
- "total_viewing_time": 4492549,
- "average_view_time": 12580,
- "total_storage_size": 19513598,
- "file_name": "MyAsset.mp4",
- "processing_percentage": 100
}
}
This operation deletes an asset, including all assigned outputs and targets.
No Content
Unauthorized
Forbidden
Not Found
Gone
Asset Not Available
curl -H "Authorization: Bearer ${WV_JWT}" \ -H "Content-Type: application/json" \ -X "DELETE" \ "${WV_HOST}/api/v1.10/assets/2adffc17"
{- "Example Response 1": {
- "meta": {
- "status": 401,
- "code": "ERR-401-NoApiKey",
- "title": "No API Key Error",
- "message": "No API key sent in header.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 2": {
- "meta": {
- "status": 401,
- "code": "ERR-401-NoAccessKey",
- "title": "No Access Key Error",
- "message": "No access key sent in header.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 3": {
- "meta": {
- "status": 401,
- "code": "ERR-401-InvalidApiKey",
- "title": "Invalid Api Key Error",
- "message": "Invalid API key.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 4": {
- "meta": {
- "status": 401,
- "code": "ERR-401-InvalidAccessKey",
- "title": "Invalid Access Key Error",
- "message": "Invalid access key.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 5": {
- "meta": {
- "status": 401,
- "code": "ERR-401-BadAccountStatus",
- "title": "Bad Account Status Error",
- "message": "Your account's status doesn't allow this action.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 6": {
- "meta": {
- "status": 401,
- "code": "ERR-401-FeatureNotEnabled",
- "title": "Feature Not Enabled Error",
- "message": "This feature isn't enabled.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 7": {
- "meta": {
- "status": 401,
- "code": "ERR-401-TrialExceeded",
- "title": "Bad Billing Status Error",
- "message": "Your billing status needs attention. You can't start or add live streams until your billing status is updated.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 8": {
- "meta": {
- "status": 401,
- "code": "ERR-401-ExpiredToken",
- "title": "JWT is expired",
- "message": "Token has exired.",
- "description": "",
- "links": [ ]
}
}, - "Example Response 9": {
- "meta": {
- "status": 401,
- "code": "ERR-401-InvalidToken",
- "title": "JWT is invalid",
- "message": "Token is invalid.",
- "description": "",
- "links": [ ]
}
}
}
This operation returns a live stream ID you can use to re-stream an uploaded asset.
Success
Unauthorized
Asset Not Available
// Using cURL curl -H "Authorization: Bearer ${WV_JWT}" \ -H "Content-Type: application/json" \ -X "POST" \ "${WV_HOST}/api/v1.10/assets/2adffc17/live_streams"
{- "live_stream": {
- "id": "Yx6rTGKL",
- "name": "CMS Restreamed (ucknggax)"
}
}
This operation reports that an asset was successfully uploaded to storage.
Provide the details of the asset to update in the body of the request.
Success
required | object (asset_report_uploaded_output) | ||||||||||||||||||||||||||||
|
Unauthorized
Forbidden
Not Found
Gone
Unprocessable Entity
{- "asset": {
- "duration": 9241
}
}
{- "asset": {
- "id": "i4qsbwvi",
- "name": "My Asset",
- "tags": [
- "Tag1",
- "Tag2",
- "Tag3"
], - "vod_stream_id": "l9qsbwvf",
- "recording_id": "l8qsbwvu",
- "state": "processing",
- "created_at": "2021-06-30T18:02:20.000Z",
- "updated_at": "2021-06-30T18:02:20.000Z",
- "file_size": 2372820,
- "duration": 9241,
- "average_view_time": 12580,
- "file_name": "MyAsset.mp4",
- "processing_percentage": 100
}
}
This operation reports that an asset uploaded to storage failed. You can only upload MP4 format and H.264 and AAC encoded files. Any files with unsupported codecs are rejected.
Provide the details of the asset to update in the body of the request.
Success
required | object (asset_report_upload_failed_output) | ||||||||||||||||||||
|
Unauthorized
Forbidden
Not Found
Gone
Unprocessable Entity
{- "asset": {
- "reason": "Token expired",
- "status": 404
}
}
{- "asset": {
- "id": "i4qsbwvi",
- "name": "My Asset",
- "tags": [
- "Tag1",
- "Tag2",
- "Tag3"
], - "recording_id": "l8qsbwvu",
- "state": "failed",
- "created_at": "2021-06-30T18:02:20.000Z",
- "updated_at": "2021-06-30T18:02:20.000Z",
- "average_view_time": 12580,
- "file_name": "MyAsset.mp4",
- "processing_percentage": 100
}
}