Wowza stream_targets API

Operations related to stream targets. A stream target is a destination for a stream. Stream targets can be Wowza Video edge resources; custom, external destinations, target destinations. ### Wowza CDN Stream Targets Wowza CDN stream targets distribute streams to players. When you create a live stream in the API, a Wowza CDN stream target is created automatically. In contrast, you can use ``/stream_targets/wowza_cdn`` endpoints to manually create Wowza CDN stream targets and associate them with transcoders. With Wowza CDN stream targets, you can use geo-blocking to control locations where your stream can be viewed, and you can use token authentication to restrict access to streams. Advanced configuration properties are available for Wowza CDN stream targets. ### Custom Stream Targets Custom stream targets connect to external CDNs to deliver streams to viewers. You manually create custom stream targets and associate them to a transcoder.

Operations 17

GET /stream_targets Fetch all stream targets #
GET /stream_targets/{id} Fetch a stream target #
POST /stream_targets/custom Create a custom stream target #
GET /stream_targets/custom Fetch all custom stream targets #
GET /stream_targets/custom/{id} Fetch a custom stream target #
PATCH /stream_targets/custom/{id} Update a custom stream target #
DELETE /stream_targets/custom/{id} Delete a custom stream target #
POST /stream_targets/wowza_cdn Create a Wowza CDN stream target #
GET /stream_targets/wowza_cdn Fetch all Wowza CDN stream targets #
GET /stream_targets/wowza_cdn/{id} Fetch a Wowza CDN stream target #
PATCH /stream_targets/wowza_cdn/{id} Update a Wowza CDN stream target #
DELETE /stream_targets/wowza_cdn/{id} Delete a Wowza CDN stream target #
PUT /stream_targets/{id}/regenerate_connection_code Regenerate the connection code for any stream target #
POST /stream_targets/{stream_target_id}/properties Configure a property for a stream target #
GET /stream_targets/{stream_target_id}/properties Fetch all properties of a stream target #
GET /stream_targets/{stream_target_id}/properties/{id} Fetch a property of a stream target #
DELETE /stream_targets/{stream_target_id}/properties/{id} Delete a stream target property #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/wowza-stream-targets-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

wowza-stream-targets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v2.0
  title: Wowza Video REST API Reference Documentation Stream Targets API
  license:
    name: Terms of Use
    url: https://www.wowza.com/legal/terms-of-use
  description: "API lifecycle phase: [Current](https://www.wowza.com/docs/wowza-video-rest-api-lifecycle-management#api-lifecycle0)\n\n\n<table>\n<tr style=\"background-color:lightgrey;\"><td>\n<strong>Want to take the API for a test run?</strong>\n\nAll you'll need is a [Wowza Video subscription](https://www.wowza.com/pricing), or [free trial](https://www.wowza.com/free-trial), for the API access token. Then, fork [our collection in Postman](https://www.postman.com/wowzavideo/workspace/wowza-video-rest-api) and you'll be\nmaking calls to our REST API in minutes!\n\nSee [Trial the Wowza Video REST API using Postman](https://www.wowza.com/docs/trial-the-wowza-video-rest-api-using-postman) for more information.\n</td>\n</tr>\n</table>\n\n\nThis reference documentation provides details about the operations, parameters, and request and response schemas for every resource and endpoint in the Wowza Video REST API.\nSamples appear in the right column. Sample requests are presented in cURL (Shell) and JavaScript; some samples also include just the JSON object. Response samples are all JSON. \nExamples in cURL use environment variables so you can easily copy and paste them. To learn more, see [Using cURL](https://wowza.com/docs/how-to-use-the-wowza-video-rest-api#curl).\n\n\nReference documentation is available for every version of the API. Use the **Version** menu at the top of the page to access the reference doc for a different version of the API.\n\n<blockquote><strong>Note</strong>: If you haven't moved over to the new Wowza Video UI experience, you won't be able to access v2.0 of the API. We're migrating customers iteratively. See <a href=\"https://developer.wowza.com/docs/wowza-video/upgrade-to-wowza-video/\">Upgrade to the Wowza Video 2.0 REST API</a> for more information.</blockquote>\n"
