L’API Message Batches prend en charge le même ensemble de fonctionnalités que l’API Messages. Bien que cette page se concentre sur l’utilisation de l’API Message Batches, consultez Exemples de l’API Messages pour des exemples des fonctionnalités de l’API Messages.

Création d’un lot de messages

JSON
{
  "id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
  "type": "message_batch",
  "processing_status": "in_progress",
  "request_counts": {
    "processing": 2,
    "succeeded": 0,
    "errored": 0,
    "canceled": 0,
    "expired": 0
  },
  "ended_at": null,
  "created_at": "2024-09-24T18:37:24.100435Z",
  "expires_at": "2024-09-25T18:37:24.100435Z",
  "cancel_initiated_at": null,
  "results_url": null
}

Interrogation pour la complétion d’un lot de messages

Pour interroger un lot de messages, vous aurez besoin de son id, qui est fourni dans la réponse lors de la création de la requête ou en listant les lots. Exemple d’id : msgbatch_013Zva2CMHLNnXjNJJKqJ2EF.

Liste de tous les lots de messages dans un espace de travail

Output
{
  "id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
  "type": "message_batch",
  ...
}
{
  "id": "msgbatch_01HkcTjaV5uDC8jWR4ZsDV8d",
  "type": "message_batch",
  ...
}

Récupération des résultats d’un lot de messages

Une fois que le statut de votre lot de messages est ended, vous pourrez voir l’results_url du lot et récupérer les résultats sous forme de fichier .jsonl.

Output
{
  "id": "my-second-request",
  "result": {
    "type": "succeeded",
    "message": {
      "id": "msg_018gCsTGsXkYJVqYPxTgDHBU",
      "type": "message",
      ...
    }
  }
}
{
  "custom_id": "my-first-request",
  "result": {
    "type": "succeeded",
    "message": {
      "id": "msg_01XFDUDYJgAACzvnptvVoYEL",
      "type": "message",
      ...
    }
  }
}

Annulation d’un lot de messages

Immédiatement après l’annulation, le processing_status d’un lot sera canceling. Vous pouvez utiliser la même technique d’interrogation pour la complétion du lot pour vérifier quand l’annulation est finalisée car les lots annulés finissent également par être ended et peuvent contenir des résultats.

JSON
{
  "id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
  "type": "message_batch",
  "processing_status": "canceling",
  "request_counts": {
    "processing": 2,
    "succeeded": 0,
    "errored": 0,
    "canceled": 0,
    "expired": 0
  },
  "ended_at": null,
  "created_at": "2024-09-24T18:37:24.100435Z",
  "expires_at": "2024-09-25T18:37:24.100435Z",
  "cancel_initiated_at": "2024-09-24T18:39:03.114875Z",
  "results_url": null
}