> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/BankkRoll/pumpfun-apis/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Livestream

## Overview

Create a new livestream session for a token launch. This endpoint initializes a LiveKit room and configures the streaming infrastructure for your token.

## Endpoint

```http theme={null}
POST https://frontend-api-v3.pump.fun/livestreams/create-livestream
```

## Authentication

Requires JWT authentication via `Authorization: Bearer <token>` header.

## Request Body

The request body should contain livestream configuration details.

<Note>
  The exact schema follows the `LivestreamDto` structure. Refer to your API schema for specific field requirements.
</Note>

## Response

<ResponseField name="status" type="string">
  Returns 201 Created on successful livestream creation
</ResponseField>

## Example Request

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST "https://frontend-api-v3.pump.fun/livestreams/create-livestream" \
    -H "Authorization: Bearer <your_token>" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d '{
      "mint": "your_token_mint_address"
    }'
  ```

  ```python Python theme={null}
  import requests

  url = "https://frontend-api-v3.pump.fun/livestreams/create-livestream"
  headers = {
      "Authorization": "Bearer <your_token>",
      "Accept": "application/json",
      "Content-Type": "application/json"
  }

  data = {
      "mint": "your_token_mint_address"
  }

  response = requests.post(url, headers=headers, json=data)
  print(response.json())
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    "https://frontend-api-v3.pump.fun/livestreams/create-livestream",
    {
      method: "POST",
      headers: {
        "Authorization": "Bearer <your_token>",
        "Accept": "application/json",
        "Content-Type": "application/json"
      },
      body: JSON.stringify({
        mint: "your_token_mint_address"
      })
    }
  );

  const data = await response.json();
  console.log(data);
  ```
</CodeGroup>

## Next Steps

After creating a livestream:

1. **Get a host token**: Use the [Get Host Token](/api-reference/livestreams/tokens#get-host-token) endpoint to obtain streaming credentials
2. **Share with participants**: Direct viewers to join using participant tokens
3. **Manage the stream**: Use the [management endpoints](/api-reference/livestreams/manage) to control stream state

## Related Endpoints

<CardGroup cols={2}>
  <Card title="Get Host Token" icon="key" href="/api-reference/livestreams/tokens#get-host-token">
    Generate LiveKit credentials for streaming
  </Card>

  <Card title="Manage Stream" icon="sliders" href="/api-reference/livestreams/manage">
    Enable, disable, or moderate your stream
  </Card>
</CardGroup>
