@epilot/sdk 2.20.66 → 2.20.68

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 (146) hide show
  1. package/definitions/chat.json +257 -193
  2. package/definitions/message-runtime.json +1 -1
  3. package/definitions/message.json +1312 -14
  4. package/dist/apis/access-token.cjs +6 -6
  5. package/dist/apis/access-token.js +1 -1
  6. package/dist/apis/address-suggestions.cjs +6 -6
  7. package/dist/apis/address-suggestions.js +1 -1
  8. package/dist/apis/address.cjs +6 -6
  9. package/dist/apis/address.js +1 -1
  10. package/dist/apis/ai-agents.cjs +6 -6
  11. package/dist/apis/ai-agents.js +1 -1
  12. package/dist/apis/app.cjs +6 -6
  13. package/dist/apis/app.js +1 -1
  14. package/dist/apis/audit-logs.cjs +6 -6
  15. package/dist/apis/audit-logs.js +1 -1
  16. package/dist/apis/automation.cjs +6 -6
  17. package/dist/apis/automation.js +1 -1
  18. package/dist/apis/billing.cjs +6 -6
  19. package/dist/apis/billing.js +1 -1
  20. package/dist/apis/blueprint-manifest.cjs +6 -6
  21. package/dist/apis/blueprint-manifest.js +1 -1
  22. package/dist/apis/calendar.cjs +6 -6
  23. package/dist/apis/calendar.js +1 -1
  24. package/dist/apis/chat.cjs +6 -6
  25. package/dist/apis/chat.d.cts +2 -2
  26. package/dist/apis/chat.d.ts +2 -2
  27. package/dist/apis/chat.js +1 -1
  28. package/dist/apis/configuration-hub.cjs +6 -6
  29. package/dist/apis/configuration-hub.js +1 -1
  30. package/dist/apis/consent.cjs +6 -6
  31. package/dist/apis/consent.js +1 -1
  32. package/dist/apis/customer-portal.cjs +6 -6
  33. package/dist/apis/customer-portal.js +1 -1
  34. package/dist/apis/dashboard.cjs +6 -6
  35. package/dist/apis/dashboard.js +1 -1
  36. package/dist/apis/data-governance.cjs +6 -6
  37. package/dist/apis/data-governance.js +1 -1
  38. package/dist/apis/deduplication.cjs +6 -6
  39. package/dist/apis/deduplication.js +1 -1
  40. package/dist/apis/design.cjs +6 -6
  41. package/dist/apis/design.js +1 -1
  42. package/dist/apis/document.cjs +6 -6
  43. package/dist/apis/document.js +1 -1
  44. package/dist/apis/email-settings.cjs +6 -6
  45. package/dist/apis/email-settings.js +1 -1
  46. package/dist/apis/email-template.cjs +6 -6
  47. package/dist/apis/email-template.js +1 -1
  48. package/dist/apis/entity-mapping.cjs +6 -6
  49. package/dist/apis/entity-mapping.js +1 -1
  50. package/dist/apis/entity.cjs +6 -6
  51. package/dist/apis/entity.js +1 -1
  52. package/dist/apis/environments.cjs +6 -6
  53. package/dist/apis/environments.js +1 -1
  54. package/dist/apis/event-catalog.cjs +6 -6
  55. package/dist/apis/event-catalog.js +1 -1
  56. package/dist/apis/external-values.cjs +6 -6
  57. package/dist/apis/external-values.js +1 -1
  58. package/dist/apis/file.cjs +6 -6
  59. package/dist/apis/file.js +1 -1
  60. package/dist/apis/iban.cjs +6 -6
  61. package/dist/apis/iban.js +1 -1
  62. package/dist/apis/identity.cjs +6 -6
  63. package/dist/apis/identity.js +1 -1
  64. package/dist/apis/integration-toolkit.cjs +6 -6
  65. package/dist/apis/integration-toolkit.js +1 -1
  66. package/dist/apis/journey.cjs +6 -6
  67. package/dist/apis/journey.js +1 -1
  68. package/dist/apis/kanban.cjs +6 -6
  69. package/dist/apis/kanban.js +1 -1
  70. package/dist/apis/message.cjs +8 -8
  71. package/dist/apis/message.d.cts +2 -2
  72. package/dist/apis/message.d.ts +2 -2
  73. package/dist/apis/message.js +2 -2
  74. package/dist/apis/metering.cjs +6 -6
  75. package/dist/apis/metering.js +1 -1
  76. package/dist/apis/notes.cjs +6 -6
  77. package/dist/apis/notes.js +1 -1
  78. package/dist/apis/notification.cjs +6 -6
  79. package/dist/apis/notification.js +1 -1
  80. package/dist/apis/organization.cjs +6 -6
  81. package/dist/apis/organization.js +1 -1
  82. package/dist/apis/partner-directory.cjs +6 -6
  83. package/dist/apis/partner-directory.js +1 -1
  84. package/dist/apis/permissions.cjs +6 -6
  85. package/dist/apis/permissions.js +1 -1
  86. package/dist/apis/phone-integration.cjs +6 -6
  87. package/dist/apis/phone-integration.js +1 -1
  88. package/dist/apis/pricing-tier.cjs +6 -6
  89. package/dist/apis/pricing-tier.js +1 -1
  90. package/dist/apis/pricing.cjs +6 -6
  91. package/dist/apis/pricing.js +1 -1
  92. package/dist/apis/purpose.cjs +6 -6
  93. package/dist/apis/purpose.js +1 -1
  94. package/dist/apis/query.cjs +6 -6
  95. package/dist/apis/query.js +1 -1
  96. package/dist/apis/sandbox.cjs +6 -6
  97. package/dist/apis/sandbox.js +1 -1
  98. package/dist/apis/sharing.cjs +6 -6
  99. package/dist/apis/sharing.js +1 -1
  100. package/dist/apis/snapshot.cjs +6 -6
  101. package/dist/apis/snapshot.js +1 -1
  102. package/dist/apis/submission.cjs +6 -6
  103. package/dist/apis/submission.js +1 -1
  104. package/dist/apis/target.cjs +6 -6
  105. package/dist/apis/target.js +1 -1
  106. package/dist/apis/targeting.cjs +6 -6
  107. package/dist/apis/targeting.js +1 -1
  108. package/dist/apis/template-variables.cjs +6 -6
  109. package/dist/apis/template-variables.js +1 -1
  110. package/dist/apis/user.cjs +6 -6
  111. package/dist/apis/user.js +1 -1
  112. package/dist/apis/validation-rules.cjs +6 -6
  113. package/dist/apis/validation-rules.js +1 -1
  114. package/dist/apis/webhooks.cjs +6 -6
  115. package/dist/apis/webhooks.js +1 -1
  116. package/dist/apis/workflow-definition.cjs +6 -6
  117. package/dist/apis/workflow-definition.js +1 -1
  118. package/dist/apis/workflow.cjs +6 -6
  119. package/dist/apis/workflow.js +1 -1
  120. package/dist/chat-QZJ5P6HQ.cjs +7 -0
  121. package/dist/chat-T6GUSV2K.js +7 -0
  122. package/dist/{chat.d-BUkItuYX.d.cts → chat.d-B6dICX6Y.d.cts} +177 -71
  123. package/dist/{chat.d-BUkItuYX.d.ts → chat.d-B6dICX6Y.d.ts} +177 -71
  124. package/dist/{chunk-SGTQJYAX.js → chunk-6WXFXQKB.js} +3 -3
  125. package/dist/chunk-AWYQVLER.cjs +14 -0
  126. package/dist/chunk-HQ3YHL5H.js +14 -0
  127. package/dist/{chunk-3UL4JWCK.cjs → chunk-LGNMQHO5.cjs} +3 -3
  128. package/dist/index.cjs +10 -10
  129. package/dist/index.d.cts +2 -2
  130. package/dist/index.d.ts +2 -2
  131. package/dist/index.js +2 -2
  132. package/dist/message-AJJJK44K.js +7 -0
  133. package/dist/message-XIJPEF22.cjs +7 -0
  134. package/dist/{message-runtime-4JSNBEVL.cjs → message-runtime-ERSSQCHN.cjs} +2 -2
  135. package/dist/{message-runtime-7UM7U4VL.js → message-runtime-I7WFL4J3.js} +1 -1
  136. package/dist/{message.d-DwnqO-Us.d.cts → message.d-CRg7bM_m.d.cts} +384 -11
  137. package/dist/{message.d-DwnqO-Us.d.ts → message.d-CRg7bM_m.d.ts} +384 -11
  138. package/docs/chat.md +64 -37
  139. package/docs/message.md +403 -12
  140. package/package.json +1 -1
  141. package/dist/chat-UYCCJWAM.js +0 -7
  142. package/dist/chat-YYRMNUXU.cjs +0 -7
  143. package/dist/chunk-EHLNSFCU.cjs +0 -14
  144. package/dist/chunk-OT6AETWN.js +0 -14
  145. package/dist/message-LJ32JH6Z.cjs +0 -7
  146. package/dist/message-SSTVRGEF.js +0 -7
