samva 0.24.0 → 0.26.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.
Files changed (38) hide show
  1. package/dist/client/sdk.gen.d.ts +96 -4
  2. package/dist/client/sdk.gen.js +15 -8
  3. package/dist/client/types.gen.d.ts +559 -14
  4. package/dist/effect/api-keys.d.ts +3 -0
  5. package/dist/effect/campaigns.d.ts +18 -0
  6. package/dist/effect/email.d.ts +1 -0
  7. package/dist/effect/generated/agents.d.ts +1667 -0
  8. package/dist/effect/generated/api-keys.d.ts +15 -0
  9. package/dist/effect/generated/campaigns.d.ts +34 -0
  10. package/dist/effect/generated/email.d.ts +19 -0
  11. package/dist/effect/generated/email.js +8 -3
  12. package/dist/effect/generated/index.d.ts +3 -1
  13. package/dist/effect/generated/mailboxes.d.ts +176 -98
  14. package/dist/effect/generated/mailboxes.js +35 -26
  15. package/dist/effect/generated/messages.d.ts +9 -5
  16. package/dist/effect/generated/messages.js +2 -1
  17. package/dist/effect/generated/organizations.d.ts +18 -0
  18. package/dist/effect/generated/organizations.js +7 -1
  19. package/dist/effect/generated/scheduled-messages.d.ts +16 -0
  20. package/dist/effect/generated/shared.d.ts +203 -45
  21. package/dist/effect/generated/shared.js +66 -38
  22. package/dist/effect/generated/templates.d.ts +11 -7
  23. package/dist/effect/generated/templates.js +4 -7
  24. package/dist/effect/generated/webhooks.d.ts +19 -19
  25. package/dist/effect/generated/webhooks.js +12 -0
  26. package/dist/effect/generated/whoami.d.ts +4 -0
  27. package/dist/effect/generated-metadata.d.ts +45 -0
  28. package/dist/effect/generated-metadata.js +465 -426
  29. package/dist/effect/journeys.d.ts +112 -112
  30. package/dist/effect/mailboxes.d.ts +20 -6
  31. package/dist/effect/messages.d.ts +3 -0
  32. package/dist/effect/scheduled-messages.d.ts +9 -0
  33. package/dist/effect/templates.d.ts +4 -0
  34. package/dist/effect/webhooks.d.ts +4 -4
  35. package/dist/mailbox-events.d.ts +1 -1
  36. package/dist/package.js +1 -1
  37. package/dist/promises/types.gen.d.ts +1 -1
  38. package/package.json +6 -6
@@ -401,8 +401,19 @@ export type MailboxNonSendAction = {
401
401
  resolution: MailboxActionResolution | null;
402
402
  createdAt: string;
403
403
  updatedAt: string;
404
- type: "updateDraft" | "createNote" | "assignThread" | "changeThreadState" | "call" | "extensionRequest";
404
+ type: "updateDraft" | "createNote" | "assignThread" | "changeThreadState" | "call" | "extensionRequest" | "toolCall";
405
405
  state: "proposed" | "allowed" | "approvalRequired" | "policyDenied" | "approved" | "approvalDenied" | "executing" | "executed" | "failed";
406
+ /**
407
+ * The tool a `toolCall` runs, with its arguments and their hash; an approval covers exactly this call. Null for every other action type.
408
+ */
409
+ tool: MailboxToolCall | null;
410
+ };
411
+ export type MailboxToolCall = {
412
+ name: string;
413
+ argumentsHash: string;
414
+ arguments: {
415
+ [key: string]: JsonValue;
416
+ };
406
417
  };
