Démarrage rapide
Commencez par créer votre clé API
Chaque requête dans ce guide en nécessite une. Créer une clé prend moins d'une minute.
Créez votre clé APIQuatre étapes pour votre premier modèle 3D, en utilisant l'API REST de Meshy.
Vous utilisez un assistant de codage IA ? Consultez notre page Intégration IA — installez le serveur MCP de Meshy pour un accès aux outils depuis Claude Code, Cursor, Windsurf, et autres outils compatibles MCP, ou pointez un agent de chat simple vers llms.txt.
1Obtenez votre clé API
Créez une clé API à partir des paramètres de votre compte — vous ne pourrez plus la voir après cet écran, donc sauvegardez-la quelque part en sécurité. Chaque requête s'authentifie avec un token Bearer dans l'en-tête Authorization — voir Authentification.

Conseil de sécurité : évitez de coller votre clé directement dans les scripts — stockez-la plutôt comme une variable d'environnement : export MESHY_API_KEY="msy_...".
2Faites votre première demande Image en 3D
Exportez votre clé, puis créez votre première tâche avec Image en 3D. Vous travaillez à partir d'un prompt textuel ou de plusieurs photos ? Consultez Texte en 3D ou Multi-image en 3D.
Exporte ta clé
export MESHY_API_KEY="<your-api-key>"
Exécutez ceci dans votre terminal (Terminal sur macOS, Invite de commandes ou PowerShell sur Windows) — pas dans un navigateur.
Chaque exemple ci-dessous utilise cette photo — remplacez par votre propre image_url pour essayer autre chose.

Requête
curl https://api.meshy.ai/openapi/v1/image-to-3d \
-X POST \
-H "Authorization: Bearer ${MESHY_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"image_url": "https://docs.meshy.ai/images/api/quick-start/source-photo.webp"
}'
3Vérifiez l'état de la tâche
Les demandes renvoient un ID de tâche immédiatement. Interrogez le même point de terminaison jusqu'à ce que status soit SUCCEEDED — remplacez <task_id> ci-dessous par l'ID renvoyé à l'étape 2.
Requête
curl https://api.meshy.ai/openapi/v1/image-to-3d/<task_id> \
-H "Authorization: Bearer ${MESHY_API_KEY}"
Réponse — SUCCEEDED
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"status": "SUCCEEDED",
"progress": 100,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"task_error": {
"message": ""
}
}
Le polling n'est pas votre style ? Utilisez SSE streaming ou un webhook pour être notifié dès qu'une tâche se termine.
4Téléchargez votre modèle
Récupérez le modèle depuis model_urls dans la réponse ci-dessus. Chaque format (GLB, FBX, OBJ, USDZ, STL) est une URL signée et soumise à des limitations de temps — ou sautez la ligne de commande et collez simplement l'URL dans la barre d'adresse de votre navigateur pour le télécharger.
Télécharger
curl -L "<model_urls.glb from the response above>" -o model.glb

Les fichiers sont conservés pendant 3 jours sur les plans non-Enterprise — voir Conservation des ressources.
Assemblage complet
Vous préférez un script qui fait tout — créer, interroger, télécharger ?
Script complet
import axios from 'axios';
import fs from 'fs';
const headers = { Authorization: `Bearer ${process.env.MESHY_API_KEY}` };
const imageUrl = 'https://docs.meshy.ai/images/api/quick-start/source-photo.webp';
// 1. Créez la tâche
const { data: created } = await axios.post(
'https://api.meshy.ai/openapi/v1/image-to-3d',
{ image_url: imageUrl },
{ headers },
);
const taskId = created.result;
// 2. Interrogez jusqu'à ce que ça se termine
let task;
while (true) {
const { data } = await axios.get(`https://api.meshy.ai/openapi/v1/image-to-3d/${taskId}`, { headers });
task = data;
if (task.status === 'SUCCEEDED' || task.status === 'FAILED') break;
await new Promise((resolve) => setTimeout(resolve, 5000));
}
// 3. Téléchargez le résultat
const { data: model } = await axios.get(task.model_urls.glb, { responseType: 'arraybuffer' });
fs.writeFileSync('model.glb', model);
console.log('Saved model.glb');
Explorez des workflows courants
Personnage prêt pour le jeu
Associez un maillage humanoïde à un squelette pour qu'il soit prêt à être animé dans Unity ou Unreal.
Learn more →Ressource low-poly
Définissez model_type sur lowpoly dans Image en 3D pour un maillage propre et prêt pour le jeu.
Modèle pour impression 3D
Convertissez un modèle fini en un fichier 3MF multi-couleurs, prêt à découper et imprimer.
Learn more →Prochaines étapes
- Vous préférez une interface graphique ? Essayez le API Playground — configurez une requête, exécutez-la, et copiez le code généré.
- Parcourez la référence complète de l'API pour chaque point de terminaison.
- Vérifiez Tarification, Limites de taux, et Erreurs avant de passer en production.
- Surveillez le journal des modifications pour les mises à jour et corrections de bugs.
- Vous avez des retours ou rencontrez des problèmes ? Rejoignez notre communauté Discord — nous serions ravis d'avoir de vos nouvelles !