> ## Documentation Index
> Fetch the complete documentation index at: https://www.macaly.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Aperçu de l'API

> Créez et déployez des applications web de manière programmatique avec l'API Macaly

L'API Macaly permet aux applications externes de créer des sessions de chat, de construire des applications web avec l'IA et de les déployer en production de manière programmatique.

<Callout icon="user">
  Disponible uniquement avec le [**forfait Agences**](/docs/fr/welcome/pricing)
</Callout>

## URL de base

```
https://www.macaly.com
```

## Démarrage rapide

1. **Obtenez une clé API** - Voir [Authentification](/docs/fr/api/authentication)
2. **Créez un chat** - Envoyez un prompt pour commencer à construire
3. **Interrogez le statut** - Attendez que l'IA ait terminé
4. **Déployez** - Publiez votre application en production

## Endpoints disponibles

| Méthode | Endpoint | Description |
| - | - | - |
| POST | [`/api/chat`](/docs/fr/api/create-chat) | Créer un nouveau chat et commencer à construire |
| POST | [`/api/chat/{chatId}/publish`](/docs/fr/api/publish-message) | Envoyer un message à un chat existant |
| POST | [`/api/client-app/assets/upload`](/docs/fr/api/upload-asset) | Téléverser un fichier et obtenir une URL CDN permanente |
| GET | [`/api/chat/{chatId}/status`](/docs/fr/api/get-status) | Interroger le statut du workflow |
| GET | [`/api/chat/{chatId}/subscribe`](/docs/fr/api/subscribe-stream) | S'abonner au stream en temps réel |
| POST | [`/api/chat/{chatId}/deploy`](/docs/fr/api/deploy) | Déployer le chat en production |
| GET | [`/api/chat/{chatId}/deployment`](/docs/fr/api/get-deployment) | Obtenir le statut du déploiement |

## Limites de requêtes et crédits

* Les requêtes API consomment des crédits du solde de votre équipe
* Chaque création de chat coûte le même nombre de crédits que via l'interface web
* Les tentatives échouées de clé API sont limitées (5 par minute par IP)
* Surveillez votre consommation dans **Paramètres → Utilisation et limites**

## Gestion des erreurs

Toutes les erreurs retournent du JSON avec un champ `error` :

```json theme={null}
{
  "error": "Error message here"
}
```

### Codes de statut HTTP

| Statut | Description |
| - | - |
| 400 | Bad Request - Corps de requête invalide |
| 401 | Unauthorized - Clé API invalide ou manquante |
| 402 | Payment Required - Crédits insuffisants |
| 403 | Forbidden - Pas de permission ou mauvaise équipe |
| 404 | Not Found - Ressource introuvable |
| 422 | Unprocessable Entity - Erreur de validation |
| 429 | Too Many Requests - Limite de requêtes atteinte |
| 500 | Internal Server Error - Erreur côté serveur |
| 503 | Service Unavailable - Serveur occupé, réessayez plus tard |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.