Check job status
Check progress of up to 100 jobs returned by enhance_photos, stage_photos, apply_recommendations or create_video. Returns status (pending, processing, completed, failed, cancelled), progress, result URLs (signed for 1 hour) and a poll_after_ms hint. Photo edits usually finish in under a minute and videos in a few minutes; wait poll_after_ms between checks instead of calling in a tight loop. Failed jobs are refunded automatically.
Works with view-only access.
AuthorizationBearer <token>An API key from Settings → Developers (pp_live_…), or an OAuth access token.
ids*array<>Job IDs, as an array or comma-separated (max 100).
1 <= items <= 100Check job status
application/json- response
object*stringjobs*array<>The requested jobs in request order. IDs you can't access are left out.
all_done*booleanTrue when every job is completed, failed or cancelled.
poll_after_ms*integerWait this long before polling again. 0 means nothing is left to wait for.
curl -X GET "https://example.com/jobs?ids=497f6eca-6276-4993-bfeb-53cbbbba6f08"{ "object": "job_status", "jobs": [ { "object": "job", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "kind": "enhancement", "status": "pending", "progress": 0, "stage": "string", "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9", "photo_id": "50c42bd2-615e-4fec-a325-0e5c4d3d73d3", "photo_ids": [ "68e4fc1a-5272-4c7c-88ae-00ad654f19af" ], "source_job_id": "82ec7aa8-71eb-48cf-81de-c1b18e40e554", "enhancement_types": [ "string" ], "design_style": "string", "ultra_hd": true, "credits": 0, "picked": true, "watermarked": true, "result": { "url": "http://example.com", "expires_at": "2019-08-24T14:15:22Z" }, "thumbnail": { "url": "http://example.com", "expires_at": "2019-08-24T14:15:22Z" }, "error": { "code": "string", "message": "string" }, "created_at": "2019-08-24T14:15:22Z", "completed_at": "2019-08-24T14:15:22Z" } ], "all_done": true, "poll_after_ms": 0}