# Journal des modifications

## Documentation correction (2026-08)

\`credits_consumed\`, \`balance\`, and \`frozen\` are JSON **numbers** with up to two decimal places (e.g. \`48.00\`, \`41465.00\`). Parse them as floating-point or decimal values — **do not** use integer parsing (\`int\`, \`parseInt\`, etc.), which will fail or truncate fractional credits (e.g. VIP discounts).

## v3.0 (2026-04)

### Nouvelle architecture API

- **Les points de terminaison dédiés remplacent le point de terminaison universel POST** : les points de terminaison spécifiques à une capacité, tels que `POST /v3/generation/text-to-model`, remplacent le précédent point de terminaison universel `POST /v2/openapi/task` par un champ `type`.
- **Convention de dénomination unifiée `{input}-to-{output}`** : tous les points de terminaison de génération utilisent des noms intuitifs tels que `text-to-model`, `image-to-multiview` et `multiview-to-model`.
- **Champ `input` unifié** : prend en charge l'inférence automatique de source d'entrée à partir de `task_id`, `file_token` ou URL, sans que vous ayez à spécifier manuellement le type d'entrée.
- **Suppression du chemin `/openapi` redondant** : La base URL est simplifiée de `/v2/openapi/` à `/v3/`
- **Le texte vers l'image et l'image vers l'image sont séparés en points de terminaison dédiés** : `text-to-image` et `image-to-image` ne sont plus combinés en un seul API

### Modifications des points de terminaison

| Point de terminaison v2 | Point de terminaison v3 |
| :-: | :-: |
| Type `POST /v2/openapi/task`=text_to_model | `POST /v3/generation/text-to-model` |
| Type `POST /v2/openapi/task`=image_to_model | `POST /v3/generation/image-to-model` |
| Type `POST /v2/openapi/task`=multiview_to_model | `POST /v3/generation/multiview-to-model` |
| Type `POST /v2/openapi/task`=text_to_image | `POST /v3/generation/text-to-image` |
| Type `POST /v2/openapi/task`=generate_image | `POST /v3/generation/image-to-image` |
| Type `POST /v2/openapi/task`=generate_multiview_image | `POST /v3/generation/image-to-multiview` |
| Type `POST /v2/openapi/task`=edit_multiview_image | `POST /v3/generation/edit-multiview` |
| Type `POST /v2/openapi/task`=refine_model | `POST /v3/models/refine` |
| Type `POST /v2/openapi/task`=convert_model | `POST /v3/models/convert` |
| Type `POST /v2/openapi/task`=import_model | `POST /v3/models/import` |
| Type `POST /v2/openapi/task`=stylize_model | `POST /v3/models/stylize` |
| Type `POST /v2/openapi/task`=texture_model | `POST /v3/models/texture` |
| Type `POST /v2/openapi/task`=animate_prerigcheck | `POST /v3/animations/rig-check` |
| Type `POST /v2/openapi/task`=animate_rig | `POST /v3/animations/rig` |
| Type `POST /v2/openapi/task`=animate_retarget | `POST /v3/animations/retarget` |
| Type `POST /v2/openapi/task`=mesh_segmentation | `POST /v3/mesh/segment` |
| Type `POST /v2/openapi/task`=mesh_completion | `POST /v3/mesh/complete` |
| Type `POST /v2/openapi/task`=highpoly_to_lowpoly | `POST /v3/mesh/decimate` |
| `GET /v2/openapi/task/{task_id}` | `GET /v3/tasks/{task_id}` |

### Modifications des champs

| Champ v2 | Champ v3 |
| :-: | :-: |
| `create_time` | `created_at` |
| `consumed_credit` | `credits_consumed` |
| `file` / `file_token` / `url` / `object` | Unifié sous le nom de `input` |

### Nouvelles capacités

- `POST /v3/tasks/list` - Tâches de requête par lots
- `POST /v3/files/upload-credentials` - Obtenez les informations d'identification de téléchargement direct de fichiers
- `GET /v3/account/usage` – Détails d'utilisation de la requête
