@epilot/sdk 2.0.0-beta.4 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (290) hide show
  1. package/LICENSE +21 -0
  2. package/dist/{access-token.d-BuXO-21p.d.cts → access-token.d-CnmUTOlq.d.cts} +1 -1
  3. package/dist/{access-token.d-BuXO-21p.d.ts → access-token.d-CnmUTOlq.d.ts} +1 -1
  4. package/dist/{address-suggestions.d-Cay0qOfA.d.cts → address-suggestions.d-_YwTOR-9.d.cts} +1 -1
  5. package/dist/{address-suggestions.d-Cay0qOfA.d.ts → address-suggestions.d-_YwTOR-9.d.ts} +1 -1
  6. package/dist/{address.d-D-oZY0rk.d.cts → address.d-CwAPOVxa.d.cts} +1 -1
  7. package/dist/{address.d-D-oZY0rk.d.ts → address.d-CwAPOVxa.d.ts} +1 -1
  8. package/dist/{ai-agents.d-B4_CZTCP.d.cts → ai-agents.d-OkXfr2bz.d.cts} +1 -1
  9. package/dist/{ai-agents.d-B4_CZTCP.d.ts → ai-agents.d-OkXfr2bz.d.ts} +1 -1
  10. package/dist/apis/access-token.d.cts +3 -3
  11. package/dist/apis/access-token.d.ts +3 -3
  12. package/dist/apis/address-suggestions.d.cts +3 -3
  13. package/dist/apis/address-suggestions.d.ts +3 -3
  14. package/dist/apis/address.d.cts +3 -3
  15. package/dist/apis/address.d.ts +3 -3
  16. package/dist/apis/ai-agents.d.cts +3 -3
  17. package/dist/apis/ai-agents.d.ts +3 -3
  18. package/dist/apis/app.d.cts +3 -3
  19. package/dist/apis/app.d.ts +3 -3
  20. package/dist/apis/audit-logs.d.cts +3 -3
  21. package/dist/apis/audit-logs.d.ts +3 -3
  22. package/dist/apis/automation.d.cts +3 -3
  23. package/dist/apis/automation.d.ts +3 -3
  24. package/dist/apis/billing.d.cts +3 -3
  25. package/dist/apis/billing.d.ts +3 -3
  26. package/dist/apis/blueprint-manifest.d.cts +3 -3
  27. package/dist/apis/blueprint-manifest.d.ts +3 -3
  28. package/dist/apis/consent.d.cts +3 -3
  29. package/dist/apis/consent.d.ts +3 -3
  30. package/dist/apis/customer-portal.cjs +1 -1
  31. package/dist/apis/customer-portal.d.cts +3 -3
  32. package/dist/apis/customer-portal.d.ts +3 -3
  33. package/dist/apis/customer-portal.js +1 -1
  34. package/dist/apis/dashboard.d.cts +3 -3
  35. package/dist/apis/dashboard.d.ts +3 -3
  36. package/dist/apis/data-management.d.cts +3 -3
  37. package/dist/apis/data-management.d.ts +3 -3
  38. package/dist/apis/deduplication.d.cts +3 -3
  39. package/dist/apis/deduplication.d.ts +3 -3
  40. package/dist/apis/design.d.cts +3 -3
  41. package/dist/apis/design.d.ts +3 -3
  42. package/dist/apis/document.d.cts +3 -3
  43. package/dist/apis/document.d.ts +3 -3
  44. package/dist/apis/email-settings.d.cts +3 -3
  45. package/dist/apis/email-settings.d.ts +3 -3
  46. package/dist/apis/email-template.d.cts +3 -3
  47. package/dist/apis/email-template.d.ts +3 -3
  48. package/dist/apis/entity-mapping.d.cts +3 -3
  49. package/dist/apis/entity-mapping.d.ts +3 -3
  50. package/dist/apis/entity.d.cts +3 -3
  51. package/dist/apis/entity.d.ts +3 -3
  52. package/dist/apis/environments.d.cts +3 -3
  53. package/dist/apis/environments.d.ts +3 -3
  54. package/dist/apis/erp-integration.cjs +1 -1
  55. package/dist/apis/erp-integration.d.cts +3 -3
  56. package/dist/apis/erp-integration.d.ts +3 -3
  57. package/dist/apis/erp-integration.js +1 -1
  58. package/dist/apis/event-catalog.d.cts +3 -3
  59. package/dist/apis/event-catalog.d.ts +3 -3
  60. package/dist/apis/file.d.cts +3 -3
  61. package/dist/apis/file.d.ts +3 -3
  62. package/dist/apis/iban.d.cts +3 -3
  63. package/dist/apis/iban.d.ts +3 -3
  64. package/dist/apis/journey.d.cts +3 -3
  65. package/dist/apis/journey.d.ts +3 -3
  66. package/dist/apis/kanban.d.cts +3 -3
  67. package/dist/apis/kanban.d.ts +3 -3
  68. package/dist/apis/message.d.cts +3 -3
  69. package/dist/apis/message.d.ts +3 -3
  70. package/dist/apis/metering.d.cts +3 -3
  71. package/dist/apis/metering.d.ts +3 -3
  72. package/dist/apis/notes.d.cts +3 -3
  73. package/dist/apis/notes.d.ts +3 -3
  74. package/dist/apis/notification.d.cts +3 -3
  75. package/dist/apis/notification.d.ts +3 -3
  76. package/dist/apis/organization.cjs +1 -1
  77. package/dist/apis/organization.d.cts +3 -3
  78. package/dist/apis/organization.d.ts +3 -3
  79. package/dist/apis/organization.js +1 -1
  80. package/dist/apis/partner-directory.d.cts +3 -3
  81. package/dist/apis/partner-directory.d.ts +3 -3
  82. package/dist/apis/permissions.d.cts +3 -3
  83. package/dist/apis/permissions.d.ts +3 -3
  84. package/dist/apis/pricing-tier.d.cts +3 -3
  85. package/dist/apis/pricing-tier.d.ts +3 -3
  86. package/dist/apis/pricing.d.cts +3 -3
  87. package/dist/apis/pricing.d.ts +3 -3
  88. package/dist/apis/purpose.d.cts +3 -3
  89. package/dist/apis/purpose.d.ts +3 -3
  90. package/dist/apis/sandbox.d.cts +3 -3
  91. package/dist/apis/sandbox.d.ts +3 -3
  92. package/dist/apis/submission.d.cts +3 -3
  93. package/dist/apis/submission.d.ts +3 -3
  94. package/dist/apis/targeting.d.cts +3 -3
  95. package/dist/apis/targeting.d.ts +3 -3
  96. package/dist/apis/template-variables.d.cts +3 -3
  97. package/dist/apis/template-variables.d.ts +3 -3
  98. package/dist/apis/user.d.cts +3 -3
  99. package/dist/apis/user.d.ts +3 -3
  100. package/dist/apis/validation-rules.d.cts +3 -3
  101. package/dist/apis/validation-rules.d.ts +3 -3
  102. package/dist/apis/webhooks.d.cts +3 -3
  103. package/dist/apis/webhooks.d.ts +3 -3
  104. package/dist/apis/workflow-definition.d.cts +3 -3
  105. package/dist/apis/workflow-definition.d.ts +3 -3
  106. package/dist/apis/workflow.d.cts +3 -3
  107. package/dist/apis/workflow.d.ts +3 -3
  108. package/dist/{app.d-BKyfin-q.d.cts → app.d-Dr03n4J4.d.cts} +1 -1
  109. package/dist/{app.d-BKyfin-q.d.ts → app.d-Dr03n4J4.d.ts} +1 -1
  110. package/dist/{audit-logs.d-19BKb-ur.d.cts → audit-logs.d-BRToFqeX.d.cts} +1 -1
  111. package/dist/{audit-logs.d-19BKb-ur.d.ts → audit-logs.d-BRToFqeX.d.ts} +1 -1
  112. package/dist/{automation.d-DKl2VtnW.d.ts → automation.d-KOiZ6ru5.d.cts} +2 -24
  113. package/dist/{automation.d-DKl2VtnW.d.cts → automation.d-KOiZ6ru5.d.ts} +2 -24
  114. package/dist/{billing.d-58fUMBqj.d.cts → billing.d-Bs8Ku9qE.d.cts} +1 -1
  115. package/dist/{billing.d-58fUMBqj.d.ts → billing.d-Bs8Ku9qE.d.ts} +1 -1
  116. package/dist/{blueprint-manifest.d-Bu1GyXFW.d.cts → blueprint-manifest.d-CEWRdF3i.d.cts} +1 -1
  117. package/dist/{blueprint-manifest.d-Bu1GyXFW.d.ts → blueprint-manifest.d-CEWRdF3i.d.ts} +1 -1
  118. package/dist/{consent.d-CQ88IEj0.d.cts → consent.d-C2PROHhX.d.cts} +1 -1
  119. package/dist/{consent.d-CQ88IEj0.d.ts → consent.d-C2PROHhX.d.ts} +1 -1
  120. package/dist/{customer-portal.d-EyndRWh6.d.ts → customer-portal.d-Bh9NF8cY.d.cts} +598 -99
  121. package/dist/{customer-portal.d-EyndRWh6.d.cts → customer-portal.d-Bh9NF8cY.d.ts} +598 -99
  122. package/dist/{dashboard.d-AE3RQ6zo.d.cts → dashboard.d-CsGcA74I.d.cts} +1 -1
  123. package/dist/{dashboard.d-AE3RQ6zo.d.ts → dashboard.d-CsGcA74I.d.ts} +1 -1
  124. package/dist/{data-management.d-CNExsqJQ.d.cts → data-management.d-pnuiRU2h.d.cts} +1 -1
  125. package/dist/{data-management.d-CNExsqJQ.d.ts → data-management.d-pnuiRU2h.d.ts} +1 -1
  126. package/dist/{deduplication.d-DCeJzdbM.d.ts → deduplication.d-w_2aJD5f.d.cts} +1 -1
  127. package/dist/{deduplication.d-DCeJzdbM.d.cts → deduplication.d-w_2aJD5f.d.ts} +1 -1
  128. package/dist/{design.d-CkwgJ78Z.d.cts → design.d-eA-irKEX.d.cts} +1 -1
  129. package/dist/{design.d-CkwgJ78Z.d.ts → design.d-eA-irKEX.d.ts} +1 -1
  130. package/dist/{document.d-Y8i32qNV.d.cts → document.d-DN37pjdx.d.cts} +1 -1
  131. package/dist/{document.d-Y8i32qNV.d.ts → document.d-DN37pjdx.d.ts} +1 -1
  132. package/dist/{email-settings.d-CPAsRFWN.d.cts → email-settings.d-BXxYjVDr.d.cts} +1 -1
  133. package/dist/{email-settings.d-CPAsRFWN.d.ts → email-settings.d-BXxYjVDr.d.ts} +1 -1
  134. package/dist/{email-template.d-CQqiCN0N.d.cts → email-template.d-BeqkDHtk.d.cts} +1 -1
  135. package/dist/{email-template.d-CQqiCN0N.d.ts → email-template.d-BeqkDHtk.d.ts} +1 -1
  136. package/dist/{entity-mapping.d-DiqXqJWb.d.cts → entity-mapping.d-DKSW3sfy.d.cts} +1 -1
  137. package/dist/{entity-mapping.d-DiqXqJWb.d.ts → entity-mapping.d-DKSW3sfy.d.ts} +1 -1
  138. package/dist/{entity.d-BtT4mdq4.d.ts → entity.d-CrtZaZr8.d.cts} +1 -1
  139. package/dist/{entity.d-BtT4mdq4.d.cts → entity.d-CrtZaZr8.d.ts} +1 -1
  140. package/dist/{environments.d-C1xIs8N2.d.cts → environments.d-H3LK_KuH.d.cts} +1 -1
  141. package/dist/{environments.d-C1xIs8N2.d.ts → environments.d-H3LK_KuH.d.ts} +1 -1
  142. package/dist/{erp-integration.d-CNLzgl4L.d.cts → erp-integration.d-DOhxy4P5.d.cts} +409 -15
  143. package/dist/{erp-integration.d-CNLzgl4L.d.ts → erp-integration.d-DOhxy4P5.d.ts} +409 -15
  144. package/dist/{event-catalog.d-DW1dOyVh.d.cts → event-catalog.d-ENw6HO-w.d.cts} +1 -1
  145. package/dist/{event-catalog.d-DW1dOyVh.d.ts → event-catalog.d-ENw6HO-w.d.ts} +1 -1
  146. package/dist/{file.d-Bpdt2ORN.d.cts → file.d-DcTJxjp7.d.cts} +1 -1
  147. package/dist/{file.d-Bpdt2ORN.d.ts → file.d-DcTJxjp7.d.ts} +1 -1
  148. package/dist/{iban.d-3_7FEsbx.d.ts → iban.d-BwdiGbxi.d.cts} +1 -1
  149. package/dist/{iban.d-3_7FEsbx.d.cts → iban.d-BwdiGbxi.d.ts} +1 -1
  150. package/dist/index.d.cts +46 -46
  151. package/dist/index.d.ts +46 -46
  152. package/dist/{journey.d-C2lgynUF.d.cts → journey.d-C4N4t1Rh.d.cts} +122 -4
  153. package/dist/{journey.d-C2lgynUF.d.ts → journey.d-C4N4t1Rh.d.ts} +122 -4
  154. package/dist/kanban.d-CtSt3uX2.d.cts +745 -0
  155. package/dist/kanban.d-CtSt3uX2.d.ts +745 -0
  156. package/dist/{message.d-TAVDRlDJ.d.cts → message.d-YEv1kmQd.d.cts} +1 -1
  157. package/dist/{message.d-TAVDRlDJ.d.ts → message.d-YEv1kmQd.d.ts} +1 -1
  158. package/dist/{metering.d-qyYaAU-O.d.cts → metering.d-DvtPv7wk.d.cts} +1 -1
  159. package/dist/{metering.d-qyYaAU-O.d.ts → metering.d-DvtPv7wk.d.ts} +1 -1
  160. package/dist/{notes.d-CDyIbegf.d.cts → notes.d-BC-scR42.d.cts} +1 -1
  161. package/dist/{notes.d-CDyIbegf.d.ts → notes.d-BC-scR42.d.ts} +1 -1
  162. package/dist/{notification.d-B7ccbaPr.d.cts → notification.d-BfBL3lga.d.cts} +1 -1
  163. package/dist/{notification.d-B7ccbaPr.d.ts → notification.d-BfBL3lga.d.ts} +1 -1
  164. package/dist/organization.d-Bd2Hmk8v.d.cts +1244 -0
  165. package/dist/organization.d-Bd2Hmk8v.d.ts +1244 -0
  166. package/dist/{partner-directory.d-CzKV3WfP.d.cts → partner-directory.d-CRNkDF8q.d.cts} +1 -1
  167. package/dist/{partner-directory.d-CzKV3WfP.d.ts → partner-directory.d-CRNkDF8q.d.ts} +1 -1
  168. package/dist/{permissions.d-lVoPAfl3.d.cts → permissions.d-BHB1FFS5.d.cts} +1 -1
  169. package/dist/{permissions.d-lVoPAfl3.d.ts → permissions.d-BHB1FFS5.d.ts} +1 -1
  170. package/dist/{pricing-tier.d-BW2cZt1w.d.cts → pricing-tier.d-Cg0jl6n_.d.cts} +1 -1
  171. package/dist/{pricing-tier.d-BW2cZt1w.d.ts → pricing-tier.d-Cg0jl6n_.d.ts} +1 -1
  172. package/dist/{pricing.d-Ehb2JuKY.d.cts → pricing.d-Cv39plGm.d.cts} +1 -1
  173. package/dist/{pricing.d-Ehb2JuKY.d.ts → pricing.d-Cv39plGm.d.ts} +1 -1
  174. package/dist/{purpose.d-BVxst611.d.cts → purpose.d-CbIYfTua.d.cts} +1 -1
  175. package/dist/{purpose.d-BVxst611.d.ts → purpose.d-CbIYfTua.d.ts} +1 -1
  176. package/dist/{sandbox.d-tRO2movo.d.cts → sandbox.d-BdbOFzDu.d.cts} +1 -1
  177. package/dist/{sandbox.d-tRO2movo.d.ts → sandbox.d-BdbOFzDu.d.ts} +1 -1
  178. package/dist/{submission.d-CSll5Km9.d.cts → submission.d-BamwfhXw.d.cts} +1 -1
  179. package/dist/{submission.d-CSll5Km9.d.ts → submission.d-BamwfhXw.d.ts} +1 -1
  180. package/dist/{targeting.d-CDxIsOWy.d.cts → targeting.d-BNmcVsNS.d.cts} +1 -1
  181. package/dist/{targeting.d-CDxIsOWy.d.ts → targeting.d-BNmcVsNS.d.ts} +1 -1
  182. package/dist/{template-variables.d-PwA27Ocv.d.cts → template-variables.d-Ch3H3zYf.d.cts} +1 -1
  183. package/dist/{template-variables.d-PwA27Ocv.d.ts → template-variables.d-Ch3H3zYf.d.ts} +1 -1
  184. package/dist/{user.d-DJBp6aX5.d.cts → user.d-CXqM751M.d.cts} +1 -1
  185. package/dist/{user.d-DJBp6aX5.d.ts → user.d-CXqM751M.d.ts} +1 -1
  186. package/dist/{validation-rules.d-CScjNdxD.d.cts → validation-rules.d-Db5c5zTf.d.cts} +1 -1
  187. package/dist/{validation-rules.d-CScjNdxD.d.ts → validation-rules.d-Db5c5zTf.d.ts} +1 -1
  188. package/dist/{webhooks.d-C_MQSJEB.d.cts → webhooks.d-CUNJrltY.d.cts} +1 -1
  189. package/dist/{webhooks.d-C_MQSJEB.d.ts → webhooks.d-CUNJrltY.d.ts} +1 -1
  190. package/dist/{workflow-definition.d-CFXrp2Hg.d.cts → workflow-definition.d-CE3kk9gl.d.cts} +1 -1
  191. package/dist/{workflow-definition.d-CFXrp2Hg.d.ts → workflow-definition.d-CE3kk9gl.d.ts} +1 -1
  192. package/dist/{workflow.d-BIWtgMyP.d.cts → workflow.d-DvhTpEtU.d.cts} +46 -4
  193. package/dist/{workflow.d-BIWtgMyP.d.ts → workflow.d-DvhTpEtU.d.ts} +46 -4
  194. package/package.json +152 -11
  195. package/definitions/access-token-runtime.json +0 -1
  196. package/definitions/access-token.json +0 -663
  197. package/definitions/address-runtime.json +0 -1
  198. package/definitions/address-suggestions-runtime.json +0 -1
  199. package/definitions/address-suggestions.json +0 -582
  200. package/definitions/address.json +0 -578
  201. package/definitions/ai-agents-runtime.json +0 -1
  202. package/definitions/ai-agents.json +0 -1711
  203. package/definitions/app-runtime.json +0 -1
  204. package/definitions/app.json +0 -4443
  205. package/definitions/audit-logs-runtime.json +0 -1
  206. package/definitions/audit-logs.json +0 -305
  207. package/definitions/automation-runtime.json +0 -1
  208. package/definitions/automation.json +0 -4850
  209. package/definitions/billing-runtime.json +0 -1
  210. package/definitions/billing.json +0 -837
  211. package/definitions/blueprint-manifest-runtime.json +0 -1
  212. package/definitions/blueprint-manifest.json +0 -3376
  213. package/definitions/consent-runtime.json +0 -1
  214. package/definitions/consent.json +0 -344
  215. package/definitions/customer-portal-runtime.json +0 -1
  216. package/definitions/customer-portal.json +0 -15000
  217. package/definitions/dashboard-runtime.json +0 -1
  218. package/definitions/dashboard.json +0 -484
  219. package/definitions/data-management-runtime.json +0 -1
  220. package/definitions/data-management.json +0 -962
  221. package/definitions/deduplication-runtime.json +0 -1
  222. package/definitions/deduplication.json +0 -183
  223. package/definitions/design-runtime.json +0 -1
  224. package/definitions/design.json +0 -1423
  225. package/definitions/document-runtime.json +0 -1
  226. package/definitions/document.json +0 -758
  227. package/definitions/email-settings-runtime.json +0 -1
  228. package/definitions/email-settings.json +0 -2627
  229. package/definitions/email-template-runtime.json +0 -1
  230. package/definitions/email-template.json +0 -1419
  231. package/definitions/entity-mapping-runtime.json +0 -1
  232. package/definitions/entity-mapping.json +0 -1642
  233. package/definitions/entity-runtime.json +0 -1
  234. package/definitions/entity.json +0 -10074
  235. package/definitions/environments-runtime.json +0 -1
  236. package/definitions/environments.json +0 -363
  237. package/definitions/erp-integration-runtime.json +0 -1
  238. package/definitions/erp-integration.json +0 -5845
  239. package/definitions/event-catalog-runtime.json +0 -1
  240. package/definitions/event-catalog.json +0 -1051
  241. package/definitions/file-runtime.json +0 -1
  242. package/definitions/file.json +0 -2842
  243. package/definitions/iban-runtime.json +0 -1
  244. package/definitions/iban.json +0 -132
  245. package/definitions/journey-runtime.json +0 -1
  246. package/definitions/journey.json +0 -2341
  247. package/definitions/kanban-runtime.json +0 -1
  248. package/definitions/kanban.json +0 -929
  249. package/definitions/message-runtime.json +0 -1
  250. package/definitions/message.json +0 -2660
  251. package/definitions/metering-runtime.json +0 -1
  252. package/definitions/metering.json +0 -2321
  253. package/definitions/notes-runtime.json +0 -1
  254. package/definitions/notes.json +0 -1531
  255. package/definitions/notification-runtime.json +0 -1
  256. package/definitions/notification.json +0 -1425
  257. package/definitions/organization-runtime.json +0 -1
  258. package/definitions/organization.json +0 -629
  259. package/definitions/partner-directory-runtime.json +0 -1
  260. package/definitions/partner-directory.json +0 -1718
  261. package/definitions/permissions-runtime.json +0 -1
  262. package/definitions/permissions.json +0 -1480
  263. package/definitions/pricing-runtime.json +0 -1
  264. package/definitions/pricing-tier-runtime.json +0 -1
  265. package/definitions/pricing-tier.json +0 -105
  266. package/definitions/pricing.json +0 -9884
  267. package/definitions/purpose-runtime.json +0 -1
  268. package/definitions/purpose.json +0 -524
  269. package/definitions/sandbox-runtime.json +0 -1
  270. package/definitions/sandbox.json +0 -453
  271. package/definitions/submission-runtime.json +0 -1
  272. package/definitions/submission.json +0 -313
  273. package/definitions/targeting-runtime.json +0 -1
  274. package/definitions/targeting.json +0 -1474
  275. package/definitions/template-variables-runtime.json +0 -1
  276. package/definitions/template-variables.json +0 -1408
  277. package/definitions/user-runtime.json +0 -1
  278. package/definitions/user.json +0 -2408
  279. package/definitions/validation-rules-runtime.json +0 -1
  280. package/definitions/validation-rules.json +0 -1491
  281. package/definitions/webhooks-runtime.json +0 -1
  282. package/definitions/webhooks.json +0 -1525
  283. package/definitions/workflow-definition-runtime.json +0 -1
  284. package/definitions/workflow-definition.json +0 -3417
  285. package/definitions/workflow-runtime.json +0 -1
  286. package/definitions/workflow.json +0 -4106
  287. package/dist/kanban.d-DYVjUQ_S.d.cts +0 -630
  288. package/dist/kanban.d-DYVjUQ_S.d.ts +0 -630
  289. package/dist/organization.d-BxZWnh8L.d.cts +0 -628
  290. package/dist/organization.d-BxZWnh8L.d.ts +0 -628
