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

# Lister les envois d'un événement

> Chaque envoi de l'événement à vos endpoints, renvoi compris, du plus récent au plus ancien, avec chaque tentative et le code renvoyé par votre serveur. Pour comprendre depuis votre code pourquoi un événement n'est pas arrivé. Le corps des réponses de votre serveur n'est pas renvoyé.

Un événement qui n'est pas arrivé ? Cette liste montre chaque tentative : le code HTTP renvoyé par votre serveur, la durée, ou l'erreur réseau. Corrigez votre serveur, puis [renvoyez l'événement](https://docs.mercy-pay.com/api/events/resend.md).


## OpenAPI

````yaml GET /api/v1/events/{id}/deliveries
openapi: 3.1.0
info:
  title: API Mercy Pay
  version: 1.0.0
  description: >-
    Encaissez par mobile money et par carte, facturez en récurrent et versez vos
    fonds. Les montants sont des entiers en unités mineures. Chaque réponse
    porte un en-tête `Request-Id`.
servers:
  - url: https://mercy-pay.com
    description: >-
      Production. La clé choisit l'environnement : `mp_sandbox_…` ou
      `mp_live_…`.
security:
  - bearerAuth: []
tags:
  - name: Compte
  - name: Sessions de paiement
  - name: Paiements
  - name: Remboursements
    description: Rendre un paiement au client, en entier.
  - name: Liens de paiement
  - name: Plans
  - name: Abonnements
  - name: Clients
  - name: Factures
  - name: Espace client
  - name: Soldes
  - name: Retraits
  - name: État des opérateurs
  - name: Événements
    description: Tout ce qui s'est passé sur le compte, envoyé ou non à un endpoint.
  - name: Endpoints de webhook
    description: Les URL de votre serveur qui reçoivent les événements.
paths:
  /api/v1/events/{id}/deliveries:
    get:
      tags:
        - Événements
      summary: Lister les envois d'un événement
      description: >-
        Chaque envoi de l'événement à vos endpoints, renvoi compris, du plus
        récent au plus ancien, avec chaque tentative et le code renvoyé par
        votre serveur. Pour comprendre depuis votre code pourquoi un événement
        n'est pas arrivé. Le corps des réponses de votre serveur n'est pas
        renvoyé.
      operationId: listEventDeliveries
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
          description: Identifiant de l'événement (`evt_…`)
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/StartingAfter'
        - $ref: '#/components/parameters/EndingBefore'
      responses:
        '200':
          description: Les envois
          content:
            application/json:
              schema:
                type: object
                properties:
                  object:
                    type: string
                    enum:
                      - list
                  url:
                    type: string
                  has_more:
                    type: boolean
                  next_cursor:
                    type:
                      - string
                      - 'null'
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/WebhookDelivery'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  parameters:
    Limit:
      name: limit
      in: query
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 20
      description: Nombre d'objets. Voir [Pagination](/developers/pagination)
    StartingAfter:
      name: starting_after
      in: query
      schema:
        type: string
      description: Le `next_cursor` de la page précédente
    EndingBefore:
      name: ending_before
      in: query
      schema:
        type: string
      description: Un id, pour la page qui le précède
  schemas:
    WebhookDelivery:
      type: object
      properties:
        id:
          type: string
          description: Identifiant de l'envoi (`whd_…`)
        object:
          type: string
          enum:
            - webhook_delivery
        livemode:
          type: boolean
        created:
          type: string
          format: date-time
        event:
          type: string
          description: L'événement envoyé (`evt_…`)
        webhook_endpoint:
          type:
            - string
            - 'null'
          description: L'endpoint visé (`we_…`)
        url:
          type:
            - string
            - 'null'
        status:
          type: string
          enum:
            - pending
            - delivered
            - failed
        attempt_count:
          type: integer
        response_code:
          type:
            - integer
            - 'null'
          description: Dernier code HTTP reçu
        next_retry_at:
          type:
            - string
            - 'null'
          format: date-time
        delivered_at:
          type:
            - string
            - 'null'
          format: date-time
        attempts:
          type: array
          items:
            type: object
            properties:
              number:
                type: integer
              attempted_at:
                type: string
                format: date-time
              status_code:
                type:
                  - integer
                  - 'null'
                description: >-
                  Code HTTP renvoyé par votre serveur, `null` s'il n'a pas
                  répondu
              duration_ms:
                type:
                  - integer
                  - 'null'
              error:
                type:
                  - string
                  - 'null'
                description: Erreur réseau, par exemple un délai dépassé
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - authentication_error
                - invalid_request_error
                - idempotency_error
                - payment_error
                - rate_limit_error
                - api_error
            code:
              type: string
              description: Code stable, à tester dans votre code
            message:
              type: string
              description: Explication en français, pour un humain
            param:
              type:
                - string
                - 'null'
              description: Le premier champ en cause
            doc_url:
              type: string
              description: Explication de ce code
            request_id:
              type: string
              description: >-
                Identifiant de la requête (`req_…`), aussi dans l'en-tête
                `Request-Id`
            errors:
              type: object
              additionalProperties:
                type: array
                items:
                  type: string
              description: Détail par champ refusé, sur une erreur `422`
      required:
        - error
  responses:
    Unauthorized:
      description: Clé absente, invalide ou révoquée
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              type: authentication_error
              code: api_key_invalid
              message: Clé API invalide.
              param: null
              doc_url: https://docs.mercy-pay.com/developers/errors#api_key_invalid
              request_id: req_01jc8x4m2v7t9qk3n5w6y8z0ab
    NotFound:
      description: Ressource inconnue, ou d'un autre marchand ou environnement
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              type: invalid_request_error
              code: resource_not_found
              message: Ressource introuvable.
              param: null
              doc_url: https://docs.mercy-pay.com/developers/errors#resource_not_found
              request_id: req_01jc8x4m2v7t9qk3n5w6y8z0ab
    RateLimited:
      description: Plus de 60 requêtes par minute avec cette clé
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              type: rate_limit_error
              code: rate_limited
              message: Trop de requêtes.
              param: null
              doc_url: https://docs.mercy-pay.com/developers/errors#rate_limited
              request_id: req_01jc8x4m2v7t9qk3n5w6y8z0ab
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Votre clé API. Utilisez une clé sandbox (`mp_sandbox_…`) pour essayer :
        aucun argent réel ne bouge.

````

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