> ## Documentation Index
> Fetch the complete documentation index at: https://developer.pixelbyte.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Kling 3.0 Standard — Text to Video

> Generate text to video using Kling 3.0 Standard via PixelByte API

Generate high-quality videos from text descriptions with Kling 3.0 Standard. Supports multiple aspect ratios, durations, and prompt-guidance controls.

| Property            | Value                                      |
| ------------------- | ------------------------------------------ |
| **Provider**        | Kling Plus                                 |
| **Model**           | Kling 3.0 Standard                         |
| **Capability**      | Text to Video                              |
| **Base Cost**       | 84,000 micro-cents/second (\$0.084/second) |
| **Processing Time** | \~240 seconds                              |

## Request Body

<ParamField body="model" type="string" required placeholder="kling-plus/kling-3.0-standard/text-to-video">
  Model slug. Use `kling-plus/kling-3.0-standard/text-to-video` for text to video generation.
</ParamField>

<ParamField body="input" type="object" required>
  Input parameters for text to video generation.

  <Expandable title="properties" defaultOpen>
    <ParamField body="prompt" type="string" required>
      Text description of the video to generate. max 2500 characters.
    </ParamField>

    <ParamField body="aspect_ratio" type="string">
      Video aspect ratio. Options: `16:9`, `9:16`, `1:1`. Default: `16:9`.
    </ParamField>

    <ParamField body="duration" type="string">
      Video duration in seconds. Options: `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `13`, `14`, `15`. Default: `5`.
    </ParamField>

    <ParamField body="has_sound" type="string">
      Enable audio generation. Options: `false`, `true`. Default: `true`.
    </ParamField>

    <ParamField body="cfg_scale" type="number">
      Prompt adherence strength. min 0, max 1. Default: `0.5`.
    </ParamField>

    <ParamField body="negative_prompt" type="string">
      Negative prompt. max 1000 characters.
    </ParamField>

    <ParamField body="shot_type" type="string">
      Camera shot composition mode. Options: `customize`, `intelligent`. Default: `customize`.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="webhookUrl" type="string">
  HTTPS URL to receive a webhook notification when the job completes or fails.
</ParamField>

## Pricing

**Base cost:** 84,000 micro-cents per second (\$0.084/second)

```
finalCost = baseCost × has_sound × duration
```

| Factor        | Option  | Multiplier |
| ------------- | ------- | ---------- |
| **Has Sound** | `true`  | 1.5x       |
|               | `false` | 1x         |
| **Duration**  | `3`     | 3x         |
|               | `4`     | 4x         |
|               | `5`     | 5x         |
|               | `6`     | 6x         |
|               | `7`     | 7x         |
|               | `8`     | 8x         |
|               | `9`     | 9x         |
|               | `10`    | 10x        |
|               | `11`    | 11x        |
|               | `12`    | 12x        |
|               | `13`    | 13x        |
|               | `14`    | 14x        |
|               | `15`    | 15x        |

<Tip>
  **Default cost** (has\_sound=`true`, duration=`5`): 84,000 × 1.5 × 5 = **630,000 micro-cents (\$0.63)**
</Tip>

## Response

<ResponseField name="jobId" type="string">
  Unique identifier for the submitted job.
</ResponseField>

<ResponseField name="status" type="string">
  Initial job status. Always `"pending"` on successful submission.
</ResponseField>

<ResponseField name="estimatedCompletionTime" type="string">
  ISO 8601 timestamp of the estimated completion time.
</ResponseField>

<ResponseField name="costMicroCents" type="number">
  The cost of the job in micro-cents.
</ResponseField>

## Code Examples

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://api.muvi.video/v1/jobs/submit \
    -H "Authorization: Bearer $PIXELBYTE_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "kling-plus/kling-3.0-standard/text-to-video",
      "input": {
        "prompt": "A golden retriever running through a sunlit meadow during sunrise, cinematic camera motion.",
        "aspect_ratio": "16:9",
        "duration": "5",
        "has_sound": "true"
      }
    }'
  ```

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

  response = requests.post(
      "https://api.muvi.video/v1/jobs/submit",
      headers={
          "Authorization": "Bearer YOUR_API_KEY",
          "Content-Type": "application/json"
      },
      json={
          "model": "kling-plus/kling-3.0-standard/text-to-video",
          "input": {
              "prompt": "A golden retriever running through a sunlit meadow during sunrise, cinematic camera motion.",
              "aspect_ratio": "16:9",
              "duration": "5",
              "has_sound": "true"
          }
      }
  )

  data = response.json()
  print(data)
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch("https://api.muvi.video/v1/jobs/submit", {
    method: "POST",
    headers: {
      "Authorization": "Bearer YOUR_API_KEY",
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      model: "kling-plus/kling-3.0-standard/text-to-video",
      input: {
        prompt: "A golden retriever running through a sunlit meadow during sunrise, cinematic camera motion.",
        aspect_ratio: "16:9",
        duration: "5",
        has_sound: "true"
      }
    })
  });

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