Models API

Get prediction status

Check the status of a prediction request. This is the second step in the asynchronous workflow.
When the prediction is completed successfully, the response will include download URLs for the generated content (images or videos).

Rate limit: 30,000 requests per minute.

get
https://api.pruna.ai/v1/predictions/status/{id}

Path Parameters

idstringrequired

The prediction ID returned from the initial request

Example:1knpbkf075rme0csjqr987hg4w

Response

application/json

Prediction status retrieved successfully

PredictionStatusResponse

statusstringrequired

Current status of the prediction

Allowed values:startingprocessingsucceededfailedcanceled

Example:processing

generation_urlstring

URL to download the generated content (available when status is ‘succeeded’)

Example:https://api.pruna.ai/v1/predictions/delivery/xezq/52UGYRrRfqViaKmvYsEnENTh0qLDAWHptQ8jOnEHu7XC6AtKA/output.mp4

messagestring

Status message

Example:Generation in progress

errorstring

Error details (available when status is ‘failed’)

Example:Number of samples, -5, must be non-negative.

get/v1/predictions/status/{id}
 
application/json

File Management

Upload files (images or videos) to be used as input for predictions. Uploaded files are stored temporarily and can be referenced in prediction requests by their URL.

Upload a file

Upload a file (image or video) to be used as input for predictions. The uploaded file will be stored temporarily and can be referenced in prediction requests by its URL.

Uploaded files are available for a limited time and are automatically deleted after expiration. Use the returned URL in your prediction input fields that accept file URLs.

Rate limit: 10000 requests per minute

Example with curl:

curl -X POST "https://api.pruna.ai/v1/files" \
  -H "apikey: YOUR_API_KEY" \
  -F "content=@/path/to/your/file.jpg"

Note: Use -F (form) with @ prefix to upload a file from your local filesystem. The file path should be absolute or relative to your current directory.

post
https://api.pruna.ai/v1/files

Body

multipart/form-data
contentstringrequired

The file to upload (image or video)

Response

application/json

File uploaded successfully

FileUploadResponse

idstringrequired

Unique identifier for the uploaded file

Example:fqadqq42xq

namestringrequired

Original filename

Example:test.jpg

content_typestringrequired

MIME type of the uploaded file

Example:image/jpeg

sizeintegerrequired

File size in bytes

Example:185093

etagstring

Entity tag for cache validation

Example:"14e9a51deaac6bee2dd8b5c52d7d0b5f"

checksumsobject

File integrity checksums

Show Child Parameters
metadataobject

Additional file metadata (varies by file type)

Show Child Parameters
created_atstring(date-time)required

Timestamp when the file was uploaded

Example:2025-01-08T18:51:26.729Z

expires_atstring(date-time)required

Timestamp when the file will expire and be deleted

Example:2025-01-09T18:51:26.729Z

urlsobjectrequired

URLs to access the uploaded file

Show Child Parameters
post/v1/files

Body

{ "content": "content" }
 
application/json

Content Delivery

Download generated content files (images or videos). Content is typically available for 24 hours after generation.

Download generated content

Download the generated content file. This is the third and final step in the workflow.
Use the URL provided in the prediction status response to download your generated content.

Rate limit: 10,000 requests per minute.

get
https://api.pruna.ai/v1/predictions/delivery/{path}

Path Parameters

pathstringrequired

The delivery path returned in the prediction status response

Example:xezq/52UGYRrRfqViaKmvYsEnENTh0qLDAWHptQ8jOnEHu7XC6AtKA/output_42_0.jpeg

Response

Content file downloaded successfully

string

Generated image file

get/v1/predictions/delivery/{path}