@@ -1,7 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
2
-
3
- // src/docs/chat.json
4
- var chat_default = '# epilot Chat API\n\n- **Base URL:** `https://chat.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/chat](https://docs.epilot.io/api/chat)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.chat.listWebsiteChats(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/chat\'\n\nconst chatClient = getClient()\nauthorize(chatClient, () => \'<token>\')\nconst { data } = await chatClient.listWebsiteChats(...)\n```\n\n## Operations\n\n**Website Chats**\n- [`listWebsiteChats`](#listwebsitechats)\n- [`createWebsiteChat`](#createwebsitechat)\n- [`getWebsiteChat`](#getwebsitechat)\n- [`updateWebsiteChat`](#updatewebsitechat)\n- [`deleteWebsiteChat`](#deletewebsitechat)\n- [`createWebsiteChatPreviewGrant`](#createwebsitechatpreviewgrant)\n\n**Other**\n- [`getPublicWebsiteChat`](#getpublicwebsitechat)\n- [`createPublicChatGrant`](#createpublicchatgrant)\n- [`createAnonymousChatSession`](#createanonymouschatsession)\n- [`sendAnonymousChatMessage`](#sendanonymouschatmessage)\n- [`getChatVerification`](#getchatverification)\n- [`startChatEmailVerification`](#startchatemailverification)\n- [`verifyChatEmailCode`](#verifychatemailcode)\n- [`cancelChatVerification`](#cancelchatverification)\n- [`getChatPortalLogin`](#getchatportallogin)\n- [`getChatPortalJourneyToken`](#getchatportaljourneytoken)\n- [`startChatPortalLogin`](#startchatportallogin)\n- [`verifyChatPortalLogin`](#verifychatportallogin)\n- [`cancelChatPortalLogin`](#cancelchatportallogin)\n- [`signOutChatCustomer`](#signoutchatcustomer)\n- [`getChatAction`](#getchataction)\n- [`startChatAction`](#startchataction)\n- [`reportChatActionEvent`](#reportchatactionevent)\n- [`submitChatAction`](#submitchataction)\n- [`confirmChatAction`](#confirmchataction)\n- [`cancelChatAction`](#cancelchataction)\n\n**Schemas**\n- [`ListWebsiteChatsResponse`](#listwebsitechatsresponse)\n- [`WebsiteChat`](#websitechat)\n- [`WebsiteChatSettings`](#websitechatsettings)\n- [`SelfServiceSettings`](#selfservicesettings)\n- [`SelfServiceAction`](#selfserviceaction)\n- [`WebsiteChatPreviewGrantRequest`](#websitechatpreviewgrantrequest)\n- [`WebsiteChatPreviewGrant`](#websitechatpreviewgrant)\n- [`Error`](#error)\n- [`CreateWebsiteChatRequest`](#createwebsitechatrequest)\n- [`UpdateWebsiteChatRequest`](#updatewebsitechatrequest)\n- [`ActionRevision`](#actionrevision)\n- [`ActionState`](#actionstate)\n- [`VerificationState`](#verificationstate)\n- [`PortalLoginState`](#portalloginstate)\n- [`LoginMethod`](#loginmethod)\n- [`AccessTier`](#accesstier)\n- [`CustomerAccess`](#customeraccess)\n- [`StarterQuestions`](#starterquestions)\n- [`PublicWebsiteChat`](#publicwebsitechat)\n- [`WebsiteChatDesign`](#websitechatdesign)\n- [`PublicEvent`](#publicevent)\n- [`SelfServiceDirective`](#selfservicedirective)\n- [`PublicChatError`](#publicchaterror)\n\n### `listWebsiteChats`\n\n`GET /v1/website-chats`\n\n```ts\nconst { data } = await client.listWebsiteChats({\n cursor: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "website_chats": [\n {\n "name": "string",\n "agent_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "settings": {\n "allowed_origins": ["string"],\n "organisation_name": "string",\n "default_locale": "en",\n "design_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "authentication": {\n "email_code": {\n "email_template_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n },\n "portal": {\n "portal_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n }\n },\n "self_service": {\n "actions": [\n {\n "action": "submit_meter_reading",\n "enabled": true,\n "fulfilment": "in_chat",\n "journey_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "url": "string",\n "access": "anonymous",\n "guidance": "string"\n }\n ]\n }\n },\n "website_chat_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "org_id": "string",\n "binding_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "version": 1,\n "created_at": "1970-01-01T00:00:00.000Z",\n "updated_at": "1970-01-01T00:00:00.000Z",\n "embed": {\n "script_url": "https://example.com/path",\n "chat_api_origin": "https://example.com/path",\n "demo_url": "https://example.com/path"\n }\n }\n ],\n "next_cursor": "string"\n}\n```\n\n</details>\n\n---\n\n### `createWebsiteChat`\n\n`POST /v1/website-chats`\n\n```ts\nconst { data } = await client.createWebsiteChat(\n null,\n {\n name: \'string\',\n agent_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n settings: {\n allowed_origins: [\'string\'],\n organisation_name: \'string\',\n default_locale: \'en\',\n design_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n authentication: {\n email_code: {\n email_template_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\'\n },\n portal: {\n portal_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\'\n }\n },\n self_service: {\n actions: [\n {\n action: \'submit_meter_reading\',\n enabled: true,\n fulfilment: \'in_chat\',\n journey_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n url: \'string\',\n access: \'anonymous\',\n guidance: \'string\'\n }\n ]\n }\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "name": "string",\n "agent_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "settings": {\n "allowed_origins": ["string"],\n "organisation_name": "string",\n "default_locale": "en",\n "design_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "authentication": {\n "email_code": {\n "email_template_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n },\n "portal": {\n "portal_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n }\n },\n "self_service": {\n "actions": [\n {\n "action": "submit_meter_reading",\n "enabled": true,\n "fulfilment": "in_chat",\n "journey_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "url": "string",\n "access": "anonymous",\n "guidance": "string"\n }\n ]\n }\n },\n "website_chat_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "org_id": "string",\n "binding_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "version": 1,\n "created_at": "1970-01-01T00:00:00.000Z",\n "updated_at": "1970-01-01T00:00:00.000Z",\n "embed": {\n "script_url": "https://example.com/path",\n "chat_api_origin": "https://example.com/path",\n "demo_url": "https://example.com/path"\n }\n}\n```\n\n</details>\n\n---\n\n### `getWebsiteChat`\n\n`GET /v1/website-chats/{website_chat_id}`\n\n```ts\nconst { data } = await client.getWebsiteChat({\n website_chat_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "name": "string",\n "agent_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "settings": {\n "allowed_origins": ["string"],\n "organisation_name": "string",\n "default_locale": "en",\n "design_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "authentication": {\n "email_code": {\n "email_template_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n },\n "portal": {\n "portal_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n }\n },\n "self_service": {\n "actions": [\n {\n "action": "submit_meter_reading",\n "enabled": true,\n "fulfilment": "in_chat",\n "journey_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "url": "string",\n "access": "anonymous",\n "guidance": "string"\n }\n ]\n }\n },\n "website_chat_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "org_id": "string",\n "binding_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "version": 1,\n "created_at": "1970-01-01T00:00:00.000Z",\n "updated_at": "1970-01-01T00:00:00.000Z",\n "embed": {\n "script_url": "https://example.com/path",\n "chat_api_origin": "https://example.com/path",\n "demo_url": "https://example.com/path"\n }\n}\n```\n\n</details>\n\n---\n\n### `updateWebsiteChat`\n\n`PUT /v1/website-chats/{website_chat_id}`\n\n```ts\nconst { data } = await client.updateWebsiteChat(\n {\n website_chat_id: \'example\',\n },\n {\n name: \'string\',\n agent_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n settings: {\n allowed_origins: [\'string\'],\n organisation_name: \'string\',\n default_locale: \'en\',\n design_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n authentication: {\n email_code: {\n email_template_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\'\n },\n portal: {\n portal_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\'\n }\n },\n self_service: {\n actions: [\n {\n action: \'submit_meter_reading\',\n enabled: true,\n fulfilment: \'in_chat\',\n journey_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n url: \'string\',\n access: \'anonymous\',\n guidance: \'string\'\n }\n ]\n }\n },\n version: 1\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "name": "string",\n "agent_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "settings": {\n "allowed_origins": ["string"],\n "organisation_name": "string",\n "default_locale": "en",\n "design_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "authentication": {\n "email_code": {\n "email_template_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n },\n "portal": {\n "portal_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n }\n },\n "self_service": {\n "actions": [\n {\n "action": "submit_meter_reading",\n "enabled": true,\n "fulfilment": "in_chat",\n "journey_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "url": "string",\n "access": "anonymous",\n "guidance": "string"\n }\n ]\n }\n },\n "website_chat_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "org_id": "string",\n "binding_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "version": 1,\n "created_at": "1970-01-01T00:00:00.000Z",\n "updated_at": "1970-01-01T00:00:00.000Z",\n "embed": {\n "script_url": "https://example.com/path",\n "chat_api_origin": "https://example.com/path",\n "demo_url": "https://example.com/path"\n }\n}\n```\n\n</details>\n\n---\n\n### `deleteWebsiteChat`\n\n`DELETE /v1/website-chats/{website_chat_id}`\n\n```ts\nconst { data } = await client.deleteWebsiteChat({\n website_chat_id: \'example\',\n version: 1,\n})\n```\n\n---\n\n### `createWebsiteChatPreviewGrant`\n\n`POST /v1/website-chats/{website_chat_id}/preview-grant`\n\n```ts\nconst { data } = await client.createWebsiteChatPreviewGrant(\n {\n website_chat_id: \'example\',\n },\n {\n design_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "grant": "string",\n "expires_in": 0,\n "frame_origin": "https://example.com/path",\n "website_chat": {\n "key": "string",\n "organisationName": "string",\n "assistantName": "string",\n "defaultLocale": "en",\n "login_methods": ["email_code"],\n "starters": {\n "de": ["string"],\n "en": ["string"]\n },\n "actions": {\n "meter_reading": true,\n "meter_reading_journey_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n },\n "design": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "last_modified_at": "string",\n "style": {\n "palette": {\n "primary": "string",\n "background": "string"\n },\n "typography": {\n "font": {\n "font_family": "string"\n }\n },\n "shape": {\n "border_radius": 0\n }\n },\n "spark_theme": {\n "accentColor": "string",\n "backgroundColor": "string",\n "fontBody": "string",\n "fontHeading": "string",\n "radius": "string",\n "scaling": "string",\n "spacing": "string",\n "appearance": "string",\n "neutralColor": "string",\n "styleVariant": "string",\n "labelPosition": "string",\n "inputStyle": "string",\n "inputColor": "string",\n "cardVariant": "string",\n "cardColor": "string",\n "highContrast": true\n }\n },\n "locales": ["en"]\n }\n}\n```\n\n</details>\n\n---\n\n### `getPublicWebsiteChat`\n\n`GET /v1/website-chats/{website_chat_id}/configuration`\n\n```ts\nconst { data } = await client.getPublicWebsiteChat({\n website_chat_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "key": "string",\n "organisationName": "string",\n "assistantName": "string",\n "defaultLocale": "en",\n "login_methods": ["email_code"],\n "starters": {\n "de": ["string"],\n "en": ["string"]\n },\n "actions": {\n "meter_reading": true,\n "meter_reading_journey_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n },\n "design": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "last_modified_at": "string",\n "style": {\n "palette": {\n "primary": "string",\n "background": "string"\n },\n "typography": {\n "font": {\n "font_family": "string"\n }\n },\n "shape": {\n "border_radius": 0\n }\n },\n "spark_theme": {\n "accentColor": "string",\n "backgroundColor": "string",\n "fontBody": "string",\n "fontHeading": "string",\n "radius": "string",\n "scaling": "string",\n "spacing": "string",\n "appearance": "string",\n "neutralColor": "string",\n "styleVariant": "string",\n "labelPosition": "string",\n "inputStyle": "string",\n "inputColor": "string",\n "cardVariant": "string",\n "cardColor": "string",\n "highContrast": true\n }\n },\n "locales": ["en"]\n}\n```\n\n</details>\n\n---\n\n### `createPublicChatGrant`\n\n`POST /v1/bootstrap`\n\n```ts\nconst { data } = await client.createPublicChatGrant(\n null,\n {\n website_chat_id: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "grant": "string",\n "expires_in": 60,\n "frame_origin": "https://example.com/path"\n}\n```\n\n</details>\n\n---\n\n### `createAnonymousChatSession`\n\n`POST /v1/sessions`\n\n```ts\nconst { data } = await client.createAnonymousChatSession(\n null,\n {\n grant: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "token": "string",\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "expires_at": 0,\n "website_chat": {\n "key": "string",\n "organisationName": "string",\n "assistantName": "string",\n "defaultLocale": "en",\n "login_methods": ["email_code"],\n "starters": {\n "de": ["string"],\n "en": ["string"]\n },\n "actions": {\n "meter_reading": true,\n "meter_reading_journey_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n },\n "design": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "last_modified_at": "string",\n "style": {\n "palette": {\n "primary": "string",\n "background": "string"\n },\n "typography": {\n "font": {\n "font_family": "string"\n }\n },\n "shape": {\n "border_radius": 0\n }\n },\n "spark_theme": {\n "accentColor": "string",\n "backgroundColor": "string",\n "fontBody": "string",\n "fontHeading": "string",\n "radius": "string",\n "scaling": "string",\n "spacing": "string",\n "appearance": "string",\n "neutralColor": "string",\n "styleVariant": "string",\n "labelPosition": "string",\n "inputStyle": "string",\n "inputColor": "string",\n "cardVariant": "string",\n "cardColor": "string",\n "highContrast": true\n }\n },\n "locales": ["en"]\n },\n "preview": true\n}\n```\n\n</details>\n\n---\n\n### `sendAnonymousChatMessage`\n\n`POST /v1/messages`\n\n```ts\nconst { data } = await client.sendAnonymousChatMessage(\n null,\n {\n request_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n message: \'string\',\n locale: \'en\',\n simple_language: true\n },\n)\n```\n\n---\n\n### `getChatVerification`\n\n`GET /v1/verification`\n\n```ts\nconst { data } = await client.getChatVerification()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "resend_after": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `startChatEmailVerification`\n\n`POST /v1/verification/email`\n\n```ts\nconst { data } = await client.startChatEmailVerification(\n null,\n {\n request_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n email: \'user@example.com\',\n locale: \'en\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "resend_after": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `verifyChatEmailCode`\n\n`POST /v1/verification/code`\n\n```ts\nconst { data } = await client.verifyChatEmailCode(\n null,\n {\n challenge_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n code: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "resend_after": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `cancelChatVerification`\n\n`POST /v1/verification/cancel`\n\n```ts\nconst { data } = await client.cancelChatVerification()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "resend_after": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `getChatPortalLogin`\n\n`GET /v1/login/portal`\n\n```ts\nconst { data } = await client.getChatPortalLogin()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "attempts_left": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `getChatPortalJourneyToken`\n\n`GET /v1/login/portal/journey-token`\n\n```ts\nconst { data } = await client.getChatPortalJourneyToken()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id_token": "string",\n "expires_at": 0\n}\n```\n\n</details>\n\n---\n\n### `startChatPortalLogin`\n\n`POST /v1/login/portal/start`\n\n```ts\nconst { data } = await client.startChatPortalLogin(\n null,\n {\n request_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n email: \'user@example.com\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "attempts_left": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `verifyChatPortalLogin`\n\n`POST /v1/login/portal/verify`\n\n```ts\nconst { data } = await client.verifyChatPortalLogin(\n null,\n {\n challenge_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n code: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "attempts_left": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `cancelChatPortalLogin`\n\n`POST /v1/login/portal/cancel`\n\n```ts\nconst { data } = await client.cancelChatPortalLogin()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available": true,\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "anonymous",\n "challenge_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "code_expires_at": 0,\n "attempts_left": 0,\n "email": "user@example.com",\n "contact_resolution": "matched",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `signOutChatCustomer`\n\n`POST /v1/login/sign-out`\n\n```ts\nconst { data } = await client.signOutChatCustomer()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "access": {\n "tier": "anonymous",\n "method": "email_code"\n }\n}\n```\n\n</details>\n\n---\n\n### `getChatAction`\n\n`GET /v1/actions`\n\n```ts\nconst { data } = await client.getChatAction()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "none",\n "action_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "revision": 0,\n "options": [\n {\n "meter_id": "string",\n "counter_id": "string",\n "meter_number": "string",\n "label": "string",\n "unit": "string",\n "min_value": 0,\n "max_value": 0\n }\n ],\n "values": {\n "meter_id": "string",\n "counter_id": "string",\n "value": 0\n },\n "field_error": "VALUE_INVALID",\n "receipt": {\n "reference": "string",\n "meter_number": "string",\n "value": 0,\n "unit": "string",\n "submitted_at": "string"\n },\n "reason": "NO_METERS"\n}\n```\n\n</details>\n\n---\n\n### `startChatAction`\n\n`POST /v1/actions`\n\n```ts\nconst { data } = await client.startChatAction(\n null,\n {\n request_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n action_type: \'submit_meter_reading\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "none",\n "action_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "revision": 0,\n "options": [\n {\n "meter_id": "string",\n "counter_id": "string",\n "meter_number": "string",\n "label": "string",\n "unit": "string",\n "min_value": 0,\n "max_value": 0\n }\n ],\n "values": {\n "meter_id": "string",\n "counter_id": "string",\n "value": 0\n },\n "field_error": "VALUE_INVALID",\n "receipt": {\n "reference": "string",\n "meter_number": "string",\n "value": 0,\n "unit": "string",\n "submitted_at": "string"\n },\n "reason": "NO_METERS"\n}\n```\n\n</details>\n\n---\n\n### `reportChatActionEvent`\n\n`POST /v1/actions/events`\n\n```ts\nconst { data } = await client.reportChatActionEvent(\n null,\n {\n action: \'string\',\n event: \'journey_submitted\'\n },\n)\n```\n\n---\n\n### `submitChatAction`\n\n`POST /v1/actions/{action_id}/submit`\n\n```ts\nconst { data } = await client.submitChatAction(\n {\n action_id: \'example\',\n },\n {\n expected_revision: 1,\n meter_id: \'string\',\n counter_id: \'string\',\n value: 0\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "none",\n "action_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "revision": 0,\n "options": [\n {\n "meter_id": "string",\n "counter_id": "string",\n "meter_number": "string",\n "label": "string",\n "unit": "string",\n "min_value": 0,\n "max_value": 0\n }\n ],\n "values": {\n "meter_id": "string",\n "counter_id": "string",\n "value": 0\n },\n "field_error": "VALUE_INVALID",\n "receipt": {\n "reference": "string",\n "meter_number": "string",\n "value": 0,\n "unit": "string",\n "submitted_at": "string"\n },\n "reason": "NO_METERS"\n}\n```\n\n</details>\n\n---\n\n### `confirmChatAction`\n\n`POST /v1/actions/{action_id}/confirm`\n\n```ts\nconst { data } = await client.confirmChatAction(\n {\n action_id: \'example\',\n },\n {\n expected_revision: 1\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "none",\n "action_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "revision": 0,\n "options": [\n {\n "meter_id": "string",\n "counter_id": "string",\n "meter_number": "string",\n "label": "string",\n "unit": "string",\n "min_value": 0,\n "max_value": 0\n }\n ],\n "values": {\n "meter_id": "string",\n "counter_id": "string",\n "value": 0\n },\n "field_error": "VALUE_INVALID",\n "receipt": {\n "reference": "string",\n "meter_number": "string",\n "value": 0,\n "unit": "string",\n "submitted_at": "string"\n },\n "reason": "NO_METERS"\n}\n```\n\n</details>\n\n---\n\n### `cancelChatAction`\n\n`POST /v1/actions/{action_id}/cancel`\n\n```ts\nconst { data } = await client.cancelChatAction(\n {\n action_id: \'example\',\n },\n {\n expected_revision: 1\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "conversation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "none",\n "action_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "revision": 0,\n "options": [\n {\n "meter_id": "string",\n "counter_id": "string",\n "meter_number": "string",\n "label": "string",\n "unit": "string",\n "min_value": 0,\n "max_value": 0\n }\n ],\n "values": {\n "meter_id": "string",\n "counter_id": "string",\n "value": 0\n },\n "field_error": "VALUE_INVALID",\n "receipt": {\n "reference": "string",\n "meter_number": "string",\n "value": 0,\n "unit": "string",\n "submitted_at": "string"\n },\n "reason": "NO_METERS"\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `ListWebsiteChatsResponse`\n\n```ts\ntype ListWebsiteChatsResponse = {\n website_chats: Array<{\n name: string\n agent_id: string // uuid\n settings: {\n allowed_origins: { ... }\n organisation_name: { ... }\n default_locale: { ... }\n design_id?: { ... }\n authentication?: { ... }\n self_service?: { ... }\n }\n website_chat_id: string // uuid\n org_id: string\n binding_id: string // uuid\n version: number\n created_at: string // date-time\n updated_at: string // date-time\n embed: {\n script_url: { ... }\n chat_api_origin: { ... }\n demo_url: { ... }\n }\n }>\n next_cursor?: string\n}\n```\n\n### `WebsiteChat`\n\n```ts\ntype WebsiteChat = {\n name: string\n agent_id: string // uuid\n settings: {\n allowed_origins: string[]\n organisation_name: string\n default_locale: "en" | "de"\n design_id?: string // uuid\n authentication?: {\n email_code?: { ... }\n portal?: { ... }\n }\n self_service?: {\n actions: { ... }\n }\n }\n website_chat_id: string // uuid\n org_id: string\n binding_id: string // uuid\n version: number\n created_at: string // date-time\n updated_at: string // date-time\n embed: {\n script_url: string // uri\n chat_api_origin: string // uri\n demo_url: string // uri\n }\n}\n```\n\n### `WebsiteChatSettings`\n\n```ts\ntype WebsiteChatSettings = {\n allowed_origins: string[]\n organisation_name: string\n default_locale: "en" | "de"\n design_id?: string // uuid\n authentication?: {\n email_code?: {\n email_template_id?: { ... }\n }\n portal?: {\n portal_id: { ... }\n }\n }\n self_service?: {\n actions: Array<{\n action: { ... }\n enabled: { ... }\n fulfilment: { ... }\n journey_id?: { ... }\n url?: { ... }\n access: { ... }\n guidance?: { ... }\n }>\n }\n}\n```\n\n### `SelfServiceSettings`\n\nSelf-service actions customers can start in this Website Chat. On update, the list is replaced as a whole; null removes all actions.\n\n```ts\ntype SelfServiceSettings = {\n actions: Array<{\n action: "submit_meter_reading" | "change_installment_rate" | "update_payment_method" | "change_billing_address" | "update_customer_details" | "change_tariff" | "report_move" | "terminate_contract"\n enabled: boolean\n fulfilment: "in_chat" | "journey" | "link"\n journey_id?: string // uuid\n url?: string\n access: "anonymous" | "identified" | "verified"\n guidance?: string\n }>\n}\n```\n\n### `SelfServiceAction`\n\nHow a self-service action is done and who can start it. A journey needs journey_id, a link needs url. in_chat is only available for submit_meter_reading and requires a verified customer.\n\n```ts\ntype SelfServiceAction = {\n action: "submit_meter_reading" | "change_installment_rate" | "update_payment_method" | "change_billing_address" | "update_customer_details" | "change_tariff" | "report_move" | "terminate_contract"\n enabled: boolean\n fulfilment: "in_chat" | "journey" | "link"\n journey_id?: string // uuid\n url?: string\n access: "anonymous" | "identified" | "verified"\n guidance?: string\n}\n```\n\n### `WebsiteChatPreviewGrantRequest`\n\n```ts\ntype WebsiteChatPreviewGrantRequest = {\n design_id?: string // uuid\n}\n```\n\n### `WebsiteChatPreviewGrant`\n\n```ts\ntype WebsiteChatPreviewGrant = {\n grant: string\n expires_in: number\n frame_origin: string // uri\n website_chat: {\n key: string\n organisationName: string\n assistantName: string\n defaultLocale: "en" | "de"\n login_methods: "email_code" | "portal_login"[]\n starters?: {\n de?: { ... }\n en?: { ... }\n }\n actions?: {\n meter_reading?: { ... }\n meter_reading_journey_id?: { ... }\n }\n design?: {\n id: { ... }\n last_modified_at?: { ... }\n style?: { ... }\n spark_theme?: { ... }\n }\n locales: "en" | "de"[]\n }\n}\n```\n\n### `Error`\n\n```ts\ntype Error = {\n error?: string\n message?: string\n details?: object\n}\n```\n\n### `CreateWebsiteChatRequest`\n\n```ts\ntype CreateWebsiteChatRequest = {\n name: string\n agent_id: string // uuid\n settings: {\n allowed_origins: string[]\n organisation_name: string\n default_locale: "en" | "de"\n design_id?: string // uuid\n authentication?: {\n email_code?: { ... }\n portal?: { ... }\n }\n self_service?: {\n actions: { ... }\n }\n }\n}\n```\n\n### `UpdateWebsiteChatRequest`\n\n```ts\ntype UpdateWebsiteChatRequest = {\n name?: string\n agent_id?: string // uuid\n settings?: {\n allowed_origins: string[]\n organisation_name: string\n default_locale: "en" | "de"\n design_id?: string // uuid\n authentication?: {\n email_code?: { ... }\n portal?: { ... }\n }\n self_service?: {\n actions: { ... }\n }\n }\n version: number\n}\n```\n\n### `ActionRevision`\n\n```ts\ntype ActionRevision = {\n expected_revision: number\n}\n```\n\n### `ActionState`\n\n```ts\ntype ActionState = {\n conversation_id: string // uuid\n status: "none" | "needs_input" | "needs_confirmation" | "executing" | "completed" | "pending" | "rejected" | "handoff"\n action_id?: string // uuid\n revision?: number\n options?: Array<{\n meter_id: string\n counter_id: string\n meter_number: string\n label: string\n unit: string\n min_value?: number\n max_value?: number\n }>\n values?: {\n meter_id: string\n counter_id: string\n value: number\n }\n field_error?: "VALUE_INVALID" | "VALUE_OUT_OF_RANGE" | "TARGET_UNAVAILABLE"\n receipt?: {\n reference: string\n meter_number: string\n value: number\n unit: string\n submitted_at: string\n }\n reason?: "NO_METERS" | "SUBMISSION_REJECTED" | "SUBMISSION_UNCERTAIN"\n}\n```\n\n### `VerificationState`\n\n```ts\ntype VerificationState = {\n available: boolean\n conversation_id: string // uuid\n status: "anonymous" | "sending" | "pending" | "verified"\n challenge_id?: string // uuid\n code_expires_at?: number\n resend_after?: number\n email?: string // email\n contact_resolution?: "matched" | "ambiguous" | "not_found"\n access: {\n tier: "anonymous" | "identified" | "verified"\n method?: "email_code" | "portal_login"\n }\n}\n```\n\n### `PortalLoginState`\n\n```ts\ntype PortalLoginState = {\n available: boolean\n conversation_id: string // uuid\n status: "anonymous" | "pending" | "verified"\n challenge_id?: string // uuid\n code_expires_at?: number\n attempts_left?: number\n email?: string // email\n contact_resolution?: "matched" | "not_found"\n access: {\n tier: "anonymous" | "identified" | "verified"\n method?: "email_code" | "portal_login"\n }\n}\n```\n\n### `LoginMethod`\n\nHow a customer can log in or verify themselves in the chat.\n\n```ts\ntype LoginMethod = "email_code" | "portal_login"\n```\n\n### `AccessTier`\n\nanonymous: no customer identity. identified: the Contact is known but ownership\nis not proven. verified: ownership is proven (an email code or a portal login).\n\n\n```ts\ntype AccessTier = "anonymous" | "identified" | "verified"\n```\n\n### `CustomerAccess`\n\n```ts\ntype CustomerAccess = {\n tier: "anonymous" | "identified" | "verified"\n method?: "email_code" | "portal_login"\n}\n```\n\n### `StarterQuestions`\n\nAt most six. (No maxItems, which generated clients turn into fixed-length tuples.)\n\n```ts\ntype StarterQuestions = string[]\n```\n\n### `PublicWebsiteChat`\n\n```ts\ntype PublicWebsiteChat = {\n key: string\n organisationName: string\n assistantName: string\n defaultLocale: "en" | "de"\n login_methods: "email_code" | "portal_login"[]\n starters?: {\n de?: string[]\n en?: string[]\n }\n actions?: {\n meter_reading?: boolean\n meter_reading_journey_id?: string // uuid\n }\n design?: {\n id: string // uuid\n last_modified_at?: string\n style?: {\n palette?: { ... }\n typography?: { ... }\n shape?: { ... }\n }\n spark_theme?: {\n accentColor?: { ... }\n backgroundColor?: { ... }\n fontBody?: { ... }\n fontHeading?: { ... }\n radius?: { ... }\n scaling?: { ... }\n spacing?: { ... }\n appearance?: { ... }\n neutralColor?: { ... }\n styleVariant?: { ... }\n labelPosition?: { ... }\n inputStyle?: { ... }\n inputColor?: { ... }\n cardVariant?: { ... }\n cardColor?: { ... }\n highContrast?: { ... }\n }\n }\n locales: "en" | "de"[]\n}\n```\n\n### `WebsiteChatDesign`\n\n```ts\ntype WebsiteChatDesign = {\n id: string // uuid\n last_modified_at?: string\n style?: {\n palette?: {\n primary?: { ... }\n background?: { ... }\n }\n typography?: {\n font?: { ... }\n }\n shape?: {\n border_radius?: { ... }\n }\n }\n spark_theme?: {\n accentColor?: string\n backgroundColor?: string\n fontBody?: string\n fontHeading?: string\n radius?: string\n scaling?: string\n spacing?: string\n appearance?: string\n neutralColor?: string\n styleVariant?: string\n labelPosition?: string\n inputStyle?: string\n inputColor?: string\n cardVariant?: string\n cardColor?: string\n highContrast?: boolean\n }\n}\n```\n\n### `PublicEvent`\n\nJSON payload of one SSE data frame from sendAnonymousChatMessage.\n\n```ts\ntype PublicEvent = {\n type: "delta"\n text: string\n request_id: string // uuid\n} | {\n type: "complete"\n text: string\n request_id: string // uuid\n} | {\n type: "error"\n code: "UNAVAILABLE"\n request_id: string // uuid\n} | {\n type: "action"\n action: {\n action: string\n fulfilment: "in_chat" | "journey" | "link"\n journey_id?: string // uuid\n url?: string\n access: "anonymous" | "identified" | "verified"\n }\n request_id: string // uuid\n}\n```\n\n### `SelfServiceDirective`\n\n```ts\ntype SelfServiceDirective = {\n action: string\n fulfilment: "in_chat" | "journey" | "link"\n journey_id?: string // uuid\n url?: string\n access: "anonymous" | "identified" | "verified"\n}\n```\n\n### `PublicChatError`\n\n```ts\ntype PublicChatError = {\n code: "INVALID_VERIFICATION_CODE" | "VERIFICATION_EXPIRED" | "VERIFICATION_CONFLICT" | "VERIFICATION_DISABLED" | "VERIFICATION_UNAVAILABLE" | "IDENTITY_CHANGED" | "INVALID_REQUEST" | "ORIGIN_DENIED" | "NOT_FOUND" | "INVALID_GRANT" | "SESSION_EXPIRED" | "RATE_LIMITED" | "SESSION_LIMIT" | "USAGE_LIMIT" | "REQUEST_CONFLICT" | "IN_PROGRESS" | "UNAVAILABLE" | "TEMPORARILY_UNAVAILABLE" | "IDENTITY_REQUIRED" | "ACTION_UNAVAILABLE" | "ACTION_CONFLICT" | "ACTION_TARGET_DENIED" | "INVALID_LOGIN_CODE" | "LOGIN_EXPIRED" | "LOGIN_DISABLED" | "LOGIN_UNAVAILABLE" | "LOGIN_CONFLICT" | "LOGIN_REJECTED"\n attempts_left?: number\n}\n```\n';
5
-
6
-
7
- exports.default = chat_default;
@@ -1,14 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
- var _chunkNJK5F5TFcjs = require('./chunk-NJK5F5TF.cjs');
4
-
5
- // src/definitions/message-runtime.json
6
- var require_message_runtime = _chunkNJK5F5TFcjs.__commonJS.call(void 0, {
7
- "src/definitions/message-runtime.json"(exports, module) {
8
- module.exports = { s: "https://message.sls.epilot.io", o: [["sendMessage", "post", "/v1/message/messages", [["do_not_create_entities", "q"]], 1], ["updateMessage", "put", "/v1/message/messages"], ["getMessage", "get", "/v1/message/messages/{id}", [["id", "p", true]]], ["deleteMessage", "delete", "/v1/message/messages/{id}", [["id", "p", true]]], ["getMessageEml", "get", "/v1/message/messages/{id}/eml", [["id", "p", true]]], ["searchMessages", "post", "/v1/message/messages:search", null, 1], ["trashMessage", "post", "/v1/message/messages/{id}/trash", [["id", "p", true]]], ["untrashMessage", "post", "/v1/message/messages/{id}/untrash", [["id", "p", true]]], ["markReadMessage", "post", "/v1/message/messages/{id}/read", [["id", "p", true]]], ["markReadMessageV2", "post", "/v2/message/messages/{id}/read", [["id", "p", true]], 1], ["markUnreadMessage", "post", "/v1/message/messages/{id}/unread", [["id", "p", true]]], ["getUnread", "get", "/v1/message/messages/unread/{actor}", [["actor", "p", true], ["email_filter", "q"]]], ["getUnreadCounts", "post", "/v1/message/unread:counts", null, 1], ["markUnreadMessageV2", "post", "/v2/message/messages/{id}/unread", [["id", "p", true]], 1], ["searchThreads", "post", "/v1/message/threads:search", null, 1], ["searchThreadsV2", "post", "/v2/message/threads:search", null, 1], ["searchIds", "post", "/v1/message/threads:searchIds", null, 1], ["getAssigneeWorkload", "post", "/v2/message/threads:workload", null, 1], ["updateThread", "put", "/v1/message/threads"], ["deleteThread", "delete", "/v1/message/threads/{id}", [["id", "p", true]]], ["moveThread", "post", "/v1/message/threads/{id}:move", [["id", "p", true]], 1], ["markThreadAsDone", "post", "/v1/message/threads/{id}:markAsDone", [["id", "p", true]]], ["markThreadAsOpen", "post", "/v1/message/threads/{id}:markAsOpen", [["id", "p", true]]], ["getThreadTimeline", "get", "/v1/message/threads/{id}/timeline", [["id", "p", true]]], ["trashThread", "post", "/v1/message/threads/{id}/trash", [["id", "p", true]]], ["untrashThread", "post", "/v1/message/threads/{id}/untrash", [["id", "p", true]]], ["spamThread", "post", "/v1/message/threads/{id}/spam", [["id", "p", true]]], ["unspamThread", "post", "/v1/message/threads/{id}/unspam", [["id", "p", true]]], ["spamMessage", "post", "/v1/message/messages/{id}/spam", [["id", "p", true]]], ["unspamMessage", "post", "/v1/message/messages/{id}/unspam", [["id", "p", true]]], ["bulkMoveThreads", "post", "/v1/message/threads/bulk:move", null, 1], ["bulkAssignThreads", "post", "/v1/message/threads/bulk:assign", null, 1], ["threadBulkActionsRead", "post", "/v1/message/threads/bulk:read", null, 1], ["threadBulkActionsUnread", "post", "/v1/message/threads/bulk:unread", null, 1], ["threadBulkActionsFavorite", "post", "/v1/message/threads/bulk:favorite", null, 1], ["threadBulkActionsUnfavorite", "post", "/v1/message/threads/bulk:unfavorite", null, 1], ["threadBulkActionsTrash", "post", "/v1/message/threads/bulk:trash", null, 1], ["threadBulkActionsUntrash", "post", "/v1/message/threads/bulk:untrash", null, 1], ["threadBulkActionsDelete", "post", "/v1/message/threads/bulk:delete", null, 1], ["threadBulkActionsDone", "post", "/v1/message/threads/bulk:done", null, 1], ["threadBulkActionsOpen", "post", "/v1/message/threads/bulk:open", null, 1], ["markReadThread", "post", "/v1/message/threads/{id}/read", [["id", "p", true]]], ["markReadThreadV2", "post", "/v2/message/threads/{id}/read", [["id", "p", true]], 1], ["markUnreadThread", "post", "/v1/message/threads/{id}/unread", [["id", "p", true]]], ["markUnreadThreadV2", "post", "/v2/message/threads/{id}/unread", [["id", "p", true]], 1], ["assignThread", "post", "/v1/message/threads/{id}/assign", [["id", "p", true]], 1], ["unassignThread", "post", "/v1/message/threads/{id}/unassign", [["id", "p", true], ["unlink_mapped_entities", "q"]], 1], ["assignUsers", "post", "/v1/message/threads/{id}/assign:users", [["id", "p", true]], 1], ["assignUsersV2", "post", "/v2/message/threads/{id}/assign:users", [["id", "p", true]], 1], ["pinThread", "post", "/v1/message/threads/{id}:pin", [["id", "p", true]]], ["unpinThread", "delete", "/v1/message/threads/{id}:pin", [["id", "p", true]]], ["createDraft", "post", "/v1/message/drafts", null, 1], ["sendDraft", "post", "/v1/message/drafts:send"], ["getMessageV2", "get", "/v2/message/messages/{id}", [["id", "p", true]]]] };
9
- }
10
- });
11
-
12
-
13
-
14
- exports.require_message_runtime = require_message_runtime;
@@ -1,14 +0,0 @@
1
- import {
2
- __commonJS
3
- } from "./chunk-YPSWSI3M.js";
4
-
5
- // src/definitions/message-runtime.json
6
- var require_message_runtime = __commonJS({
7
- "src/definitions/message-runtime.json"(exports, module) {
8
- module.exports = { s: "https://message.sls.epilot.io", o: [["sendMessage", "post", "/v1/message/messages", [["do_not_create_entities", "q"]], 1], ["updateMessage", "put", "/v1/message/messages"], ["getMessage", "get", "/v1/message/messages/{id}", [["id", "p", true]]], ["deleteMessage", "delete", "/v1/message/messages/{id}", [["id", "p", true]]], ["getMessageEml", "get", "/v1/message/messages/{id}/eml", [["id", "p", true]]], ["searchMessages", "post", "/v1/message/messages:search", null, 1], ["trashMessage", "post", "/v1/message/messages/{id}/trash", [["id", "p", true]]], ["untrashMessage", "post", "/v1/message/messages/{id}/untrash", [["id", "p", true]]], ["markReadMessage", "post", "/v1/message/messages/{id}/read", [["id", "p", true]]], ["markReadMessageV2", "post", "/v2/message/messages/{id}/read", [["id", "p", true]], 1], ["markUnreadMessage", "post", "/v1/message/messages/{id}/unread", [["id", "p", true]]], ["getUnread", "get", "/v1/message/messages/unread/{actor}", [["actor", "p", true], ["email_filter", "q"]]], ["getUnreadCounts", "post", "/v1/message/unread:counts", null, 1], ["markUnreadMessageV2", "post", "/v2/message/messages/{id}/unread", [["id", "p", true]], 1], ["searchThreads", "post", "/v1/message/threads:search", null, 1], ["searchThreadsV2", "post", "/v2/message/threads:search", null, 1], ["searchIds", "post", "/v1/message/threads:searchIds", null, 1], ["getAssigneeWorkload", "post", "/v2/message/threads:workload", null, 1], ["updateThread", "put", "/v1/message/threads"], ["deleteThread", "delete", "/v1/message/threads/{id}", [["id", "p", true]]], ["moveThread", "post", "/v1/message/threads/{id}:move", [["id", "p", true]], 1], ["markThreadAsDone", "post", "/v1/message/threads/{id}:markAsDone", [["id", "p", true]]], ["markThreadAsOpen", "post", "/v1/message/threads/{id}:markAsOpen", [["id", "p", true]]], ["getThreadTimeline", "get", "/v1/message/threads/{id}/timeline", [["id", "p", true]]], ["trashThread", "post", "/v1/message/threads/{id}/trash", [["id", "p", true]]], ["untrashThread", "post", "/v1/message/threads/{id}/untrash", [["id", "p", true]]], ["spamThread", "post", "/v1/message/threads/{id}/spam", [["id", "p", true]]], ["unspamThread", "post", "/v1/message/threads/{id}/unspam", [["id", "p", true]]], ["spamMessage", "post", "/v1/message/messages/{id}/spam", [["id", "p", true]]], ["unspamMessage", "post", "/v1/message/messages/{id}/unspam", [["id", "p", true]]], ["bulkMoveThreads", "post", "/v1/message/threads/bulk:move", null, 1], ["bulkAssignThreads", "post", "/v1/message/threads/bulk:assign", null, 1], ["threadBulkActionsRead", "post", "/v1/message/threads/bulk:read", null, 1], ["threadBulkActionsUnread", "post", "/v1/message/threads/bulk:unread", null, 1], ["threadBulkActionsFavorite", "post", "/v1/message/threads/bulk:favorite", null, 1], ["threadBulkActionsUnfavorite", "post", "/v1/message/threads/bulk:unfavorite", null, 1], ["threadBulkActionsTrash", "post", "/v1/message/threads/bulk:trash", null, 1], ["threadBulkActionsUntrash", "post", "/v1/message/threads/bulk:untrash", null, 1], ["threadBulkActionsDelete", "post", "/v1/message/threads/bulk:delete", null, 1], ["threadBulkActionsDone", "post", "/v1/message/threads/bulk:done", null, 1], ["threadBulkActionsOpen", "post", "/v1/message/threads/bulk:open", null, 1], ["markReadThread", "post", "/v1/message/threads/{id}/read", [["id", "p", true]]], ["markReadThreadV2", "post", "/v2/message/threads/{id}/read", [["id", "p", true]], 1], ["markUnreadThread", "post", "/v1/message/threads/{id}/unread", [["id", "p", true]]], ["markUnreadThreadV2", "post", "/v2/message/threads/{id}/unread", [["id", "p", true]], 1], ["assignThread", "post", "/v1/message/threads/{id}/assign", [["id", "p", true]], 1], ["unassignThread", "post", "/v1/message/threads/{id}/unassign", [["id", "p", true], ["unlink_mapped_entities", "q"]], 1], ["assignUsers", "post", "/v1/message/threads/{id}/assign:users", [["id", "p", true]], 1], ["assignUsersV2", "post", "/v2/message/threads/{id}/assign:users", [["id", "p", true]], 1], ["pinThread", "post", "/v1/message/threads/{id}:pin", [["id", "p", true]]], ["unpinThread", "delete", "/v1/message/threads/{id}:pin", [["id", "p", true]]], ["createDraft", "post", "/v1/message/drafts", null, 1], ["sendDraft", "post", "/v1/message/drafts:send"], ["getMessageV2", "get", "/v2/message/messages/{id}", [["id", "p", true]]]] };
9
- }
10
- });
11
-
12
- export {
13
- require_message_runtime
14
- };
@@ -1,7 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
2
-
3
- // src/docs/message.json
4
- var message_default = '# Message API\n\n- **Base URL:** `https://message.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/message](https://docs.epilot.io/api/message)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.message.sendMessage(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/message\'\n\nconst messageClient = getClient()\nauthorize(messageClient, () => \'<token>\')\nconst { data } = await messageClient.sendMessage(...)\n```\n\n## Operations\n\n**Messages**\n- [`sendMessage`](#sendmessage)\n- [`updateMessage`](#updatemessage)\n- [`getMessage`](#getmessage)\n- [`deleteMessage`](#deletemessage)\n- [`getMessageEml`](#getmessageeml)\n- [`searchMessages`](#searchmessages)\n- [`trashMessage`](#trashmessage)\n- [`untrashMessage`](#untrashmessage)\n- [`markReadMessage`](#markreadmessage)\n- [`markReadMessageV2`](#markreadmessagev2)\n- [`markUnreadMessage`](#markunreadmessage)\n- [`getUnread`](#getunread)\n- [`getUnreadCounts`](#getunreadcounts)\n- [`markUnreadMessageV2`](#markunreadmessagev2)\n- [`spamMessage`](#spammessage)\n- [`unspamMessage`](#unspammessage)\n- [`getMessageV2`](#getmessagev2)\n\n**Threads**\n- [`searchThreads`](#searchthreads)\n- [`searchThreadsV2`](#searchthreadsv2)\n- [`searchIds`](#searchids)\n- [`getAssigneeWorkload`](#getassigneeworkload)\n- [`updateThread`](#updatethread)\n- [`deleteThread`](#deletethread)\n- [`moveThread`](#movethread)\n- [`markThreadAsDone`](#markthreadasdone)\n- [`markThreadAsOpen`](#markthreadasopen)\n- [`getThreadTimeline`](#getthreadtimeline)\n- [`trashThread`](#trashthread)\n- [`untrashThread`](#untrashthread)\n- [`spamThread`](#spamthread)\n- [`unspamThread`](#unspamthread)\n- [`bulkMoveThreads`](#bulkmovethreads)\n- [`bulkAssignThreads`](#bulkassignthreads)\n- [`threadBulkActionsRead`](#threadbulkactionsread)\n- [`threadBulkActionsUnread`](#threadbulkactionsunread)\n- [`threadBulkActionsFavorite`](#threadbulkactionsfavorite)\n- [`threadBulkActionsUnfavorite`](#threadbulkactionsunfavorite)\n- [`threadBulkActionsTrash`](#threadbulkactionstrash)\n- [`threadBulkActionsUntrash`](#threadbulkactionsuntrash)\n- [`threadBulkActionsDelete`](#threadbulkactionsdelete)\n- [`threadBulkActionsDone`](#threadbulkactionsdone)\n- [`threadBulkActionsOpen`](#threadbulkactionsopen)\n- [`markReadThread`](#markreadthread)\n- [`markReadThreadV2`](#markreadthreadv2)\n- [`markUnreadThread`](#markunreadthread)\n- [`markUnreadThreadV2`](#markunreadthreadv2)\n- [`assignThread`](#assignthread)\n- [`unassignThread`](#unassignthread)\n- [`assignUsers`](#assignusers)\n- [`assignUsersV2`](#assignusersv2)\n- [`pinThread`](#pinthread)\n- [`unpinThread`](#unpinthread)\n\n**Drafts**\n- [`createDraft`](#createdraft)\n- [`sendDraft`](#senddraft)\n\n**Schemas**\n- [`ErrorResponse`](#errorresponse)\n- [`MoveThreadPayload`](#movethreadpayload)\n- [`BaseEntity`](#baseentity)\n- [`Thread`](#thread)\n- [`Message`](#message)\n- [`MessageV2`](#messagev2)\n- [`Address`](#address)\n- [`AttachmentsRelation`](#attachmentsrelation)\n- [`File`](#file)\n- [`MessageRequestParams`](#messagerequestparams)\n- [`ThreadView`](#threadview)\n- [`UnreadCountScope`](#unreadcountscope)\n- [`UnreadCountsPayload`](#unreadcountspayload)\n- [`UnreadCountsResult`](#unreadcountsresult)\n- [`UnreadCountBuckets`](#unreadcountbuckets)\n- [`SearchParamsV2`](#searchparamsv2)\n- [`SearchParams`](#searchparams)\n- [`SearchIDParams`](#searchidparams)\n- [`AssigneeWorkloadParams`](#assigneeworkloadparams)\n- [`AssigneeWorkload`](#assigneeworkload)\n- [`AssigneeWorkloadResults`](#assigneeworkloadresults)\n- [`ReadMessagePayload`](#readmessagepayload)\n- [`ReadingScope`](#readingscope)\n- [`ThreadTimeline`](#threadtimeline)\n- [`ThreadDoneEvent`](#threaddoneevent)\n- [`ThreadOpenEvent`](#threadopenevent)\n- [`WorkflowStartedEvent`](#workflowstartedevent)\n- [`ThreadUserAssignedEvent`](#threaduserassignedevent)\n- [`MessageLabelAddedEvent`](#messagelabeladdedevent)\n- [`MessageLabelRemovedEvent`](#messagelabelremovedevent)\n- [`MessageEntityLinkedEvent`](#messageentitylinkedevent)\n- [`MessageEntityUnlinkedEvent`](#messageentityunlinkedevent)\n- [`MessageAutoReplySentEvent`](#messageautoreplysentevent)\n- [`ThreadMovedToInboxEvent`](#threadmovedtoinboxevent)\n- [`ThreadTrashedEvent`](#threadtrashedevent)\n- [`ThreadRestoredEvent`](#threadrestoredevent)\n- [`TimelineLinkedEntity`](#timelinelinkedentity)\n- [`TimelineActor`](#timelineactor)\n- [`TimelineEventData`](#timelineeventdata)\n- [`TimelineEvent`](#timelineevent)\n- [`BulkActionsPayloadWithScopes`](#bulkactionspayloadwithscopes)\n- [`BulkActionsPayload`](#bulkactionspayload)\n- [`FieldsParam`](#fieldsparam)\n\n### `sendMessage`\n\nSend an email message\n\n`POST /v1/message/messages`\n\n```ts\nconst { data } = await client.sendMessage(\n {\n do_not_create_entities: true,\n },\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{}\n```\n\n</details>\n\n---\n\n### `updateMessage`\n\nUpdate message metadata\n\n`PUT /v1/message/messages`\n\n```ts\nconst { data } = await client.updateMessage()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `getMessage`\n\nGet an email message by id\n\n`GET /v1/message/messages/{id}`\n\n```ts\nconst { data } = await client.getMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `deleteMessage`\n\nImmediately and permanently delete a message. This operation cannot be undone.\n\n`DELETE /v1/message/messages/{id}`\n\n```ts\nconst { data } = await client.deleteMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getMessageEml`\n\nDownload a message as an EML file.\nReturns a 302 redirect to a pre-signed S3 URL where the EML file can be downloaded.\n\n`GET /v1/message/messages/{id}/eml`\n\n```ts\nconst { data } = await client.getMessageEml({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `searchMessages`\n\nSearch Messages\n\n`POST /v1/message/messages:search`\n\n```ts\nconst { data } = await client.searchMessages(\n null,\n {\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\',\n view: {\n folder: \'inbox\',\n mailbox: \'organization\',\n labels: [\'string\'],\n purposes: [\'string\'],\n filters: [\'unread\'],\n from: [\'string\'],\n to: [\'string\'],\n assigned_to: [\'string\'],\n include_unassigned: true,\n date_from_days_ago: 0,\n date_to_days_ago: 0,\n email_filter: [\'string\'],\n text: \'string\',\n thread_ids: [\'string\'],\n pinned_by: \'string\'\n },\n user_groups: [\'string\'],\n fields: [\'_id\', \'_title\', \'first_name\', \'account\', \'!account.*._files\', \'**._product\'],\n from: 0,\n size: 10,\n hydrate: false,\n include_scores: false,\n sort: \'string\',\n highlight: {}\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `trashMessage`\n\nMove a message to the trash\n\n`POST /v1/message/messages/{id}/trash`\n\n```ts\nconst { data } = await client.trashMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `untrashMessage`\n\nRestore a trashed message\n\n`POST /v1/message/messages/{id}/untrash`\n\n```ts\nconst { data } = await client.untrashMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markReadMessage`\n\nMark message as read\n\n`POST /v1/message/messages/{id}/read`\n\n```ts\nconst { data } = await client.markReadMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markReadMessageV2`\n\nMark message as read within a scope\n\n`POST /v2/message/messages/{id}/read`\n\n```ts\nconst { data } = await client.markReadMessageV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `markUnreadMessage`\n\nMark message as unread\n\n`POST /v1/message/messages/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getUnread`\n\nGet all unread messages by actor\n\n`GET /v1/message/messages/unread/{actor}`\n\n```ts\nconst { data } = await client.getUnread({\n actor: \'example\',\n email_filter: [\'...\'],\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "count": 14,\n "unread": 0,\n "drafts": 12,\n "unassigned": 1,\n "spam": 3\n}\n```\n\n</details>\n\n---\n\n### `getUnreadCounts`\n\nUnread counts for several named scopes in one request.\n\n`POST /v1/message/unread:counts`\n\n```ts\nconst { data } = await client.getUnreadCounts(\n null,\n {\n actor: \'organization\',\n email_filter: [\'string\'],\n user_groups: [\'string\'],\n scopes: [\n {\n name: \'inbox-support\',\n type: \'organization\',\n q: \'_tags.keyword:inbox AND !_tags.keyword:trash\',\n view_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "enabled": true,\n "counts": {},\n "omitted": ["string"]\n}\n```\n\n</details>\n\n---\n\n### `markUnreadMessageV2`\n\nMark message as unread within a scope\n\n`POST /v2/message/messages/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadMessageV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `searchThreads`\n\nSearch for threads of email messages.\n\n`POST /v1/message/threads:search`\n\n```ts\nconst { data } = await client.searchThreads(\n null,\n {\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\',\n from: 0,\n size: 10,\n hydrate: false\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "topic": "CUSTOMER_MESSAGE",\n "assigned_to": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "done": false,\n "latest_message": {},\n "latest_trash_message": {},\n "latest_message_at": "2024-02-10T09:14:31.990Z"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `searchThreadsV2`\n\nSearch for threads of email messages.\n\n`POST /v2/message/threads:search`\n\n```ts\nconst { data } = await client.searchThreadsV2(\n null,\n {\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\',\n view: {\n folder: \'inbox\',\n mailbox: \'organization\',\n labels: [\'string\'],\n purposes: [\'string\'],\n filters: [\'unread\'],\n from: [\'string\'],\n to: [\'string\'],\n assigned_to: [\'string\'],\n include_unassigned: true,\n date_from_days_ago: 0,\n date_to_days_ago: 0,\n email_filter: [\'string\'],\n text: \'string\',\n thread_ids: [\'string\'],\n pinned_by: \'string\'\n },\n user_groups: [\'string\'],\n fields: [\'_id\', \'_title\', \'first_name\', \'account\', \'!account.*._files\', \'**._product\'],\n from: 0,\n size: 10,\n hydrate: false,\n include_scores: false,\n sort: \'string\',\n highlight: {}\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "topic": "CUSTOMER_MESSAGE",\n "assigned_to": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "done": false,\n "latest_message": {},\n "latest_trash_message": {},\n "latest_message_at": "2024-02-10T09:14:31.990Z"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `searchIds`\n\nSearch threads and return all id\'s\n\n`POST /v1/message/threads:searchIds`\n\n```ts\nconst { data } = await client.searchIds(\n null,\n {\n view: {\n folder: \'inbox\',\n mailbox: \'organization\',\n labels: [\'string\'],\n purposes: [\'string\'],\n filters: [\'unread\'],\n from: [\'string\'],\n to: [\'string\'],\n assigned_to: [\'string\'],\n include_unassigned: true,\n date_from_days_ago: 0,\n date_to_days_ago: 0,\n email_filter: [\'string\'],\n text: \'string\',\n thread_ids: [\'string\'],\n pinned_by: \'string\'\n },\n user_groups: [\'string\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": ["string"]\n}\n```\n\n</details>\n\n---\n\n### `getAssigneeWorkload`\n\nReturn the open-thread workload for a set of user ids.\n\n`POST /v2/message/threads:workload`\n\n```ts\nconst { data } = await client.getAssigneeWorkload(\n null,\n {\n user_ids: [\'11000902\', \'11001053\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "workloads": [\n {\n "user_id": "11000902",\n "open_threads": 2\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `updateThread`\n\nModify thread metadata\n\n`PUT /v1/message/threads`\n\n```ts\nconst { data } = await client.updateThread()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "topic": "CUSTOMER_MESSAGE",\n "assigned_to": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "done": false,\n "latest_message": {\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {}\n ],\n "cc": [\n {}\n ],\n "bcc": [\n {}\n ],\n "file": {\n "$relation": []\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n },\n "latest_trash_message": {\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {}\n ],\n "cc": [\n {}\n ],\n "bcc": [\n {}\n ],\n "file": {\n "$relation": []\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n },\n "latest_message_at": "2024-02-10T09:14:31.990Z"\n}\n```\n\n</details>\n\n---\n\n### `deleteThread`\n\nImmediately and permanently delete a thread. This operation cannot be undone.\n\n`DELETE /v1/message/threads/{id}`\n\n```ts\nconst { data } = await client.deleteThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `moveThread`\n\nMove thread to a different Inbox\n\n`POST /v1/message/threads/{id}:move`\n\n```ts\nconst { data } = await client.moveThread(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\'\n },\n)\n```\n\n---\n\n### `markThreadAsDone`\n\nMark thread as done\n\n`POST /v1/message/threads/{id}:markAsDone`\n\n```ts\nconst { data } = await client.markThreadAsDone({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markThreadAsOpen`\n\nMark thread as open\n\n`POST /v1/message/threads/{id}:markAsOpen`\n\n```ts\nconst { data } = await client.markThreadAsOpen({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getThreadTimeline`\n\nGet thread timeline\n\n`GET /v1/message/threads/{id}/timeline`\n\n```ts\nconst { data } = await client.getThreadTimeline({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "events": [\n {\n "id": "string",\n "data": {\n "type": "THREAD_DONE",\n "user_id": "123",\n "organization_id": "456"\n },\n "timestamp": "2024-01-01T00:00:00.000Z",\n "message_id": "string",\n "source": "user",\n "automated": true,\n "actor": {\n "user_id": "string",\n "email": "string"\n },\n "automation": {\n "id": "string",\n "name": "string"\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `trashThread`\n\nMove a thread to trash\n\n`POST /v1/message/threads/{id}/trash`\n\n```ts\nconst { data } = await client.trashThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `untrashThread`\n\nRestore a trashed thread\n\n`POST /v1/message/threads/{id}/untrash`\n\n```ts\nconst { data } = await client.untrashThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `spamThread`\n\nMark a thread as spam\n\n`POST /v1/message/threads/{id}/spam`\n\n```ts\nconst { data } = await client.spamThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `unspamThread`\n\nRemove spam marking from a thread\n\n`POST /v1/message/threads/{id}/unspam`\n\n```ts\nconst { data } = await client.unspamThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `spamMessage`\n\nMark a single message as spam. Also marks the parent thread as spam if all messages in the thread are spam.\n\n`POST /v1/message/messages/{id}/spam`\n\n```ts\nconst { data } = await client.spamMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `unspamMessage`\n\nRemove spam marking from a single message. Also removes spam from the parent thread if no other messages are spam.\n\n`POST /v1/message/messages/{id}/unspam`\n\n```ts\nconst { data } = await client.unspamMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `bulkMoveThreads`\n\nMove many threads to a different inbox\n\n`POST /v1/message/threads/bulk:move`\n\n```ts\nconst { data } = await client.bulkMoveThreads(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `bulkAssignThreads`\n\nAssign many threads\n\n`POST /v1/message/threads/bulk:assign`\n\n```ts\nconst { data } = await client.bulkAssignThreads(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsRead`\n\nPerform a bulk action of marking an array of thread ids as read\n\n`POST /v1/message/threads/bulk:read`\n\n```ts\nconst { data } = await client.threadBulkActionsRead(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsUnread`\n\nPerform a bulk action of marking an array of thread ids as unread\n\n`POST /v1/message/threads/bulk:unread`\n\n```ts\nconst { data } = await client.threadBulkActionsUnread(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsFavorite`\n\nPerform a bulk action of marking an array of thread ids favorite\n\n`POST /v1/message/threads/bulk:favorite`\n\n```ts\nconst { data } = await client.threadBulkActionsFavorite(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsUnfavorite`\n\nPerform a bulk action of marking an array of thread ids unfavorited\n\n`POST /v1/message/threads/bulk:unfavorite`\n\n```ts\nconst { data } = await client.threadBulkActionsUnfavorite(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsTrash`\n\nPerform a bulk action of trashing an array of threads\n\n`POST /v1/message/threads/bulk:trash`\n\n```ts\nconst { data } = await client.threadBulkActionsTrash(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsUntrash`\n\nPerform a bulk action of untrashing an array of threads\n\n`POST /v1/message/threads/bulk:untrash`\n\n```ts\nconst { data } = await client.threadBulkActionsUntrash(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsDelete`\n\nPerforms a bulk permanent delete for all threads\n\n`POST /v1/message/threads/bulk:delete`\n\n```ts\nconst { data } = await client.threadBulkActionsDelete(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsDone`\n\nPerform a bulk action of marking an array of threads as done\n\n`POST /v1/message/threads/bulk:done`\n\n```ts\nconst { data } = await client.threadBulkActionsDone(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsOpen`\n\nPerform a bulk action of marking an array of threads as open\n\n`POST /v1/message/threads/bulk:open`\n\n```ts\nconst { data } = await client.threadBulkActionsOpen(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `markReadThread`\n\nMark thread as read\n\n`POST /v1/message/threads/{id}/read`\n\n```ts\nconst { data } = await client.markReadThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markReadThreadV2`\n\nMark thread as read within a scope\n\n`POST /v2/message/threads/{id}/read`\n\n```ts\nconst { data } = await client.markReadThreadV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `markUnreadThread`\n\nMark thread as unread\n\n`POST /v1/message/threads/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markUnreadThreadV2`\n\nMark thread as unread within a scope\n\n`POST /v2/message/threads/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadThreadV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `assignThread`\n\nAssign thread to entities\n\n`POST /v1/message/threads/{id}/assign`\n\n```ts\nconst { data } = await client.assignThread(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n [\n {\n slug: \'contact\',\n entity_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n org_id: \'206801\',\n is_main_entity: true\n }\n ],\n)\n```\n\n---\n\n### `unassignThread`\n\nUnassign thread from entities\n\n`POST /v1/message/threads/{id}/unassign`\n\n```ts\nconst { data } = await client.unassignThread(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n unlink_mapped_entities: true,\n },\n [\n {\n slug: \'contact\',\n entity_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\'\n }\n ],\n)\n```\n\n---\n\n### `assignUsers`\n\nAssign users to thread for receiving notifications.\nThe operation replaces all existing assigned users in thread.\n\n`POST /v1/message/threads/{id}/assign:users`\n\n```ts\nconst { data } = await client.assignUsers(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n assigned_to: [\'206801\']\n },\n)\n```\n\n---\n\n### `assignUsersV2`\n\nAssign users to thread.\n\n`POST /v2/message/threads/{id}/assign:users`\n\n```ts\nconst { data } = await client.assignUsersV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n add: [\'206801\'],\n remove: [\'206801\']\n },\n)\n```\n\n---\n\n### `pinThread`\n\nPin a single thread\n\n`POST /v1/message/threads/{id}:pin`\n\n```ts\nconst { data } = await client.pinThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `unpinThread`\n\nUnpin a single thread\n\n`DELETE /v1/message/threads/{id}:pin`\n\n```ts\nconst { data } = await client.unpinThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `createDraft`\n\nCreate a new draft\n\n`POST /v1/message/drafts`\n\n```ts\nconst { data } = await client.createDraft(\n null,\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `sendDraft`\n\nSend the existing draft to the recipients\n\n`POST /v1/message/drafts:send`\n\n```ts\nconst { data } = await client.sendDraft()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `getMessageV2`\n\n- Fetches message by ID\n- If the message html is omitted on the entity, then it keeps the content on the message as a signed url\n {\n ...\n _id: "4d74976d-fb64-47fd-85e2-65eea140f5eb",\n _schem\n\n`GET /v2/message/messages/{id}`\n\n```ts\nconst { data } = await client.getMessageV2({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "html_omitted": false,\n "html_download_url": "https://s3.eu-central-1.amazonaws.com/epilot-attachments/3f34ce73-089c-4d45-a5ee-c161234e41c3/3f34ce73-089c-4d45-a5ee-c161234e41c3.html",\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `ErrorResponse`\n\n```ts\ntype ErrorResponse = {\n error?: string\n}\n```\n\n### `MoveThreadPayload`\n\n```ts\ntype MoveThreadPayload = {\n inbox_id: string\n}\n```\n\n### `BaseEntity`\n\n```ts\ntype BaseEntity = {\n _id: string\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n\n### `Thread`\n\nThread properties depend on API caller as it\'s not pre-defined. We do recommend having at least `topic` property for categorizing.\n\n```ts\ntype Thread = {\n topic: string\n assigned_to?: string[]\n org_read_message?: string[]\n done?: boolean\n latest_message?: {\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n reply_to?: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n to?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n cc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n bcc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n file?: {\n $relation?: { ... }\n }\n references?: string\n in_reply_to?: string\n user_read_message?: string[]\n org_read_message?: string[]\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"[]\n type?: "SENT" | "RECEIVED"\n template_id?: string\n }\n latest_trash_message?: {\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n reply_to?: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n to?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n cc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n bcc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n // ...\n}\n```\n\n### `Message`\n\n```ts\ntype Message = {\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n reply_to?: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n to?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n cc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n bcc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n file?: {\n $relation?: Array<{\n entity_id: { ... }\n filename?: { ... }\n is_message_attachment?: { ... }\n may_be_signature_attachment?: { ... }\n cid?: { ... }\n inline?: { ... }\n send_as_link?: { ... }\n save_to_entity?: { ... }\n }>\n }\n references?: string\n in_reply_to?: string\n user_read_message?: string[]\n org_read_message?: string[]\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"[]\n type?: "SENT" | "RECEIVED"\n template_id?: string\n}\n```\n\n### `MessageV2`\n\n```ts\ntype MessageV2 = {\n _id: string\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n reply_to?: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n to?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n cc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n bcc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n file?: {\n $relation?: Array<{\n entity_id: { ... }\n filename?: { ... }\n is_message_attachment?: { ... }\n may_be_signature_attachment?: { ... }\n cid?: { ... }\n inline?: { ... }\n send_as_link?: { ... }\n save_to_entity?: { ... }\n }>\n }\n references?: string\n in_reply_to?: string\n user_read_message?: string[]\n org_read_message?: string[]\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"[]\n type?: "SENT" | "RECEIVED"\n template_id?: string\n}\n```\n\n### `Address`\n\n```ts\ntype Address = {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n}\n```\n\n### `AttachmentsRelation`\n\nMessage attachments\n\n```ts\ntype AttachmentsRelation = {\n $relation?: Array<{\n entity_id: string\n filename?: string\n is_message_attachment?: boolean\n may_be_signature_attachment?: boolean\n cid?: string\n inline?: boolean\n send_as_link?: boolean\n save_to_entity?: boolean\n }>\n}\n```\n\n### `File`\n\n```ts\ntype File = {\n entity_id: string\n filename?: string\n is_message_attachment?: boolean\n may_be_signature_attachment?: boolean\n cid?: string\n inline?: boolean\n send_as_link?: boolean\n save_to_entity?: boolean\n}\n```\n\n### `MessageRequestParams`\n\n```ts\ntype MessageRequestParams = {\n complete_thread?: boolean\n mark_thread_as_read?: boolean\n thread?: {\n topic: string\n assigned_to?: string[]\n }\n parent_id?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n reply_to?: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n to?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n cc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n bcc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n file?: {\n $relation?: Array<{\n entity_id: { ... }\n filename?: { ... }\n is_message_attachment?: { ... }\n may_be_signature_attachment?: { ... }\n cid?: { ... }\n inline?: { ... }\n send_as_link?: { ... }\n save_to_entity?: { ... }\n }>\n }\n template_id?: string\n source?: "manual" | "automation" | "workflow" | "partner" | "bulk" | "system"\n}\n```\n\n### `ThreadView`\n\nA central-inbox view, described structurally so the server compiles the query for it. Both the\nthread list and the unread count for a view are compiled from the same description, so the two\ncannot disagree about what the view means.\n\nEvery field is optional and an omitted field adds no condition, so\n\n```ts\ntype ThreadView = {\n folder?: "inbox" | "favorite" | "sent" | "trash" | "spam" | "unassignable" | "draft"\n mailbox?: "organization" | "agent"\n labels?: string[]\n purposes?: string[]\n filters?: "unread" | "resolved" | "trash"[]\n from?: string[]\n to?: string[]\n assigned_to?: string[]\n include_unassigned?: boolean\n date_from_days_ago?: number\n date_to_days_ago?: number\n email_filter?: string[]\n text?: string\n thread_ids?: string[]\n pinned_by?: string\n}\n```\n\n### `UnreadCountScope`\n\n```ts\ntype UnreadCountScope = {\n name: string\n type: "organization" | "shared_inbox" | "saved_view"\n q?: string\n view_id?: string\n inbox_id?: string | string[]\n}\n```\n\n### `UnreadCountsPayload`\n\n```ts\ntype UnreadCountsPayload = {\n actor: "organization" | "user"\n email_filter?: string[]\n user_groups?: string[]\n scopes: Array<{\n name: string\n type: "organization" | "shared_inbox" | "saved_view"\n q?: string\n view_id?: string\n inbox_id?: string | string[]\n }>\n}\n```\n\n### `UnreadCountsResult`\n\n```ts\ntype UnreadCountsResult = {\n enabled: boolean\n counts: Record<string, {\n unread: number\n drafts?: number\n unassigned?: number\n spam?: number\n }>\n omitted?: string[]\n}\n```\n\n### `UnreadCountBuckets`\n\n```ts\ntype UnreadCountBuckets = {\n unread: number\n drafts?: number\n unassigned?: number\n spam?: number\n}\n```\n\n### `SearchParamsV2`\n\n```ts\ntype SearchParamsV2 = {\n inbox_id?: string | string[]\n q?: string\n view?: {\n folder?: "inbox" | "favorite" | "sent" | "trash" | "spam" | "unassignable" | "draft"\n mailbox?: "organization" | "agent"\n labels?: string[]\n purposes?: string[]\n filters?: "unread" | "resolved" | "trash"[]\n from?: string[]\n to?: string[]\n assigned_to?: string[]\n include_unassigned?: boolean\n date_from_days_ago?: number\n date_to_days_ago?: number\n email_filter?: string[]\n text?: string\n thread_ids?: string[]\n pinned_by?: string\n }\n user_groups?: string[]\n fields?: string[]\n from?: number\n size?: number\n hydrate?: boolean\n include_scores?: boolean\n sort?: string\n highlight?: unknown\n}\n```\n\n### `SearchParams`\n\n```ts\ntype SearchParams = {\n q: string\n from?: number\n size?: number\n hydrate?: boolean\n}\n```\n\n### `SearchIDParams`\n\n```ts\ntype SearchIDParams = {\n view?: {\n folder?: "inbox" | "favorite" | "sent" | "trash" | "spam" | "unassignable" | "draft"\n mailbox?: "organization" | "agent"\n labels?: string[]\n purposes?: string[]\n filters?: "unread" | "resolved" | "trash"[]\n from?: string[]\n to?: string[]\n assigned_to?: string[]\n include_unassigned?: boolean\n date_from_days_ago?: number\n date_to_days_ago?: number\n email_filter?: string[]\n text?: string\n thread_ids?: string[]\n pinned_by?: string\n }\n user_groups?: string[]\n inbox_id?: string | string[]\n q?: string\n}\n```\n\n### `AssigneeWorkloadParams`\n\n```ts\ntype AssigneeWorkloadParams = {\n user_ids: string[]\n}\n```\n\n### `AssigneeWorkload`\n\n```ts\ntype AssigneeWorkload = {\n user_id: string\n open_threads: number\n}\n```\n\n### `AssigneeWorkloadResults`\n\n```ts\ntype AssigneeWorkloadResults = {\n workloads: Array<{\n user_id: string\n open_threads: number\n }>\n}\n```\n\n### `ReadMessagePayload`\n\n```ts\ntype ReadMessagePayload = {\n scopes: "organization" | "user"[]\n}\n```\n\n### `ReadingScope`\n\nWho is marking an item as read or unread.\n\n```ts\ntype ReadingScope = "organization" | "user"\n```\n\n### `ThreadTimeline`\n\n```ts\ntype ThreadTimeline = {\n events: Array<{\n id?: string\n data: {\n type: { ... }\n user_id: { ... }\n organization_id: { ... }\n } | {\n type: { ... }\n user_id: { ... }\n organization_id: { ... }\n } | {\n type: { ... }\n workflow_id?: { ... }\n workflow_name?: { ... }\n } | {\n type: { ... }\n added?: { ... }\n removed?: { ... }\n } | {\n type: { ... }\n label: { ... }\n label_name?: { ... }\n } | {\n type: { ... }\n label: { ... }\n label_name?: { ... }\n } | {\n type: { ... }\n entities?: { ... }\n link_kind?: { ... }\n } | {\n type: { ... }\n entities?: { ... }\n link_kind?: { ... }\n } | {\n type: { ... }\n reply_message_id?: { ... }\n parent_message_id?: { ... }\n } | {\n type: { ... }\n target_inbox_id?: { ... }\n target_inbox_name?: { ... }\n } | {\n type: { ... }\n } | {\n type: { ... }\n }\n timestamp: string\n message_id?: string\n source?: "user" | "automation" | "system"\n automated?: boolean\n actor?: {\n user_id?: { ... }\n email?: { ... }\n }\n automation?: {\n id?: { ... }\n name?: { ... }\n }\n }>\n}\n```\n\n### `ThreadDoneEvent`\n\n```ts\ntype ThreadDoneEvent = {\n type: "THREAD_DONE"\n user_id: string\n organization_id: string\n}\n```\n\n### `ThreadOpenEvent`\n\n```ts\ntype ThreadOpenEvent = {\n type: "THREAD_OPEN"\n user_id: string\n organization_id: string\n}\n```\n\n### `WorkflowStartedEvent`\n\n```ts\ntype WorkflowStartedEvent = {\n type: "WORKFLOW_STARTED"\n workflow_id?: string\n workflow_name?: string\n}\n```\n\n### `ThreadUserAssignedEvent`\n\n```ts\ntype ThreadUserAssignedEvent = {\n type: "THREAD_USER_ASSIGNED"\n added?: string[]\n removed?: string[]\n}\n```\n\n### `MessageLabelAddedEvent`\n\n```ts\ntype MessageLabelAddedEvent = {\n type: "MESSAGE_LABEL_ADDED"\n label: string\n label_name?: string\n}\n```\n\n### `MessageLabelRemovedEvent`\n\n```ts\ntype MessageLabelRemovedEvent = {\n type: "MESSAGE_LABEL_REMOVED"\n label: string\n label_name?: string\n}\n```\n\n### `MessageEntityLinkedEvent`\n\n```ts\ntype MessageEntityLinkedEvent = {\n type: "MESSAGE_ENTITY_LINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n}\n```\n\n### `MessageEntityUnlinkedEvent`\n\n```ts\ntype MessageEntityUnlinkedEvent = {\n type: "MESSAGE_ENTITY_UNLINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n}\n```\n\n### `MessageAutoReplySentEvent`\n\n```ts\ntype MessageAutoReplySentEvent = {\n type: "MESSAGE_AUTO_REPLY_SENT"\n reply_message_id?: string\n parent_message_id?: string\n}\n```\n\n### `ThreadMovedToInboxEvent`\n\n```ts\ntype ThreadMovedToInboxEvent = {\n type: "THREAD_MOVED_TO_INBOX"\n target_inbox_id?: string\n target_inbox_name?: string\n}\n```\n\n### `ThreadTrashedEvent`\n\n```ts\ntype ThreadTrashedEvent = {\n type: "THREAD_TRASHED"\n}\n```\n\n### `ThreadRestoredEvent`\n\n```ts\ntype ThreadRestoredEvent = {\n type: "THREAD_RESTORED"\n}\n```\n\n### `TimelineLinkedEntity`\n\n```ts\ntype TimelineLinkedEntity = {\n entity_id: string\n schema?: string\n}\n```\n\n### `TimelineActor`\n\n```ts\ntype TimelineActor = {\n user_id?: string\n email?: string\n}\n```\n\n### `TimelineEventData`\n\n```ts\ntype TimelineEventData = {\n type: "THREAD_DONE"\n user_id: string\n organization_id: string\n} | {\n type: "THREAD_OPEN"\n user_id: string\n organization_id: string\n} | {\n type: "WORKFLOW_STARTED"\n workflow_id?: string\n workflow_name?: string\n} | {\n type: "THREAD_USER_ASSIGNED"\n added?: string[]\n removed?: string[]\n} | {\n type: "MESSAGE_LABEL_ADDED"\n label: string\n label_name?: string\n} | {\n type: "MESSAGE_LABEL_REMOVED"\n label: string\n label_name?: string\n} | {\n type: "MESSAGE_ENTITY_LINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n} | {\n type: "MESSAGE_ENTITY_UNLINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n} | {\n type: "MESSAGE_AUTO_REPLY_SENT"\n reply_message_id?: string\n parent_message_id?: string\n} | {\n type: "THREAD_MOVED_TO_INBOX"\n target_inbox_id?: string\n target_inbox_name?: string\n} | {\n type: "THREAD_TRASHED"\n} | {\n type: "THREAD_RESTORED"\n}\n```\n\n### `TimelineEvent`\n\n```ts\ntype TimelineEvent = {\n id?: string\n data: {\n type: "THREAD_DONE"\n user_id: string\n organization_id: string\n } | {\n type: "THREAD_OPEN"\n user_id: string\n organization_id: string\n } | {\n type: "WORKFLOW_STARTED"\n workflow_id?: string\n workflow_name?: string\n } | {\n type: "THREAD_USER_ASSIGNED"\n added?: string[]\n removed?: string[]\n } | {\n type: "MESSAGE_LABEL_ADDED"\n label: string\n label_name?: string\n } | {\n type: "MESSAGE_LABEL_REMOVED"\n label: string\n label_name?: string\n } | {\n type: "MESSAGE_ENTITY_LINKED"\n entities?: Array<{\n entity_id: { ... }\n schema?: { ... }\n }>\n link_kind?: "manual" | "auto"\n } | {\n type: "MESSAGE_ENTITY_UNLINKED"\n entities?: Array<{\n entity_id: { ... }\n schema?: { ... }\n }>\n link_kind?: "manual" | "auto"\n } | {\n type: "MESSAGE_AUTO_REPLY_SENT"\n reply_message_id?: string\n parent_message_id?: string\n } | {\n type: "THREAD_MOVED_TO_INBOX"\n target_inbox_id?: string\n target_inbox_name?: string\n } | {\n type: "THREAD_TRASHED"\n } | {\n type: "THREAD_RESTORED"\n }\n timestamp: string\n message_id?: string\n source?: "user" | "automation" | "system"\n automated?: boolean\n actor?: {\n user_id?: string\n email?: string\n }\n automation?: {\n id?: string\n name?: string\n }\n}\n```\n\n### `BulkActionsPayloadWithScopes`\n\n```ts\ntype BulkActionsPayloadWithScopes = {\n ids: string[]\n assign_to?: string[]\n inbox_id?: string\n scopes?: "organization" | "user"[]\n}\n```\n\n### `BulkActionsPayload`\n\n```ts\ntype BulkActionsPayload = {\n ids: string[]\n}\n```\n\n### `FieldsParam`\n\nList of entity fields to include or exclude in the response\n\nUse ! to exclude fields, e.g. `!_id` to exclude the `_id` field.\n\nGlobbing and globstart (**) is supported for nested fields.\n\n\n```ts\ntype FieldsParam = string[]\n```\n';
5
-
6
-
7
- exports.default = message_default;
@@ -1,7 +0,0 @@
1
- import "./chunk-YPSWSI3M.js";
2
-
3
- // src/docs/message.json
4
- var message_default = '# Message API\n\n- **Base URL:** `https://message.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/message](https://docs.epilot.io/api/message)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.message.sendMessage(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/message\'\n\nconst messageClient = getClient()\nauthorize(messageClient, () => \'<token>\')\nconst { data } = await messageClient.sendMessage(...)\n```\n\n## Operations\n\n**Messages**\n- [`sendMessage`](#sendmessage)\n- [`updateMessage`](#updatemessage)\n- [`getMessage`](#getmessage)\n- [`deleteMessage`](#deletemessage)\n- [`getMessageEml`](#getmessageeml)\n- [`searchMessages`](#searchmessages)\n- [`trashMessage`](#trashmessage)\n- [`untrashMessage`](#untrashmessage)\n- [`markReadMessage`](#markreadmessage)\n- [`markReadMessageV2`](#markreadmessagev2)\n- [`markUnreadMessage`](#markunreadmessage)\n- [`getUnread`](#getunread)\n- [`getUnreadCounts`](#getunreadcounts)\n- [`markUnreadMessageV2`](#markunreadmessagev2)\n- [`spamMessage`](#spammessage)\n- [`unspamMessage`](#unspammessage)\n- [`getMessageV2`](#getmessagev2)\n\n**Threads**\n- [`searchThreads`](#searchthreads)\n- [`searchThreadsV2`](#searchthreadsv2)\n- [`searchIds`](#searchids)\n- [`getAssigneeWorkload`](#getassigneeworkload)\n- [`updateThread`](#updatethread)\n- [`deleteThread`](#deletethread)\n- [`moveThread`](#movethread)\n- [`markThreadAsDone`](#markthreadasdone)\n- [`markThreadAsOpen`](#markthreadasopen)\n- [`getThreadTimeline`](#getthreadtimeline)\n- [`trashThread`](#trashthread)\n- [`untrashThread`](#untrashthread)\n- [`spamThread`](#spamthread)\n- [`unspamThread`](#unspamthread)\n- [`bulkMoveThreads`](#bulkmovethreads)\n- [`bulkAssignThreads`](#bulkassignthreads)\n- [`threadBulkActionsRead`](#threadbulkactionsread)\n- [`threadBulkActionsUnread`](#threadbulkactionsunread)\n- [`threadBulkActionsFavorite`](#threadbulkactionsfavorite)\n- [`threadBulkActionsUnfavorite`](#threadbulkactionsunfavorite)\n- [`threadBulkActionsTrash`](#threadbulkactionstrash)\n- [`threadBulkActionsUntrash`](#threadbulkactionsuntrash)\n- [`threadBulkActionsDelete`](#threadbulkactionsdelete)\n- [`threadBulkActionsDone`](#threadbulkactionsdone)\n- [`threadBulkActionsOpen`](#threadbulkactionsopen)\n- [`markReadThread`](#markreadthread)\n- [`markReadThreadV2`](#markreadthreadv2)\n- [`markUnreadThread`](#markunreadthread)\n- [`markUnreadThreadV2`](#markunreadthreadv2)\n- [`assignThread`](#assignthread)\n- [`unassignThread`](#unassignthread)\n- [`assignUsers`](#assignusers)\n- [`assignUsersV2`](#assignusersv2)\n- [`pinThread`](#pinthread)\n- [`unpinThread`](#unpinthread)\n\n**Drafts**\n- [`createDraft`](#createdraft)\n- [`sendDraft`](#senddraft)\n\n**Schemas**\n- [`ErrorResponse`](#errorresponse)\n- [`MoveThreadPayload`](#movethreadpayload)\n- [`BaseEntity`](#baseentity)\n- [`Thread`](#thread)\n- [`Message`](#message)\n- [`MessageV2`](#messagev2)\n- [`Address`](#address)\n- [`AttachmentsRelation`](#attachmentsrelation)\n- [`File`](#file)\n- [`MessageRequestParams`](#messagerequestparams)\n- [`ThreadView`](#threadview)\n- [`UnreadCountScope`](#unreadcountscope)\n- [`UnreadCountsPayload`](#unreadcountspayload)\n- [`UnreadCountsResult`](#unreadcountsresult)\n- [`UnreadCountBuckets`](#unreadcountbuckets)\n- [`SearchParamsV2`](#searchparamsv2)\n- [`SearchParams`](#searchparams)\n- [`SearchIDParams`](#searchidparams)\n- [`AssigneeWorkloadParams`](#assigneeworkloadparams)\n- [`AssigneeWorkload`](#assigneeworkload)\n- [`AssigneeWorkloadResults`](#assigneeworkloadresults)\n- [`ReadMessagePayload`](#readmessagepayload)\n- [`ReadingScope`](#readingscope)\n- [`ThreadTimeline`](#threadtimeline)\n- [`ThreadDoneEvent`](#threaddoneevent)\n- [`ThreadOpenEvent`](#threadopenevent)\n- [`WorkflowStartedEvent`](#workflowstartedevent)\n- [`ThreadUserAssignedEvent`](#threaduserassignedevent)\n- [`MessageLabelAddedEvent`](#messagelabeladdedevent)\n- [`MessageLabelRemovedEvent`](#messagelabelremovedevent)\n- [`MessageEntityLinkedEvent`](#messageentitylinkedevent)\n- [`MessageEntityUnlinkedEvent`](#messageentityunlinkedevent)\n- [`MessageAutoReplySentEvent`](#messageautoreplysentevent)\n- [`ThreadMovedToInboxEvent`](#threadmovedtoinboxevent)\n- [`ThreadTrashedEvent`](#threadtrashedevent)\n- [`ThreadRestoredEvent`](#threadrestoredevent)\n- [`TimelineLinkedEntity`](#timelinelinkedentity)\n- [`TimelineActor`](#timelineactor)\n- [`TimelineEventData`](#timelineeventdata)\n- [`TimelineEvent`](#timelineevent)\n- [`BulkActionsPayloadWithScopes`](#bulkactionspayloadwithscopes)\n- [`BulkActionsPayload`](#bulkactionspayload)\n- [`FieldsParam`](#fieldsparam)\n\n### `sendMessage`\n\nSend an email message\n\n`POST /v1/message/messages`\n\n```ts\nconst { data } = await client.sendMessage(\n {\n do_not_create_entities: true,\n },\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{}\n```\n\n</details>\n\n---\n\n### `updateMessage`\n\nUpdate message metadata\n\n`PUT /v1/message/messages`\n\n```ts\nconst { data } = await client.updateMessage()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `getMessage`\n\nGet an email message by id\n\n`GET /v1/message/messages/{id}`\n\n```ts\nconst { data } = await client.getMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `deleteMessage`\n\nImmediately and permanently delete a message. This operation cannot be undone.\n\n`DELETE /v1/message/messages/{id}`\n\n```ts\nconst { data } = await client.deleteMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getMessageEml`\n\nDownload a message as an EML file.\nReturns a 302 redirect to a pre-signed S3 URL where the EML file can be downloaded.\n\n`GET /v1/message/messages/{id}/eml`\n\n```ts\nconst { data } = await client.getMessageEml({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `searchMessages`\n\nSearch Messages\n\n`POST /v1/message/messages:search`\n\n```ts\nconst { data } = await client.searchMessages(\n null,\n {\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\',\n view: {\n folder: \'inbox\',\n mailbox: \'organization\',\n labels: [\'string\'],\n purposes: [\'string\'],\n filters: [\'unread\'],\n from: [\'string\'],\n to: [\'string\'],\n assigned_to: [\'string\'],\n include_unassigned: true,\n date_from_days_ago: 0,\n date_to_days_ago: 0,\n email_filter: [\'string\'],\n text: \'string\',\n thread_ids: [\'string\'],\n pinned_by: \'string\'\n },\n user_groups: [\'string\'],\n fields: [\'_id\', \'_title\', \'first_name\', \'account\', \'!account.*._files\', \'**._product\'],\n from: 0,\n size: 10,\n hydrate: false,\n include_scores: false,\n sort: \'string\',\n highlight: {}\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `trashMessage`\n\nMove a message to the trash\n\n`POST /v1/message/messages/{id}/trash`\n\n```ts\nconst { data } = await client.trashMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `untrashMessage`\n\nRestore a trashed message\n\n`POST /v1/message/messages/{id}/untrash`\n\n```ts\nconst { data } = await client.untrashMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markReadMessage`\n\nMark message as read\n\n`POST /v1/message/messages/{id}/read`\n\n```ts\nconst { data } = await client.markReadMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markReadMessageV2`\n\nMark message as read within a scope\n\n`POST /v2/message/messages/{id}/read`\n\n```ts\nconst { data } = await client.markReadMessageV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `markUnreadMessage`\n\nMark message as unread\n\n`POST /v1/message/messages/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getUnread`\n\nGet all unread messages by actor\n\n`GET /v1/message/messages/unread/{actor}`\n\n```ts\nconst { data } = await client.getUnread({\n actor: \'example\',\n email_filter: [\'...\'],\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "count": 14,\n "unread": 0,\n "drafts": 12,\n "unassigned": 1,\n "spam": 3\n}\n```\n\n</details>\n\n---\n\n### `getUnreadCounts`\n\nUnread counts for several named scopes in one request.\n\n`POST /v1/message/unread:counts`\n\n```ts\nconst { data } = await client.getUnreadCounts(\n null,\n {\n actor: \'organization\',\n email_filter: [\'string\'],\n user_groups: [\'string\'],\n scopes: [\n {\n name: \'inbox-support\',\n type: \'organization\',\n q: \'_tags.keyword:inbox AND !_tags.keyword:trash\',\n view_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "enabled": true,\n "counts": {},\n "omitted": ["string"]\n}\n```\n\n</details>\n\n---\n\n### `markUnreadMessageV2`\n\nMark message as unread within a scope\n\n`POST /v2/message/messages/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadMessageV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `searchThreads`\n\nSearch for threads of email messages.\n\n`POST /v1/message/threads:search`\n\n```ts\nconst { data } = await client.searchThreads(\n null,\n {\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\',\n from: 0,\n size: 10,\n hydrate: false\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "topic": "CUSTOMER_MESSAGE",\n "assigned_to": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "done": false,\n "latest_message": {},\n "latest_trash_message": {},\n "latest_message_at": "2024-02-10T09:14:31.990Z"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `searchThreadsV2`\n\nSearch for threads of email messages.\n\n`POST /v2/message/threads:search`\n\n```ts\nconst { data } = await client.searchThreadsV2(\n null,\n {\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\',\n view: {\n folder: \'inbox\',\n mailbox: \'organization\',\n labels: [\'string\'],\n purposes: [\'string\'],\n filters: [\'unread\'],\n from: [\'string\'],\n to: [\'string\'],\n assigned_to: [\'string\'],\n include_unassigned: true,\n date_from_days_ago: 0,\n date_to_days_ago: 0,\n email_filter: [\'string\'],\n text: \'string\',\n thread_ids: [\'string\'],\n pinned_by: \'string\'\n },\n user_groups: [\'string\'],\n fields: [\'_id\', \'_title\', \'first_name\', \'account\', \'!account.*._files\', \'**._product\'],\n from: 0,\n size: 10,\n hydrate: false,\n include_scores: false,\n sort: \'string\',\n highlight: {}\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "topic": "CUSTOMER_MESSAGE",\n "assigned_to": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "done": false,\n "latest_message": {},\n "latest_trash_message": {},\n "latest_message_at": "2024-02-10T09:14:31.990Z"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `searchIds`\n\nSearch threads and return all id\'s\n\n`POST /v1/message/threads:searchIds`\n\n```ts\nconst { data } = await client.searchIds(\n null,\n {\n view: {\n folder: \'inbox\',\n mailbox: \'organization\',\n labels: [\'string\'],\n purposes: [\'string\'],\n filters: [\'unread\'],\n from: [\'string\'],\n to: [\'string\'],\n assigned_to: [\'string\'],\n include_unassigned: true,\n date_from_days_ago: 0,\n date_to_days_ago: 0,\n email_filter: [\'string\'],\n text: \'string\',\n thread_ids: [\'string\'],\n pinned_by: \'string\'\n },\n user_groups: [\'string\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n q: \'subject:"Request for solar panel price" AND _tags:INBOX\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 14,\n "results": ["string"]\n}\n```\n\n</details>\n\n---\n\n### `getAssigneeWorkload`\n\nReturn the open-thread workload for a set of user ids.\n\n`POST /v2/message/threads:workload`\n\n```ts\nconst { data } = await client.getAssigneeWorkload(\n null,\n {\n user_ids: [\'11000902\', \'11001053\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "workloads": [\n {\n "user_id": "11000902",\n "open_threads": 2\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `updateThread`\n\nModify thread metadata\n\n`PUT /v1/message/threads`\n\n```ts\nconst { data } = await client.updateThread()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "topic": "CUSTOMER_MESSAGE",\n "assigned_to": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "done": false,\n "latest_message": {\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {}\n ],\n "cc": [\n {}\n ],\n "bcc": [\n {}\n ],\n "file": {\n "$relation": []\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n },\n "latest_trash_message": {\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {}\n ],\n "cc": [\n {}\n ],\n "bcc": [\n {}\n ],\n "file": {\n "$relation": []\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n },\n "latest_message_at": "2024-02-10T09:14:31.990Z"\n}\n```\n\n</details>\n\n---\n\n### `deleteThread`\n\nImmediately and permanently delete a thread. This operation cannot be undone.\n\n`DELETE /v1/message/threads/{id}`\n\n```ts\nconst { data } = await client.deleteThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `moveThread`\n\nMove thread to a different Inbox\n\n`POST /v1/message/threads/{id}:move`\n\n```ts\nconst { data } = await client.moveThread(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\'\n },\n)\n```\n\n---\n\n### `markThreadAsDone`\n\nMark thread as done\n\n`POST /v1/message/threads/{id}:markAsDone`\n\n```ts\nconst { data } = await client.markThreadAsDone({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markThreadAsOpen`\n\nMark thread as open\n\n`POST /v1/message/threads/{id}:markAsOpen`\n\n```ts\nconst { data } = await client.markThreadAsOpen({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getThreadTimeline`\n\nGet thread timeline\n\n`GET /v1/message/threads/{id}/timeline`\n\n```ts\nconst { data } = await client.getThreadTimeline({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "events": [\n {\n "id": "string",\n "data": {\n "type": "THREAD_DONE",\n "user_id": "123",\n "organization_id": "456"\n },\n "timestamp": "2024-01-01T00:00:00.000Z",\n "message_id": "string",\n "source": "user",\n "automated": true,\n "actor": {\n "user_id": "string",\n "email": "string"\n },\n "automation": {\n "id": "string",\n "name": "string"\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `trashThread`\n\nMove a thread to trash\n\n`POST /v1/message/threads/{id}/trash`\n\n```ts\nconst { data } = await client.trashThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `untrashThread`\n\nRestore a trashed thread\n\n`POST /v1/message/threads/{id}/untrash`\n\n```ts\nconst { data } = await client.untrashThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `spamThread`\n\nMark a thread as spam\n\n`POST /v1/message/threads/{id}/spam`\n\n```ts\nconst { data } = await client.spamThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `unspamThread`\n\nRemove spam marking from a thread\n\n`POST /v1/message/threads/{id}/unspam`\n\n```ts\nconst { data } = await client.unspamThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `spamMessage`\n\nMark a single message as spam. Also marks the parent thread as spam if all messages in the thread are spam.\n\n`POST /v1/message/messages/{id}/spam`\n\n```ts\nconst { data } = await client.spamMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `unspamMessage`\n\nRemove spam marking from a single message. Also removes spam from the parent thread if no other messages are spam.\n\n`POST /v1/message/messages/{id}/unspam`\n\n```ts\nconst { data } = await client.unspamMessage({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `bulkMoveThreads`\n\nMove many threads to a different inbox\n\n`POST /v1/message/threads/bulk:move`\n\n```ts\nconst { data } = await client.bulkMoveThreads(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `bulkAssignThreads`\n\nAssign many threads\n\n`POST /v1/message/threads/bulk:assign`\n\n```ts\nconst { data } = await client.bulkAssignThreads(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsRead`\n\nPerform a bulk action of marking an array of thread ids as read\n\n`POST /v1/message/threads/bulk:read`\n\n```ts\nconst { data } = await client.threadBulkActionsRead(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsUnread`\n\nPerform a bulk action of marking an array of thread ids as unread\n\n`POST /v1/message/threads/bulk:unread`\n\n```ts\nconst { data } = await client.threadBulkActionsUnread(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\'],\n assign_to: [\'206801\'],\n inbox_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsFavorite`\n\nPerform a bulk action of marking an array of thread ids favorite\n\n`POST /v1/message/threads/bulk:favorite`\n\n```ts\nconst { data } = await client.threadBulkActionsFavorite(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsUnfavorite`\n\nPerform a bulk action of marking an array of thread ids unfavorited\n\n`POST /v1/message/threads/bulk:unfavorite`\n\n```ts\nconst { data } = await client.threadBulkActionsUnfavorite(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsTrash`\n\nPerform a bulk action of trashing an array of threads\n\n`POST /v1/message/threads/bulk:trash`\n\n```ts\nconst { data } = await client.threadBulkActionsTrash(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsUntrash`\n\nPerform a bulk action of untrashing an array of threads\n\n`POST /v1/message/threads/bulk:untrash`\n\n```ts\nconst { data } = await client.threadBulkActionsUntrash(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsDelete`\n\nPerforms a bulk permanent delete for all threads\n\n`POST /v1/message/threads/bulk:delete`\n\n```ts\nconst { data } = await client.threadBulkActionsDelete(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsDone`\n\nPerform a bulk action of marking an array of threads as done\n\n`POST /v1/message/threads/bulk:done`\n\n```ts\nconst { data } = await client.threadBulkActionsDone(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `threadBulkActionsOpen`\n\nPerform a bulk action of marking an array of threads as open\n\n`POST /v1/message/threads/bulk:open`\n\n```ts\nconst { data } = await client.threadBulkActionsOpen(\n null,\n {\n ids: [\'6b299eda-4018-4554-8965-c4b5598e6531\']\n },\n)\n```\n\n---\n\n### `markReadThread`\n\nMark thread as read\n\n`POST /v1/message/threads/{id}/read`\n\n```ts\nconst { data } = await client.markReadThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markReadThreadV2`\n\nMark thread as read within a scope\n\n`POST /v2/message/threads/{id}/read`\n\n```ts\nconst { data } = await client.markReadThreadV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `markUnreadThread`\n\nMark thread as unread\n\n`POST /v1/message/threads/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `markUnreadThreadV2`\n\nMark thread as unread within a scope\n\n`POST /v2/message/threads/{id}/unread`\n\n```ts\nconst { data } = await client.markUnreadThreadV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n scopes: [\'organization\', \'user\']\n },\n)\n```\n\n---\n\n### `assignThread`\n\nAssign thread to entities\n\n`POST /v1/message/threads/{id}/assign`\n\n```ts\nconst { data } = await client.assignThread(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n [\n {\n slug: \'contact\',\n entity_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\',\n org_id: \'206801\',\n is_main_entity: true\n }\n ],\n)\n```\n\n---\n\n### `unassignThread`\n\nUnassign thread from entities\n\n`POST /v1/message/threads/{id}/unassign`\n\n```ts\nconst { data } = await client.unassignThread(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n unlink_mapped_entities: true,\n },\n [\n {\n slug: \'contact\',\n entity_id: \'3f34ce73-089c-4d45-a5ee-c161234e41c3\'\n }\n ],\n)\n```\n\n---\n\n### `assignUsers`\n\nAssign users to thread for receiving notifications.\nThe operation replaces all existing assigned users in thread.\n\n`POST /v1/message/threads/{id}/assign:users`\n\n```ts\nconst { data } = await client.assignUsers(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n assigned_to: [\'206801\']\n },\n)\n```\n\n---\n\n### `assignUsersV2`\n\nAssign users to thread.\n\n`POST /v2/message/threads/{id}/assign:users`\n\n```ts\nconst { data } = await client.assignUsersV2(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n add: [\'206801\'],\n remove: [\'206801\']\n },\n)\n```\n\n---\n\n### `pinThread`\n\nPin a single thread\n\n`POST /v1/message/threads/{id}:pin`\n\n```ts\nconst { data } = await client.pinThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `unpinThread`\n\nUnpin a single thread\n\n`DELETE /v1/message/threads/{id}:pin`\n\n```ts\nconst { data } = await client.unpinThread({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `createDraft`\n\nCreate a new draft\n\n`POST /v1/message/drafts`\n\n```ts\nconst { data } = await client.createDraft(\n null,\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `sendDraft`\n\nSend the existing draft to the recipients\n\n`POST /v1/message/drafts:send`\n\n```ts\nconst { data } = await client.sendDraft()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n### `getMessageV2`\n\n- Fetches message by ID\n- If the message html is omitted on the entity, then it keeps the content on the message as a signed url\n {\n ...\n _id: "4d74976d-fb64-47fd-85e2-65eea140f5eb",\n _schem\n\n`GET /v2/message/messages/{id}`\n\n```ts\nconst { data } = await client.getMessageV2({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "html_omitted": false,\n "html_download_url": "https://s3.eu-central-1.amazonaws.com/epilot-attachments/3f34ce73-089c-4d45-a5ee-c161234e41c3/3f34ce73-089c-4d45-a5ee-c161234e41c3.html",\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "string",\n "_org": "206801",\n "_schema": "message",\n "_tags": ["pricing", "INBOX"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-10T09:14:31.990Z",\n "message_id": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com>",\n "sender": "206801",\n "updated_by": "206801",\n "subject": "Request for solar panel price",\n "html": "<div>We at ABC GmbH would like to request a price quote for the solar panel.</div>",\n "text": "We at ABC GmbH would like to request a price quote for the solar panel.",\n "from": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "reply_to": {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n },\n "to": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "cc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "bcc": [\n {\n "name": "epilot",\n "address": "messaging@epilot.cloud",\n "email_type": "INTERNAL",\n "send_status": "SEND",\n "send_error": {}\n }\n ],\n "file": {\n "$relation": [\n {\n "entity_id": "f820ce3b-07b0-45ae-bcc6-babb2f53f79f",\n "filename": "Produktinformationen_epilot360_Double_Opt_in.pdf",\n "is_message_attachment": true,\n "may_be_signature_attachment": true,\n "cid": "fb222496-a1a5-4639-94f2-07b5e35e4068",\n "inline": false,\n "send_as_link": false,\n "save_to_entity": true\n }\n ]\n },\n "references": "<0102017b97a502f8-a67f01c2-68cc-4928-b91b-45853f34e259-000000@eu-west-1.amazonses.com> <CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "in_reply_to": "<CALHgQpziyxW9NaFUs+nRMykzr6Ljq6vjq4WO9SaihAuMasuDyg@mail.gmail.com>",\n "user_read_message": ["206801", "200109"],\n "org_read_message": ["789372", "210291"],\n "send_status": ["SEND"],\n "type": "SENT",\n "template_id": "3f34ce73-089c-4d45-a5ee-c161234e41c3"\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `ErrorResponse`\n\n```ts\ntype ErrorResponse = {\n error?: string\n}\n```\n\n### `MoveThreadPayload`\n\n```ts\ntype MoveThreadPayload = {\n inbox_id: string\n}\n```\n\n### `BaseEntity`\n\n```ts\ntype BaseEntity = {\n _id: string\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n\n### `Thread`\n\nThread properties depend on API caller as it\'s not pre-defined. We do recommend having at least `topic` property for categorizing.\n\n```ts\ntype Thread = {\n topic: string\n assigned_to?: string[]\n org_read_message?: string[]\n done?: boolean\n latest_message?: {\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n reply_to?: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n to?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n cc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n bcc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n file?: {\n $relation?: { ... }\n }\n references?: string\n in_reply_to?: string\n user_read_message?: string[]\n org_read_message?: string[]\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"[]\n type?: "SENT" | "RECEIVED"\n template_id?: string\n }\n latest_trash_message?: {\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n reply_to?: {\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }\n to?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n cc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n bcc?: Array<{\n name?: { ... }\n address: { ... }\n email_type?: { ... }\n send_status?: { ... }\n send_error?: { ... }\n }>\n // ...\n}\n```\n\n### `Message`\n\n```ts\ntype Message = {\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n reply_to?: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n to?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n cc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n bcc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n file?: {\n $relation?: Array<{\n entity_id: { ... }\n filename?: { ... }\n is_message_attachment?: { ... }\n may_be_signature_attachment?: { ... }\n cid?: { ... }\n inline?: { ... }\n send_as_link?: { ... }\n save_to_entity?: { ... }\n }>\n }\n references?: string\n in_reply_to?: string\n user_read_message?: string[]\n org_read_message?: string[]\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"[]\n type?: "SENT" | "RECEIVED"\n template_id?: string\n}\n```\n\n### `MessageV2`\n\n```ts\ntype MessageV2 = {\n _id: string\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n message_id?: string\n sender?: string\n updated_by?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n reply_to?: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n to?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n cc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n bcc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n file?: {\n $relation?: Array<{\n entity_id: { ... }\n filename?: { ... }\n is_message_attachment?: { ... }\n may_be_signature_attachment?: { ... }\n cid?: { ... }\n inline?: { ... }\n send_as_link?: { ... }\n save_to_entity?: { ... }\n }>\n }\n references?: string\n in_reply_to?: string\n user_read_message?: string[]\n org_read_message?: string[]\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"[]\n type?: "SENT" | "RECEIVED"\n template_id?: string\n}\n```\n\n### `Address`\n\n```ts\ntype Address = {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n}\n```\n\n### `AttachmentsRelation`\n\nMessage attachments\n\n```ts\ntype AttachmentsRelation = {\n $relation?: Array<{\n entity_id: string\n filename?: string\n is_message_attachment?: boolean\n may_be_signature_attachment?: boolean\n cid?: string\n inline?: boolean\n send_as_link?: boolean\n save_to_entity?: boolean\n }>\n}\n```\n\n### `File`\n\n```ts\ntype File = {\n entity_id: string\n filename?: string\n is_message_attachment?: boolean\n may_be_signature_attachment?: boolean\n cid?: string\n inline?: boolean\n send_as_link?: boolean\n save_to_entity?: boolean\n}\n```\n\n### `MessageRequestParams`\n\n```ts\ntype MessageRequestParams = {\n complete_thread?: boolean\n mark_thread_as_read?: boolean\n thread?: {\n topic: string\n assigned_to?: string[]\n }\n parent_id?: string\n subject: string\n html?: string\n text?: string\n from: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n reply_to?: {\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }\n to?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n cc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n bcc?: Array<{\n name?: string\n address: string\n email_type?: "INTERNAL" | "EXTERNAL" | "PARTNER"\n send_status?: "SEND" | "DELIVERY" | "REJECT" | "COMPLAINT" | "BOUNCE" | "ERROR"\n send_error?: object\n }>\n file?: {\n $relation?: Array<{\n entity_id: { ... }\n filename?: { ... }\n is_message_attachment?: { ... }\n may_be_signature_attachment?: { ... }\n cid?: { ... }\n inline?: { ... }\n send_as_link?: { ... }\n save_to_entity?: { ... }\n }>\n }\n template_id?: string\n source?: "manual" | "automation" | "workflow" | "partner" | "bulk" | "system"\n}\n```\n\n### `ThreadView`\n\nA central-inbox view, described structurally so the server compiles the query for it. Both the\nthread list and the unread count for a view are compiled from the same description, so the two\ncannot disagree about what the view means.\n\nEvery field is optional and an omitted field adds no condition, so\n\n```ts\ntype ThreadView = {\n folder?: "inbox" | "favorite" | "sent" | "trash" | "spam" | "unassignable" | "draft"\n mailbox?: "organization" | "agent"\n labels?: string[]\n purposes?: string[]\n filters?: "unread" | "resolved" | "trash"[]\n from?: string[]\n to?: string[]\n assigned_to?: string[]\n include_unassigned?: boolean\n date_from_days_ago?: number\n date_to_days_ago?: number\n email_filter?: string[]\n text?: string\n thread_ids?: string[]\n pinned_by?: string\n}\n```\n\n### `UnreadCountScope`\n\n```ts\ntype UnreadCountScope = {\n name: string\n type: "organization" | "shared_inbox" | "saved_view"\n q?: string\n view_id?: string\n inbox_id?: string | string[]\n}\n```\n\n### `UnreadCountsPayload`\n\n```ts\ntype UnreadCountsPayload = {\n actor: "organization" | "user"\n email_filter?: string[]\n user_groups?: string[]\n scopes: Array<{\n name: string\n type: "organization" | "shared_inbox" | "saved_view"\n q?: string\n view_id?: string\n inbox_id?: string | string[]\n }>\n}\n```\n\n### `UnreadCountsResult`\n\n```ts\ntype UnreadCountsResult = {\n enabled: boolean\n counts: Record<string, {\n unread: number\n drafts?: number\n unassigned?: number\n spam?: number\n }>\n omitted?: string[]\n}\n```\n\n### `UnreadCountBuckets`\n\n```ts\ntype UnreadCountBuckets = {\n unread: number\n drafts?: number\n unassigned?: number\n spam?: number\n}\n```\n\n### `SearchParamsV2`\n\n```ts\ntype SearchParamsV2 = {\n inbox_id?: string | string[]\n q?: string\n view?: {\n folder?: "inbox" | "favorite" | "sent" | "trash" | "spam" | "unassignable" | "draft"\n mailbox?: "organization" | "agent"\n labels?: string[]\n purposes?: string[]\n filters?: "unread" | "resolved" | "trash"[]\n from?: string[]\n to?: string[]\n assigned_to?: string[]\n include_unassigned?: boolean\n date_from_days_ago?: number\n date_to_days_ago?: number\n email_filter?: string[]\n text?: string\n thread_ids?: string[]\n pinned_by?: string\n }\n user_groups?: string[]\n fields?: string[]\n from?: number\n size?: number\n hydrate?: boolean\n include_scores?: boolean\n sort?: string\n highlight?: unknown\n}\n```\n\n### `SearchParams`\n\n```ts\ntype SearchParams = {\n q: string\n from?: number\n size?: number\n hydrate?: boolean\n}\n```\n\n### `SearchIDParams`\n\n```ts\ntype SearchIDParams = {\n view?: {\n folder?: "inbox" | "favorite" | "sent" | "trash" | "spam" | "unassignable" | "draft"\n mailbox?: "organization" | "agent"\n labels?: string[]\n purposes?: string[]\n filters?: "unread" | "resolved" | "trash"[]\n from?: string[]\n to?: string[]\n assigned_to?: string[]\n include_unassigned?: boolean\n date_from_days_ago?: number\n date_to_days_ago?: number\n email_filter?: string[]\n text?: string\n thread_ids?: string[]\n pinned_by?: string\n }\n user_groups?: string[]\n inbox_id?: string | string[]\n q?: string\n}\n```\n\n### `AssigneeWorkloadParams`\n\n```ts\ntype AssigneeWorkloadParams = {\n user_ids: string[]\n}\n```\n\n### `AssigneeWorkload`\n\n```ts\ntype AssigneeWorkload = {\n user_id: string\n open_threads: number\n}\n```\n\n### `AssigneeWorkloadResults`\n\n```ts\ntype AssigneeWorkloadResults = {\n workloads: Array<{\n user_id: string\n open_threads: number\n }>\n}\n```\n\n### `ReadMessagePayload`\n\n```ts\ntype ReadMessagePayload = {\n scopes: "organization" | "user"[]\n}\n```\n\n### `ReadingScope`\n\nWho is marking an item as read or unread.\n\n```ts\ntype ReadingScope = "organization" | "user"\n```\n\n### `ThreadTimeline`\n\n```ts\ntype ThreadTimeline = {\n events: Array<{\n id?: string\n data: {\n type: { ... }\n user_id: { ... }\n organization_id: { ... }\n } | {\n type: { ... }\n user_id: { ... }\n organization_id: { ... }\n } | {\n type: { ... }\n workflow_id?: { ... }\n workflow_name?: { ... }\n } | {\n type: { ... }\n added?: { ... }\n removed?: { ... }\n } | {\n type: { ... }\n label: { ... }\n label_name?: { ... }\n } | {\n type: { ... }\n label: { ... }\n label_name?: { ... }\n } | {\n type: { ... }\n entities?: { ... }\n link_kind?: { ... }\n } | {\n type: { ... }\n entities?: { ... }\n link_kind?: { ... }\n } | {\n type: { ... }\n reply_message_id?: { ... }\n parent_message_id?: { ... }\n } | {\n type: { ... }\n target_inbox_id?: { ... }\n target_inbox_name?: { ... }\n } | {\n type: { ... }\n } | {\n type: { ... }\n }\n timestamp: string\n message_id?: string\n source?: "user" | "automation" | "system"\n automated?: boolean\n actor?: {\n user_id?: { ... }\n email?: { ... }\n }\n automation?: {\n id?: { ... }\n name?: { ... }\n }\n }>\n}\n```\n\n### `ThreadDoneEvent`\n\n```ts\ntype ThreadDoneEvent = {\n type: "THREAD_DONE"\n user_id: string\n organization_id: string\n}\n```\n\n### `ThreadOpenEvent`\n\n```ts\ntype ThreadOpenEvent = {\n type: "THREAD_OPEN"\n user_id: string\n organization_id: string\n}\n```\n\n### `WorkflowStartedEvent`\n\n```ts\ntype WorkflowStartedEvent = {\n type: "WORKFLOW_STARTED"\n workflow_id?: string\n workflow_name?: string\n}\n```\n\n### `ThreadUserAssignedEvent`\n\n```ts\ntype ThreadUserAssignedEvent = {\n type: "THREAD_USER_ASSIGNED"\n added?: string[]\n removed?: string[]\n}\n```\n\n### `MessageLabelAddedEvent`\n\n```ts\ntype MessageLabelAddedEvent = {\n type: "MESSAGE_LABEL_ADDED"\n label: string\n label_name?: string\n}\n```\n\n### `MessageLabelRemovedEvent`\n\n```ts\ntype MessageLabelRemovedEvent = {\n type: "MESSAGE_LABEL_REMOVED"\n label: string\n label_name?: string\n}\n```\n\n### `MessageEntityLinkedEvent`\n\n```ts\ntype MessageEntityLinkedEvent = {\n type: "MESSAGE_ENTITY_LINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n}\n```\n\n### `MessageEntityUnlinkedEvent`\n\n```ts\ntype MessageEntityUnlinkedEvent = {\n type: "MESSAGE_ENTITY_UNLINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n}\n```\n\n### `MessageAutoReplySentEvent`\n\n```ts\ntype MessageAutoReplySentEvent = {\n type: "MESSAGE_AUTO_REPLY_SENT"\n reply_message_id?: string\n parent_message_id?: string\n}\n```\n\n### `ThreadMovedToInboxEvent`\n\n```ts\ntype ThreadMovedToInboxEvent = {\n type: "THREAD_MOVED_TO_INBOX"\n target_inbox_id?: string\n target_inbox_name?: string\n}\n```\n\n### `ThreadTrashedEvent`\n\n```ts\ntype ThreadTrashedEvent = {\n type: "THREAD_TRASHED"\n}\n```\n\n### `ThreadRestoredEvent`\n\n```ts\ntype ThreadRestoredEvent = {\n type: "THREAD_RESTORED"\n}\n```\n\n### `TimelineLinkedEntity`\n\n```ts\ntype TimelineLinkedEntity = {\n entity_id: string\n schema?: string\n}\n```\n\n### `TimelineActor`\n\n```ts\ntype TimelineActor = {\n user_id?: string\n email?: string\n}\n```\n\n### `TimelineEventData`\n\n```ts\ntype TimelineEventData = {\n type: "THREAD_DONE"\n user_id: string\n organization_id: string\n} | {\n type: "THREAD_OPEN"\n user_id: string\n organization_id: string\n} | {\n type: "WORKFLOW_STARTED"\n workflow_id?: string\n workflow_name?: string\n} | {\n type: "THREAD_USER_ASSIGNED"\n added?: string[]\n removed?: string[]\n} | {\n type: "MESSAGE_LABEL_ADDED"\n label: string\n label_name?: string\n} | {\n type: "MESSAGE_LABEL_REMOVED"\n label: string\n label_name?: string\n} | {\n type: "MESSAGE_ENTITY_LINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n} | {\n type: "MESSAGE_ENTITY_UNLINKED"\n entities?: Array<{\n entity_id: string\n schema?: string\n }>\n link_kind?: "manual" | "auto"\n} | {\n type: "MESSAGE_AUTO_REPLY_SENT"\n reply_message_id?: string\n parent_message_id?: string\n} | {\n type: "THREAD_MOVED_TO_INBOX"\n target_inbox_id?: string\n target_inbox_name?: string\n} | {\n type: "THREAD_TRASHED"\n} | {\n type: "THREAD_RESTORED"\n}\n```\n\n### `TimelineEvent`\n\n```ts\ntype TimelineEvent = {\n id?: string\n data: {\n type: "THREAD_DONE"\n user_id: string\n organization_id: string\n } | {\n type: "THREAD_OPEN"\n user_id: string\n organization_id: string\n } | {\n type: "WORKFLOW_STARTED"\n workflow_id?: string\n workflow_name?: string\n } | {\n type: "THREAD_USER_ASSIGNED"\n added?: string[]\n removed?: string[]\n } | {\n type: "MESSAGE_LABEL_ADDED"\n label: string\n label_name?: string\n } | {\n type: "MESSAGE_LABEL_REMOVED"\n label: string\n label_name?: string\n } | {\n type: "MESSAGE_ENTITY_LINKED"\n entities?: Array<{\n entity_id: { ... }\n schema?: { ... }\n }>\n link_kind?: "manual" | "auto"\n } | {\n type: "MESSAGE_ENTITY_UNLINKED"\n entities?: Array<{\n entity_id: { ... }\n schema?: { ... }\n }>\n link_kind?: "manual" | "auto"\n } | {\n type: "MESSAGE_AUTO_REPLY_SENT"\n reply_message_id?: string\n parent_message_id?: string\n } | {\n type: "THREAD_MOVED_TO_INBOX"\n target_inbox_id?: string\n target_inbox_name?: string\n } | {\n type: "THREAD_TRASHED"\n } | {\n type: "THREAD_RESTORED"\n }\n timestamp: string\n message_id?: string\n source?: "user" | "automation" | "system"\n automated?: boolean\n actor?: {\n user_id?: string\n email?: string\n }\n automation?: {\n id?: string\n name?: string\n }\n}\n```\n\n### `BulkActionsPayloadWithScopes`\n\n```ts\ntype BulkActionsPayloadWithScopes = {\n ids: string[]\n assign_to?: string[]\n inbox_id?: string\n scopes?: "organization" | "user"[]\n}\n```\n\n### `BulkActionsPayload`\n\n```ts\ntype BulkActionsPayload = {\n ids: string[]\n}\n```\n\n### `FieldsParam`\n\nList of entity fields to include or exclude in the response\n\nUse ! to exclude fields, e.g. `!_id` to exclude the `_id` field.\n\nGlobbing and globstart (**) is supported for nested fields.\n\n\n```ts\ntype FieldsParam = string[]\n```\n';
5
- export {
6
- message_default as default
7
- };