Assets

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.

Create an asset

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.

Request
Request Body schema: application/json
required

Provide the details of the asset to create in the body of the request.

object (asset)
file_name
required
string

The name of the mp4 file you are uploading.

Note: To avoid file management issues in storage, Wowza Video removes or replaces special characters in file names.
Responses
201

Success

Response Schema: application/json
required
object (asset_create_output)
id
string

The unique identifier of the asset. Use this ID to perform other operations on the stream, like getting the details of the asset or deleting it.

created_at
string <date-time>

The date and time that the asset was created in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMT HH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset.

file_name
string

The name of the mp4 file you are uploading.

Note: To avoid file management issues in storage, Wowza Video removes or replaces special characters in file names.
upload_url
string

The upload location for the asset. Use this URL to upload the .mp4 assets to the Wowza Video Asset Manager.

401

Unauthorized

422

Unprocessable Entity

post/assets
Request samples
application/json
{
  • "asset": {
    }
}
Response samples
application/json

Fetch all assets

This operation shows limited details for all of your assets. For detailed information, fetch a single asset.

Request
query Parameters
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.

Responses
200

Success

Response Schema: application/json
required
Array of objects (assets)
Array
id
string

The unique alphanumeric string that identifies the asset

name
string

A descriptive name for the asset. Maximum 200 characters.

created_at
string <date-time>

The date and time that the asset was created in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMT HH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset. .

updated_at
string <date-time>

The date and time that the asset was updated in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMT HH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset. .

playback_enabled
boolean

Specifies whether playback is enabled for an asset.

thumbnail_url
string

The URL to receive the preview thumbnail.

state
string

The state of the asset.

Enum: "uploading" "processing" "completed" "failed"
processing_percentage
integer

A percentage that describes how soon transcoding will complete.

file_size
integer <int64>

The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes.

playback_url
string

The address that can be used to configure playback of the stream.

download_url
string

The URL that can be used to download the asset as a .MP4 file.

file_name
string

The name of the mp4 file you uploaded.

Note: To avoid file management issues in storage, Wowza Video removes or replaces special characters in file names.
401

Unauthorized

get/assets
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/assets"
Response samples
application/json
{}

Fetch an asset

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.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the asset.

Responses
200

Success

Response Schema: application/json
required
object (asset)
Array of objects (renditions)

The renditions available for the asset.

id
string

The unique alphanumeric string that identifies the asset

name
string

A descriptive name for the live stream. Maximum 200 characters.

description
string

A description of the asset. Maximum 16,000 characters.

playback_enabled
boolean

Specifies whether playback is enabled for an asset.

tags
Array of arrays

A list of tags associated with the asset.

upload_url
string

The upload location for the asset. Use this URL to upload the .mp4 assets to the Wowza Video Asset Manager.

Only returned when the asset is in the uploading state, and returns a new upload URL. Useful if the previous upload URL expired and you need a new one.

vod_stream_id
string

An ID for the VOD. You can use this to fetch additional information about the VOD stream associated with the asset, such as the size of only the VOD stream.

recording_id
string

An ID for the recording. You can use this to fetch additional information about the recording associated with the asset.

state
string

The state of the asset.

Enum: "uploading" "processing" "completed" "failed"
created_at
string <date-time>

The date and time that the asset was created in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset.

updated_at
string <date-time>

The date and time that the asset was updated in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset. 

download_url
string

The URL that can be used to download the asset as a .MP4 file.

file_size
integer

The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes.

duration
integer

The length of an asset in seconds. For example, 9241 would represent 9,241 seconds or roughly 2.5 hours.

thumbnail_url
string

The URL to receive the preview thumbnail.

unique_viewers
integer

The number of unique viewers for the stream.

total_viewing_time
integer

The total time that the asset has been viewed by anyone, in seconds. In this example 4492549 would equal 1,248 total hours of view time.

average_view_time
integer <time>

The average time that the asset has been viewed in seconds. For example, 12580 seconds would be 3.5 hours.

playback_url
string

The HLS URL for the stream associated with the asset.

total_storage_size
integer

The total storage size for the asset in bytes. In this example, 19513598 equals 19.5 megabytes.

