@epilot/cli 0.1.10 → 0.1.12

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 (89) hide show
  1. package/README.md +18 -21
  2. package/definitions/app.json +56 -6
  3. package/definitions/automation.json +214 -1
  4. package/definitions/blueprint-manifest.json +1303 -60
  5. package/definitions/customer-portal.json +757 -81
  6. package/definitions/data-governance.json +1126 -0
  7. package/definitions/deduplication.json +135 -4
  8. package/definitions/design.json +103 -57
  9. package/definitions/email-settings.json +150 -0
  10. package/definitions/email-template.json +25 -3
  11. package/definitions/entity.json +405 -5
  12. package/definitions/erp-integration.json +3140 -1049
  13. package/definitions/integration-toolkit.json +7998 -0
  14. package/definitions/journey.json +18 -1
  15. package/definitions/kanban.json +25 -1
  16. package/definitions/message.json +202 -0
  17. package/definitions/organization.json +35 -1
  18. package/definitions/partner-directory.json +795 -229
  19. package/definitions/permissions.json +41 -6
  20. package/definitions/sharing.json +956 -0
  21. package/definitions/template-variables.json +12 -4
  22. package/definitions/webhooks.json +111 -2
  23. package/definitions/workflow-definition.json +87 -202
  24. package/definitions/workflow.json +142 -0
  25. package/dist/{access-token-PTTCRMGK.js → access-token-CIM4RLBP.js} +1 -1
  26. package/dist/add-component-AAVQVPKK.js +296 -0
  27. package/dist/{address-2FDPEPR6.js → address-EDRTUWTP.js} +1 -1
  28. package/dist/{address-suggestions-XBEK5DDQ.js → address-suggestions-S5WEST2N.js} +1 -1
  29. package/dist/{ai-agents-ZY5BNVTN.js → ai-agents-RXDDJDAR.js} +1 -1
  30. package/dist/{app-IT5FWGUK.js → api-36XROHLK.js} +5 -5
  31. package/dist/app-I3XXHZLD.js +24 -0
  32. package/dist/{audit-logs-FB4TE4TI.js → audit-logs-PXGDGJGV.js} +1 -1
  33. package/dist/{automation-JE5LDKJM.js → automation-LS6MVLP2.js} +1 -1
  34. package/dist/{billing-GOFCP5T3.js → billing-KVYFUKZK.js} +1 -1
  35. package/dist/bin/epilot.js +53 -52
  36. package/dist/{blueprint-manifest-WJIQKFYK.js → blueprint-manifest-W4ZGJD2Z.js} +1 -1
  37. package/dist/{chunk-P5IZZW4Y.js → chunk-BYAEI4Z2.js} +1 -1
  38. package/dist/chunk-CEP7S7X3.js +366 -0
  39. package/dist/{chunk-MNSG22DM.js → chunk-F6KWKTQJ.js} +124 -63
  40. package/dist/{completion-HZNPHJI4.js → completion-QP4IYMVI.js} +1 -1
  41. package/dist/{consent-DSMWWHUL.js → consent-M4QB2HPM.js} +1 -1
  42. package/dist/{customer-portal-IJYTJYUZ.js → customer-portal-SVO2YCXA.js} +1 -1
  43. package/dist/{dashboard-DOAX6XDG.js → dashboard-CYCXIX74.js} +1 -1
  44. package/dist/{data-management-C4JPPUPD.js → data-governance-DJAAIE6F.js} +6 -6
  45. package/dist/{deduplication-7OGLZLAC.js → deduplication-M3KEVJRG.js} +1 -1
  46. package/dist/deploy-4XDFWOEV.js +214 -0
  47. package/dist/{design-3CAYTWFY.js → design-UVJJ2KO2.js} +1 -1
  48. package/dist/{document-NT5JOJQV.js → document-5HB632XE.js} +1 -1
  49. package/dist/{email-settings-2M3WJTQS.js → email-settings-H7HQTDYE.js} +1 -1
  50. package/dist/{email-template-F4PLBPPC.js → email-template-2DHZ3VKF.js} +1 -1
  51. package/dist/{entity-32LKMZAU.js → entity-HED6QHG7.js} +1 -1
  52. package/dist/{entity-mapping-OBCZDYQJ.js → entity-mapping-QP22B65Z.js} +1 -1
  53. package/dist/{environments-H3TBCDQE.js → environments-6LLEIGWV.js} +1 -1
  54. package/dist/{event-catalog-NVAPTZ4M.js → event-catalog-2ZCZTATY.js} +1 -1
  55. package/dist/export-JA5N4JCJ.js +44 -0
  56. package/dist/{file-US2HR4SV.js → file-R6IIXOIZ.js} +1 -1
  57. package/dist/{iban-7QUCOULB.js → iban-EQD2VROZ.js} +1 -1
  58. package/dist/init-5KGNJEWF.js +524 -0
  59. package/dist/integration-toolkit-4CLQDSK7.js +54 -0
  60. package/dist/{journey-E5T4BZZX.js → journey-V7X2KUKH.js} +1 -1
  61. package/dist/{kanban-7UHU5VE6.js → kanban-EPI6C3FR.js} +1 -1
  62. package/dist/{message-7KY33RJE.js → message-477EJ5JO.js} +1 -1
  63. package/dist/{metering-P7BZGMY7.js → metering-5EAEKRSL.js} +1 -1
  64. package/dist/{notes-TNJ7FPA3.js → notes-CVXNRULU.js} +1 -1
  65. package/dist/{notification-6KXEFVO5.js → notification-6HXS76XP.js} +1 -1
  66. package/dist/{organization-FF4Y3PBO.js → organization-O33CZQKD.js} +1 -1
  67. package/dist/{partner-directory-VH2SBAS2.js → partner-directory-NZWGCKSB.js} +2 -2
  68. package/dist/{permissions-KENZ4HNY.js → permissions-6QEOBJ6M.js} +1 -1
  69. package/dist/{pricing-P6QZ77VJ.js → pricing-KNYSULCW.js} +1 -1
  70. package/dist/{pricing-tier-2IRJMTM6.js → pricing-tier-OCHP6SHT.js} +1 -1
  71. package/dist/{purpose-IHROR6LQ.js → purpose-NGM42XWB.js} +1 -1
  72. package/dist/remove-component-LXSRR23E.js +89 -0
  73. package/dist/review-HFOO3NXE.js +69 -0
  74. package/dist/{sandbox-62XQPOU6.js → sandbox-YX3VVAQG.js} +1 -1
  75. package/dist/sharing-X5U53KSU.js +54 -0
  76. package/dist/{submission-PUWGOYQB.js → submission-YOWVSZNA.js} +1 -1
  77. package/dist/{targeting-QB3DFYNI.js → targeting-BMZCOG72.js} +1 -1
  78. package/dist/{template-variables-IPKRUJ4E.js → template-variables-YTABZL3E.js} +1 -1
  79. package/dist/{upgrade-TNDH4WGQ.js → upgrade-SYSSIAQC.js} +1 -1
  80. package/dist/{user-2CP75TFC.js → user-3N5ZOUYS.js} +1 -1
  81. package/dist/validate-TUMXW56Y.js +53 -0
  82. package/dist/{validation-rules-GNI4EEG5.js → validation-rules-QVS7LKEP.js} +1 -1
  83. package/dist/versions-ZTWQAGXY.js +109 -0
  84. package/dist/{webhooks-2OWUX7UL.js → webhooks-6WMWACOW.js} +1 -1
  85. package/dist/{workflow-WSLERVJI.js → workflow-ZO2MKDBS.js} +1 -1
  86. package/dist/{workflow-definition-FP3WKHGG.js → workflow-definition-RCWKIPYI.js} +1 -1
  87. package/package.json +2 -1
  88. package/definitions/data-management.json +0 -962
  89. package/dist/erp-integration-UW6H55EK.js +0 -54
