SEEAPISEEAPI
Developer CenterDocs
Get API Key
  • Getting Started
  • Authentication
  • List Model Prices
  • Create a Generation
  • Get Task Details
Image Models
Alibaba
Black Forest Labs
ByteDance
Google
Grok
OpenAI
SeeAPI
Video Models
Alibaba
ByteDance
Google
Grok
Kling
Lightricks
MiniMax
PixVerse
Runway
SeeAPI
Vidu
Music Models
Text Models

Policies

  • Data Handling & Privacy
  • Terms of Service
  • Privacy Policy
  • Commercial Use Policy
www.seeapi.com

One AI API for every leading model. Create images, videos, music, and multimodal AI assets online, or build with one unified API.

Developers
  • AI Models
  • API Pricing
  • AI Integrations
  • API Keys
  • Documentation
Support
  • Pricing
  • [email protected]
Legal
  • Privacy Policy
  • Refund Policy
  • Terms & Conditions

Copyright 2026 © SeeAPI. All rights reserved.

GROWCRAFT PTE. LTD.

·5 RAFFLES PLACE, #06-00, RAFFLES PLACE MRT STATION, SINGAPORE 048618

Text to VideoImage to VideoReference to Video

Kling 4.0 · Text to Video

Generate video from a text prompt with Kling 4.0. Describe the scene, movement and camera direction, then retrieve the finished video through the asynchronous task API.

Developer API pricing

Provider: SeeAPI

USD estimate: $0.0037 / credit · Estimated equivalent, not an additional charge.

720p: 38.1 credits/sec (≈ $0.14/sec)

1080p: 56.8 credits/sec (≈ $0.21/sec)

Request

POST/v1/generations
AuthorizationSend your API key in the Authorization header using the Bearer scheme.Authorization: Bearer ****************

Header Params

stringrequired

A unique key used to safely retry the same request.

  • Required; maximum 255 characters.
  • Reuse the same key only with the same request body.
max length: 255
Example:
order-20260818-001

Body Params

application/json
stringrequired

The model identifier.

  • Required. Use kling-4-0.
Allowed:kling-4-0
Default:
kling-4-0
Example:
kling-4-0
stringrequired

The generation capability to run.

  • Required. Use text-to-video.
Allowed:text-to-video
Default:
text-to-video
Example:
text-to-video
stringoptional

The public provider to use.

  • Optional. The default provider is seeapi.
Allowed:seeapi
Default:
seeapi
Example:
seeapi
objectrequired

The text prompt and output settings for this generation.

  • Required object. Supply prompt and optionally duration_seconds, resolution and aspect_ratio.

Provider parameters

SeeAPIseeapiDefault Provider
stringrequired

Describe the scene, subjects, actions, lighting and camera movement to generate.

  • Required; maximum 8000 characters.
  • Use a clear sequence of actions that fits the selected output duration.
max length: 8000
Example:
A red fox walks through a misty forest at sunrise. The camera tracks alongside it, with soft light and natural movement.
numberoptional

The desired output video duration in seconds.

  • Optional. Use an integer from 3 to 30; default 5.
min: 3max: 30
Default:
5
stringoptional

The output video resolution.

  • Optional. Allowed values: 720p, 1080p. Default: 720p.
Allowed:720p1080p
Default:
720p
stringoptional

The output frame aspect ratio.

  • Optional. Allowed values: auto, 16:9, 9:16, 1:1, 21:9. Default: auto.
Allowed:auto16:99:161:121:9
Default:
auto
string <uri>optional

An absolute HTTPS URL that receives the terminal generation webhook.

  • Optional; maximum 2048 characters.
  • Verify webhook signatures before processing callbacks.
max length: 2048
Example:
https://client.example.com/webhooks/seeapi

Responses

202The request was accepted for asynchronous processing.
Bodyapplication/json
  • Save generation.id and query the task until it reaches a terminal state.
  • This response does not contain the completed video.
objectrequired

The accepted generation and its current processing status.

stringrequired

The generation identifier. Save it to query status and retrieve the result.

Example:
task_xxx
stringrequired

The model used for this generation.

Example:
kling-4-0
stringrequired

The endpoint used for this generation.

Example:
text-to-video
stringrequired

The selected public provider.

Allowed:seeapi
  • seeapi: SeeAPI
Example:
seeapi
stringrequired

The current generation state. Processing does not mean the video is ready.

Allowed:processing
Example:
processing
numberrequired

The estimated charge in public credits for this request.

Example:
190.5
numberrequired

Credits consumed by this generation so far.

Example:
0
numberrequired

Credits refunded for this generation so far.

