# UV intelligent
> **POST** `/v3/mesh/uv`
Redéplie les UV d'un modèle 3D et reporte ses textures, son rigging et ses animations existants sur la nouvelle disposition.
Chaque tâche coûte **20** crédits. Le résultat contient `model_url` ainsi qu'un aperçu de la disposition UV `uv_render_url`. Le modèle d'entrée ne doit pas dépasser **80 000 triangles équivalents** (un quad compte pour deux) ; les modèles plus lourds sont acceptés à la création mais la tâche échoue et les crédits sont remboursés.
## 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 |
| :-: | :-: | :-: | :-: | :-: |
| input | chaîne | Oui | — | Source du modèle. Accepte un task_id, un file_token ou une URL |
| model | chaîne | Non | `default` | Version du modèle UV intelligent. Seul `default` est pris en charge |
| bake | booléen | Non | `true` | Cuire les textures existantes sur la nouvelle disposition UV. Avec `false`, seule la géométrie avec UV est renvoyée |
| export_orientation | chaîne | Non | — | Orientation du modèle exporté : `+x`, `-x`, `+y` ou `-y` |
| compress | chaîne | Non | — | Type de compression. `geometry` : compression meshopt |
## Exemples de demande
### curl
```bash
curl -X POST https://openapi.tripo3d.ai/v3/mesh/uv \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"input": "task_abc123",
"bake": true
}'
```
### Python
```python
import requests
url = "https://openapi.tripo3d.ai/v3/mesh/uv"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
}
payload = {
"input": "task_abc123",
"bake": True
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
```
### JavaScript
```javascript
const url = "https://openapi.tripo3d.ai/v3/mesh/uv";
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
},
body: JSON.stringify({
input: "task_abc123",
bake: true
})
});
const data = await response.json();
console.log(data);
```
## Réponse
### Réponse réussie
```json
{
"code": 0,
"data": {
"task_id": "task_def456"
}
}
```
### Champs de réponse
| Paramètre | Tapez | Descriptif |
| :-: | :-: | :-: |
| code | entier | Code d'état. `0` indique le succès |
| data.task_id | chaîne | Identifiant unique de la tâche pour interroger la progression et le résultat |
## Codes d'erreur
| Code d'état HTTP | Code d'erreur | Descriptif | Recommandation |
| :-: | :-: | :-: | :-: |
| 429 | 2000 | Limite de génération dépassée | Réduisez le taux de demandes et réessayez plus tard |
| 400 | 1004 | Paramètre ou entrée invalide | Vérifiez les noms, les valeurs et la source d'entrée |
| 403 | 2010 | Crédits insuffisants | Recharger les crédits et réessayer |
UV intelligent
POST/v3/mesh/uv
Redéplie les UV d’un modèle 3D et reporte ses textures, son rigging et ses animations existants sur la nouvelle disposition.
Chaque tâche coûte 20 crédits. Le résultat contient model_url ainsi qu’un aperçu de la disposition UV uv_render_url. Le modèle d’entrée ne doit pas dépasser 80 000 triangles équivalents (un quad compte pour deux) ; les modèles plus lourds sont acceptés à la création mais la tâche échoue et les crédits sont remboursés.
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
input
chaîne
Oui
—
Source du modèle. Accepte un task_id, un file_token ou une URL
model
chaîne
Non
default
Version du modèle UV intelligent. Seul default est pris en charge
bake
booléen
Non
true
Cuire les textures existantes sur la nouvelle disposition UV. Avec false, seule la géométrie avec UV est renvoyée
export_orientation
chaîne
Non
—
Orientation du modèle exporté : +x, -x, +y ou -y
compress
chaîne
Non
—
Type de compression. geometry : compression meshopt