Returns one normalized asset. Deleted or cross-team assets return not_found.
Authorization
bearerAuth assets:readIn: header
Scope: assets:read
Path Parameters
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/assets/string"{ "id": "string", "type": "image", "name": "string", "url": "http://example.com", "thumbnailUrl": "http://example.com", "width": 0, "height": 0, "duration": 0, "mimeType": "string", "source": "string", "sourceProcessId": "string", "favorite": true, "createdAt": "2019-08-24T14:15:22Z", "links": { "self": "string" }}{ "error": { "code": "string", "message": "string", "requestId": "string" }}{ "error": { "code": "string", "message": "string", "requestId": "string" }}{ "error": { "code": "string", "message": "string", "requestId": "string" }}{ "error": { "code": "string", "message": "string", "requestId": "string" }}Create a media process POST
Starts a generation process and charges team credits. V1 types: image-generation, video-generation, image-upscale, video-upscale. The model must match the type (see GET /models). Always send an Idempotency-Key: retries with the same key and body return the original process instead of double-charging; the same key with a different body returns idempotency_conflict. input is validated per process type AND against the model's published capabilities (aspectRatios, resolutions, videoLengths from GET /models) — unsupported values are rejected with invalid_request, never silently coerced. Internal fields (batchId, filteringId, agent context) are ignored. metadata (flat string/number/boolean/null values, max 16 keys) is echoed back on reads. Optional webhookUrl receives a one-shot completion/failure notification.
Get team credits GET
Returns the team-level credit balance shared by the API and app.