API Reference
Generate Ingress

Generate Ingress

Creates a new RTMP ingress endpoint for streaming.

Endpoint

POST /api/ingress/generate

Request Headers

HeaderRequiredDescription
Content-TypeYesapplication/json
x-api-keyYesYour API key

Request Body

FieldTypeRequiredDescription
roomNamestringYesName of the room for the stream
participantIdentitystringNoUnique identifier for the streamer (auto-generated if not provided)
participantNamestringNoDisplay name for the streamer (defaults to "RTMP Streamer")
metadataobjectNoCustom metadata to attach to the participant
enableTranscodingbooleanNoEnable transcoding (default: true)

Example Request

curl -X POST https://live-api.block8910.com/api/ingress/generate \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "roomName": "my-room",
    "participantIdentity": "streamer-1",
    "participantName": "My Stream",
    "metadata": {
      "source": "api",
      "quality": "1080p"
    },
    "enableTranscoding": true
  }'

Response

{
  "success": true,
  "data": {
    "ingressId": "IN_xxxxxxxxxxxxxx",
    "url": "rtmp://rtmp.block8910.com:1935/x",
    "streamKey": "aAXevUYwfj9K",
    "rtmpUrl": "rtmp://rtmp.block8910.com:1935/x/aAXevUYwfj9K",
    "roomName": "my-room",
    "participantIdentity": "streamer-1",
    "participantName": "My Stream",
    "wsUrl": "wss://live.block8910.com"
  }
}

Response Fields

FieldDescription
ingressIdUnique identifier for the ingress (use for deletion)
urlBase RTMP server URL
streamKeyStream key for authentication
rtmpUrlFull RTMP URL for streaming (url + streamKey)
roomNameRoom name for viewers to join
participantIdentityUnique identifier for the streamer
participantNameDisplay name of the streamer
wsUrlWebSocket URL for viewers to connect

Using the RTMP URL

Stream to the rtmpUrl using FFmpeg or OBS:

ffmpeg -re -i video.mp4 -c:v libx264 -f flv "rtmp://rtmp.block8910.com:1935/x/aAXevUYwfj9K"