package/README.md CHANGED
@@ -29,7 +29,7 @@ npm install -g @epilot/cli
29
29
 
30
30
  <!-- usage-help -->
31
31
  ```
32
- epilot v0.1.10 — CLI for epilot APIs
32
+ epilot v0.1.12 — CLI for epilot APIs
33
33
 
34
34
  USAGE
35
35
  epilot <api> <operationId> [params...] [flags]
@@ -73,7 +73,7 @@ APIs
73
73
  consent Consent API
74
74
  customer-portal Portal API
75
75
  dashboard Dashboard API
76
- data-management Data Management API
76
+ data-governance Data Governance API
77
77
  deduplication Deduplication API
78
78
  design Design Builder API v2
79
79
  document Document API
@@ -82,10 +82,10 @@ APIs
82
82
  entity Entity API
83
83
  entity-mapping Entity Mapping API
84
84
  environments Environments API
85
- erp-integration ERP Integration API
86
85
  event-catalog Event Catalog API
87
86
  file File API
88
87
  iban Iban API
88
+ integration-toolkit Integration Toolkit API
89
89
  journey Journey API
90
90
  kanban Kanban API
91
91
  message Message API
@@ -93,12 +93,13 @@ APIs
93
93
  notes Notes API
94
94
  notification Notification API
95
95
  organization Organization API
96
- partner-directory Partner API
96
+ partner-directory Partner Directory API
97
97
  permissions Permissions API
98
98
  pricing Pricing API
99
99
  pricing-tier Pricing Tier API
100
100
  purpose Purpose API
101
101
  sandbox Sandbox API
102
+ sharing Sharing API
102
103
  submission Submission API
103
104
  targeting Targeting API
104
105
  template-variables Template Variables API
@@ -152,34 +153,29 @@ Token resolution order:
152
153
 
153
154
  ## Profiles
154
155
 
155
- Manage multiple environments (like AWS CLI profiles):
156
+ Manage multiple environments, similar to AWS CLI profiles:
156
157
 
157
158
  ```bash
