Skip to content
Pixii

Jobs

Check the status of a job and retrieve its output when complete.

All Pixii generation endpoints are asynchronous. They return a job_id immediately and process in the background. Use the Jobs API to check a job’s status and retrieve its output when complete.

Get a job

GET /v2/api/jobs/{job_id}

Response fields

FieldTypeDescription
job_idstringUnique job identifier
job_typestringcreate_listing, create_anything, scale, creative_strategy or download_visuals
brand_idnumberThe brand the job runs in. See Brands
session_idstringThe Pixii session of the job. Present for create_listing and create_anything jobs from submission on
statusstringCurrent job status, see below
created_atstringISO 8601 timestamp when the job was submitted
started_atstring | nullISO 8601 timestamp when processing began
completed_atstring | nullISO 8601 timestamp when the job finished
credit_costnumberCredits charged for this job
credits_refundednumberCredits refunded so far, for a failed job or for failed visuals inside a completed one
errorobject | nullcode and message when status is failed. See job errors
outputobject | nullJob output. null until status is completed

Job statuses

pending Job received and queued
processing Job is actively running
completed output is ready
failed Job failed, check the error object

Output

The shape of output depends on the endpoint that created the job. Each endpoint page documents its own output:

  • Create listing: product, session_id, listing_type, campaign_ads[], optional creative_strategy
  • Create anything: product, session_id, campaign_ads[]
  • Scale: factory_id, scale_mode, zip_url, products[] each with campaign_ads[]
  • Creative strategy: asin, country_code, creative_strategy
  • Download visuals: product, session_ids, visual_count, zip_url

Campaign ads

Wherever a job returns generated visuals, each one is a campaign ad:

FieldTypeDescription
idstringId of the campaign ad inside Pixii
previewstring | nullSigned URL of the image. For a video ad this is the poster frame. null if the ad failed
video_urlstring | nullSigned URL of the MP4 for video ads, null for image ads
platformstringAmazon, Amazon Mobile, Shopify, Walmart, TikTok or Instagram
asset_typestringWhat the visual is: Main Image, Product Photo, Title and Bullets, an A+ format, a video format or an Amazon Ads format
deliverable_numbernumberThe deliverable the ad belongs to. Every requested deliverable (one per format) gets its own number, in request order
grid_ordernumber | nullPosition of the ad in the app grid
statusstringcompleted or failed

Partial failures: if some ads fail while others succeed, the job status is still completed. Failed ads have status: "failed" and a null preview, and their credits are refunded; check credits_refunded on the job.

Signed URLs expire. They are minted fresh each time you read the job, so poll the job again to get new links. The job record itself does not expire.

Errors

CodeHTTPDescription
VALIDATION_ERROR400job_id is not a valid UUID
UNAUTHORIZED401Missing or invalid API key
JOB_NOT_FOUND404Job not found or does not belong to your organization