Skip to main content
POST
Submit a run for a model slug
Submit inference for any model slug. The response is always a Run object with run_id (not task_id).
Each model page under Image / Video / Audio has a Try it playground with that model’s input schema pre-filled.

Request body

object
required
Model-specific parameters. See the model page Parameters section. Fields marked with * are required.
string
Optional HTTPS URL — apisale POSTs the terminal Run JSON when the run finishes.
boolean
When true, the connection blocks until the run reaches a terminal state (same run_id response shape).

Example

Response (201)

string
required
Save this to poll with GET /v1/runs/{run_id}.
string
required
queued (typical async) or succeeded / failed (sync or immediate).
object
null until status is succeeded.
object
{ amount, currency } when billed.

Response headers

Errors

Full catalog: Errors & limits.

Next step

Poll the run or read Runs lifecycle.

Authorizations

Authorization
string
header
required

API key: Key sk-xxx or Bearer sk-xxx

Body

application/json

The body is of type object.

Response

201 - application/json

Run accepted

run_id
string
required

Unique run identifier

endpoint
string
required

Model slug

model
string
required
capability
string
required
mode
string
required
status
enum<string>
required
Available options:
queued,
processing,
succeeded,
failed,
timeout,
cancelled
created_at
string<date-time>
required
output
object | null
error
object | null
billing
object | null
started_at
string<date-time> | null
completed_at
string<date-time> | null
elapsed_ms
number | null