Skip to main content
Base URL: https://platform.runblob.io

GET /v1/kling/o3-photo/generations/

Retrieve the current status and result of an image generation task.
generation_id
string
required
The unique identifier returned from the generate request
  • pending - Task created, waiting in queue
  • processing - Image is being generated
  • completed - Generation finished, image ready
  • failed - Generation failed (see webhook for error details)
curl -X GET https://platform.runblob.io/v1/kling/o3-photo/generations/550e8400-e29b-41d4-a716-446655440000 -H "Authorization: Bearer YOUR_API_KEY"

Response Examples

{
  "generation_id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "processing",
  "prompt": "A futuristic city with flying cars",
  "image_url": null,
  "model": "kling_o3_photo"
}
Keep polling this endpoint every 3-5 seconds until status changes to completed or failed.Expected timeline:
  • pendingprocessing: 10-30 seconds
  • processingcompleted: 1-3 minutes

Response Fields

generation_id
string
Unique identifier for this generation
status
string
Current status: pending, processing, completed, or failed
prompt
string
The original text prompt used for generation
image_url
string | null
Direct URL to the generated image (only available when status is completed)
model
string
Model identifier: kling_o3_photo

Polling Best Practices

1

Start Polling After Generation

Wait 5-10 seconds before your first status check to give the system time to queue the task
2

Use Appropriate Intervals

Poll every 3-5 seconds. Faster polling won’t speed up generation and may hit rate limits
3

Set a Timeout

Stop polling after 5 minutes. If still not completed, assume failure and check error logs
4

Use Webhooks for Production

For production apps, use webhooks instead of polling to reduce latency and API calls
Rate Limits: Maximum 60 status checks per minute per API key. Use webhooks to avoid hitting this limit.