@subscribeflow/sdk 1.3.1 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-types.d.ts +109 -1
- package/dist/api-types.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/api-types.d.ts
CHANGED
|
@@ -254,6 +254,43 @@ export interface paths {
|
|
|
254
254
|
patch?: never;
|
|
255
255
|
trace?: never;
|
|
256
256
|
};
|
|
257
|
+
"/webhooks/brevo": {
|
|
258
|
+
parameters: {
|
|
259
|
+
query?: never;
|
|
260
|
+
header?: never;
|
|
261
|
+
path?: never;
|
|
262
|
+
cookie?: never;
|
|
263
|
+
};
|
|
264
|
+
get?: never;
|
|
265
|
+
put?: never;
|
|
266
|
+
/**
|
|
267
|
+
* Receive Brevo webhooks
|
|
268
|
+
* @description Endpoint for receiving transactional webhooks from Brevo.
|
|
269
|
+
*
|
|
270
|
+
* Handled event types:
|
|
271
|
+
* - `hard_bounce` - Permanent delivery failure; subscriber marked BOUNCED and suppressed
|
|
272
|
+
* - `soft_bounce` - Transient delivery failure; recorded on the send only
|
|
273
|
+
* - `spam` - Recipient marked the email as spam; subscriber marked COMPLAINED and suppressed
|
|
274
|
+
* - `unsubscribed` - Recipient clicked Brevo's tracked unsubscribe link; subscriber marked
|
|
275
|
+
* UNSUBSCRIBED (not suppressed — unsubscribe is consent withdrawal, not an
|
|
276
|
+
* undeliverable-address signal)
|
|
277
|
+
*
|
|
278
|
+
* All other event types (`delivered`, `opened`, `clicked`, ...) are accepted and ignored.
|
|
279
|
+
*
|
|
280
|
+
* The endpoint verifies a static shared-secret header (not an HMAC signature —
|
|
281
|
+
* Brevo's transactional webhooks have no native payload-signing mechanism; see
|
|
282
|
+
* `BrevoWebhookService` for why). The header name/value pair is configured
|
|
283
|
+
* out-of-band when the webhook is registered via Brevo's Create/Update Webhook API.
|
|
284
|
+
*
|
|
285
|
+
* Note: Duplicate events return 200 OK to prevent unnecessary retries from Brevo.
|
|
286
|
+
*/
|
|
287
|
+
post: operations["handle_brevo_webhook_webhooks_brevo_post"];
|
|
288
|
+
delete?: never;
|
|
289
|
+
options?: never;
|
|
290
|
+
head?: never;
|
|
291
|
+
patch?: never;
|
|
292
|
+
trace?: never;
|
|
293
|
+
};
|
|
257
294
|
"/webhooks/stripe": {
|
|
258
295
|
parameters: {
|
|
259
296
|
query?: never;
|
|
@@ -1469,7 +1506,7 @@ export interface paths {
|
|
|
1469
1506
|
};
|
|
1470
1507
|
/**
|
|
1471
1508
|
* Check domain verification
|
|
1472
|
-
* @description Check domain verification status with
|
|
1509
|
+
* @description Check domain verification status with the configured email provider.
|
|
1473
1510
|
*/
|
|
1474
1511
|
get: operations["check_domain_verification_api_v1_settings_email_domain_get"];
|
|
1475
1512
|
put?: never;
|
|
@@ -5536,6 +5573,77 @@ export interface operations {
|
|
|
5536
5573
|
};
|
|
5537
5574
|
};
|
|
5538
5575
|
};
|
|
5576
|
+
handle_brevo_webhook_webhooks_brevo_post: {
|
|
5577
|
+
parameters: {
|
|
5578
|
+
query?: never;
|
|
5579
|
+
header?: {
|
|
5580
|
+
"x-webhook-secret"?: string;
|
|
5581
|
+
};
|
|
5582
|
+
path?: never;
|
|
5583
|
+
cookie?: never;
|
|
5584
|
+
};
|
|
5585
|
+
requestBody?: never;
|
|
5586
|
+
responses: {
|
|
5587
|
+
/** @description Webhook processed successfully (including duplicates) */
|
|
5588
|
+
200: {
|
|
5589
|
+
headers: {
|
|
5590
|
+
[name: string]: unknown;
|
|
5591
|
+
};
|
|
5592
|
+
content: {
|
|
5593
|
+
"application/json": components["schemas"]["WebhookResponse"];
|
|
5594
|
+
};
|
|
5595
|
+
};
|
|
5596
|
+
/** @description Invalid webhook payload */
|
|
5597
|
+
400: {
|
|
5598
|
+
headers: {
|
|
5599
|
+
[name: string]: unknown;
|
|
5600
|
+
};
|
|
5601
|
+
content?: never;
|
|
5602
|
+
};
|
|
5603
|
+
/** @description Invalid or missing shared-secret header */
|
|
5604
|
+
401: {
|
|
5605
|
+
headers: {
|
|
5606
|
+
[name: string]: unknown;
|
|
5607
|
+
};
|
|
5608
|
+
content?: never;
|
|
5609
|
+
};
|
|
5610
|
+
/** @description Access Denied */
|
|
5611
|
+
403: {
|
|
5612
|
+
headers: {
|
|
5613
|
+
[name: string]: unknown;
|
|
5614
|
+
};
|
|
5615
|
+
content?: never;
|
|
5616
|
+
};
|
|
5617
|
+
/** @description Resource Not Found */
|
|
5618
|
+
404: {
|
|
5619
|
+
headers: {
|
|
5620
|
+
[name: string]: unknown;
|
|
5621
|
+
};
|
|
5622
|
+
content?: never;
|
|
5623
|
+
};
|
|
5624
|
+
/** @description Resource Conflict */
|
|
5625
|
+
409: {
|
|
5626
|
+
headers: {
|
|
5627
|
+
[name: string]: unknown;
|
|
5628
|
+
};
|
|
5629
|
+
content?: never;
|
|
5630
|
+
};
|
|
5631
|
+
/** @description Validation Error */
|
|
5632
|
+
422: {
|
|
5633
|
+
headers: {
|
|
5634
|
+
[name: string]: unknown;
|
|
5635
|
+
};
|
|
5636
|
+
content?: never;
|
|
5637
|
+
};
|
|
5638
|
+
/** @description Internal server error */
|
|
5639
|
+
500: {
|
|
5640
|
+
headers: {
|
|
5641
|
+
[name: string]: unknown;
|
|
5642
|
+
};
|
|
5643
|
+
content?: never;
|
|
5644
|
+
};
|
|
5645
|
+
};
|
|
5646
|
+
};
|
|
5539
5647
|
handle_stripe_webhook_webhooks_stripe_post: {
|
|
5540
5648
|
parameters: {
|
|
5541
5649
|
query?: never;
|