file_name
string

The name of the mp4 file you uploaded.

Note: To avoid file management issues in storage, Wowza Video removes or replaces special characters in file names.
processing_percentage
integer

A percentage that describes how soon transcoding will complete.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

get/assets/{id}
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/assets/2adffc17"
Response samples
application/json
{}

Update an asset

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.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the asset.

Request Body schema: application/json
required

Provide the details of the asset to update in the body of the request.

required
object (asset)
description
string

A description of the asset. Maximum 16,000 characters.

Example: "description": "My updated asset description"

name
string

A descriptive name for the live stream. Maximum 200 characters.

Example: "name": "My Updated Live Stream Asset"

playback_enabled
boolean

Specifies whether playback is enabled for an asset.

Example: "playback_enabled": true

tags
Array of arrays

A list of tags associated with the asset.

Example: "tags": ["Tag1", "Tag2", "Tag3"]

Responses
200

Success

Response Schema: application/json
required
object (asset_update_output)
Array of objects (renditions)

The renditions available for the asset.

id
string

The unique alphanumeric string that identifies the asset

name
string

A descriptive name for the live stream. Maximum 200 characters.

description
string

A description of the asset. Maximum 16,000 characters.

playback_enabled
boolean

Specifies whether playback is enabled for an asset.

tags
Array of arrays

A list of tags associated with the asset.

vod_stream_id
string

An ID for the VOD. You can use this to fetch additional information about the VOD stream associated with the asset, such as the size of only the VOD stream.

recording_id
string

An ID for the recording. You can use this to fetch additional information about the recording associated with the asset.

state
string

The state of the asset.

Enum: "uploading" "processing" "completed" "failed"
created_at
string <date-time>

The date and time that the asset was created in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset.

updated_at
string <date-time>

The date and time that the asset was updated in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset. 

download_url
string

The URL that can be used to download the asset as a .MP4 file.

file_size
integer

The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes.

duration
integer

The length of an asset in seconds. For example, 9241 would represent 9,241 seconds or roughly 2.5 hours.

thumbnail_url
string

The URL to receive the preview thumbnail.

unique_viewers
integer

The number of unique viewers for the stream.

total_viewing_time
integer

The total time that the asset has been viewed by anyone, in seconds. In this example 4492549 would equal 1,248 total hours of view time.

average_view_time
integer <time>

The average time that the asset has been viewed in seconds. For example, 12580 seconds would be 3.5 hours.

playback_url
string

The HLS URL for the stream associated with the asset.

total_storage_size
integer

The total storage size for the asset in bytes. In this example, 19513598 equals 19.5 megabytes.

file_name
string

The name of the mp4 file you uploaded.

Note: To avoid file management issues in storage, Wowza Video removes or replaces special characters in file names.
processing_percentage
integer

A percentage that describes how soon transcoding will complete.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Asset Not Available

patch/assets/{id}
Request samples
application/json
{
  • "asset": {
    }
}
Response samples
application/json
{}

Delete an asset

This operation deletes an asset, including all assigned outputs and targets.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the asset.

Responses
204

No Content

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Asset Not Available

delete/assets/{id}
Request samples
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "DELETE" \
  "${WV_HOST}/api/v1.10/assets/2adffc17"
Response samples
application/json
{
  • "Example Response 1": {
    },
  • "Example Response 2": {
    },
  • "Example Response 3": {
    },
  • "Example Response 4": {
    },
  • "Example Response 5": {
    },
  • "Example Response 6": {
    },
  • "Example Response 7": {
    },
  • "Example Response 8": {
    },
  • "Example Response 9": {
    }
}

Restream an asset

This operation returns a live stream ID you can use to re-stream an uploaded asset.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the asset.

Responses
200

Success

Response Schema: application/json
required
object (assets_restream)
id
string

The unique alphanumeric string that identifies the live stream associated with the asset.

name
string

A name for the live stream assosicated with the asset. This is generated by Wowza Video.

401

Unauthorized

422

Asset Not Available

post/assets/{id}/live_streams
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \

  -H "Content-Type: application/json" \
  -X "POST" \
  "${WV_HOST}/api/v1.10/assets/2adffc17/live_streams"
