# Texte en image
> **POST** `/v3/generation/text-to-image`
Générez une image à partir d'une invite de texte.
## Paramètres de la demande
### En-têtes de demande
| Paramètre | Tapez | Obligatoire | Par défaut | Descriptif |
| :-: | :-: | :-: | :-: | :-: |
| Content-Type | chaîne | Oui | - | `application/json` |
| Authorization | chaîne | Oui | - | `Bearer {api_key}` |
### Corps de la demande
| Paramètre | Tapez | Obligatoire | Par défaut | Descriptif |
| :-: | :-: | :-: | :-: | :-: |
| prompt | chaîne | Oui | - | Invite de texte, jusqu'à 1 024 caractères |
| model | chaîne | Non | `seedream_v4` | Modèle d'image. Valeurs prises en charge : `seedream_v5`, `seedream_v4`, `gemini-2.5-flash`, `gemini-3-pro`, `gemini-3.1-flash`, `chat_image_1`, `chat_image_1.5`, `chat_image_2`, `chat_image_2.5_flare`, `chat_image_2.5_sunburst` |
| quality | chaîne | Non | `low` | Niveau de qualité. Uniquement `chat_image_2` (`low`, `medium`, `high`) et `chat_image_2.5_flare` / `chat_image_2.5_sunburst` (plus `xhigh`, `max`). Omis équivaut à `low` ; `auto` n'est pas pris en charge. `high`/`xhigh`/`max` coûtent plus de crédits. |
| background | chaîne | Non | - | Gestion de l'arrière-plan. Uniquement `chat_image_2.5_flare` / `chat_image_2.5_sunburst` : `auto`, `opaque`, `transparent`. Avec d'autres modèles, la valeur est ignorée et non rejetée. `transparent` exige `output_format=png` (JPEG n'a pas de canal alpha). |
| template | chaîne | Non | - | Nom du modèle. Valeurs prises en charge : `asset_extraction`, `character_completion`, `t_pose`, `head_extraction`, `3d_enhance`, `variants`, `print_clay`, `figure` |
| t_pose | booléen | Non | `false` | Convertir en pose en T |
| sketch_to_render | booléen | Non | `false` | Convertir une esquisse en image rendue |
## Exemples de demande
### curl
```bash
curl -X POST https://openapi.tripo3d.ai/v3/generation/text-to-image \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"prompt": "A cat wearing a spacesuit, cyberpunk style",
"model": "seedream-v4"
}'
```
### Python
```python
import requests
url = "https://openapi.tripo3d.ai/v3/generation/text-to-image"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
}
payload = {
"prompt": "A cat wearing a spacesuit, cyberpunk style",
"model": "seedream-v4"
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
```
### JavaScript
```javascript
const url = "https://openapi.tripo3d.ai/v3/generation/text-to-image";
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
},
body: JSON.stringify({
prompt: "A cat wearing a spacesuit, cyberpunk style",
model: "seedream-v4"
})
});
const data = await response.json();
console.log(data);
```
## Réponse
### Réponse réussie
```json
{
"code": 0,
"data": {
"task_id": "task_abc123"
}
}
```
### Champs de réponse
| Paramètre | Tapez | Descriptif |
| :-: | :-: | :-: |
| code | entier | Code d'état. `0` indique le succès |
| data.task_id | chaîne | Identifiant de tâche unique utilisé pour interroger la progression et les résultats de la génération |
## Codes d'erreur
| Code d'état HTTP | Code d'erreur | Descriptif | Recommandation |
| :-: | :-: | :-: | :-: |
| 429 | 2000 | Limite de génération dépassée | Réduisez la fréquence des demandes et réessayez plus tard |
| 400 | 2002 | Paramètre de requête non pris en charge | Vérifier les noms des paramètres du corps de la requête et les plages de valeurs |
| 400 | 2008 | L'entrée viole la politique relative au contenu | Révisez l'invite et supprimez les descriptions qui ne respectent pas les règles. |
| 403 | 2010 | Crédits insuffisants | Ajoutez des crédits et réessayez |
| 400 | 2015 | Version du modèle obsolète | Mettez à niveau `model` vers une version actuellement prise en charge |
Texte en image
POST /v3/generation/text-to-image
Générez une image à partir d’une invite de texte.
Paramètres de la demande
En-têtes de demande
Paramètre
Tapez
Obligatoire
Par défaut
Descriptif
Content-Type
chaîne
Oui
-
application/json
Authorization
chaîne
Oui
-
Bearer {api_key}
Corps de la demande
Paramètre
Tapez
Obligatoire
Par défaut
Descriptif
prompt
chaîne
Oui
-
Invite de texte, jusqu’à 1 024 caractères
model
chaîne
Non
seedream_v4
Modèle d’image. Valeurs prises en charge : seedream_v5, seedream_v4, gemini-2.5-flash, gemini-3-pro, gemini-3.1-flash, chat_image_1, chat_image_1.5, chat_image_2, chat_image_2.5_flare, chat_image_2.5_sunburst
quality
chaîne
Non
low
Niveau de qualité. Uniquement chat_image_2 (low, medium, high) et chat_image_2.5_flare / chat_image_2.5_sunburst (plus xhigh, max). Omis équivaut à low ; auto n’est pas pris en charge. high/xhigh/max coûtent plus de crédits.
background
chaîne
Non
-
Gestion de l’arrière-plan. Uniquement chat_image_2.5_flare / chat_image_2.5_sunburst : auto, opaque, transparent. Avec d’autres modèles, la valeur est ignorée et non rejetée. transparent exige output_format=png (JPEG n’a pas de canal alpha).
template
chaîne
Non
-
Nom du modèle. Valeurs prises en charge : asset_extraction, character_completion, t_pose, head_extraction, 3d_enhance, variants, print_clay, figure
t_pose
booléen
Non
false
Convertir en pose en T
sketch_to_render
booléen
Non
false
Convertir une esquisse en image rendue
Exemples de demande
curl -X POST https://openapi.tripo3d.ai/v3/generation/text-to-image \
-H "Content-Type : application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"prompt" : "A cat wearing a spacesuit, cyberpunk style" ,
"model" : "seedream-v4"
}'
import requests
url = "https://openapi.tripo3d.ai/v3/generation/text-to-image"
headers = {
"Content-Type" : "application/json" ,
"Authorization" : "Bearer {api_key}"
}
payload = {
"prompt" : "A cat wearing a spacesuit, cyberpunk style" ,
"model" : "seedream-v4"
}
response = requests .post(url, headers=headers, json =payload)
print (response.json ())
const url = "https://openapi.tripo3d.ai/v3/generation/text-to-image" ;
const response = await fetch (url, {
method: "POST" ,
headers: {
"Content-Type" : "application/json" ,
"Authorization" : "Bearer {api_key}"
},
body: JSON.stringify({
prompt: "A cat wearing a spacesuit, cyberpunk style" ,
model: "seedream-v4"
})
});
const data = await response.json ();
console .log(data);
Réponse
Réponse réussie
{
"code" : 0 ,
"data" : {
"task_id" : "task_abc123"
}
}
Champs de réponse
Paramètre
Tapez
Descriptif
code
entier
Code d’état. 0 indique le succès
data.task_id
chaîne
Identifiant de tâche unique utilisé pour interroger la progression et les résultats de la génération
Codes d’erreur
Code d’état HTTP
Code d’erreur
Descriptif
Recommandation
429
2000
Limite de génération dépassée
Réduisez la fréquence des demandes et réessayez plus tard
400
2002
Paramètre de requête non pris en charge
Vérifier les noms des paramètres du corps de la requête et les plages de valeurs
400
2008
L’entrée viole la politique relative au contenu
Révisez l’invite et supprimez les descriptions qui ne respectent pas les règles.
403
2010
Crédits insuffisants
Ajoutez des crédits et réessayez
400
2015
Version du modèle obsolète
Mettez à niveau model vers une version actuellement prise en charge
Précédent Image vers Splat gaussienSuivant Image à image