Example:
0
string <date-time>required

The time the generation was created, in ISO 8601 format.

Example:
2026-08-18T10:00:00Z
string <date-time>required

The time the generation was last updated, in ISO 8601 format.

Example:
2026-08-18T10:00:00Z
booleanrequired

Whether this is a replay of an earlier request with the same idempotency key.

Example:
false
200An existing generation was returned for an idempotent replay.
Bodyapplication/json
  • The same idempotency key and request body return the original generation rather than creating another one.
objectrequired

The accepted generation and its current processing status.

stringrequired

The generation identifier. Save it to query status and retrieve the result.

Example:
task_xxx
stringrequired

The model used for this generation.

Example:
kling-4-0
stringrequired

The endpoint used for this generation.

Example:
text-to-video
stringrequired

The selected public provider.

Allowed:seeapi
  • seeapi: SeeAPI
Example:
seeapi
stringrequired

The current generation state. Processing does not mean the video is ready.

Allowed:processing
Example:
processing
numberrequired

The estimated charge in public credits for this request.

Example:
190.5
numberrequired

Credits consumed by this generation so far.

Example:
0
numberrequired

Credits refunded for this generation so far.

Example:
0
string <date-time>required

The time the generation was created, in ISO 8601 format.

Example:
2026-08-18T10:00:00Z
string <date-time>required

The time the generation was last updated, in ISO 8601 format.

Example:
2026-08-18T10:00:00Z
booleanrequired

Whether this is a replay of an earlier request with the same idempotency key.

Example:
false
400

Invalid JSON, parameters, Schema, or API Policy

401

Invalid API Key or authentication failed

402

Insufficient credits

403

The current request is not allowed

404

Model, Endpoint, or task not found

409

Idempotency conflict or the same request is still being created

413

Request body is too large

429

Too many requests

503

Service temporarily unavailable

Related Resources

Market Overview

Explore all available models

Credits & Billing

View credit balance, plans, and billing activity

Usage

Review API usage and credit consumption

Query Task Status

After submitting a task, use the unified query endpoint to check progress and retrieve results:

Get Task DetailsLearn how to query task status and retrieve generation results

Submit requests from your server using a Bearer API key. Store the generation identifier and use Get Task Details to check progress and retrieve the result. Acceptance does not mean the video is complete.

Callbacks

Manage the secret used to verify generation webhook signatures. Callback URLs are supplied when you create each generation.

Webhook flow

Callback URL per generation.

Webhook signing key
Code Examples
Request
const response = await fetch("https://api.seeapi.com/v1/generations", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Idempotency-Key": "order-20260818-001",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
  "model": "kling-4-0",
  "endpoint": "text-to-video",
  "provider": "seeapi",
  "input": {
    "prompt": "A red fox walks through a misty forest at sunrise. The camera tracks alongside it, with soft light and natural movement.",
    "duration_seconds": 5,
    "resolution": "720p",
    "aspect_ratio": "auto"
  },
  "callback_url": "https://client.example.com/webhooks/seeapi"
})
});

const result = await response.json();
ResponseHTTP 202
{
  "generation": {
    "id": "task_xxx",
    "model": "kling-4-0",
    "endpoint": "text-to-video",
    "provider": "seeapi",
    "status": "processing",
    "estimated_credits": 190.5,
    "consumed_credits": 0,
    "refunded_credits": 0,
    "created_at": "2026-08-18T10:00:00Z",
    "updated_at": "2026-08-18T10:00:00Z"
  },
  "idempotent": false
}
PreviousGrok Imagine Video · Image to VideoNextKling 4.0 · Image to Video
Request
const response = await fetch("https://api.seeapi.com/v1/generations", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Idempotency-Key": "order-20260818-001",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
  "model": "kling-4-0",
  "endpoint": "text-to-video",
  "provider": "seeapi",
  "input": {
    "prompt": "A red fox walks through a misty forest at sunrise. The camera tracks alongside it, with soft light and natural movement.",
    "duration_seconds": 5,
    "resolution": "720p",
    "aspect_ratio": "auto"
  },
  "callback_url": "https://client.example.com/webhooks/seeapi"
})
});

const result = await response.json();
ResponseHTTP 202
{
  "generation": {
    "id": "task_xxx",
    "model": "kling-4-0",
    "endpoint": "text-to-video",
    "provider": "seeapi",
    "status": "processing",
    "estimated_credits": 190.5,
    "consumed_credits": 0,
    "refunded_credits": 0,
    "created_at": "2026-08-18T10:00:00Z",
    "updated_at": "2026-08-18T10:00:00Z"
  },
  "idempotent": false
}