{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The provided API key is invalid, expired, or revoked.",
"request_id": "8f14e45fceea167a5a36dedd4bea2543",
"param": "aspect_ratio"
}
}
Première étape du flux presigned upload pour les fichiers volumineux. Envoie le name du modèle,
sa category et les métadonnées des 1 à 10 files que tu vas uploader (le premier fichier est
la couverture). La réponse renvoie un id de modèle et un upload_url PUT presigné par
fichier. Envoie chaque fichier avec PUT sur son URL, puis appelle
POST /models/{id}/complete avec les clés
uploadées pour lancer le traitement. Nécessite le scope models.write.
Utilise ce flux en deux étapes quand les images sont trop volumineuses pour être envoyées inline. Pour les petites images
ou les URLs distantes, POST /models est plus simple.
Le content_type de chaque fichier vaut l’une des valeurs image/jpeg, image/png, image/webp ;
fournis la size (≤ 10 Mo) quand tu la connais.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Samsa","description":"Developer documentation for the Samsa public API — image generation with trained models, Magic Edit, video generation, model training, and the MCP server.","colors":{"primary":"#15123A","light":"#F3F0EA","dark":"#15123A"},"logo":{"light":"https://mintcdn.com/samsa-6b52d36f/KpPcBLFywFmPfDV-/logo/light.svg?fit=max\u0026auto=format\u0026n=KpPcBLFywFmPfDV-\u0026q=85\u0026s=7959ddf7b4b354d12d95c8cdd42b4c61","dark":"https://mintcdn.com/samsa-6b52d36f/KpPcBLFywFmPfDV-/logo/dark.svg?fit=max\u0026auto=format\u0026n=KpPcBLFywFmPfDV-\u0026q=85\u0026s=74213957254837206e4bb0ce9e2096b6","href":"https://samsa.ai"},"favicon":"https://mintcdn.com/samsa-6b52d36f/KpPcBLFywFmPfDV-/favicon.svg?fit=max\u0026auto=format\u0026n=KpPcBLFywFmPfDV-\u0026q=85\u0026s=24292e198dbc5bbc4dcbc1a41e807c52","appearance":{"default":"system"},"navbar":{"links":[{"href":"mailto:support@samsa.ai","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.samsa.ai"}},"seo":{"organization":{"id":"https://samsa.ai/#organization","name":"Samsa","legalName":"Samsa Labs AG","url":"https://samsa.ai","logo":"https://samsa.ai/wp-content/uploads/2026/01/samsa_logo.webp","sameAs":["https://www.linkedin.com/company/samsa-ai/"]}},"contextual":{"options":["copy","chatgpt","claude","cursor","vscode",{"title":"Connect to Microsoft Copilot","description":"Install MCP Server in Microsoft Copilot","icon":"microsoft","href":"https://docs.samsa.ai/mcp-server/clients"}],"display":"header"},"thumbnails":{"appearance":"dark","background":"https://mintcdn.com/samsa-6b52d36f/KpPcBLFywFmPfDV-/images/thumbnail-world.webp?fit=max\u0026auto=format\u0026n=KpPcBLFywFmPfDV-\u0026q=85\u0026s=ad0e6f187da0ece3388c05736841babd"},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","default":true,"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Information","items":[{"label":"Docs home","href":"/"},{"label":"Changelog","href":"/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Pricing","href":"https://samsa.ai/pricing"},{"label":"Contact us","href":"https://samsa.ai/contact"}]},{"header":"Legal","items":[{"label":"Terms of Service","href":"https://samsa.ai/terms-of-service"},{"label":"Acceptable Use Policy","href":"https://samsa.ai/acceptable-use-policy"},{"label":"Privacy Policy","href":"https://samsa.ai/privacy-policy"},{"label":"Imprint","href":"https://samsa.ai/imprint"}]}]},"href":""},{"language":"de","footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Informationen","items":[{"label":"Doku-Startseite","href":"/de"},{"label":"Changelog","href":"/de/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Preise","href":"https://samsa.ai/de/preise"},{"label":"Kontakt","href":"https://samsa.ai/de/kontakt"}]},{"header":"Rechtliches","items":[{"label":"AGB","href":"https://samsa.ai/de/agb"},{"label":"Nutzungsrichtlinie","href":"https://samsa.ai/de/nutzungsrichtlinie"},{"label":"Datenschutz","href":"https://samsa.ai/de/datenschutz"},{"label":"Impressum","href":"https://samsa.ai/de/impressum"}]}]},"href":"de"},{"language":"fr","footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Informations","items":[{"label":"Accueil documentation","href":"/fr"},{"label":"Changelog","href":"/fr/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Tarifs","href":"https://samsa.ai/fr/prix"},{"label":"Contact","href":"https://samsa.ai/fr/contact"}]},{"header":"Légal","items":[{"label":"Conditions générales","href":"https://samsa.ai/fr/conditions-generales"},{"label":"Politique d'utilisation acceptable","href":"https://samsa.ai/fr/politique-utilisation-acceptable"},{"label":"Politique de confidentialité","href":"https://samsa.ai/fr/politique-de-confidentialite"},{"label":"Mentions légales","href":"https://samsa.ai/fr/mentions-legales"}]}]},"href":"fr"},{"language":"it","footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Informazioni","items":[{"label":"Home documentazione","href":"/it"},{"label":"Changelog","href":"/it/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Prezzi","href":"https://samsa.ai/it/prezzi"},{"label":"Contatti","href":"https://samsa.ai/it/contatto"}]},{"header":"Legale","items":[{"label":"Termini e condizioni","href":"https://samsa.ai/it/termini-e-condizioni"},{"label":"Politica di utilizzo accettabile","href":"https://samsa.ai/it/politica-utilizzo-accettabile"},{"label":"Informativa sulla privacy","href":"https://samsa.ai/it/informativa-sulla-privacy"},{"label":"Note legali","href":"https://samsa.ai/it/impronta"}]}]},"href":"it"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"samsa-6b52d36f","hasAudioNarration":false,"actualSubdomain":"samsa-6b52d36f","customDomains":["docs.samsa.ai"],"gitSource":{"type":"github","owner":"samsa-ai","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"261105e6-9f7b-458a-8ad6-ddeee178a591","liveDeploymentHistoryId":"6ada3247fd1ebb929e8defb9","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ada3247fd1ebb929e8defb9"},"feedback":{"agentFeedback":true,"thumbs":false},"entitlements":{},"buildId":"6ada3247fd1ebb929e8defb9","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"en","tag":"API reference","count":45},{"language":"de","tag":"API-Referenz","count":45},{"language":"fr","tag":"Référence API","count":45},{"language":"it","tag":"Riferimento API","count":45},{"language":"en","tag":"Endpoints","count":43},{"language":"de","tag":"Endpunkte","count":43},{"language":"fr","tag":"Points de terminaison","count":43},{"language":"it","tag":"Endpoint","count":43},{"language":"en","tag":"Image Operations","count":13},{"language":"de","tag":"Bildoperationen","count":13},{"language":"fr","tag":"Opérations d'images","count":13},{"language":"it","tag":"Operazioni sulle immagini","count":13},{"language":"en","tag":"Documentation","count":9},{"language":"de","tag":"Dokumentation","count":9},{"language":"fr","tag":"Documentation","count":9},{"language":"it","tag":"Documentazione","count":9},{"language":"en","tag":"Guides","count":7},{"language":"de","tag":"Leitfäden","count":7},{"language":"fr","tag":"Guides","count":7},{"language":"it","tag":"Guide","count":7},{"language":"en","tag":"Model Training","count":5},{"language":"en","tag":"Models","count":5},{"language":"de","tag":"Modelltraining","count":5},{"language":"de","tag":"Modelle","count":5},{"language":"fr","tag":"Entraînement de modèles","count":5},{"language":"fr","tag":"Modèles","count":5},{"language":"it","tag":"Addestramento di modelli","count":5},{"language":"it","tag":"Modelli","count":5},{"language":"en","tag":"Account \u0026 Usage","count":4},{"language":"en","tag":"Image Generation","count":4},{"language":"en","tag":"Video Generation","count":4},{"language":"de","tag":"Konto \u0026 Nutzung","count":4},{"language":"de","tag":"Bildgenerierung","count":4},{"language":"de","tag":"Videogenerierung","count":4},{"language":"fr","tag":"Compte \u0026 utilisation","count":4},{"language":"fr","tag":"Génération d'images","count":4},{"language":"fr","tag":"Génération de vidéos","count":4},{"language":"it","tag":"Account \u0026 utilizzo","count":4},{"language":"it","tag":"Generazione di immagini","count":4},{"language":"it","tag":"Generazione di video","count":4}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"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":"editor-v7-file-tree","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":"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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","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":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#navigation-items>div:not(:first-child):has(>.sidebar-group-header){border-top:1px solid rgb(17 24 39/.08);padding-top:1.25rem}:is(html.dark, .dark, [data-theme=\"dark\"]) #navigation-items>div:not(:first-child):has(>.sidebar-group-header){border-top-color:rgb(255 255 255/.1)}img.nav-logo{height:25px;margin-bottom:3px}:root{--samsa-ink:#15123a;--samsa-paper:#f3f0ea;--samsa-night:#0e0c16;--samsa-signal:#ff4f1a;--samsa-signal-text:#c43d0b;--samsa-ring:#c43d0b;--world-grain:url(\"/images/worlds/grain-128.ca7f55b1c0.webp\");--world-grain-size:128px;--world-dim:34.5 32.5 41.5}html.dark{--samsa-signal:#ff5a24;--samsa-signal-text:#ff8a5c;--samsa-ring:#ff5a24;--primary-dark:243 240 234}:is(a, button, input, select, textarea, summary, [tabindex]):focus-visible{outline-style:solid!important;outline-width:2px!important;outline-color:var(--samsa-ring)!important}.prose a:not(.card,[data-client-link],[class*=samsa-hero__]):hover,.prose a:not(.card,[data-client-link],[class*=samsa-hero__]):hover code{color:var(--samsa-signal-text);border-bottom-color:var(--samsa-signal-text)}a:has(>.bg-primary-dark):hover>.bg-primary-dark,button:has(>.bg-primary-dark):hover>.bg-primary-dark{background-color:var(--samsa-signal);opacity:1!important}html.dark a:has(>.bg-primary-dark) :is(.text-white, [class*=\"text-white/\"]),html.dark button:has(>.bg-primary-dark) :is(.text-white, [class*=\"text-white/\"]){color:var(--samsa-night)}html.dark a:has(>.bg-primary-dark):hover :is(.text-white, [class*=\"text-white/\"]),html.dark button:has(>.bg-primary-dark):hover :is(.text-white, [class*=\"text-white/\"]){color:#fff}[data-component-part=card-icon] svg[class]{background-color:var(--samsa-signal-text)}[data-component-part=card-icon] svg:not([style*=mask]){background-color:transparent;color:var(--samsa-signal-text);fill:currentColor}.card:hover [data-component-part=card-title]{color:var(--samsa-signal-text)}@media (min-resolution:1.25dppx){:root{--world-grain-size:102.4px}}@media (min-resolution:1.5dppx){:root{--world-grain-size:85.333px}}@media (min-resolution:1.75dppx){:root{--world-grain-size:73.143px}}@media (min-resolution:2dppx){:root{--world-grain-size:64px}}@media (min-resolution:2.25dppx){:root{--world-grain-size:56.889px}}@media (min-resolution:2.5dppx){:root{--world-grain-size:51.2px}}@media (min-resolution:2.625dppx){:root{--world-grain-size:48.762px}}@media (min-resolution:2.75dppx){:root{--world-grain-size:46.545px}}@media (min-resolution:3dppx){:root{--world-grain-size:42.667px}}@media (min-resolution:3.5dppx){:root{--world-grain-size:36.571px}}@media (min-resolution:4dppx){:root{--world-grain-size:32px}}#footer,.samsa-hero{--world:image-set(\n url(\"/images/worlds/orchid-jungle-1600.c6a419e4ef.avif\") type(\"image/avif\"),\n url(\"/images/worlds/orchid-jungle-1600.7e5329f561.webp\") type(\"image/webp\")\n );--world-webp:url(\"/images/worlds/orchid-jungle-1600.7e5329f561.webp\");--world-base:#41403b;--world-vig:47 43 68}@media (max-width:767px){#footer,.samsa-hero{--world:image-set(\n url(\"/images/worlds/orchid-jungle-800.f9ec57f3b4.avif\") type(\"image/avif\"),\n url(\"/images/worlds/orchid-jungle-800.55128c3346.webp\") type(\"image/webp\")\n );--world-webp:url(\"/images/worlds/orchid-jungle-800.55128c3346.webp\")}}.samsa-hero{--world-x:30%;--world-y:60%;--world-zoom:1.3;--world-shade:0;--world-scrim:radial-gradient(\n 72% 140% at 22% 50%,\n rgb(var(--world-dim) / 0.56),\n rgb(var(--world-dim) / 0.36) 60%,\n rgb(var(--world-dim) / 0)\n );margin:1.75rem 0 2.75rem;padding:2.25rem 2rem;border-radius:1rem;color:#f3f0ea}#footer,.samsa-hero{--vig:0.25;--world-scrim:linear-gradient(transparent, transparent);position:relative;isolation:isolate;overflow:hidden;background-color:var(--world-base);-webkit-mask-image:linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0)}#footer::before,.samsa-hero::before{--world-vignette:radial-gradient(\n farthest-corner ellipse at 50% 50%,\n rgb(var(--world-vig) / 0) 30%,\n rgb(var(--world-vig) / calc(var(--vig) * 0.0138)) 40%,\n rgb(var(--world-vig) / calc(var(--vig) * 0.0635)) 50%,\n rgb(var(--world-vig) / calc(var(--vig) * 0.155)) 60%,\n rgb(var(--world-vig) / calc(var(--vig) * 0.292)) 70%,\n rgb(var(--world-vig) / calc(var(--vig) * 0.477)) 80%,\n rgb(var(--world-vig) / calc(var(--vig) * 0.7124)) 90%,\n rgb(var(--world-vig) / var(--vig)) 100%\n );--world-shade-layer:linear-gradient(\n rgb(var(--world-dim) / var(--world-shade, 0)),\n rgb(var(--world-dim) / var(--world-shade, 0))\n );content:\"\";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:var(--world-shade-layer),var(--world-scrim),var(--world-vignette),var(--world-webp);background-position:var(--world-x, 50%) var(--world-y, 50%);background-size:calc(100%/var(--world-zoom, 1)) calc(100%/var(--world-zoom, 1)),calc(100%/var(--world-zoom, 1)) calc(100%/var(--world-zoom, 1)),calc(100%/var(--world-zoom, 1)) calc(100%/var(--world-zoom, 1)),cover;background-repeat:no-repeat;transform-origin:var(--world-x, 50%) var(--world-y, 50%);scale:var(--world-zoom, 1)}@supports (background-image:image-set(url(data:,x) type(\"image/avif\"))){#footer::before,.samsa-hero::before{background-image:var(--world-shade-layer),var(--world-scrim),var(--world-vignette),var(--world)}}#footer::after,.samsa-hero::after{content:\"\";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:var(--world-grain) 0 0/var(--world-grain-size) var(--world-grain-size);mix-blend-mode:difference}.samsa-hero__title{margin:0 0 .55rem;max-width:22ch;font-size:1.8rem;font-weight:650;line-height:1.15;letter-spacing:-.021em;color:#f3f0ea}.samsa-hero__lede{margin:0 0 1.35rem;max-width:46ch;font-size:.95rem;line-height:1.6;color:#f3f0ea}.samsa-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.samsa-hero__cta,.samsa-hero__link{text-decoration:none;font-size:.875rem;font-weight:600;border-radius:.6rem}.samsa-hero__cta{display:inline-flex;align-items:center;padding:.58rem 1.1rem;border:0;background:#f3f0ea;color:#0e0c16;transition:background-color .15s ease,color .15s ease}.samsa-hero__cta:hover{background:#ff5a24;color:#fff}.samsa-hero .samsa-hero__link{color:#f3f0ea;border-bottom:2px solid rgb(243 240 234/.45);border-radius:0;padding-bottom:2px;transition:border-color .15s ease,box-shadow .15s ease}.samsa-hero .samsa-hero__link:hover{color:#f3f0ea;border-bottom-color:#ff5a24;box-shadow:0 1px 0 #ff5a24}.samsa-hero__cta:focus-visible,.samsa-hero__link:focus-visible{outline:2px solid #ff5a24!important;outline-offset:3px}@media (max-width:640px){.samsa-hero{--world-x:40%;--world-y:55%;--world-zoom:1.15;--world-scrim:radial-gradient(\n 150% 90% at 40% 35%,\n rgb(var(--world-dim) / 0.5),\n rgb(var(--world-dim) / 0.32) 60%,\n rgb(var(--world-dim) / 0.1)\n );padding:1.75rem 1.35rem}.samsa-hero__title{font-size:1.5rem}}#footer{--world-x:35%;--world-y:55%;--world-zoom:1.5;--world-shade:0.06;--vig:0.35;--foot-glass:rgb(255 255 255 / 0.72);--foot-glass-solid:rgb(255 255 255 / 0.96);--foot-edge:rgb(21 18 58 / 0.08);--foot-rim:rgb(255 255 255 / 0.9);--foot-heading:#15123a;--foot-text:#3f3c56;--foot-quiet:#5e5a72;--foot-hover:#c43d0b;--foot-chip:rgb(21 18 58 / 0.08);margin:2.5rem 1rem 1rem;padding:2.5rem 1rem;border:0;border-radius:28px}html.dark #footer{--foot-glass:rgb(28 26 40 / 0.66);--foot-glass-solid:rgb(26 24 36 / 0.97);--foot-edge:rgb(0 0 0 / 0.4);--foot-rim:rgb(255 255 255 / 0.12);--foot-heading:#f3f0ea;--foot-text:#c2bdd1;--foot-quiet:#a7a2b8;--foot-hover:#ff8a5c;--foot-chip:rgb(255 255 255 / 0.12)}@media (min-width:768px){#footer{margin:3rem 1.5rem 1.5rem;padding:4rem 2rem;border-radius:36px}}#footer>div{position:relative;padding:2.5rem 1.75rem 1.75rem;border-radius:24px;background:var(--foot-glass);box-shadow:0 0 0 1px var(--foot-edge),0 30px 60px -28px rgb(21 18 58/.32);-webkit-backdrop-filter:blur(32px) saturate(1.8) brightness(1.12);backdrop-filter:blur(32px) saturate(1.8) brightness(1.12)}@media (min-width:768px){#footer>div{padding:3rem 3rem 2rem}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#footer>div{background:var(--foot-glass-solid)}}#footer>div::before{content:\"\";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(180deg,var(--foot-rim),transparent 40%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}#footer p{color:var(--foot-heading)}#footer a:hover,#footer a[href*=\"mintlify.com\"]:hover{color:var(--foot-hover)}#footer svg[style*=mask]{background-color:var(--foot-text)}#footer a:hover svg[style*=mask]{background-color:var(--foot-hover)}#footer a,#footer a[href*=\"mintlify.com\"]{color:var(--foot-text)}#footer [class*=h-px]{background-color:var(--foot-edge)}#footer button[data-testid^=mode-switch]{color:var(--foot-quiet);background-color:transparent}#footer button[data-testid^=mode-switch][aria-pressed=true]{color:var(--foot-heading);background-color:var(--foot-chip)}#footer button[data-testid^=mode-switch]:hover{color:var(--foot-hover)}"}],"page":{"pagePath":"fr/api-reference/model-training/prepare","slug":"/fr/api-reference/model-training/prepare","pageMetadata":{"title":"Préparer un upload de modèle","description":"Demande des presigned URLs PUT pour les images de référence d'un nouveau modèle (upload en deux étapes).","openapi":"api-reference/openapi.json POST /models/prepare","href":"/fr/api-reference/model-training/prepare"},"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: \"Demande des presigned URLs PUT pour les images de référence d’un nouveau modèle (upload en deux étapes).\"\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,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,strong:`strong`,..._provideComponents(),...props.components},{Note}=_components;if(!Note)_missingMdxReference(`Note`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Première étape du flux presigned upload pour les fichiers volumineux. Envoie le `,_jsx(_components.code,{children:`name`}),` du modèle,\nsa `,_jsx(_components.code,{children:`category`}),` et les métadonnées des 1 à 10 `,_jsx(_components.code,{children:`files`}),` que tu vas uploader (le `,_jsx(_components.strong,{children:`premier`}),` fichier est\nla couverture). La réponse renvoie un `,_jsx(_components.code,{children:`id`}),` de modèle et un `,_jsx(_components.code,{children:`upload_url`}),` PUT presigné par\nfichier. Envoie chaque fichier avec `,_jsx(_components.code,{children:`PUT`}),` sur son URL, puis appelle\n`,_jsx(_components.a,{href:`/fr/api-reference/model-training/complete`,children:_jsx(_components.code,{children:`POST /models/{id}/complete`})}),` avec les clés\nuploadées pour lancer le traitement. Nécessite le scope `,_jsx(_components.code,{children:`models.write`}),`.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`Utilise ce flux en deux étapes quand les images sont trop volumineuses pour être envoyées inline. Pour les petites images\nou les URLs distantes, `,_jsx(_components.a,{href:`/fr/api-reference/model-training/create`,children:_jsx(_components.code,{children:`POST /models`})}),` est plus simple.\nLe `,_jsx(_components.code,{children:`content_type`}),` de chaque fichier vaut l’une des valeurs `,_jsx(_components.code,{children:`image/jpeg`}),`, `,_jsx(_components.code,{children:`image/png`}),`, `,_jsx(_components.code,{children:`image/webp`}),` ;\nfournis la `,_jsx(_components.code,{children:`size`}),` (≤ 10 Mo) quand tu la connais.`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Préparer un upload de modèle","description":"Demande des presigned URLs PUT pour les images de référence d'un nouveau modèle (upload en deux étapes).","openapi":"api-reference/openapi.json POST /models/prepare","href":"/fr/api-reference/model-training/prepare"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Models"],"summary":"Request presigned upload URLs for a new model's images","description":"Demande des presigned URLs PUT pour les images de référence d'un nouveau modèle (upload en deux étapes).","operationId":"prepare_model_models_prepare_post","requestBody":"86153ad5-d9b5-4e7a-a7e6-f5b6eeeed5a7","responses":{"202":"0ee14aa0-43c3-4c0e-9426-68ce5830ed43","401":"6c6439bb-be70-4dd4-9448-70db86177df3","402":"f7368ae1-4a1e-4147-8814-3faa8a6499e6","403":"5917ad94-3521-40b4-b9ad-4b76b2889070","404":"72e125f1-f829-4ea1-8b12-b104b0059f4f","422":"d3575229-5df2-45e0-aad7-5b4a657efd90","429":"07134586-7959-4c6f-a05f-87d4ba479332","500":"e93e4dd6-826a-4e3a-816e-7255f2debd5d","503":"9cb8812e-a342-4ff7-a393-d4e9636031b6"},"method":"post","type":"path","servers":["a08679d8-4c66-4164-bad0-0564dfe6f3df"],"security":["8098c6f5-b81c-4b34-bd5b-3b5f75d9bd79"],"path":"/models/prepare","baseUrlOptions":["https://api.samsa.ai/public/v1"],"title":"Request presigned upload URLs for a new model's images","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"properties":{"name":{"type":"string","maxLength":100,"minLength":1,"title":"Name","examples":["Acme Brand Style"],"isRequired":true,"uniqueKey":"name","typeLabel":"string"},"category":{"type":"string","enum":["style","object","person","setting"],"title":"PublicModelCategory","description":"Model category — one of `style`, `object`, `person`, `setting`.","examples":["style"],"isRequired":true,"uniqueKey":"category","typeLabel":"enum\u003cstring>"},"files":{"items":{"properties":{"filename":{"oneOf":[{"type":"string","title":"Filename","description":"Original filename (informational).","example":"logo.png","uniqueKey":"files.items.[INDEX].filename.oneOf.0","typeLabel":"string"},{"type":"null","title":"Filename","description":"Original filename (informational).","example":"logo.png","uniqueKey":"files.items.[INDEX].filename.oneOf.1","typeLabel":"null"}],"uniqueKey":"files.items.[INDEX].filename","typeLabel":"string | null"},"content_type":{"type":"string","title":"Content Type","description":"MIME type of the file to upload — one of: image/jpeg, image/png, image/webp.","default":"image/webp","examples":["image/png"],"uniqueKey":"files.items.[INDEX].content_type","typeLabel":"string"},"size":{"oneOf":[{"type":"integer","title":"Size","description":"File size in bytes (optional; must be ≤ 10 MB when provided).","minimum":0,"example":204800,"uniqueKey":"files.items.[INDEX].size.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Size","description":"File size in bytes (optional; must be ≤ 10 MB when provided).","example":204800,"uniqueKey":"files.items.[INDEX].size.oneOf.1","typeLabel":"null"}],"uniqueKey":"files.items.[INDEX].size","typeLabel":"integer | null"}},"type":"object","title":"PublicModelFileMeta","description":"One presigned-upload slot request (`POST /models/prepare`).","uniqueKey":"files.items.[INDEX]","typeLabel":"PublicModelFileMeta · object"},"type":"array","maxItems":10,"minItems":1,"title":"Files","description":"Metadata for the 1-10 files you will upload (first = cover).","isRequired":true,"uniqueKey":"files","typeLabel":"PublicModelFileMeta · object[]"},"instruction":{"oneOf":[{"type":"string","title":"Instruction","description":"Optional free-text guidance for how to use the model.","maxLength":8000,"uniqueKey":"instruction.oneOf.0","typeLabel":"string"},{"type":"null","title":"Instruction","description":"Optional free-text guidance for how to use the model.","uniqueKey":"instruction.oneOf.1","typeLabel":"null"}],"uniqueKey":"instruction","typeLabel":"string | null"}},"type":"object","required":["name","category","files"],"title":"PublicModelPrepareRequest","description":"`POST /models/prepare` body — request presigned PUT URLs for large files.","uniqueKey":"","typeLabel":"PublicModelPrepareRequest · object"},"examples":{"Example":{"title":"Example","value":{"name":"Acme Brand Style","category":"style","files":[{"filename":"logo.png","content_type":"image/png","size":204800}],"instruction":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"0ee14aa0-43c3-4c0e-9426-68ce5830ed43":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"id":{"type":"string","format":"uuid","title":"Id","description":"The PENDING model's id (send to `/complete`).","isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"uploads":{"items":{"properties":{"key":{"type":"string","title":"Key","description":"R2 object key to send back in `uploaded_keys`.","isRequired":true,"uniqueKey":"uploads.items.[INDEX].key","typeLabel":"string"},"upload_url":{"type":"string","title":"Upload Url","description":"Presigned PUT URL (expires with `expires_in`).","isRequired":true,"uniqueKey":"uploads.items.[INDEX].upload_url","typeLabel":"string"},"index":{"type":"integer","title":"Index","description":"Slot index (0 = primary/cover).","isRequired":true,"uniqueKey":"uploads.items.[INDEX].index","typeLabel":"integer"}},"type":"object","required":["key","upload_url","index"],"title":"PublicUploadSlot","description":"A presigned PUT slot returned by `POST /models/prepare`.","uniqueKey":"uploads.items.[INDEX]","typeLabel":"PublicUploadSlot · object"},"type":"array","title":"Uploads","isRequired":true,"uniqueKey":"uploads","typeLabel":"PublicUploadSlot · object[]"},"expires_in":{"type":"integer","title":"Expires In","description":"Presigned URL lifetime in seconds.","examples":[3600],"isRequired":true,"uniqueKey":"expires_in","typeLabel":"integer"}},"type":"object","required":["id","uploads","expires_in"],"title":"PublicModelPrepareResponse","description":"`202` body for `POST /models/prepare` — presigned upload slots.","uniqueKey":"","typeLabel":"PublicModelPrepareResponse · object"},"examples":{"Example":{"title":"Example","value":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","uploads":[{"key":"\u003cstring>","upload_url":"\u003cstring>","index":123}],"expires_in":3600}}},"exampleType":"generated"}},"exampleType":"generated"},"6c6439bb-be70-4dd4-9448-70db86177df3":{"description":"Missing, invalid, expired, or revoked API key.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"},"f7368ae1-4a1e-4147-8814-3faa8a6499e6":{"description":"The organization has no usable subscription.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"},"5917ad94-3521-40b4-b9ad-4b76b2889070":{"description":"The API key lacks the required scope.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"},"72e125f1-f829-4ea1-8b12-b104b0059f4f":{"description":"Model not found (unknown id, another user's private model, another organization, a Samsa default/library model, deleted, or not public). Your own models — including your private ones — and non-private models in your organization are accessible.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"},"d3575229-5df2-45e0-aad7-5b4a657efd90":{"description":"Request validation failed.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"},"07134586-7959-4c6f-a05f-87d4ba479332":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"},"e93e4dd6-826a-4e3a-816e-7255f2debd5d":{"description":"Internal server error.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"},"9cb8812e-a342-4ff7-a393-d4e9636031b6":{"description":"Model creation is disabled on this deployment.","content":{"application/json":{"schema":{"properties":{"error":{"properties":{"type":{"type":"string","title":"Type","examples":["authentication_error"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"type":"string","title":"Code","examples":["invalid_api_key"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","title":"Message","examples":["The provided API key is invalid, expired, or revoked."],"isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"request_id":{"type":"string","title":"Request Id","examples":["8f14e45fceea167a5a36dedd4bea2543"],"isRequired":true,"uniqueKey":"error.request_id","typeLabel":"string"},"param":{"oneOf":[{"type":"string","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.0","typeLabel":"string"},{"type":"null","title":"Param","description":"Present on validation errors — names the offending field.","example":"aspect_ratio","uniqueKey":"error.param.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.param","typeLabel":"string | null"}},"type":"object","required":["type","code","message","request_id"],"title":"ErrorDetail","description":"The ``error`` object of the public envelope (ADR §5).","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"}},"type":"object","required":["error"],"title":"ErrorEnvelope","description":"The complete public error body — an ``error`` object wrapper (ADR §5).","uniqueKey":"","typeLabel":"ErrorEnvelope · object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"authentication_error","code":"invalid_api_key","message":"The provided API key is invalid, expired, or revoked.","request_id":"8f14e45fceea167a5a36dedd4bea2543","param":"aspect_ratio"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"8098c6f5-b81c-4b34-bd5b-3b5f75d9bd79":{"BearerAuth":{"type":"http","scheme":"bearer","description":"Organization API key (`Authorization: Bearer samsa_sk_...`) or OAuth 2.1 access token (`Authorization: Bearer samsa_at_...`).","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"a08679d8-4c66-4164-bad0-0564dfe6f3df":{"url":"https://api.samsa.ai/public/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Organization API key (`Authorization: Bearer samsa_sk_...`) or OAuth 2.1 access token (`Authorization: Bearer samsa_at_...`).","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Organization API key (`Authorization: Bearer samsa_sk_...`) or OAuth 2.1 access token (`Authorization: Bearer samsa_at_...`).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"samsa-6b52d36f","siteName":"Samsa","title":"Préparer un upload de modèle - Samsa","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/model-training/prepare","matchLevel":1},"de":{"href":"/de/api-reference/model-training/prepare","matchLevel":1},"fr":{"href":"/fr/api-reference/model-training/prepare","matchLevel":0},"it":{"href":"/it/api-reference/model-training/prepare","matchLevel":1}}},"lastModified":"2026-07-08T18:50:48.861Z","originalFileLocation":"fr/api-reference/model-training/prepare.mdx","locale":"fr"},"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=\"Demande des presigned URLs PUT pour les images de référence d\u0026#x27;un nouveau modèle (upload en deux étapes).\">\u003cmeta data-mint-head name=\"application-name\" content=\"Samsa\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Préparer un upload de modèle - Samsa\">\u003cmeta data-mint-head property=\"og:description\" content=\"Demande des presigned URLs PUT pour les images de référence d\u0026#x27;un nouveau modèle (upload en deux étapes).\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Samsa\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.samsa.ai/fr/api-reference/model-training/prepare\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://samsa-6b52d36f.mintlify.app/_mintlify/api/og/v2?division=Entra%C3%AEnement+de+mod%C3%A8les\u0026amp;title=Pr%C3%A9parer+un+upload+de+mod%C3%A8le\u0026amp;description=Demande+des+presigned+URLs+PUT+pour+les+images+de+r%C3%A9f%C3%A9rence+d%27un+nouveau+mod%C3%A8le+%28upload+en+deux+%C3%A9tapes%29.\u0026amp;theme=bea4a9a10b0b9a420fea38c2\u0026amp;signature=b02716af7433ff00806967c016f05d844f1fb2000c0ba7695f7cd7096b711ff5\">\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=\"Préparer un upload de modèle - Samsa\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Demande des presigned URLs PUT pour les images de référence d\u0026#x27;un nouveau modèle (upload en deux étapes).\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://samsa-6b52d36f.mintlify.app/_mintlify/api/og/v2?division=Entra%C3%AEnement+de+mod%C3%A8les\u0026amp;title=Pr%C3%A9parer+un+upload+de+mod%C3%A8le\u0026amp;description=Demande+des+presigned+URLs+PUT+pour+les+images+de+r%C3%A9f%C3%A9rence+d%27un+nouveau+mod%C3%A8le+%28upload+en+deux+%C3%A9tapes%29.\u0026amp;theme=bea4a9a10b0b9a420fea38c2\u0026amp;signature=b02716af7433ff00806967c016f05d844f1fb2000c0ba7695f7cd7096b711ff5\">\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/samsa-6b52d36f/d_WeLiSBvKQ9voQx/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Samsa\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#15123A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.samsa.ai/fr/api-reference/model-training/prepare\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/fr/api-reference/model-training/prepare.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.samsa.ai/fr/api-reference/model-training/prepare\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.samsa.ai/api-reference/model-training/prepare\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.samsa.ai/de/api-reference/model-training/prepare\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.samsa.ai/it/api-reference/model-training/prepare\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.samsa.ai/api-reference/model-training/prepare\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://samsa.ai/#organization\",\"name\":\"Samsa\",\"legalName\":\"Samsa Labs AG\",\"url\":\"https://samsa.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://samsa.ai/wp-content/uploads/2026/01/samsa_logo.webp\"},\"sameAs\":[\"https://www.linkedin.com/company/samsa-ai/\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.samsa.ai#website\",\"name\":\"Samsa\",\"url\":\"https://docs.samsa.ai\",\"publisher\":{\"@id\":\"https://samsa.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare#webpage\",\"url\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare\",\"name\":\"Préparer un upload de modèle\",\"description\":\"Demande des presigned URLs PUT pour les images de référence d'un nouveau modèle (upload en deux étapes).\",\"dateModified\":\"2026-07-08T18:50:48.861Z\",\"isPartOf\":{\"@id\":\"https://docs.samsa.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Points de terminaison\",\"item\":\"https://docs.samsa.ai/fr/api-reference/images/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Entraînement de modèles\",\"item\":\"https://docs.samsa.ai/fr/api-reference/model-training/overview\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Préparer un upload de modèle\",\"item\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare#apireference\",\"headline\":\"Préparer un upload de modèle\",\"name\":\"Préparer un upload de modèle\",\"description\":\"Demande des presigned URLs PUT pour les images de référence d'un nouveau modèle (upload en deux étapes).\",\"url\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare\",\"mainEntityOfPage\":{\"@id\":\"https://docs.samsa.ai/fr/api-reference/model-training/prepare#webpage\"},\"dateModified\":\"2026-07-08T18:50:48.861Z\",\"publisher\":{\"@id\":\"https://samsa.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.samsa.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Samsa\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Samsa","nav":{"global":null,"languages":[{"language":"en","default":true,"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Information","items":[{"label":"Docs home","href":"/"},{"label":"Changelog","href":"/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Pricing","href":"https://samsa.ai/pricing"},{"label":"Contact us","href":"https://samsa.ai/contact"}]},{"header":"Legal","items":[{"label":"Terms of Service","href":"https://samsa.ai/terms-of-service"},{"label":"Acceptable Use Policy","href":"https://samsa.ai/acceptable-use-policy"},{"label":"Privacy Policy","href":"https://samsa.ai/privacy-policy"},{"label":"Imprint","href":"https://samsa.ai/imprint"}]}]},"pages":[{"title":"en","href":"/api-reference/model-training/prepare"}]},{"language":"de","footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Informationen","items":[{"label":"Doku-Startseite","href":"/de"},{"label":"Changelog","href":"/de/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Preise","href":"https://samsa.ai/de/preise"},{"label":"Kontakt","href":"https://samsa.ai/de/kontakt"}]},{"header":"Rechtliches","items":[{"label":"AGB","href":"https://samsa.ai/de/agb"},{"label":"Nutzungsrichtlinie","href":"https://samsa.ai/de/nutzungsrichtlinie"},{"label":"Datenschutz","href":"https://samsa.ai/de/datenschutz"},{"label":"Impressum","href":"https://samsa.ai/de/impressum"}]}]},"pages":[{"title":"de","href":"/de/api-reference/model-training/prepare"}]},{"language":"fr","footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Informations","items":[{"label":"Accueil documentation","href":"/fr"},{"label":"Changelog","href":"/fr/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Tarifs","href":"https://samsa.ai/fr/prix"},{"label":"Contact","href":"https://samsa.ai/fr/contact"}]},{"header":"Légal","items":[{"label":"Conditions générales","href":"https://samsa.ai/fr/conditions-generales"},{"label":"Politique d'utilisation acceptable","href":"https://samsa.ai/fr/politique-utilisation-acceptable"},{"label":"Politique de confidentialité","href":"https://samsa.ai/fr/politique-de-confidentialite"},{"label":"Mentions légales","href":"https://samsa.ai/fr/mentions-legales"}]}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/fr"}]},{"tab":"Référence API","groups":[{"group":"Vue d'ensemble","pages":[{"title":"API Samsa","href":"/fr/api"},{"title":"Référence API","href":"/fr/api-reference/introduction"}]},{"group":"Points de terminaison","pages":[{"group":"Génération d'images","pages":[{"title":"Génération d'images","sidebarTitle":"Aperçu","href":"/fr/api-reference/images/overview"},{"title":"Générer des images","openapi":"api-reference/openapi.json POST /images/generations","href":"/fr/api-reference/images/generate"},{"title":"Récupérer une génération d'image","openapi":"api-reference/openapi.json GET /images/generations/{generation_id}","href":"/fr/api-reference/images/get-generation"},{"title":"Lister les moteurs d'image","openapi":"api-reference/openapi.json GET /images/models","href":"/fr/api-reference/images/list-engines"}]},{"group":"Téléversement d'images","pages":[{"title":"Téléversement d'images","sidebarTitle":"Aperçu","href":"/fr/api-reference/uploads/overview"},{"title":"Préparer un upload d'image","openapi":"api-reference/openapi.json POST /images/uploads/prepare","href":"/fr/api-reference/uploads/prepare"},{"title":"Finaliser un upload d'image","openapi":"api-reference/openapi.json POST /images/uploads/{image_id}/complete","href":"/fr/api-reference/uploads/complete"}]},{"group":"Édition d'images","pages":[{"title":"Édition d'images","sidebarTitle":"Aperçu","href":"/fr/api-reference/edits/overview"},{"title":"Éditer une image","openapi":"api-reference/openapi.json POST /images/edits","href":"/fr/api-reference/edits/create"},{"title":"Récupérer une édition d'image","openapi":"api-reference/openapi.json GET /images/edits/{edit_id}","href":"/fr/api-reference/edits/get-edit"}]},{"group":"Opérations d'images","pages":[{"title":"Opérations d'images","sidebarTitle":"Aperçu","href":"/fr/api-reference/image-ops/overview"},{"title":"Transformer des images (img2img)","openapi":"api-reference/openapi.json POST /images/img2img","href":"/fr/api-reference/image-ops/img2img"},{"title":"Récupérer un job img2img","openapi":"api-reference/openapi.json GET /images/img2img/{img2img_id}","href":"/fr/api-reference/image-ops/get-img2img"},{"title":"Générer des variations","openapi":"api-reference/openapi.json POST /images/variations","href":"/fr/api-reference/image-ops/variations"},{"title":"Récupérer un job de variations","openapi":"api-reference/openapi.json GET /images/variations/{variation_id}","href":"/fr/api-reference/image-ops/get-variations"},{"title":"Agrandir une image","openapi":"api-reference/openapi.json POST /images/upscales","href":"/fr/api-reference/image-ops/upscale"},{"title":"Récupérer un job d'upscale","openapi":"api-reference/openapi.json GET /images/upscales/{upscale_id}","href":"/fr/api-reference/image-ops/get-upscale"},{"title":"Redimensionner une image","openapi":"api-reference/openapi.json POST /images/resizes","href":"/fr/api-reference/image-ops/resize"},{"title":"Récupérer un job de redimensionnement","openapi":"api-reference/openapi.json GET /images/resizes/{resize_id}","href":"/fr/api-reference/image-ops/get-resize"},{"title":"Supprimer un arrière-plan","openapi":"api-reference/openapi.json POST /images/background-removals","href":"/fr/api-reference/image-ops/remove-background"},{"title":"Récupérer un job de suppression d'arrière-plan","openapi":"api-reference/openapi.json GET /images/background-removals/{background_removal_id}","href":"/fr/api-reference/image-ops/get-background-removal"},{"title":"Vectoriser une image","openapi":"api-reference/openapi.json POST /images/vectorizations","href":"/fr/api-reference/image-ops/vectorize"},{"title":"Récupérer un job de vectorisation","openapi":"api-reference/openapi.json GET /images/vectorizations/{vectorization_id}","href":"/fr/api-reference/image-ops/get-vectorization"}]},{"group":"Génération de vidéos","pages":[{"title":"Génération de vidéos","sidebarTitle":"Aperçu","href":"/fr/api-reference/videos/overview"},{"title":"Générer une vidéo","openapi":"api-reference/openapi.json POST /videos/generations","href":"/fr/api-reference/videos/generate"},{"title":"Récupérer une génération de vidéo","openapi":"api-reference/openapi.json GET /videos/generations/{generation_id}","href":"/fr/api-reference/videos/get-generation"},{"title":"Lister les engines vidéo","openapi":"api-reference/openapi.json GET /videos/models","href":"/fr/api-reference/videos/list-engines"}]},{"group":"Amélioration de prompts","pages":[{"title":"Amélioration de prompts","sidebarTitle":"Aperçu","href":"/fr/api-reference/prompts/overview"},{"title":"Améliorer un prompt","openapi":"api-reference/openapi.json POST /prompts/improve","href":"/fr/api-reference/prompts/improve"}]},{"group":"Entraînement de modèles","pages":[{"title":"Entraînement de modèles","sidebarTitle":"Aperçu","href":"/fr/api-reference/model-training/overview"},{"title":"Créer un modèle","description":"Crée un modèle à partir de 1 à 10 images de référence fournies en URLs ou en base64 inline.","openapi":"api-reference/openapi.json POST /models","href":"/fr/api-reference/model-training/create"},{"title":"Préparer un upload de modèle","openapi":"api-reference/openapi.json POST /models/prepare","href":"/fr/api-reference/model-training/prepare"},{"title":"Finaliser un upload de modèle","description":"Finalise un modèle préparé après avoir uploadé ses images vers les presigned URLs.","openapi":"api-reference/openapi.json POST /models/{model_id}/complete","href":"/fr/api-reference/model-training/complete"},{"title":"Obtenir le statut d'un modèle","openapi":"api-reference/openapi.json GET /models/{model_id}/status","href":"/fr/api-reference/model-training/status"}]},{"group":"Modèles","pages":[{"title":"Modèles","sidebarTitle":"Aperçu","href":"/fr/api-reference/models/overview"},{"title":"Lister les modèles","openapi":"api-reference/openapi.json GET /models","href":"/fr/api-reference/models/list"},{"title":"Obtenir un modèle","openapi":"api-reference/openapi.json GET /models/{model_id}","href":"/fr/api-reference/models/get"},{"title":"Mettre à jour un modèle","openapi":"api-reference/openapi.json PATCH /models/{model_id}","href":"/fr/api-reference/models/update"},{"title":"Supprimer un modèle","openapi":"api-reference/openapi.json DELETE /models/{model_id}","href":"/fr/api-reference/models/delete"}]},{"group":"Compte \u0026 utilisation","pages":[{"title":"Compte \u0026 utilisation","sidebarTitle":"Aperçu","href":"/fr/api-reference/account/overview"},{"title":"Obtenir la clé courante (me)","openapi":"api-reference/openapi.json GET /me","href":"/fr/api-reference/account/me"},{"title":"Obtenir les credits","openapi":"api-reference/openapi.json GET /credits","href":"/fr/api-reference/account/credits"},{"title":"Obtenir l'utilisation","openapi":"api-reference/openapi.json GET /usage","href":"/fr/api-reference/account/usage"}]}]}]},{"tab":"MCP server","pages":[{"title":"MCP server","href":"/fr/mcp-server"}]},{"tab":"Vérification de contenu","pages":[{"title":"Vérification de contenu","href":"/fr/content-verification/overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/fr/changelog"}]}]},{"language":"it","footer":{"socials":{"linkedin":"https://www.linkedin.com/company/samsa-ai","website":"https://samsa.ai"},"links":[{"header":"Informazioni","items":[{"label":"Home documentazione","href":"/it"},{"label":"Changelog","href":"/it/changelog"},{"label":"Dashboard","href":"https://app.samsa.ai"},{"label":"Prezzi","href":"https://samsa.ai/it/prezzi"},{"label":"Contatti","href":"https://samsa.ai/it/contatto"}]},{"header":"Legale","items":[{"label":"Termini e condizioni","href":"https://samsa.ai/it/termini-e-condizioni"},{"label":"Politica di utilizzo accettabile","href":"https://samsa.ai/it/politica-utilizzo-accettabile"},{"label":"Informativa sulla privacy","href":"https://samsa.ai/it/informativa-sulla-privacy"},{"label":"Note legali","href":"https://samsa.ai/it/impronta"}]}]},"pages":[{"title":"it","href":"/it/api-reference/model-training/prepare"}]}]},"title":"Préparer un upload de modèle - Samsa","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","Page-kQh739Uz.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js","Markdown-BuPH8yuW.js","clsx-CCOYKgaU.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BnkC_6oA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BM4S31-f.js"]}