servers:
- url: https://api.video.wowza.com/api/v2.0
tags:
- name: stream_targets
  description: "Operations related to stream targets. A stream target is a destination for a stream. Stream targets can be Wowza Video edge resources; custom, external destinations, target destinations.\n \n ### Wowza CDN Stream Targets\n Wowza CDN stream targets distribute streams to players. When you create a live stream in the API, a Wowza CDN stream target is created automatically. \n \n \n In contrast, you can use ``/stream_targets/wowza_cdn`` endpoints to manually create Wowza CDN stream targets and associate them with transcoders.\n \n \n With Wowza CDN stream targets, you can use geo-blocking to control locations where your stream can be viewed, and you can use token authentication to restrict access to streams. Advanced configuration properties are available for Wowza CDN stream targets.\n \n ### Custom Stream Targets\n Custom stream targets connect to external CDNs to deliver streams to viewers. You manually create custom stream targets and associate them to a transcoder."
  x-displayName: Stream Targets
paths:
  /stream_targets:
    get:
      summary: Fetch all stream targets
      description: This operation lists limited details for custom stream targets and Wowza CDN stream targets. For detailed information, fetch a single stream target of a specific type.
      operationId: listStreamTargets
      tags:
      - stream_targets
      parameters:
      - $ref: '#/components/parameters/assignable'
      - $ref: '#/components/parameters/filter'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/per_page'
      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/stream_targets\"\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/stream_targets';\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"
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stream_targets'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error401'
  /stream_targets/{id}:
    get:
      summary: Fetch a stream target
      description: This operation shows the details of a specific stream target whether it be a Wowza CDN, custom, Facebook Live, or LinkedIn Live stream target.
      operationId: showStreamTarget
      tags:
      - stream_targets
      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/stream_targets/2adffc17\"\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/stream_targets/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 stream target.
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  stream_target_custom:
                    $ref: '#/components/schemas/stream_target_custom'
                  stream_target_wowza_cdn:
                    $ref: '#/components/schemas/stream_target_fastly'
                  stream_target_facebook:
                    $ref: '#/components/schemas/stream_target_facebook'
                  stream_target_linkedin:
                    $ref: '#/components/schemas/stream_target_linkedin'
        '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'
  /stream_targets/custom:
    post:
      summary: Create a custom stream target
      description: This operation creates a custom stream target for an external, third-party destination.
      operationId: createCustomStreamTarget
      tags:
      - stream_targets
      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/stream_targets/custom\" \\\n  -d $'{\n  \"stream_target_custom\": {\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/stream_targets/custom';\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  \"stream_target_custom\": {\n    \"property\": \"My Value\",\n    \"...\": \"...\"\n  }\n}));\nreq.end();\n"
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/custom_stream_target_create_input'
        description: Provide the details of the custom stream target to create in the body of the request.
        required: true
      responses:
        '201':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  stream_target_custom:
                    $ref: '#/components/schemas/stream_target_custom'
        '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 custom stream targets
      description: This operation lists limited details for all of your custom stream targets. For detailed information, fetch a single custom stream target.
      operationId: listCustomStreamTargets
      tags:
      - stream_targets
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/per_page'
      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/stream_targets/custom\"\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/stream_targets/custom';\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"
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stream_targets_custom'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error401'
  /stream_targets/custom/{id}:
    get:
      summary: Fetch a custom stream target
      description: This operation shows the details of a specific custom stream target.
      operationId: showCustomStreamTarget
      tags:
      - stream_targets
      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/stream_targets/custom/2adffc17\"\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/stream_targets/custom/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 custom stream target.
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  stream_target_custom:
                    $ref: '#/components/schemas/stream_target_custom'
        '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 a custom stream target
      description: This operation updates a custom stream target.
      operationId: updateCustomStreamTarget
      tags:
      - stream_targets
      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/stream_targets/custom/2adffc17\" \\\n  -d $'{\n  \"stream_target_custom\": {\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/stream_targets/custom/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  \"stream_target_custom\": {\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 custom stream target.
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/custom_stream_target_update_input'
        description: Provide the details of the custom stream target to update in the body of the request.
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  stream_target_custom:
                    $ref: '#/components/schemas/custom_stream_target_patch_response'
        '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'
    delete:
      summary: Delete a custom stream target
      description: 'This operation deletes a custom stream target. <br><br><b>Note</b>: You can''t remove stream targets that have an asset_id. Assets must be removed by sending a DEL request to the /assets endpoint. '
      operationId: deleteCustomStreamTarget
      tags:
      - stream_targets
      x-codeSamples:
      - lang: Shell
        source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n  \n  -H \"Content-Type: application/json\" \\\n  -X \"DELETE\" \\\n  \"${WV_HOST}/api/v2.0/stream_targets/custom/2adffc17\"\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/stream_targets/custom/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});\n"
      parameters:
      - name: id
        in: path
        required: true
        description: The unique alphanumeric string that identifies the custom stream target.
        schema:
          type: string
      - name: force
        in: query
        required: false
        description: When `true`, forces a hard delete by first disconnecting the stream target from any associated transcoder and then deleting it.
        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: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error422'
  /stream_targets/wowza_cdn:
    post:
      summary: Create a Wowza CDN stream target
      description: (Available from version 1.4) This operation creates a Wowza CDN stream target to deliver your stream using the Wowza CDN.
      operationId: createFastlyStreamTarget
      tags:
      - stream_targets
      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/stream_targets/wowza_cdn\" \\\n  -d $'{\n  \"stream_target_wowza_cdn\": {\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/stream_targets/wowza_cdn';\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  \"stream_target_wowza_cdn\": {\n    \"property\": \"My Value\",\n    \"...\": \"...\"\n  }\n}));\nreq.end();\n"
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/fastly_stream_target_create_input'
        description: Provide the details of the Wowza CDN stream target to create in the body of the request.
        required: true
      responses:
        '201':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - stream_target_wowza_cdn
                properties:
                  stream_target_wowza_cdn:
                    $ref: '#/components/schemas/stream_target_fastly'
        '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 Wowza CDN stream targets
      description: (Available from version 1.4) This operation lists limited details for all of your Wowza CDN stream targets. For detailed information, fetch a single target.
      operationId: listFastlyStreamTargets
      tags:
      - stream_targets
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/per_page'
      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/stream_targets/wowza_cdn\"\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/stream_targets/wowza_cdn';\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"
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/stream_targets_fastly'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error401'
  /stream_targets/wowza_cdn/{id}:
    get:
      summary: Fetch a Wowza CDN stream target
      description: (Available from version 1.4) This operation shows the details of a specific Wowza CDN stream target.
      operationId: showFastlyStreamTarget
      tags:
      - stream_targets
      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/stream_targets/wowza_cdn/2adffc17\"\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/stream_targets/wowza_cdn/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 stream target.
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - stream_target_wowza_cdn
                properties:
                  stream_target_wowza_cdn:
                    $ref: '#/components/schemas/stream_target_fastly'
        '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 a Wowza CDN stream target
      description: (Available from version 1.4) This operation updates a Wowza CDN stream target.
      operationId: updateFastlyStreamTarget
      tags:
      - stream_targets
      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/stream_targets/wowza_cdn/2adffc17\" \\\n  -d $'{\n  \"stream_target_wowza_cdn\": {\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/stream_targets/wowza_cdn/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  \"stream_target_wowza_cdn\": {\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 stream target.
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/fastly_stream_target_update_input'
        description: Provide the details of the Wowza CDN stream target to update in the body of the request.
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                required:
                - stream_target_wowza_cdn
                properties:
                  stream_target_wowza_cdn:
                    $ref: '#/components/schemas/fastly_stream_target_patch_response'
        '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'
    delete:
      summary: Delete a Wowza CDN stream target
      description: '(Available from version 1.4) This operation deletes a Wowza CDN stream target.  <br><br><b>Note</b>: You can''t remove stream targets that have an asset_id. Assets must be removed by sending a DEL request to the /assets endpoint. '
      operationId: deleteFastlyStreamTarget
      tags:
      - stream_targets
      x-codeSamples:
      - lang: Shell
        source: "// Using cURL\ncurl -H \"Authorization: Bearer ${WV_JWT}\" \\\n  \n  -H \"Content-Type: application/json\" \\\n  -X \"DELETE\" \\\n  \"${WV_HOST}/api/v2.0/stream_targets/wowza_cdn/2adffc17\"\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/stream_targets/wowza_cdn/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});\n"
      parameters:
      - name: id
        in: path
        required: true
        description: The unique alphanumeric string that identifies the stream target.
        schema:
          type: string
      - name: force
        in: query
        required: false
        description: When `true`, forces a hard delete by first disconnecting the stream target from any associated transcoder and then deleting it.
        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

# --- truncated at 32 KB (138 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/wowza/refs/heads/main/openapi/wowza-stream-targets-api-openapi.yml