@@ -1,1474 +0,0 @@
1
- {
2
- "openapi": "3.0.3",
3
- "info": {
4
- "title": "Targeting API",
5
- "description": "API for Targeting",
6
- "version": "1.1.0"
7
- },
8
- "tags": [
9
- {
10
- "name": "Campaign",
11
- "description": "Campaign Endpoints"
12
- },
13
- {
14
- "name": "Campaign Recipient",
15
- "description": "Campaign Recipient Endpoints"
16
- },
17
- {
18
- "name": "Campaign Delivery",
19
- "description": "Campaign Delivery Endpoints"
20
- },
21
- {
22
- "name": "Target",
23
- "description": "Target Endpoints"
24
- }
25
- ],
26
- "security": [
27
- {
28
- "EpilotAuth": []
29
- }
30
- ],
31
- "servers": [
32
- {
33
- "url": "https://targeting.sls.epilot.io"
34
- },
35
- {
36
- "url": "https://targeting.sls.epilot.io"
37
- },
38
- {
39
- "url": "https://targeting.sls.epilot.io",
40
- "description": "Production Server"
41
- }
42
- ],
43
- "paths": {
44
- "/v1/campaign/{campaign_id}/status": {
45
- "post": {
46
- "operationId": "changeCampaignStatus",
47
- "summary": "Change the status of a campaign",
48
- "description": "Change the status of a campaign to a desired status.\n\nThe status can be one of the following: active, inactive.\n\nStatus transition is accompanied by side effects, e.g., automation execution.\n",
49
- "tags": [
50
- "Campaign"
51
- ],
52
- "security": [
53
- {
54
- "EpilotAuth": []
55
- }
56
- ],
57
- "parameters": [
58
- {
59
- "$ref": "#/components/parameters/CampaignIdPathParam"
60
- }
61
- ],
62
- "responses": {
63
- "200": {
64
- "$ref": "#/components/responses/CampaignResponse"
65
- },
66
- "400": {
67
- "$ref": "#/components/responses/ClientErrorResponse"
68
- },
69
- "500": {
70
- "$ref": "#/components/responses/ServerErrorResponse"
71
- }
72
- }
73
- }
74
- },
75
- "/v1/campaign/{campaign_id}/job": {
76
- "get": {
77
- "operationId": "getCampaignJobStatus",
78
- "description": "Get the status of a campaign's automation job",
79
- "summary": "Get the status of a campaign's automation job",
80
- "tags": [
81
- "Campaign"
82
- ],
83
- "security": [
84
- {
85
- "EpilotAuth": []
86
- }
87
- ],
88
- "parameters": [
89
- {
90
- "$ref": "#/components/parameters/CampaignIdPathParam"
91
- }
92
- ],
93
- "responses": {
94
- "200": {
95
- "$ref": "#/components/responses/JobStatusResponse"
96
- },
97
- "400": {
98
- "$ref": "#/components/responses/ClientErrorResponse"
99
- },
100
- "500": {
101
- "$ref": "#/components/responses/ServerErrorResponse"
102
- }
103
- }
104
- }
105
- },
106
- "/v1/campaign/{campaign_id}/portals": {
107
- "get": {
108
- "operationId": "getCampaignPortals",
109
- "summary": "Get portals usage info for a campaign",
110
- "description": "Get the list of portals and its widgets where the campaign is used.\n",
111
- "tags": [
112
- "Campaign"
113
- ],
114
- "security": [
115
- {
116
- "EpilotAuth": []
117
- }
118
- ],
119
- "parameters": [
120
- {
121
- "$ref": "#/components/parameters/CampaignIdPathParam"
122
- }
123
- ],
124
- "responses": {
125
- "200": {
126
- "$ref": "#/components/responses/CampaignPortalsResponse"
127
- },
128
- "400": {
129
- "$ref": "#/components/responses/ClientErrorResponse"
130
- },
131
- "500": {
132
- "$ref": "#/components/responses/ServerErrorResponse"
133
- }
134
- }
135
- }
136
- },
137
- "/v1/campaign/{campaign_id}/automations:retrigger": {
138
- "post": {
139
- "operationId": "retriggerCampaignAutomations",
140
- "summary": "Retrigger automations for campaign recipients",
141
- "description": "Retrigger automation executions for specific campaign recipients that have failed.\n\nThis endpoint starts new automation executions for the specified recipients\nusing the campaign's associated automation flow. Only recipients with\nautomation_status 'failed' will be processed. Recipients with other statuses\n(success, pending, in_progress, cancelled) will be skipped to prevent\naccidentally retriggering successful or ongoing automations.\n",
142
- "tags": [
143
- "Campaign Delivery"
144
- ],
145
- "security": [
146
- {
147
- "EpilotAuth": []
148
- }
149
- ],
150
- "parameters": [
151
- {
152
- "$ref": "#/components/parameters/CampaignIdPathParam"
153
- }
154
- ],
155
- "requestBody": {
156
- "required": true,
157
- "content": {
158
- "application/json": {
159
- "schema": {
160
- "$ref": "#/components/schemas/RetriggerAutomationsRequest"
161
- }
162
- }
163
- }
164
- },
165
- "responses": {
166
- "200": {
167
- "$ref": "#/components/responses/RetriggerAutomationsResponse"
168
- },
169
- "400": {
170
- "$ref": "#/components/responses/ClientErrorResponse"
171
- },
172
- "404": {
173
- "$ref": "#/components/responses/ServerErrorResponse"
174
- },
175
- "500": {
176
- "$ref": "#/components/responses/ServerErrorResponse"
177
- }
178
- }
179
- }
180
- },
181
- "/v1/campaign:match": {
182
- "post": {
183
- "operationId": "matchCampaigns",
184
- "summary": "Match campaigns",
185
- "description": "Match campaigns based on target entities.\n\nThis endpoint returns the list of campaigns where the provided entities are part of the target.\n",
186
- "tags": [
187
- "Campaign"
188
- ],
189
- "security": [
190
- {
191
- "EpilotAuth": []
192
- }
193
- ],
194
- "requestBody": {
195
- "required": true,
196
- "content": {
197
- "application/json": {
198
- "schema": {
199
- "$ref": "#/components/schemas/MatchCampaignParams"
200
- }
201
- }
202
- }
203
- },
204
- "responses": {
205
- "200": {
206
- "$ref": "#/components/responses/MatchCampaignsResponse"
207
- },
208
- "400": {
209
- "$ref": "#/components/responses/ClientErrorResponse"
210
- },
211
- "500": {
212
- "$ref": "#/components/responses/ServerErrorResponse"
213
- }
214
- }
215
- }
216
- },
217
- "/v1/target:match": {
218
- "post": {
219
- "operationId": "matchTargets",
220
- "summary": "Match targets",
221
- "description": "Find targets from the provided list that include the provide entities.\n",
222
- "tags": [
223
- "Target"
224
- ],
225
- "security": [
226
- {
227
- "EpilotAuth": []
228
- }
229
- ],
230
- "requestBody": {
231
- "required": true,
232
- "content": {
233
- "application/json": {
234
- "schema": {
235
- "$ref": "#/components/schemas/MatchTargetParams"
236
- }
237
- }
238
- }
239
- },
240
- "responses": {
241
- "200": {
242
- "$ref": "#/components/responses/MatchTargetsResponse"
243
- },
244
- "400": {
245
- "$ref": "#/components/responses/ClientErrorResponse"
246
- },
247
- "500": {
248
- "$ref": "#/components/responses/ServerErrorResponse"
249
- }
250
- }
251
- }
252
- },
253
- "/v1/target/queries": {
254
- "post": {
255
- "operationId": "getTargetQueries",
256
- "summary": "Get target queries",
257
- "description": "Transform target filters into Lucene queries for the provided target IDs.\nReturns the transformed query string for each target along with any errors encountered.\n",
258
- "tags": [
259
- "Target"
260
- ],
261
- "security": [
262
- {
263
- "EpilotAuth": []
264
- }
265
- ],
266
- "requestBody": {
267
- "required": true,
268
- "content": {
269
- "application/json": {
270
- "schema": {
271
- "$ref": "#/components/schemas/GetTargetQueriesParams"
272
- }
273
- }
274
- }
275
- },
276
- "responses": {
277
- "200": {
278
- "$ref": "#/components/responses/GetTargetQueriesResponse"
279
- },
280
- "400": {
281
- "$ref": "#/components/responses/ClientErrorResponse"
282
- },
283
- "500": {
284
- "$ref": "#/components/responses/ServerErrorResponse"
285
- }
286
- }
287
- }
288
- },
289
- "/v1/campaign/{campaign_id}/recipient": {
290
- "post": {
291
- "operationId": "createRecipient",
292
- "summary": "Create a recipient associated with a campaign",
293
- "description": "Creates a new recipient associated with a campaign.",
294
- "tags": [
295
- "Campaign Recipient"
296
- ],
297
- "security": [
298
- {
299
- "EpilotAuth": []
300
- }
301
- ],
302
- "parameters": [
303
- {
304
- "$ref": "#/components/parameters/CampaignIdPathParam"
305
- }
306
- ],
307
- "requestBody": {
308
- "required": true,
309
- "content": {
310
- "application/json": {
311
- "schema": {
312
- "$ref": "#/components/schemas/CreateRecipientPayload"
313
- }
314
- }
315
- }
316
- },
317
- "responses": {
318
- "201": {
319
- "$ref": "#/components/responses/RecipientResponse"
320
- },
321
- "400": {
322
- "$ref": "#/components/responses/ClientErrorResponse"
323
- },
324
- "500": {
325
- "$ref": "#/components/responses/ServerErrorResponse"
326
- }
327
- }
328
- }
329
- },
330
- "/v1/campaign/{campaign_id}/recipient/{recipient_id}": {
331
- "patch": {
332
- "operationId": "updateRecipient",
333
- "summary": "Update a recipient",
334
- "description": "Updates a recipient's attributes.",
335
- "tags": [
336
- "Campaign Recipient"
337
- ],
338
- "security": [
339
- {
340
- "EpilotAuth": []
341
- }
342
- ],
343
- "parameters": [
344
- {
345
- "$ref": "#/components/parameters/CampaignIdPathParam"
346
- },
347
- {
348
- "$ref": "#/components/parameters/RecipientIdPathParam"
349
- }
350
- ],
351
- "requestBody": {
352
- "required": true,
353
- "content": {
354
- "application/json": {
355
- "schema": {
356
- "$ref": "#/components/schemas/UpdateRecipientPayload"
357
- }
358
- }
359
- }
360
- },
361
- "responses": {
362
- "200": {
363
- "$ref": "#/components/responses/RecipientResponse"
364
- },
365
- "400": {
366
- "$ref": "#/components/responses/ClientErrorResponse"
367
- },
368
- "500": {
369
- "$ref": "#/components/responses/ServerErrorResponse"
370
- }
371
- }
372
- }
373
- },
374
- "/v1/campaign/{campaign_id}/recipient/{recipient_id}/portal:status": {
375
- "patch": {
376
- "operationId": "updateRecipientPortalStatus",
377
- "summary": "Update portal status for a campaign recipient",
378
- "description": "Updates the portal status for a specific campaign recipient.\nThe portal_status_updated_at timestamp is automatically set when the status changes.\n\nStatus transition rules:\n- From 'sent': can change to 'seen', 'dismissed', or 'clicked'\n- From 'seen': can change to 'dismissed' or 'clicked'\n- From 'dismissed' or 'clicked': cannot be changed (final states)\n",
379
- "tags": [
380
- "Campaign Recipient"
381
- ],
382
- "security": [
383
- {
384
- "EpilotAuth": []
385
- }
386
- ],
387
- "parameters": [
388
- {
389
- "$ref": "#/components/parameters/CampaignIdPathParam"
390
- },
391
- {
392
- "$ref": "#/components/parameters/RecipientIdPathParam"
393
- }
394
- ],
395
- "requestBody": {
396
- "required": true,
397
- "content": {
398
- "application/json": {
399
- "schema": {
400
- "$ref": "#/components/schemas/UpdatePortalStatusRequest"
401
- }
402
- }
403
- }
404
- },
405
- "responses": {
406
- "200": {
407
- "$ref": "#/components/responses/RecipientResponse"
408
- },
409
- "400": {
410
- "$ref": "#/components/responses/ClientErrorResponse"
411
- },
412
- "404": {
413
- "$ref": "#/components/responses/ClientErrorResponse"
414
- },
415
- "409": {
416
- "$ref": "#/components/responses/ClientErrorResponse"
417
- },
418
- "500": {
419
- "$ref": "#/components/responses/ServerErrorResponse"
420
- }
421
- }
422
- }
423
- },
424
- "/v1/campaign/{campaign_id}/recipients": {
425
- "get": {
426
- "operationId": "getRecipients",
427
- "summary": "Get campaign recipients",
428
- "description": "Get a paginated list of recipients for a campaign.",
429
- "tags": [
430
- "Campaign Recipient"
431
- ],
432
- "security": [
433
- {
434
- "EpilotAuth": []
435
- }
436
- ],
437
- "parameters": [
438
- {
439
- "$ref": "#/components/parameters/CampaignIdPathParam"
440
- },
441
- {
442
- "name": "limit",
443
- "in": "query",
444
- "description": "Number of items to return",
445
- "schema": {
446
- "type": "integer",
447
- "default": 25
448
- }
449
- },
450
- {
451
- "name": "next",
452
- "in": "query",
453
- "description": "Cursor for pagination",
454
- "schema": {
455
- "type": "string"
456
- }
457
- },
458
- {
459
- "name": "q",
460
- "in": "query",
461
- "description": "Search by recipient title",
462
- "schema": {
463
- "type": "string"
464
- }
465
- },
466
- {
467
- "name": "automation_status",
468
- "in": "query",
469
- "description": "Filter by automation status",
470
- "schema": {
471
- "$ref": "#/components/schemas/AutomationStatus"
472
- }
473
- },
474
- {
475
- "name": "portal_status",
476
- "in": "query",
477
- "description": "Filter by portal status",
478
- "schema": {
479
- "$ref": "#/components/schemas/PortalStatus"
480
- }
481
- }
482
- ],
483
- "responses": {
484
- "200": {
485
- "$ref": "#/components/responses/RecipientsResponse"
486
- },
487
- "400": {
488
- "$ref": "#/components/responses/ClientErrorResponse"
489
- },
490
- "500": {
491
- "$ref": "#/components/responses/ServerErrorResponse"
492
- }
493
- }
494
- }
495
- }
496
- },
497
- "components": {
498
- "schemas": {
499
- "BaseError": {
500
- "type": "object",
501
- "properties": {
502
- "status": {
503
- "type": "integer",
504
- "example": 404
505
- },
506
- "message": {
507
- "type": "string",
508
- "example": "Entity not found"
509
- }
510
- },
511
- "required": [
512
- "status",
513
- "message"
514
- ]
515
- },
516
- "ServerError": {
517
- "$ref": "#/components/schemas/BaseError"
518
- },
519
- "ClientError": {
520
- "oneOf": [
521
- {
522
- "type": "object",
523
- "title": "MessageError",
524
- "description": "An error object containing a human-readable message.",
525
- "properties": {
526
- "message": {
527
- "type": "string",
528
- "description": "A descriptive error message.",
529
- "example": "The provided input was invalid."
530
- }
531
- },
532
- "required": [
533
- "message"
534
- ],
535
- "additionalProperties": false
536
- },
537
- {
538
- "type": "object",
539
- "title": "CodeError",
540
- "description": "An error object containing a specific machine-readable error code.",
541
- "properties": {
542
- "code": {
543
- "type": "string",
544
- "description": "A specific machine-readable error code indicating a known error condition.",
545
- "enum": [
546
- "CAMPAIGN_NOT_FOUND",
547
- "CAMPAIGN_HAS_NO_TARGET",
548
- "CAMPAIGN_HAS_NO_DELIVERY_METHOD",
549
- "CAMPAIGN_HAS_JOB_IN_PROGRESS",
550
- "CAMPAIGN_HAS_UNEXPECTED_STATUS",
551
- "JOB_TOKEN_MISSING",
552
- "TARGET_WITHOUT_FILTERS"
553
- ],
554
- "example": "CAMPAIGN_NOT_FOUND"
555
- }
556
- },
557
- "required": [
558
- "code"
559
- ],
560
- "additionalProperties": false
561
- },
562
- {
563
- "type": "object",
564
- "title": "StatusedError",
565
- "description": "An error object containing a message and an explicit status, typically from a more generic error handler.",
566
- "properties": {
567
- "error": {
568
- "type": "string",
569
- "description": "A descriptive error message.",
570
- "example": "An unexpected error occurred during processing."
571
- },
572
- "status": {
573
- "type": "integer",
574
- "description": "An explicit status code in the body, often mirroring the HTTP status but provided for programmatic access.",
575
- "example": 400
576
- }
577
- },
578
- "required": [
579
- "error",
580
- "status"
581
- ],
582
- "additionalProperties": false
583
- }
584
- ],
585
- "description": "Describes the structure of a client error response, which can be one of several types:\n1. `MessageError`: Contains a 'message' field for general descriptive errors.\n2. `CodeError`: Contains a 'code' field for specific, machine-readable error codes.\n3. `StatusedError`: Contains 'error' and 'status' fields.\nThe HTTP status code of the response itself (e.g., 400, 404, 409) will always indicate the overall error category.\n"
586
- },
587
- "BaseUUID": {
588
- "type": "string",
589
- "format": "uuid",
590
- "example": "b8c01433-5556-4e2b-aad4-6f5348d1df84"
591
- },
592
- "BaseNanoID": {
593
- "type": "string",
594
- "example": "xHcOoJCa07eysJ1GaQeSb"
595
- },
596
- "BaseTags": {
597
- "type": "array",
598
- "nullable": true,
599
- "items": {
600
- "type": "string"
601
- }
602
- },
603
- "BaseRelation": {
604
- "type": "object",
605
- "properties": {
606
- "$relation": {
607
- "type": "array",
608
- "items": {
609
- "type": "object",
610
- "properties": {
611
- "entity_id": {
612
- "$ref": "#/components/schemas/BaseUUID"
613
- },
614
- "_tags": {
615
- "$ref": "#/components/schemas/BaseTags"
616
- }
617
- }
618
- }
619
- }
620
- }
621
- },
622
- "BaseSystemId": {
623
- "type": "object",
624
- "readOnly": true,
625
- "properties": {
626
- "_id": {
627
- "$ref": "#/components/schemas/BaseUUID"
628
- }
629
- },
630
- "required": [
631
- "_id"
632
- ]
633
- },
634
- "BaseEntityOwner": {
635
- "description": "The user / organization owning this entity.\n\nNote: Owner implicitly has access to the entity regardless of ACLs.\n",
636
- "type": "object",
637
- "properties": {
638
- "org_id": {
639
- "type": "string",
640
- "example": "123"
641
- },
642
- "user_id": {
643
- "type": "string",
644
- "example": "123"
645
- }
646
- },
647
- "required": [
648
- "org_id"
649
- ]
650
- },
651
- "BaseEntityAcl": {
652
- "type": "object",
653
- "description": "Access control list (ACL) for an entity. Defines sharing access to external orgs or users.",
654
- "additionalProperties": true,
655
- "readOnly": true,
656
- "properties": {
657
- "view": {
658
- "type": "array",
659
- "items": {
660
- "type": "string",
661
- "example": "org:456"
662
- }
663
- },
664
- "edit": {
665
- "type": "array",
666
- "items": {
667
- "type": "string",
668
- "example": "org:456"
669
- }
670
- },
671
- "delete": {
672
- "type": "array",
673
- "items": {
674
- "type": "string",
675
- "example": "org:456"
676
- }
677
- }
678
- }
679
- },
680
- "BaseSystemFields": {
681
- "type": "object",
682
- "properties": {
683
- "_id": {
684
- "$ref": "#/components/schemas/BaseUUID"
685
- },
686
- "_org": {
687
- "type": "string",
688
- "description": "Organization Id the entity belongs to",
689
- "readOnly": true
690
- },
691
- "_owners": {
692
- "type": "array",
693
- "readOnly": true,
694
- "items": {
695
- "$ref": "#/components/schemas/BaseEntityOwner"
696
- }
697
- },
698
- "_schema": {
699
- "readOnly": true,
700
- "type": "string"
701
- },
702
- "_title": {
703
- "readOnly": true,
704
- "type": "string"
705
- },
706
- "_tags": {
707
- "$ref": "#/components/schemas/BaseTags"
708
- },
709
- "_created_at": {
710
- "readOnly": true,
711
- "type": "string",
712
- "format": "date-time"
713
- },
714
- "_updated_at": {
715
- "readOnly": true,
716
- "type": "string",
717
- "format": "date-time"
718
- },
719
- "_acl": {
720
- "$ref": "#/components/schemas/BaseEntityAcl"
721
- }
722
- }
723
- },
724
- "BaseSystemFieldsRequired": {
725
- "type": "object",
726
- "required": [
727
- "_org",
728
- "_owners",
729
- "_schema",
730
- "_title",
731
- "_tags",
732
- "_created_at",
733
- "_updated_at",
734
- "_acl"
735
- ]
736
- },
737
- "CampaignStatus": {
738
- "type": "string",
739
- "default": "draft",
740
- "enum": [
741
- "draft",
742
- "activating",
743
- "active",
744
- "inactive"
745
- ]
746
- },
747
- "ExecutionSummaryItem": {
748
- "type": "object",
749
- "properties": {
750
- "execution_id": {
751
- "type": "string"
752
- },
753
- "execution_status": {
754
- "type": "string"
755
- }
756
- }
757
- },
758
- "JobStatus": {
759
- "type": "object",
760
- "properties": {
761
- "status": {
762
- "type": "string",
763
- "description": "The status of the automation job",
764
- "enum": [
765
- "queued",
766
- "processing",
767
- "finished",
768
- "failed",
769
- "cancelled",
770
- "send_report"
771
- ]
772
- },
773
- "execution_summary": {
774
- "type": "array",
775
- "items": {
776
- "$ref": "#/components/schemas/ExecutionSummaryItem"
777
- }
778
- }
779
- }
780
- },
781
- "Campaign": {
782
- "allOf": [
783
- {
784
- "$ref": "#/components/schemas/BaseSystemFields"
785
- },
786
- {
787
- "type": "object",
788
- "properties": {
789
- "name": {
790
- "type": "string"
791
- },
792
- "goal": {
793
- "type": "string"
794
- },
795
- "status": {
796
- "$ref": "#/components/schemas/CampaignStatus"
797
- },
798
- "start_date": {
799
- "type": "string",
800
- "format": "date"
801
- },
802
- "end_date": {
803
- "type": "string",
804
- "format": "date"
805
- },
806
- "flow_id": {
807
- "type": "string"
808
- },
809
- "job_id": {
810
- "type": "string"
811
- },
812
- "target": {
813
- "$ref": "#/components/schemas/BaseRelation"
814
- }
815
- }
816
- }
817
- ]
818
- },
819
- "Target": {
820
- "allOf": [
821
- {
822
- "$ref": "#/components/schemas/BaseSystemFields"
823
- },
824
- {
825
- "type": "object",
826
- "properties": {
827
- "name": {
828
- "type": "string"
829
- },
830
- "description": {
831
- "type": "string"
832
- },
833
- "entity_schema": {
834
- "type": "string"
835
- },
836
- "entity_filters": {
837
- "type": "object",
838
- "additionalProperties": true
839
- }
840
- }
841
- }
842
- ]
843
- },
844
- "MatchCampaignParams": {
845
- "type": "object",
846
- "properties": {
847
- "entity_refs": {
848
- "type": "array",
849
- "description": "List of entities (e.g. Contacts or Contracts) that should be part of the campaign target.",
850
- "items": {
851
- "type": "object",
852
- "properties": {
853
- "entity_id": {
854
- "$ref": "#/components/schemas/BaseUUID"
855
- },
856
- "entity_schema": {
857
- "type": "string"
858
- }
859
- },
860
- "required": [
861
- "entity_id",
862
- "entity_schema"
863
- ],
864
- "additionalProperties": false
865
- }
866
- },
867
- "campaign_ids": {
868
- "type": "array",
869
- "description": "List of campaign IDs to check.",
870
- "items": {
871
- "$ref": "#/components/schemas/BaseUUID"
872
- },
873
- "example": [
874
- "b8c01433-5556-4e2b-aad4-6f5348d1df84"
875
- ],
876
- "minItems": 1,
877
- "maxItems": 100,
878
- "uniqueItems": true
879
- }
880
- },
881
- "required": [
882
- "entity_refs",
883
- "campaign_ids"
884
- ],
885
- "additionalProperties": false
886
- },
887
- "MatchTargetParams": {
888
- "type": "object",
889
- "properties": {
890
- "entity_refs": {
891
- "type": "array",
892
- "description": "List of entities (e.g. Contacts or Contracts) that should be part of the targets.",
893
- "items": {
894
- "type": "object",
895
- "properties": {
896
- "entity_id": {
897
- "$ref": "#/components/schemas/BaseUUID"
898
- },
899
- "entity_schema": {
900
- "type": "string"
901
- }
902
- },
903
- "required": [
904
- "entity_id",
905
- "entity_schema"
906
- ],
907
- "additionalProperties": false
908
- }
909
- },
910
- "target_ids": {
911
- "type": "array",
912
- "description": "List of target IDs to check.",
913
- "items": {
914
- "$ref": "#/components/schemas/BaseUUID"
915
- },
916
- "example": [
917
- "b8c01433-5556-4e2b-aad4-6f5348d1df84"
918
- ],
919
- "minItems": 1,
920
- "maxItems": 100,
921
- "uniqueItems": true
922
- }
923
- },
924
- "required": [
925
- "entity_refs",
926
- "target_ids"
927
- ],
928
- "additionalProperties": false
929
- },
930
- "GetTargetQueriesParams": {
931
- "type": "object",
932
- "properties": {
933
- "target_ids": {
934
- "type": "array",
935
- "description": "List of target IDs to transform into queries.",
936
- "items": {
937
- "$ref": "#/components/schemas/BaseUUID"
938
- },
939
- "example": [
940
- "b8c01433-5556-4e2b-aad4-6f5348d1df84"
941
- ],
942
- "minItems": 1,
943
- "uniqueItems": true
944
- }
945
- },
946
- "required": [
947
- "target_ids"
948
- ],
949
- "additionalProperties": false
950
- },
951
- "TargetQueryResult": {
952
- "type": "object",
953
- "properties": {
954
- "target_id": {
955
- "$ref": "#/components/schemas/BaseUUID"
956
- },
957
- "query": {
958
- "type": "string",
959
- "description": "Transformed query string, or null if transformation failed.",
960
- "nullable": true
961
- },
962
- "error": {
963
- "type": "string",
964
- "description": "Error message if query transformation failed."
965
- }
966
- },
967
- "required": [
968
- "target_id",
969
- "query"
970
- ]
971
- },
972
- "AutomationStatus": {
973
- "type": "string",
974
- "enum": [
975
- "pending",
976
- "in_progress",
977
- "success",
978
- "failed",
979
- "cancelled"
980
- ]
981
- },
982
- "PortalStatus": {
983
- "type": "string",
984
- "enum": [
985
- "sent",
986
- "seen",
987
- "dismissed",
988
- "clicked"
989
- ]
990
- },
991
- "Recipient": {
992
- "type": "object",
993
- "properties": {
994
- "entity_id": {
995
- "$ref": "#/components/schemas/BaseUUID"
996
- },
997
- "entity_schema": {
998
- "type": "string"
999
- },
1000
- "title": {
1001
- "type": "string"
1002
- },
1003
- "automation_status": {
1004
- "$ref": "#/components/schemas/AutomationStatus"
1005
- },
1006
- "automation_execution_id": {
1007
- "type": "string"
1008
- },
1009
- "portal_status": {
1010
- "$ref": "#/components/schemas/PortalStatus"
1011
- },
1012
- "portal_status_updated_at": {
1013
- "type": "string",
1014
- "format": "date-time"
1015
- },
1016
- "portal_state": {
1017
- "type": "object",
1018
- "additionalProperties": true
1019
- },
1020
- "updated_at": {
1021
- "type": "string",
1022
- "format": "date-time"
1023
- }
1024
- }
1025
- },
1026
- "BaseRecipientPayload": {
1027
- "type": "object",
1028
- "properties": {
1029
- "entity_id": {
1030
- "$ref": "#/components/schemas/BaseUUID"
1031
- },
1032
- "entity_schema": {
1033
- "type": "string"
1034
- }
1035
- },
1036
- "required": [
1037
- "entity_id",
1038
- "entity_schema"
1039
- ]
1040
- },
1041
- "AutomationRecipientPayload": {
1042
- "type": "object",
1043
- "properties": {
1044
- "automation_status": {
1045
- "$ref": "#/components/schemas/AutomationStatus"
1046
- },
1047
- "automation_execution_id": {
1048
- "type": "string"
1049
- }
1050
- },
1051
- "required": [
1052
- "automation_status",
1053
- "automation_execution_id"
1054
- ]
1055
- },
1056
- "PortalRecipientPayload": {
1057
- "type": "object",
1058
- "properties": {
1059
- "portal_status": {
1060
- "$ref": "#/components/schemas/PortalStatus"
1061
- },
1062
- "portal_state": {
1063
- "type": "object",
1064
- "additionalProperties": true
1065
- }
1066
- },
1067
- "required": [
1068
- "portal_status"
1069
- ]
1070
- },
1071
- "CreateRecipientPayload": {
1072
- "oneOf": [
1073
- {
1074
- "allOf": [
1075
- {
1076
- "$ref": "#/components/schemas/BaseRecipientPayload"
1077
- },
1078
- {
1079
- "$ref": "#/components/schemas/AutomationRecipientPayload"
1080
- }
1081
- ]
1082
- },
1083
- {
1084
- "allOf": [
1085
- {
1086
- "$ref": "#/components/schemas/BaseRecipientPayload"
1087
- },
1088
- {
1089
- "$ref": "#/components/schemas/PortalRecipientPayload"
1090
- }
1091
- ]
1092
- },
1093
- {
1094
- "allOf": [
1095
- {
1096
- "$ref": "#/components/schemas/BaseRecipientPayload"
1097
- },
1098
- {
1099
- "$ref": "#/components/schemas/AutomationRecipientPayload"
1100
- },
1101
- {
1102
- "$ref": "#/components/schemas/PortalRecipientPayload"
1103
- }
1104
- ]
1105
- }
1106
- ]
1107
- },
1108
- "UpdateRecipientPayload": {
1109
- "type": "object",
1110
- "properties": {
1111
- "automation_status": {
1112
- "$ref": "#/components/schemas/AutomationStatus"
1113
- },
1114
- "automation_execution_id": {
1115
- "type": "string"
1116
- },
1117
- "portal_status": {
1118
- "$ref": "#/components/schemas/PortalStatus"
1119
- },
1120
- "portal_state": {
1121
- "type": "object",
1122
- "additionalProperties": true
1123
- }
1124
- }
1125
- },
1126
- "RetriggerAutomationsRequest": {
1127
- "type": "object",
1128
- "properties": {
1129
- "recipient_ids": {
1130
- "type": "array",
1131
- "description": "List of recipient IDs to retrigger automations for",
1132
- "items": {
1133
- "type": "string",
1134
- "format": "uuid"
1135
- }
1136
- }
1137
- },
1138
- "required": [
1139
- "recipient_ids"
1140
- ]
1141
- },
1142
- "RetriggerAutomationsResult": {
1143
- "type": "object",
1144
- "properties": {
1145
- "recipient_id": {
1146
- "type": "string",
1147
- "format": "uuid",
1148
- "description": "The ID of the recipient"
1149
- },
1150
- "result": {
1151
- "type": "string",
1152
- "description": "The result of the retriggering operation",
1153
- "enum": [
1154
- "success",
1155
- "failure",
1156
- "not_found",
1157
- "invalid_status"
1158
- ]
1159
- },
1160
- "execution_id": {
1161
- "type": "string",
1162
- "description": "The ID of the new automation execution (if successful)"
1163
- },
1164
- "error": {
1165
- "type": "string",
1166
- "description": "The error message if the operation failed"
1167
- }
1168
- },
1169
- "required": [
1170
- "recipient_id",
1171
- "result"
1172
- ]
1173
- },
1174
- "UpdatePortalStatusRequest": {
1175
- "type": "object",
1176
- "properties": {
1177
- "status": {
1178
- "$ref": "#/components/schemas/PortalStatus"
1179
- }
1180
- },
1181
- "required": [
1182
- "status"
1183
- ]
1184
- }
1185
- },
1186
- "securitySchemes": {
1187
- "EpilotAuth": {
1188
- "type": "http",
1189
- "scheme": "bearer",
1190
- "description": "Authorization header with epilot OAuth2 bearer token",
1191
- "bearerFormat": "JWT"
1192
- }
1193
- },
1194
- "parameters": {
1195
- "CampaignIdPathParam": {
1196
- "name": "campaign_id",
1197
- "description": "The campaign ID",
1198
- "in": "path",
1199
- "required": true,
1200
- "schema": {
1201
- "$ref": "#/components/schemas/BaseUUID"
1202
- }
1203
- },
1204
- "RecipientIdPathParam": {
1205
- "name": "recipient_id",
1206
- "description": "The entity ID of the recipient",
1207
- "in": "path",
1208
- "required": true,
1209
- "schema": {
1210
- "$ref": "#/components/schemas/BaseUUID"
1211
- }
1212
- }
1213
- },
1214
- "responses": {
1215
- "ClientErrorResponse": {
1216
- "description": "Any error based on client data errors",
1217
- "content": {
1218
- "application/json": {
1219
- "schema": {
1220
- "$ref": "#/components/schemas/ClientError"
1221
- }
1222
- }
1223
- }
1224
- },
1225
- "ServerErrorResponse": {
1226
- "description": "Any error based on the server-side",
1227
- "content": {
1228
- "application/json": {
1229
- "schema": {
1230
- "$ref": "#/components/schemas/ServerError"
1231
- }
1232
- }
1233
- }
1234
- },
1235
- "CampaignResponse": {
1236
- "description": "Campaign entity response",
1237
- "content": {
1238
- "application/json": {
1239
- "schema": {
1240
- "type": "object",
1241
- "properties": {
1242
- "campaign": {
1243
- "$ref": "#/components/schemas/Campaign"
1244
- }
1245
- }
1246
- }
1247
- }
1248
- }
1249
- },
1250
- "JobStatusResponse": {
1251
- "description": "Campaign job status response",
1252
- "content": {
1253
- "application/json": {
1254
- "schema": {
1255
- "$ref": "#/components/schemas/JobStatus"
1256
- }
1257
- }
1258
- }
1259
- },
1260
- "RecipientResponse": {
1261
- "description": "Recipient response",
1262
- "content": {
1263
- "application/json": {
1264
- "schema": {
1265
- "$ref": "#/components/schemas/Recipient"
1266
- }
1267
- }
1268
- }
1269
- },
1270
- "RecipientsResponse": {
1271
- "description": "List of campaign recipients",
1272
- "content": {
1273
- "application/json": {
1274
- "schema": {
1275
- "type": "object",
1276
- "properties": {
1277
- "results": {
1278
- "type": "array",
1279
- "items": {
1280
- "$ref": "#/components/schemas/Recipient"
1281
- }
1282
- },
1283
- "next": {
1284
- "type": "string",
1285
- "nullable": true,
1286
- "description": "Cursor for next page of results"
1287
- },
1288
- "total": {
1289
- "type": "integer",
1290
- "description": "Total number of recipients"
1291
- }
1292
- }
1293
- }
1294
- }
1295
- }
1296
- },
1297
- "MatchCampaignsResponse": {
1298
- "description": "List of campaigns where the target entities match the given entities.",
1299
- "content": {
1300
- "application/json": {
1301
- "schema": {
1302
- "type": "object",
1303
- "properties": {
1304
- "hits": {
1305
- "type": "number",
1306
- "description": "Number of matching campaigns."
1307
- },
1308
- "results": {
1309
- "type": "array",
1310
- "description": "List of matching campaigns.",
1311
- "items": {
1312
- "type": "object",
1313
- "properties": {
1314
- "campaign": {
1315
- "$ref": "#/components/schemas/Campaign"
1316
- }
1317
- },
1318
- "required": [
1319
- "campaign"
1320
- ]
1321
- }
1322
- }
1323
- }
1324
- }
1325
- }
1326
- }
1327
- },
1328
- "MatchTargetsResponse": {
1329
- "description": "List of targets where the given entities are found.",
1330
- "content": {
1331
- "application/json": {
1332
- "schema": {
1333
- "type": "object",
1334
- "properties": {
1335
- "hits": {
1336
- "type": "number",
1337
- "description": "Number of matching targets."
1338
- },
1339
- "results": {
1340
- "type": "array",
1341
- "description": "List of matching targets.",
1342
- "items": {
1343
- "type": "object",
1344
- "properties": {
1345
- "target": {
1346
- "$ref": "#/components/schemas/Target"
1347
- }
1348
- },
1349
- "required": [
1350
- "target"
1351
- ]
1352
- }
1353
- }
1354
- }
1355
- }
1356
- }
1357
- }
1358
- },
1359
- "GetTargetQueriesResponse": {
1360
- "description": "List of transformed target queries.",
1361
- "content": {
1362
- "application/json": {
1363
- "schema": {
1364
- "type": "object",
1365
- "properties": {
1366
- "results": {
1367
- "type": "array",
1368
- "description": "List of target query results.",
1369
- "items": {
1370
- "$ref": "#/components/schemas/TargetQueryResult"
1371
- }
1372
- }
1373
- },
1374
- "required": [
1375
- "results"
1376
- ]
1377
- }
1378
- }
1379
- }
1380
- },
1381
- "CampaignPortalsResponse": {
1382
- "description": "List of portals and its widgets where the campaign is used",
1383
- "content": {
1384
- "application/json": {
1385
- "schema": {
1386
- "type": "array",
1387
- "items": {
1388
- "type": "object",
1389
- "properties": {
1390
- "portal": {
1391
- "type": "object",
1392
- "properties": {
1393
- "origin": {
1394
- "type": "string",
1395
- "description": "The origin of the portal"
1396
- },
1397
- "domain": {
1398
- "type": "string",
1399
- "description": "The domain of the portal"
1400
- },
1401
- "name": {
1402
- "type": "string",
1403
- "description": "The name of the portal"
1404
- }
1405
- }
1406
- },
1407
- "widgets": {
1408
- "type": "array",
1409
- "items": {
1410
- "type": "object",
1411
- "properties": {
1412
- "id": {
1413
- "type": "string",
1414
- "description": "The ID of the widget"
1415
- },
1416
- "headline": {
1417
- "type": "object",
1418
- "properties": {
1419
- "en": {
1420
- "type": "string",
1421
- "description": "The headline in English"
1422
- },
1423
- "de": {
1424
- "type": "string",
1425
- "description": "The headline in German"
1426
- }
1427
- }
1428
- }
1429
- },
1430
- "required": [
1431
- "id"
1432
- ]
1433
- }
1434
- }
1435
- },
1436
- "required": [
1437
- "portal",
1438
- "widgets"
1439
- ]
1440
- }
1441
- }
1442
- }
1443
- }
1444
- },
1445
- "RetriggerAutomationsResponse": {
1446
- "description": "Response to a request to retrigger automations for campaign recipients",
1447
- "content": {
1448
- "application/json": {
1449
- "schema": {
1450
- "type": "object",
1451
- "properties": {
1452
- "message": {
1453
- "type": "string",
1454
- "description": "A confirmation message indicating the request was received and processed"
1455
- },
1456
- "results": {
1457
- "type": "array",
1458
- "description": "List of retriggering results",
1459
- "items": {
1460
- "$ref": "#/components/schemas/RetriggerAutomationsResult"
1461
- }
1462
- }
1463
- },
1464
- "required": [
1465
- "message",
1466
- "results"
1467
- ]
1468
- }
1469
- }
1470
- }
1471
- }
1472
- }
1473
- }
1474
- }