Skip to content

Uploads

Create, finalize and revoke private image uploads.

Create upload

Request

Create a private PNG/JPEG/WebP upload (1–10485760 bytes). Finalize within 15 minutes; signed PUT capability lasts 2 hours and cannot overwrite. No remote URL ingestion.

Security
bearerAuth
Headers
Idempotency-Keystring, [ 1 .. 200 ] charactersrequired

Reuse for an uncertain retry of the same intent.

Bodyapplication/jsonrequired
media_typestringrequired
Enum:"image/png""image/jpeg""image/webp"
sizeinteger, [ 1 .. 10485760 ]required
curl -i -X POST \
  https://api-docs.shuffll.com/_mock/engage/openapi/v1/uploads \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: string' \
  -d '{
    "media_type": "image/png",
    "size": 1
  }'

Responses

Terminal operation job.

Headers
X-Request-Idstring, (uuid)required

Identifier for tracing this response.

Locationstring, (uri)required

Absolute URL of the operation job, from the trusted server origin.

ETagstring

Quoted opaque revision when the resource or job result has one.

Bodyapplication/json
jobobjectrequired
uploadobjectrequired
capabilityobject or nullrequired
Any of:
Response
{ "job": { "id": "string", "command": "string", "resourceId": "string", "state": "queued", "createdAt": "string", "updatedAt": "string", "result": { … }, "pollAfterSeconds": 0 }, "upload": { "id": "string", "status": "pending", "media_type": "image/png", "size": -9007199254740991, "finalize_before": "string", "upload_capability_validity_seconds": 7200, "revision": "string" }, "capability": { "url": "http://example.com", "method": "PUT", "content_type": "string", "issued_at": "string", "validity_seconds": 7200 } }