[{"data":1,"prerenderedAt":584},["ShallowReactive",2],{"docs-page-meta":3,"docs-page-\u002Fgetting-started\u002Ftemplate-image-to-3d":32},{"pageMeta":4,"generatedAt":31},{"\u002Fall-endpoints\u002Fcreate-flow":5,"\u002Fall-endpoints\u002Fdelete-flow":7,"\u002Fall-endpoints\u002Fget-flow-input":8,"\u002Fall-endpoints\u002Fget-flow-output":9,"\u002Fall-endpoints\u002Fget-flow":10,"\u002Fall-endpoints\u002Fget-template":11,"\u002Fall-endpoints\u002Flist-flow-inputs":12,"\u002Fall-endpoints\u002Flist-flow-outputs":13,"\u002Fall-endpoints\u002Flist-flows":14,"\u002Fall-endpoints\u002Flist-templates":15,"\u002Fall-endpoints\u002Fstart-abort-flow":16,"\u002Fall-endpoints\u002Fupload-flow-input":17,"\u002Fgetting-started\u002Fauthentication":18,"\u002Fgetting-started\u002Fflow-lifecycle":19,"\u002Fgetting-started\u002Fflow":21,"\u002Fgetting-started\u002Fopenapi":22,"\u002Fgetting-started\u002Fplans-and-policies":23,"\u002Fgetting-started\u002Fquickstart":24,"\u002Fgetting-started\u002Ftemplate-helpers":25,"\u002Fgetting-started\u002Ftemplate-image-to-3d":26,"\u002Fgetting-started\u002Ftemplate-optimize-model":27,"\u002Fgetting-started\u002Ftemplate-text-to-3d":28,"\u002Fgetting-started\u002Ftemplates":29,"\u002Fgetting-started\u002Ftroubleshooting":30},{"lastUpdated":6},"2026-08-14T13:36:05.144Z",{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":6},{"lastUpdated":20},"2026-08-14T13:36:05.145Z",{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},{"lastUpdated":20},"2026-08-14T13:38:49.206Z",{"id":33,"title":34,"body":35,"description":577,"extension":578,"meta":579,"navigation":296,"path":580,"seo":581,"stem":582,"__hash__":583},"docs\u002Fgetting-started\u002Ftemplate-image-to-3d.md","Template - Image to 3D",{"type":36,"value":37,"toc":569},"minimark",[38,43,52,57,70,77,81,105,108,146,150,254,258,485,489,520,528,532,543,546,557,565],[39,40,42],"h1",{"id":41},"image-to-3d","Image to 3D",[44,45,46,47,51],"p",{},"Use ",[48,49,50],"code",{},"model_generate_fromimage"," when you want to generate a 3D model from a reference image.",[53,54,56],"h2",{"id":55},"when-to-use","When To Use",[58,59,60,64,67],"ul",{},[61,62,63],"li",{},"converting concept art or sketches into 3D",[61,65,66],{},"turning product or object images into initial 3D assets",[61,68,69],{},"keeping shape cues from a visual reference",[44,71,72,73,76],{},"Expected outcome: GLB outputs retrievable by ",[48,74,75],{},"asset_id"," after flow completion.",[53,78,80],{"id":79},"inputs","Inputs",[58,82,83,86,102],{},[61,84,85],{},"required input data type: image data URL or base64 payload in JSON",[61,87,88,89,92,93,92,96,92,99],{},"supported formats: ",[48,90,91],{},"image\u002Fpng",", ",[48,94,95],{},"image\u002Fjpg",[48,97,98],{},"image\u002Ftiff",[48,100,101],{},"image\u002Fwebp",[61,103,104],{},"recommended: centered subject, clear silhouette, minimal visual noise",[44,106,107],{},"Minimal input object:",[109,110,115],"pre",{"className":111,"code":112,"language":113,"meta":114,"style":114},"language-json shiki shiki-themes github-light github-light github-dark","{\n  \"data\": \"data:image\u002Fpng;base64,\u003Cbase64-image>\"\n}\n","json","",[48,116,117,126,140],{"__ignoreMap":114},[118,119,122],"span",{"class":120,"line":121},"line",1,[118,123,125],{"class":124},"sVPnS","{\n",[118,127,129,133,136],{"class":120,"line":128},2,[118,130,132],{"class":131},"sUNQB","  \"data\"",[118,134,135],{"class":124},": ",[118,137,139],{"class":138},"s-HEn","\"data:image\u002Fpng;base64,\u003Cbase64-image>\"\n",[118,141,143],{"class":120,"line":142},3,[118,144,145],{"class":124},"}\n",[53,147,149],{"id":148},"parameters","Parameters",[151,152,153,175],"table",{},[154,155,156],"thead",{},[157,158,159,163,166,169,172],"tr",{},[160,161,162],"th",{},"Name",[160,164,165],{},"Type",[160,167,168],{},"Default",[160,170,171],{},"Allowed values",[160,173,174],{},"Practical guidance",[176,177,178,206,226],"tbody",{},[157,179,180,186,189,194,201],{},[181,182,183],"td",{},[48,184,185],{},"quality",[181,187,188],{},"string",[181,190,191],{},[48,192,193],{},"high",[181,195,196,92,199],{},[48,197,198],{},"low",[48,200,193],{},[181,202,46,203,205],{},[48,204,193],{}," when visual fidelity matters.",[157,207,208,213,216,221,223],{},[181,209,210],{},[48,211,212],{},"seed",[181,214,215],{},"integer",[181,217,218],{},[48,219,220],{},"-1",[181,222,215],{},[181,224,225],{},"Fix seed for repeatability across tests.",[157,227,228,233,236,241,248],{},[181,229,230],{},[48,231,232],{},"texture",[181,234,235],{},"boolean",[181,237,238],{},[48,239,240],{},"true",[181,242,243,92,245],{},[48,244,240],{},[48,246,247],{},"false",[181,249,250,251,253],{},"Keep ",[48,252,240],{}," for textured output in most cases.",[53,255,257],{"id":256},"minimal-runnable-payload","Minimal Runnable Payload",[109,259,263],{"className":260,"code":261,"language":262,"meta":114,"style":114},"language-python shiki shiki-themes github-light github-light github-dark","from pathlib import Path\nfrom base64 import b64encode\n\ndef image_to_data_url(path: Path) -> str:\n    encoded = b64encode(path.read_bytes()).decode()\n    return f\"data:image\u002Fpng;base64,{encoded}\"\n\npayload = {\n    \"template\": \"model_generate_fromimage\",\n    \"parameters\": {\n        \"quality\": \"high\",\n        \"texture\": True,\n        \"seed\": -1\n    },\n    \"inputs\": [\n        {\n            \"data\": image_to_data_url(Path(\"input.png\"))\n        }\n    ]\n}\n","python",[48,264,265,280,292,298,317,329,353,358,369,383,392,405,418,432,438,447,453,468,474,480],{"__ignoreMap":114},[118,266,267,271,274,277],{"class":120,"line":121},[118,268,270],{"class":269},"sDD9d","from",[118,272,273],{"class":124}," pathlib ",[118,275,276],{"class":269},"import",[118,278,279],{"class":124}," Path\n",[118,281,282,284,287,289],{"class":120,"line":128},[118,283,270],{"class":269},[118,285,286],{"class":124}," base64 ",[118,288,276],{"class":269},[118,290,291],{"class":124}," b64encode\n",[118,293,294],{"class":120,"line":142},[118,295,297],{"emptyLinePlaceholder":296},true,"\n",[118,299,301,304,308,311,314],{"class":120,"line":300},4,[118,302,303],{"class":269},"def",[118,305,307],{"class":306},"sgQzM"," image_to_data_url",[118,309,310],{"class":124},"(path: Path) -> ",[118,312,313],{"class":131},"str",[118,315,316],{"class":124},":\n",[118,318,320,323,326],{"class":120,"line":319},5,[118,321,322],{"class":124},"    encoded ",[118,324,325],{"class":269},"=",[118,327,328],{"class":124}," b64encode(path.read_bytes()).decode()\n",[118,330,332,335,338,341,344,347,350],{"class":120,"line":331},6,[118,333,334],{"class":269},"    return",[118,336,337],{"class":269}," f",[118,339,340],{"class":138},"\"data:image\u002Fpng;base64,",[118,342,343],{"class":131},"{",[118,345,346],{"class":124},"encoded",[118,348,349],{"class":131},"}",[118,351,352],{"class":138},"\"\n",[118,354,356],{"class":120,"line":355},7,[118,357,297],{"emptyLinePlaceholder":296},[118,359,361,364,366],{"class":120,"line":360},8,[118,362,363],{"class":124},"payload ",[118,365,325],{"class":269},[118,367,368],{"class":124}," {\n",[118,370,372,375,377,380],{"class":120,"line":371},9,[118,373,374],{"class":138},"    \"template\"",[118,376,135],{"class":124},[118,378,379],{"class":138},"\"model_generate_fromimage\"",[118,381,382],{"class":124},",\n",[118,384,386,389],{"class":120,"line":385},10,[118,387,388],{"class":138},"    \"parameters\"",[118,390,391],{"class":124},": {\n",[118,393,395,398,400,403],{"class":120,"line":394},11,[118,396,397],{"class":138},"        \"quality\"",[118,399,135],{"class":124},[118,401,402],{"class":138},"\"high\"",[118,404,382],{"class":124},[118,406,408,411,413,416],{"class":120,"line":407},12,[118,409,410],{"class":138},"        \"texture\"",[118,412,135],{"class":124},[118,414,415],{"class":131},"True",[118,417,382],{"class":124},[118,419,421,424,426,429],{"class":120,"line":420},13,[118,422,423],{"class":138},"        \"seed\"",[118,425,135],{"class":124},[118,427,428],{"class":269},"-",[118,430,431],{"class":131},"1\n",[118,433,435],{"class":120,"line":434},14,[118,436,437],{"class":124},"    },\n",[118,439,441,444],{"class":120,"line":440},15,[118,442,443],{"class":138},"    \"inputs\"",[118,445,446],{"class":124},": [\n",[118,448,450],{"class":120,"line":449},16,[118,451,452],{"class":124},"        {\n",[118,454,456,459,462,465],{"class":120,"line":455},17,[118,457,458],{"class":138},"            \"data\"",[118,460,461],{"class":124},": image_to_data_url(Path(",[118,463,464],{"class":138},"\"input.png\"",[118,466,467],{"class":124},"))\n",[118,469,471],{"class":120,"line":470},18,[118,472,473],{"class":124},"        }\n",[118,475,477],{"class":120,"line":476},19,[118,478,479],{"class":124},"    ]\n",[118,481,483],{"class":120,"line":482},20,[118,484,145],{"class":124},[53,486,488],{"id":487},"polling-and-output-retrieval","Polling And Output Retrieval",[490,491,492,499,512],"ol",{},[61,493,494,495,498],{},"Create flow with ",[48,496,497],{},"POST \u002Fflows",".",[61,500,501,502,92,505,508,509,498],{},"Poll until ",[48,503,504],{},"completed",[48,506,507],{},"failed",", or ",[48,510,511],{},"aborted",[61,513,514,515,517,518,498],{},"On ",[48,516,504],{},", list outputs and fetch by ",[48,519,75],{},[44,521,522,523,498],{},"Use shared implementation from ",[524,525,527],"a",{"href":526},"\u002Fgetting-started\u002Ftemplate-helpers","Template Helpers",[53,529,531],{"id":530},"common-failure-modes","Common Failure Modes",[58,533,534,537,540],{},[61,535,536],{},"unsupported MIME type or malformed data URL",[61,538,539],{},"image too large or low-quality reference",[61,541,542],{},"attempting output retrieval before completion",[44,544,545],{},"Recovery:",[490,547,548,551,554],{},[61,549,550],{},"verify data URL format and MIME",[61,552,553],{},"use cleaner, smaller, and better-lit input images",[61,555,556],{},"wait for completed state before download",[44,558,559,560,564],{},"See ",[524,561,563],{"href":562},"\u002Fgetting-started\u002Ftroubleshooting","Troubleshooting"," for full error handling guidance.",[566,567,568],"style",{},"html pre.shiki code .sVPnS, html code.shiki .sVPnS{--shiki-default:#24292E;--shiki-light:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sUNQB, html code.shiki .sUNQB{--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s-HEn, html code.shiki .s-HEn{--shiki-default:#032F62;--shiki-light:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sDD9d, html code.shiki .sDD9d{--shiki-default:#D73A49;--shiki-light:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sgQzM, html code.shiki .sgQzM{--shiki-default:#6F42C1;--shiki-light:#6F42C1;--shiki-dark:#B392F0}",{"title":114,"searchDepth":128,"depth":128,"links":570},[571,572,573,574,575,576],{"id":55,"depth":128,"text":56},{"id":79,"depth":128,"text":80},{"id":148,"depth":128,"text":149},{"id":256,"depth":128,"text":257},{"id":487,"depth":128,"text":488},{"id":530,"depth":128,"text":531},"How to use model_generate_fromimage for image-to-3D generation.","md",{},"\u002Fgetting-started\u002Ftemplate-image-to-3d",{"title":34,"description":577},"getting-started\u002Ftemplate-image-to-3d","0CHlxDiDVKyV6acla41vy8THdNfKX04vHeuKtMKPBVs",1786714763037]