Live 3 API: Common Use Cases & Example Requests Live 3 API: Common Use Cases & Example Requests

Live 3 API: Common Use Cases & Example Requests

Zype Live 3 is supported by the Zype Live API, which enables you to programmatically manage live encoders and live events—including starting/stopping encoders, creating events, starting/stopping broadcasts, and archiving events. Live 3 is designed to remain backwards compatible with existing Live API integrations while enabling new Live 3 workflows.

Zype API Documentation for Live Events:  https://docs.zype.com/reference/listliveevents

Zype API Documentation for Live Encoders:  https://docs.zype.com/reference/listencoders

Base URL and Authentication

All examples below use the Zype API base URL:

  • Base URL: https://api.zype.com

Most Live endpoints use your Zype API key via a query parameter (api_key).

Example: set your API key as an environment variable

export ZYPE_API_KEY="YOUR_API_KEY"

Encoder API use cases

Use case: List encoders (discover encoder names)

Before you can start/stop an encoder, you’ll typically list encoders to identify the encoder_name you want to control.

API Reference: Encoders → “List Encoders”

Example request (cURL)

curl --request GET \
  --url "https://api.zype.com/live/encoders?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Use case: View a specific encoder (validate status/config)

API Reference: Encoders → “View Encoder”

curl --request GET \
  --url "https://api.zype.com/live/encoders/ENCODER_NAME?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Use case: Start an encoder

Start (power on / activate) a provisioned encoder.

API Reference: Start an Encoder (POST)

curl --request POST \
  --url "https://api.zype.com/live/encoders/ENCODER_NAME/start?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Expected outcomes

  • 200 indicates success

  • 404 encoder not found

  • 400 start failed (configuration/state issue)

(These status patterns are shown on the API reference page UI.)

Use case: Stop an encoder

Stop (power off / deactivate) an encoder when you’re done streaming to avoid unnecessary runtime.

API Reference: Stop an Encoder (POST)

curl --request POST \
  --url "https://api.zype.com/live/encoders/ENCODER_NAME/stop?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Live Event API use cases

Use case: List live events

Use this to find the id of an event you want to start/stop/archive, or to audit recent events.

API Reference: List Live Events (GET)

curl --request GET \
  --url "https://api.zype.com/live_events?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Use case: Create a live event

Creates a new live event. You can typically configure metadata and event-level settings in the request body.

API Reference: Create Live Event (POST)

Example request (template)
Note: The exact live_event fields are defined in the API reference “Body Params” for your account/workflow. Use this example as a structural template and then fill in supported fields from the API page.

curl --request POST \
  --url "https://api.zype.com/live_events?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json" \
  --header "content-type: application/json" \
  --data '{
    "live_event": {
      "title": "My Live Event",
      "description": "Example event created via API",
      "encoder_name": "ENCODER_NAME",
      "dvr": true,
      "dvr_window_seconds": 21600
    }
  }'

If you want more narrative guidance on creating/broadcasting events, Zype also has an end-to-end help article for the Live Event wizard flow.

Use case: View a live event

Fetches event configuration and current state by id.

API Reference: View Live Event (GET)

curl --request GET \
  --url "https://api.zype.com/live_events/LIVE_EVENT_ID?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Use case: Start broadcasting a live event

Transitions an event into “broadcasting” state (i.e., go-live), assuming your encoder is running and sending stream input.

API Reference: Start broadcasting a live event (PUT)

curl --request PUT \
  --url "https://api.zype.com/live_events/LIVE_EVENT_ID/start?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Use case: Stop broadcasting a live event

Ends the broadcast. This is typically done when the live program is complete.

API Reference: Stop broadcasting a live event (PUT)

curl --request PUT \
  --url "https://api.zype.com/live_events/LIVE_EVENT_ID/stop?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Use case: Archive a live event (create VOD from the live)

Creates an archived VOD copy from a live event after it has ended.

API Reference: Archive a live event (PUT)

curl --request PUT \
  --url "https://api.zype.com/live_events/LIVE_EVENT_ID/archive?api_key=${ZYPE_API_KEY}" \
  --header "accept: application/json"

Operational note: Zype’s Live Events API overview indicates archives must be created within the event’s active DVR window (commonly referenced as ~12 hours, depending on configuration).


Recommended API workflow patterns

Pattern A: “Live Event” On-Demand (scheduled or ad-hoc)

  1. Start encoder (POST /live/encoders/{encoder_name}/start)

  2. Create live event (POST /live_events)

  3. Start broadcasting (PUT /live_events/{id}/start)

  4. Stop broadcasting (PUT /live_events/{id}/stop)

  5. Archive live event (PUT /live_events/{id}/archive)

  6. Stop encoder (POST /live/encoders/{encoder_name}/stop)

Pattern B: “Always-On” linear channel operations

  • Start encoder (when bringing the channel online)

  • Start/stop events as needed (or use event scheduling if applicable)

  • Stop encoder when taking channel offline

Troubleshooting and practical tips

  • If you receive 404 Encoder not found, first List Encoders and confirm the exact encoder_name.

  • If starting an event fails, verify:

    • The encoder is actually started (and not idle/stopped).

    • Your upstream encoder (OBS/Elemental/etc.) is publishing to the expected ingest endpoint.

  • If archiving fails, confirm the archive request is happening inside your configured DVR window constraints.

Was this article helpful?

0 out of 0 found this helpful