Response samples
application/json
{
  • "live_stream": {
    }
}

Fetch all asset tags

This operation retrieves a list of all of the tags that have been used previously by an organization.

Request
query Parameters
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.

Responses
200

Success

Response Schema: application/json
asset_tags
Array of arrays

An array of asset tags the organization has created.

401

Unauthorized

get/asset_tags
Request samples
// Using cURL
curl -H "Authorization: Bearer ${WV_JWT}" \
  
  -H "Content-Type: application/json" \
  -X "GET" \
  "${WV_HOST}/api/v1.10/asset_tags"
Response samples
application/json
{
  • "asset_tags": [
    ]
}

Report asset as uploaded

This operation reports that an asset was successfully uploaded to storage.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the asset.

Request Body schema: application/json
required

Provide the details of the asset to update in the body of the request.

required
object (asset)
duration
required
integer

The length of an asset in seconds. In this example, 9241 would represent 9,241 seconds or roughly 2.5 hours.

Responses
200

Success

Response Schema: application/json
required
object (asset_report_uploaded_output)
id
string

The unique alphanumeric string that identifies the asset

name
string

A descriptive name for the live stream. Maximum 200 characters.

tags
Array of arrays

A list of tags associated with the asset.

vod_stream_id
string

An ID for the VOD. You can use this to fetch additional information about the VOD stream associated with the asset, such as the size of only the VOD stream.

recording_id
string

An ID for the recording. You can use this to fetch additional information about the recording associated with the asset.

state
string

The state of the asset.

Enum: "uploading" "processing" "completed" "failed"
created_at
string <date-time>

The date and time that the asset was created in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset.

updated_at
string <date-time>

The date and time that the asset was updated in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset. 

download_url
string

The URL that can be used to download the asset as a .MP4 file.

file_size
integer

The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes.

duration
integer

The length of an asset in seconds. For example, 9241 would represent 9,241 seconds or roughly 2.5 hours.

average_view_time
integer <time>

The average time that the asset has been viewed in seconds. For example, 12580 seconds would be 3.5 hours.

file_name
string

The name of the mp4 file you uploaded.

Note: To avoid file management issues in storage, Wowza Video removes or replaces special characters in file names.
processing_percentage
integer

A percentage that describes how soon transcoding will complete.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

patch/assets/{id}/upload_completed
Request samples
application/json
{
  • "asset": {
    }
}
Response samples
application/json
{}

Report asset upload as failed

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.

Request
path Parameters
id
required
string

The unique alphanumeric string that identifies the asset.

Request Body schema: application/json
required

Provide the details of the asset to update in the body of the request.

required
object (asset)
reason
required
string

A description of why the upload failed.

status
required
string

The status code returned by the server.

Responses
200

Success

Response Schema: application/json
required
object (asset_report_upload_failed_output)
id
string

The unique alphanumeric string that identifies the asset

name
string

A descriptive name for the live stream. Maximum 200 characters.

tags
Array of arrays

A list of tags associated with the asset.

recording_id
string

An ID for the recording. You can use this to fetch additional information about the recording associated with the asset.

state
string

The state of the asset.

Enum: "uploading" "processing" "completed" "failed"
created_at
string <date-time>

The date and time that the asset was created in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset.

updated_at
string <date-time>

The date and time that the asset was updated in Coordinated Universal Time (UTC) format. Dates are formatted as follows: YYYY-DD-MMTHH:MM:SSZ using 24-hour clock ("military") time and including the T and Z. The T marks the end of the date portion and the Z represents zero UTC time offset. 

average_view_time
integer <time>

The average time that the asset has been viewed in seconds. For example, 12580 seconds would be 3.5 hours.

file_name
string

The name of the mp4 file you uploaded.

Note: To avoid file management issues in storage, Wowza Video removes or replaces special characters in file names.
processing_percentage
integer

A percentage that describes how soon transcoding will complete.

401

Unauthorized

403

Forbidden

404

Not Found

410

Gone

422

Unprocessable Entity

patch/assets/{id}/upload_failed
Request samples
application/json
{
  • "asset": {
    }
}
Response samples
application/json
{
  • "asset": {
    }
}