Aller au contenu

Développeurs · API

Habillez n’importe quel produit en
un seul appel API.

Le moteur qui fait tourner l’application NoShot, exposé en API REST épurée. Envoyez une image produit, récupérez des rendus sur mannequin photoréalistes et des masques nets — en quelques secondes, à l’échelle du catalogue.

Hôte
api.noshot.co
Appel
POST /v1/generate
en direct
200 OK · 4 rendus · 4K + masques
fr

<15s

par image

4K

masques nets

4

endpoints

500+

marques actives

Pourquoi l’API

L’image de production, en un endpoint

Tout ce que fait l’application, appelable depuis votre pipeline, votre PIM ou votre boutique — sans interface d’import, sans direction artistique manuelle.

01

Images sur mannequin par API

Un POST transforme un packshot à plat en rendus sur mannequin photoréalistes. Le mannequin, la pose, la lumière et le décor se choisissent en paramètres — pas en clics.

02

Par lot, à l’échelle du catalogue

Passez des milliers de références par /v1/batch en une seule requête. Mêmes crédits, un seul job à suivre — conçu pour des volumes de marketplace.

03

Export 4K, masques nets

Chaque rendu sort en 4K maximum avec un masque alpha au pixel près — prêt à composer ou à poser directement sur une fiche produit.

04

Des webhooks, pas du polling

Abonnez-vous à job.succeeded : nous envoyons les URL finales en POST sur votre endpoint dès qu’elles sont prêtes. Aucune boucle d’attente.

Démarrage rapide

Votre premier rendu en une requête

Authentifiez-vous avec un bearer token, envoyez en POST une image produit avec les paramètres de mannequin et de décor, puis interrogez le job ou attrapez le webhook. Voici l’aller-retour complet.

Requête

cURLPOST /v1/generate
curl -X POST https://api.noshot.co/v1/generate \
  -H "Authorization: Bearer $NOSHOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "product_image_url": "https://cdn.yourbrand.com/sku/8842-front.jpg",
    "category": "apparel",
    "model": { "gender": "female", "body": "medium", "skin_tone": "III" },
    "scene": { "preset": "studio-daylight", "background": "seamless-bone" },
    "output": { "count": 4, "resolution": "4k", "mask": true }
  }'
NodePOST /v1/generate
import NoShot from "@noshot/sdk";

const noshot = new NoShot({ apiKey: process.env.NOSHOT_API_KEY });

const job = await noshot.generate({
  productImageUrl: "https://cdn.yourbrand.com/sku/8842-front.jpg",
  category: "apparel",
  model: { gender: "female", body: "medium", skinTone: "III" },
  scene: { preset: "studio-daylight", background: "seamless-bone" },
  output: { count: 4, resolution: "4k", mask: true },
});

console.log(job.id, job.status); // "job_9f8c2a1b7d", "succeeded"
PythonPOST /v1/generate
import os
from noshot import NoShot

noshot = NoShot(api_key=os.environ["NOSHOT_API_KEY"])

job = noshot.generate(
    product_image_url="https://cdn.yourbrand.com/sku/8842-front.jpg",
    category="apparel",
    model={"gender": "female", "body": "medium", "skin_tone": "III"},
    scene={"preset": "studio-daylight", "background": "seamless-bone"},
    output={"count": 4, "resolution": "4k", "mask": True},
)

print(job.id, job.status)  # "job_9f8c2a1b7d", "succeeded"

Réponse

JSON200 OK
{
  "id": "job_9f8c2a1b7d",
  "status": "succeeded",
  "credits_used": 4,
  "images": [
    {
      "url": "https://cdn.noshot.co/v1/renders/9f8c2a1b7d/01.png",
      "width": 3072,
      "height": 4096,
      "mask_url": "https://cdn.noshot.co/v1/renders/9f8c2a1b7d/01-mask.png"
    },
    {
      "url": "https://cdn.noshot.co/v1/renders/9f8c2a1b7d/02.png",
      "width": 3072,
      "height": 4096,
      "mask_url": "https://cdn.noshot.co/v1/renders/9f8c2a1b7d/02-mask.png"
    }
  ],
  "created_at": "2026-07-22T09:41:20Z"
}

À titre indicatif — la référence à jour dans l’application liste tous les paramètres et chaque préréglage de décor.

Un appel, deux bouts

Robe fourreau en soie — Soie ivoire coupée en biais, encolure perlée
EntréeRobe fourreau en soie
Robe fourreau en soie — Chaque perle là où vous l'avez posée
Sortie3072 × 4096

Endpoints

Une surface réduite, volontairement

Quatre endpoints couvrent tout le cycle de vie — générer, vérifier, traiter par lot, explorer.

POST
/v1/generateCrée un job de rendu à partir d’une image produit et de vos paramètres de mannequin et de décor.
GET
/v1/jobs/{id}Interroge un job : statut, URL des images et URL des masques.
POST
/v1/batchMet en file de nombreuses références en une requête, pour les runs à l’échelle du catalogue.
GET
/v1/modelsListe les préréglages de mannequins, morphologies, carnations et décors disponibles.

Quotas & tarifs

À crédits, et simple

Une image, un crédit — c’est tout le modèle tarifaire.

01
1 image = 1 crédit. Les rendus supplémentaires d’une requête puisent dans le même solde.
02
Les rendus échoués ou refusés ne sont jamais facturés.
03
Chaque réponse renvoie un en-tête X-Credits-Remaining pour suivre la consommation.
04
Les quotas augmentent avec votre plan ; en Enterprise, ils disparaissent.
PlanImagesQuota
Free1030 req/min
Starter100 / mois60 req/min
StudioLe plus choisi400 / mois120 req/min
EnterpriseIllimitéSur mesure

Les crédits proviennent de votre plan NoShot — tous les paliers sont sur la page Tarifs.

Référence complète

La doc complète vit dans l’application

Chaque paramètre, événement webhook, code d’erreur et SDK officiel — versionnés et interactifs — se trouve dans votre tableau de bord. Créez une clé : la référence s’ouvre juste à côté.

Publiez vos images sur mannequin,
par API.

Créez une clé dans l’application et lancez votre premier appel en quelques minutes. Palier gratuit inclus — sans carte.