samva 0.20.0 → 0.22.0

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.
@@ -1108,6 +1108,7 @@ export type ApiKeyWithSecret = {
1108
1108
  name: string;
1109
1109
  key: string;
1110
1110
  start: string | null;
1111
+ end: string | null;
1111
1112
  description?: string | null | undefined;
1112
1113
  createdAt: string;
1113
1114
  expiresAt: string | null;
@@ -1126,6 +1127,7 @@ export type ApiKey = {
1126
1127
  name: string;
1127
1128
  key?: string | null | undefined;
1128
1129
  start: string | null;
1130
+ end: string | null;
1129
1131
  description?: string | null | undefined;
1130
1132
  createdAt: string;
1131
1133
  expiresAt: string | null;
@@ -1207,6 +1209,11 @@ export type Organization = {
1207
1209
  */
1208
1210
  export type PhoneRegion = string;
1209
1211
  export type IanaTimezone = string;
1212
+ export type WebhookSigningSecret = {
1213
+ secret: string;
1214
+ createdAt: string;
1215
+ previousExpiresAt: string | null;
1216
+ };
1210
1217
  export type WebhookAttemptId = string;
1211
1218
  export type WebhookDeliveryId = string;
1212
1219
  export type WebhookStatsResponse = {
@@ -1266,7 +1273,7 @@ export type WebhookEndpoint = {
1266
1273
  id: WebhookEndpointId;
1267
1274
  name: string;
1268
1275
  url: string;
1269
- eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
1276
+ eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "template.registration.updated" | "flow.registration.updated" | "whatsapp.number.connected" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
1270
1277
  channels: Array<"email"> | null;
1271
1278
  mailboxIds: Array<MailboxId> | null;
1272
1279
  namespaceId: NamespaceId | null;
@@ -1280,7 +1287,7 @@ export type WebhookEndpoint = {
1280
1287
  export type UpdateWebhookPayload = {
1281
1288
  name?: string | null | undefined;
1282
1289
  url?: string | null | undefined;
1283
- eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook"> | null | undefined;
1290
+ eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "template.registration.updated" | "flow.registration.updated" | "whatsapp.number.connected" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook"> | null | undefined;
1284
1291
  channels?: Array<"email"> | null | null | undefined;
1285
1292
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | null | undefined;
1286
1293
  namespaceId?: NamespaceId | null | null | undefined;
@@ -1297,7 +1304,7 @@ export type WebhookEndpointListItem = {
1297
1304
  id: WebhookEndpointId;
1298
1305
  name: string;
1299
1306
  url: string;
1300
- eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
1307
+ eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "template.registration.updated" | "flow.registration.updated" | "whatsapp.number.connected" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
1301
1308
  channels: Array<"email"> | null;
1302
1309
  mailboxIds: Array<MailboxId> | null;
1303
1310
  namespaceId: NamespaceId | null;
@@ -1319,7 +1326,7 @@ export type WebhookDeliveryCounts = {
1319
1326
  export type CreateWebhookPayload = {
1320
1327
  name: string;
1321
1328
  url: string;
1322
- eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
1329
+ eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "template.registration.updated" | "flow.registration.updated" | "whatsapp.number.connected" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
1323
1330
  channels?: Array<"email"> | null | undefined;
1324
1331
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | undefined;
1325
1332
  namespaceId?: NamespaceId | null | undefined;
@@ -1436,6 +1443,7 @@ export type BrandRenderedFooter = {
1436
1443
  export type BrandFooterBlock = {
1437
1444
  html: string;
1438
1445
  text: string;
1446
+ headCss?: string | null | undefined;
1439
1447
  };
1440
1448
  export type Template = {
1441
1449
  id: TemplateId;
@@ -1444,9 +1452,13 @@ export type Template = {
1444
1452
  channel: "email";
1445
1453
  projectId: TemplateProjectId;
1446
1454
  /**
1447
- * The namespace the template's project belongs to; every entry in a project shares it. Null at organization level. A namespace-scoped key reaches only its own namespace's templates.
1455
+ * The namespace the template's project belongs to; every entry in a project shares it. Null at organization level. A namespace-scoped key reaches only its own namespace's templates and shared ones.
1448
1456
  */
1449
1457
  namespaceId: NamespaceId | null;
1458
+ /**
1459
+ * Whether the template's project is shared with every namespace. Every entry in a project shares it. A namespace-scoped key reads and sends a shared template in its own namespace but cannot change it. Only an organization-level project is shared.
1460
+ */
1461
+ shared: boolean;
1450
1462
  entryPath: string;
1451
1463
  status: "draft" | "pending" | "approved" | "published" | "rejected" | "archived";
1452
1464
  isActive: boolean;
@@ -1507,6 +1519,10 @@ export type UpdateTemplatePayload = {
1507
1519
  fromDefault?: TemplateFromDefault | null | null | undefined;
1508
1520
  replyToDefault?: Array<string> | null | null | undefined;
1509
1521
  isActive?: boolean | null | undefined;
1522
+ /**
1523
+ * Share the template's project with every namespace, or stop sharing it. Applies to every entry in the project. Only an organization-level project is shared.
1524
+ */
1525
+ shared?: boolean | null | undefined;
1510
1526
  };
1511
1527
  };
1512
1528
  export type AddTemplateEntryPayload = {
@@ -1516,6 +1532,35 @@ export type AddTemplateEntryPayload = {
1516
1532
  description?: string | null | null | undefined;
1517
1533
  category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
1518
1534
  };
1535
+ export type TemplateFromWebsite = {
1536
+ template: Template;
1537
+ website: {
1538
+ /**
1539
+ * The address Samva checked, normalized.
1540
+ */
1541
+ url: string;
1542
+ host: string;
1543
+ };
1544
+ /**
1545
+ * The request to send the template assistant in the editor. The assistant reads the site, rebuilds the project's theme and blocks to match it, and proposes a brand that changes nothing until the customer applies it.
1546
+ */
1547
+ ask: string;
1548
+ };
1549
+ export type CreateTemplateFromWebsitePayload = {
1550
+ /**
1551
+ * The website whose look the template should match: a public https address, or a bare domain such as `example.com`.
1552
+ */
1553
+ url: string;
1554
+ name?: string | null | undefined;
1555
+ /**
1556
+ * The namespace the new template project belongs to. Omit for organization level. A namespace-scoped key always creates in its own namespace.
1557
+ */
1558
+ namespaceId?: NamespaceId | null | undefined;
1559
+ /**
1560
+ * Repeating a request with the same key, address, name, and namespace returns the project the first one created, even if the site has since stopped answering. The same key with another address, name, or namespace is refused with a 409.
1561
+ */
1562
+ idempotencyKey: string;
1563
+ };
1519
1564
  export type CreateTemplatePayload = {
1520
1565
  name: string;
1521
1566
  projectName?: string | null | undefined;
@@ -1529,6 +1574,10 @@ export type CreateTemplatePayload = {
1529
1574
  * The namespace the new template project belongs to; the project and every entry added to it share it. Omit for organization level. A namespace-scoped key always creates in its own namespace.
1530
1575
  */
1531
1576
  namespaceId?: NamespaceId | null | undefined;
1577
+ /**
1578
+ * Share the new organization-level project with every namespace: namespace-scoped keys read and send its entries but cannot change them. Defaults to false. Not with `namespaceId`, and not from a namespace-scoped key.
1579
+ */
1580
+ shared?: boolean | null | undefined;
1532
1581
  idempotencyKey: string;
1533
1582
  };
1534
1583
  export type TemplateFamily = {
@@ -1566,9 +1615,13 @@ export type TemplateSummary = {
1566
1615
  channel: "email";
1567
1616
  projectId: TemplateProjectId;
1568
1617
  /**
1569
- * The namespace the template's project belongs to; every entry in a project shares it. Null at organization level. A namespace-scoped key reaches only its own namespace's templates.
1618
+ * The namespace the template's project belongs to; every entry in a project shares it. Null at organization level. A namespace-scoped key reaches only its own namespace's templates and shared ones.
1570
1619
  */
1571
1620
  namespaceId: NamespaceId | null;
1621
+ /**
1622
+ * Whether the template's project is shared with every namespace. Every entry in a project shares it. A namespace-scoped key reads and sends a shared template in its own namespace but cannot change it. Only an organization-level project is shared.
1623
+ */
1624
+ shared: boolean;
1572
1625
  entryPath: string;
1573
1626
  status: "draft" | "pending" | "approved" | "published" | "rejected" | "archived";
1574
1627
  isActive: boolean;
@@ -1750,6 +1803,8 @@ export type JourneyRunDetail = {
1750
1803
  exitReason: JourneyRunExitReason | null;
1751
1804
  failureReason: string | null;
1752
1805
  currentNodeId: JourneyNodeId | null;
1806
+ holdReason: string | null;
1807
+ holdUntil: string | null;
1753
1808
  trigger: JourneyRunTrigger;
1754
1809
  enteredAt: string;
1755
1810
  endedAt: string | null;
@@ -1789,6 +1844,8 @@ export type JourneyRun = {
1789
1844
  exitReason: JourneyRunExitReason | null;
1790
1845
  failureReason: string | null;
1791
1846
  currentNodeId: JourneyNodeId | null;
1847
+ holdReason: string | null;
1848
+ holdUntil: string | null;
1792
1849
  trigger: JourneyRunTrigger;
1793
1850
  enteredAt: string;
1794
1851
  endedAt: string | null;
@@ -2911,11 +2968,14 @@ export type CampaignRun = {
2911
2968
  dispatchedCount: number;
2912
2969
  failedCount: number;
2913
2970
  skippedCount: number;
2971
+ pendingCount: number;
2914
2972
  skippedReasons: Array<CampaignRunSkippedReason>;
2915
2973
  estimatedCompletionAt: string | null;
2916
2974
  failureReason: string | null;
2917
2975
  holdReason: string | null;
2918
2976
  holdDomainId: EmailDomainId | null;
2977
+ holdUntil: string | null;
2978
+ capacityWarning: string | null;
2919
2979
  lastContactId: string | null;
2920
2980
  createdBy: string | null;
2921
2981
  actorEmail: string;
@@ -3015,6 +3075,7 @@ export type CampaignLatestRun = {
3015
3075
  dispatchedCount: number;
3016
3076
  failedCount: number;
3017
3077
  skippedCount: number;
3078
+ pendingCount: number;
3018
3079
  estimatedCompletionAt: string | null;
3019
3080
  };
3020
3081
  export type CampaignDefinitionSummary = {
@@ -12120,9 +12181,13 @@ export type TemplatesListData = {
12120
12181
  search?: string | null | undefined;
12121
12182
  projectId?: TemplateProjectId | null | undefined;
12122
12183
  /**
12123
- * Only templates in this namespace. A namespace-scoped key lists its own namespace's templates only.
12184
+ * Only the templates this namespace uses: its own and those shared with every namespace (add `shared=false` for its own only). A namespace-scoped key lists its own namespace's and shared templates.
12124
12185
  */
12125
12186
  namespaceId?: NamespaceId | null | undefined;
12187
+ /**
12188
+ * Only templates whose project is shared with every namespace (true), or only unshared ones (false).
12189
+ */
12190
+ shared?: "true" | "false" | null | undefined;
12126
12191
  };
12127
12192
  url: "/v1/templates";
12128
12193
  };
@@ -12170,6 +12235,10 @@ export type TemplatesCreateData = {
12170
12235
  * The namespace the new template project belongs to; the project and every entry added to it share it. Omit for organization level. A namespace-scoped key always creates in its own namespace.
12171
12236
  */
12172
12237
  namespaceId?: NamespaceId | null | undefined;
12238
+ /**
12239
+ * Share the new organization-level project with every namespace: namespace-scoped keys read and send its entries but cannot change them. Defaults to false. Not with `namespaceId`, and not from a namespace-scoped key.
12240
+ */
12241
+ shared?: boolean | null | undefined;
12173
12242
  idempotencyKey: string;
12174
12243
  };
12175
12244
  path?: never;
@@ -12656,6 +12725,10 @@ export type TemplatesUpdateData = {
12656
12725
  fromDefault?: TemplateFromDefault | null | null | undefined;
12657
12726
  replyToDefault?: Array<string> | null | null | undefined;
12658
12727
  isActive?: boolean | null | undefined;
12728
+ /**
12729
+ * Share the template's project with every namespace, or stop sharing it. Applies to every entry in the project. Only an organization-level project is shared.
12730
+ */
12731
+ shared?: boolean | null | undefined;
12659
12732
  };
12660
12733
  };
12661
12734
  path: {
@@ -12702,6 +12775,64 @@ export type TemplatesUpdateResponses = {
12702
12775
  200: Template;
12703
12776
  };
12704
12777
  export type TemplatesUpdateResponse = TemplatesUpdateResponses[keyof TemplatesUpdateResponses];
12778
+ export type TemplatesCreateFromWebsiteData = {
12779
+ body: {
12780
+ /**
12781
+ * The website whose look the template should match: a public https address, or a bare domain such as `example.com`.
12782
+ */
12783
+ url: string;
12784
+ name?: string | null | undefined;
12785
+ /**
12786
+ * The namespace the new template project belongs to. Omit for organization level. A namespace-scoped key always creates in its own namespace.
12787
+ */
12788
+ namespaceId?: NamespaceId | null | undefined;
12789
+ /**
12790
+ * Repeating a request with the same key, address, name, and namespace returns the project the first one created, even if the site has since stopped answering. The same key with another address, name, or namespace is refused with a 409.
12791
+ */
12792
+ idempotencyKey: string;
12793
+ };
12794
+ path?: never;
12795
+ query?: never;
12796
+ url: "/v1/templates/from-website";
12797
+ };
12798
+ export type TemplatesCreateFromWebsiteErrors = {
12799
+ /**
12800
+ * UnauthorizedError
12801
+ */
12802
+ 401: UnauthorizedError;
12803
+ /**
12804
+ * ForbiddenError
12805
+ */
12806
+ 403: ForbiddenError;
12807
+ /**
12808
+ * ResourceNotFoundError
12809
+ */
12810
+ 404: ResourceNotFoundError;
12811
+ /**
12812
+ * ConflictError
12813
+ */
12814
+ 409: ConflictError;
12815
+ /**
12816
+ * ValidationError
12817
+ */
12818
+ 422: ValidationError;
12819
+ /**
12820
+ * InternalError
12821
+ */
12822
+ 500: InternalError;
12823
+ /**
12824
+ * GatewayTimeoutError
12825
+ */
12826
+ 504: GatewayTimeoutError;
12827
+ };
12828
+ export type TemplatesCreateFromWebsiteError = TemplatesCreateFromWebsiteErrors[keyof TemplatesCreateFromWebsiteErrors];
12829
+ export type TemplatesCreateFromWebsiteResponses = {
12830
+ /**
12831
+ * Success
12832
+ */
12833
+ 201: TemplateFromWebsite;
12834
+ };
12835
+ export type TemplatesCreateFromWebsiteResponse = TemplatesCreateFromWebsiteResponses[keyof TemplatesCreateFromWebsiteResponses];
12705
12836
  export type TemplatesAddEntryData = {
12706
12837
  body: {
12707
12838
  entryPath: string;
@@ -15027,7 +15158,7 @@ export type WebhooksCreateData = {
15027
15158
  body: {
15028
15159
  name: string;
15029
15160
  url: string;
15030
- eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
15161
+ eventTypes: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "template.registration.updated" | "flow.registration.updated" | "whatsapp.number.connected" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook">;
15031
15162
  channels?: Array<"email"> | null | undefined;
15032
15163
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | undefined;
15033
15164
  namespaceId?: NamespaceId | null | undefined;
@@ -15181,7 +15312,7 @@ export type WebhooksUpdateData = {
15181
15312
  body: {
15182
15313
  name?: string | null | undefined;
15183
15314
  url?: string | null | undefined;
15184
- eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook"> | null | undefined;
15315
+ eventTypes?: Array<"message.sent" | "message.delivered" | "message.read" | "message.failed" | "message.bounced" | "message.complained" | "message.received" | "message.opened" | "message.clicked" | "contact.created" | "contact.updated" | "contact.deleted" | "contact.subscribed" | "contact.unsubscribed" | "contact.resubscribed" | "contact.consent_changed" | "conversation.created" | "conversation.updated" | "conversation.archived" | "webhook.created" | "webhook.updated" | "webhook.deleted" | "webhook.test" | "domain.updated" | "domain.warming.updated" | "template.registration.updated" | "flow.registration.updated" | "whatsapp.number.connected" | "mailbox.message.received" | "mailbox.message.sent" | "mailbox.action.pending_approval" | "mailbox.action.resolved" | "mailbox.message.quarantined" | "mailbox.message.released" | "mailbox.message.discarded" | "journey.webhook"> | null | undefined;
15185
15316
  channels?: Array<"email"> | null | null | undefined;
15186
15317
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | null | undefined;
15187
15318
  namespaceId?: NamespaceId | null | null | undefined;
@@ -15470,6 +15601,48 @@ export type WebhooksRegenerateSecretResponses = {
15470
15601
  };
15471
15602
  };
15472
15603
  export type WebhooksRegenerateSecretResponse = WebhooksRegenerateSecretResponses[keyof WebhooksRegenerateSecretResponses];
15604
+ export type WebhooksGetSecretData = {
15605
+ body?: never;
15606
+ path: {
15607
+ id: WebhookEndpointId;
15608
+ };
15609
+ query?: never;
15610
+ url: "/v1/webhooks/{id}/secret";
15611
+ };
15612
+ export type WebhooksGetSecretErrors = {
15613
+ /**
15614
+ * UnauthorizedError
15615
+ */
15616
+ 401: UnauthorizedError;
15617
+ /**
15618
+ * ForbiddenError
15619
+ */
15620
+ 403: ForbiddenError;
15621
+ /**
15622
+ * ResourceNotFoundError
15623
+ */
15624
+ 404: ResourceNotFoundError;
15625
+ /**
15626
+ * ValidationError
15627
+ */
15628
+ 422: ValidationError;
15629
+ /**
15630
+ * InternalError
15631
+ */
15632
+ 500: InternalError;
15633
+ /**
15634
+ * GatewayTimeoutError
15635
+ */
15636
+ 504: GatewayTimeoutError;
15637
+ };
15638
+ export type WebhooksGetSecretError = WebhooksGetSecretErrors[keyof WebhooksGetSecretErrors];
15639
+ export type WebhooksGetSecretResponses = {
15640
+ /**
15641
+ * WebhookSigningSecret
15642
+ */
15643
+ 200: WebhookSigningSecret;
15644
+ };
15645
+ export type WebhooksGetSecretResponse = WebhooksGetSecretResponses[keyof WebhooksGetSecretResponses];
15473
15646
  export type OrganizationsCreateData = {
15474
15647
  body: {
15475
15648
  name: string;
@@ -17982,7 +18155,7 @@ export type MailboxesSendMessageErrors = {
17982
18155
  */
17983
18156
  409: MailboxSendConflictError | ConflictError;
17984
18157
  /**
17985
- * Samva API operation.
18158
+ * ValidationError
17986
18159
  */
17987
18160
  422: ValidationError;
17988
18161
  /**
@@ -18237,7 +18410,7 @@ export type MailboxesReplyErrors = {
18237
18410
  */
18238
18411
  409: MailboxSendConflictError | ConflictError;
18239
18412
  /**
18240
- * Samva API operation.
18413
+ * ValidationError
18241
18414
  */
18242
18415
  422: ValidationError;
18243
18416
  /**
@@ -18314,7 +18487,7 @@ export type MailboxesReplyAllErrors = {
18314
18487
  */
18315
18488
  409: MailboxSendConflictError | ConflictError;
18316
18489
  /**
18317
- * Samva API operation.
18490
+ * ValidationError
18318
18491
  */
18319
18492
  422: ValidationError;
18320
18493
  /**
@@ -18391,7 +18564,7 @@ export type MailboxesForwardErrors = {
18391
18564
  */
18392
18565
  409: MailboxSendConflictError | ConflictError;
18393
18566
  /**
18394
- * Samva API operation.
18567
+ * ValidationError
18395
18568
  */
18396
18569
  422: ValidationError;
18397
18570
  /**
@@ -18848,7 +19021,7 @@ export type MailboxesSendDraftErrors = {
18848
19021
  */
18849
19022
  409: MailboxSendConflictError | ConflictError;
18850
19023
  /**
18851
- * Samva API operation.
19024
+ * ValidationError
18852
19025
  */
18853
19026
  422: ValidationError;
18854
19027
  /**
@@ -19007,7 +19180,7 @@ export type MailboxesCancelActionErrors = {
19007
19180
  */
19008
19181
  409: MailboxSendConflictError | ConflictError;
19009
19182
  /**
19010
- * Samva API operation.
19183
+ * ValidationError
19011
19184
  */
19012
19185
  422: ValidationError;
19013
19186
  /**
@@ -19074,7 +19247,7 @@ export type MailboxesRetryActionErrors = {
19074
19247
  */
19075
19248
  409: MailboxSendConflictError | ConflictError;
19076
19249
  /**
19077
- * Samva API operation.
19250
+ * ValidationError
19078
19251
  */
19079
19252
  422: ValidationError;
19080
19253
  /**
@@ -19141,7 +19314,7 @@ export type MailboxesApproveActionErrors = {
19141
19314
  */
19142
19315
  409: MailboxSendConflictError | ConflictError;
19143
19316
  /**
19144
- * Samva API operation.
19317
+ * ValidationError
19145
19318
  */
19146
19319
  422: ValidationError;
19147
19320
  /**
@@ -10,6 +10,7 @@ export declare const list: ((input?: {
10
10
  readonly name: string;
11
11
  readonly key?: string | null;
12
12
  readonly start: string | null;
13
+ readonly end: string | null;
13
14
  readonly description?: string | null;
14
15
  readonly createdAt: string;
15
16
  readonly expiresAt: string | null;
@@ -59,6 +60,7 @@ export declare const list: ((input?: {
59
60
  readonly name: string;
60
61
  readonly key?: string | null;
61
62
  readonly start: string | null;
63
+ readonly end: string | null;
62
64
  readonly description?: string | null;
63
65
  readonly createdAt: string;
64
66
  readonly expiresAt: string | null;
@@ -107,6 +109,7 @@ export declare const list: ((input?: {
107
109
  readonly name: string;
108
110
  readonly key?: string | null;
109
111
  readonly start: string | null;
112
+ readonly end: string | null;
110
113
  readonly description?: string | null;
111
114
  readonly createdAt: string;
112
115
  readonly expiresAt: string | null;
@@ -178,6 +181,7 @@ export declare const create: (input: {
178
181
  readonly name: string;
179
182
  readonly key: import("effect/Redacted").Redacted<string>;
180
183
  readonly start: string | null;
184
+ readonly end: string | null;
181
185
  readonly description?: string | null;
182
186
  readonly createdAt: string;
183
187
  readonly expiresAt: string | null;
@@ -221,6 +225,7 @@ export declare const get: (input: {
221
225
  readonly name: string;
222
226
  readonly key?: string | null;
223
227
  readonly start: string | null;
228
+ readonly end: string | null;
224
229
  readonly description?: string | null;
225
230
  readonly createdAt: string;
226
231
  readonly expiresAt: string | null;
@@ -274,6 +279,7 @@ export declare const update: (input: {
274
279
  readonly name: string;
275
280
  readonly key?: string | null;
276
281
  readonly start: string | null;
282
+ readonly end: string | null;
277
283
  readonly description?: string | null;
278
284
  readonly createdAt: string;
279
285
  readonly expiresAt: string | null;
@@ -317,6 +323,7 @@ export declare const rotate: (input: {
317
323
  readonly name: string;
318
324
  readonly key: import("effect/Redacted").Redacted<string>;
319
325
  readonly start: string | null;
326
+ readonly end: string | null;
320
327
  readonly description?: string | null;
321
328
  readonly createdAt: string;
322
329
  readonly expiresAt: string | null;