407
418
  /**
408
419
  * How the action's approval ended.
@@ -416,7 +427,7 @@ export type MailboxActionResolution = {
416
427
  kind: "user" | "apiKey" | "extension" | "externalAgent" | "samvaAgent" | "system";
417
428
  id: string;
418
429
  displayName?: string | null | undefined;
419
- source: "humanUi" | "externalApi" | "externalAgent" | "extension" | "system";
430
+ source: "humanUi" | "externalApi" | "externalAgent" | "extension" | "samvaManagedAgent" | "system";
420
431
  };
421
432
  resolvedAt: string;
422
433
  /**
@@ -937,7 +948,7 @@ export type MailboxGrantPage = {
937
948
  export type MailboxAgentActivity = {
938
949
  actions: {
939
950
  byType: Array<{
940
- type: "sendMessage" | "reply" | "updateDraft" | "createNote" | "assignThread" | "changeThreadState" | "call" | "extensionRequest";
951
+ type: "sendMessage" | "reply" | "updateDraft" | "createNote" | "assignThread" | "changeThreadState" | "call" | "extensionRequest" | "toolCall";
941
952
  count: number;
942
953
  }>;
943
954
  byState: Array<{
@@ -1075,6 +1086,7 @@ export type ApiKeyResourceAccess = {
1075
1086
  contacts?: "read" | "write" | null | undefined;
1076
1087
  conversations?: "read" | "write" | null | undefined;
1077
1088
  templates?: "read" | "write" | null | undefined;
1089
+ agents?: "read" | "write" | null | undefined;
1078
1090
  webhooks?: "read" | "write" | null | undefined;
1079
1091
  apiKeys?: "read" | "write" | null | undefined;
1080
1092
  organization?: "read" | "write" | null | undefined;
@@ -1289,7 +1301,7 @@ export type WebhookEndpoint = {
1289
1301
  id: WebhookEndpointId;
1290
1302
  name: string;
1291
1303
  url: string;
1292
- 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">;
1304
+ 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" | "mailbox.message.delivered" | "mailbox.message.read" | "mailbox.message.failed" | "journey.webhook">;
1293
1305
  channels: Array<"email"> | null;
1294
1306
  mailboxIds: Array<MailboxId> | null;
1295
1307
  namespaceId: NamespaceId | null;
@@ -1303,7 +1315,7 @@ export type WebhookEndpoint = {
1303
1315
  export type UpdateWebhookPayload = {
1304
1316
  name?: string | null | undefined;
1305
1317
  url?: string | null | undefined;
1306
- 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;
1318
+ 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" | "mailbox.message.delivered" | "mailbox.message.read" | "mailbox.message.failed" | "journey.webhook"> | null | undefined;
1307
1319
  channels?: Array<"email"> | null | null | undefined;
1308
1320
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | null | undefined;
1309
1321
  namespaceId?: NamespaceId | null | null | undefined;
@@ -1320,7 +1332,7 @@ export type WebhookEndpointListItem = {
1320
1332
  id: WebhookEndpointId;
1321
1333
  name: string;
1322
1334
  url: string;
1323
- 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">;
1335
+ 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" | "mailbox.message.delivered" | "mailbox.message.read" | "mailbox.message.failed" | "journey.webhook">;
1324
1336
  channels: Array<"email"> | null;
1325
1337
  mailboxIds: Array<MailboxId> | null;
1326
1338
  namespaceId: NamespaceId | null;
@@ -1342,7 +1354,7 @@ export type WebhookDeliveryCounts = {
1342
1354
  export type CreateWebhookPayload = {
1343
1355
  name: string;
1344
1356
  url: string;
1345
- 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">;
1357
+ 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" | "mailbox.message.delivered" | "mailbox.message.read" | "mailbox.message.failed" | "journey.webhook">;
1346
1358
  channels?: Array<"email"> | null | undefined;
1347
1359
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | undefined;
1348
1360
  namespaceId?: NamespaceId | null | undefined;
@@ -1485,10 +1497,7 @@ export type Template = {
1485
1497
  description: string | null;
1486
1498
  category: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null;
1487
1499
  replyToDefault: Array<string> | null;
1488
- trackingDefault: {
1489
- opens?: boolean | null | undefined;
1490
- clicks?: boolean | null | undefined;
1491
- } | null;
1500
+ trackingDefault: TemplateTrackingDefault | null;
1492
1501
  email: {
1493
1502
  subject: string;
1494
1503
  preheader: string | null;
@@ -1502,6 +1511,10 @@ export type Template = {
1502
1511
  [key: string]: JsonValue;
1503
1512
  } | null;
1504
1513
  };
1514
+ export type TemplateTrackingDefault = {
1515
+ opens?: boolean | null | undefined;
1516
+ clicks?: boolean | null | undefined;
1517
+ };
1505
1518
  export type TemplateFamilyId = string;
1506
1519
  export type TemplateFromDefault = {
1507
1520
  email: string;
@@ -1530,6 +1543,10 @@ export type UpdateTemplatePayload = {
1530
1543
  category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
1531
1544
  fromDefault?: TemplateFromDefault | null | null | undefined;
1532
1545
  replyToDefault?: Array<string> | null | null | undefined;
1546
+ /**
1547
+ * Engagement tracking for sends of this template: `opens` and `clicks`, each inherited from the domain and organization defaults when omitted. A send request's own `tracking` still wins. Null clears the template's default.
1548
+ */
1549
+ trackingDefault?: TemplateTrackingDefault | null | null | undefined;
1533
1550
  isActive?: boolean | null | undefined;
