@epilot/sdk 2.1.2 → 2.1.3

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 (114) hide show
  1. package/definitions/email-settings-runtime.json +1 -1
  2. package/definitions/email-settings.json +121 -0
  3. package/dist/apis/access-token.cjs +6 -6
  4. package/dist/apis/access-token.js +1 -1
  5. package/dist/apis/address-suggestions.cjs +6 -6
  6. package/dist/apis/address-suggestions.js +1 -1
  7. package/dist/apis/address.cjs +6 -6
  8. package/dist/apis/address.js +1 -1
  9. package/dist/apis/ai-agents.cjs +6 -6
  10. package/dist/apis/ai-agents.js +1 -1
  11. package/dist/apis/app.cjs +6 -6
  12. package/dist/apis/app.js +1 -1
  13. package/dist/apis/audit-logs.cjs +6 -6
  14. package/dist/apis/audit-logs.js +1 -1
  15. package/dist/apis/automation.cjs +6 -6
  16. package/dist/apis/automation.js +1 -1
  17. package/dist/apis/billing.cjs +6 -6
  18. package/dist/apis/billing.js +1 -1
  19. package/dist/apis/blueprint-manifest.cjs +6 -6
  20. package/dist/apis/blueprint-manifest.js +1 -1
  21. package/dist/apis/consent.cjs +6 -6
  22. package/dist/apis/consent.js +1 -1
  23. package/dist/apis/customer-portal.cjs +6 -6
  24. package/dist/apis/customer-portal.js +1 -1
  25. package/dist/apis/dashboard.cjs +6 -6
  26. package/dist/apis/dashboard.js +1 -1
  27. package/dist/apis/data-management.cjs +6 -6
  28. package/dist/apis/data-management.js +1 -1
  29. package/dist/apis/deduplication.cjs +6 -6
  30. package/dist/apis/deduplication.js +1 -1
  31. package/dist/apis/design.cjs +6 -6
  32. package/dist/apis/design.js +1 -1
  33. package/dist/apis/document.cjs +6 -6
  34. package/dist/apis/document.js +1 -1
  35. package/dist/apis/email-settings.cjs +8 -8
  36. package/dist/apis/email-settings.d.cts +2 -2
  37. package/dist/apis/email-settings.d.ts +2 -2
  38. package/dist/apis/email-settings.js +2 -2
  39. package/dist/apis/email-template.cjs +6 -6
  40. package/dist/apis/email-template.js +1 -1
  41. package/dist/apis/entity-mapping.cjs +6 -6
  42. package/dist/apis/entity-mapping.js +1 -1
  43. package/dist/apis/entity.cjs +6 -6
  44. package/dist/apis/entity.js +1 -1
  45. package/dist/apis/environments.cjs +6 -6
  46. package/dist/apis/environments.js +1 -1
  47. package/dist/apis/erp-integration.cjs +6 -6
  48. package/dist/apis/erp-integration.js +1 -1
  49. package/dist/apis/event-catalog.cjs +6 -6
  50. package/dist/apis/event-catalog.js +1 -1
  51. package/dist/apis/file.cjs +6 -6
  52. package/dist/apis/file.js +1 -1
  53. package/dist/apis/iban.cjs +6 -6
  54. package/dist/apis/iban.js +1 -1
  55. package/dist/apis/journey.cjs +6 -6
  56. package/dist/apis/journey.js +1 -1
  57. package/dist/apis/kanban.cjs +6 -6
  58. package/dist/apis/kanban.js +1 -1
  59. package/dist/apis/message.cjs +6 -6
  60. package/dist/apis/message.js +1 -1
  61. package/dist/apis/metering.cjs +6 -6
  62. package/dist/apis/metering.js +1 -1
  63. package/dist/apis/notes.cjs +6 -6
  64. package/dist/apis/notes.js +1 -1
  65. package/dist/apis/notification.cjs +6 -6
  66. package/dist/apis/notification.js +1 -1
  67. package/dist/apis/organization.cjs +6 -6
  68. package/dist/apis/organization.js +1 -1
  69. package/dist/apis/partner-directory.cjs +6 -6
  70. package/dist/apis/partner-directory.js +1 -1
  71. package/dist/apis/permissions.cjs +6 -6
  72. package/dist/apis/permissions.js +1 -1
  73. package/dist/apis/pricing-tier.cjs +6 -6
  74. package/dist/apis/pricing-tier.js +1 -1
  75. package/dist/apis/pricing.cjs +6 -6
  76. package/dist/apis/pricing.js +1 -1
  77. package/dist/apis/purpose.cjs +6 -6
  78. package/dist/apis/purpose.js +1 -1
  79. package/dist/apis/sandbox.cjs +6 -6
  80. package/dist/apis/sandbox.js +1 -1
  81. package/dist/apis/submission.cjs +6 -6
  82. package/dist/apis/submission.js +1 -1
  83. package/dist/apis/targeting.cjs +6 -6
  84. package/dist/apis/targeting.js +1 -1
  85. package/dist/apis/template-variables.cjs +6 -6
  86. package/dist/apis/template-variables.js +1 -1
  87. package/dist/apis/user.cjs +6 -6
  88. package/dist/apis/user.js +1 -1
  89. package/dist/apis/validation-rules.cjs +6 -6
  90. package/dist/apis/validation-rules.js +1 -1
  91. package/dist/apis/webhooks.cjs +6 -6
  92. package/dist/apis/webhooks.js +1 -1
  93. package/dist/apis/workflow-definition.cjs +6 -6
  94. package/dist/apis/workflow-definition.js +1 -1
  95. package/dist/apis/workflow.cjs +6 -6
  96. package/dist/apis/workflow.js +1 -1
  97. package/dist/{chunk-RJ3DWFSK.js → chunk-3NLMZLCD.js} +1 -1
  98. package/dist/{chunk-BPHOGIQM.cjs → chunk-A67W5WAP.cjs} +1 -1
  99. package/dist/{chunk-T7LQKRUK.cjs → chunk-FPO2GB3J.cjs} +2 -2
  100. package/dist/{chunk-QTU4H6NQ.js → chunk-PDALFDYR.js} +2 -2
  101. package/dist/email-settings-EJ3DCPPN.js +7 -0
  102. package/dist/email-settings-TALOPLBC.cjs +7 -0
  103. package/dist/{email-settings-runtime-NS7MU3RB.cjs → email-settings-runtime-3NJIAWWI.cjs} +2 -2
  104. package/dist/{email-settings-runtime-X7F3EPAB.js → email-settings-runtime-Q2HVKJDS.js} +1 -1
  105. package/dist/{email-settings.d-BXxYjVDr.d.cts → email-settings.d-DUvmLZMN.d.cts} +115 -2
  106. package/dist/{email-settings.d-BXxYjVDr.d.ts → email-settings.d-DUvmLZMN.d.ts} +115 -2
  107. package/dist/index.cjs +10 -10
  108. package/dist/index.d.cts +1 -1
  109. package/dist/index.d.ts +1 -1
  110. package/dist/index.js +2 -2
  111. package/docs/email-settings.md +80 -1
  112. package/package.json +1 -1
  113. package/dist/email-settings-TQ5GGDYG.js +0 -7
  114. package/dist/email-settings-TQC34GST.cjs +0 -7
package/dist/index.js CHANGED
@@ -72,7 +72,7 @@ import {
72
72
  } from "./chunk-75EI2Q64.js";
73
73
  import {
74
74
  require_email_settings_runtime
75
- } from "./chunk-RJ3DWFSK.js";
75
+ } from "./chunk-3NLMZLCD.js";
76
76
  import {
77
77
  require_email_template_runtime
78
78
  } from "./chunk-JJWJLY42.js";
