WebhookDelivery
One delivery of one event to one webhook endpoint, shown under Event deliveries on the endpoint page
in the dashboard.
There is one record per delivery, not one per attempt. MONEI updates it after each attempt.
status is PENDING before the first attempt and between retries. It becomes FAILED only when
no attempt is left, so a delivery that MONEI still retries never shows as failed. MONEI keeps
deliveries for 30 days.
type WebhookDelivery {
id: ID!
webhookId: ID!
accountId: ID!
eventId: String!
eventType: String!
url: String!
livemode: Boolean!
status: CallbackStatus!
source: WebhookDeliverySource!
attempts: Int!
nextRetryAt: Int
statusCode: String
statusMessage: String
durationMs: Int
bodyTruncated: Boolean!
createdAt: String!
updatedAt: String
}
Fields
WebhookDelivery.id ● ID! non-null scalar
Delivery ID.
WebhookDelivery.webhookId ● ID! non-null scalar
ID of the webhook endpoint that receives the delivery.
WebhookDelivery.accountId ● ID! non-null scalar
ID of the account that owns the endpoint.
WebhookDelivery.eventId ● String! non-null scalar
ID of the source event, the id of the payload. The dashboard shows it as Event ID. It stays the same on a resend, so an endpoint can remove duplicates with it.
WebhookDelivery.eventType ● String! non-null scalar
Type of the source event in dotted form, such as charge.succeeded. The dashboard shows it as Event.
WebhookDelivery.url ● String! non-null scalar
Endpoint URL as configured when the delivery was created.
WebhookDelivery.livemode ● Boolean! non-null scalar
true for a live-mode event, false for a test-mode event.
WebhookDelivery.status ● CallbackStatus! non-null enum
Delivery state. The dashboard shows it as Status. PENDING while attempts remain (Pending, or
Retrying after a failed attempt). EXECUTED once the endpoint answered with a 2xx status
(Delivered). FAILED when no attempt is left, or when MONEI could not send it, for example to a
disabled or deleted endpoint, to a local address, or with neither an account API key nor a
webhook secret to sign it (Failed).
WebhookDelivery.source ● WebhookDeliverySource! non-null enum
Whether the event created this delivery or a manual resend did.
WebhookDelivery.attempts ● Int! non-null scalar
Number of attempts made so far. The dashboard shows it as Attempts.
WebhookDelivery.nextRetryAt ● Int scalar
Time of the next retry, in Unix seconds. The dashboard shows it as Next retry. null when no retry is scheduled.
WebhookDelivery.statusCode ● String scalar
HTTP status code of the most recent attempt, as a string. A network error code, such as
ECONNRESET, when no response arrived. The dashboard shows it as Response code, with
statusMessage.
WebhookDelivery.statusMessage ● String scalar
Response body or error text of the most recent attempt, cut to about 200 characters.
WebhookDelivery.durationMs ● Int scalar
Duration of the most recent attempt, in milliseconds. The dashboard shows it as Duration.
WebhookDelivery.bodyTruncated ● Boolean! non-null scalar
true when the payload was larger than 300 KB and MONEI stored only its first 300 KB. MONEI sent
the full payload, but this delivery cannot be resent.
WebhookDelivery.createdAt ● String! non-null scalar
Time the delivery was created, as an ISO 8601 string. The dashboard shows it as Date.
WebhookDelivery.updatedAt ● String scalar
Time of the most recent change, as an ISO 8601 string. The dashboard shows it as Last attempt after the first attempt.
Returned By
resendWebhookDelivery mutation
Member Of
WebhookDeliveriesConnection object ● WebhookDeliveryDetail object