{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Phota API Documentation","colors":{"primary":"#E8E800","light":"#8B8000","dark":"#E8E800"},"logo":{"light":"https://mintcdn.com/photalabs/L7djY_mkPku9dwX0/logo/logo_type_bw.png?fit=max\u0026auto=format\u0026n=L7djY_mkPku9dwX0\u0026q=85\u0026s=14aad6626f4c64b99b3b4bc2175e7bd3","dark":"https://mintcdn.com/photalabs/nOR7RrMKc5yD93HH/logo/logo_type.svg?fit=max\u0026auto=format\u0026n=nOR7RrMKc5yD93HH\u0026q=85\u0026s=f337695020142dbad484bae143c9eccb"},"favicon":"https://mintcdn.com/photalabs/L7djY_mkPku9dwX0/logo/favicon.png?fit=max\u0026auto=format\u0026n=L7djY_mkPku9dwX0\u0026q=85\u0026s=b71425d7eaa9cb15646bb3ee78e255b1","navbar":{"links":[{"href":"https://discord.gg/8aPcEsWx2R","label":"Join our Discord"}],"primary":{"type":"button","label":"Developer Portal","href":"https://platform.photalabs.com"}},"footer":{"socials":{"x":"https://x.com/PhotaLabs","linkedin":"https://www.linkedin.com/company/phota-labs","youtube":"https://www.youtube.com/@photalabs","instagram":"https://www.instagram.com/photalabs","discord":"https://discord.gg/mde7sTAQSB"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Documentation","icon":"book-open-cover","href":"/"},{"anchor":"Blog","icon":"newspaper","href":"https://www.photalabs.com/blog"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"photalabs","hasAudioNarration":false,"actualSubdomain":"photalabs","customDomains":["docs.photalabs.com"],"gitSource":{"type":"github","owner":"photalabs","repo":"retina","deployBranch":"main","contentDirectory":"docs/mintlify","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ac718c5c9c6dfbb50f87735","collectionId":"e1142d01-e52a-4bb0-8102-045435b87282","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ac718c5c9c6dfbb50f87735"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ac718c5c9c6dfbb50f87735","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API reference","count":15},{"language":"default","tag":"Guides","count":14},{"language":"default","tag":"Profiles","count":6},{"language":"default","tag":"Studio","count":6},{"language":"default","tag":"Getting started","count":3},{"language":"default","tag":"Resources","count":3},{"language":"default","tag":"Overview","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".footer-legal{display:flex;align-items:center;gap:1.5rem;font-size:0.875rem;margin-left:auto}#topbar-cta-button,#topbar-cta-button *{color:#000000!important}.nav-anchor:hover .icon,.nav-anchor:hover .icon *{color:#000000!important}#sidebar-content a.text-primary{color:#8B8000!important}.dark #sidebar-content a.text-primary{color:#E8E800!important}.eyebrow.text-primary{color:#8B8000!important}.dark .eyebrow.text-primary{color:#E8E800!important}#table-of-contents .text-primary,.toc-item.text-primary,#table-of-contents a.text-primary{color:#8B8000!important;font-weight:600!important}.dark #table-of-contents .text-primary,.dark .toc-item.text-primary,.dark #table-of-contents a.text-primary{color:#E8E800!important;font-weight:normal!important}.profile-tips-icons .profile-tips-icon,.profile-tips-icons .profile-tips-icon svg{color:#8B8000!important;fill:#8B8000!important}.dark .profile-tips-icons .profile-tips-icon,.dark .profile-tips-icons .profile-tips-icon svg{color:#E8E800!important;fill:#E8E800!important}.icon,.icon svg,p svg,span svg{vertical-align:middle!important;position:relative!important;top:-0.1em!important}.ba-carousel{position:relative!important;overflow:hidden!important;margin:16px 0!important;padding-bottom:28px!important}.ba-carousel.ba-carousel-compact{max-width:420px!important;margin-left:auto!important;margin-right:auto!important}.ba-carousel.ba-carousel-compact .ba-card img{object-fit:cover!important}.ba-carousel.ba-carousel-compact .ba-prompt{font-size:13px!important}.ba-radio{display:none!important}.ba-slides{display:flex!important;transition:transform 0.35s ease!important;position:relative!important}.ba-slide{min-width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:1fr auto!important;gap:12px!important;box-sizing:border-box!important;align-items:stretch!important}.ba-slide.ba-slide-single{grid-template-columns:1fr!important}.ba-slide.ba-slide-2before{grid-template-columns:1.4fr 1fr!important;align-items:stretch!important}.ba-card-multi{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important}.ba-card-multi img{width:100%!important;height:100%!important;object-fit:cover!important}.ba-slide.ba-slide-2before .ba-card{min-height:0!important;height:100%!important}.ba-slide.ba-slide-2before .ba-card img{height:100%!important;object-fit:cover!important}.ba-remix-eq{display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important;max-width:440px!important;margin:16px auto!important}.ba-remix-eq>p,.ba-remix-inputs>p{display:contents!important}.ba-remix-inputs{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:100%!important}.ba-remix-inputs .ba-card{flex:1 1 0!important;min-width:0!important;aspect-ratio:3 / 4!important}.ba-remix-inputs .ba-card img{height:100%!important;object-fit:cover!important}.ba-carousel.ba-remix-output{width:62%!important;margin:0 auto!important;padding-bottom:24px!important}.ba-remix-output .ba-slides{align-items:flex-start!important}.ba-remix-output .ba-card{aspect-ratio:3 / 4!important;max-width:100%!important}.ba-remix-output .ba-card img{height:100%!important;object-fit:cover!important}.ba-op{flex:0 0 auto!important;font-size:32px!important;font-weight:400!important;color:#555!important;line-height:1!important;text-align:center!important;user-select:none!important}.ba-op.ba-op-stack{margin:2px 0!important}.dark .ba-op{color:#bbb!important}.ba-card{position:relative!important;border:2px solid #e0e0e0!important;border-radius:12px!important;overflow:hidden!important;padding:0!important;margin:0!important;display:flex!important;flex-direction:column!important}.ba-card>*:not(.ba-label):not(.ba-prompt):not(img){display:contents!important}.ba-card p{display:contents!important}.dark .ba-card{border-color:#333!important}.ba-card.ba-after{border-color:rgba(139, 128, 0, 0.4)!important}.dark .ba-card.ba-after{border-color:rgba(232, 232, 0, 0.3)!important}.ba-card img{width:100%!important;height:100%!important;flex:1!important;min-height:0!important;display:block!important;object-fit:cover!important;vertical-align:bottom!important;margin:0!important;padding:0!important;border:none!important}.ba-label{position:absolute!important;top:8px!important;left:8px!important;z-index:10!important;font-size:11px!important;font-weight:500!important;text-transform:uppercase!important;letter-spacing:0.05em!important;color:rgba(255, 255, 255, 0.9)!important;background:rgba(0, 0, 0, 0.5)!important;padding:2px 8px!important;border-radius:4px!important;line-height:1.4!important}.ba-prompt{grid-column:1 / -1!important;display:block!important;text-align:center!important;font-size:15px!important;font-style:italic!important;color:#666!important;padding:4px 12px 0!important;line-height:1.4!important}.dark .ba-prompt{color:#aaa!important}.ba-dot{width:8px!important;height:8px!important;border-radius:50%!important;background:#ccc!important;cursor:pointer!important;transition:background 0.2s, transform 0.2s!important;display:inline-block!important}.ba-dot:hover{background:#999!important;transform:scale(1.2)!important}.dark .ba-dot{background:#555!important}.dark .ba-dot:hover{background:#888!important}.ba-dot.ba-dot-active{background:#333!important;transform:scale(1.2)!important}.dark .ba-dot.ba-dot-active{background:#fff!important}.ba-radio:nth-of-type(1):checked~.ba-slides{transform:translateX(0%)!important}.ba-radio:nth-of-type(2):checked~.ba-slides{transform:translateX(-100%)!important}.ba-radio:nth-of-type(3):checked~.ba-slides{transform:translateX(-200%)!important}.ba-radio:nth-of-type(4):checked~.ba-slides{transform:translateX(-300%)!important}.ba-radio:nth-of-type(5):checked~.ba-slides{transform:translateX(-400%)!important}.ba-controls{display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important;margin-top:12px!important}.ba-arrow{width:24px!important;height:24px!important;border-radius:50%!important;background:#ddd!important;cursor:pointer!important;transition:background 0.2s, opacity 0.2s!important;position:relative!important;flex-shrink:0!important;display:inline-flex!important}.ba-arrow:hover{background:#bbb!important}.dark .ba-arrow{background:rgba(255, 255, 255, 0.25)!important}.dark .ba-arrow:hover{background:rgba(255, 255, 255, 0.45)!important}.ba-arrow::after{content:\"\"!important;position:absolute!important;top:50%!important;width:6px!important;height:6px!important;border-top:2px solid #444!important;border-right:2px solid #444!important}.dark .ba-arrow::after{border-top-color:#fff!important;border-right-color:#fff!important}.ba-arrow-left::after{left:55%!important;transform:translate(-50%, -50%) rotate(-135deg)!important}.ba-arrow-right::after{left:45%!important;transform:translate(-50%, -50%) rotate(45deg)!important}.ba-arrow-left,.ba-arrow-right{visibility:visible!important}.ba-arrow-left.ba-disabled,.ba-arrow-right.ba-disabled{visibility:hidden!important}.card{position:relative!important}.card>div{position:static!important}.card>div>div{position:static!important}.photo-badge{position:absolute!important;top:8px!important;left:8px!important;font-size:1.2rem!important;line-height:1!important;z-index:10!important;display:block!important}"}],"page":{"pagePath":"api/studio/get-job-status","slug":"/api/studio/get-job-status","pageMetadata":{"title":"Get Job Status","description":"Poll an async edit/generate/enhance/remix job's status.","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json get /v2/phota/jobs/{job_id}","href":"/api/studio/get-job-status","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Poll an async edit/generate/enhance/remix job’s status.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get Job Status","description":"Poll an async edit/generate/enhance/remix job's status.","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json get /v2/phota/jobs/{job_id}","href":"/api/studio/get-job-status","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/photalabs/ebbc69ca773a74a8/carousel.js","/_mintlify/custom/photalabs/70023e3e1db044f5/footer.js"],"openApiReferenceData":{"operation":{"tags":["Studio"],"summary":"Get Job Status","description":"Poll an async edit/generate/enhance/remix job's status.","operationId":"get_job_status_v2_phota_jobs__job_id__get","security":["561dab39-2c9d-4dcf-9693-af0dfcd50fb9"],"parameters":["4f974fcc-3e29-4c1c-b3e2-1251134111c0"],"responses":{"200":"fff8fe0a-e5a7-409d-9286-0d2b35d05e47","401":"28db30b8-d2ff-4937-9da8-049c07c4aad7","403":"6d999080-4514-422d-9771-8c3eacf13671","404":"4925da98-5f5b-489e-bd30-f7cd69e60960","410":"9e89a649-7f93-435a-afcc-20c9ba34b053","422":"3169b992-118d-4bf1-b9b3-e3fb01af2f7e","500":"a4b4c1b3-b388-496d-bd08-5f1d2ff84cf0","503":"6c1c4dab-d617-4596-9a6e-e7212e033c2f"},"method":"get","type":"path","servers":["33d146f3-b262-48bf-8820-deab79768ca3"],"path":"/v2/phota/jobs/{job_id}","baseUrlOptions":["https://api.photalabs.com"],"title":"Get Job Status","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"4f974fcc-3e29-4c1c-b3e2-1251134111c0":{"name":"job_id","in":"path","required":true,"schema":{"type":"string","title":"Job Id","isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"responses":{"fff8fe0a-e5a7-409d-9286-0d2b35d05e47":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"job_id":{"type":"string","title":"Job Id","isRequired":true,"uniqueKey":"job_id","typeLabel":"string"},"status":{"type":"string","enum":["pending","running","succeeded","failed"],"title":"Status","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"operation":{"type":"string","enum":["edit","generate","enhance","remix"],"title":"Operation","isRequired":true,"uniqueKey":"operation","typeLabel":"enum\u003cstring>"},"created_at":{"type":"string","format":"date-time","title":"Created At","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"result":{"oneOf":[{"type":"object","title":"EditResponse","description":"The edit/generate result (download_urls populated) once status is 'succeeded'.","required":["known_subjects"],"properties":{"known_subjects":{"properties":{"counts":{"additionalProperties":{"type":"integer","uniqueKey":"result.oneOf.0.known_subjects.counts.additionalProperties","typeLabel":"integer"},"type":"object","title":"Counts","description":"Mapping of profile ID to the number of times that subject was generated.","uniqueKey":"result.oneOf.0.known_subjects.counts","typeLabel":"Counts · object"}},"type":"object","title":"KnownGeneratedSubjectCounts","description":"Dictionary mapping a known subject's `profile_id` to the number of times they were generated. If multiple variations are generated, this will be the aggregated count across all variations.","isRequired":true,"uniqueKey":"result.oneOf.0.known_subjects","typeLabel":"KnownGeneratedSubjectCounts · object"},"images":{"items":{"type":"string","uniqueKey":"result.oneOf.0.images.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Images","description":"Output image(s) as raw base64-encoded strings. Format matches the requested output_format. Populated when response_mode='bytes', empty otherwise.","uniqueKey":"result.oneOf.0.images","typeLabel":"string[]"},"download_urls":{"items":{"type":"string","uniqueKey":"result.oneOf.0.download_urls.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Download Urls","description":"Signed download URLs for each output image (24-hour expiry). Populated when response_mode='urls', empty otherwise.","uniqueKey":"result.oneOf.0.download_urls","typeLabel":"string[]"}},"uniqueKey":"result.oneOf.0","typeLabel":"EditResponse · object"},{"type":"null","description":"The edit/generate result (download_urls populated) once status is 'succeeded'.","uniqueKey":"result.oneOf.1","typeLabel":"null"}],"uniqueKey":"result","typeLabel":"EditResponse · object | null"},"error":{"oneOf":[{"type":"object","title":"JobError","description":"Populated once status is 'failed'.","required":["code","message"],"properties":{"code":{"oneOf":[{"type":"string","title":"PhotaErrorCode","description":"Machine-readable error codes returned by the Phota API.\n\nClients can use these codes to programmatically react to specific error\ntypes without parsing human-readable messages.\n\nAttributes:\n CONTENT_MODERATION: Content was blocked by a safety filter.\n SERVICE_UNAVAILABLE: Upstream resource exhaustion or rate limit.\n INPUT_IMAGE_FETCH_FAILED: A caller-supplied input image URL could not\n be downloaded after retries because the URL's host/CDN kept\n failing (timeouts or 5xx from the image host). Retryable, but the\n failure is upstream of Phota — the URL's host, not this service.\n NOT_FOUND: Generic resource not found or no longer available (unknown\n route, unknown job, or an expired job result).\n PROFILE_NOT_FOUND: The requested profile does not exist.\n PROFILE_NOT_READY: The profile exists but training has not completed.\n INVALID_REQUEST: Malformed input, missing fields, or bad parameters.\n NO_IMAGE_GENERATED: The model completed without producing an image (a\n soft refusal or transient glitch — no safety verdict). The request\n is not charged; retrying may succeed.\n TIMEOUT: The request exceeded its synchronous time budget; resubmit\n with ``async: true`` and poll for the result.\n INTERNAL_ERROR: An unexpected internal error (genuine bug).\n MIXED_PROFILE_MODEL_VERSIONS: The request references profiles trained on\n different model versions (``v1`` and ``v2``); a request may only use\n profiles of one model version.","enum":["CONTENT_MODERATION","SERVICE_UNAVAILABLE","INPUT_IMAGE_FETCH_FAILED","NOT_FOUND","PROFILE_NOT_FOUND","PROFILE_NOT_READY","INVALID_REQUEST","NO_IMAGE_GENERATED","TIMEOUT","INTERNAL_ERROR","MIXED_PROFILE_MODEL_VERSIONS"],"isRequired":true,"uniqueKey":"error.oneOf.0.code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"string","title":"EditJobErrorCode","description":"Job-infrastructure failure codes with no synchronous-pipeline equivalent.\n\nPipeline failures reuse the synchronous customer-facing taxonomy\n(``api.schema.phota.PhotaErrorCode``) so an async failure surfaces the same\nstable code as its sync twin. These members cover the job-infrastructure\nfailure modes the sync path never produces:\n\nAttributes:\n INSTANCE_DIED: A claimed (``RUNNING``) job did not complete: the run_job\n handler's attempt ceiling fired, the run failed after the claim, or\n the instance died mid-run and the sweep reaped it.\n DISPATCH_FAILED: No Cloud Tasks delivery ever claimed a ``PENDING`` job\n within the sweep's abandoned window.","enum":["instance_died","dispatch_failed"],"isRequired":true,"uniqueKey":"error.oneOf.0.code.oneOf.1","typeLabel":"enum\u003cstring>"}],"isRequired":true,"uniqueKey":"error.oneOf.0.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","title":"Message","description":"Human-readable error description.","isRequired":true,"uniqueKey":"error.oneOf.0.message","typeLabel":"string"}},"uniqueKey":"error.oneOf.0","typeLabel":"JobError · object"},{"type":"null","description":"Populated once status is 'failed'.","uniqueKey":"error.oneOf.1","typeLabel":"null"}],"uniqueKey":"error","typeLabel":"JobError · object | null"},"completed_at":{"oneOf":[{"type":"string","title":"Completed At","format":"date-time","uniqueKey":"completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","title":"Completed At","uniqueKey":"completed_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"completed_at","typeLabel":"string\u003cdate-time> | null"}},"type":"object","required":["job_id","status","operation","created_at"],"title":"JobStatus","description":"Status of an async edit/generate job (GET /v1/jobs/{job_id}).","uniqueKey":"","typeLabel":"JobStatus · object"},"examples":{"Example":{"title":"Example","value":{"job_id":"\u003cstring>","status":"pending","operation":"edit","created_at":"2023-11-07T05:31:56Z","result":{"known_subjects":{"counts":{}},"images":["\u003cstring>"],"download_urls":["\u003cstring>"]},"error":{"code":"CONTENT_MODERATION","message":"\u003cstring>"},"completed_at":"2023-11-07T05:31:56Z"}}},"exampleType":"generated"}},"exampleType":"generated"},"28db30b8-d2ff-4937-9da8-049c07c4aad7":{"description":"Invalid API key in the X-API-Key header.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"6d999080-4514-422d-9771-8c3eacf13671":{"description":"Missing X-API-Key header (no API key provided).","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"4925da98-5f5b-489e-bd30-f7cd69e60960":{"description":"Resource not found.","content":{"application/json":{"schema":{"properties":{"detail":{"type":"string","title":"Detail","description":"Human-readable error message.","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"code":{"type":"string","enum":["NOT_FOUND","PROFILE_NOT_FOUND","PROFILE_NOT_READY"],"title":"Code","description":"Machine-readable error code.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"request_id":{"type":"string","title":"Request Id","description":"Unique request identifier for support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"type":"object","required":["detail","code","request_id"],"title":"PhotaError404Response","description":"Error response for 404 Not Found.","uniqueKey":"","typeLabel":"PhotaError404Response · object"},"examples":{"Example":{"title":"Example","value":{"detail":"\u003cstring>","code":"NOT_FOUND","request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"9e89a649-7f93-435a-afcc-20c9ba34b053":{"description":"Job result has expired.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"3169b992-118d-4bf1-b9b3-e3fb01af2f7e":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"type":"array","title":"Location","isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"type":"string","title":"Message","isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"type":"string","title":"Error Type","isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"type":"array","title":"Detail","uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"type":"object","title":"HTTPValidationError","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["\u003cstring>"],"msg":"\u003cstring>","type":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"a4b4c1b3-b388-496d-bd08-5f1d2ff84cf0":{"description":"Internal error.","content":{"application/json":{"schema":{"properties":{"detail":{"type":"string","title":"Detail","description":"Human-readable error message.","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"code":{"type":"string","const":"INTERNAL_ERROR","title":"Code","description":"Machine-readable error code.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","description":"Unique request identifier for support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"type":"object","required":["detail","code","request_id"],"title":"PhotaError500Response","description":"Error response for 500 Internal Server Error.","uniqueKey":"","typeLabel":"PhotaError500Response · object"},"examples":{"Example":{"title":"Example","value":{"detail":"\u003cstring>","code":"INTERNAL_ERROR","request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"6c1c4dab-d617-4596-9a6e-e7212e033c2f":{"description":"Service temporarily unavailable.","content":{"application/json":{"schema":{"properties":{"detail":{"type":"string","title":"Detail","description":"Human-readable error message.","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"code":{"type":"string","enum":["SERVICE_UNAVAILABLE","INPUT_IMAGE_FETCH_FAILED"],"title":"Code","description":"Machine-readable error code.","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"request_id":{"type":"string","title":"Request Id","description":"Unique request identifier for support.","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"type":"object","required":["detail","code","request_id"],"title":"PhotaError503Response","description":"Error response for 503 Service Unavailable.","uniqueKey":"","typeLabel":"PhotaError503Response · object"},"examples":{"Example":{"title":"Example","value":{"detail":"\u003cstring>","code":"SERVICE_UNAVAILABLE","request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"561dab39-2c9d-4dcf-9693-af0dfcd50fb9":{"APIKeyHeader":{"type":"apiKey","in":"header","name":"X-API-Key","scopes":[]}}},"servers":{"33d146f3-b262-48bf-8820-deab79768ca3":{"url":"https://api.photalabs.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-API-Key","scopes":[]},"schema":{"title":"X-API-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"APIKeyHeader","name":"X-API-Key"}],"title":"APIKeyHeader"}]},"originalFileLocation":"https://api.photalabs.com/v2/phota/openapi.json"},"subdomain":"photalabs","siteName":"Phota API Documentation","title":"Get Job Status - Phota API Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-18T01:40:35.935Z","originalFileLocation":"api/studio/get-job-status.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Poll an async edit/generate/enhance/remix job\u0026#x27;s status.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Phota API Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get Job Status - Phota API Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Poll an async edit/generate/enhance/remix job\u0026#x27;s status.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Phota API Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.photalabs.com/api/studio/get-job-status\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://photalabs.mintlify.app/_mintlify/api/og/v2?division=Studio\u0026amp;title=Get+Job+Status\u0026amp;description=Poll+an+async+edit%2Fgenerate%2Fenhance%2Fremix+job%27s+status.\u0026amp;theme=24f59818a6fa135642d0d8b9\u0026amp;signature=c2695a37be9f3494effccd7b27ccf94556a54437d8b97eaec6e20318b102ee30\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get Job Status - Phota API Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Poll an async edit/generate/enhance/remix job\u0026#x27;s status.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://photalabs.mintlify.app/_mintlify/api/og/v2?division=Studio\u0026amp;title=Get+Job+Status\u0026amp;description=Poll+an+async+edit%2Fgenerate%2Fenhance%2Fremix+job%27s+status.\u0026amp;theme=24f59818a6fa135642d0d8b9\u0026amp;signature=c2695a37be9f3494effccd7b27ccf94556a54437d8b97eaec6e20318b102ee30\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/photalabs/Ti52ZapeEY9W9trY/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Phota API Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#E8E800\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.photalabs.com/api/studio/get-job-status\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api/studio/get-job-status.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.photalabs.com/#organization\",\"name\":\"Phota API Documentation\",\"url\":\"https://docs.photalabs.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/photalabs/L7djY_mkPku9dwX0/logo/logo_type_bw.png?fit=max\u0026auto=format\u0026n=L7djY_mkPku9dwX0\u0026q=85\u0026s=14aad6626f4c64b99b3b4bc2175e7bd3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.photalabs.com#website\",\"name\":\"Phota API Documentation\",\"url\":\"https://docs.photalabs.com\",\"publisher\":{\"@id\":\"https://docs.photalabs.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.photalabs.com/api/studio/get-job-status#webpage\",\"url\":\"https://docs.photalabs.com/api/studio/get-job-status\",\"name\":\"Get Job Status\",\"description\":\"Poll an async edit/generate/enhance/remix job's status.\",\"dateModified\":\"2026-09-18T01:40:35.935Z\",\"isPartOf\":{\"@id\":\"https://docs.photalabs.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.photalabs.com/api/studio/get-job-status#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.photalabs.com/api/studio/get-job-status#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Studio\",\"item\":\"https://docs.photalabs.com/api/studio/edit\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get Job Status\",\"item\":\"https://docs.photalabs.com/api/studio/get-job-status\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.photalabs.com/api/studio/get-job-status#apireference\",\"headline\":\"Get Job Status\",\"name\":\"Get Job Status\",\"description\":\"Poll an async edit/generate/enhance/remix job's status.\",\"url\":\"https://docs.photalabs.com/api/studio/get-job-status\",\"mainEntityOfPage\":{\"@id\":\"https://docs.photalabs.com/api/studio/get-job-status#webpage\"},\"dateModified\":\"2026-09-18T01:40:35.935Z\",\"publisher\":{\"@id\":\"https://docs.photalabs.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.photalabs.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Phota API Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Phota API Documentation","nav":{"global":{"anchors":[{"anchor":"Documentation","icon":"book-open-cover","href":"/"},{"anchor":"Blog","icon":"newspaper","href":"https://www.photalabs.com/blog"}]},"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"Getting started","pages":[{"title":"Quickstart","href":"/api/quickstart"},{"title":"Authentication","href":"/api/authentication"},{"title":"Asynchronous requests","href":"/api/async-requests"}]},{"group":"Studio","pages":[{"title":"Edit","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json post /v2/phota/edit","href":"/api/studio/edit"},{"title":"Generate","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json post /v2/phota/generate","href":"/api/studio/generate"},{"title":"Enhance","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json post /v2/phota/enhance","href":"/api/studio/enhance"},{"title":"Remix","description":"Restyle an image to match a reference image.\n\nProvide an input image and a reference image; the output keeps the\ninput's content rendered in the reference's style. Optional profile IDs\npreserve recognized identities, and an optional prompt steers the remix.\nOutput resolution is fixed at 2K. Returns base64 images or signed\ndownload URLs.","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json post /v2/phota/remix","href":"/api/studio/remix"},{"title":"Get Job Status","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json get /v2/phota/jobs/{job_id}","href":"/api/studio/get-job-status"},{"title":"Get Webhook Secret","description":"Return the authenticated developer's webhook signing secret.\n\nThis is the per-developer HMAC key used to sign the ``X-Phota-Signature``\nheader on async job callbacks; partners fetch it once to verify callback\nauthenticity. The secret is minted lazily on first use. Scoped strictly to\nthe authenticated developer (the API key yields the developer uid).","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json get /v2/phota/webhook-secret","href":"/api/studio/get-webhook-secret"}]},{"group":"Profiles","pages":[{"title":"Get Profile Ids","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json get /v2/phota/profiles/ids","href":"/api/profiles/get-profile-ids"},{"title":"Tag Profiles","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json post /v2/phota/profiles/tags","href":"/api/profiles/tag-profiles"},{"title":"Get Profile Status","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json get /v2/phota/profiles/{profile_id}/status","href":"/api/profiles/get-profile-status"},{"title":"Get Profile Picture","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json get /v2/phota/profiles/{profile_id}/profile_picture","href":"/api/profiles/get-profile-picture"},{"title":"Add Profile","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json post /v2/phota/profiles/add","href":"/api/profiles/add-profile"},{"title":"Delete Profile","deprecated":null,"version":null,"openapi":"https://api.photalabs.com/v2/phota/openapi.json delete /v2/phota/profiles/{profile_id}","href":"/api/profiles/delete-profile"}]}]}]},"basePath":"","title":"Get Job Status - Phota API Documentation","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","Page-BAvA99GL.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}