> ## 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.

# Obtenir le statut

> Interrogez le statut d'un workflow de chat

Interroge le statut d'un workflow de chat. Utile pour vérifier si un chat a terminé son traitement sans maintenir une connexion streaming.

## Requête

```
GET /api/chat/{chatId}/status
```

### En-têtes

| En-tête | Requis | Description |
| - | - | - |
| `Authorization` | Oui | `Bearer macaly_...` |

### Paramètres de chemin

| Paramètre | Type | Description |
| - | - | - |
| `chatId` | string | L'ID du chat retourné par `POST /api/chat` |

### Exemple de requête

<CodeGroup>
  ```bash cURL theme={null}
  curl https://www.macaly.com/api/chat/abc123/status \
    -H "Authorization: Bearer macaly_abc123..."
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    `https://www.macaly.com/api/chat/${chatId}/status`,
    {
      headers: {
        'Authorization': 'Bearer macaly_abc123...',
      },
    }
  );

  const data = await response.json();
  console.log(data.status);
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      f'https://www.macaly.com/api/chat/{chat_id}/status',
      headers={
          'Authorization': 'Bearer macaly_abc123...',
      },
  )

  data = response.json()
  print(data['status'])
  ```
</CodeGroup>

## Réponse

```json theme={null}
{
  "chatId": "abc123",
  "url": "https://www.macaly.com/chat/abc123",
  "status": "completed",
  "result": {
    "content": "Here's what I built for you..."
  }
}
```

### Champs de la réponse

| Champ | Type | Description |
| - | - | - |
| `chatId` | string | L'ID du chat |
| `url` | string | URL pour voir le chat dans le navigateur |
| `status` | string | Statut actuel du workflow (voir ci-dessous) |
| `result.content` | string | Dernier message de l'assistant (uniquement quand `completed`) |
| `error.message` | string | Description de l'erreur (uniquement quand `failed`) |

### Valeurs de statut

| Statut | Description |
| - | - |
| `running` | Le workflow est en cours d'exécution |
| `completed` | Terminé avec succès |
| `failed` | Une erreur s'est produite |
| `cancelled` | Le workflow a été annulé manuellement |
| `no_active_workflow` | Aucun workflow trouvé pour ce chat |

## Codes de statut

| Statut | Description |
| - | - |
| 200 | Succès |
| 401 | Clé API invalide ou manquante |
| 403 | Le chat n'appartient pas à votre équipe |
| 404 | Chat introuvable |

## Pattern de polling

```bash theme={null}
while true; do
  STATUS=$(curl -s https://www.macaly.com/api/chat/$CHAT_ID/status \
    -H "Authorization: Bearer macaly_...")

  echo "Status: $(echo $STATUS | jq -r .status)"

  if echo "$STATUS" | grep -q '"status":"completed"'; then
    echo "Done!"
    break
  fi

  sleep 2
done
```

## Étapes suivantes

Une fois le statut `completed`, vous pouvez :

1. **Déployer l'application** avec [`POST /api/chat/{chatId}/deploy`](/docs/fr/api/deploy)


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