1534
1551
  /**
1535
1552
  * 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.
@@ -1811,6 +1828,104 @@ export type SubscribePayload = {
1811
1828
  consentIp?: string | null | undefined;
1812
1829
  consentSource?: string | null | undefined;
1813
1830
  };
1831
+ export type AgentVersion = {
1832
+ agentId: AgentId;
1833
+ version: number;
1834
+ definition: AgentDefinition;
1835
+ publishedAt: string;
1836
+ };
1837
+ export type ClockTime = string;
1838
+ export type Weekday = "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday";
1839
+ export type TimeZone = string;
1840
+ export type AgentApprovalPolicy = "toolActions" | "none";
1841
+ export type AgentModel = "standard" | "max";
1842
+ export type AgentMode = "live" | "supervised";
1843
+ export type AgentIntegrationReference = string;
1844
+ export type AgentId = string;
1845
+ export type AgentVersionPage = {
1846
+ items: Array<AgentVersionSummary>;
1847
+ nextCursor: string | null;
1848
+ };
1849
+ export type AgentVersionSummary = {
1850
+ agentId: AgentId;
1851
+ version: number;
1852
+ publishedAt: string;
1853
+ };
1854
+ export type PublishAgentResponse = {
1855
+ agent: Agent;
1856
+ version: AgentVersion;
1857
+ published: boolean;
1858
+ };
1859
+ export type PublishAgentPayload = {
1860
+ revision: string;
1861
+ };
1862
+ export type ReplaceAgentDraftPayload = {
1863
+ revision: string;
1864
+ definition: AgentDefinition;
1865
+ };
1866
+ export type AgentDefinition = {
1867
+ instructions: string;
1868
+ knowledge: string;
1869
+ endpointIds: Array<MailboxEndpointId>;
1870
+ integrationIds: Array<AgentIntegrationReference>;
1871
+ mode: AgentMode;
1872
+ model: AgentModel;
1873
+ approvalPolicy: AgentApprovalPolicy;
1874
+ workingHours: WorkingHours | null;
1875
+ takeoverTimeoutMinutes: number;
1876
+ };
1877
+ export type WorkingHours = {
1878
+ timeZone: TimeZone;
1879
+ ranges: Array<WorkingHoursRange>;
1880
+ };
1881
+ export type WorkingHoursRange = {
1882
+ day: Weekday;
1883
+ opens: ClockTime;
1884
+ closes: ClockTime;
1885
+ };
1886
+ export type DeleteAgentResponse = {
1887
+ id: AgentId;
1888
+ deleted: true;
1889
+ };
1890
+ export type UpdateAgentPayload = {
1891
+ name: AgentName;
1892
+ };
1893
+ export type AgentName = string;
1894
+ export type Agent = {
1895
+ id: AgentId;
1896
+ name: string;
1897
+ namespaceId: NamespaceId | null;
1898
+ revision: string;
1899
+ draft: AgentDefinition;
1900
+ publishedVersion: number | null;
1901
+ publishedAt: string | null;
1902
+ createdAt: string;
1903
+ updatedAt: string;
1904
+ };
1905
+ export type CreateAgentPayload = {
1906
+ name: AgentName;
1907
+ /**
1908
+ * The namespace the agent belongs to; it cannot move later. Omit for an organization-level agent. A namespace-scoped key always creates in its own namespace.
1909
+ */
1910
+ namespaceId?: NamespaceId | null | undefined;
1911
+ /**
1912
+ * The first draft. Defaults to an agent with no instructions, knowledge, or endpoints, in supervised mode on the standard model.
1913
+ */
1914
+ definition?: AgentDefinition | null | undefined;
1915
+ };
1916
+ export type AgentPage = {
1917
+ items: Array<AgentListItem>;
1918
+ nextCursor: string | null;
1919
+ };
1920
+ export type AgentListItem = {
1921
+ id: AgentId;
1922
+ name: string;
1923
+ namespaceId: NamespaceId | null;
1924
+ publishedVersion: number | null;
1925
+ publishedAt: string | null;
1926
+ createdAt: string;
1927
+ updatedAt: string;
1928
+ };
1814
1929
  export type JourneyRunDetail = {
1815
1930
  id: JourneyRunId;
1816
1931
  journeyId: JourneyId;
@@ -2733,6 +2848,7 @@ export type CustomTrackingStatus = {
2733
2848
  status: "pending" | "caa-blocked" | "active" | "teardown-scheduled" | "disabled";
2734
2849
  label: string;
2735
2850
  hostname: string;
2851
+ parentDomain: string;
2736
2852
  region: string;
2737
2853
  sslStatus: string | null;
2738
2854
  certificate: CustomTrackingCertificate | null;
@@ -2744,6 +2860,7 @@ export type CustomTrackingStatus = {
2744
2860
  verificationErrors: Array<string>;
2745
2861
  teardownScheduledAt: string | null;
2746
2862
  } | null;
2863
+ parentDomains: Array<string>;
2747
2864
  };
2748
2865
  export type CustomTrackingDnsRecord = {
2749
2866
  name: string;
@@ -3101,6 +3218,7 @@ export type EmailContent = {
3101
3218
  unsubscribeGroupId?: UnsubscribeId | null | null | undefined;
3102
3219
  tracking?: EmailTrackingOverrideV1 | undefined;
3103
3220
  footer?: EmailFooterOverride | undefined;
3221
+ headers?: EmailCustomHeaders | null | undefined;
3104
3222
  };
3105
3223
  export type EmailContentWritable = {
3106
3224
  subject?: string | null | undefined;
@@ -3122,6 +3240,19 @@ export type EmailContentWritable = {
3122
3240
  unsubscribeGroupId?: UnsubscribeId | null | null | undefined;
3123
3241
  tracking?: EmailTrackingOverrideV1 | undefined;
3124
3242
  footer?: EmailFooterOverride | undefined;
3243
+ headers?: EmailCustomHeadersWritable | null | undefined;
3244
+ };
3245
+ /**
3246
+ * Custom headers copied onto the outgoing message. Each name is an RFC 5322 field name and each value is one non-empty line of printable ASCII. Names Samva or the transport own are rejected.
3247
+ */
3248
+ export type EmailCustomHeaders = {
3249
+ [key: string]: string;
3250
+ };
3251
+ /**
3252
+ * Custom headers copied onto the outgoing message. Each name is an RFC 5322 field name and each value is one non-empty line of printable ASCII. Names Samva or the transport own are rejected.
3253
+ */
3254
+ export type EmailCustomHeadersWritable = {
3255
+ [key: string]: string | undefined;
3125
3256
  };
3126
3257
  export type EmailFooterOverride = {
3127
3258
  enabled?: boolean | null | undefined;
@@ -3204,6 +3335,7 @@ export type EmailDispatchContent = {
3204
3335
  unsubscribeGroupId?: UnsubscribeId | null | null | undefined;
3205
3336
  tracking?: EmailTrackingOverrideV1 | undefined;
3206
3337
  footer?: EmailFooterOverride | undefined;
3338
+ headers?: EmailCustomHeadersWritable | null | undefined;
3207
3339
  };
3208
3340
  export type CampaignPage = {
3209
3341
  items: Array<CampaignListItem>;
@@ -3433,7 +3565,7 @@ export type Message = {
3433
3565
  updatedAt: string;
3434
3566
  };
3435
3567
  export type MessageSubmission = {
3436
- origin: "direct" | "campaign" | "scheduled" | "mailbox" | "forwarding" | "journey";
3568
+ origin: "direct" | "campaign" | "scheduled" | "mailbox" | "forwarding" | "journey" | "businessApp";
3437
3569
  transport: "http" | null;
3438
3570
  credential: SubmissionCredential | null;
3439
3571
  userId: UserId | null;
@@ -6078,6 +6210,7 @@ export type EmailGetCustomTrackingResponse = EmailGetCustomTrackingResponses[key
6078
6210
  export type EmailEnableCustomTrackingData = {
6079
6211
  body: {
6080
6212
  label?: string | null | undefined;
6213
+ parentDomain?: string | null | undefined;
6081
6214
  };
6082
6215
  path: {
6083
6216
  id: EmailDomainId;
@@ -10729,6 +10862,408 @@ export type JourneysGetRunResponses = {
10729
10862
  200: JourneyRunDetail;
10730
10863
  };
10731
10864
  export type JourneysGetRunResponse = JourneysGetRunResponses[keyof JourneysGetRunResponses];
10865
+ export type AgentsListData = {
10866
+ body?: never;
10867
+ path?: never;
10868
+ query?: {
10869
+ limit?: string | null | undefined;
10870
+ cursor?: Cursor | null | undefined;
10871
+ };
10872
+ url: "/v1/agents";
10873
+ };
10874
+ export type AgentsListErrors = {
10875
+ /**
10876
+ * UnauthorizedError
10877
+ */
10878
+ 401: UnauthorizedError;
10879
+ /**
10880
+ * ForbiddenError
10881
+ */
10882
+ 403: ForbiddenError;
10883
+ /**
10884
+ * ValidationError
10885
+ */
10886
+ 422: ValidationError;
10887
+ /**
10888
+ * InternalError
10889
+ */
10890
+ 500: InternalError;
10891
+ /**
10892
+ * GatewayTimeoutError
10893
+ */
10894
+ 504: GatewayTimeoutError;
10895
+ };
10896
+ export type AgentsListError = AgentsListErrors[keyof AgentsListErrors];
10897
+ export type AgentsListResponses = {
10898
+ /**
10899
+ * AgentPage
10900
+ */
10901
+ 200: AgentPage;
10902
+ };
10903
+ export type AgentsListResponse = AgentsListResponses[keyof AgentsListResponses];
10904
+ export type AgentsCreateData = {
10905
+ body: {
10906
+ name: AgentName;
10907
+ /**
10908
+ * The namespace the agent belongs to; it cannot move later. Omit for an organization-level agent. A namespace-scoped key always creates in its own namespace.
10909
+ */
10910
+ namespaceId?: NamespaceId | null | undefined;
10911
+ /**
10912
+ * The first draft. Defaults to an agent with no instructions, knowledge, or endpoints, in supervised mode on the standard model.
10913
+ */
10914
+ definition?: AgentDefinition | null | undefined;
10915
+ };
10916
+ path?: never;
10917
+ query?: never;
10918
+ url: "/v1/agents";
10919
+ };
10920
+ export type AgentsCreateErrors = {
10921
+ /**
10922
+ * UnauthorizedError
10923
+ */
10924
+ 401: UnauthorizedError;
10925
+ /**
10926
+ * ForbiddenError
10927
+ */
10928
+ 403: ForbiddenError;
10929
+ /**
10930
+ * ResourceNotFoundError
10931
+ */
10932
+ 404: ResourceNotFoundError;
10933
+ /**
10934
+ * ValidationError
10935
+ */
10936
+ 422: ValidationError;
10937
+ /**
10938
+ * InternalError
10939
+ */
10940
+ 500: InternalError;
10941
+ /**
10942
+ * GatewayTimeoutError
10943
+ */
10944
+ 504: GatewayTimeoutError;
10945
+ };
10946
+ export type AgentsCreateError = AgentsCreateErrors[keyof AgentsCreateErrors];
10947
+ export type AgentsCreateResponses = {
10948
+ /**
10949
+ * Agent
10950
+ */
10951
+ 201: Agent;
10952
+ };
10953
+ export type AgentsCreateResponse = AgentsCreateResponses[keyof AgentsCreateResponses];
10954
+ export type AgentsRemoveData = {
10955
+ body?: never;
10956
+ path: {
10957
+ id: AgentId;
10958
+ };
10959
+ query?: never;
10960
+ url: "/v1/agents/{id}";
10961
+ };
10962
+ export type AgentsRemoveErrors = {
10963
+ /**
10964
+ * UnauthorizedError
10965
+ */
10966
+ 401: UnauthorizedError;
10967
+ /**
10968
+ * ForbiddenError
10969
+ */
10970
+ 403: ForbiddenError;
10971
+ /**
10972
+ * ResourceNotFoundError
10973
+ */
10974
+ 404: ResourceNotFoundError;
10975
+ /**
10976
+ * ValidationError
10977
+ */
10978
+ 422: ValidationError;
10979
+ /**
10980
+ * InternalError
10981
+ */
10982
+ 500: InternalError;
10983
+ /**
10984
+ * GatewayTimeoutError
10985
+ */
10986
+ 504: GatewayTimeoutError;
10987
+ };
10988
+ export type AgentsRemoveError = AgentsRemoveErrors[keyof AgentsRemoveErrors];
10989
+ export type AgentsRemoveResponses = {
10990
+ /**
10991
+ * DeleteAgentResponse
10992
+ */
10993
+ 200: DeleteAgentResponse;
10994
+ };
10995
+ export type AgentsRemoveResponse = AgentsRemoveResponses[keyof AgentsRemoveResponses];
10996
+ export type AgentsGetData = {
10997
+ body?: never;
10998
+ path: {
10999
+ id: AgentId;
11000
+ };
11001
+ query?: never;
11002
+ url: "/v1/agents/{id}";
11003
+ };
11004
+ export type AgentsGetErrors = {
11005
+ /**
11006
+ * UnauthorizedError
11007
+ */
11008
+ 401: UnauthorizedError;
11009
+ /**
11010
+ * ForbiddenError
11011
+ */
11012
+ 403: ForbiddenError;
11013
+ /**
11014
+ * ResourceNotFoundError
11015
+ */
11016
+ 404: ResourceNotFoundError;
11017
+ /**
11018
+ * ValidationError
11019
+ */
11020
+ 422: ValidationError;
11021
+ /**
11022
+ * InternalError
11023
+ */
11024
+ 500: InternalError;
11025
+ /**
11026
+ * GatewayTimeoutError
11027
+ */
11028
+ 504: GatewayTimeoutError;
11029
+ };
11030
+ export type AgentsGetError = AgentsGetErrors[keyof AgentsGetErrors];
11031
+ export type AgentsGetResponses = {
11032
+ /**
11033
+ * Agent
11034
+ */
11035
+ 200: Agent;
11036
+ };
11037
+ export type AgentsGetResponse = AgentsGetResponses[keyof AgentsGetResponses];
11038
+ export type AgentsUpdateData = {
11039
+ body: {
11040
+ name: AgentName;
11041
+ };
11042
+ path: {
11043
+ id: AgentId;
11044
+ };
11045
+ query?: never;
11046
+ url: "/v1/agents/{id}";
11047
+ };
11048
+ export type AgentsUpdateErrors = {
11049
+ /**
11050
+ * UnauthorizedError
11051
+ */
11052
+ 401: UnauthorizedError;
11053
+ /**
11054
+ * ForbiddenError
11055
+ */
11056
+ 403: ForbiddenError;
11057
+ /**
11058
+ * ResourceNotFoundError
11059
+ */
11060
+ 404: ResourceNotFoundError;
11061
+ /**
11062
+ * ValidationError
11063
+ */
11064
+ 422: ValidationError;
11065
+ /**
11066
+ * InternalError
11067
+ */
11068
+ 500: InternalError;
11069
+ /**
11070
+ * GatewayTimeoutError
11071
+ */
11072
+ 504: GatewayTimeoutError;
11073
+ };
11074
+ export type AgentsUpdateError = AgentsUpdateErrors[keyof AgentsUpdateErrors];
11075
+ export type AgentsUpdateResponses = {
11076
+ /**
11077
+ * Agent
11078
+ */
11079
+ 200: Agent;
11080
+ };
11081
+ export type AgentsUpdateResponse = AgentsUpdateResponses[keyof AgentsUpdateResponses];
11082
+ export type AgentsReplaceDraftData = {
11083
+ body: {
11084
+ revision: string;
11085
+ definition: AgentDefinition;
11086
+ };
11087
+ path: {
11088
+ id: AgentId;
11089
+ };
11090
+ query?: never;
11091
+ url: "/v1/agents/{id}/draft";
11092
+ };
11093
+ export type AgentsReplaceDraftErrors = {
11094
+ /**
11095
+ * UnauthorizedError
11096
+ */
11097
+ 401: UnauthorizedError;
11098
+ /**
11099
+ * ForbiddenError
11100
+ */
11101
+ 403: ForbiddenError;
11102
+ /**
11103
+ * ResourceNotFoundError
11104
+ */
11105
+ 404: ResourceNotFoundError;
11106
+ /**
11107
+ * ConflictError
11108
+ */
11109
+ 409: ConflictError;
11110
+ /**
11111
+ * ValidationError
11112
+ */
11113
+ 422: ValidationError;
11114
+ /**
11115
+ * InternalError
11116
+ */
11117
+ 500: InternalError;
11118
+ /**
11119
+ * GatewayTimeoutError
11120
+ */
11121
+ 504: GatewayTimeoutError;
11122
+ };
11123
+ export type AgentsReplaceDraftError = AgentsReplaceDraftErrors[keyof AgentsReplaceDraftErrors];
11124
+ export type AgentsReplaceDraftResponses = {
11125
+ /**
11126
+ * Agent
11127
+ */
11128
+ 200: Agent;
11129
+ };
11130
+ export type AgentsReplaceDraftResponse = AgentsReplaceDraftResponses[keyof AgentsReplaceDraftResponses];
11131
+ export type AgentsPublishData = {
11132
+ body: {
11133
+ revision: string;
11134
+ };
11135
+ path: {
11136
+ id: AgentId;
11137
+ };
11138
+ query?: never;
11139
+ url: "/v1/agents/{id}/publish";
11140
+ };
11141
+ export type AgentsPublishErrors = {
11142
+ /**
11143
+ * UnauthorizedError
11144
+ */
11145
+ 401: UnauthorizedError;
11146
+ /**
11147
+ * ForbiddenError
11148
+ */
11149
+ 403: ForbiddenError;
11150
+ /**
11151
+ * ResourceNotFoundError
11152
+ */
11153
+ 404: ResourceNotFoundError;
11154
+ /**
11155
+ * ConflictError
11156
+ */
11157
+ 409: ConflictError;
11158
+ /**
11159
+ * ValidationError
11160
+ */
11161
+ 422: ValidationError;
11162
+ /**
11163
+ * InternalError
11164
+ */
11165
+ 500: InternalError;
11166
+ /**
11167
+ * GatewayTimeoutError
11168
+ */
11169
+ 504: GatewayTimeoutError;
11170
+ };
11171
+ export type AgentsPublishError = AgentsPublishErrors[keyof AgentsPublishErrors];
11172
+ export type AgentsPublishResponses = {
11173
+ /**
11174
+ * PublishAgentResponse
11175
+ */
11176
+ 200: PublishAgentResponse;
11177
+ };
11178
+ export type AgentsPublishResponse = AgentsPublishResponses[keyof AgentsPublishResponses];
11179
+ export type AgentsListVersionsData = {
11180
+ body?: never;
11181
+ path: {
11182
+ id: AgentId;
11183
+ };
11184
+ query?: {
11185
+ limit?: string | null | undefined;
11186
+ cursor?: VersionCursor | null | undefined;
11187
+ };
11188
+ url: "/v1/agents/{id}/versions";
11189
+ };
11190
+ export type AgentsListVersionsErrors = {
11191
+ /**
11192
+ * UnauthorizedError
11193
+ */
11194
+ 401: UnauthorizedError;
11195
+ /**
11196
+ * ForbiddenError
11197
+ */
11198
+ 403: ForbiddenError;
11199
+ /**
11200
+ * ResourceNotFoundError
11201
+ */
11202
+ 404: ResourceNotFoundError;
11203
+ /**
11204
+ * ValidationError
11205
+ */
11206
+ 422: ValidationError;
11207
+ /**
11208
+ * InternalError
11209
+ */
11210
+ 500: InternalError;
11211
+ /**
11212
+ * GatewayTimeoutError
11213
+ */
11214
+ 504: GatewayTimeoutError;
11215
+ };
11216
+ export type AgentsListVersionsError = AgentsListVersionsErrors[keyof AgentsListVersionsErrors];
11217
+ export type AgentsListVersionsResponses = {
11218
+ /**
11219
+ * AgentVersionPage
11220
+ */
11221
+ 200: AgentVersionPage;
11222
+ };
11223
+ export type AgentsListVersionsResponse = AgentsListVersionsResponses[keyof AgentsListVersionsResponses];
11224
+ export type AgentsGetVersionData = {
11225
+ body?: never;
11226
+ path: {
11227
+ id: AgentId;
11228
+ version: string;
11229
+ };
11230
+ query?: never;
11231
+ url: "/v1/agents/{id}/versions/{version}";
11232
+ };
11233
+ export type AgentsGetVersionErrors = {
11234
+ /**
11235
+ * UnauthorizedError
11236
+ */
11237
+ 401: UnauthorizedError;
11238
+ /**
11239
+ * ForbiddenError
11240
+ */
11241
+ 403: ForbiddenError;
11242
+ /**
11243
+ * ResourceNotFoundError
11244
+ */
11245
+ 404: ResourceNotFoundError;
11246
+ /**
11247
+ * ValidationError
11248
+ */
11249
+ 422: ValidationError;
11250
+ /**
11251
+ * InternalError
11252
+ */
11253
+ 500: InternalError;
11254
+ /**
11255
+ * GatewayTimeoutError
11256
+ */
11257
+ 504: GatewayTimeoutError;
11258
+ };
11259
+ export type AgentsGetVersionError = AgentsGetVersionErrors[keyof AgentsGetVersionErrors];
11260
+ export type AgentsGetVersionResponses = {
11261
+ /**
11262
+ * AgentVersion
11263
+ */
11264
+ 200: AgentVersion;
11265
+ };
11266
+ export type AgentsGetVersionResponse = AgentsGetVersionResponses[keyof AgentsGetVersionResponses];
10732
11267
  export type SubscriptionsSubscribeData = {
10733
11268
  body: {
10734
11269
  /**
@@ -12826,6 +13361,10 @@ export type TemplatesUpdateData = {
12826
13361
  category?: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null | null | undefined;
12827
13362
  fromDefault?: TemplateFromDefault | null | null | undefined;
12828
13363
  replyToDefault?: Array<string> | null | null | undefined;
13364
+ /**
13365
+ * Engagement tracking for sends of this template: `opens` and `clicks`, each inherited from the domain and organization defaults when omitted. A send request's own `tracking` still wins. Null clears the template's default.
13366
+ */
13367
+ trackingDefault?: TemplateTrackingDefault | null | null | undefined;
12829
13368
  isActive?: boolean | null | undefined;
12830
13369
  /**
12831
13370
  * 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.
@@ -15263,7 +15802,7 @@ export type WebhooksCreateData = {
15263
15802
  body: {
15264
15803
  name: string;
15265
15804
  url: string;
15266
- 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">;
15805
+ 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" | "mailbox.message.delivered" | "mailbox.message.read" | "mailbox.message.failed" | "journey.webhook">;
15267
15806
  channels?: Array<"email"> | null | undefined;
15268
15807
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | undefined;
15269
15808
  namespaceId?: NamespaceId | null | undefined;
@@ -15417,7 +15956,7 @@ export type WebhooksUpdateData = {
15417
15956
  body: {
15418
15957
  name?: string | null | undefined;
15419
15958
  url?: string | null | undefined;
15420
- 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;
15959
+ 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" | "mailbox.message.delivered" | "mailbox.message.read" | "mailbox.message.failed" | "journey.webhook"> | null | undefined;
15421
15960
  channels?: Array<"email"> | null | null | undefined;
15422
15961
  mailboxIds?: [MailboxId, ...Array<MailboxId>] | null | null | undefined;
15423
15962
  namespaceId?: NamespaceId | null | null | undefined;
@@ -16111,6 +16650,12 @@ export type OrganizationsGetUsageResponses = {
16111
16650
  usedAiCredits: number | null;
16112
16651
  overageAiCredits: number | null;
16113
16652
  overageAiCost: number | null;
16653
+ aiPackCredits: number | null;
16654
+ aiResetsAt: string | null;
16655
+ creditsResetsAt: string | null;
16656
+ standardGranted: number | null;
16657
+ standardRemaining: number | null;
16658
+ standardResetsAt: string | null;
16114
16659
  };
16115
16660
  };
16116
16661
  };