🔌

BrandMotion API

v1

Intégrez la génération de logos IA dans vos applications. Authentification par clé API, 5 endpoints REST.

Authentification

Toutes les requêtes doivent inclure votre clé API dans le header X-API-Key.

curl https://brandmotion.app/api/v1/credits \
  -H "X-API-Key: bm_live_votre_clé_ici"

Format de la clé

bm_live_xxxxxxxx (48 chars)

Obtenir une clé

Plan Business requis

Rate limit

10–120 req/min selon le tier

Démarrage rapide

Générer 24 logos en 3 appels API :

# 1. Lancer la génération
curl -X POST https://brandmotion.app/api/v1/generate \
  -H "X-API-Key: bm_live_xxxx" \
  -H "Content-Type: application/json" \
  -d '{"company_name":"Acme","description":"Startup tech moderne","style":"dynamic","pack":"starter"}'

# 2. Attendre que la génération se termine (polling)
curl https://brandmotion.app/api/v1/status/{project_id} \
  -H "X-API-Key: bm_live_xxxx"

# 3. Récupérer les logos et leurs URLs
curl https://brandmotion.app/api/v1/logos/{project_id} \
  -H "X-API-Key: bm_live_xxxx"

Packs & Styles disponibles

Packs (pack)

starter24 logos — Idéal pour tester
pro150 logos — Usage régulier
ultimate500 logos — Volume élevé

Styles (style)

dynamic
illustration
cinematic
none

Endpoints

Lancer une génération de logos. Consomme 1 crédit.

Request body

{
  "company_name": "Acme",
  "description": "Tech startup moderne",
  "style": "dynamic",
  "pack": "starter"
}

Response 200

{
  "project_id": "uuid",
  "status": "processing",
  "pack": "starter",
  "logo_count": 24,
  "credits_remaining": 99
}
🔑 X-API-Key requis

Polling — attendre la fin de génération

La génération est asynchrone (5–10 min). Interrogez /status/{project_id} jusqu'à status === "completed".

// JavaScript — polling toutes les 10 secondes
async function waitForCompletion(projectId, apiKey) {
  while (true) {
    const res = await fetch(`https://brandmotion.app/api/v1/status/${projectId}`, {
      headers: { 'X-API-Key': apiKey }
    });
    const data = await res.json();

    if (data.status === 'completed') return data;
    if (data.status === 'failed') throw new Error('Generation failed');

    await new Promise(r => setTimeout(r, 10000)); // attendre 10s
  }
}

Codes d'erreur

CodeSignification
400Paramètre invalide (body malformé, pack inconnu, etc.)
401Clé API manquante ou invalide
403Crédits insuffisants ou tier insuffisant
404Ressource introuvable (project_id ou logo_id inexistant)
429Rate limit dépassé (voir header Retry-After)
500Erreur interne — contactez support@brandmotion.app

Prêt à intégrer BrandMotion ?

Créez votre clé API depuis votre dashboard — plan Business requis.

Accéder à mes clés API →