@@ -143,7 +143,7 @@ import {
143
143
  expand,
144
144
  help,
145
145
  openapi
146
- } from "./chunk-QTU4H6NQ.js";
146
+ } from "./chunk-PDALFDYR.js";
147
147
  import {
148
148
  __require
149
149
  } from "./chunk-YPSWSI3M.js";
@@ -55,6 +55,11 @@ const { data } = await emailSettingsClient.provisionEpilotEmailAddress(...)
55
55
  - [`getConnectedOutlookEmails`](#getconnectedoutlookemails)
56
56
  - [`outlookOAuthCallback`](#outlookoauthcallback)
57
57
 
58
+ **Channels**
59
+ - [`connectMsTeams`](#connectmsteams)
60
+ - [`disconnectMsTeams`](#disconnectmsteams)
61
+ - [`getMsTeamsStatus`](#getmsteamsstatus)
62
+
58
63
  **Settings**
59
64
  - [`getSettings`](#getsettings)
60
65
  - [`addSetting`](#addsetting)
@@ -608,7 +613,8 @@ const { data } = await client.getOutlookConnectionStatus()
608
613
  "is_token_valid": true
609
614
  }
610
615
  ],
611
- "has_connections": true
616
+ "has_connections": true,
617
+ "teams_enabled": true
612
618
  }
613
619
  ```
614
620
 
@@ -647,6 +653,79 @@ const { data } = await client.disconnectOutlook(
647
653
 
648
654
  ---
649
655
 
656
+ ### `connectMsTeams`
657
+
658
+ Connects Microsoft Teams channel (click-to-call deep links, meetings) for the organization.
659
+ Requires an active Microsoft 365 / Outlook connection.
660
+
661
+ `POST /v2/channels/msteams/connect`
662
+
663
+ ```ts
664
+ const { data } = await client.connectMsTeams()
665
+ ```
666
+
667
+ <details>
668
+ <summary>Response</summary>
669
+
670
+ ```json
671
+ {
672
+ "connected": true,
673
+ "connected_at": "1970-01-01T00:00:00.000Z"
674
+ }
675
+ ```
676
+
677
+ </details>
678
+
679
+ ---
680
+
681
+ ### `disconnectMsTeams`
682
+
683
+ Disconnects Microsoft Teams channel for the organization.
684
+
685
+ `POST /v2/channels/msteams/disconnect`
686
+
687
+ ```ts
688
+ const { data } = await client.disconnectMsTeams()
689
+ ```
690
+
691
+ <details>
692
+ <summary>Response</summary>
693
+
694
+ ```json
695
+ {
696
+ "connected": true
697
+ }
698
+ ```
699
+
700
+ </details>
701
+
702
+ ---
703
+
704
+ ### `getMsTeamsStatus`
705
+
706
+ Returns the connection status of the Microsoft Teams channel for the organization.
707
+
708
+ `GET /v2/channels/msteams/status`
709
+
710
+ ```ts
711
+ const { data } = await client.getMsTeamsStatus()
712
+ ```
713
+
714
+ <details>
715
+ <summary>Response</summary>
716
+
717
+ ```json
718
+ {
719
+ "connected": true,
720
+ "connected_at": "1970-01-01T00:00:00.000Z",
721
+ "connected_by_user_id": "string"
722
+ }
723
+ ```
724
+
725
+ </details>
726
+
727
+ ---
728
+
650
729
  ### `connectOutlookMailbox`
651
730
 
652
731
  Connects an Outlook mailbox:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/sdk",
3
- "version": "2.1.2",
3
+ "version": "2.1.3",
4
4
  "description": "JavaScript/TypeScript SDK for epilot APIs",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -1,7 +0,0 @@
1
- import "./chunk-YPSWSI3M.js";
2
-
3
- // src/docs/email-settings.json
4
- var email_settings_default = '# Messaging Settings API\n\n- **Base URL:** `https://email-settings.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/email-settings](https://docs.epilot.io/api/email-settings)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.emailSettings.provisionEpilotEmailAddress(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/email-settings\'\n\nconst emailSettingsClient = getClient()\nauthorize(emailSettingsClient, () => \'<token>\')\nconst { data } = await emailSettingsClient.provisionEpilotEmailAddress(...)\n```\n\n## Operations\n\n**Email addresses**\n- [`provisionEpilotEmailAddress`](#provisionepilotemailaddress)\n- [`setEmailAddressPrimary`](#setemailaddressprimary)\n- [`getEmailAddress`](#getemailaddress)\n- [`deleteEmailAddress`](#deleteemailaddress)\n- [`updateEmailAddress`](#updateemailaddress)\n- [`listEmailAddresses`](#listemailaddresses)\n- [`addEmailAddress`](#addemailaddress)\n\n**Shared inboxes**\n- [`getSharedInbox`](#getsharedinbox)\n- [`deleteSharedInbox`](#deletesharedinbox)\n- [`updateSharedInbox`](#updatesharedinbox)\n- [`listSharedInboxes`](#listsharedinboxes)\n- [`addSharedInbox`](#addsharedinbox)\n\n**Inbox buckets**\n- [`listInboxBuckets`](#listinboxbuckets)\n\n**O365 Outlook Connection**\n- [`connectOutlook`](#connectoutlook)\n- [`getOutlookConnectionStatus`](#getoutlookconnectionstatus)\n- [`disconnectOutlook`](#disconnectoutlook)\n- [`connectOutlookMailbox`](#connectoutlookmailbox)\n- [`disconnectOutlookMailbox`](#disconnectoutlookmailbox)\n- [`startMailboxSync`](#startmailboxsync)\n- [`getMailboxSyncStatus`](#getmailboxsyncstatus)\n- [`retryMailboxSync`](#retrymailboxsync)\n- [`getConnectedOutlookEmails`](#getconnectedoutlookemails)\n- [`outlookOAuthCallback`](#outlookoauthcallback)\n\n**Settings**\n- [`getSettings`](#getsettings)\n- [`addSetting`](#addsetting)\n- [`deleteSetting`](#deletesetting)\n- [`updateSetting`](#updatesetting)\n\n**Domains**\n- [`addDomain`](#adddomain)\n- [`deleteDomain`](#deletedomain)\n- [`verifyNameServers`](#verifynameservers)\n- [`verifyDomain`](#verifydomain)\n\n**Schemas**\n- [`MailboxSyncStatus`](#mailboxsyncstatus)\n- [`MailboxSyncStatuses`](#mailboxsyncstatuses)\n- [`MailboxSyncFolderStatuses`](#mailboxsyncfolderstatuses)\n- [`MailboxSyncTimeframePeriods`](#mailboxsynctimeframeperiods)\n- [`InboxBucketResponse`](#inboxbucketresponse)\n- [`ProvisionEpilotEmailAddressPayload`](#provisionepilotemailaddresspayload)\n- [`SetEmailAddressPrimaryPayload`](#setemailaddressprimarypayload)\n- [`UpdateEmailAddressPayload`](#updateemailaddresspayload)\n- [`CreateEmailAddressPayload`](#createemailaddresspayload)\n- [`EmailAddressResponse`](#emailaddressresponse)\n- [`ErrorResponse`](#errorresponse)\n- [`SettingMeta`](#settingmeta)\n- [`UpdateSharedInboxPayload`](#updatesharedinboxpayload)\n- [`CreateSharedInboxPayload`](#createsharedinboxpayload)\n- [`SharedInboxResponse`](#sharedinboxresponse)\n- [`SettingsResponse`](#settingsresponse)\n- [`ConnectedOutlookEmail`](#connectedoutlookemail)\n- [`OutlookConnectionError`](#outlookconnectionerror)\n- [`OutlookConnectionStatus`](#outlookconnectionstatus)\n- [`SignatureSetting`](#signaturesetting)\n- [`EmailDomainSetting`](#emaildomainsetting)\n- [`EmailAddressSetting`](#emailaddresssetting)\n- [`WhitelistEmailAddressSetting`](#whitelistemailaddresssetting)\n- [`RestrictDuplicatesWithinSetting`](#restrictduplicateswithinsetting)\n- [`SettingType`](#settingtype)\n- [`Setting`](#setting)\n- [`Domain`](#domain)\n\n### `provisionEpilotEmailAddress`\n\nProvisions or reactivates an epilot-managed email address for the organization.\n\n`PUT /v2/email-settings/email-addresses/epilot:provision`\n\n```ts\nconst { data } = await client.provisionEpilotEmailAddress(\n null,\n {\n address: \'mycompany@epilot.cloud\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `setEmailAddressPrimary`\n\nSets the specified email address as the primary address for the organization.\n\n`POST /v2/email-settings/email-addresses/primary`\n\n```ts\nconst { data } = await client.setEmailAddressPrimary(\n null,\n {\n address: \'sales@yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `getEmailAddress`\n\nRetrieves the details of a specific email address by its ID.\n\n`GET /v2/email-settings/email-addresses/{id}`\n\n```ts\nconst { data } = await client.getEmailAddress({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `deleteEmailAddress`\n\nPermanently deletes an email address from the organization.\n\n`DELETE /v2/email-settings/email-addresses/{id}`\n\n```ts\nconst { data } = await client.deleteEmailAddress({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `updateEmailAddress`\n\nUpdates the configuration of an existing email address.\n\n`PUT /v2/email-settings/email-addresses/{id}`\n\n```ts\nconst { data } = await client.updateEmailAddress(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n name: \'Sales Team\',\n user_ids: [\'user-123\', \'user-456\'],\n group_ids: [\'group-789\'],\n default_signature_id: \'sig-abc\',\n shared_inbox_id: \'inbox-xyz\',\n is_active: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `listEmailAddresses`\n\nRetrieves all email addresses configured for the organization.\n\n`GET /v2/email-settings/email-addresses`\n\n```ts\nconst { data } = await client.listEmailAddresses()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n }\n]\n```\n\n</details>\n\n---\n\n### `addEmailAddress`\n\nAdds a new email address to the organization.\n\n`POST /v2/email-settings/email-addresses`\n\n```ts\nconst { data } = await client.addEmailAddress(\n null,\n {\n address: \'support@yourcompany.com\',\n name: \'Customer Support\',\n user_ids: [\'user-123\'],\n group_ids: [\'group-456\'],\n default_signature_id: \'sig-789\',\n shared_inbox_id: \'inbox-abc\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `getSharedInbox`\n\nRetrieves the details of a specific shared inbox by its ID.\n\n`GET /v2/email-settings/shared-inboxes/{id}`\n\n```ts\nconst { data } = await client.getSharedInbox({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n}\n```\n\n</details>\n\n---\n\n### `deleteSharedInbox`\n\nDeletes a shared inbox and reroutes all associated emails to a successor inbox.\n\n`DELETE /v2/email-settings/shared-inboxes/{id}`\n\n```ts\nconst { data } = await client.deleteSharedInbox({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n successorInboxId: \'example\',\n})\n```\n\n---\n\n### `updateSharedInbox`\n\nUpdates the configuration of an existing shared inbox.\n\n`PUT /v2/email-settings/shared-inboxes/{id}`\n\n```ts\nconst { data } = await client.updateSharedInbox(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n color: \'#4CAF50\',\n name: \'Customer Support\',\n assignees: [\'user-123\', \'user-456\'],\n description: \'Incoming customer support requests\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n}\n```\n\n</details>\n\n---\n\n### `listSharedInboxes`\n\nRetrieves all shared inboxes configured for the organization.\n\n`GET /v2/email-settings/shared-inboxes`\n\n```ts\nconst { data } = await client.listSharedInboxes()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n }\n]\n```\n\n</details>\n\n---\n\n### `addSharedInbox`\n\nCreates a new shared inbox for the organization.\n\n`POST /v2/email-settings/shared-inboxes`\n\n```ts\nconst { data } = await client.addSharedInbox(\n null,\n {\n id: \'support-inbox\',\n color: \'#2196F3\',\n name: \'Sales Inquiries\',\n assignees: [\'user-123\', \'user-456\'],\n description: \'Inbound sales and pricing requests\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n}\n```\n\n</details>\n\n---\n\n### `listInboxBuckets`\n\nRetrieves all inbox buckets for the organization.\n\n`GET /v2/email-settings/inbox-buckets`\n\n```ts\nconst { data } = await client.listInboxBuckets()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "bucket-abc",\n "inbox_id": "inbox-xyz"\n }\n]\n```\n\n</details>\n\n---\n\n### `connectOutlook`\n\nReturns Microsoft authorization URL for Outlook OAuth.\n\n`GET /v2/outlook/connect`\n\n```ts\nconst { data } = await client.connectOutlook()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "authorization_url": "string"\n}\n```\n\n</details>\n\n---\n\n### `getOutlookConnectionStatus`\n\nReturns all Microsoft 365 / Outlook connections for the organization.\nSupports multiple connections (one per Azure AD tenant).\n\n`GET /v2/outlook/connection/status`\n\n```ts\nconst { data } = await client.getOutlookConnectionStatus()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "connections": [\n {\n "status": "connected",\n "action": "connect",\n "connected_by_display_name": "string",\n "connected_by_email": "user@example.com",\n "connected_by_user_id": "string",\n "connected_at": "1970-01-01T00:00:00.000Z",\n "updated_at": "1970-01-01T00:00:00.000Z",\n "tenant_id": "string",\n "scopes": ["string"],\n "expires_at": "1970-01-01T00:00:00.000Z",\n "is_token_valid": true\n }\n ],\n "has_connections": true\n}\n```\n\n</details>\n\n---\n\n### `disconnectOutlook`\n\nRemoves the Microsoft 365 / Outlook connection for a specific tenant.\nThis deletes the stored tokens and disconnects the integration.\n\n`POST /v2/outlook/connection/disconnect`\n\n```ts\nconst { data } = await client.disconnectOutlook(\n null,\n {\n tenant_id: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "success": true,\n "tenant_id": "string",\n "affected_shared_inboxes": ["string"]\n}\n```\n\n</details>\n\n---\n\n### `connectOutlookMailbox`\n\nConnects an Outlook mailbox:\n 1. Validates the user has access to the mailbox via Microsoft Graph API\n 2. Creates a mapping between the email address of the mailbox and the outlook connection\n 3. E\n\n`POST /v2/outlook/mailbox/connect`\n\n```ts\nconst { data } = await client.connectOutlookMailbox(\n null,\n {\n email: \'user@example.com\',\n shared_inbox_id: \'default\',\n mailboxSyncTimeframe: \'5m\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "email_address": {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n },\n "outlook_email": "user@example.com",\n "tenant_id": "string",\n "provider": "outlook"\n}\n```\n\n</details>\n\n---\n\n### `disconnectOutlookMailbox`\n\nDisconnect Outlook Mailbox\n\n`POST /v2/outlook/mailbox/{email}/disconnect`\n\n```ts\nconst { data } = await client.disconnectOutlookMailbox({\n email: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "success": true,\n "email": "user@example.com"\n}\n```\n\n</details>\n\n---\n\n### `startMailboxSync`\n\nStart Mailbox Sync\n\n`POST /v2/outlook/mailbox/{email}/sync`\n\n```ts\nconst { data } = await client.startMailboxSync(\n {\n email: \'example\',\n },\n {\n timeframe: \'5m\'\n },\n)\n```\n\n---\n\n### `getMailboxSyncStatus`\n\nGet Mailbox Sync Status\n\n`GET /v2/outlook/mailbox/{email}/sync/status`\n\n```ts\nconst { data } = await client.getMailboxSyncStatus({\n email: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "execution_id": "string",\n "status": "RUNNING",\n "timeframe": "5m",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "inbox": {\n "status": "PENDING",\n "total_messages": 0,\n "processed_messages": 0,\n "failed_messages": 0\n },\n "sent_items": {\n "status": "PENDING",\n "total_messages": 0,\n "processed_messages": 0,\n "failed_messages": 0\n }\n}\n```\n\n</details>\n\n---\n\n### `retryMailboxSync`\n\nRetry Failed Messages\n\n`POST /v2/outlook/mailbox/{email}/sync/retry`\n\n```ts\nconst { data } = await client.retryMailboxSync(\n {\n email: \'example\',\n },\n {\n sync_id: \'string\',\n scope: \'all_failed\',\n message_ids: [\'string\']\n },\n)\n```\n\n---\n\n### `getConnectedOutlookEmails`\n\nReturns all Outlook email addresses connected to the organization.\n\n`GET /v2/outlook/mailbox/mappings`\n\n```ts\nconst { data } = await client.getConnectedOutlookEmails()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "outlook_emails": [\n {\n "outlook_email": "user@example.com",\n "tenant_id": "string",\n "provider": "outlook",\n "connected_at": "1970-01-01T00:00:00.000Z",\n "connected_by_user_id": "string"\n }\n ],\n "count": 0\n}\n```\n\n</details>\n\n---\n\n### `outlookOAuthCallback`\n\nExchanges authorization code for tokens and stores them.\n\n`GET /v2/outlook/oauth/callback`\n\n```ts\nconst { data } = await client.outlookOAuthCallback({\n code: \'example\',\n state: \'example\',\n session_state: \'example\',\n error: \'example\',\n error_description: \'example\',\n error_subcode: \'example\',\n client_info: \'example\',\n error_uri: \'example\',\n admin_consent: \'example\',\n tenant: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "connected": true,\n "expires_at": "1970-01-01T00:00:00.000Z",\n "scope": "string"\n}\n```\n\n</details>\n\n---\n\n### `getSettings`\n\nRetrieves settings of a specific type for the organization.\n\n`GET /v1/email-settings`\n\n```ts\nconst { data } = await client.getSettings({\n type: \'example\',\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `addSetting`\n\nCreates a new setting of the specified type.\n\n`POST /v1/email-settings`\n\n```ts\nconst { data } = await client.addSetting(\n null,\n {\n id: \'a10bd0ff-4391-4cfc-88ee-b19d718a9bf7\',\n name: \'Default Signature\',\n org_id: \'org-123\',\n type: \'signature\',\n value: \'Best regards, The Team\',\n html: \'<p>Best regards,<br/><strong>The Team</strong></p>\',\n created_at: \'2024-01-15T10:30:00Z\',\n updated_at: \'2024-01-20T14:45:00Z\',\n created_by: \'user-123\',\n updated_by: \'user-456\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `deleteSetting`\n\nDeletes a setting by its ID and type.\n\n`DELETE /v1/email-settings`\n\n```ts\nconst { data } = await client.deleteSetting(\n null,\n {\n type: \'signature\',\n id: \'a10bd0ff-4391-4cfc-88ee-b19d718a9bf7\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n}\n```\n\n</details>\n\n---\n\n### `updateSetting`\n\nUpdates an existing setting identified by its ID.\n\n`POST /v1/email-settings/{id}`\n\n```ts\nconst { data } = await client.updateSetting(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n id: \'a10bd0ff-4391-4cfc-88ee-b19d718a9bf7\',\n name: \'Default Signature\',\n org_id: \'org-123\',\n type: \'signature\',\n value: \'Best regards, The Team\',\n html: \'<p>Best regards,<br/><strong>The Team</strong></p>\',\n created_at: \'2024-01-15T10:30:00Z\',\n updated_at: \'2024-01-20T14:45:00Z\',\n created_by: \'user-123\',\n updated_by: \'user-456\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n}\n```\n\n</details>\n\n---\n\n### `addDomain`\n\nAdds a custom email domain to the organization.\n\n`POST /v1/email-settings/domain`\n\n```ts\nconst { data } = await client.addDomain(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `deleteDomain`\n\nRemoves a custom email domain from the organization.\n\n`DELETE /v1/email-settings/domain`\n\n```ts\nconst { data } = await client.deleteDomain(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n---\n\n### `verifyNameServers`\n\nVerifies that the domain\'s name server (NS) records are correctly configured.\n\n`POST /v1/email-settings/domain/name-servers:verify`\n\n```ts\nconst { data } = await client.verifyNameServers(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `verifyDomain`\n\nVerifies ownership and configuration of a custom email domain.\n\n`POST /v1/email-settings/domain:verify`\n\n```ts\nconst { data } = await client.verifyDomain(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `MailboxSyncStatus`\n\n```ts\ntype MailboxSyncStatus = {\n execution_id: string\n status: "RUNNING" | "COMPLETED" | "COMPLETED_WITH_ERRORS" | "FAILED" | "CANCELLED"\n timeframe: "5m" | "1w" | "2w" | "1m"\n started_at: string // date-time\n completed_at?: string // date-time\n inbox?: {\n status?: "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "SKIPPED"\n total_messages?: number\n processed_messages?: number\n failed_messages?: number\n }\n sent_items?: {\n status?: "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "SKIPPED"\n total_messages?: number\n processed_messages?: number\n failed_messages?: number\n }\n}\n```\n\n### `MailboxSyncStatuses`\n\n```ts\ntype MailboxSyncStatuses = "RUNNING" | "COMPLETED" | "COMPLETED_WITH_ERRORS" | "FAILED" | "CANCELLED"\n```\n\n### `MailboxSyncFolderStatuses`\n\n```ts\ntype MailboxSyncFolderStatuses = "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "SKIPPED"\n```\n\n### `MailboxSyncTimeframePeriods`\n\n```ts\ntype MailboxSyncTimeframePeriods = "5m" | "1w" | "2w" | "1m"\n```\n\n### `InboxBucketResponse`\n\nInbox bucket representing the storage container for a shared inbox.\n\n```ts\ntype InboxBucketResponse = {\n id: string\n inbox_id: string\n}\n```\n\n### `ProvisionEpilotEmailAddressPayload`\n\nRequest payload for provisioning an epilot-managed email address.\n\n```ts\ntype ProvisionEpilotEmailAddressPayload = {\n address: string\n}\n```\n\n### `SetEmailAddressPrimaryPayload`\n\nRequest payload for setting an email address as the organization\'s primary address.\n\n```ts\ntype SetEmailAddressPrimaryPayload = {\n address: string\n}\n```\n\n### `UpdateEmailAddressPayload`\n\nRequest payload for updating an email address configuration.\nAll fields are optional; only provided fields will be updated.\n\n\n```ts\ntype UpdateEmailAddressPayload = {\n name?: string\n user_ids?: string[]\n group_ids?: string[]\n default_signature_id?: string\n shared_inbox_id?: string\n is_active?: boolean\n}\n```\n\n### `CreateEmailAddressPayload`\n\nRequest payload for creating a new email address.\n\n```ts\ntype CreateEmailAddressPayload = {\n address: string\n name?: string\n user_ids?: string[]\n group_ids?: string[]\n default_signature_id?: string\n shared_inbox_id?: string\n}\n```\n\n### `EmailAddressResponse`\n\nEmail address configuration with all associated metadata.\n\n```ts\ntype EmailAddressResponse = {\n id: string\n created_at: string // date-time\n updated_at?: string // date-time\n created_by?: string\n updated_by?: string\n address: string\n name?: string\n user_ids?: string[]\n group_ids?: string[]\n default_signature_id?: string\n shared_inbox_id?: string\n is_active?: boolean\n is_primary?: boolean\n is_epilot_email_address?: boolean\n}\n```\n\n### `ErrorResponse`\n\nStandard error response format for all API errors.\n\n```ts\ntype ErrorResponse = {\n error: string\n status: number\n}\n```\n\n### `SettingMeta`\n\nCommon metadata fields for all settings and resources.\n\n```ts\ntype SettingMeta = {\n id: string\n created_at: string // date-time\n updated_at?: string // date-time\n created_by?: string\n updated_by?: string\n}\n```\n\n### `UpdateSharedInboxPayload`\n\nRequest payload for updating a shared inbox configuration.\nAll fields are optional; only provided fields will be updated.\n\n\n```ts\ntype UpdateSharedInboxPayload = {\n color?: string\n name?: string\n assignees?: string[]\n description?: string\n}\n```\n\n### `CreateSharedInboxPayload`\n\nRequest payload for creating a new shared inbox.\n\n```ts\ntype CreateSharedInboxPayload = {\n id?: string\n color: string\n name: string\n assignees?: string[]\n description?: string\n}\n```\n\n### `SharedInboxResponse`\n\nShared inbox configuration with all associated metadata.\n\n```ts\ntype SharedInboxResponse = {\n id: string\n created_at: string // date-time\n updated_at?: string // date-time\n created_by?: string\n updated_by?: string\n name: string\n color: string\n assignees: string[]\n description?: string\n bucket_id: string\n}\n```\n\n### `SettingsResponse`\n\n```ts\ntype SettingsResponse = Array<{\n id?: string\n name?: string\n org_id?: string\n type: "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n value?: string\n html?: string\n created_at?: string\n updated_at?: string\n created_by?: string\n updated_by?: string\n}> | {\n id?: string\n name?: string\n org_id?: string\n type: "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n value?: string\n html?: string\n created_at?: string\n updated_at?: string\n created_by?: string\n updated_by?: string\n}\n```\n\n### `ConnectedOutlookEmail`\n\nMapping between an Outlook email and its Outlook Connection.\nThis tracks which provider/tenant provisions each Outlook email.\n\n\n```ts\ntype ConnectedOutlookEmail = {\n outlook_email: string // email\n tenant_id?: string\n provider?: "outlook"\n connected_at?: string // date-time\n connected_by_user_id?: string\n}\n```\n\n### `OutlookConnectionError`\n\n```ts\ntype OutlookConnectionError = {\n error: string\n error_description?: string\n admin_consent_url?: string // uri\n}\n```\n\n### `OutlookConnectionStatus`\n\n```ts\ntype OutlookConnectionStatus = {\n status: "connected" | "expired" | "pending_auth" | "not_connected"\n action: "connect" | "authorize" | "reconnect" | "none"\n connected_by_display_name?: string\n connected_by_email?: string // email\n connected_by_user_id?: string\n connected_at?: string // date-time\n updated_at?: string // date-time\n tenant_id: string\n scopes?: string[]\n expires_at?: string // date-time\n is_token_valid?: boolean\n}\n```\n\n### `SignatureSetting`\n\nSetting that allows to add a signature.\n\n```ts\ntype SignatureSetting = "signature"\n```\n\n### `EmailDomainSetting`\n\nSetting that allows to add a custom domain. For e.g; doe.com\n\n```ts\ntype EmailDomainSetting = "email_domain"\n```\n\n### `EmailAddressSetting`\n\nSetting that allows to add an email address on the custom domain. For e.g; john@doe.com\n\n```ts\ntype EmailAddressSetting = "email_address"\n```\n\n### `WhitelistEmailAddressSetting`\n\n- Setting that specifies a list of addresses exempt from being flagged as duplicate emails.\n- An email will be flagged as a duplicate if it has the same content and is sent to the same recipient within the time frame specified in the RestrictDuplicatesWithinSetting.\n\n\n```ts\ntype WhitelistEmailAddressSetting = "whitelist_email_address"\n```\n\n### `RestrictDuplicatesWithinSetting`\n\n- Restrict duplicates within:\n * 10s\n * 5m\n * 1d\n * 5000 // It converts to 5 seconds.When expressed as a numerical value, it will be interpreted as being in milliseconds.\n- Defaults to 3 minutes\n- Negative values will be treated same as positive values\n- If not set, defaults to 3 min\n- If set as\n\n```ts\ntype RestrictDuplicatesWithinSetting = "restrict_duplicates_within"\n```\n\n### `SettingType`\n\n```ts\ntype SettingType = "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n```\n\n### `Setting`\n\nGeneric setting object used for various email configuration types.\nThe applicable fields depend on the setting type:\n- **signature**: Uses `name`, `value` (plain text), and `html` (rich text)\n- **email_domain**: Uses `value` (domain name)\n- **whitelist_email_address**: Uses `value` (email address)\n-\n\n```ts\ntype Setting = {\n id?: string\n name?: string\n org_id?: string\n type: "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n value?: string\n html?: string\n created_at?: string\n updated_at?: string\n created_by?: string\n updated_by?: string\n}\n```\n\n### `Domain`\n\nCustom email domain configuration.\n\n```ts\ntype Domain = {\n domain?: string\n}\n```\n';
5
- export {
6
- email_settings_default as default
7
- };
@@ -1,7 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
2
-
3
- // src/docs/email-settings.json
4
- var email_settings_default = '# Messaging Settings API\n\n- **Base URL:** `https://email-settings.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/email-settings](https://docs.epilot.io/api/email-settings)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.emailSettings.provisionEpilotEmailAddress(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/email-settings\'\n\nconst emailSettingsClient = getClient()\nauthorize(emailSettingsClient, () => \'<token>\')\nconst { data } = await emailSettingsClient.provisionEpilotEmailAddress(...)\n```\n\n## Operations\n\n**Email addresses**\n- [`provisionEpilotEmailAddress`](#provisionepilotemailaddress)\n- [`setEmailAddressPrimary`](#setemailaddressprimary)\n- [`getEmailAddress`](#getemailaddress)\n- [`deleteEmailAddress`](#deleteemailaddress)\n- [`updateEmailAddress`](#updateemailaddress)\n- [`listEmailAddresses`](#listemailaddresses)\n- [`addEmailAddress`](#addemailaddress)\n\n**Shared inboxes**\n- [`getSharedInbox`](#getsharedinbox)\n- [`deleteSharedInbox`](#deletesharedinbox)\n- [`updateSharedInbox`](#updatesharedinbox)\n- [`listSharedInboxes`](#listsharedinboxes)\n- [`addSharedInbox`](#addsharedinbox)\n\n**Inbox buckets**\n- [`listInboxBuckets`](#listinboxbuckets)\n\n**O365 Outlook Connection**\n- [`connectOutlook`](#connectoutlook)\n- [`getOutlookConnectionStatus`](#getoutlookconnectionstatus)\n- [`disconnectOutlook`](#disconnectoutlook)\n- [`connectOutlookMailbox`](#connectoutlookmailbox)\n- [`disconnectOutlookMailbox`](#disconnectoutlookmailbox)\n- [`startMailboxSync`](#startmailboxsync)\n- [`getMailboxSyncStatus`](#getmailboxsyncstatus)\n- [`retryMailboxSync`](#retrymailboxsync)\n- [`getConnectedOutlookEmails`](#getconnectedoutlookemails)\n- [`outlookOAuthCallback`](#outlookoauthcallback)\n\n**Settings**\n- [`getSettings`](#getsettings)\n- [`addSetting`](#addsetting)\n- [`deleteSetting`](#deletesetting)\n- [`updateSetting`](#updatesetting)\n\n**Domains**\n- [`addDomain`](#adddomain)\n- [`deleteDomain`](#deletedomain)\n- [`verifyNameServers`](#verifynameservers)\n- [`verifyDomain`](#verifydomain)\n\n**Schemas**\n- [`MailboxSyncStatus`](#mailboxsyncstatus)\n- [`MailboxSyncStatuses`](#mailboxsyncstatuses)\n- [`MailboxSyncFolderStatuses`](#mailboxsyncfolderstatuses)\n- [`MailboxSyncTimeframePeriods`](#mailboxsynctimeframeperiods)\n- [`InboxBucketResponse`](#inboxbucketresponse)\n- [`ProvisionEpilotEmailAddressPayload`](#provisionepilotemailaddresspayload)\n- [`SetEmailAddressPrimaryPayload`](#setemailaddressprimarypayload)\n- [`UpdateEmailAddressPayload`](#updateemailaddresspayload)\n- [`CreateEmailAddressPayload`](#createemailaddresspayload)\n- [`EmailAddressResponse`](#emailaddressresponse)\n- [`ErrorResponse`](#errorresponse)\n- [`SettingMeta`](#settingmeta)\n- [`UpdateSharedInboxPayload`](#updatesharedinboxpayload)\n- [`CreateSharedInboxPayload`](#createsharedinboxpayload)\n- [`SharedInboxResponse`](#sharedinboxresponse)\n- [`SettingsResponse`](#settingsresponse)\n- [`ConnectedOutlookEmail`](#connectedoutlookemail)\n- [`OutlookConnectionError`](#outlookconnectionerror)\n- [`OutlookConnectionStatus`](#outlookconnectionstatus)\n- [`SignatureSetting`](#signaturesetting)\n- [`EmailDomainSetting`](#emaildomainsetting)\n- [`EmailAddressSetting`](#emailaddresssetting)\n- [`WhitelistEmailAddressSetting`](#whitelistemailaddresssetting)\n- [`RestrictDuplicatesWithinSetting`](#restrictduplicateswithinsetting)\n- [`SettingType`](#settingtype)\n- [`Setting`](#setting)\n- [`Domain`](#domain)\n\n### `provisionEpilotEmailAddress`\n\nProvisions or reactivates an epilot-managed email address for the organization.\n\n`PUT /v2/email-settings/email-addresses/epilot:provision`\n\n```ts\nconst { data } = await client.provisionEpilotEmailAddress(\n null,\n {\n address: \'mycompany@epilot.cloud\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `setEmailAddressPrimary`\n\nSets the specified email address as the primary address for the organization.\n\n`POST /v2/email-settings/email-addresses/primary`\n\n```ts\nconst { data } = await client.setEmailAddressPrimary(\n null,\n {\n address: \'sales@yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `getEmailAddress`\n\nRetrieves the details of a specific email address by its ID.\n\n`GET /v2/email-settings/email-addresses/{id}`\n\n```ts\nconst { data } = await client.getEmailAddress({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `deleteEmailAddress`\n\nPermanently deletes an email address from the organization.\n\n`DELETE /v2/email-settings/email-addresses/{id}`\n\n```ts\nconst { data } = await client.deleteEmailAddress({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `updateEmailAddress`\n\nUpdates the configuration of an existing email address.\n\n`PUT /v2/email-settings/email-addresses/{id}`\n\n```ts\nconst { data } = await client.updateEmailAddress(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n name: \'Sales Team\',\n user_ids: [\'user-123\', \'user-456\'],\n group_ids: [\'group-789\'],\n default_signature_id: \'sig-abc\',\n shared_inbox_id: \'inbox-xyz\',\n is_active: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `listEmailAddresses`\n\nRetrieves all email addresses configured for the organization.\n\n`GET /v2/email-settings/email-addresses`\n\n```ts\nconst { data } = await client.listEmailAddresses()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n }\n]\n```\n\n</details>\n\n---\n\n### `addEmailAddress`\n\nAdds a new email address to the organization.\n\n`POST /v2/email-settings/email-addresses`\n\n```ts\nconst { data } = await client.addEmailAddress(\n null,\n {\n address: \'support@yourcompany.com\',\n name: \'Customer Support\',\n user_ids: [\'user-123\'],\n group_ids: [\'group-456\'],\n default_signature_id: \'sig-789\',\n shared_inbox_id: \'inbox-abc\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n}\n```\n\n</details>\n\n---\n\n### `getSharedInbox`\n\nRetrieves the details of a specific shared inbox by its ID.\n\n`GET /v2/email-settings/shared-inboxes/{id}`\n\n```ts\nconst { data } = await client.getSharedInbox({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n}\n```\n\n</details>\n\n---\n\n### `deleteSharedInbox`\n\nDeletes a shared inbox and reroutes all associated emails to a successor inbox.\n\n`DELETE /v2/email-settings/shared-inboxes/{id}`\n\n```ts\nconst { data } = await client.deleteSharedInbox({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n successorInboxId: \'example\',\n})\n```\n\n---\n\n### `updateSharedInbox`\n\nUpdates the configuration of an existing shared inbox.\n\n`PUT /v2/email-settings/shared-inboxes/{id}`\n\n```ts\nconst { data } = await client.updateSharedInbox(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n color: \'#4CAF50\',\n name: \'Customer Support\',\n assignees: [\'user-123\', \'user-456\'],\n description: \'Incoming customer support requests\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n}\n```\n\n</details>\n\n---\n\n### `listSharedInboxes`\n\nRetrieves all shared inboxes configured for the organization.\n\n`GET /v2/email-settings/shared-inboxes`\n\n```ts\nconst { data } = await client.listSharedInboxes()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n }\n]\n```\n\n</details>\n\n---\n\n### `addSharedInbox`\n\nCreates a new shared inbox for the organization.\n\n`POST /v2/email-settings/shared-inboxes`\n\n```ts\nconst { data } = await client.addSharedInbox(\n null,\n {\n id: \'support-inbox\',\n color: \'#2196F3\',\n name: \'Sales Inquiries\',\n assignees: [\'user-123\', \'user-456\'],\n description: \'Inbound sales and pricing requests\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "name": "Customer Support",\n "color": "#4CAF50",\n "assignees": ["user-123", "user-456"],\n "description": "Incoming customer support requests",\n "bucket_id": "bucket-xyz"\n}\n```\n\n</details>\n\n---\n\n### `listInboxBuckets`\n\nRetrieves all inbox buckets for the organization.\n\n`GET /v2/email-settings/inbox-buckets`\n\n```ts\nconst { data } = await client.listInboxBuckets()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "bucket-abc",\n "inbox_id": "inbox-xyz"\n }\n]\n```\n\n</details>\n\n---\n\n### `connectOutlook`\n\nReturns Microsoft authorization URL for Outlook OAuth.\n\n`GET /v2/outlook/connect`\n\n```ts\nconst { data } = await client.connectOutlook()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "authorization_url": "string"\n}\n```\n\n</details>\n\n---\n\n### `getOutlookConnectionStatus`\n\nReturns all Microsoft 365 / Outlook connections for the organization.\nSupports multiple connections (one per Azure AD tenant).\n\n`GET /v2/outlook/connection/status`\n\n```ts\nconst { data } = await client.getOutlookConnectionStatus()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "connections": [\n {\n "status": "connected",\n "action": "connect",\n "connected_by_display_name": "string",\n "connected_by_email": "user@example.com",\n "connected_by_user_id": "string",\n "connected_at": "1970-01-01T00:00:00.000Z",\n "updated_at": "1970-01-01T00:00:00.000Z",\n "tenant_id": "string",\n "scopes": ["string"],\n "expires_at": "1970-01-01T00:00:00.000Z",\n "is_token_valid": true\n }\n ],\n "has_connections": true\n}\n```\n\n</details>\n\n---\n\n### `disconnectOutlook`\n\nRemoves the Microsoft 365 / Outlook connection for a specific tenant.\nThis deletes the stored tokens and disconnects the integration.\n\n`POST /v2/outlook/connection/disconnect`\n\n```ts\nconst { data } = await client.disconnectOutlook(\n null,\n {\n tenant_id: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "success": true,\n "tenant_id": "string",\n "affected_shared_inboxes": ["string"]\n}\n```\n\n</details>\n\n---\n\n### `connectOutlookMailbox`\n\nConnects an Outlook mailbox:\n 1. Validates the user has access to the mailbox via Microsoft Graph API\n 2. Creates a mapping between the email address of the mailbox and the outlook connection\n 3. E\n\n`POST /v2/outlook/mailbox/connect`\n\n```ts\nconst { data } = await client.connectOutlookMailbox(\n null,\n {\n email: \'user@example.com\',\n shared_inbox_id: \'default\',\n mailboxSyncTimeframe: \'5m\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "email_address": {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456",\n "address": "sales@yourcompany.com",\n "name": "Sales Team",\n "user_ids": ["user-123", "user-456"],\n "group_ids": ["group-789"],\n "default_signature_id": "sig-abc",\n "shared_inbox_id": "inbox-xyz",\n "is_active": true,\n "is_primary": false,\n "is_epilot_email_address": false\n },\n "outlook_email": "user@example.com",\n "tenant_id": "string",\n "provider": "outlook"\n}\n```\n\n</details>\n\n---\n\n### `disconnectOutlookMailbox`\n\nDisconnect Outlook Mailbox\n\n`POST /v2/outlook/mailbox/{email}/disconnect`\n\n```ts\nconst { data } = await client.disconnectOutlookMailbox({\n email: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "success": true,\n "email": "user@example.com"\n}\n```\n\n</details>\n\n---\n\n### `startMailboxSync`\n\nStart Mailbox Sync\n\n`POST /v2/outlook/mailbox/{email}/sync`\n\n```ts\nconst { data } = await client.startMailboxSync(\n {\n email: \'example\',\n },\n {\n timeframe: \'5m\'\n },\n)\n```\n\n---\n\n### `getMailboxSyncStatus`\n\nGet Mailbox Sync Status\n\n`GET /v2/outlook/mailbox/{email}/sync/status`\n\n```ts\nconst { data } = await client.getMailboxSyncStatus({\n email: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "execution_id": "string",\n "status": "RUNNING",\n "timeframe": "5m",\n "started_at": "1970-01-01T00:00:00.000Z",\n "completed_at": "1970-01-01T00:00:00.000Z",\n "inbox": {\n "status": "PENDING",\n "total_messages": 0,\n "processed_messages": 0,\n "failed_messages": 0\n },\n "sent_items": {\n "status": "PENDING",\n "total_messages": 0,\n "processed_messages": 0,\n "failed_messages": 0\n }\n}\n```\n\n</details>\n\n---\n\n### `retryMailboxSync`\n\nRetry Failed Messages\n\n`POST /v2/outlook/mailbox/{email}/sync/retry`\n\n```ts\nconst { data } = await client.retryMailboxSync(\n {\n email: \'example\',\n },\n {\n sync_id: \'string\',\n scope: \'all_failed\',\n message_ids: [\'string\']\n },\n)\n```\n\n---\n\n### `getConnectedOutlookEmails`\n\nReturns all Outlook email addresses connected to the organization.\n\n`GET /v2/outlook/mailbox/mappings`\n\n```ts\nconst { data } = await client.getConnectedOutlookEmails()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "outlook_emails": [\n {\n "outlook_email": "user@example.com",\n "tenant_id": "string",\n "provider": "outlook",\n "connected_at": "1970-01-01T00:00:00.000Z",\n "connected_by_user_id": "string"\n }\n ],\n "count": 0\n}\n```\n\n</details>\n\n---\n\n### `outlookOAuthCallback`\n\nExchanges authorization code for tokens and stores them.\n\n`GET /v2/outlook/oauth/callback`\n\n```ts\nconst { data } = await client.outlookOAuthCallback({\n code: \'example\',\n state: \'example\',\n session_state: \'example\',\n error: \'example\',\n error_description: \'example\',\n error_subcode: \'example\',\n client_info: \'example\',\n error_uri: \'example\',\n admin_consent: \'example\',\n tenant: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "connected": true,\n "expires_at": "1970-01-01T00:00:00.000Z",\n "scope": "string"\n}\n```\n\n</details>\n\n---\n\n### `getSettings`\n\nRetrieves settings of a specific type for the organization.\n\n`GET /v1/email-settings`\n\n```ts\nconst { data } = await client.getSettings({\n type: \'example\',\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `addSetting`\n\nCreates a new setting of the specified type.\n\n`POST /v1/email-settings`\n\n```ts\nconst { data } = await client.addSetting(\n null,\n {\n id: \'a10bd0ff-4391-4cfc-88ee-b19d718a9bf7\',\n name: \'Default Signature\',\n org_id: \'org-123\',\n type: \'signature\',\n value: \'Best regards, The Team\',\n html: \'<p>Best regards,<br/><strong>The Team</strong></p>\',\n created_at: \'2024-01-15T10:30:00Z\',\n updated_at: \'2024-01-20T14:45:00Z\',\n created_by: \'user-123\',\n updated_by: \'user-456\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `deleteSetting`\n\nDeletes a setting by its ID and type.\n\n`DELETE /v1/email-settings`\n\n```ts\nconst { data } = await client.deleteSetting(\n null,\n {\n type: \'signature\',\n id: \'a10bd0ff-4391-4cfc-88ee-b19d718a9bf7\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n}\n```\n\n</details>\n\n---\n\n### `updateSetting`\n\nUpdates an existing setting identified by its ID.\n\n`POST /v1/email-settings/{id}`\n\n```ts\nconst { data } = await client.updateSetting(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n id: \'a10bd0ff-4391-4cfc-88ee-b19d718a9bf7\',\n name: \'Default Signature\',\n org_id: \'org-123\',\n type: \'signature\',\n value: \'Best regards, The Team\',\n html: \'<p>Best regards,<br/><strong>The Team</strong></p>\',\n created_at: \'2024-01-15T10:30:00Z\',\n updated_at: \'2024-01-20T14:45:00Z\',\n created_by: \'user-123\',\n updated_by: \'user-456\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n}\n```\n\n</details>\n\n---\n\n### `addDomain`\n\nAdds a custom email domain to the organization.\n\n`POST /v1/email-settings/domain`\n\n```ts\nconst { data } = await client.addDomain(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `deleteDomain`\n\nRemoves a custom email domain from the organization.\n\n`DELETE /v1/email-settings/domain`\n\n```ts\nconst { data } = await client.deleteDomain(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n---\n\n### `verifyNameServers`\n\nVerifies that the domain\'s name server (NS) records are correctly configured.\n\n`POST /v1/email-settings/domain/name-servers:verify`\n\n```ts\nconst { data } = await client.verifyNameServers(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n### `verifyDomain`\n\nVerifies ownership and configuration of a custom email domain.\n\n`POST /v1/email-settings/domain:verify`\n\n```ts\nconst { data } = await client.verifyDomain(\n null,\n {\n domain: \'mail.yourcompany.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "id": "a10bd0ff-4391-4cfc-88ee-b19d718a9bf7",\n "name": "Default Signature",\n "org_id": "org-123",\n "type": "signature",\n "value": "Best regards, The Team",\n "html": "<p>Best regards,<br/><strong>The Team</strong></p>",\n "created_at": "2024-01-15T10:30:00Z",\n "updated_at": "2024-01-20T14:45:00Z",\n "created_by": "user-123",\n "updated_by": "user-456"\n }\n]\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `MailboxSyncStatus`\n\n```ts\ntype MailboxSyncStatus = {\n execution_id: string\n status: "RUNNING" | "COMPLETED" | "COMPLETED_WITH_ERRORS" | "FAILED" | "CANCELLED"\n timeframe: "5m" | "1w" | "2w" | "1m"\n started_at: string // date-time\n completed_at?: string // date-time\n inbox?: {\n status?: "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "SKIPPED"\n total_messages?: number\n processed_messages?: number\n failed_messages?: number\n }\n sent_items?: {\n status?: "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "SKIPPED"\n total_messages?: number\n processed_messages?: number\n failed_messages?: number\n }\n}\n```\n\n### `MailboxSyncStatuses`\n\n```ts\ntype MailboxSyncStatuses = "RUNNING" | "COMPLETED" | "COMPLETED_WITH_ERRORS" | "FAILED" | "CANCELLED"\n```\n\n### `MailboxSyncFolderStatuses`\n\n```ts\ntype MailboxSyncFolderStatuses = "PENDING" | "RUNNING" | "COMPLETED" | "FAILED" | "SKIPPED"\n```\n\n### `MailboxSyncTimeframePeriods`\n\n```ts\ntype MailboxSyncTimeframePeriods = "5m" | "1w" | "2w" | "1m"\n```\n\n### `InboxBucketResponse`\n\nInbox bucket representing the storage container for a shared inbox.\n\n```ts\ntype InboxBucketResponse = {\n id: string\n inbox_id: string\n}\n```\n\n### `ProvisionEpilotEmailAddressPayload`\n\nRequest payload for provisioning an epilot-managed email address.\n\n```ts\ntype ProvisionEpilotEmailAddressPayload = {\n address: string\n}\n```\n\n### `SetEmailAddressPrimaryPayload`\n\nRequest payload for setting an email address as the organization\'s primary address.\n\n```ts\ntype SetEmailAddressPrimaryPayload = {\n address: string\n}\n```\n\n### `UpdateEmailAddressPayload`\n\nRequest payload for updating an email address configuration.\nAll fields are optional; only provided fields will be updated.\n\n\n```ts\ntype UpdateEmailAddressPayload = {\n name?: string\n user_ids?: string[]\n group_ids?: string[]\n default_signature_id?: string\n shared_inbox_id?: string\n is_active?: boolean\n}\n```\n\n### `CreateEmailAddressPayload`\n\nRequest payload for creating a new email address.\n\n```ts\ntype CreateEmailAddressPayload = {\n address: string\n name?: string\n user_ids?: string[]\n group_ids?: string[]\n default_signature_id?: string\n shared_inbox_id?: string\n}\n```\n\n### `EmailAddressResponse`\n\nEmail address configuration with all associated metadata.\n\n```ts\ntype EmailAddressResponse = {\n id: string\n created_at: string // date-time\n updated_at?: string // date-time\n created_by?: string\n updated_by?: string\n address: string\n name?: string\n user_ids?: string[]\n group_ids?: string[]\n default_signature_id?: string\n shared_inbox_id?: string\n is_active?: boolean\n is_primary?: boolean\n is_epilot_email_address?: boolean\n}\n```\n\n### `ErrorResponse`\n\nStandard error response format for all API errors.\n\n```ts\ntype ErrorResponse = {\n error: string\n status: number\n}\n```\n\n### `SettingMeta`\n\nCommon metadata fields for all settings and resources.\n\n```ts\ntype SettingMeta = {\n id: string\n created_at: string // date-time\n updated_at?: string // date-time\n created_by?: string\n updated_by?: string\n}\n```\n\n### `UpdateSharedInboxPayload`\n\nRequest payload for updating a shared inbox configuration.\nAll fields are optional; only provided fields will be updated.\n\n\n```ts\ntype UpdateSharedInboxPayload = {\n color?: string\n name?: string\n assignees?: string[]\n description?: string\n}\n```\n\n### `CreateSharedInboxPayload`\n\nRequest payload for creating a new shared inbox.\n\n```ts\ntype CreateSharedInboxPayload = {\n id?: string\n color: string\n name: string\n assignees?: string[]\n description?: string\n}\n```\n\n### `SharedInboxResponse`\n\nShared inbox configuration with all associated metadata.\n\n```ts\ntype SharedInboxResponse = {\n id: string\n created_at: string // date-time\n updated_at?: string // date-time\n created_by?: string\n updated_by?: string\n name: string\n color: string\n assignees: string[]\n description?: string\n bucket_id: string\n}\n```\n\n### `SettingsResponse`\n\n```ts\ntype SettingsResponse = Array<{\n id?: string\n name?: string\n org_id?: string\n type: "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n value?: string\n html?: string\n created_at?: string\n updated_at?: string\n created_by?: string\n updated_by?: string\n}> | {\n id?: string\n name?: string\n org_id?: string\n type: "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n value?: string\n html?: string\n created_at?: string\n updated_at?: string\n created_by?: string\n updated_by?: string\n}\n```\n\n### `ConnectedOutlookEmail`\n\nMapping between an Outlook email and its Outlook Connection.\nThis tracks which provider/tenant provisions each Outlook email.\n\n\n```ts\ntype ConnectedOutlookEmail = {\n outlook_email: string // email\n tenant_id?: string\n provider?: "outlook"\n connected_at?: string // date-time\n connected_by_user_id?: string\n}\n```\n\n### `OutlookConnectionError`\n\n```ts\ntype OutlookConnectionError = {\n error: string\n error_description?: string\n admin_consent_url?: string // uri\n}\n```\n\n### `OutlookConnectionStatus`\n\n```ts\ntype OutlookConnectionStatus = {\n status: "connected" | "expired" | "pending_auth" | "not_connected"\n action: "connect" | "authorize" | "reconnect" | "none"\n connected_by_display_name?: string\n connected_by_email?: string // email\n connected_by_user_id?: string\n connected_at?: string // date-time\n updated_at?: string // date-time\n tenant_id: string\n scopes?: string[]\n expires_at?: string // date-time\n is_token_valid?: boolean\n}\n```\n\n### `SignatureSetting`\n\nSetting that allows to add a signature.\n\n```ts\ntype SignatureSetting = "signature"\n```\n\n### `EmailDomainSetting`\n\nSetting that allows to add a custom domain. For e.g; doe.com\n\n```ts\ntype EmailDomainSetting = "email_domain"\n```\n\n### `EmailAddressSetting`\n\nSetting that allows to add an email address on the custom domain. For e.g; john@doe.com\n\n```ts\ntype EmailAddressSetting = "email_address"\n```\n\n### `WhitelistEmailAddressSetting`\n\n- Setting that specifies a list of addresses exempt from being flagged as duplicate emails.\n- An email will be flagged as a duplicate if it has the same content and is sent to the same recipient within the time frame specified in the RestrictDuplicatesWithinSetting.\n\n\n```ts\ntype WhitelistEmailAddressSetting = "whitelist_email_address"\n```\n\n### `RestrictDuplicatesWithinSetting`\n\n- Restrict duplicates within:\n * 10s\n * 5m\n * 1d\n * 5000 // It converts to 5 seconds.When expressed as a numerical value, it will be interpreted as being in milliseconds.\n- Defaults to 3 minutes\n- Negative values will be treated same as positive values\n- If not set, defaults to 3 min\n- If set as\n\n```ts\ntype RestrictDuplicatesWithinSetting = "restrict_duplicates_within"\n```\n\n### `SettingType`\n\n```ts\ntype SettingType = "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n```\n\n### `Setting`\n\nGeneric setting object used for various email configuration types.\nThe applicable fields depend on the setting type:\n- **signature**: Uses `name`, `value` (plain text), and `html` (rich text)\n- **email_domain**: Uses `value` (domain name)\n- **whitelist_email_address**: Uses `value` (email address)\n-\n\n```ts\ntype Setting = {\n id?: string\n name?: string\n org_id?: string\n type: "signature" | "email_domain" | "email_address" | "whitelist_email_address" | "restrict_duplicates_within"\n value?: string\n html?: string\n created_at?: string\n updated_at?: string\n created_by?: string\n updated_by?: string\n}\n```\n\n### `Domain`\n\nCustom email domain configuration.\n\n```ts\ntype Domain = {\n domain?: string\n}\n```\n';
5
-
6
-
7
- exports.default = email_settings_default;