openapi: 3.0.3 info: title: Wowza Streaming Engine REST advanced_token_authentication assets API description: Complete REST API for Wowza Streaming Engine. Auto-converted from Swagger 1.2 (http://localhost:8089/swagger.json) to OpenAPI 3.0.3 for public documentation. version: 2.0.0 contact: name: Wowza Media Systems url: https://www.wowza.com/docs/wowza-streaming-engine-rest-api license: name: Wowza Media Systems url: https://www.wowza.com servers: - url: http://localhost:8087 description: Wowza Streaming Engine Server security: - basicAuth: [] tags: - name: assets description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.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.' x-displayName: Assets paths: /assets: post: summary: Create an asset description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.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.' operationId: createAsset tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n \n -H \"Content-Type: application/json\" \\\n -X \"POST\" \\\n \"${WV_HOST}/api/v2.0/assets\" \\\n -d $'{\n \"asset\": {\n \"name\": \"My New Asset\"\n }\n}'" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname,\n path: path,\n method: 'POST',\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nconst req = https.request(options, function(res) {\n var body = '';\n res.on('data', function(data) {\n body += data;\n });\n res.on('end', function() {\n console.log(JSON.parse(body));\n });\n}).on('error', function(e) {\n console.log(e.message);\n});\nreq.write(JSON.stringify({\n \"asset\": {\n \"name\": \"My New Asset\"\n }\n}));\nreq.end();\n" requestBody: content: application/json: schema: $ref: '#/components/schemas/asset_create_input' description: Provide the details of the asset to create in the body of the request. required: true responses: '201': description: Success content: application/json: schema: type: object required: - asset properties: asset: $ref: '#/components/schemas/asset_create_output' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/Error422' get: summary: Fetch all assets description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.This operation shows limited details for all of your assets. For detailed information, fetch a single asset.' operationId: listAssets tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n \n -H \"Content-Type: application/json\" \\\n -X \"GET\" \\\n \"${WV_HOST}/api/v2.0/assets\"" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname,\n path: path,\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nhttps.get(options, function(res) {\n var body = '';\n res.on('data', function(data){\n body += data;\n });\n res.on('end', function() {\n console.log(JSON.parse(body));\n });\n}).on('error', function(e) {\n console.log(e.message);\n});\n" parameters: - name: filter in: query required: false description: '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](https://www.wowza.com/docs/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**' schema: type: string - name: query in: query required: false description: '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](https://www.wowza.com/docs/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**' schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/per_page' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/assets' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' /assets/{id}: get: summary: Fetch an asset description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.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.' operationId: showAsset tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n \n -H \"Content-Type: application/json\" \\\n -X \"GET\" \\\n \"${WV_HOST}/api/v2.0/assets/2adffc17\"" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets/2adffc17';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname,\n path: path,\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nhttps.get(options, function(res) {\n var body = '';\n res.on('data', function(data){\n body += data;\n });\n res.on('end', function() {\n console.log(JSON.parse(body));\n });\n}).on('error', function(e) {\n console.log(e.message);\n});\n" parameters: - name: id in: path required: true description: The unique alphanumeric string that identifies the asset. schema: type: string responses: '200': description: Success content: application/json: schema: type: object required: - asset properties: asset: $ref: '#/components/schemas/asset' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error404' '410': description: Gone content: application/json: schema: $ref: '#/components/schemas/Error410' patch: summary: Update an asset description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.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.' operationId: updateAsset tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n \n -H \"Content-Type: application/json\" \\\n -X \"PATCH\" \\\n \"${WV_HOST}/api/v2.0/assets/2adffc17\" \\\n -d $'{\n \"asset\": {\n \"property\": \"My Value\",\n \"...\": \"...\"\n }\n}'\n" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets/2adffc17';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname',\n path: path,\n method: 'PATCH',\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nconst req = https.request(options, function(res) {\n var body = '';\n res.on('data', function(data) {\n body += data;\n });\n res.on('end', function() {\n console.log(JSON.parse(body));\n });\n}).on('error', function(e) {\n console.log(e.message);\n});\nreq.write(JSON.stringify({\n \"asset\": {\n \"property\": \"My Value\",\n \"...\": \"...\"\n }\n}));\nreq.end();\n" parameters: - name: id in: path required: true description: The unique alphanumeric string that identifies the asset. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/asset_update_input' description: Provide the details of the asset to update in the body of the request. required: true responses: '200': description: Success content: application/json: schema: type: object required: - asset properties: asset: $ref: '#/components/schemas/asset_update_output' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error404' '410': description: Gone content: application/json: schema: $ref: '#/components/schemas/Error410' '422': description: Asset Not Available content: application/json: schema: $ref: '#/components/schemas/Error422_asset_not_available' delete: summary: Delete an asset description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.This operation deletes an asset, including all assigned outputs and targets.' operationId: deleteAsset tags: - assets x-codeSamples: - lang: Shell source: "curl -H \"Authorization: Bearer ${WV_JWT}\" \\\n \n -H \"Content-Type: application/json\" \\\n -X \"DELETE\" \\\n \"${WV_HOST}/api/v2.0/assets/2adffc17\"" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets/2adffc17';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname,\n path: path,\n method: 'DELETE',\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nhttps.get(options, function(res) {\n // no data being returned, just: 204 NO CONTENT\n console.log(res.statusCode);\n}).on('error', function(e) {\n console.log(e.message);\n});" parameters: - name: id in: path required: true description: The unique alphanumeric string that identifies the asset. schema: type: string responses: '204': description: No Content '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error404' '410': description: Gone content: application/json: schema: $ref: '#/components/schemas/Error410' '422': description: Asset Not Available content: application/json: schema: $ref: '#/components/schemas/Error422_asset_not_available' /assets/{id}/live_streams: post: summary: Restream an asset description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.This operation returns a live stream ID you can use to re-stream an uploaded asset.' operationId: restreamAsset tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n\n -H \"Content-Type: application/json\" \\\n -X \"POST\" \\\n \"${WV_HOST}/api/v2.0/assets/2adffc17/live_streams\"" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets/2adffc17/live_streams';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname,\n path: path,\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nhttps.get(options, function(res) {\n var body = '';\n res.on('data', function(data){\n body += data;\n });\n res.on('end', function() {\n console.log(JSON.parse(body));\n });\n}).on('error', function(e) {\n console.log(e.message);\n});" parameters: - name: id in: path required: true description: The unique alphanumeric string that identifies the asset. schema: type: string responses: '200': description: Success content: application/json: schema: type: object required: - live_stream properties: live_stream: $ref: '#/components/schemas/asset_restream' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' '422': description: Asset Not Available content: application/json: schema: $ref: '#/components/schemas/Error422_asset_not_available' /asset_tags: get: summary: Fetch all asset tags description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.This operation retrieves a list of all of the tags that have been used previously by an organization.' operationId: asset_tags tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n \n -H \"Content-Type: application/json\" \\\n -X \"GET\" \\\n \"${WV_HOST}/api/v2.0/asset_tags\"" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/asset_tags';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname,\n path: path,\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nhttps.get(options, function(res) {\n var body = '';\n res.on('data', function(data){\n body += data;\n });\n res.on('end', function() {\n console.log(JSON.parse(body));\n });\n}).on('error', function(e) {\n console.log(e.message);\n});" parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/per_page' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/asset_tags' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' /assets/{id}/upload_completed: patch: summary: Report asset as uploaded description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.This operation reports that an asset was successfully uploaded to storage.' operationId: reportUploadedAsset tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n\n -H \"Content-Type: application/json\" \\\n -X \"PATCH\" \\\n \"${WV_HOST}/api/v2.0/assets/2adffc17/upload_completed\" \\\n -d $'{\n \"asset\": {\n \"file_size\": \"1570024\",\n \"duration\": \"9241\"\n }\n}'\n" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets/2adffc17/upload_completed';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname',\n path: path,\n method: 'PATCH',\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nconst req = https.request(options, function(res) {\n var body = '';\n res.on('data', function(data) {\n body += data;\n });\n res.on('end', function() {\n console.log(JSON.parse(body));\n });\n}).on('error', function(e) {\n console.log(e.message);\n});\nreq.write(JSON.stringify({\n \"asset\": {\n \"file_size\": 1570024,\n \"duration\": 9241\n }\n}));\nreq.end();\n" parameters: - name: id in: path required: true description: The unique alphanumeric string that identifies the asset. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/asset_report_uploaded_input' description: Provide the details of the asset to update in the body of the request. required: true responses: '200': description: Success content: application/json: schema: type: object required: - asset properties: asset: $ref: '#/components/schemas/asset_report_uploaded_output' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error404' '410': description: Gone content: application/json: schema: $ref: '#/components/schemas/Error410' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/Error422' /assets/{id}/upload_failed: patch: summary: Report asset upload as failed description: '
The assets operations are deprecated in 2.0. Use the /videos endpoints instead.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.' operationId: reportUploadFailedAsset tags: - assets x-codeSamples: - lang: Shell source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n \n -H \"Content-Type: application/json\" \\\n -X \"PATCH\" \\\n \"${WV_HOST}/api/v2.0/assets/2adffc17/upload_failed\"" - lang: JavaScript source: "// Using Node.js\nconst https = require('https');\nconst crypto = require('crypto');\nvar hostname = 'api.video.wowza.com'\nvar path = '/api/v2.0/assets/2adffc17/upload_failed';\n//For security, never reveal API token in client-side code\nvar wvJWT = 'Bearer [your JWT]';\n\nconst options = {\n hostname: hostname,\n path: path,\n method: 'PATCH',\n headers: {\n 'Authorization': wvJWT,\n 'Content-Type': 'application/json'\n }\n};\nhttps.get(options, function(res) {\n // no data being returned, just: 204 NO CONTENT\n console.log(res.statusCode);\n}).on('error', function(e) {\n console.log(e.message);\n});" parameters: - name: id in: path required: true description: The unique alphanumeric string that identifies the asset. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/asset_report_upload_failed_input' description: Provide the details of the asset to update in the body of the request. required: true responses: '200': description: Success content: application/json: schema: type: object required: - asset properties: asset: $ref: '#/components/schemas/asset_report_upload_failed_output' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/Error404' '410': description: Gone content: application/json: schema: $ref: '#/components/schemas/Error410' '422': description: Unprocessable Entity content: application/json: schema: $ref: '#/components/schemas/Error422' components: schemas: asset_report_upload_failed_output: type: object description: '' properties: id: type: string description: The unique alphanumeric string that identifies the asset example: i4qsbwvi name: type: string description: A descriptive name for the live stream. Maximum 200 characters. example: My Asset tags: type: array description: A list of tags associated with the asset. example: - Tag1 - Tag2 - Tag3 recording_id: type: string description: An ID for the recording. You can use this to fetch additional information about the recording associated with the asset. example: l8qsbwvu state: type: string description: The state of the asset. example: failed enum: - uploading - processing - completed - failed created_at: type: string description: 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. example: '2021-06-30T18:02:20.000Z' format: date-time updated_at: type: string description: 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. example: '2021-06-30T18:02:20.000Z' format: date-time average_view_time: type: integer description: The average time that the asset has been viewed in seconds. For example, 12580 seconds would be 3.5 hours. example: 12580 format: time file_name: type: string description: '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.' example: MyAsset.mp4 processing_percentage: type: integer description: A percentage that describes how soon transcoding will complete. example: 100 asset_restream: type: object description: '' title: assets_restream properties: id: type: string description: The unique alphanumeric string that identifies the live stream associated with the asset. example: Yx6rTGKL name: type: string description: A name for the live stream assosicated with the asset. This is generated by Wowza Video. example: CMS Restreamed (ucknggax) index_asset: type: object title: assets description: '' properties: id: type: string description: The unique alphanumeric string that identifies the asset example: i4qsbwvi name: type: string description: A descriptive name for the asset. Maximum 200 characters. example: MyAsset created_at: type: string description: 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. . example: '' format: date-time updated_at: type: string description: 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. . example: '2022-02-26T01:38:40.310Z' format: date-time published: type: boolean description: Specifies whether an asset is published, which enables playback. thumbnail_url: type: string description: The URL to receive the preview thumbnail. example: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/0pfxrlw2_thumbnail.jpg state: type: string description: The state of the asset. example: completed enum: - uploading - processing - completed - failed reason: type: string description: The reason that an asset has the state **failed**. Only returned when state is **failed** after processing is attempted. example: '' processing_percentage: type: integer description: A percentage that describes how soon transcoding will complete. example: '100.0' file_size: type: integer description: The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes. example: '' format: int64 playback_url: type: string description: The address that can be used to configure playback of the stream. example: '' download_url: type: string description: The URL that can be used to download the asset as a .MP4 file. example: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/MyAsset.mp4 file_name: type: string description: '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.' example: MyAsset.mp4 asset_tags: type: object description: '' properties: asset_tags: type: array description: An array of asset tags the organization has created. example: asset_tags: - tag1 - tag2 - tag3 asset_report_upload_failed_input: type: object description: '' required: - asset properties: asset: type: object title: asset description: '' required: - reason - status properties: reason: type: string description: A description of why the upload failed. example: Token expired status: type: string description: The status code returned by the server. example: 404 asset_create_output: type: object description: '' properties: id: type: string description: 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. example: wdjfqvsv created_at: type: string description: 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. example: '2021-06-30T18:02:20.000Z' format: date-time file_name: type: string description: '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.' example: MyAsset.mp4 upload_url: type: string description: The upload location for the asset. Use this URL to upload the .mp4 assets to the Wowza Video Asset Manager. example: https://objectstorage.us-ashburn-1.oraclecloud.com/p/k9bGRcyPFPtdeQeTRgAVTByIVVS0Z_EKrLBu3TusTrRfBuIpoDyio_ZY3qJM55tp/n/a1b2c3d4e5f6/b/recordings-qa-S7I69eYn/o/uploads/recording_bry7vv0s/MyAsset.mp4 example: id: 2adffc17 created_at: '2021-06-30T18:02:20.000Z' file_name: MyAsset.mp4 upload_url: https://objectstorage.us-ashburn-1.oraclecloud.com/p/k9bGRcyPFPtdeQeTRgAVTByIVVS0Z_EKrLBu3TusTrRfBuIpoDyio_ZY3qJM55tp/n/a1b2c3d4e5f6/b/recordings-qa-S7I69eYn/o/uploads/recording_bry7vv0s/MyAsset.mp4 asset_report_uploaded_input: description: '' required: - asset properties: asset: type: object title: asset description: '' required: - duration properties: duration: type: integer description: The length of an asset in seconds. In this example, 9241 would represent 9,241 seconds or roughly 2.5 hours. example: 9241 renditions: type: object description: '' properties: height: type: integer description: The height, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is **1080**. example: '' format: int32 width: type: integer description: The width, in pixels, of the output rendition. Should correspond to a widescreen or standard aspect ratio and be divisible by 8. The default is **1920**. example: '' format: int32 bitrate_kbps: type: integer description: The video bitrate, in kilobits per second (Kbps). Must be between **1** and **10240**. The default is **4000**. example: '' format: int32 example: height: 480 width: 848 bitrate_kbps: 1600 Error401: type: object description: '' required: - meta properties: meta: type: object title: meta description: '' properties: status: type: integer description: '' example: '' format: int32 code: type: string description: '' example: '' title: type: string description: '' example: '' message: type: string description: '' example: '' description: type: string description: '' example: '' links: type: array description: '' example: '' items: {} example: 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: [] assets: type: object description: '' required: - assets properties: assets: type: array items: $ref: '#/components/schemas/index_asset' example: assets: - id: wdjfqvsv name: MyAsset created_at: '2020-01-29T17:16:21.849Z' updated_at: '2020-01-31T16:06:47.849Z' published: true thumbnail_url: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/0pfxrlw2_thumbnail.jpg.jpg state: completed processing_percentage: 0.1 file_size: 1570024 playback_url: https://wowzasubdomain/1/RmlPcnpsM0Z1Nzd2/SFhkUXlv/hls/live/playlist.m3u8 download_url: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/MyAsset.mp4 file_name: MyFile.mp4 - id: KyxWKtHQ name: MyAsset2 created_at: '2020-01-29T17:16:21.849Z' updated_at: '2020-01-31T02:26:05.849Z' published: true thumbnail_url: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/0pfxrlw2_thumbnail.jpg.jpg state: completed processing_percentage: 0.3 file_size: 70284 playback_url: https://wowzasubdomain/1/U0VmOU90TmtvSzJP/Y2ltUkl2/hls/live/playlist.m3u8 download_url: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/MyAsset2.mp4 file_name: MyFile2.mp4 - id: Ly40ZDSg name: MyAsset3 created_at: '2020-01-29T17:16:21.849Z' updated_at: '2020-01-30T18:13:18.849Z' published: true thumbnail_url: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/0pfxrlw2_thumbnail.jpg.jpg state: completed processing_percentage: 0 file_size: 882391 playback_url: https://wowzasubdomain/1/PmlPcnpsM0Z1Nzd2/SFhkUXlv/hls/live/playlist.m3u8 download_url: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/MyAsset3.mp4 file_name: MyFile3.mp4 asset_update_input: type: object description: '' required: - asset properties: asset: type: object title: asset description: '' properties: description: type: string description: 'A description of the asset. Maximum 16,000 characters. **Example:**
"description": "My updated asset description"'
example: My Asset Description
name:
type: string
description: 'A descriptive name for the live stream. Maximum 200 characters.
**Example:** "name": "My Updated Live Stream Asset"'
example: My Live Stream
published:
type: boolean
description: 'Specifies whether an asset is published, which enables playback.
**Example:** "published": true'
tags:
type: array
description: 'A list of tags associated with the asset.
**Example:** "tags": ["Tag1", "Tag2", "Tag3"]'
example:
- Tag1
- Tag2
- Tag3
hosted_page:
type: object
description: Configuration of the hosted page.
properties:
title:
type: string
description: 'A title for the page that appears above the player. Can''t include custom HTML, JavaScript, or other tags.
**Example:** "title": "My Hosted Page"'
example: My Hosted Page
description:
type: string
description: 'A description that appears on the hosted page below the player. Can''t include custom HTML, JavaScript, or other tags.
**Example:** "description": "My Hosted Page Description"'
example: ''
logo_image:
type: string
description: 'A Base64-encoded string representation of a GIF, JPEG, or PNG logo file that that appears in the upper-left corner of the hosted page. Logo file must be 2.5 MB or smaller.
**Example:** "logo_image": "[Base64-encoded string representation of GIF, JPEG, or PNG file]"'
example: '[Base64-encoded string representation of GIF, JPEG, or PNG file]'
remove_logo_image:
type: boolean
description: 'If **true**, removes the logo file from the hosted page. The default is **false**.
**Example:** "remove_logo_image": true'
example: true
sharing_icons:
type: boolean
description: 'Icons that let viewers share the stream on Facebook, Google+, Twitter, and by email. The default, **true**, includes sharing icons on the hosted page. Specify **false** to omit sharing icons.
**Example:** "sharing_icons": false'
example: false
Error422_asset_not_available:
type: object
description: ''
required:
- meta
properties:
meta:
type: object
title: meta
description: ''
properties:
status:
type: integer
description: ''
example: ''
format: int32
code:
type: string
description: ''
example: ''
title:
type: string
description: ''
example: ''
message:
type: string
description: ''
example: ''
description:
type: string
description: ''
example: ''
links:
type: array
description: ''
example: ''
items: {}
example:
Example Response 1:
meta:
status: 422
code: ERR-422-NotAvailable
title: Asset Not Available
message: The asset isn't available for editing, deleting, or restreaming. Wait until the processing for the asset is complete and try again.
description: ''
links: []
asset_update_output:
type: object
description: ''
properties:
available_renditions:
type: array
description: The renditions available for the asset.
items:
$ref: '#/components/schemas/renditions'
id:
type: string
description: The unique alphanumeric string that identifies the asset
example: i4qsbwvi
name:
type: string
description: A descriptive name for the live stream. Maximum 200 characters.
example: My Asset
description:
type: string
description: A description of the asset. Maximum 16,000 characters.
example: My Asset Description
published:
type: boolean
description: Specifies whether an asset is published, which enables playback.
tags:
type: array
description: A list of tags associated with the asset.
example:
- Tag1
- Tag2
- Tag3
vod_stream_id:
type: string
description: 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.
example: l9qsbwvf
recording_id:
type: string
description: An ID for the recording. You can use this to fetch additional information about the recording associated with the asset.
example: l8qsbwvu
state:
type: string
description: The state of the asset.
example: completed
enum:
- uploading
- processing
- completed
- failed
created_at:
type: string
description: 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.
example: '2021-06-30T18:02:20.000Z'
format: date-time
updated_at:
type: string
description: 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.
example: '2021-06-30T18:02:20.000Z'
format: date-time
download_url:
type: string
description: The URL that can be used to download the asset as a .MP4 file.
example: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/MyAsset.mp4
file_size:
type: integer
description: The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes.
example: 2372820
duration:
type: integer
description: The length of an asset in seconds. For example, 9241 would represent 9,241 seconds or roughly 2.5 hours.
example: 9241
thumbnail_url:
type: string
description: The URL to receive the preview thumbnail.
example: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/0pfxrlw2_thumbnail.jpg
unique_viewers:
type: integer
description: The number of unique viewers for the stream.
example: 5986
total_viewing_time:
type: integer
description: 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.
example: 4492549
average_view_time:
type: integer
description: The average time that the asset has been viewed in seconds. For example, 12580 seconds would be 3.5 hours.
example: 12580
format: time
playback_url:
type: string
description: The HLS URL for the stream associated with the asset.
example: https://cdn3-qa.wowza.com/2/T1R6V2hBV2hEdmJ0/ZnJUOE9q/hls/g7z7bwbz/playlist.m3u8
total_storage_size:
type: integer
description: The total storage size for the asset in bytes. In this example, 19513598 equals 19.5 megabytes.
example: 19513598
file_name:
type: string
description: '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.' example: MyAsset.mp4 processing_percentage: type: integer description: A percentage that describes how soon transcoding will complete. example: 100 player_embed_code: type: string description: The HTML code that can be used in external webpage to host the Wowza Flowplayer. example: \n\n hosted_page: type: object description: Configuration of the hosted page. properties: title: type: string description: 'A title for the page that appears above the player. Can''t include custom HTML, JavaScript, or other tags. **Example:**
"title": "My Hosted Page"'
example: My Hosted Page
description:
type: string
description: 'A description that appears on the hosted page below the player. Can''t include custom HTML, JavaScript, or other tags.
**Example:** "description": "My Hosted Page Description"'
example: This is my hosted page.
logo_image_url:
type: string
description: 'A Base64-encoded string representation of a GIF, JPEG, or PNG logo file that that appears in the upper-left corner of the hosted page. Logo file must be 2.5 MB or smaller.
**Example:** "logo_image": "[Base64-encoded string representation of GIF, JPEG, or PNG file]"'
example: '[Base64-encoded string representation of GIF, JPEG, or PNG file]'
sharing_icons:
type: boolean
description: 'Icons that let viewers share the stream on Facebook, Google+, Twitter, and by email. The default, **true**, includes sharing icons on the hosted page. Specify **false** to omit sharing icons.
**Example:** "sharing_icons": false'
example: false
url:
type: string
description: The URL of the Wowza Video-hosted webpage that viewers can visit to watch the stream.
example: https://embed.flowplayer.com/hosted/default/e8dk5bf6
Error403:
type: object
description: ''
required:
- meta
properties:
meta:
type: object
title: meta
description: ''
properties:
status:
type: integer
description: ''
example: ''
format: int32
code:
type: string
description: ''
example: ''
title:
type: string
description: ''
example: ''
message:
type: string
description: ''
example: ''
description:
type: string
description: ''
example: ''
links:
type: array
description: ''
example: ''
items: {}
example:
Example Response 1:
meta:
status: 403
code: ERR-403-RecordUnaccessible
title: Record Unaccessible Error
message: The requested resource isn't accessible.
description: ''
links: []
asset_report_uploaded_output:
type: object
description: ''
properties:
id:
type: string
description: The unique alphanumeric string that identifies the asset
example: i4qsbwvi
name:
type: string
description: A descriptive name for the live stream. Maximum 200 characters.
example: My Asset
tags:
type: array
description: A list of tags associated with the asset.
example:
- Tag1
- Tag2
- Tag3
vod_stream_id:
type: string
description: 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.
example: l9qsbwvf
recording_id:
type: string
description: An ID for the recording. You can use this to fetch additional information about the recording associated with the asset.
example: l8qsbwvu
state:
type: string
description: The state of the asset.
example: processing
enum:
- uploading
- processing
- completed
- failed
created_at:
type: string
description: 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.
example: '2021-06-30T18:02:20.000Z'
format: date-time
updated_at:
type: string
description: 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.
example: '2021-06-30T18:02:20.000Z'
format: date-time
download_url:
type: string
description: The URL that can be used to download the asset as a .MP4 file.
example: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/MyAsset.mp4
file_size:
type: integer
description: The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes.
example: 2372820
duration:
type: integer
description: The length of an asset in seconds. For example, 9241 would represent 9,241 seconds or roughly 2.5 hours.
example: 9241
average_view_time:
type: integer
description: The average time that the asset has been viewed in seconds. For example, 12580 seconds would be 3.5 hours.
example: 12580
format: time
file_name:
type: string
description: '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.' example: MyAsset.mp4 processing_percentage: type: integer description: A percentage that describes how soon transcoding will complete. example: 100 asset: type: object description: '' properties: available_renditions: type: array description: The renditions available for the asset. items: $ref: '#/components/schemas/renditions' id: type: string description: The unique alphanumeric string that identifies the asset example: i4qsbwvi name: type: string description: A descriptive name for the live stream. Maximum 200 characters. example: My Asset description: type: string description: A description of the asset. Maximum 16,000 characters. example: My Asset Description published: type: boolean description: Specifies whether an asset is published, which enables playback. tags: type: array description: A list of tags associated with the asset. example: - Tag1 - Tag2 - Tag3 upload_url: type: string description: '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.' example: https://objectstorage.us-ashburn-1.oraclecloud.com/p/k9bGRcyPFPtdeQeTRgAVTByIVVS0Z_EKrLBu3TusTrRfBuIpoDyio_ZY3qJM55tp/n/a1b2c3d4e5f6/b/recordings-qa-S7I69eYn/o/uploads/recording_bry7vv0s/MyAsset.mp4 vod_stream_id: type: string description: 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. example: l9qsbwvf recording_id: type: string description: An ID for the recording. You can use this to fetch additional information about the recording associated with the asset. example: l8qsbwvu state: type: string description: The state of the asset. example: completed enum: - uploading - processing - completed - failed reason: type: string description: The reason that an asset has the state **failed**. Only returned when state is **failed** after processing is attempted. example: '' created_at: type: string description: 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. example: '2021-06-30T18:02:20.000Z' format: date-time updated_at: type: string description: 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. example: '2021-06-30T18:02:20.000Z' format: date-time download_url: type: string description: The URL that can be used to download the asset as a .MP4 file. example: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/MyAsset.mp4 file_size: type: integer description: The file size of the asset in bytes. For example, 2372820 bytes equals 2.4 megabytes. example: 2372820 duration: type: integer description: The length of an asset in seconds. For example, 9241 would represent 9,241 seconds or roughly 2.5 hours. example: 9241 thumbnail_url: type: string description: The URL to receive the preview thumbnail. example: https://objectstorage.us-ashburn-1.oraclecloud.com/n/idcrz33q3xdo/b/recordings-qa-S7I69eYn/o/abcd1234/recording_0pfxrlw2/0pfxrlw2_thumbnail.jpg unique_viewers: type: integer description: The unique_viewers parameter is deprecated. To get unique viewers for an asset, use the GET /analytics/viewers/vod_stream/{id} endpoint. example: 5986 total_viewing_time: type: integer description: The total_viewing_time parameter is deprecated. example: 4492549 average_view_time: type: integer description: The average_view_time parameter is deprecated. example: 12580 format: time playback_url: type: string description: The HLS URL for the stream associated with the asset. example: https://cdn3-qa.wowza.com/2/T1R6V2hBV2hEdmJ0/ZnJUOE9q/hls/g7z7bwbz/playlist.m3u8 total_storage_size: type: integer description: The total storage size for the asset in bytes. In this example, 19513598 equals 19.5 megabytes. example: 19513598 file_name: type: string description: '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.' example: MyAsset.mp4 processing_percentage: type: integer description: A percentage that describes how soon transcoding will complete. example: 100 player_embed_code: type: string description: The HTML code that can be used in external webpage to host the Wowza Flowplayer. example: \n\n hosted_page: type: object description: Configuration of the hosted page. properties: title: type: string description: 'A title for the page that appears above the player. Can''t include custom HTML, JavaScript, or other tags. **Example:**
"title": "My Hosted Page"'
example: My Hosted Page
url:
type: string
description: The URL of the Wowza Video-hosted webpage that viewers can visit to watch the stream.
example: https://embed.flowplayer.com/hosted/default/e8dk5bf6
description:
type: string
description: 'A description that appears on the hosted page below the player. Can''t include custom HTML, JavaScript, or other tags.
**Example:** "description": "My Hosted Page Description"'
example: This is my hosted page.
logo_image_url:
type: string
description: 'A Base64-encoded string representation of a GIF, JPEG, or PNG logo file that that appears in the upper-left corner of the hosted page. Logo file must be 2.5 MB or smaller.
**Example:** "logo_image": "[Base64-encoded string representation of GIF, JPEG, or PNG file]"'
example: '[Base64-encoded string representation of GIF, JPEG, or PNG file]'
sharing_icons:
type: boolean
description: 'Icons that let viewers share the stream on Facebook, Google+, Twitter, and by email. The default, **true**, includes sharing icons on the hosted page. Specify **false** to omit sharing icons.
**Example:** "sharing_icons": false'
example: false
Error422:
type: object
description: ''
required:
- meta
properties:
meta:
type: object
title: meta
description: ''
properties:
status:
type: integer
description: ''
example: ''
format: int32
code:
type: string
description: ''
example: ''
title:
type: string
description: ''
example: ''
message:
type: string
description: ''
example: ''
description:
type: string
description: ''
example: ''
links:
type: array
description: ''
example: ''
items: {}
example:
Example Response 1:
meta:
status: 422
code: ERR-422-RecordInvalid
title: Record Invalid Error
message: The request couldn't be processed. ... can't be blank
description: ''
links: []
Example Response 2:
meta:
status: 422
code: ERR-422-RecordInvalid
title: Record Invalid Error
message: The request couldn't be processed. Provider wowza_video is not allowed
description: ''
links: []
Example Response 3:
meta:
status: 422
code: ERR-422-InvalidStateChange
title: Invalid State Change Error
message: The request couldn't be processed. There must be at least one WebRTC output for this transcoder.
description: ''
links: []
Example Response 4:
meta:
status: 422
code: ERR-422-RecordInvalid
title: Record Invalid Error
message: API cannot remove the primary Output Stream Target with the ID of