---
title: "Create live stream"
method: POST
path: "/live-streams"
tags: ["Live Streams"]
---

# Create live stream

`POST /live-streams`

A live stream will give you the 'connection point' to RTMP your video stream to api.video. 
It will also give you the details for viewers to watch the same livestream.  
The public=false 'private livestream' is available as a BETA feature, and should be limited to livestreams of 3,000 viewers or fewer. 
See our [Live Stream Tutorial](https://api.video/blog/tutorials/live-stream-tutorial) for a walkthrough of this API with OBS. 
Your RTMP endpoint for the livestream is rtmp://broadcast.api.video/s/{streamKey}
Tutorials that [create live streams](https://api.video/blog/endpoints/live-create).

## Request body

- LiveStreamCreationPayload
  - `name` string, required — Add a name for your live stream here.
  - `record` boolean — Whether you are recording or not. True for record, false for not record.
  - `public` boolean — BETA FEATURE Please limit all public = false ("private") livestreams to 3,000 users. Whether your video can be viewed by everyone, or requires authentication to see it. A setting of false will require a unique token for each view.
  - `playerId` string — The unique identifier for the player.

## Response `200`

Success

- LiveStream
  - `liveStreamId` string, required — The unique identifier for the live stream. Live stream IDs begin with "li."
  - `name` string — The name of your live stream.
  - `streamKey` string — The unique, private stream key that you use to begin streaming.
  - `record` boolean — Whether you are recording or not.
  - `public` boolean — BETA FEATURE Please limit all public = false ("private") livestreams to 3,000 users. Whether your video can be viewed by everyone, or requires authentication to see it. A setting of false will require a unique token for each view.
  - `assets` LiveStreamAssets
    - `hls` string, uri — The http live streaming (HLS) link for your live video stream.
    - `iframe` string — The embed code for the iframe containing your live video stream.
    - `player` string, uri — A link to the video player that is playing your live stream.
    - `thumbnail` string, uri — A link to the thumbnail for your video.
  - `playerId` string — The unique identifier for the player.
  - `broadcasting` boolean — Whether or not you are broadcasting the live video you recorded for others to see. True means you are broadcasting to viewers, false means you are not.
  - `createdAt` string, date-time — When the player was created, presented in ISO-8601 format.
  - `updatedAt` string, date-time — When the player was last updated, presented in ISO-8601 format.

## Other responses

- `400` — Bad Request

## Changes

- **2022-02-07** `2a4d90a64f88` — 1 breaking, 7 warning, 5 info
  - removed the required property `restreams` from the response with the `200` status
  - the optional response header `X-RateLimit-Limit` removed for the status `200`
  - the optional response header `X-RateLimit-Limit` removed for the status `400`
  - the optional response header `X-RateLimit-Remaining` removed for the status `200`
  - …9 more

[Change history](https://skmtc.dev/apivideo/apis/api-video/changes/live-streams/post.md)

---

[API](https://skmtc.dev/apivideo/apis/api-video.md) · [All operations](https://skmtc.dev/apivideo/apis/api-video/llms.txt) · [OpenAPI document](https://skmtc.dev/apivideo/apis/api-video/revisions/e979b0dc0974?raw)
