POST qui
soumet un job plus un GET qui l’interroge :
Image source
Chaque opération prend sa source des trois mêmes façons — fournis exactement un mode par source :image_id— l’id d’une image qui appartient au créateur de la clé dans Samsa ; tout autre id renvoie404, y compris celui d’une image créée par un autre membre de ton organisation.url— une URLhttpsque le serveur télécharge sous sa protection SSRF.base64+mime_type— octets en ligne,mime_typeparmiimage/jpeg,image/png,image/webp.
422. Img2img accepte un tableau images (1 à 14
sources) ; les cinq autres prennent un seul objet image.
Modèle asynchrone
Chaque soumission renvoie202 Accepted avec un handle de job
{ "id", "status": "pending", "estimated_credits" }. Interroge l’endpoint
GET .../{id} de l’opération jusqu’à ce que status soit completed (ou
failed/cancelled), puis lis le résultat — chaque asset produit porte une
presigned url valable 24 heures. Passe un webhook_url pour être notifié au
lieu d’interroger (voir Webhooks).
Hits de cache (suppression d’arrière-plan & vectorisation). Quand la source est
un
image_id que tu possèdes et qu’un résultat existe déjà pour lui, la soumission
renvoie immédiatement 202 avec status: "completed" et
estimated_credits: 0 — aucun nouveau job n’est mis en file et le plafond de
concurrence de ton organisation n’est pas consommé. Toute autre source (une url
https, base64 ou un image_id possédé sans résultat prêt) est le chemin
asynchrone facturé normal.Scopes
Img2img est une opération d’édition et requiert le scopeimages.edit. Les cinq
autres sont des opérations de transformation et requièrent images.transform.
Une clé sans le scope requis reçoit
403 missing_scope.
Credits
Les coûts puisent dans le solde que le credential appelant peut dépenser, pas nécessairement dans tout le pool de l’organisation ; s’il est insuffisant, l’API renvoie402 insufficient_credits ou les
codes liés aux équipes
insufficient_team_credits /
insufficient_unallocated_credits
dans les organisations avec au moins une équipe active (les organisations système
exemptées du budgeting par équipe restent sur le code générique). Une défaillance
opérationnelle dans la déduction elle-même peut aussi apparaître comme le générique
insufficient_credits, quel que soit le régime. La page de chaque opération
indique sa base de coût. Voir Tarifs et
GET /credits.