158
- # Create profiles for different environments
159
- epilot profile create dev --server https://entity.dev.sls.epilot.io --token <dev-token>
160
- epilot profile create staging --server https://entity.staging.sls.epilot.io --token <staging-token>
159
+ # Create profiles
160
+ epilot profile create sandbox --token <sandbox-token>
161
161
  epilot profile create prod --token <prod-token>
162
162
 
163
163
  # Switch active profile
164
- epilot profile use dev
164
+ epilot profile use sandbox
165
165
 
166
- # Or use per-command
167
- epilot entity listSchemas --profile staging
166
+ # Use per-command
167
+ epilot entity listSchemas --profile sandbox
168
168
 
169
169
  # Or via environment variable
170
- EPILOT_PROFILE=dev epilot entity listSchemas
170
+ EPILOT_PROFILE=sandbox epilot entity listSchemas
171
171
 
172
- # List profiles
172
+ # List / show / delete
173
173
  epilot profile list
174
-
175
- # Show profile details
176
174
  epilot profile show dev
177
-
178
- # Delete a profile
179
175
  epilot profile delete dev
180
176
  ```
181
177
 
182
- Profiles store server URL, auth token, org ID, and custom headers in `~/.config/epilot/profiles.json`.
178
+ Profiles store auth token, server URL, and custom headers in `~/.config/epilot/profiles.json`.
183
179
 
184
180
  ## Parameters
185
181
 
@@ -330,7 +326,7 @@ Full documentation with sample calls and responses for all APIs:
330
326
  | Consent API | `epilot consent` | [docs](./docs/consent.md) |
331
327
  | Portal API | `epilot customer-portal` | [docs](./docs/customer-portal.md) |
332
328
  | Dashboard API | `epilot dashboard` | [docs](./docs/dashboard.md) |
333
- | Data Management API | `epilot data-management` | [docs](./docs/data-management.md) |
329
+ | Data Governance API | `epilot data-governance` | [docs](./docs/data-governance.md) |
334
330
  | Deduplication API | `epilot deduplication` | [docs](./docs/deduplication.md) |
335
331
  | Design Builder API v2 | `epilot design` | [docs](./docs/design.md) |
336
332
  | Document API | `epilot document` | [docs](./docs/document.md) |
@@ -339,10 +335,10 @@ Full documentation with sample calls and responses for all APIs:
339
335
  | Entity API | `epilot entity` | [docs](./docs/entity.md) |
340
336
  | Entity Mapping API | `epilot entity-mapping` | [docs](./docs/entity-mapping.md) |
341
337
  | Environments API | `epilot environments` | [docs](./docs/environments.md) |
342
- | ERP Integration API | `epilot erp-integration` | [docs](./docs/erp-integration.md) |
343
338
  | Event Catalog API | `epilot event-catalog` | [docs](./docs/event-catalog.md) |
344
339
  | File API | `epilot file` | [docs](./docs/file.md) |
345
340
  | Iban API | `epilot iban` | [docs](./docs/iban.md) |
341
+ | Integration Toolkit API | `epilot integration-toolkit` | [docs](./docs/integration-toolkit.md) |
346
342
  | Journey API | `epilot journey` | [docs](./docs/journey.md) |
347
343
  | Kanban API | `epilot kanban` | [docs](./docs/kanban.md) |
348
344
  | Message API | `epilot message` | [docs](./docs/message.md) |
@@ -350,12 +346,13 @@ Full documentation with sample calls and responses for all APIs:
350
346
  | Notes API | `epilot notes` | [docs](./docs/notes.md) |
351
347
  | Notification API | `epilot notification` | [docs](./docs/notification.md) |
352
348
  | Organization API | `epilot organization` | [docs](./docs/organization.md) |
353
- | Partner API | `epilot partner-directory` | [docs](./docs/partner-directory.md) |
349
+ | Partner Directory API | `epilot partner-directory` | [docs](./docs/partner-directory.md) |
354
350
  | Permissions API | `epilot permissions` | [docs](./docs/permissions.md) |
355
351
  | Pricing API | `epilot pricing` | [docs](./docs/pricing.md) |
356
352
  | Pricing Tier API | `epilot pricing-tier` | [docs](./docs/pricing-tier.md) |
357
353
  | Purpose API | `epilot purpose` | [docs](./docs/purpose.md) |
358
354
  | Sandbox API | `epilot sandbox` | [docs](./docs/sandbox.md) |
355
+ | Sharing API | `epilot sharing` | [docs](./docs/sharing.md) |
359
356
  | Submission API | `epilot submission` | [docs](./docs/submission.md) |
360
357
  | Targeting API | `epilot targeting` | [docs](./docs/targeting.md) |
361
358
  | Template Variables API | `epilot template-variables` | [docs](./docs/template-variables.md) |
@@ -2596,6 +2596,9 @@
2596
2596
  "type": "boolean",
2597
2597
  "description": "If true, requests are made from a set of static IP addresses and only allow connections to a set of allowed IP addresses. Get in touch with us to add your IP addresses.",
2598
2598
  "default": false
2599
+ },
2600
+ "secure_proxy": {
2601
+ "$ref": "#/components/schemas/PortalExtensionSecureProxy"
2599
2602
  }
2600
2603
  },
2601
2604
  "required": [
@@ -2706,6 +2709,9 @@
2706
2709
  "type": "boolean",
2707
2710
  "description": "If true, requests are made from a set of static IP addresses and only allow connections to a set of allowed IP addresses. Get in touch with us to add your IP addresses.",
2708
2711
  "default": false
2712
+ },
2713
+ "secure_proxy": {
2714
+ "$ref": "#/components/schemas/PortalExtensionSecureProxy"
2709
2715
  }
2710
2716
  },
2711
2717
  "required": [
@@ -2814,6 +2820,9 @@
2814
2820
  "type": "boolean",
2815
2821
  "description": "If true, requests are made from a set of static IP addresses and only allow connections to a set of allowed IP addresses. Get in touch with us to add your IP addresses.",
2816
2822
  "default": false
2823
+ },
2824
+ "secure_proxy": {
2825
+ "$ref": "#/components/schemas/PortalExtensionSecureProxy"
2817
2826
  }
2818
2827
  },
2819
2828
  "required": [
@@ -2911,6 +2920,9 @@
2911
2920
  "type": "boolean",
2912
2921
  "description": "If true, requests are made from a set of static IP addresses and only allow connections to a set of allowed IP addresses. Get in touch with us to add your IP addresses.",
2913
2922
  "default": false
2923
+ },
2924
+ "secure_proxy": {
2925
+ "$ref": "#/components/schemas/PortalExtensionSecureProxy"
2914
2926
  }
2915
2927
  },
2916
2928
  "required": [
@@ -3007,6 +3019,9 @@
3007
3019
  "type": "boolean",
3008
3020
  "description": "If true, requests are made from a set of static IP addresses and only allow connections to a set of allowed IP addresses. Get in touch with us to add your IP addresses.",
3009
3021
  "default": false
3022
+ },
3023
+ "secure_proxy": {
3024
+ "$ref": "#/components/schemas/PortalExtensionSecureProxy"
3010
3025
  }
3011
3026
  },
3012
3027
  "required": [
@@ -3103,6 +3118,9 @@
3103
3118
  "type": "boolean",
3104
3119
  "description": "If true, requests are made from a set of static IP addresses and only allow connections to a set of allowed IP addresses. Get in touch with us to add your IP addresses.",
3105
3120
  "default": false
3121
+ },
3122
+ "secure_proxy": {
3123
+ "$ref": "#/components/schemas/PortalExtensionSecureProxy"
3106
3124
  }
3107
3125
  },
3108
3126
  "required": [
@@ -3226,6 +3244,26 @@
3226
3244
  ],
3227
3245
  "additionalProperties": false
3228
3246
  },
3247
+ "PortalExtensionSecureProxy": {
3248
+ "type": "object",
3249
+ "description": "If set, requests are routed through the ERP Integration secure proxy. Mutually exclusive with use_static_ips.",
3250
+ "properties": {
3251
+ "integration_id": {
3252
+ "type": "string",
3253
+ "format": "uuid",
3254
+ "description": "Integration ID that owns the secure_proxy use case."
3255
+ },
3256
+ "use_case_slug": {
3257
+ "type": "string",
3258
+ "description": "Use case slug for the secure proxy use case."
3259
+ }
3260
+ },
3261
+ "required": [
3262
+ "integration_id",
3263
+ "use_case_slug"
3264
+ ],
3265
+ "additionalProperties": false
3266
+ },
3229
3267
  "ExternalProductCatalogAuthBlock": {
3230
3268
  "type": "object",
3231
3269
  "properties": {
@@ -3353,12 +3391,20 @@
3353
3391
  {
3354
3392
  "type": "object",
3355
3393
  "properties": {
3356
- "section": {
3357
- "description": "Define which section of the portal this block can be placed in",
3358
- "type": "string",
3359
- "enum": [
3360
- "main",
3361
- "footer"
3394
+ "supported_surfaces": {
3395
+ "description": "Define which surfaces of the portal this block can be placed in",
3396
+ "type": "array",
3397
+ "items": {
3398
+ "type": "string",
3399
+ "enum": [
3400
+ "main",
3401
+ "footer_inline",
3402
+ "footer_left_absolute",
3403
+ "footer_right_absolute"
3404
+ ]
3405
+ },
3406
+ "default": [
3407
+ "main"
3362
3408
  ]
3363
3409
  }
3364
3410
  }
@@ -3860,6 +3906,10 @@
3860
3906
  "job_id": {
3861
3907
  "type": "string",
3862
3908
  "description": "ID of the job that created the blueprint"
3909
+ },
3910
+ "source_blueprint_file": {
3911
+ "type": "string",
3912
+ "description": "S3 key of a pre-exported blueprint zip used for cross-org installs"
3863
3913
  }
3864
3914
  }
3865
3915
  },
@@ -3,7 +3,7 @@
3
3
  "info": {
4
4
  "title": "Automation API",
5
5
  "description": "API Backend for epilot Automation Workflows feature",
6
- "version": "1.4.0"
6
+ "version": "1.4.1"
7
7
  },
8
8
  "tags": [
9
9
  {
@@ -1131,6 +1131,10 @@
1131
1131
  "example": "123e4567-e89b-12d3-a456-426614174000"
1132
1132
  },
1133
1133
  "nullable": true
1134
+ },
1135
+ "protected": {
1136
+ "type": "boolean",
1137
+ "description": "If true, automation is displayed in read-only mode in the UI to discourage changes"
1134
1138
  }
1135
1139
  },
1136
1140
  "required": [
@@ -1233,6 +1237,12 @@
1233
1237
  },
1234
1238
  {
1235
1239
  "$ref": "#/components/schemas/FlowExecutionCancelAction"
1240
+ },
1241
+ {
1242
+ "$ref": "#/components/schemas/ForwardEmailAction"
1243
+ },
1244
+ {
1245
+ "$ref": "#/components/schemas/ReplyEmailAction"
1236
1246
  }
1237
1247
  ]
1238
1248
  },
@@ -1273,6 +1283,12 @@
1273
1283
  },
1274
1284
  {
1275
1285
  "$ref": "#/components/schemas/FlowExecutionCancelActionConfig"
1286
+ },
1287
+ {
1288
+ "$ref": "#/components/schemas/ForwardEmailActionConfig"
1289
+ },
1290
+ {
1291
+ "$ref": "#/components/schemas/ReplyEmailActionConfig"
1276
1292
  }
1277
1293
  ]
1278
1294
  },
@@ -2132,6 +2148,184 @@
2132
2148
  }
2133
2149
  ]
2134
2150
  },
2151
+ "ForwardEmailActionConfig": {
2152
+ "allOf": [
2153
+ {
2154
+ "$ref": "#/components/schemas/AutomationActionConfig"
2155
+ },
2156
+ {
2157
+ "type": "object",
2158
+ "properties": {
2159
+ "type": {
2160
+ "enum": [
2161
+ "forward-email"
2162
+ ]
2163
+ },
2164
+ "config": {
2165
+ "$ref": "#/components/schemas/ForwardEmailConfig"
2166
+ }
2167
+ }
2168
+ }
2169
+ ],
2170
+ "example": {
2171
+ "id": "25jga0-gkasl26-0asg-908sgaj2",
2172
+ "name": "Forward Email",
2173
+ "type": "forward-email",
2174
+ "config": {
2175
+ "forward_to": [
2176
+ {
2177
+ "email": "external@outlook.com",
2178
+ "name": "External User"
2179
+ }
2180
+ ]
2181
+ }
2182
+ }
2183
+ },
2184
+ "ForwardEmailAction": {
2185
+ "allOf": [
2186
+ {
2187
+ "$ref": "#/components/schemas/AutomationAction"
2188
+ },
2189
+ {
2190
+ "type": "object",
2191
+ "properties": {
2192
+ "type": {
2193
+ "enum": [
2194
+ "forward-email"
2195
+ ]
2196
+ },
2197
+ "config": {
2198
+ "$ref": "#/components/schemas/ForwardEmailConfig"
2199
+ }
2200
+ }
2201
+ }
2202
+ ]
2203
+ },
2204
+ "ForwardEmailConfig": {
2205
+ "type": "object",
2206
+ "properties": {
2207
+ "forward_to": {
2208
+ "type": "array",
2209
+ "description": "List of email addresses to forward the incoming email to",
2210
+ "items": {
2211
+ "type": "object",
2212
+ "properties": {
2213
+ "email": {
2214
+ "type": "string",
2215
+ "format": "email",
2216
+ "description": "Email address to forward to"
2217
+ },
2218
+ "name": {
2219
+ "type": "string",
2220
+ "description": "Display name for the recipient"
2221
+ }
2222
+ },
2223
+ "required": [
2224
+ "email"
2225
+ ]
2226
+ }
2227
+ },
2228
+ "include_attachments": {
2229
+ "type": "boolean",
2230
+ "description": "Whether to include the original email attachments in the forwarded email",
2231
+ "default": true
2232
+ },
2233
+ "subject_prefix": {
2234
+ "type": "string",
2235
+ "description": "Prefix to add to the original email subject",
2236
+ "default": "Fwd: "
2237
+ },
2238
+ "mark_as_done": {
2239
+ "type": "boolean",
2240
+ "description": "When enabled, the email thread will be automatically marked as done after this action completes.",
2241
+ "default": false
2242
+ }
2243
+ },
2244
+ "required": [
2245
+ "forward_to"
2246
+ ]
2247
+ },
2248
+ "ReplyEmailActionConfig": {
2249
+ "allOf": [
2250
+ {
2251
+ "$ref": "#/components/schemas/AutomationActionConfig"
2252
+ },
2253
+ {
2254
+ "type": "object",
2255
+ "properties": {
2256
+ "type": {
2257
+ "enum": [
2258
+ "reply-email"
2259
+ ]
2260
+ },
2261
+ "config": {
2262
+ "$ref": "#/components/schemas/ReplyEmailConfig"
2263
+ }
2264
+ }
2265
+ }
2266
+ ],
2267
+ "example": {
2268
+ "id": "25jga0-gkasl26-0asg-908sgaj2",
2269
+ "name": "Reply Email",
2270
+ "type": "reply-email",
2271
+ "config": {
2272
+ "email_template_id": "gasj02-29ug9asgm-29t9gsaghg2g-pkmbhx2",
2273
+ "language_code": "de",
2274
+ "reply_mode": "reply_in_thread"
2275
+ }
2276
+ }
2277
+ },
2278
+ "ReplyEmailAction": {
2279
+ "allOf": [
2280
+ {
2281
+ "$ref": "#/components/schemas/AutomationAction"
2282
+ },
2283
+ {
2284
+ "type": "object",
2285
+ "properties": {
2286
+ "type": {
2287
+ "enum": [
2288
+ "reply-email"
2289
+ ]
2290
+ },
2291
+ "config": {
2292
+ "$ref": "#/components/schemas/ReplyEmailConfig"
2293
+ }
2294
+ }
2295
+ }
2296
+ ]
2297
+ },
2298
+ "ReplyEmailConfig": {
2299
+ "type": "object",
2300
+ "properties": {
2301
+ "email_template_id": {
2302
+ "type": "string",
2303
+ "description": "ID of the email template to use for the reply"
2304
+ },
2305
+ "language_code": {
2306
+ "type": "string",
2307
+ "description": "Language code for the email template",
2308
+ "enum": [
2309
+ "de",
2310
+ "en"
2311
+ ]
2312
+ },
2313
+ "reply_mode": {
2314
+ "type": "string",
2315
+ "description": "Controls how the reply email is sent.\n- reply_in_thread: Sends the email as a reply within the existing email thread (default).\n- new_email: Sends the email as a new standalone email to the original sender, creating a fresh thread.\n",
2316
+ "enum": [
2317
+ "reply_in_thread",
2318
+ "new_email"
2319
+ ],
2320
+ "default": "reply_in_thread"
2321
+ },
2322
+ "mark_as_done": {
2323
+ "type": "boolean",
2324
+ "description": "When enabled, the email thread will be automatically marked as done after this action completes.",
2325
+ "default": false
2326
+ }
2327
+ }
2328
+ },
2135
2329
  "SendEmailConfig": {
2136
2330
  "type": "object",
2137
2331
  "properties": {
@@ -2160,6 +2354,25 @@
2160
2354
  "description": "Pause automation execution after sending email to wait for a confirmation link to be clicked.\n\nThe email template should contain a confirmation link using the variable `{{confirmation_url}}`\n",
2161
2355
  "default": false
2162
2356
  },
2357
+ "reply_to_sender": {
2358
+ "type": "boolean",
2359
+ "description": "When enabled, overrides the template's \"To\" field with the sender address of the triggering incoming email.\nThis is useful for auto-reply scenarios where you want to automatically respond to the person who sent the email.\nOnly works when the automation is triggered by a received email (received_email or new_email_thread triggers).\n",
2360
+ "default": false
2361
+ },
2362
+ "reply_mode": {
2363
+ "type": "string",
2364
+ "description": "Controls how the auto-reply email is sent when reply_to_sender is enabled.\n- reply_in_thread: Sends the email as a reply within the existing email thread (default).\n- new_email: Sends the email as a new standalone email to the original sender, creating a fresh thread.\n",
2365
+ "enum": [
2366
+ "reply_in_thread",
2367
+ "new_email"
2368
+ ],
2369
+ "default": "reply_in_thread"
2370
+ },
2371
+ "mark_as_done": {
2372
+ "type": "boolean",
2373
+ "description": "When enabled, the email thread will be automatically marked as done after this action completes.",
2374
+ "default": true
2375
+ },
2163
2376
  "attachments": {
2164
2377
  "type": "array",
2165
2378
  "description": "Include extra file attachments in sent email.\nAttachments in email template will be sent regardless of this configuration.\n",