2020-11-13 14:01:51 +09:00
{
"paths" : {
"/api/v1/stores/{storeId}/webhooks" : {
"parameters" : [
{
"name" : "storeId" ,
"in" : "path" ,
"required" : true ,
"description" : "The store id" ,
"schema" : {
"type" : "string"
}
}
] ,
"get" : {
"tags" : [
"Webhooks"
] ,
"summary" : "Get webhooks of a store" ,
"description" : "View webhooks of a store" ,
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_GetWebhooks" ,
2020-11-13 14:01:51 +09:00
"responses" : {
"200" : {
"description" : "List of webhooks" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookDataList"
}
}
}
2022-08-15 15:28:41 +02:00
} ,
"404" : {
"description" : "The key is not found for this list of webhooks"
2020-11-13 14:01:51 +09:00
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
} ,
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_CreateWebhook" ,
2021-10-05 11:10:41 +02:00
"tags" : [
"Webhooks"
] ,
2020-11-13 14:01:51 +09:00
"summary" : "Create a new webhook" ,
"description" : "Create a new webhook" ,
"requestBody" : {
"x-name" : "request" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookDataCreate"
}
}
} ,
"required" : true ,
"x-position" : 1
} ,
"responses" : {
"200" : {
"description" : "Information about the new webhook" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookDataCreate"
}
}
}
} ,
"400" : {
"description" : "A list of errors that occurred when creating the webhook" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationProblemDetails"
}
}
}
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
}
} ,
"/api/v1/stores/{storeId}/webhooks/{webhookId}" : {
"parameters" : [
{
"name" : "storeId" ,
"in" : "path" ,
"required" : true ,
"description" : "The store id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "webhookId" ,
"in" : "path" ,
"required" : true ,
"description" : "The webhook id" ,
"schema" : {
"type" : "string"
}
}
] ,
"get" : {
"tags" : [
"Webhooks"
] ,
"summary" : "Get a webhook of a store" ,
"description" : "View webhook of a store" ,
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_GetWebhook" ,
2020-11-13 14:01:51 +09:00
"responses" : {
"200" : {
"description" : "A webhook" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookData"
}
}
}
} ,
"404" : {
"description" : "The webhook has not been found"
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
} ,
"put" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_UpdateWebhook" ,
2021-10-05 11:10:41 +02:00
"tags" : [
"Webhooks"
] ,
2020-11-13 14:01:51 +09:00
"summary" : "Update a webhook" ,
"description" : "Update a webhook" ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
2022-08-03 11:35:31 +02:00
"$ref" : "#/components/schemas/WebhookDataUpdate"
2020-11-13 14:01:51 +09:00
}
}
} ,
"required" : true ,
"x-position" : 1
} ,
"responses" : {
"200" : {
"description" : "Information about the updated webhook" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookData"
}
}
}
} ,
"400" : {
"description" : "A list of errors that occurred when creating the webhook" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationProblemDetails"
}
}
}
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
} ,
"delete" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_DeleteWebhook" ,
2021-10-05 11:10:41 +02:00
"tags" : [
"Webhooks"
] ,
2020-11-13 14:01:51 +09:00
"summary" : "Delete a webhook" ,
"description" : "Delete a webhook" ,
"responses" : {
"200" : {
"description" : "The webhook has been deleted"
} ,
"404" : {
"description" : "The webhook does not exist"
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
}
} ,
"/api/v1/stores/{storeId}/webhooks/{webhookId}/deliveries" : {
"parameters" : [
{
"name" : "storeId" ,
"in" : "path" ,
"required" : true ,
"description" : "The store id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "webhookId" ,
"in" : "path" ,
"required" : true ,
"description" : "The webhook id" ,
"schema" : {
"type" : "string"
}
}
] ,
"get" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_GetWebhookDeliveries" ,
2020-11-13 14:01:51 +09:00
"tags" : [
"Webhooks"
] ,
"summary" : "Get latest deliveries" ,
"description" : "List the latest deliveries to the webhook, ordered from the most recent" ,
"parameters" : [
{
"name" : "count" ,
"in" : "query" ,
"description" : "The number of latest deliveries to fetch" ,
"required" : false ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : {
"200" : {
"description" : "List of deliveries" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookDeliveryList"
}
}
}
2022-08-15 15:28:41 +02:00
} ,
"404" : {
"description" : "The key is not found for this list of deliveries"
2020-11-13 14:01:51 +09:00
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
}
} ,
"/api/v1/stores/{storeId}/webhooks/{webhookId}/deliveries/{deliveryId}" : {
"parameters" : [
{
"name" : "storeId" ,
"in" : "path" ,
"required" : true ,
"description" : "The store id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "webhookId" ,
"in" : "path" ,
"required" : true ,
"description" : "The webhook id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "deliveryId" ,
"in" : "path" ,
"required" : true ,
"description" : "The id of the delivery" ,
"schema" : {
"type" : "string"
}
}
] ,
"get" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_GetWebhookDelivery" ,
2020-11-13 14:01:51 +09:00
"tags" : [
"Webhooks"
] ,
"summary" : "Get a webhook delivery" ,
"description" : "Information about a webhook delivery" ,
"responses" : {
"200" : {
"description" : "Information about a delivery" ,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookDeliveryData"
}
}
}
} ,
"404" : {
"description" : "The delivery does not exists."
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
}
} ,
"/api/v1/stores/{storeId}/webhooks/{webhookId}/deliveries/{deliveryId}/request" : {
"parameters" : [
{
"name" : "storeId" ,
"in" : "path" ,
"required" : true ,
"description" : "The store id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "webhookId" ,
"in" : "path" ,
"required" : true ,
"description" : "The webhook id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "deliveryId" ,
"in" : "path" ,
"required" : true ,
"description" : "The id of the delivery" ,
"schema" : {
"type" : "string"
}
}
] ,
"get" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_GetWebhookDeliveryRequests" ,
2020-11-13 14:01:51 +09:00
"tags" : [
"Webhooks"
] ,
"summary" : "Get the delivery's request" ,
"description" : "The delivery's JSON request sent to the endpoint" ,
"responses" : {
"200" : {
"description" : "The delivery's JSON Request" ,
"content" : {
"application/json" : {
"schema" : {
"type" : "object" ,
"additionalProperties" : true
}
}
}
} ,
"404" : {
"description" : "The delivery does not exists."
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
}
} ,
"/api/v1/stores/{storeId}/webhooks/{webhookId}/deliveries/{deliveryId}/redeliver" : {
"parameters" : [
{
"name" : "storeId" ,
"in" : "path" ,
"required" : true ,
"description" : "The store id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "webhookId" ,
"in" : "path" ,
"required" : true ,
"description" : "The webhook id" ,
"schema" : {
"type" : "string"
}
} ,
{
"name" : "deliveryId" ,
"in" : "path" ,
"required" : true ,
"description" : "The id of the delivery" ,
"schema" : {
"type" : "string"
}
}
] ,
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhooks_RedeliverWebhookDelivery" ,
2020-11-13 14:01:51 +09:00
"tags" : [
"Webhooks"
] ,
"summary" : "Redeliver the delivery" ,
"description" : "Redeliver the delivery" ,
"responses" : {
"200" : {
"description" : "The new delivery id being broadcasted. (Broadcast happen asynchronously with this call)" ,
"content" : {
"application/json" : {
"schema" : {
"type" : "string"
}
}
}
} ,
"404" : {
"description" : "The delivery does not exists."
}
} ,
"security" : [
{
2022-02-02 03:12:48 -08:00
"API_Key" : [
2020-11-13 14:01:51 +09:00
"btcpay.store.webhooks.canmodifywebhooks"
] ,
"Basic" : [ ]
}
]
}
}
} ,
"components" : {
"schemas" : {
"WebhookDeliveryList" : {
"type" : "array" ,
"items" : {
"$ref" : "#/components/schemas/WebhookDeliveryData"
}
} ,
"WebhookDeliveryData" : {
"type" : "object" ,
"properties" : {
"id" : {
"type" : "string" ,
"description" : "The id of the delivery" ,
"nullable" : false
} ,
"timestamp" : {
"nullable" : false ,
2021-03-30 04:18:00 +02:00
"description" : "Timestamp of when the delivery got broadcasted" ,
2021-10-05 11:10:41 +02:00
"allOf" : [
{
"$ref" : "#/components/schemas/UnixTimestamp"
}
]
2020-11-13 14:01:51 +09:00
} ,
"httpCode" : {
"type" : "number" ,
"description" : "HTTP code received by the remote service, if any." ,
"nullable" : true
} ,
"errorMessage" : {
"type" : "string" ,
"description" : "User friendly error message, if any."
} ,
"status" : {
"type" : "string" ,
"description" : "Whether the delivery failed or not (possible values are: `Failed`, `HttpError`, `HttpSuccess`)"
}
}
} ,
"WebhookDataList" : {
"type" : "array" ,
"items" : {
"$ref" : "#/components/schemas/WebhookData"
}
} ,
"WebhookData" : {
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookDataBase"
} ,
{
"type" : "object" ,
"properties" : {
"id" : {
"type" : "string" ,
"description" : "The id of the webhook" ,
"nullable" : false
}
}
}
]
} ,
"WebhookDataCreate" : {
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookData"
} ,
{
"type" : "object" ,
"properties" : {
"secret" : {
"type" : "string" ,
2020-12-02 20:37:23 +09:00
"description" : "Must be used by the callback receiver to ensure the delivery comes from BTCPay Server. BTCPay Server includes the `BTCPay-Sig` HTTP header, whose format is `sha256=HMAC256(UTF8(webhook's secret), body)`. The pattern to authenticate the webhook is similar to [how to secure webhooks in Github](https://docs.github.com/webhooks/securing/)." ,
2020-11-13 14:01:51 +09:00
"nullable" : false
}
}
}
]
} ,
2022-08-03 11:35:31 +02:00
"WebhookDataUpdate" : {
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookDataBase"
} ,
{
"type" : "object" ,
"properties" : {
"secret" : {
"type" : "string" ,
"description" : "Must be used by the callback receiver to ensure the delivery comes from BTCPay Server. BTCPay Server includes the `BTCPay-Sig` HTTP header, whose format is `sha256=HMAC256(UTF8(webhook's secret), body)`. The pattern to authenticate the webhook is similar to [how to secure webhooks in Github](https://docs.github.com/webhooks/securing/). If left out, null, or empty, the secret will not be changed." ,
"nullable" : true
}
}
}
]
} ,
2020-11-13 14:01:51 +09:00
"WebhookDataBase" : {
"type" : "object" ,
"additionalProperties" : false ,
"properties" : {
"id" : {
"type" : "string" ,
"description" : "The id of the webhook" ,
"nullable" : false
} ,
"enabled" : {
"type" : "boolean" ,
"description" : "Whether this webhook is enabled or not" ,
2020-11-13 16:28:15 +09:00
"nullable" : false ,
"default" : true
2020-11-13 14:01:51 +09:00
} ,
"automaticRedelivery" : {
"type" : "boolean" ,
"description" : "If true, BTCPay Server will retry to redeliver any failed delivery after 10 seconds, 1 minutes and up to 6 times after 10 minutes." ,
2020-11-13 16:28:15 +09:00
"nullable" : false ,
"default" : true
2020-11-13 14:01:51 +09:00
} ,
"url" : {
"type" : "string" ,
"description" : "The endpoint where BTCPay Server will make the POST request with the webhook body" ,
"nullable" : false
} ,
"authorizedEvents" : {
"type" : "object" ,
"description" : "Which event should be received by this endpoint" ,
"properties" : {
"everything" : {
2021-06-17 19:01:23 -07:00
"type" : "boolean" ,
2020-11-13 14:01:51 +09:00
"description" : "If true, the endpoint will receive all events related to the store." ,
2020-11-13 16:28:15 +09:00
"nullable" : false ,
"default" : true
2020-11-13 14:01:51 +09:00
} ,
"specificEvents" : {
2021-06-17 19:01:23 -07:00
"type" : "array" ,
"items" : {
"type" : "string"
} ,
2020-11-23 15:57:05 +09:00
"description" : "If `everything` is false, the specific events that the endpoint is interested in. Current events are: `InvoiceCreated`, `InvoiceReceivedPayment`, `InvoiceProcessing`, `InvoiceExpired`, `InvoiceSettled`, `InvoiceInvalid`." ,
2020-11-13 14:01:51 +09:00
"nullable" : false
}
}
}
}
2020-11-16 12:05:15 +09:00
} ,
"WebhookEvent" : {
"type" : "object" ,
"additionalProperties" : false ,
"properties" : {
"deliveryId" : {
"type" : "string" ,
"nullable" : false ,
"description" : "The delivery id of the webhook"
} ,
"webhookId" : {
"type" : "string" ,
"nullable" : false ,
"description" : "The id of the webhook"
} ,
"originalDeliveryId" : {
"type" : "string" ,
"nullable" : false ,
"description" : "If this delivery is a redelivery, the is the delivery id of the original delivery."
} ,
"isRedelivery" : {
"type" : "boolean" ,
"nullable" : false ,
"description" : "True if this delivery is a redelivery"
} ,
"type" : {
"type" : "string" ,
"nullable" : false ,
2021-11-14 20:08:54 -08:00
"description" : "The type of this event, current available are `InvoiceCreated`, `InvoiceReceivedPayment`, `InvoiceProcessing`, `InvoiceExpired`, `InvoiceSettled`, `InvoiceInvalid`, and `InvoicePaymentSettled`."
2020-11-16 12:05:15 +09:00
} ,
"timestamp" : {
2021-03-30 04:18:00 +02:00
"description" : "The timestamp when this delivery has been created" ,
2021-10-05 11:10:41 +02:00
"allOf" : [
{
"$ref" : "#/components/schemas/UnixTimestamp"
}
]
2020-11-16 12:05:15 +09:00
}
}
} ,
"WebhookInvoiceEvent" : {
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookEvent"
} ,
{
"type" : "object" ,
"properties" : {
"storeId" : {
"type" : "string" ,
"description" : "The store id of the invoice's event" ,
"nullable" : false
} ,
"invoiceId" : {
"type" : "string" ,
"description" : "The invoice id of the invoice's event" ,
"nullable" : false
}
}
}
]
} ,
2020-11-23 15:57:05 +09:00
"WebhookInvoiceSettledEvent" : {
"description" : "Callback sent if the `type` is `InvoiceSettled`" ,
2020-11-16 12:05:15 +09:00
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookInvoiceEvent"
} ,
{
"type" : "object" ,
"properties" : {
"manuallyMarked" : {
"type" : "boolean" ,
"description" : "Whether the invoice have been manually marked as confirmed" ,
"nullable" : false
}
}
2021-10-27 14:51:31 +09:00
} ,
{
"type" : "object" ,
"properties" : {
"overPaid" : {
"type" : "boolean" ,
"description" : "Whether this invoice has received more money than expected" ,
"nullable" : false
}
}
2020-11-16 12:05:15 +09:00
}
]
} ,
"WebhookInvoiceInvalidEvent" : {
"description" : "Callback sent if the `type` is `InvoiceInvalid`" ,
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookInvoiceEvent"
} ,
{
"type" : "object" ,
"properties" : {
"manuallyMarked" : {
"type" : "boolean" ,
"description" : "Whether the invoice have been manually marked as confirmed. If false, this invoice has received payments which could not confirm in time." ,
"nullable" : false
}
}
}
]
} ,
2020-11-23 15:57:05 +09:00
"WebhookInvoiceProcessingEvent" : {
"description" : "Callback sent if the `type` is `InvoiceProcessing`" ,
2020-11-16 12:05:15 +09:00
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookInvoiceEvent"
} ,
{
"type" : "object" ,
"properties" : {
"overPaid" : {
"type" : "boolean" ,
"description" : "Whether this invoice has received more money than expected" ,
"nullable" : false
}
}
}
]
} ,
"WebhookInvoiceReceivedPaymentEvent" : {
"description" : "Callback sent if the `type` is `InvoiceReceivedPayment`" ,
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookInvoiceEvent"
} ,
{
"type" : "object" ,
"properties" : {
"afterExpiration" : {
"type" : "boolean" ,
"description" : "Whether this payment has been sent after expiration of the invoice" ,
"nullable" : false
2021-10-05 11:10:41 +02:00
} ,
"paymentMethod" : {
"type" : "string" ,
"description" : "What payment method was used for this payment" ,
"nullable" : false
} ,
"payment" : {
"description" : "Details about the payment" ,
2022-02-01 22:11:07 -08:00
"$ref" : "#/components/schemas/Payment"
2020-11-16 12:05:15 +09:00
}
}
}
]
} ,
2021-10-05 11:10:41 +02:00
"WebhookInvoicePaymentSettledEvent" : {
"description" : "Callback sent if the `type` is `InvoicePaymentSettled`" ,
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookInvoiceReceivedPaymentEvent"
}
]
} ,
2020-11-16 12:05:15 +09:00
"WebhookInvoiceExpiredEvent" : {
"description" : "Callback sent if the `type` is `InvoiceExpired`" ,
"allOf" : [
{
"$ref" : "#/components/schemas/WebhookInvoiceEvent"
} ,
{
"type" : "object" ,
"properties" : {
"partiallyPaid" : {
"type" : "boolean" ,
"description" : "Whether the invoice received some payments before being expired." ,
"nullable" : false
}
}
}
]
}
}
} ,
"x-webhooks" : {
2021-07-30 07:33:23 +02:00
"InvoiceCreated" : {
2020-11-16 12:05:15 +09:00
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhook_InvoiceCreated" ,
2021-07-30 07:33:23 +02:00
"summary" : "InvoiceCreated" ,
2020-11-16 12:05:15 +09:00
"description" : "A new invoice has been created" ,
"parameters" : [
{
"in" : "header" ,
"name" : "BTCPay-Sig" ,
"required" : true ,
"description" : "The HMAC of the body's byte with the secret's of the webhook. `sha256=HMAC256(UTF8(webhook's secret), body)`" ,
"schema" : {
"type" : "string" ,
"example" : "sha256=b438519edde5c8144a4f9bcec51a9d346eca6506887c2ceeae1c0092884a97b9"
}
}
] ,
"tags" : [
"Webhooks"
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookInvoiceEvent"
}
}
}
2022-08-15 15:28:41 +02:00
} ,
"responses" : { }
2020-11-16 12:05:15 +09:00
}
} ,
2021-07-30 07:33:23 +02:00
"InvoiceExpired" : {
2020-11-16 12:05:15 +09:00
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhook_InvoiceExpired" ,
2021-07-30 07:33:23 +02:00
"summary" : "InvoiceExpired" ,
2020-11-16 12:05:15 +09:00
"description" : "An invoice expired" ,
"parameters" : [
{
"in" : "header" ,
"name" : "BTCPay-Sig" ,
"required" : true ,
"description" : "The HMAC of the body's byte with the secret's of the webhook. `sha256=HMAC256(UTF8(webhook's secret), body)`" ,
"schema" : {
"type" : "string" ,
"example" : "sha256=b438519edde5c8144a4f9bcec51a9d346eca6506887c2ceeae1c0092884a97b9"
}
}
] ,
"tags" : [
"Webhooks"
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookInvoiceExpiredEvent"
}
}
}
2022-08-15 15:28:41 +02:00
} ,
"responses" : { }
2020-11-16 12:05:15 +09:00
}
} ,
2021-07-30 07:33:23 +02:00
"InvoiceReceivedPayment" : {
2020-11-16 12:05:15 +09:00
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhook_InvoiceReceivedPayment" ,
2021-07-30 07:33:23 +02:00
"summary" : "InvoiceReceivedPayment" ,
2020-11-16 12:05:15 +09:00
"description" : "An invoice received a payment" ,
"parameters" : [
{
"in" : "header" ,
"name" : "BTCPay-Sig" ,
"required" : true ,
"description" : "The HMAC of the body's byte with the secret's of the webhook. `sha256=HMAC256(UTF8(webhook's secret), body)`" ,
"schema" : {
"type" : "string" ,
"example" : "sha256=b438519edde5c8144a4f9bcec51a9d346eca6506887c2ceeae1c0092884a97b9"
}
}
] ,
"tags" : [
"Webhooks"
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookInvoiceReceivedPaymentEvent"
}
2021-10-05 11:10:41 +02:00
}
}
2022-08-15 15:28:41 +02:00
} ,
"responses" : { }
2021-10-05 11:10:41 +02:00
}
} ,
"InvoicePaymentSettled" : {
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhook_InvoicePaymentSettled" ,
2021-10-05 11:10:41 +02:00
"summary" : "InvoicePaymentSettled" ,
"description" : "An payment relating to an invoice has settled" ,
"parameters" : [
{
"in" : "header" ,
"name" : "BTCPay-Sig" ,
"required" : true ,
"description" : "The HMAC of the body's byte with the secret's of the webhook. `sha256=HMAC256(UTF8(webhook's secret), body)`" ,
"schema" : {
"type" : "string" ,
"example" : "sha256=b438519edde5c8144a4f9bcec51a9d346eca6506887c2ceeae1c0092884a97b9"
}
}
] ,
"tags" : [
"Webhooks"
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookInvoicePaymentSettledEvent"
}
2020-11-16 12:05:15 +09:00
}
}
2022-08-15 15:28:41 +02:00
} ,
"responses" : { }
2020-11-16 12:05:15 +09:00
}
} ,
2021-11-14 20:08:54 -08:00
"InvoiceProcessing" : {
2020-11-16 12:05:15 +09:00
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhook_InvoiceProcessing" ,
2021-11-14 20:08:54 -08:00
"summary" : "InvoiceProcessing" ,
2021-07-30 07:33:23 +02:00
"description" : "Triggers when an invoice is fully paid, but doesn't have the required amount of confirmations on the blockchain yet according to your store's settings." ,
2020-11-16 12:05:15 +09:00
"parameters" : [
{
"in" : "header" ,
"name" : "BTCPay-Sig" ,
"required" : true ,
"description" : "The HMAC of the body's byte with the secret's of the webhook. `sha256=HMAC256(UTF8(webhook's secret), body)`" ,
"schema" : {
"type" : "string" ,
"example" : "sha256=b438519edde5c8144a4f9bcec51a9d346eca6506887c2ceeae1c0092884a97b9"
}
}
] ,
"tags" : [
"Webhooks"
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
2020-11-23 15:57:05 +09:00
"$ref" : "#/components/schemas/WebhookInvoiceProcessingEvent"
2020-11-16 12:05:15 +09:00
}
}
}
2022-08-15 15:28:41 +02:00
} ,
"responses" : { }
2020-11-16 12:05:15 +09:00
}
} ,
2021-07-30 07:33:23 +02:00
"InvoiceInvalid" : {
2020-11-16 12:05:15 +09:00
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhook_InvoiceInvalid" ,
2021-07-30 07:33:23 +02:00
"summary" : "InvoiceInvalid" ,
2020-11-16 12:05:15 +09:00
"description" : "An invoice became invalid" ,
"parameters" : [
{
"in" : "header" ,
"name" : "BTCPay-Sig" ,
"required" : true ,
"description" : "The HMAC of the body's byte with the secret's of the webhook. `sha256=HMAC256(UTF8(webhook's secret), body)`" ,
"schema" : {
"type" : "string" ,
"example" : "sha256=b438519edde5c8144a4f9bcec51a9d346eca6506887c2ceeae1c0092884a97b9"
}
}
] ,
"tags" : [
"Webhooks"
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/WebhookInvoiceInvalidEvent"
}
}
}
2022-08-15 15:28:41 +02:00
} ,
"responses" : { }
2020-11-16 12:05:15 +09:00
}
} ,
2021-07-30 07:33:23 +02:00
"InvoiceSettled" : {
2020-11-16 12:05:15 +09:00
"post" : {
2022-08-15 15:28:41 +02:00
"operationId" : "Webhook_InvoiceSettled" ,
2021-07-30 07:33:23 +02:00
"summary" : "InvoiceSettled" ,
"description" : "Triggers when an invoice is considered settled and the merchant can proceed with the order's delivery. The invoice now has enough confirmations on the blockchain (if paid on-chain) according to your store's configuration." ,
2020-11-16 12:05:15 +09:00
"parameters" : [
{
"in" : "header" ,
"name" : "BTCPay-Sig" ,
"required" : true ,
"description" : "The HMAC of the body's byte with the secret's of the webhook. `sha256=HMAC256(UTF8(webhook's secret), body)`" ,
"schema" : {
"type" : "string" ,
"example" : "sha256=b438519edde5c8144a4f9bcec51a9d346eca6506887c2ceeae1c0092884a97b9"
}
}
] ,
"tags" : [
"Webhooks"
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
2020-11-23 15:57:05 +09:00
"$ref" : "#/components/schemas/WebhookInvoiceSettledEvent"
2020-11-16 12:05:15 +09:00
}
}
}
2022-08-15 15:28:41 +02:00
} ,
"responses" : { }
2020-11-13 14:01:51 +09:00
}
}
} ,
"tags" : [
{
"name" : "Webhooks"
}
]
}