Démarrage
Créez une clé depuis votre profil.
Envoyez-la comme Bearer token.
Utilisez uniquement des URL HTTPS publiques pour les médias.
Authentification
Tous les endpoints publics documentés ici acceptent la même clé. Les ressources sont toujours limitées au propriétaire authentifié.
Authorization: Bearer qqm_live_REPLACE_WITH_YOUR_KEY
Content-Type: application/jsonGénération
/api/studio/generateGénère un PNG ou un MP4 hébergé et peut l’ajouter à Mes créations.
Limite spécifique : 20 requêtes par minute.
Mode rapide
Le mode quick couvre les paramètres courants sans envoyer un snapshot complet du Studio.
curl --request POST "https://www.quickquotemaker.com/api/studio/generate" \
--header "Authorization: Bearer qqm_live_REPLACE_WITH_YOUR_KEY" \
--header "Content-Type: application/json" \
--data '{
"mode": "quick",
"name": "Daily inspiration",
"quick": {
"text": "The future depends on what you do today.",
"author": "Mahatma Gandhi",
"ratio": "instagramPost",
"fontFamily": "Playfair Display",
"textColor": "#ffffff",
"align": "center",
"quoteMark": "curly",
"bold": true,
"background": {
"type": "gradient",
"from": "#0f172a",
"to": "#2563eb"
}
}
}'| Field | Required | Description |
|---|---|---|
| quick.text | Yes | 1–2,000 characters |
| quick.author | No | Up to 300 characters |
| quick.freeText | No | Up to 2,000 characters |
| quick.ratio | No | Any supported output ratio |
| quick.background | No | Solid, gradient, or public image |
| name | No | Name in My creations |
| record | No | Defaults to true |
Mode snapshot
Le mode snapshot accepte le design complet du Quote Studio : typographie distincte des trois textes, arrière-plan, filtres, overlay, bordure, ombres, boîtes de texte, transformations, positions et watermarks.
{
"mode": "snapshot",
"name": "Story campaign",
"design": {
"quote": "Build something worth sharing.",
"author": "QuickQuoteMaker",
"freeText": "@yourbrand",
"ratio": "tiktok",
"bgMode": "image",
"overlayOn": true,
"overlayColor": "#020617",
"overlayOpacity": 45,
"fontFamily": "Comfortaa",
"fontSize": 68,
"textColor": "#ffffff",
"align": "center",
"bold": true,
"watermarkTextOn": true,
"watermarkText": "quickquotemaker.com"
},
"backgroundUrl": "https://images.example.com/background.jpg",
"record": true
}backgroundUrl remplace l’image définie dans design. Les champs omis utilisent les valeurs par défaut normalisées du Studio.
Arrière-plan vidéo
Une URL vidéo HTTPS publique produit un MP4 silencieux avec le texte, les filtres, l’overlay, les watermarks et la bordure du Studio.
{
"mode": "snapshot",
"design": {
"quote": "Motion makes the message visible.",
"author": "QuickQuoteMaker",
"ratio": "instagramStory",
"bgMode": "video"
},
"videoUrl": "https://cdn.example.com/background.mp4",
"durationSeconds": 8,
"record": true
}- Vidéo source : 50 Mo maximum.
- Durée : de 2 à 15 secondes, 6 secondes par défaut.
- videoUrl remplace les autres arrière-plans.
- La sortie ne contient aucune piste audio.
Collections
/api/collectionsListe les métadonnées des collections.
/api/collectionsCrée une collection et retourne son identifiant.
/api/collections/{id}Retourne une collection avec toutes ses slides.
/api/collections/{id}Remplace le titre et/ou la liste complète des slides.
/api/collections/{id}Supprime définitivement une collection.
curl --request POST "https://www.quickquotemaker.com/api/collections" \
--header "Authorization: Bearer qqm_live_REPLACE_WITH_YOUR_KEY" \
--header "Content-Type: application/json" \
--data '{
"title": "Daily inspiration",
"slides": [{
"id": "slide-1",
"durationSeconds": 5,
"transition": "slide",
"design": {
"snapshot": {
"quote": "Begin with one clear step.",
"ratio": "tiktok"
},
"imageUrl": "https://images.example.com/background.jpg",
"bgMode": "image"
}
}]
}'- 60 slides maximum par collection.
durationSeconds: 1–30.transition:fade,slide,zoom,cut.- Les titres sont uniques par utilisateur, sans distinction de casse ou d’espaces superflus.
- Un titre dupliqué retourne HTTP 409 avec collection_title_duplicate.
Référence
Formats disponibles
square 1080×1080portrait 1080×1350landscape 1200×675instagramPost 1080×1080instagramStory 1080×1920tiktok 1080×1920facebook 1200×630x 1600×900pinterest 1000×1500linkedinPost 1200×1200linkedinBanner 1584×396youtube 1280×720customRéponse de génération
{
"id": "f3f0ea51-086d-4bc2-8f63-5c63e73db902",
"url": "https://PROJECT.supabase.co/storage/v1/object/public/downloaded-images/ID.png",
"width": 1080,
"height": 1080,
"format": "PNG"
}Limitation globale
Les réponses limitées utilisent HTTP 429 et fournissent Retry-After, X-RateLimit-Limit, X-RateLimit-Remaining et X-RateLimit-Reset.
Erreurs
| HTTP | Error | Meaning |
|---|---|---|
| 400 | invalid_request | Malformed JSON |
| 401 | unauthorized | Missing, invalid, revoked, or regenerated key |
| 404 | not_found | Resource absent or owned by another user |
| 409 | collection_title_duplicate | Collection title already used |
| 422 | invalid_payload | Validation failed |
| 422 | invalid_video | Unavailable, private, invalid, or oversized source |
| 429 | rate_limit_exceeded | Request limit reached |
| 500 | render_failed | Media rendering failed |
| 503 | not_configured | Service configuration unavailable |
Nouveautés
2026-08-25
Collections plus sûres et export ZIP
- Undo/redo dispose maintenant d’un historique complet de la session, navigable par étape, avec restauration des arrière-plans et raccourcis clavier.
- Quote Studio propose désormais grilles, règles, guides d’alignement, magnétisme, marges et largeur de texte personnalisables, ainsi qu’un inspecteur numérique X/Y/L/H.
- Le menu Format peut afficher les zones de sécurité et une simulation de l’interface pour chaque plateforme sociale, sans les inclure dans les exports.
- La citation, l’auteur et le texte libre sont modifiables directement sur le canvas du Quote Studio.
- Les titres de collection dupliqués sont refusés côté Studio et API.
- Le code d’erreur collection_title_duplicate est documenté.
- Quote Studio peut télécharger les slides d’une collection dans un ZIP de PNG ordonnés.
- Une confirmation précède désormais toute suppression depuis Quote Studio ou le profil.
2026-08-24
Collections vidéo
- Transitions fade, slide, zoom et cut.
- Durée de slide de 1 à 30 secondes et jusqu’à 60 slides.
- Génération d’images PNG et de vidéos MP4 avec arrière-plan distant.