@epilot/sdk 2.0.0-beta.3 → 2.0.0-beta.6

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 (375) hide show
  1. package/definitions/access-token-runtime.json +1 -0
  2. package/definitions/access-token.json +663 -0
  3. package/definitions/address-runtime.json +1 -0
  4. package/definitions/address-suggestions-runtime.json +1 -0
  5. package/definitions/address-suggestions.json +582 -0
  6. package/definitions/address.json +578 -0
  7. package/definitions/ai-agents-runtime.json +1 -0
  8. package/definitions/ai-agents.json +1711 -0
  9. package/definitions/app-runtime.json +1 -0
  10. package/definitions/app.json +4443 -0
  11. package/definitions/audit-logs-runtime.json +1 -0
  12. package/definitions/audit-logs.json +305 -0
  13. package/definitions/automation-runtime.json +1 -0
  14. package/definitions/automation.json +4850 -0
  15. package/definitions/billing-runtime.json +1 -0
  16. package/definitions/billing.json +837 -0
  17. package/definitions/blueprint-manifest-runtime.json +1 -0
  18. package/definitions/blueprint-manifest.json +3376 -0
  19. package/definitions/consent-runtime.json +1 -0
  20. package/definitions/consent.json +344 -0
  21. package/definitions/customer-portal-runtime.json +1 -0
  22. package/definitions/customer-portal.json +15000 -0
  23. package/definitions/dashboard-runtime.json +1 -0
  24. package/definitions/dashboard.json +484 -0
  25. package/definitions/data-management-runtime.json +1 -0
  26. package/definitions/data-management.json +962 -0
  27. package/definitions/deduplication-runtime.json +1 -0
  28. package/definitions/deduplication.json +183 -0
  29. package/definitions/design-runtime.json +1 -0
  30. package/definitions/design.json +1423 -0
  31. package/definitions/document-runtime.json +1 -0
  32. package/definitions/document.json +758 -0
  33. package/definitions/email-settings-runtime.json +1 -0
  34. package/definitions/email-settings.json +2627 -0
  35. package/definitions/email-template-runtime.json +1 -0
  36. package/definitions/email-template.json +1419 -0
  37. package/definitions/entity-mapping-runtime.json +1 -0
  38. package/definitions/entity-mapping.json +1642 -0
  39. package/definitions/entity-runtime.json +1 -0
  40. package/definitions/entity.json +10074 -0
  41. package/definitions/environments-runtime.json +1 -0
  42. package/definitions/environments.json +363 -0
  43. package/definitions/erp-integration-runtime.json +1 -0
  44. package/definitions/erp-integration.json +5845 -0
  45. package/definitions/event-catalog-runtime.json +1 -0
  46. package/definitions/event-catalog.json +1051 -0
  47. package/definitions/file-runtime.json +1 -0
  48. package/definitions/file.json +2842 -0
  49. package/definitions/iban-runtime.json +1 -0
  50. package/definitions/iban.json +132 -0
  51. package/definitions/journey-runtime.json +1 -0
  52. package/definitions/journey.json +2341 -0
  53. package/definitions/kanban-runtime.json +1 -0
  54. package/definitions/kanban.json +929 -0
  55. package/definitions/message-runtime.json +1 -0
  56. package/definitions/message.json +2660 -0
  57. package/definitions/metering-runtime.json +1 -0
  58. package/definitions/metering.json +2321 -0
  59. package/definitions/notes-runtime.json +1 -0
  60. package/definitions/notes.json +1531 -0
  61. package/definitions/notification-runtime.json +1 -0
  62. package/definitions/notification.json +1425 -0
  63. package/definitions/organization-runtime.json +1 -0
  64. package/definitions/organization.json +629 -0
  65. package/definitions/partner-directory-runtime.json +1 -0
  66. package/definitions/partner-directory.json +1718 -0
  67. package/definitions/permissions-runtime.json +1 -0
  68. package/definitions/permissions.json +1480 -0
  69. package/definitions/pricing-runtime.json +1 -0
  70. package/definitions/pricing-tier-runtime.json +1 -0
  71. package/definitions/pricing-tier.json +105 -0
  72. package/definitions/pricing.json +9884 -0
  73. package/definitions/purpose-runtime.json +1 -0
  74. package/definitions/purpose.json +524 -0
  75. package/definitions/sandbox-runtime.json +1 -0
  76. package/definitions/sandbox.json +453 -0
  77. package/definitions/submission-runtime.json +1 -0
  78. package/definitions/submission.json +313 -0
  79. package/definitions/targeting-runtime.json +1 -0
  80. package/definitions/targeting.json +1474 -0
  81. package/definitions/template-variables-runtime.json +1 -0
  82. package/definitions/template-variables.json +1408 -0
  83. package/definitions/user-runtime.json +1 -0
  84. package/definitions/user.json +2408 -0
  85. package/definitions/validation-rules-runtime.json +1 -0
  86. package/definitions/validation-rules.json +1491 -0
  87. package/definitions/webhooks-runtime.json +1 -0
  88. package/definitions/webhooks.json +1525 -0
  89. package/definitions/workflow-definition-runtime.json +1 -0
  90. package/definitions/workflow-definition.json +3417 -0
  91. package/definitions/workflow-runtime.json +1 -0
  92. package/definitions/workflow.json +4106 -0
  93. package/dist/{access-token.d-BuXO-21p.d.cts → access-token.d-CnmUTOlq.d.cts} +1 -1
  94. package/dist/{access-token.d-BuXO-21p.d.ts → access-token.d-CnmUTOlq.d.ts} +1 -1
  95. package/dist/{address-suggestions.d-Cay0qOfA.d.cts → address-suggestions.d-_YwTOR-9.d.cts} +1 -1
  96. package/dist/{address-suggestions.d-Cay0qOfA.d.ts → address-suggestions.d-_YwTOR-9.d.ts} +1 -1
  97. package/dist/{address.d-D-oZY0rk.d.cts → address.d-CwAPOVxa.d.cts} +1 -1
  98. package/dist/{address.d-D-oZY0rk.d.ts → address.d-CwAPOVxa.d.ts} +1 -1
  99. package/dist/{ai-agents.d-B4_CZTCP.d.cts → ai-agents.d-OkXfr2bz.d.cts} +1 -1
  100. package/dist/{ai-agents.d-B4_CZTCP.d.ts → ai-agents.d-OkXfr2bz.d.ts} +1 -1
  101. package/dist/apis/access-token.cjs +13 -84
  102. package/dist/apis/access-token.d.cts +3 -3
  103. package/dist/apis/access-token.d.ts +3 -3
  104. package/dist/apis/access-token.js +11 -82
  105. package/dist/apis/address-suggestions.cjs +13 -127
  106. package/dist/apis/address-suggestions.d.cts +3 -3
  107. package/dist/apis/address-suggestions.d.ts +3 -3
  108. package/dist/apis/address-suggestions.js +11 -125
  109. package/dist/apis/address.cjs +13 -79
  110. package/dist/apis/address.d.cts +3 -3
  111. package/dist/apis/address.d.ts +3 -3
  112. package/dist/apis/address.js +11 -77
  113. package/dist/apis/ai-agents.cjs +13 -210
  114. package/dist/apis/ai-agents.d.cts +3 -3
  115. package/dist/apis/ai-agents.d.ts +3 -3
  116. package/dist/apis/ai-agents.js +11 -208
  117. package/dist/apis/app.cjs +13 -568
  118. package/dist/apis/app.d.cts +3 -3
  119. package/dist/apis/app.d.ts +3 -3
  120. package/dist/apis/app.js +11 -566
  121. package/dist/apis/audit-logs.cjs +13 -50
  122. package/dist/apis/audit-logs.d.cts +3 -3
  123. package/dist/apis/audit-logs.d.ts +3 -3
  124. package/dist/apis/audit-logs.js +11 -48
  125. package/dist/apis/automation.cjs +13 -277
  126. package/dist/apis/automation.d.cts +3 -3
  127. package/dist/apis/automation.d.ts +3 -3
  128. package/dist/apis/automation.js +11 -275
  129. package/dist/apis/billing.cjs +13 -170
  130. package/dist/apis/billing.d.cts +3 -3
  131. package/dist/apis/billing.d.ts +3 -3
  132. package/dist/apis/billing.js +11 -168
  133. package/dist/apis/blueprint-manifest.cjs +13 -499
  134. package/dist/apis/blueprint-manifest.d.cts +3 -3
  135. package/dist/apis/blueprint-manifest.d.ts +3 -3
  136. package/dist/apis/blueprint-manifest.js +11 -497
  137. package/dist/apis/consent.cjs +13 -79
  138. package/dist/apis/consent.d.cts +3 -3
  139. package/dist/apis/consent.d.ts +3 -3
  140. package/dist/apis/consent.js +11 -77
  141. package/dist/apis/customer-portal.cjs +13 -2247
  142. package/dist/apis/customer-portal.d.cts +3 -3
  143. package/dist/apis/customer-portal.d.ts +3 -3
  144. package/dist/apis/customer-portal.js +11 -2245
  145. package/dist/apis/dashboard.cjs +13 -79
  146. package/dist/apis/dashboard.d.cts +3 -3
  147. package/dist/apis/dashboard.d.ts +3 -3
  148. package/dist/apis/dashboard.js +11 -77
  149. package/dist/apis/data-management.cjs +13 -235
  150. package/dist/apis/data-management.d.cts +3 -3
  151. package/dist/apis/data-management.d.ts +3 -3
  152. package/dist/apis/data-management.js +11 -233
  153. package/dist/apis/deduplication.cjs +13 -37
  154. package/dist/apis/deduplication.d.cts +3 -3
  155. package/dist/apis/deduplication.d.ts +3 -3
  156. package/dist/apis/deduplication.js +11 -35
  157. package/dist/apis/design.cjs +13 -214
  158. package/dist/apis/design.d.cts +3 -3
  159. package/dist/apis/design.d.ts +3 -3
  160. package/dist/apis/design.js +11 -212
  161. package/dist/apis/document.cjs +13 -73
  162. package/dist/apis/document.d.cts +3 -3
  163. package/dist/apis/document.d.ts +3 -3
  164. package/dist/apis/document.js +11 -71
  165. package/dist/apis/email-settings.cjs +13 -528
  166. package/dist/apis/email-settings.d.cts +3 -3
  167. package/dist/apis/email-settings.d.ts +3 -3
  168. package/dist/apis/email-settings.js +11 -526
  169. package/dist/apis/email-template.cjs +13 -117
  170. package/dist/apis/email-template.d.cts +3 -3
  171. package/dist/apis/email-template.d.ts +3 -3
  172. package/dist/apis/email-template.js +11 -115
  173. package/dist/apis/entity-mapping.cjs +13 -210
  174. package/dist/apis/entity-mapping.d.cts +3 -3
  175. package/dist/apis/entity-mapping.d.ts +3 -3
  176. package/dist/apis/entity-mapping.js +11 -208
  177. package/dist/apis/entity.cjs +13 -1595
  178. package/dist/apis/entity.d.cts +3 -3
  179. package/dist/apis/entity.d.ts +3 -3
  180. package/dist/apis/entity.js +11 -1593
  181. package/dist/apis/environments.cjs +13 -66
  182. package/dist/apis/environments.d.cts +3 -3
  183. package/dist/apis/environments.d.ts +3 -3
  184. package/dist/apis/environments.js +11 -64
  185. package/dist/apis/erp-integration.cjs +13 -581
  186. package/dist/apis/erp-integration.d.cts +3 -3
  187. package/dist/apis/erp-integration.d.ts +3 -3
  188. package/dist/apis/erp-integration.js +11 -579
  189. package/dist/apis/event-catalog.cjs +13 -125
  190. package/dist/apis/event-catalog.d.cts +3 -3
  191. package/dist/apis/event-catalog.d.ts +3 -3
  192. package/dist/apis/event-catalog.js +11 -123
  193. package/dist/apis/file.cjs +13 -568
  194. package/dist/apis/file.d.cts +3 -3
  195. package/dist/apis/file.d.ts +3 -3
  196. package/dist/apis/file.js +11 -566
  197. package/dist/apis/iban.cjs +13 -38
  198. package/dist/apis/iban.d.cts +3 -3
  199. package/dist/apis/iban.d.ts +3 -3
  200. package/dist/apis/iban.js +11 -36
  201. package/dist/apis/journey.cjs +13 -265
  202. package/dist/apis/journey.d.cts +3 -3
  203. package/dist/apis/journey.d.ts +3 -3
  204. package/dist/apis/journey.js +11 -263
  205. package/dist/apis/kanban.cjs +13 -159
  206. package/dist/apis/kanban.d.cts +3 -3
  207. package/dist/apis/kanban.d.ts +3 -3
  208. package/dist/apis/kanban.js +11 -157
  209. package/dist/apis/message.cjs +13 -668
  210. package/dist/apis/message.d.cts +3 -3
  211. package/dist/apis/message.d.ts +3 -3
  212. package/dist/apis/message.js +11 -666
  213. package/dist/apis/metering.cjs +13 -394
  214. package/dist/apis/metering.d.cts +3 -3
  215. package/dist/apis/metering.d.ts +3 -3
  216. package/dist/apis/metering.js +11 -392
  217. package/dist/apis/notes.cjs +13 -214
  218. package/dist/apis/notes.d.cts +3 -3
  219. package/dist/apis/notes.d.ts +3 -3
  220. package/dist/apis/notes.js +11 -212
  221. package/dist/apis/notification.cjs +13 -232
  222. package/dist/apis/notification.d.cts +3 -3
  223. package/dist/apis/notification.d.ts +3 -3
  224. package/dist/apis/notification.js +11 -230
  225. package/dist/apis/organization.cjs +13 -113
  226. package/dist/apis/organization.d.cts +3 -3
  227. package/dist/apis/organization.d.ts +3 -3
  228. package/dist/apis/organization.js +11 -111
  229. package/dist/apis/partner-directory.cjs +13 -277
  230. package/dist/apis/partner-directory.d.cts +3 -3
  231. package/dist/apis/partner-directory.d.ts +3 -3
  232. package/dist/apis/partner-directory.js +11 -275
  233. package/dist/apis/permissions.cjs +13 -173
  234. package/dist/apis/permissions.d.cts +3 -3
  235. package/dist/apis/permissions.d.ts +3 -3
  236. package/dist/apis/permissions.js +11 -171
  237. package/dist/apis/pricing-tier.cjs +14 -32
  238. package/dist/apis/pricing-tier.d.cts +3 -3
  239. package/dist/apis/pricing-tier.d.ts +3 -3
  240. package/dist/apis/pricing-tier.js +11 -29
  241. package/dist/apis/pricing.cjs +13 -434
  242. package/dist/apis/pricing.d.cts +3 -3
  243. package/dist/apis/pricing.d.ts +3 -3
  244. package/dist/apis/pricing.js +11 -432
  245. package/dist/apis/purpose.cjs +13 -175
  246. package/dist/apis/purpose.d.cts +3 -3
  247. package/dist/apis/purpose.d.ts +3 -3
  248. package/dist/apis/purpose.js +11 -173
  249. package/dist/apis/sandbox.cjs +13 -95
  250. package/dist/apis/sandbox.d.cts +3 -3
  251. package/dist/apis/sandbox.d.ts +3 -3
  252. package/dist/apis/sandbox.js +11 -93
  253. package/dist/apis/submission.cjs +13 -50
  254. package/dist/apis/submission.d.cts +3 -3
  255. package/dist/apis/submission.d.ts +3 -3
  256. package/dist/apis/submission.js +11 -48
  257. package/dist/apis/targeting.cjs +13 -270
  258. package/dist/apis/targeting.d.cts +3 -3
  259. package/dist/apis/targeting.d.ts +3 -3
  260. package/dist/apis/targeting.js +11 -268
  261. package/dist/apis/template-variables.cjs +13 -154
  262. package/dist/apis/template-variables.d.cts +3 -3
  263. package/dist/apis/template-variables.d.ts +3 -3
  264. package/dist/apis/template-variables.js +11 -152
  265. package/dist/apis/user.cjs +13 -483
  266. package/dist/apis/user.d.cts +3 -3
  267. package/dist/apis/user.d.ts +3 -3
  268. package/dist/apis/user.js +11 -481
  269. package/dist/apis/validation-rules.cjs +13 -115
  270. package/dist/apis/validation-rules.d.cts +3 -3
  271. package/dist/apis/validation-rules.d.ts +3 -3
  272. package/dist/apis/validation-rules.js +11 -113
  273. package/dist/apis/webhooks.cjs +13 -247
  274. package/dist/apis/webhooks.d.cts +3 -3
  275. package/dist/apis/webhooks.d.ts +3 -3
  276. package/dist/apis/webhooks.js +11 -245
  277. package/dist/apis/workflow-definition.cjs +13 -337
  278. package/dist/apis/workflow-definition.d.cts +3 -3
  279. package/dist/apis/workflow-definition.d.ts +3 -3
  280. package/dist/apis/workflow-definition.js +11 -335
  281. package/dist/apis/workflow.cjs +13 -397
  282. package/dist/apis/workflow.d.cts +3 -3
  283. package/dist/apis/workflow.d.ts +3 -3
  284. package/dist/apis/workflow.js +11 -395
  285. package/dist/{app.d-BKyfin-q.d.cts → app.d-Dr03n4J4.d.cts} +1 -1
  286. package/dist/{app.d-BKyfin-q.d.ts → app.d-Dr03n4J4.d.ts} +1 -1
  287. package/dist/{audit-logs.d-19BKb-ur.d.cts → audit-logs.d-BRToFqeX.d.cts} +1 -1
  288. package/dist/{audit-logs.d-19BKb-ur.d.ts → audit-logs.d-BRToFqeX.d.ts} +1 -1
  289. package/dist/{automation.d-DKl2VtnW.d.cts → automation.d-sRCRiHKf.d.cts} +1 -1
  290. package/dist/{automation.d-DKl2VtnW.d.ts → automation.d-sRCRiHKf.d.ts} +1 -1
  291. package/dist/{billing.d-58fUMBqj.d.cts → billing.d-Bs8Ku9qE.d.cts} +1 -1
  292. package/dist/{billing.d-58fUMBqj.d.ts → billing.d-Bs8Ku9qE.d.ts} +1 -1
  293. package/dist/{blueprint-manifest.d-Bu1GyXFW.d.cts → blueprint-manifest.d-CEWRdF3i.d.cts} +1 -1
  294. package/dist/{blueprint-manifest.d-Bu1GyXFW.d.ts → blueprint-manifest.d-CEWRdF3i.d.ts} +1 -1
  295. package/dist/{chunk-D7ICL3AM.cjs → chunk-5LXNSDG2.cjs} +51 -2
  296. package/dist/{chunk-DGCGLG7G.js → chunk-QMQNMCOC.js} +49 -0
  297. package/dist/{consent.d-CQ88IEj0.d.cts → consent.d-C2PROHhX.d.cts} +1 -1
  298. package/dist/{consent.d-CQ88IEj0.d.ts → consent.d-C2PROHhX.d.ts} +1 -1
  299. package/dist/{customer-portal.d-EyndRWh6.d.cts → customer-portal.d-D7cJvhBK.d.cts} +1 -1
  300. package/dist/{customer-portal.d-EyndRWh6.d.ts → customer-portal.d-D7cJvhBK.d.ts} +1 -1
  301. package/dist/{dashboard.d-AE3RQ6zo.d.cts → dashboard.d-CsGcA74I.d.cts} +1 -1
  302. package/dist/{dashboard.d-AE3RQ6zo.d.ts → dashboard.d-CsGcA74I.d.ts} +1 -1
  303. package/dist/{data-management.d-CNExsqJQ.d.cts → data-management.d-pnuiRU2h.d.cts} +1 -1
  304. package/dist/{data-management.d-CNExsqJQ.d.ts → data-management.d-pnuiRU2h.d.ts} +1 -1
  305. package/dist/{deduplication.d-DCeJzdbM.d.cts → deduplication.d-w_2aJD5f.d.cts} +1 -1
  306. package/dist/{deduplication.d-DCeJzdbM.d.ts → deduplication.d-w_2aJD5f.d.ts} +1 -1
  307. package/dist/{design.d-CkwgJ78Z.d.cts → design.d-eA-irKEX.d.cts} +1 -1
  308. package/dist/{design.d-CkwgJ78Z.d.ts → design.d-eA-irKEX.d.ts} +1 -1
  309. package/dist/{document.d-Y8i32qNV.d.cts → document.d-DN37pjdx.d.cts} +1 -1
  310. package/dist/{document.d-Y8i32qNV.d.ts → document.d-DN37pjdx.d.ts} +1 -1
  311. package/dist/{email-settings.d-CPAsRFWN.d.cts → email-settings.d-BXxYjVDr.d.cts} +1 -1
  312. package/dist/{email-settings.d-CPAsRFWN.d.ts → email-settings.d-BXxYjVDr.d.ts} +1 -1
  313. package/dist/{email-template.d-CQqiCN0N.d.cts → email-template.d-BeqkDHtk.d.cts} +1 -1
  314. package/dist/{email-template.d-CQqiCN0N.d.ts → email-template.d-BeqkDHtk.d.ts} +1 -1
  315. package/dist/{entity-mapping.d-DiqXqJWb.d.cts → entity-mapping.d-DKSW3sfy.d.cts} +1 -1
  316. package/dist/{entity-mapping.d-DiqXqJWb.d.ts → entity-mapping.d-DKSW3sfy.d.ts} +1 -1
  317. package/dist/{entity.d-BtT4mdq4.d.cts → entity.d-CrtZaZr8.d.cts} +1 -1
  318. package/dist/{entity.d-BtT4mdq4.d.ts → entity.d-CrtZaZr8.d.ts} +1 -1
  319. package/dist/{environments.d-C1xIs8N2.d.cts → environments.d-H3LK_KuH.d.cts} +1 -1
  320. package/dist/{environments.d-C1xIs8N2.d.ts → environments.d-H3LK_KuH.d.ts} +1 -1
  321. package/dist/{erp-integration.d-CNLzgl4L.d.cts → erp-integration.d-3LmxMirP.d.cts} +1 -1
  322. package/dist/{erp-integration.d-CNLzgl4L.d.ts → erp-integration.d-3LmxMirP.d.ts} +1 -1
  323. package/dist/{event-catalog.d-DW1dOyVh.d.cts → event-catalog.d-ENw6HO-w.d.cts} +1 -1
  324. package/dist/{event-catalog.d-DW1dOyVh.d.ts → event-catalog.d-ENw6HO-w.d.ts} +1 -1
  325. package/dist/{file.d-Bpdt2ORN.d.cts → file.d-DcTJxjp7.d.cts} +1 -1
  326. package/dist/{file.d-Bpdt2ORN.d.ts → file.d-DcTJxjp7.d.ts} +1 -1
  327. package/dist/{iban.d-3_7FEsbx.d.cts → iban.d-BwdiGbxi.d.cts} +1 -1
  328. package/dist/{iban.d-3_7FEsbx.d.ts → iban.d-BwdiGbxi.d.ts} +1 -1
  329. package/dist/index.cjs +56 -54
  330. package/dist/index.d.cts +46 -46
  331. package/dist/index.d.ts +46 -46
  332. package/dist/index.js +53 -51
  333. package/dist/{journey.d-C2lgynUF.d.cts → journey.d-DkBvO_Wa.d.cts} +1 -1
  334. package/dist/{journey.d-C2lgynUF.d.ts → journey.d-DkBvO_Wa.d.ts} +1 -1
  335. package/dist/{kanban.d-DYVjUQ_S.d.cts → kanban.d-DUClxyBG.d.cts} +1 -1
  336. package/dist/{kanban.d-DYVjUQ_S.d.ts → kanban.d-DUClxyBG.d.ts} +1 -1
  337. package/dist/{message.d-TAVDRlDJ.d.cts → message.d-YEv1kmQd.d.cts} +1 -1
  338. package/dist/{message.d-TAVDRlDJ.d.ts → message.d-YEv1kmQd.d.ts} +1 -1
  339. package/dist/{metering.d-qyYaAU-O.d.cts → metering.d-DvtPv7wk.d.cts} +1 -1
  340. package/dist/{metering.d-qyYaAU-O.d.ts → metering.d-DvtPv7wk.d.ts} +1 -1
  341. package/dist/{notes.d-CDyIbegf.d.cts → notes.d-BC-scR42.d.cts} +1 -1
  342. package/dist/{notes.d-CDyIbegf.d.ts → notes.d-BC-scR42.d.ts} +1 -1
  343. package/dist/{notification.d-B7ccbaPr.d.cts → notification.d-BfBL3lga.d.cts} +1 -1
  344. package/dist/{notification.d-B7ccbaPr.d.ts → notification.d-BfBL3lga.d.ts} +1 -1
  345. package/dist/{organization.d-BxZWnh8L.d.cts → organization.d-BOLK3v9o.d.cts} +1 -1
  346. package/dist/{organization.d-BxZWnh8L.d.ts → organization.d-BOLK3v9o.d.ts} +1 -1
  347. package/dist/{partner-directory.d-CzKV3WfP.d.cts → partner-directory.d-CRNkDF8q.d.cts} +1 -1
  348. package/dist/{partner-directory.d-CzKV3WfP.d.ts → partner-directory.d-CRNkDF8q.d.ts} +1 -1
  349. package/dist/{permissions.d-lVoPAfl3.d.cts → permissions.d-BHB1FFS5.d.cts} +1 -1
  350. package/dist/{permissions.d-lVoPAfl3.d.ts → permissions.d-BHB1FFS5.d.ts} +1 -1
  351. package/dist/{pricing-tier.d-BW2cZt1w.d.cts → pricing-tier.d-Cg0jl6n_.d.cts} +1 -1
  352. package/dist/{pricing-tier.d-BW2cZt1w.d.ts → pricing-tier.d-Cg0jl6n_.d.ts} +1 -1
  353. package/dist/{pricing.d-Ehb2JuKY.d.cts → pricing.d-Cv39plGm.d.cts} +1 -1
  354. package/dist/{pricing.d-Ehb2JuKY.d.ts → pricing.d-Cv39plGm.d.ts} +1 -1
  355. package/dist/{purpose.d-BVxst611.d.cts → purpose.d-CbIYfTua.d.cts} +1 -1
  356. package/dist/{purpose.d-BVxst611.d.ts → purpose.d-CbIYfTua.d.ts} +1 -1
  357. package/dist/{sandbox.d-tRO2movo.d.cts → sandbox.d-BdbOFzDu.d.cts} +1 -1
  358. package/dist/{sandbox.d-tRO2movo.d.ts → sandbox.d-BdbOFzDu.d.ts} +1 -1
  359. package/dist/{submission.d-CSll5Km9.d.cts → submission.d-BamwfhXw.d.cts} +1 -1
  360. package/dist/{submission.d-CSll5Km9.d.ts → submission.d-BamwfhXw.d.ts} +1 -1
  361. package/dist/{targeting.d-CDxIsOWy.d.cts → targeting.d-BNmcVsNS.d.cts} +1 -1
  362. package/dist/{targeting.d-CDxIsOWy.d.ts → targeting.d-BNmcVsNS.d.ts} +1 -1
  363. package/dist/{template-variables.d-PwA27Ocv.d.cts → template-variables.d-Ch3H3zYf.d.cts} +1 -1
  364. package/dist/{template-variables.d-PwA27Ocv.d.ts → template-variables.d-Ch3H3zYf.d.ts} +1 -1
  365. package/dist/{user.d-DJBp6aX5.d.cts → user.d-CXqM751M.d.cts} +1 -1
  366. package/dist/{user.d-DJBp6aX5.d.ts → user.d-CXqM751M.d.ts} +1 -1
  367. package/dist/{validation-rules.d-CScjNdxD.d.cts → validation-rules.d-Db5c5zTf.d.cts} +1 -1
  368. package/dist/{validation-rules.d-CScjNdxD.d.ts → validation-rules.d-Db5c5zTf.d.ts} +1 -1
  369. package/dist/{webhooks.d-C_MQSJEB.d.cts → webhooks.d-CUNJrltY.d.cts} +1 -1
  370. package/dist/{webhooks.d-C_MQSJEB.d.ts → webhooks.d-CUNJrltY.d.ts} +1 -1
  371. package/dist/{workflow-definition.d-CFXrp2Hg.d.cts → workflow-definition.d-CE3kk9gl.d.cts} +1 -1
  372. package/dist/{workflow-definition.d-CFXrp2Hg.d.ts → workflow-definition.d-CE3kk9gl.d.ts} +1 -1
  373. package/dist/{workflow.d-BIWtgMyP.d.cts → workflow.d-EPa2OdVW.d.cts} +1 -1
  374. package/dist/{workflow.d-BIWtgMyP.d.ts → workflow.d-EPa2OdVW.d.ts} +1 -1
  375. package/package.json +192 -3
@@ -0,0 +1,3376 @@
1
+ {
2
+ "openapi": "3.1.0",
3
+ "info": {
4
+ "title": "Blueprint Manifest API",
5
+ "version": "4.5.0",
6
+ "description": "Service to create and install Blueprint Manifest files"
7
+ },
8
+ "tags": [
9
+ {
10
+ "name": "Jobs",
11
+ "description": "Manage Export and Import Jobs"
12
+ },
13
+ {
14
+ "name": "Export",
15
+ "description": "Export a Blueprint Manifest"
16
+ },
17
+ {
18
+ "name": "Import",
19
+ "description": "Install or update a Blueprint Manifest"
20
+ },
21
+ {
22
+ "name": "Manifests",
23
+ "description": "Manage installed Manifests"
24
+ },
25
+ {
26
+ "name": "Blueprints",
27
+ "description": "Manage Custom and Installed Blueprints"
28
+ },
29
+ {
30
+ "name": "Installations",
31
+ "description": "Manage installation jobs"
32
+ }
33
+ ],
34
+ "security": [
35
+ {
36
+ "EpilotAuth": []
37
+ }
38
+ ],
39
+ "servers": [
40
+ {
41
+ "url": "https://blueprint-manifest.sls.epilot.io"
42
+ }
43
+ ],
44
+ "paths": {
45
+ "/v1/blueprint-manifest/jobs/{job_id}": {
46
+ "get": {
47
+ "operationId": "getJob",
48
+ "summary": "getJob",
49
+ "description": "Get the current status of a blueprint (export or import)",
50
+ "deprecated": true,
51
+ "tags": [
52
+ "Jobs"
53
+ ],
54
+ "parameters": [
55
+ {
56
+ "$ref": "#/components/parameters/JobID"
57
+ }
58
+ ],
59
+ "responses": {
60
+ "200": {
61
+ "description": "Current status of the blueprint",
62
+ "content": {
63
+ "application/json": {
64
+ "schema": {
65
+ "$ref": "#/components/schemas/Job"
66
+ }
67
+ }
68
+ }
69
+ }
70
+ }
71
+ }
72
+ },
73
+ "/v1/blueprint-manifest/jobs:createExport": {
74
+ "post": {
75
+ "operationId": "createExport",
76
+ "summary": "createExport",
77
+ "description": "Creates a new Export Job with a list of available resources to export from the passed root resource.\n\nMultiple root resources can be added by calling this multiple times with the same jobId\n",
78
+ "deprecated": true,
79
+ "tags": [
80
+ "Export"
81
+ ],
82
+ "requestBody": {
83
+ "content": {
84
+ "application/json": {
85
+ "schema": {
86
+ "type": "object",
87
+ "properties": {
88
+ "resources": {
89
+ "type": "array",
90
+ "items": {
91
+ "type": "object",
92
+ "properties": {
93
+ "type": {
94
+ "$ref": "#/components/schemas/ResourceNodeType"
95
+ },
96
+ "id": {
97
+ "type": "string"
98
+ }
99
+ },
100
+ "required": [
101
+ "type",
102
+ "id"
103
+ ]
104
+ },
105
+ "minItems": 1
106
+ },
107
+ "jobId": {
108
+ "$ref": "#/components/schemas/JobID"
109
+ },
110
+ "isExportingMultipleResources": {
111
+ "type": "boolean",
112
+ "description": "Temporary flag to indicate if multiple resources are being exported"
113
+ },
114
+ "pipelineId": {
115
+ "type": "string",
116
+ "description": "Pipeline ID selected when doing the sandbox sync"
117
+ },
118
+ "manifestId": {
119
+ "type": "string",
120
+ "description": "ID of the installed manifest to load the resource addresses from"
121
+ }
122
+ },
123
+ "required": [
124
+ "resources"
125
+ ]
126
+ }
127
+ }
128
+ }
129
+ },
130
+ "responses": {
131
+ "200": {
132
+ "description": "Created Export Job ID",
133
+ "content": {
134
+ "application/json": {
135
+ "schema": {
136
+ "type": "object",
137
+ "properties": {
138
+ "jobId": {
139
+ "$ref": "#/components/schemas/JobID"
140
+ }
141
+ }
142
+ }
143
+ }
144
+ }
145
+ }
146
+ }
147
+ }
148
+ },
149
+ "/v1/blueprint-manifest/jobs/{job_id}:exportManifest": {
150
+ "post": {
151
+ "operationId": "exportManifest",
152
+ "summary": "exportManifest",
153
+ "description": "Triggers exporting a manifest file using selected resoruce ids for a job created with `createExportJob`",
154
+ "deprecated": true,
155
+ "tags": [
156
+ "Export"
157
+ ],
158
+ "parameters": [
159
+ {
160
+ "$ref": "#/components/parameters/JobID"
161
+ }
162
+ ],
163
+ "requestBody": {
164
+ "content": {
165
+ "application/json": {
166
+ "schema": {
167
+ "type": "object",
168
+ "properties": {
169
+ "selectedResourceIds": {
170
+ "description": "An array of resource IDs to export",
171
+ "type": "array",
172
+ "items": {
173
+ "type": "string"
174
+ }
175
+ },
176
+ "resourceName": {
177
+ "type": "string",
178
+ "example": "journey_HouseConnectionJourney"
179
+ },
180
+ "metadata": {
181
+ "type": "object",
182
+ "properties": {
183
+ "markdown": {
184
+ "type": "object",
185
+ "properties": {
186
+ "manifest": {
187
+ "type": "string"
188
+ },
189
+ "preinstall": {
190
+ "type": "string"
191
+ },
192
+ "postinstall": {
193
+ "type": "string"
194
+ }
195
+ }
196
+ },
197
+ "docs_link": {
198
+ "type": "string"
199
+ },
200
+ "source_blueprint_name": {
201
+ "type": "string"
202
+ },
203
+ "source_blueprint_slug": {
204
+ "type": "string"
205
+ },
206
+ "source_blueprint_version": {
207
+ "type": "string"
208
+ }
209
+ }
210
+ },
211
+ "isExportingMultipleResources": {
212
+ "type": "boolean",
213
+ "description": "Temporary flag to indicate if multiple resources are being exported"
214
+ },
215
+ "generateAISummary": {
216
+ "type": "boolean",
217
+ "default": false
218
+ },
219
+ "language": {
220
+ "type": "string",
221
+ "enum": [
222
+ "en",
223
+ "de"
224
+ ]
225
+ }
226
+ },
227
+ "required": [
228
+ "resourceName",
229
+ "selectedResourceIds"
230
+ ]
231
+ }
232
+ }
233
+ }
234
+ },
235
+ "responses": {
236
+ "200": {
237
+ "description": "Export Job ID",
238
+ "content": {
239
+ "application/json": {
240
+ "schema": {
241
+ "type": "object",
242
+ "properties": {
243
+ "jobId": {
244
+ "$ref": "#/components/schemas/JobID"
245
+ }
246
+ }
247
+ }
248
+ }
249
+ }
250
+ }
251
+ }
252
+ }
253
+ },
254
+ "/v1/blueprint-manifest:uploadManifest": {
255
+ "post": {
256
+ "operationId": "uploadManifest",
257
+ "summary": "uploadManifest",
258
+ "description": "Create pre-signed S3 URL to upload a manifest file.\n",
259
+ "tags": [
260
+ "Import"
261
+ ],
262
+ "requestBody": {
263
+ "content": {
264
+ "application/json": {
265
+ "schema": {
266
+ "$ref": "#/components/schemas/UploadFilePayload"
267
+ }
268
+ }
269
+ }
270
+ },
271
+ "responses": {
272
+ "201": {
273
+ "description": "Pre-signed URL for POST / PUT upload",
274
+ "content": {
275
+ "application/json": {
276
+ "schema": {
277
+ "type": "object",
278
+ "properties": {
279
+ "s3ref": {
280
+ "$ref": "#/components/schemas/S3Reference"
281
+ },
282
+ "upload_url": {
283
+ "type": "string",
284
+ "format": "url",
285
+ "example": "https://epilot-dev-blueprints.s3.eu-central-1.amazonaws.com/templates/document.pdf"
286
+ }
287
+ }
288
+ }
289
+ }
290
+ }
291
+ }
292
+ }
293
+ }
294
+ },
295
+ "/v1/blueprint-manifest/jobs:createPlan": {
296
+ "post": {
297
+ "operationId": "createPlan",
298
+ "summary": "createPlan",
299
+ "description": "Creates a new import job from an uploaded manifest file and returns the plan.\n\nCreates an updated plan for an installed manifest when `manifest_id` is passed\n",
300
+ "deprecated": true,
301
+ "tags": [
302
+ "Import"
303
+ ],
304
+ "requestBody": {
305
+ "content": {
306
+ "application/json": {
307
+ "schema": {
308
+ "oneOf": [
309
+ {
310
+ "type": "object",
311
+ "properties": {
312
+ "s3ref": {
313
+ "allOf": [
314
+ {
315
+ "description": "s3ref of manifest file uploaded via `uploadManifest`"
316
+ },
317
+ {
318
+ "$ref": "#/components/schemas/S3Reference"
319
+ }
320
+ ]
321
+ },
322
+ "manifest_id": {
323
+ "allOf": [
324
+ {
325
+ "description": "Update an existing manifest (optional)"
326
+ },
327
+ {
328
+ "$ref": "#/components/schemas/ManifestID"
329
+ }
330
+ ]
331
+ },
332
+ "job_id": {
333
+ "allOf": [
334
+ {
335
+ "description": "Continue a previous job"
336
+ },
337
+ {
338
+ "$ref": "#/components/schemas/JobID"
339
+ }
340
+ ]
341
+ },
342
+ "source": {
343
+ "allOf": [
344
+ {
345
+ "description": "Source of the manifest"
346
+ },
347
+ {
348
+ "$ref": "#/components/schemas/ManifestSource"
349
+ }
350
+ ]
351
+ },
352
+ "resourcesToIgnore": {
353
+ "type": "array",
354
+ "items": {
355
+ "type": "string"
356
+ },
357
+ "description": "List of resources to ignore changes for"
358
+ },
359
+ "resourceReplacements": {
360
+ "type": "array",
361
+ "items": {
362
+ "$ref": "#/components/schemas/ResourceReplacement"
363
+ },
364
+ "description": "List of resource replacements to apply during import"
365
+ },
366
+ "deployedFrom": {
367
+ "type": "object",
368
+ "properties": {
369
+ "sourceOrganizationId": {
370
+ "type": "string"
371
+ },
372
+ "sourceManifestId": {
373
+ "type": "string"
374
+ },
375
+ "sourceOrganizationType": {
376
+ "type": "string",
377
+ "enum": [
378
+ "sandbox",
379
+ "production"
380
+ ]
381
+ }
382
+ },
383
+ "required": [
384
+ "sourceOrganizationId",
385
+ "sourceManifestId",
386
+ "sourceOrganizationType"
387
+ ]
388
+ }
389
+ },
390
+ "required": [
391
+ "s3ref"
392
+ ]
393
+ },
394
+ {
395
+ "type": "object",
396
+ "deprecated": true,
397
+ "properties": {
398
+ "manifestFilePath": {
399
+ "deprecated": true,
400
+ "description": "Manifest s3 key uploaded via `uploadManifest`",
401
+ "type": "string"
402
+ },
403
+ "manifest_id": {
404
+ "allOf": [
405
+ {
406
+ "description": "Update an existing manifest (optional)"
407
+ },
408
+ {
409
+ "$ref": "#/components/schemas/ManifestID"
410
+ }
411
+ ]
412
+ },
413
+ "job_id": {
414
+ "allOf": [
415
+ {
416
+ "description": "Continue a previous job"
417
+ },
418
+ {
419
+ "$ref": "#/components/schemas/JobID"
420
+ }
421
+ ]
422
+ },
423
+ "source": {
424
+ "allOf": [
425
+ {
426
+ "description": "Source of the manifest"
427
+ },
428
+ {
429
+ "$ref": "#/components/schemas/ManifestSource"
430
+ }
431
+ ]
432
+ },
433
+ "resourcesToIgnore": {
434
+ "type": "array",
435
+ "items": {
436
+ "type": "string"
437
+ },
438
+ "description": "List of resources to ignore changes for"
439
+ },
440
+ "resourceReplacements": {
441
+ "type": "array",
442
+ "items": {
443
+ "$ref": "#/components/schemas/ResourceReplacement"
444
+ },
445
+ "description": "List of resource replacements to apply during import"
446
+ },
447
+ "deployedFrom": {
448
+ "type": "object",
449
+ "properties": {
450
+ "sourceOrganizationId": {
451
+ "type": "string"
452
+ },
453
+ "sourceManifestId": {
454
+ "type": "string"
455
+ },
456
+ "sourceOrganizationType": {
457
+ "type": "string",
458
+ "enum": [
459
+ "sandbox",
460
+ "production"
461
+ ]
462
+ }
463
+ },
464
+ "required": [
465
+ "sourceOrganizationId",
466
+ "sourceManifestId",
467
+ "sourceOrganizationType"
468
+ ]
469
+ }
470
+ },
471
+ "required": [
472
+ "manifestFilePath"
473
+ ]
474
+ }
475
+ ]
476
+ }
477
+ }
478
+ }
479
+ },
480
+ "responses": {
481
+ "200": {
482
+ "description": "Created Import Job ID",
483
+ "content": {
484
+ "application/json": {
485
+ "schema": {
486
+ "type": "object",
487
+ "properties": {
488
+ "jobId": {
489
+ "type": "string",
490
+ "example": "4854bb2a-94f9-424d-a968-3fb17fb0bf89"
491
+ }
492
+ }
493
+ }
494
+ }
495
+ }
496
+ }
497
+ }
498
+ }
499
+ },
500
+ "/v1/blueprint-manifest/jobs/{job_id}:applyPlan": {
501
+ "post": {
502
+ "operationId": "applyPlan",
503
+ "summary": "applyPlan",
504
+ "description": "Apply a plan returned by `createPlan`.",
505
+ "deprecated": true,
506
+ "tags": [
507
+ "Import"
508
+ ],
509
+ "parameters": [
510
+ {
511
+ "$ref": "#/components/parameters/JobID"
512
+ }
513
+ ],
514
+ "requestBody": {
515
+ "content": {
516
+ "application/json": {
517
+ "schema": {
518
+ "type": "object",
519
+ "properties": {
520
+ "resourcesToIgnore": {
521
+ "type": "array",
522
+ "items": {
523
+ "type": "string"
524
+ },
525
+ "description": "List of resources to ignore changes for"
526
+ },
527
+ "resourceReplacements": {
528
+ "type": "array",
529
+ "items": {
530
+ "$ref": "#/components/schemas/ResourceReplacement"
531
+ },
532
+ "description": "List of resource replacements to apply during import"
533
+ }
534
+ }
535
+ }
536
+ }
537
+ }
538
+ },
539
+ "responses": {
540
+ "200": {
541
+ "description": "Applied Import Job ID",
542
+ "content": {
543
+ "application/json": {
544
+ "schema": {
545
+ "type": "object",
546
+ "properties": {
547
+ "jobId": {
548
+ "$ref": "#/components/schemas/JobID"
549
+ }
550
+ }
551
+ }
552
+ }
553
+ }
554
+ }
555
+ }
556
+ }
557
+ },
558
+ "/v1/blueprint-manifest/manifests": {
559
+ "get": {
560
+ "operationId": "listInstalledManifests",
561
+ "summary": "listInstalledManifests",
562
+ "description": "List Blueprint Manifests installed to the organization",
563
+ "deprecated": true,
564
+ "tags": [
565
+ "Manifests"
566
+ ],
567
+ "responses": {
568
+ "200": {
569
+ "description": "Installed Blueprint Manifests in the organization",
570
+ "content": {
571
+ "application/json": {
572
+ "schema": {
573
+ "type": "object",
574
+ "properties": {
575
+ "total": {
576
+ "type": "integer",
577
+ "example": 1
578
+ },
579
+ "results": {
580
+ "type": "array",
581
+ "items": {
582
+ "$ref": "#/components/schemas/ManifestItem"
583
+ }
584
+ }
585
+ }
586
+ }
587
+ }
588
+ }
589
+ }
590
+ }
591
+ }
592
+ },
593
+ "/v1/blueprint-manifest/manifests/{manifest_id}": {
594
+ "get": {
595
+ "operationId": "getManifest",
596
+ "summary": "getManifest",
597
+ "description": "Get installed Manifest by ID",
598
+ "deprecated": true,
599
+ "tags": [
600
+ "Manifests"
601
+ ],
602
+ "parameters": [
603
+ {
604
+ "in": "path",
605
+ "required": true,
606
+ "name": "manifest_id",
607
+ "schema": {
608
+ "$ref": "#/components/schemas/ManifestID"
609
+ }
610
+ }
611
+ ],
612
+ "responses": {
613
+ "200": {
614
+ "description": "Installed Blueprint Manifest in the Organization",
615
+ "content": {
616
+ "application/json": {
617
+ "schema": {
618
+ "$ref": "#/components/schemas/Manifest"
619
+ }
620
+ }
621
+ }
622
+ }
623
+ }
624
+ },
625
+ "put": {
626
+ "operationId": "updateManifest",
627
+ "summary": "updateManifest",
628
+ "description": "Update an installed manifest\n",
629
+ "deprecated": true,
630
+ "tags": [
631
+ "Manifests"
632
+ ],
633
+ "parameters": [
634
+ {
635
+ "in": "path",
636
+ "required": true,
637
+ "name": "manifest_id",
638
+ "schema": {
639
+ "$ref": "#/components/schemas/ManifestID"
640
+ }
641
+ }
642
+ ],
643
+ "requestBody": {
644
+ "content": {
645
+ "application/json": {
646
+ "schema": {
647
+ "$ref": "#/components/schemas/PutManifestPayload"
648
+ }
649
+ }
650
+ }
651
+ },
652
+ "responses": {
653
+ "200": {
654
+ "description": "The updated Manifest",
655
+ "content": {
656
+ "application/json": {
657
+ "schema": {
658
+ "$ref": "#/components/schemas/Manifest"
659
+ }
660
+ }
661
+ }
662
+ }
663
+ }
664
+ },
665
+ "delete": {
666
+ "operationId": "deleteManifest",
667
+ "summary": "deleteManifest",
668
+ "description": "Remove installed manifest from the org\n\nNote that this does not delete the installed resources of the Manifest!\n",
669
+ "deprecated": true,
670
+ "tags": [
671
+ "Manifests"
672
+ ],
673
+ "parameters": [
674
+ {
675
+ "in": "path",
676
+ "required": true,
677
+ "name": "manifest_id",
678
+ "schema": {
679
+ "$ref": "#/components/schemas/ManifestID"
680
+ }
681
+ }
682
+ ],
683
+ "responses": {
684
+ "200": {
685
+ "description": "The deleted Manifest",
686
+ "content": {
687
+ "application/json": {
688
+ "schema": {
689
+ "$ref": "#/components/schemas/Manifest"
690
+ }
691
+ }
692
+ }
693
+ }
694
+ }
695
+ }
696
+ },
697
+ "/v2/blueprint-manifest/blueprints": {
698
+ "get": {
699
+ "operationId": "listBlueprints",
700
+ "summary": "listBlueprints",
701
+ "description": "List Custom and Installed Blueprints",
702
+ "tags": [
703
+ "Blueprints"
704
+ ],
705
+ "parameters": [
706
+ {
707
+ "name": "archived",
708
+ "in": "query",
709
+ "description": "Filter blueprints by archived status. If true, returns only archived blueprints. If false or not provided, returns only non-archived blueprints.",
710
+ "required": false,
711
+ "schema": {
712
+ "type": "boolean",
713
+ "default": false
714
+ }
715
+ }
716
+ ],
717
+ "responses": {
718
+ "200": {
719
+ "description": "Blueprints",
720
+ "content": {
721
+ "application/json": {
722
+ "schema": {
723
+ "type": "object",
724
+ "properties": {
725
+ "total": {
726
+ "type": "integer",
727
+ "example": 1
728
+ },
729
+ "results": {
730
+ "type": "array",
731
+ "items": {
732
+ "$ref": "#/components/schemas/Blueprint"
733
+ }
734
+ }
735
+ }
736
+ }
737
+ }
738
+ }
739
+ }
740
+ }
741
+ },
742
+ "post": {
743
+ "operationId": "createBlueprint",
744
+ "summary": "createBlueprint",
745
+ "description": "Create a Blueprint",
746
+ "tags": [
747
+ "Blueprints"
748
+ ],
749
+ "requestBody": {
750
+ "content": {
751
+ "application/json": {
752
+ "schema": {
753
+ "$ref": "#/components/schemas/Blueprint"
754
+ }
755
+ }
756
+ }
757
+ },
758
+ "responses": {
759
+ "200": {
760
+ "description": "Created Blueprint",
761
+ "content": {
762
+ "application/json": {
763
+ "schema": {
764
+ "$ref": "#/components/schemas/Blueprint"
765
+ }
766
+ }
767
+ }
768
+ }
769
+ }
770
+ }
771
+ },
772
+ "/v2/blueprint-manifest/blueprints:marketplace": {
773
+ "get": {
774
+ "operationId": "listInstalledMarketplaceBlueprints",
775
+ "summary": "listInstalledMarketplaceBlueprints",
776
+ "description": "List installed Marketplace Blueprints for the organization.\nWhen multiple blueprints have the same slug, returns only the most recently created one.\n",
777
+ "tags": [
778
+ "Blueprints"
779
+ ],
780
+ "responses": {
781
+ "200": {
782
+ "description": "Installed Marketplace Blueprints",
783
+ "content": {
784
+ "application/json": {
785
+ "schema": {
786
+ "type": "object",
787
+ "properties": {
788
+ "total": {
789
+ "type": "integer",
790
+ "example": 1
791
+ },
792
+ "results": {
793
+ "type": "array",
794
+ "items": {
795
+ "$ref": "#/components/schemas/InstalledMarketplaceBlueprintItem"
796
+ }
797
+ }
798
+ }
799
+ }
800
+ }
801
+ }
802
+ }
803
+ }
804
+ }
805
+ },
806
+ "/v2/blueprint-manifest/blueprints:pre-install": {
807
+ "post": {
808
+ "operationId": "preInstallBlueprint",
809
+ "summary": "preInstallBlueprint",
810
+ "description": "Pre-install a Blueprint based on a blueprint file",
811
+ "tags": [
812
+ "Blueprints"
813
+ ],
814
+ "requestBody": {
815
+ "content": {
816
+ "application/json": {
817
+ "schema": {
818
+ "type": "object",
819
+ "properties": {
820
+ "blueprint_file": {
821
+ "type": "string",
822
+ "description": "URL to the blueprint zip file"
823
+ },
824
+ "source_blueprint_type": {
825
+ "type": "string",
826
+ "enum": [
827
+ "marketplace"
828
+ ]
829
+ },
830
+ "slug": {
831
+ "type": "string",
832
+ "description": "Slug to enforce in this blueprint. Used in marketplace blueprints to keep it consistent with webflow."
833
+ }
834
+ }
835
+ }
836
+ }
837
+ }
838
+ },
839
+ "responses": {
840
+ "200": {
841
+ "description": "Blueprint preview data for UI display",
842
+ "content": {
843
+ "application/json": {
844
+ "schema": {
845
+ "$ref": "#/components/schemas/BlueprintPreview"
846
+ }
847
+ }
848
+ }
849
+ }
850
+ }
851
+ }
852
+ },
853
+ "/v2/blueprint-manifest/blueprints:preview/{preview_id}": {
854
+ "get": {
855
+ "operationId": "getBlueprintPreview",
856
+ "summary": "getBlueprintPreview",
857
+ "description": "Get Blueprint Preview by ID",
858
+ "tags": [
859
+ "Blueprints"
860
+ ],
861
+ "parameters": [
862
+ {
863
+ "in": "path",
864
+ "required": true,
865
+ "name": "preview_id",
866
+ "schema": {
867
+ "type": "string"
868
+ }
869
+ }
870
+ ],
871
+ "responses": {
872
+ "200": {
873
+ "description": "Blueprint Preview",
874
+ "content": {
875
+ "application/json": {
876
+ "schema": {
877
+ "$ref": "#/components/schemas/BlueprintPreview"
878
+ }
879
+ }
880
+ }
881
+ },
882
+ "404": {
883
+ "description": "Blueprint Preview not found"
884
+ }
885
+ }
886
+ }
887
+ },
888
+ "/v2/blueprint-manifest/blueprint:install": {
889
+ "post": {
890
+ "operationId": "installBlueprint",
891
+ "summary": "installBlueprint",
892
+ "description": "Kick off a new blueprint installation job. Returns 202 Accepted with Location header pointing to the job resource\n",
893
+ "tags": [
894
+ "Blueprints"
895
+ ],
896
+ "requestBody": {
897
+ "required": true,
898
+ "content": {
899
+ "application/json": {
900
+ "schema": {
901
+ "type": "object",
902
+ "properties": {
903
+ "source_org_id": {
904
+ "type": "string"
905
+ },
906
+ "source_blueprint_id": {
907
+ "$ref": "#/components/schemas/BlueprintID"
908
+ },
909
+ "source_blueprint_file": {
910
+ "type": "string",
911
+ "description": "URL to the blueprint zip file"
912
+ },
913
+ "destination_org_id": {
914
+ "type": "string"
915
+ },
916
+ "destination_blueprint_id": {
917
+ "$ref": "#/components/schemas/BlueprintID"
918
+ },
919
+ "options": {
920
+ "$ref": "#/components/schemas/BlueprintInstallationJobOptions"
921
+ },
922
+ "mode": {
923
+ "type": "string",
924
+ "enum": [
925
+ "simple",
926
+ "advanced"
927
+ ],
928
+ "description": "Installation mode"
929
+ },
930
+ "source_blueprint_type": {
931
+ "type": "string",
932
+ "enum": [
933
+ "marketplace"
934
+ ]
935
+ },
936
+ "slug": {
937
+ "type": "string",
938
+ "description": "Slug to enforce in this blueprint. Used in marketplace blueprints to keep it consistent with webflow."
939
+ }
940
+ },
941
+ "required": [
942
+ "mode"
943
+ ]
944
+ }
945
+ }
946
+ }
947
+ },
948
+ "responses": {
949
+ "202": {
950
+ "description": "Blueprint installation job started",
951
+ "headers": {
952
+ "Location": {
953
+ "description": "URL to poll the job",
954
+ "schema": {
955
+ "type": "string"
956
+ }
957
+ }
958
+ },
959
+ "content": {
960
+ "application/json": {
961
+ "schema": {
962
+ "type": "object",
963
+ "properties": {
964
+ "job_id": {
965
+ "$ref": "#/components/schemas/BlueprintJobID"
966
+ },
967
+ "destination_blueprint_id": {
968
+ "$ref": "#/components/schemas/BlueprintID"
969
+ }
970
+ }
971
+ }
972
+ }
973
+ }
974
+ }
975
+ }
976
+ }
977
+ },
978
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}": {
979
+ "get": {
980
+ "operationId": "getBlueprint",
981
+ "summary": "getBlueprint",
982
+ "description": "Get Blueprint by ID",
983
+ "tags": [
984
+ "Blueprints"
985
+ ],
986
+ "parameters": [
987
+ {
988
+ "in": "path",
989
+ "required": true,
990
+ "name": "blueprint_id",
991
+ "schema": {
992
+ "$ref": "#/components/schemas/BlueprintID"
993
+ }
994
+ }
995
+ ],
996
+ "responses": {
997
+ "200": {
998
+ "description": "Blueprint",
999
+ "content": {
1000
+ "application/json": {
1001
+ "schema": {
1002
+ "$ref": "#/components/schemas/Blueprint"
1003
+ }
1004
+ }
1005
+ }
1006
+ }
1007
+ }
1008
+ },
1009
+ "put": {
1010
+ "operationId": "updateBlueprint",
1011
+ "summary": "updateBlueprint",
1012
+ "description": "Update a Blueprint",
1013
+ "tags": [
1014
+ "Blueprints"
1015
+ ],
1016
+ "parameters": [
1017
+ {
1018
+ "in": "path",
1019
+ "required": true,
1020
+ "name": "blueprint_id",
1021
+ "schema": {
1022
+ "$ref": "#/components/schemas/BlueprintID"
1023
+ }
1024
+ }
1025
+ ],
1026
+ "requestBody": {
1027
+ "content": {
1028
+ "application/json": {
1029
+ "schema": {
1030
+ "$ref": "#/components/schemas/Blueprint"
1031
+ }
1032
+ }
1033
+ }
1034
+ },
1035
+ "responses": {
1036
+ "200": {
1037
+ "description": "Updated Blueprint",
1038
+ "content": {
1039
+ "application/json": {
1040
+ "schema": {
1041
+ "$ref": "#/components/schemas/Blueprint"
1042
+ }
1043
+ }
1044
+ }
1045
+ }
1046
+ }
1047
+ },
1048
+ "delete": {
1049
+ "operationId": "deleteBlueprint",
1050
+ "summary": "deleteBlueprint",
1051
+ "description": "Delete a Blueprint",
1052
+ "tags": [
1053
+ "Blueprints"
1054
+ ],
1055
+ "parameters": [
1056
+ {
1057
+ "in": "path",
1058
+ "required": true,
1059
+ "name": "blueprint_id",
1060
+ "schema": {
1061
+ "$ref": "#/components/schemas/BlueprintID"
1062
+ }
1063
+ }
1064
+ ],
1065
+ "responses": {
1066
+ "200": {
1067
+ "description": "Deleted Blueprint",
1068
+ "content": {
1069
+ "application/json": {
1070
+ "schema": {
1071
+ "$ref": "#/components/schemas/Blueprint"
1072
+ }
1073
+ }
1074
+ }
1075
+ }
1076
+ }
1077
+ }
1078
+ },
1079
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}/validate": {
1080
+ "post": {
1081
+ "operationId": "validateBlueprint",
1082
+ "summary": "validateBlueprint",
1083
+ "description": "Start a blueprint validation job. Validates Terraform for the blueprint (all types).\nReturns 202 Accepted with job_id. Poll GET /jobs/{job_id} for status, valid, and errors.\n",
1084
+ "tags": [
1085
+ "Blueprints"
1086
+ ],
1087
+ "parameters": [
1088
+ {
1089
+ "in": "path",
1090
+ "required": true,
1091
+ "name": "blueprint_id",
1092
+ "schema": {
1093
+ "$ref": "#/components/schemas/BlueprintID"
1094
+ }
1095
+ }
1096
+ ],
1097
+ "responses": {
1098
+ "202": {
1099
+ "description": "Validation job started",
1100
+ "headers": {
1101
+ "Location": {
1102
+ "description": "URL to poll the job",
1103
+ "schema": {
1104
+ "type": "string"
1105
+ }
1106
+ }
1107
+ },
1108
+ "content": {
1109
+ "application/json": {
1110
+ "schema": {
1111
+ "type": "object",
1112
+ "properties": {
1113
+ "job_id": {
1114
+ "$ref": "#/components/schemas/BlueprintJobID"
1115
+ }
1116
+ }
1117
+ }
1118
+ }
1119
+ }
1120
+ },
1121
+ "404": {
1122
+ "description": "Blueprint not found"
1123
+ }
1124
+ }
1125
+ }
1126
+ },
1127
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}:export": {
1128
+ "post": {
1129
+ "operationId": "exportBlueprint",
1130
+ "summary": "exportBlueprint",
1131
+ "description": "Kick off a new blueprint export job. Returns 202 Accepted with Location header pointing to the job resource.\n",
1132
+ "tags": [
1133
+ "Blueprints"
1134
+ ],
1135
+ "parameters": [
1136
+ {
1137
+ "in": "path",
1138
+ "required": true,
1139
+ "name": "blueprint_id",
1140
+ "schema": {
1141
+ "$ref": "#/components/schemas/BlueprintID"
1142
+ }
1143
+ }
1144
+ ],
1145
+ "requestBody": {
1146
+ "required": false,
1147
+ "content": {
1148
+ "application/json": {
1149
+ "schema": {
1150
+ "type": "object",
1151
+ "properties": {
1152
+ "destination_org_id": {
1153
+ "type": "string"
1154
+ },
1155
+ "destination_blueprint_id": {
1156
+ "type": "string"
1157
+ },
1158
+ "validate": {
1159
+ "type": "boolean",
1160
+ "description": "When true, run terraform validate before creating the export zip. If validation fails, the job will be marked as FAILED with errors."
1161
+ }
1162
+ }
1163
+ }
1164
+ }
1165
+ }
1166
+ },
1167
+ "responses": {
1168
+ "202": {
1169
+ "description": "Blueprint export job started",
1170
+ "headers": {
1171
+ "Location": {
1172
+ "description": "URL to poll the job",
1173
+ "schema": {
1174
+ "type": "string"
1175
+ }
1176
+ }
1177
+ },
1178
+ "content": {
1179
+ "application/json": {
1180
+ "schema": {
1181
+ "type": "object",
1182
+ "properties": {
1183
+ "job_id": {
1184
+ "$ref": "#/components/schemas/BlueprintJobID"
1185
+ }
1186
+ }
1187
+ }
1188
+ }
1189
+ }
1190
+ }
1191
+ }
1192
+ }
1193
+ },
1194
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}:format-description": {
1195
+ "post": {
1196
+ "operationId": "formatBlueprintDescription",
1197
+ "summary": "formatBlueprintDescription",
1198
+ "description": "Format a blueprint description as markdown using AI.\n",
1199
+ "tags": [
1200
+ "Blueprints"
1201
+ ],
1202
+ "parameters": [
1203
+ {
1204
+ "in": "path",
1205
+ "required": true,
1206
+ "name": "blueprint_id",
1207
+ "schema": {
1208
+ "$ref": "#/components/schemas/BlueprintID"
1209
+ }
1210
+ }
1211
+ ],
1212
+ "requestBody": {
1213
+ "required": true,
1214
+ "content": {
1215
+ "application/json": {
1216
+ "schema": {
1217
+ "type": "object",
1218
+ "required": [
1219
+ "text"
1220
+ ],
1221
+ "properties": {
1222
+ "text": {
1223
+ "type": "string",
1224
+ "description": "Plain text to format as markdown"
1225
+ }
1226
+ }
1227
+ }
1228
+ }
1229
+ }
1230
+ },
1231
+ "responses": {
1232
+ "200": {
1233
+ "description": "Successfully formatted description",
1234
+ "content": {
1235
+ "application/json": {
1236
+ "schema": {
1237
+ "type": "object",
1238
+ "properties": {
1239
+ "markdown": {
1240
+ "type": "string",
1241
+ "description": "AI-formatted markdown content"
1242
+ }
1243
+ }
1244
+ }
1245
+ }
1246
+ }
1247
+ }
1248
+ }
1249
+ }
1250
+ },
1251
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}/resources": {
1252
+ "post": {
1253
+ "operationId": "addBlueprintResource",
1254
+ "summary": "addBlueprintResource",
1255
+ "description": "Add a resource to a Blueprint",
1256
+ "tags": [
1257
+ "Blueprints"
1258
+ ],
1259
+ "parameters": [
1260
+ {
1261
+ "in": "path",
1262
+ "required": true,
1263
+ "name": "blueprint_id",
1264
+ "schema": {
1265
+ "$ref": "#/components/schemas/BlueprintID"
1266
+ }
1267
+ },
1268
+ {
1269
+ "in": "query",
1270
+ "name": "add_dependencies",
1271
+ "schema": {
1272
+ "type": "boolean",
1273
+ "default": false,
1274
+ "description": "Whether to add this resource dependencies to the blueprint automatically"
1275
+ }
1276
+ }
1277
+ ],
1278
+ "requestBody": {
1279
+ "content": {
1280
+ "application/json": {
1281
+ "schema": {
1282
+ "$ref": "#/components/schemas/BlueprintResource"
1283
+ }
1284
+ }
1285
+ }
1286
+ },
1287
+ "responses": {
1288
+ "200": {
1289
+ "description": "Added Blueprint Resource",
1290
+ "content": {
1291
+ "application/json": {
1292
+ "schema": {
1293
+ "type": "object",
1294
+ "properties": {
1295
+ "resources": {
1296
+ "type": "array",
1297
+ "items": {
1298
+ "$ref": "#/components/schemas/BlueprintResource"
1299
+ }
1300
+ }
1301
+ }
1302
+ }
1303
+ }
1304
+ }
1305
+ }
1306
+ }
1307
+ }
1308
+ },
1309
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}/resources:syncDependencies": {
1310
+ "post": {
1311
+ "operationId": "syncDependencies",
1312
+ "summary": "syncDependencies",
1313
+ "description": "Sync dependencies of all root resources in a Blueprint",
1314
+ "tags": [
1315
+ "Blueprints"
1316
+ ],
1317
+ "parameters": [
1318
+ {
1319
+ "in": "path",
1320
+ "required": true,
1321
+ "name": "blueprint_id",
1322
+ "schema": {
1323
+ "$ref": "#/components/schemas/BlueprintID"
1324
+ }
1325
+ }
1326
+ ],
1327
+ "responses": {
1328
+ "202": {
1329
+ "description": "Dependencies sync job started",
1330
+ "headers": {
1331
+ "Location": {
1332
+ "description": "URL to poll the job",
1333
+ "schema": {
1334
+ "type": "string"
1335
+ }
1336
+ }
1337
+ },
1338
+ "content": {
1339
+ "application/json": {
1340
+ "schema": {
1341
+ "type": "object",
1342
+ "properties": {
1343
+ "job_id": {
1344
+ "$ref": "#/components/schemas/BlueprintJobID"
1345
+ }
1346
+ }
1347
+ }
1348
+ }
1349
+ }
1350
+ }
1351
+ }
1352
+ }
1353
+ },
1354
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}/resources/bulk": {
1355
+ "post": {
1356
+ "operationId": "bulkAddBlueprintResources",
1357
+ "summary": "bulkAddBlueprintResources",
1358
+ "description": "Bulk Add resources in a Blueprint",
1359
+ "tags": [
1360
+ "Blueprints"
1361
+ ],
1362
+ "parameters": [
1363
+ {
1364
+ "in": "path",
1365
+ "required": true,
1366
+ "name": "blueprint_id",
1367
+ "schema": {
1368
+ "$ref": "#/components/schemas/BlueprintID"
1369
+ }
1370
+ },
1371
+ {
1372
+ "in": "query",
1373
+ "name": "add_dependencies",
1374
+ "schema": {
1375
+ "type": "boolean",
1376
+ "default": false,
1377
+ "description": "Whether to add this resource dependencies to the blueprint automatically"
1378
+ }
1379
+ }
1380
+ ],
1381
+ "requestBody": {
1382
+ "content": {
1383
+ "application/json": {
1384
+ "schema": {
1385
+ "type": "array",
1386
+ "items": {
1387
+ "$ref": "#/components/schemas/BlueprintResource"
1388
+ }
1389
+ }
1390
+ }
1391
+ }
1392
+ },
1393
+ "responses": {
1394
+ "200": {
1395
+ "description": "Bulk updated Blueprint Resources",
1396
+ "content": {
1397
+ "application/json": {
1398
+ "schema": {
1399
+ "type": "object",
1400
+ "properties": {
1401
+ "resources": {
1402
+ "type": "array",
1403
+ "items": {
1404
+ "$ref": "#/components/schemas/BlueprintResource"
1405
+ }
1406
+ }
1407
+ }
1408
+ }
1409
+ }
1410
+ }
1411
+ }
1412
+ }
1413
+ },
1414
+ "put": {
1415
+ "operationId": "bulkUpdateBlueprintResources",
1416
+ "summary": "bulkUpdateBlueprintResources",
1417
+ "description": "Bulk update resources in a Blueprint",
1418
+ "tags": [
1419
+ "Blueprints"
1420
+ ],
1421
+ "parameters": [
1422
+ {
1423
+ "in": "path",
1424
+ "required": true,
1425
+ "name": "blueprint_id",
1426
+ "schema": {
1427
+ "$ref": "#/components/schemas/BlueprintID"
1428
+ }
1429
+ }
1430
+ ],
1431
+ "requestBody": {
1432
+ "content": {
1433
+ "application/json": {
1434
+ "schema": {
1435
+ "type": "array",
1436
+ "items": {
1437
+ "$ref": "#/components/schemas/BlueprintResource"
1438
+ }
1439
+ }
1440
+ }
1441
+ }
1442
+ },
1443
+ "responses": {
1444
+ "200": {
1445
+ "description": "Bulk updated Blueprint Resources",
1446
+ "content": {
1447
+ "application/json": {
1448
+ "schema": {
1449
+ "type": "object",
1450
+ "properties": {
1451
+ "resources": {
1452
+ "type": "array",
1453
+ "items": {
1454
+ "$ref": "#/components/schemas/BlueprintResource"
1455
+ }
1456
+ }
1457
+ }
1458
+ }
1459
+ }
1460
+ }
1461
+ }
1462
+ }
1463
+ },
1464
+ "delete": {
1465
+ "operationId": "bulkDeleteBlueprintResources",
1466
+ "summary": "bulkDeleteBlueprintResources",
1467
+ "description": "Bulk delete resources in a Blueprint",
1468
+ "tags": [
1469
+ "Blueprints"
1470
+ ],
1471
+ "parameters": [
1472
+ {
1473
+ "in": "path",
1474
+ "required": true,
1475
+ "name": "blueprint_id",
1476
+ "schema": {
1477
+ "$ref": "#/components/schemas/BlueprintID"
1478
+ }
1479
+ }
1480
+ ],
1481
+ "requestBody": {
1482
+ "content": {
1483
+ "application/json": {
1484
+ "schema": {
1485
+ "type": "array",
1486
+ "items": {
1487
+ "$ref": "#/components/schemas/BlueprintResourceID"
1488
+ }
1489
+ }
1490
+ }
1491
+ }
1492
+ },
1493
+ "responses": {
1494
+ "200": {
1495
+ "description": "Bulk deleted Blueprint Resources",
1496
+ "content": {
1497
+ "application/json": {
1498
+ "schema": {
1499
+ "type": "object",
1500
+ "properties": {
1501
+ "resources": {
1502
+ "type": "array",
1503
+ "items": {
1504
+ "$ref": "#/components/schemas/BlueprintResource"
1505
+ }
1506
+ }
1507
+ }
1508
+ }
1509
+ }
1510
+ }
1511
+ }
1512
+ }
1513
+ }
1514
+ },
1515
+ "/v2/blueprint-manifest/blueprints/{blueprint_id}/resources/{resource_id}": {
1516
+ "put": {
1517
+ "operationId": "updateBlueprintResource",
1518
+ "summary": "updateBlueprintResource",
1519
+ "description": "Update a resource in a Blueprint",
1520
+ "tags": [
1521
+ "Blueprints"
1522
+ ],
1523
+ "parameters": [
1524
+ {
1525
+ "in": "path",
1526
+ "required": true,
1527
+ "name": "blueprint_id",
1528
+ "schema": {
1529
+ "$ref": "#/components/schemas/BlueprintID"
1530
+ }
1531
+ },
1532
+ {
1533
+ "in": "path",
1534
+ "required": true,
1535
+ "name": "resource_id",
1536
+ "schema": {
1537
+ "$ref": "#/components/schemas/BlueprintResourceID"
1538
+ }
1539
+ }
1540
+ ],
1541
+ "requestBody": {
1542
+ "content": {
1543
+ "application/json": {
1544
+ "schema": {
1545
+ "$ref": "#/components/schemas/BlueprintResource"
1546
+ }
1547
+ }
1548
+ }
1549
+ },
1550
+ "responses": {
1551
+ "200": {
1552
+ "description": "Updated Blueprint Resource",
1553
+ "content": {
1554
+ "application/json": {
1555
+ "schema": {
1556
+ "type": "object",
1557
+ "properties": {
1558
+ "resources": {
1559
+ "type": "array",
1560
+ "items": {
1561
+ "$ref": "#/components/schemas/BlueprintResource"
1562
+ }
1563
+ }
1564
+ }
1565
+ }
1566
+ }
1567
+ }
1568
+ }
1569
+ }
1570
+ },
1571
+ "delete": {
1572
+ "operationId": "deleteBlueprintResource",
1573
+ "summary": "deleteBlueprintResource",
1574
+ "description": "Delete a resource from a Blueprint",
1575
+ "tags": [
1576
+ "Blueprints"
1577
+ ],
1578
+ "parameters": [
1579
+ {
1580
+ "in": "path",
1581
+ "required": true,
1582
+ "name": "blueprint_id",
1583
+ "schema": {
1584
+ "$ref": "#/components/schemas/BlueprintID"
1585
+ }
1586
+ },
1587
+ {
1588
+ "in": "path",
1589
+ "required": true,
1590
+ "name": "resource_id",
1591
+ "schema": {
1592
+ "$ref": "#/components/schemas/BlueprintResourceID"
1593
+ }
1594
+ }
1595
+ ],
1596
+ "responses": {
1597
+ "200": {
1598
+ "description": "Deleted Blueprint Resource",
1599
+ "content": {
1600
+ "application/json": {
1601
+ "schema": {
1602
+ "type": "object",
1603
+ "properties": {
1604
+ "resources": {
1605
+ "type": "array",
1606
+ "items": {
1607
+ "$ref": "#/components/schemas/BlueprintResource"
1608
+ }
1609
+ }
1610
+ }
1611
+ }
1612
+ }
1613
+ }
1614
+ }
1615
+ }
1616
+ }
1617
+ },
1618
+ "/v2/blueprint-manifest/jobs": {
1619
+ "get": {
1620
+ "operationId": "listBlueprintJobs",
1621
+ "summary": "List Blueprint Jobs",
1622
+ "description": "List all blueprint jobs",
1623
+ "tags": [
1624
+ "Jobs"
1625
+ ],
1626
+ "responses": {
1627
+ "200": {
1628
+ "description": "Blueprint jobs",
1629
+ "content": {
1630
+ "application/json": {
1631
+ "schema": {
1632
+ "type": "object",
1633
+ "properties": {
1634
+ "total": {
1635
+ "type": "integer",
1636
+ "example": 1
1637
+ },
1638
+ "results": {
1639
+ "type": "array",
1640
+ "items": {
1641
+ "$ref": "#/components/schemas/BlueprintJob"
1642
+ }
1643
+ }
1644
+ }
1645
+ }
1646
+ }
1647
+ }
1648
+ }
1649
+ }
1650
+ }
1651
+ },
1652
+ "/v2/blueprint-manifest/jobs/{job_id}": {
1653
+ "get": {
1654
+ "operationId": "getBlueprintJob",
1655
+ "summary": "Get Job",
1656
+ "description": "Poll current state of a job.",
1657
+ "tags": [
1658
+ "Jobs"
1659
+ ],
1660
+ "parameters": [
1661
+ {
1662
+ "in": "path",
1663
+ "required": true,
1664
+ "name": "job_id",
1665
+ "schema": {
1666
+ "$ref": "#/components/schemas/BlueprintJobID"
1667
+ }
1668
+ }
1669
+ ],
1670
+ "responses": {
1671
+ "200": {
1672
+ "description": "Job status",
1673
+ "content": {
1674
+ "application/json": {
1675
+ "schema": {
1676
+ "$ref": "#/components/schemas/BlueprintJob"
1677
+ }
1678
+ }
1679
+ }
1680
+ }
1681
+ }
1682
+ }
1683
+ },
1684
+ "/v2/blueprint-manifest/jobs/{job_id}:continue": {
1685
+ "post": {
1686
+ "operationId": "continueInstallationJob",
1687
+ "summary": "Continue Installation Job",
1688
+ "description": "Continue an installation job if it is waiting for user action.",
1689
+ "tags": [
1690
+ "Jobs"
1691
+ ],
1692
+ "parameters": [
1693
+ {
1694
+ "in": "path",
1695
+ "required": true,
1696
+ "name": "job_id",
1697
+ "schema": {
1698
+ "$ref": "#/components/schemas/BlueprintJobID"
1699
+ }
1700
+ }
1701
+ ],
1702
+ "requestBody": {
1703
+ "required": false,
1704
+ "content": {
1705
+ "application/json": {
1706
+ "schema": {
1707
+ "$ref": "#/components/schemas/BlueprintInstallationJobOptions"
1708
+ }
1709
+ }
1710
+ }
1711
+ },
1712
+ "responses": {
1713
+ "200": {
1714
+ "description": "Blueprint installation job continued",
1715
+ "content": {
1716
+ "application/json": {
1717
+ "schema": {
1718
+ "$ref": "#/components/schemas/BlueprintInstallationJob"
1719
+ }
1720
+ }
1721
+ }
1722
+ }
1723
+ }
1724
+ }
1725
+ },
1726
+ "/v2/blueprint-manifest/jobs/{job_id}:cancel": {
1727
+ "post": {
1728
+ "operationId": "cancelBlueprintJob",
1729
+ "summary": "Cancel Blueprint Job",
1730
+ "description": "Cancel a blueprint job if it is still running.",
1731
+ "tags": [
1732
+ "Jobs"
1733
+ ],
1734
+ "parameters": [
1735
+ {
1736
+ "in": "path",
1737
+ "required": true,
1738
+ "name": "job_id",
1739
+ "schema": {
1740
+ "$ref": "#/components/schemas/BlueprintJobID"
1741
+ }
1742
+ }
1743
+ ],
1744
+ "responses": {
1745
+ "200": {
1746
+ "description": "Blueprint job cancelled",
1747
+ "content": {
1748
+ "application/json": {
1749
+ "schema": {
1750
+ "$ref": "#/components/schemas/BlueprintJob"
1751
+ }
1752
+ }
1753
+ }
1754
+ }
1755
+ }
1756
+ }
1757
+ }
1758
+ },
1759
+ "components": {
1760
+ "schemas": {
1761
+ "BlueprintID": {
1762
+ "type": "string",
1763
+ "description": "ID of a blueprint",
1764
+ "example": "c2d6cac8-bdd5-4ea2-8a6c-1cbdbe77b341"
1765
+ },
1766
+ "BlueprintResourceID": {
1767
+ "type": "string",
1768
+ "description": "ID of a blueprint resource",
1769
+ "example": "c2d6cac8-bdd5-4ea2-8a6c-1cbdbe77b341"
1770
+ },
1771
+ "CommonBlueprintFields": {
1772
+ "type": "object",
1773
+ "properties": {
1774
+ "id": {
1775
+ "$ref": "#/components/schemas/BlueprintID"
1776
+ },
1777
+ "title": {
1778
+ "type": "string"
1779
+ },
1780
+ "slug": {
1781
+ "type": "string"
1782
+ },
1783
+ "description": {
1784
+ "type": "object",
1785
+ "properties": {
1786
+ "preinstall": {
1787
+ "type": "string",
1788
+ "description": "Markdown content shown before starting to install the blueprint",
1789
+ "example": "This is the content of the preinstall.md file which contains the blueprint description.\n"
1790
+ },
1791
+ "postinstall": {
1792
+ "type": "string",
1793
+ "description": "Markdown content to be displayed when showing the plan to install blueprint",
1794
+ "example": "This is the content of the postinstall.md file\n"
1795
+ }
1796
+ }
1797
+ },
1798
+ "version": {
1799
+ "type": "string"
1800
+ },
1801
+ "deployments": {
1802
+ "type": "array",
1803
+ "items": {
1804
+ "type": "object",
1805
+ "properties": {
1806
+ "source_org_id": {
1807
+ "type": "string"
1808
+ },
1809
+ "source_blueprint_id": {
1810
+ "type": "string"
1811
+ },
1812
+ "destination_org_id": {
1813
+ "type": "string"
1814
+ },
1815
+ "destination_blueprint_id": {
1816
+ "type": "string"
1817
+ },
1818
+ "triggered_at": {
1819
+ "type": "string",
1820
+ "format": "date-time"
1821
+ }
1822
+ }
1823
+ }
1824
+ },
1825
+ "is_verified": {
1826
+ "type": "boolean",
1827
+ "description": "Whether the blueprint is verified by epilot"
1828
+ },
1829
+ "installation_status": {
1830
+ "type": "string",
1831
+ "enum": [
1832
+ "IN_PROGRESS",
1833
+ "CANCELED",
1834
+ "PARTIAL",
1835
+ "SUCCESS",
1836
+ "FAILED"
1837
+ ]
1838
+ },
1839
+ "created_at": {
1840
+ "type": "string",
1841
+ "format": "date-time"
1842
+ },
1843
+ "updated_at": {
1844
+ "type": "string",
1845
+ "format": "date-time"
1846
+ },
1847
+ "created_by": {
1848
+ "$ref": "#/components/schemas/CallerIdentity"
1849
+ },
1850
+ "updated_by": {
1851
+ "$ref": "#/components/schemas/CallerIdentity"
1852
+ },
1853
+ "installation_job_ids": {
1854
+ "type": "array",
1855
+ "items": {
1856
+ "$ref": "#/components/schemas/BlueprintJobID"
1857
+ }
1858
+ },
1859
+ "source_blueprint_id": {
1860
+ "description": "ID of the blueprint that brought this blueprint to the destination org (deployed or installed)",
1861
+ "$ref": "#/components/schemas/BlueprintID"
1862
+ },
1863
+ "archived": {
1864
+ "type": "boolean",
1865
+ "description": "Whether the blueprint is archived (soft-deleted). Archived blueprints are hidden from the main list.",
1866
+ "default": false
1867
+ },
1868
+ "docs_url": {
1869
+ "type": "string",
1870
+ "description": "URL to the blueprint documentation"
1871
+ },
1872
+ "recommended_apps": {
1873
+ "type": "array",
1874
+ "items": {
1875
+ "type": "string"
1876
+ },
1877
+ "description": "List of recommended app IDs for the blueprint"
1878
+ },
1879
+ "required_features": {
1880
+ "type": "object",
1881
+ "description": "Feature constraints for blueprint installation",
1882
+ "properties": {
1883
+ "enabled": {
1884
+ "type": "array",
1885
+ "items": {
1886
+ "type": "string"
1887
+ },
1888
+ "description": "Features that must be enabled in the target org"
1889
+ },
1890
+ "disabled": {
1891
+ "type": "array",
1892
+ "items": {
1893
+ "type": "string"
1894
+ },
1895
+ "description": "Features that must be disabled in the target org"
1896
+ }
1897
+ }
1898
+ },
1899
+ "zip_file_name": {
1900
+ "type": "string",
1901
+ "description": "Custom name for the exported zip file"
1902
+ }
1903
+ },
1904
+ "required": [
1905
+ "title"
1906
+ ]
1907
+ },
1908
+ "BlueprintResource": {
1909
+ "type": "object",
1910
+ "properties": {
1911
+ "id": {
1912
+ "$ref": "#/components/schemas/BlueprintResourceID"
1913
+ },
1914
+ "name": {
1915
+ "type": "string"
1916
+ },
1917
+ "type": {
1918
+ "$ref": "#/components/schemas/ResourceNodeType"
1919
+ },
1920
+ "address": {
1921
+ "type": "string"
1922
+ },
1923
+ "is_root": {
1924
+ "type": "boolean",
1925
+ "description": "When a resource is marked as root, we'll be able to keep track of it's dependencies"
1926
+ },
1927
+ "is_ready": {
1928
+ "type": "boolean",
1929
+ "description": "when editing a blueprint, this indicates if the resource is ready to be exported and when installing a blueprint, this indicates if the resource is ready to be used"
1930
+ },
1931
+ "is_hidden": {
1932
+ "type": "boolean",
1933
+ "description": "When a resource is marked as hidden, it's used to hide it from the UI"
1934
+ },
1935
+ "is_disabled": {
1936
+ "type": "boolean",
1937
+ "default": false,
1938
+ "description": "When a resource is marked as disabled, it will be skipped during export"
1939
+ },
1940
+ "hard_dependencies": {
1941
+ "type": "array",
1942
+ "items": {
1943
+ "$ref": "#/components/schemas/ResourceNodeType"
1944
+ }
1945
+ },
1946
+ "parent_resource_ids": {
1947
+ "type": "array",
1948
+ "description": "Used to automatically remove resources with hard dependencies and to block deletion of resources with hard dependencies",
1949
+ "items": {
1950
+ "$ref": "#/components/schemas/BlueprintResourceID"
1951
+ }
1952
+ },
1953
+ "depends_on_addresses": {
1954
+ "type": "array",
1955
+ "description": "Terraform addresses this resource references (for dependency-aware ignore)",
1956
+ "items": {
1957
+ "type": "string"
1958
+ }
1959
+ },
1960
+ "impact_on_install": {
1961
+ "type": "array",
1962
+ "items": {
1963
+ "type": "string",
1964
+ "enum": [
1965
+ "create",
1966
+ "update",
1967
+ "internal-update",
1968
+ "no-op",
1969
+ "delete",
1970
+ "ignored"
1971
+ ]
1972
+ }
1973
+ },
1974
+ "impact_on_install_reason": {
1975
+ "type": "array",
1976
+ "description": "Fields causing the updates / internal updates on a resource install",
1977
+ "items": {
1978
+ "type": "string"
1979
+ }
1980
+ }
1981
+ },
1982
+ "required": [
1983
+ "id",
1984
+ "type"
1985
+ ]
1986
+ },
1987
+ "BlueprintPreview": {
1988
+ "type": "object",
1989
+ "description": "Preview data for a blueprint before installation. Stored temporarily with TTL.",
1990
+ "properties": {
1991
+ "id": {
1992
+ "type": "string",
1993
+ "description": "Unique preview ID"
1994
+ },
1995
+ "org_id": {
1996
+ "type": "string",
1997
+ "description": "Organization ID"
1998
+ },
1999
+ "title": {
2000
+ "type": "string"
2001
+ },
2002
+ "description": {
2003
+ "type": "object",
2004
+ "properties": {
2005
+ "preinstall": {
2006
+ "type": "string"
2007
+ }
2008
+ }
2009
+ },
2010
+ "version": {
2011
+ "type": "string"
2012
+ },
2013
+ "slug": {
2014
+ "type": "string"
2015
+ },
2016
+ "source_type": {
2017
+ "type": "string",
2018
+ "enum": [
2019
+ "marketplace",
2020
+ "file"
2021
+ ]
2022
+ },
2023
+ "blueprint_file_s3_key": {
2024
+ "type": "string",
2025
+ "description": "S3 key of the blueprint zip file"
2026
+ },
2027
+ "is_verified": {
2028
+ "type": "boolean"
2029
+ },
2030
+ "docs_url": {
2031
+ "type": "string"
2032
+ },
2033
+ "recommended_apps": {
2034
+ "type": "array",
2035
+ "items": {
2036
+ "type": "string"
2037
+ }
2038
+ },
2039
+ "created_at": {
2040
+ "type": "string",
2041
+ "format": "date-time"
2042
+ },
2043
+ "created_by": {
2044
+ "$ref": "#/components/schemas/CallerIdentity"
2045
+ },
2046
+ "is_updating": {
2047
+ "type": "boolean",
2048
+ "description": "Whether the blueprint is updating to the latest version in the marketplace"
2049
+ },
2050
+ "resources": {
2051
+ "type": "array",
2052
+ "items": {
2053
+ "$ref": "#/components/schemas/BlueprintResource"
2054
+ }
2055
+ }
2056
+ },
2057
+ "required": [
2058
+ "id",
2059
+ "org_id",
2060
+ "title",
2061
+ "source_type",
2062
+ "blueprint_file_s3_key",
2063
+ "is_verified",
2064
+ "created_at",
2065
+ "created_by",
2066
+ "resources",
2067
+ "is_updating"
2068
+ ]
2069
+ },
2070
+ "CustomBlueprint": {
2071
+ "allOf": [
2072
+ {
2073
+ "$ref": "#/components/schemas/CommonBlueprintFields"
2074
+ },
2075
+ {
2076
+ "type": "object",
2077
+ "properties": {
2078
+ "resources": {
2079
+ "type": "array",
2080
+ "items": {
2081
+ "$ref": "#/components/schemas/BlueprintResource"
2082
+ }
2083
+ },
2084
+ "source_type": {
2085
+ "type": "string",
2086
+ "const": "custom"
2087
+ }
2088
+ }
2089
+ }
2090
+ ],
2091
+ "required": [
2092
+ "source_type"
2093
+ ]
2094
+ },
2095
+ "FileBlueprint": {
2096
+ "allOf": [
2097
+ {
2098
+ "$ref": "#/components/schemas/CommonBlueprintFields"
2099
+ },
2100
+ {
2101
+ "type": "object",
2102
+ "properties": {
2103
+ "source_type": {
2104
+ "type": "string",
2105
+ "const": "file"
2106
+ },
2107
+ "resources": {
2108
+ "type": "array",
2109
+ "items": {
2110
+ "$ref": "#/components/schemas/BlueprintResource"
2111
+ }
2112
+ }
2113
+ }
2114
+ }
2115
+ ],
2116
+ "required": [
2117
+ "source_type"
2118
+ ]
2119
+ },
2120
+ "MarketplaceBlueprint": {
2121
+ "allOf": [
2122
+ {
2123
+ "$ref": "#/components/schemas/CommonBlueprintFields"
2124
+ },
2125
+ {
2126
+ "type": "object",
2127
+ "properties": {
2128
+ "docs_url": {
2129
+ "type": "string",
2130
+ "description": "URL to the blueprint documentation"
2131
+ },
2132
+ "source_type": {
2133
+ "type": "string",
2134
+ "const": "marketplace"
2135
+ },
2136
+ "resources": {
2137
+ "type": "array",
2138
+ "items": {
2139
+ "$ref": "#/components/schemas/BlueprintResource"
2140
+ }
2141
+ },
2142
+ "recommended_apps": {
2143
+ "type": "array",
2144
+ "items": {
2145
+ "type": "string"
2146
+ },
2147
+ "description": "List of recommended app IDs for the blueprint"
2148
+ },
2149
+ "has_update_available": {
2150
+ "type": "boolean",
2151
+ "description": "Whether a newer version is available in the marketplace."
2152
+ },
2153
+ "latest_marketplace_version": {
2154
+ "type": "string",
2155
+ "description": "The latest version available in the marketplace.",
2156
+ "example": "v2.0.0"
2157
+ },
2158
+ "installation_link": {
2159
+ "type": "string",
2160
+ "description": "URL to install/update the blueprint from the marketplace."
2161
+ }
2162
+ }
2163
+ }
2164
+ ],
2165
+ "required": [
2166
+ "source_type"
2167
+ ]
2168
+ },
2169
+ "InstalledMarketplaceBlueprintItem": {
2170
+ "type": "object",
2171
+ "description": "Summary of an installed marketplace blueprint for version tracking",
2172
+ "properties": {
2173
+ "id": {
2174
+ "$ref": "#/components/schemas/BlueprintID"
2175
+ },
2176
+ "slug": {
2177
+ "type": "string",
2178
+ "description": "URL slug of the blueprint from the epilot marketplace",
2179
+ "example": "solar-b2b"
2180
+ },
2181
+ "version": {
2182
+ "type": "string",
2183
+ "description": "Version of the installed blueprint",
2184
+ "example": "v1.0.0"
2185
+ },
2186
+ "created_at": {
2187
+ "type": "string",
2188
+ "format": "date-time"
2189
+ },
2190
+ "created_by": {
2191
+ "$ref": "#/components/schemas/CallerIdentity"
2192
+ },
2193
+ "updated_at": {
2194
+ "type": "string",
2195
+ "format": "date-time"
2196
+ },
2197
+ "updated_by": {
2198
+ "$ref": "#/components/schemas/CallerIdentity"
2199
+ },
2200
+ "has_update_available": {
2201
+ "type": "boolean",
2202
+ "description": "Whether a newer version is available in the marketplace",
2203
+ "example": true
2204
+ },
2205
+ "latest_marketplace_version": {
2206
+ "type": "string",
2207
+ "description": "The latest version available in the marketplace",
2208
+ "example": "v2.0.0"
2209
+ },
2210
+ "installation_link": {
2211
+ "type": "string",
2212
+ "description": "URL to install/update the blueprint from the marketplace"
2213
+ }
2214
+ },
2215
+ "required": [
2216
+ "id",
2217
+ "slug"
2218
+ ]
2219
+ },
2220
+ "DeployedBlueprint": {
2221
+ "allOf": [
2222
+ {
2223
+ "$ref": "#/components/schemas/CommonBlueprintFields"
2224
+ },
2225
+ {
2226
+ "type": "object",
2227
+ "properties": {
2228
+ "source_type": {
2229
+ "type": "string",
2230
+ "const": "deploy"
2231
+ },
2232
+ "resources": {
2233
+ "type": "array",
2234
+ "items": {
2235
+ "$ref": "#/components/schemas/BlueprintResource"
2236
+ }
2237
+ }
2238
+ }
2239
+ }
2240
+ ],
2241
+ "required": [
2242
+ "source_type"
2243
+ ]
2244
+ },
2245
+ "AppBlueprint": {
2246
+ "allOf": [
2247
+ {
2248
+ "$ref": "#/components/schemas/CommonBlueprintFields"
2249
+ },
2250
+ {
2251
+ "type": "object",
2252
+ "properties": {
2253
+ "source_type": {
2254
+ "type": "string",
2255
+ "const": "app"
2256
+ },
2257
+ "resources": {
2258
+ "type": "array",
2259
+ "items": {
2260
+ "$ref": "#/components/schemas/BlueprintResource"
2261
+ }
2262
+ }
2263
+ }
2264
+ }
2265
+ ],
2266
+ "required": [
2267
+ "source_type"
2268
+ ]
2269
+ },
2270
+ "Blueprint": {
2271
+ "oneOf": [
2272
+ {
2273
+ "$ref": "#/components/schemas/CustomBlueprint"
2274
+ },
2275
+ {
2276
+ "$ref": "#/components/schemas/FileBlueprint"
2277
+ },
2278
+ {
2279
+ "$ref": "#/components/schemas/MarketplaceBlueprint"
2280
+ },
2281
+ {
2282
+ "$ref": "#/components/schemas/DeployedBlueprint"
2283
+ },
2284
+ {
2285
+ "$ref": "#/components/schemas/AppBlueprint"
2286
+ }
2287
+ ]
2288
+ },
2289
+ "BlueprintJobID": {
2290
+ "type": "string",
2291
+ "description": "ID of a job",
2292
+ "example": "c2d6cac8-bdd5-4ea2-8a6c-1cbdbe77b341"
2293
+ },
2294
+ "CommonBlueprintJobFields": {
2295
+ "type": "object",
2296
+ "properties": {
2297
+ "id": {
2298
+ "$ref": "#/components/schemas/BlueprintJobID"
2299
+ },
2300
+ "events": {
2301
+ "type": "array",
2302
+ "items": {
2303
+ "$ref": "#/components/schemas/BlueprintJobEvent"
2304
+ }
2305
+ },
2306
+ "triggered_at": {
2307
+ "type": "string",
2308
+ "format": "date-time"
2309
+ },
2310
+ "created_by": {
2311
+ "$ref": "#/components/schemas/CallerIdentity"
2312
+ }
2313
+ }
2314
+ },
2315
+ "BlueprintExportJob": {
2316
+ "allOf": [
2317
+ {
2318
+ "$ref": "#/components/schemas/CommonBlueprintJobFields"
2319
+ },
2320
+ {
2321
+ "type": "object",
2322
+ "properties": {
2323
+ "blueprint_id": {
2324
+ "$ref": "#/components/schemas/BlueprintID"
2325
+ },
2326
+ "status": {
2327
+ "type": "string",
2328
+ "enum": [
2329
+ "IN_PROGRESS",
2330
+ "SUCCESS",
2331
+ "FAILED",
2332
+ "CANCELED"
2333
+ ]
2334
+ },
2335
+ "download_file": {
2336
+ "$ref": "#/components/schemas/S3Reference"
2337
+ }
2338
+ }
2339
+ }
2340
+ ]
2341
+ },
2342
+ "BlueprintInstallationJob": {
2343
+ "allOf": [
2344
+ {
2345
+ "$ref": "#/components/schemas/CommonBlueprintJobFields"
2346
+ },
2347
+ {
2348
+ "type": "object",
2349
+ "properties": {
2350
+ "source_blueprint_id": {
2351
+ "$ref": "#/components/schemas/BlueprintID"
2352
+ },
2353
+ "source_blueprint_type": {
2354
+ "type": "string",
2355
+ "enum": [
2356
+ "custom",
2357
+ "file",
2358
+ "marketplace",
2359
+ "deploy",
2360
+ "app"
2361
+ ]
2362
+ },
2363
+ "source_org_id": {
2364
+ "type": "string"
2365
+ },
2366
+ "source_blueprint_file": {
2367
+ "type": "string"
2368
+ },
2369
+ "destination_blueprint_id": {
2370
+ "$ref": "#/components/schemas/BlueprintID"
2371
+ },
2372
+ "destination_org_id": {
2373
+ "type": "string"
2374
+ },
2375
+ "slug": {
2376
+ "type": "string",
2377
+ "description": "Blueprint slug for marketplace blueprints"
2378
+ },
2379
+ "status": {
2380
+ "type": "string",
2381
+ "enum": [
2382
+ "IN_PROGRESS",
2383
+ "WAITING_USER_ACTION",
2384
+ "CANCELED",
2385
+ "SUCCESS",
2386
+ "FAILED"
2387
+ ]
2388
+ }
2389
+ }
2390
+ }
2391
+ ]
2392
+ },
2393
+ "BlueprintJob": {
2394
+ "oneOf": [
2395
+ {
2396
+ "$ref": "#/components/schemas/BlueprintExportJob"
2397
+ },
2398
+ {
2399
+ "$ref": "#/components/schemas/BlueprintInstallationJob"
2400
+ },
2401
+ {
2402
+ "$ref": "#/components/schemas/BlueprintDependenciesSyncJob"
2403
+ },
2404
+ {
2405
+ "$ref": "#/components/schemas/BlueprintValidateJob"
2406
+ }
2407
+ ]
2408
+ },
2409
+ "BlueprintDependenciesSyncJob": {
2410
+ "allOf": [
2411
+ {
2412
+ "$ref": "#/components/schemas/CommonBlueprintJobFields"
2413
+ },
2414
+ {
2415
+ "type": "object",
2416
+ "properties": {
2417
+ "blueprint_id": {
2418
+ "$ref": "#/components/schemas/BlueprintID"
2419
+ },
2420
+ "status": {
2421
+ "type": "string",
2422
+ "enum": [
2423
+ "IN_PROGRESS",
2424
+ "SUCCESS",
2425
+ "FAILED",
2426
+ "CANCELED"
2427
+ ]
2428
+ }
2429
+ }
2430
+ }
2431
+ ]
2432
+ },
2433
+ "BlueprintValidateJob": {
2434
+ "allOf": [
2435
+ {
2436
+ "$ref": "#/components/schemas/CommonBlueprintJobFields"
2437
+ },
2438
+ {
2439
+ "type": "object",
2440
+ "properties": {
2441
+ "blueprint_id": {
2442
+ "$ref": "#/components/schemas/BlueprintID"
2443
+ },
2444
+ "status": {
2445
+ "type": "string",
2446
+ "enum": [
2447
+ "IN_PROGRESS",
2448
+ "SUCCESS",
2449
+ "FAILED"
2450
+ ]
2451
+ },
2452
+ "valid": {
2453
+ "type": "boolean",
2454
+ "description": "Present when status is SUCCESS or FAILED."
2455
+ },
2456
+ "errors": {
2457
+ "type": "array",
2458
+ "items": {
2459
+ "$ref": "#/components/schemas/FormattedError"
2460
+ },
2461
+ "description": "Present when valid is false."
2462
+ }
2463
+ }
2464
+ }
2465
+ ]
2466
+ },
2467
+ "BlueprintJobEvent": {
2468
+ "type": "object",
2469
+ "properties": {
2470
+ "timestamp": {
2471
+ "type": "string",
2472
+ "format": "date-time"
2473
+ },
2474
+ "message": {
2475
+ "type": "string"
2476
+ },
2477
+ "errors": {
2478
+ "type": "array",
2479
+ "items": {
2480
+ "$ref": "#/components/schemas/FormattedError"
2481
+ }
2482
+ },
2483
+ "level": {
2484
+ "type": "string",
2485
+ "enum": [
2486
+ "info",
2487
+ "warning",
2488
+ "error"
2489
+ ]
2490
+ },
2491
+ "data": {
2492
+ "type": "object",
2493
+ "properties": {
2494
+ "installed_blueprint_id": {
2495
+ "$ref": "#/components/schemas/BlueprintID"
2496
+ },
2497
+ "export_job_id": {
2498
+ "$ref": "#/components/schemas/BlueprintJobID"
2499
+ },
2500
+ "resources": {
2501
+ "type": "number"
2502
+ }
2503
+ }
2504
+ }
2505
+ }
2506
+ },
2507
+ "BlueprintInstallationJobOptions": {
2508
+ "type": "object",
2509
+ "properties": {
2510
+ "resources_to_ignore": {
2511
+ "description": "List of resource addresses to ignore changes for. When a resource is marked as create, it will be ignored and not created.",
2512
+ "type": "array",
2513
+ "items": {
2514
+ "type": "string"
2515
+ }
2516
+ }
2517
+ }
2518
+ },
2519
+ "ManifestID": {
2520
+ "type": "string",
2521
+ "description": "ID of an imported / installed manifest",
2522
+ "example": "c2d6cac8-bdd5-4ea2-8a6c-1cbdbe77b341"
2523
+ },
2524
+ "JobID": {
2525
+ "type": "string",
2526
+ "description": "ID of an import or export job (state machine)",
2527
+ "example": "4854bb2a-94f9-424d-a968-3fb17fb0bf89"
2528
+ },
2529
+ "ManifestSource": {
2530
+ "type": "string",
2531
+ "enum": [
2532
+ "file",
2533
+ "marketplace",
2534
+ "sandbox"
2535
+ ]
2536
+ },
2537
+ "Manifest": {
2538
+ "allOf": [
2539
+ {
2540
+ "type": "object",
2541
+ "properties": {
2542
+ "import_job_id": {
2543
+ "$ref": "#/components/schemas/JobID"
2544
+ },
2545
+ "previous_jobs_ids": {
2546
+ "type": "array",
2547
+ "items": {
2548
+ "type": "string"
2549
+ },
2550
+ "description": "List of job IDs that were used to install the manifest"
2551
+ },
2552
+ "previous_jobs": {
2553
+ "type": "array",
2554
+ "items": {
2555
+ "$ref": "#/components/schemas/Job"
2556
+ },
2557
+ "description": "List of jobs that were used to install the manifest"
2558
+ }
2559
+ }
2560
+ },
2561
+ {
2562
+ "$ref": "#/components/schemas/CommonManifestFields"
2563
+ },
2564
+ {
2565
+ "$ref": "#/components/schemas/CommonMarkdownFields"
2566
+ },
2567
+ {
2568
+ "$ref": "#/components/schemas/CommonImportFields"
2569
+ },
2570
+ {
2571
+ "$ref": "#/components/schemas/ManifestTimestampFields"
2572
+ }
2573
+ ]
2574
+ },
2575
+ "ManifestItem": {
2576
+ "allOf": [
2577
+ {
2578
+ "$ref": "#/components/schemas/CommonManifestFields"
2579
+ },
2580
+ {
2581
+ "$ref": "#/components/schemas/ManifestTimestampFields"
2582
+ }
2583
+ ]
2584
+ },
2585
+ "JobStatus": {
2586
+ "type": "string",
2587
+ "enum": [
2588
+ "PENDING",
2589
+ "STARTED",
2590
+ "WAITING_USER_ACTION",
2591
+ "CANCELED",
2592
+ "IN_PROGRESS",
2593
+ "SUCCESS",
2594
+ "FAILED"
2595
+ ]
2596
+ },
2597
+ "ResourceNodeType": {
2598
+ "type": "string",
2599
+ "description": "Type of the resource",
2600
+ "enum": [
2601
+ "designbuilder",
2602
+ "journey",
2603
+ "product",
2604
+ "price",
2605
+ "product_recommendation",
2606
+ "coupon",
2607
+ "tax",
2608
+ "automation_flow",
2609
+ "entity_mapping",
2610
+ "file",
2611
+ "emailtemplate",
2612
+ "schema",
2613
+ "schema_attribute",
2614
+ "schema_capability",
2615
+ "schema_group",
2616
+ "schema_group_headline",
2617
+ "workflow_definition",
2618
+ "closing_reason",
2619
+ "taxonomy_classification",
2620
+ "webhook",
2621
+ "integration",
2622
+ "dashboard",
2623
+ "custom_variable",
2624
+ "usergroup",
2625
+ "saved_view",
2626
+ "app",
2627
+ "role",
2628
+ "portal_config",
2629
+ "target",
2630
+ "kanban",
2631
+ "validation_rule",
2632
+ "flow_template",
2633
+ "taxonomy",
2634
+ "notification_template"
2635
+ ]
2636
+ },
2637
+ "PlanChanges": {
2638
+ "type": "array",
2639
+ "items": {
2640
+ "type": "string",
2641
+ "enum": [
2642
+ "create",
2643
+ "update",
2644
+ "internal-update",
2645
+ "no-op",
2646
+ "delete",
2647
+ "ignored"
2648
+ ]
2649
+ }
2650
+ },
2651
+ "CommonResourceNode": {
2652
+ "type": "object",
2653
+ "properties": {
2654
+ "id": {
2655
+ "type": "string",
2656
+ "description": "ID of the resource"
2657
+ },
2658
+ "type": {
2659
+ "$ref": "#/components/schemas/ResourceNodeType"
2660
+ },
2661
+ "name": {
2662
+ "type": "string",
2663
+ "description": "Name of the resource"
2664
+ },
2665
+ "source_id": {
2666
+ "type": "string",
2667
+ "description": "Source ID of the resource"
2668
+ },
2669
+ "is_virtual": {
2670
+ "type": "boolean",
2671
+ "description": "Whether the resource is virtual"
2672
+ }
2673
+ },
2674
+ "required": [
2675
+ "id",
2676
+ "type"
2677
+ ]
2678
+ },
2679
+ "RootResourceNode": {
2680
+ "allOf": [
2681
+ {
2682
+ "$ref": "#/components/schemas/CommonResourceNode"
2683
+ },
2684
+ {
2685
+ "type": "object",
2686
+ "properties": {
2687
+ "address": {
2688
+ "type": "string",
2689
+ "description": "Terraform address of the resource"
2690
+ },
2691
+ "dependencies": {
2692
+ "type": "array",
2693
+ "items": {
2694
+ "$ref": "#/components/schemas/VirtualResourceNodeGroup"
2695
+ },
2696
+ "description": "Dependencies of the resource",
2697
+ "nullable": true
2698
+ },
2699
+ "changes": {
2700
+ "$ref": "#/components/schemas/PlanChanges"
2701
+ },
2702
+ "changes_reason": {
2703
+ "type": "array",
2704
+ "description": "Fields causing the updates / internal updates on a resource install",
2705
+ "items": {
2706
+ "type": "string"
2707
+ }
2708
+ }
2709
+ }
2710
+ }
2711
+ ]
2712
+ },
2713
+ "VirtualResourceNodeGroup": {
2714
+ "allOf": [
2715
+ {
2716
+ "$ref": "#/components/schemas/CommonResourceNode"
2717
+ },
2718
+ {
2719
+ "type": "object",
2720
+ "properties": {
2721
+ "dependencies": {
2722
+ "type": "array",
2723
+ "items": {
2724
+ "$ref": "#/components/schemas/ResourceNode"
2725
+ }
2726
+ },
2727
+ "is_virtual": {
2728
+ "type": "boolean",
2729
+ "enum": [
2730
+ true
2731
+ ]
2732
+ }
2733
+ }
2734
+ }
2735
+ ]
2736
+ },
2737
+ "ResourceNode": {
2738
+ "allOf": [
2739
+ {
2740
+ "$ref": "#/components/schemas/CommonResourceNode"
2741
+ },
2742
+ {
2743
+ "type": "object",
2744
+ "properties": {
2745
+ "address": {
2746
+ "type": "string",
2747
+ "description": "Terraform address of the resource"
2748
+ },
2749
+ "dependencies": {
2750
+ "type": "array",
2751
+ "items": {
2752
+ "$ref": "#/components/schemas/ResourceNode"
2753
+ },
2754
+ "description": "Dependencies of the resource",
2755
+ "nullable": true
2756
+ },
2757
+ "parents": {
2758
+ "type": "array",
2759
+ "items": {
2760
+ "type": "object",
2761
+ "properties": {
2762
+ "id": {
2763
+ "type": "string"
2764
+ },
2765
+ "type": {
2766
+ "$ref": "#/components/schemas/ResourceNodeType"
2767
+ }
2768
+ }
2769
+ }
2770
+ },
2771
+ "source_id": {
2772
+ "description": "Original ID of the exported resource",
2773
+ "type": "string"
2774
+ },
2775
+ "changes": {
2776
+ "$ref": "#/components/schemas/PlanChanges"
2777
+ },
2778
+ "changes_reason": {
2779
+ "type": "array",
2780
+ "description": "Fields causing the updates / internal updates on a resource install",
2781
+ "items": {
2782
+ "type": "string"
2783
+ }
2784
+ }
2785
+ }
2786
+ }
2787
+ ]
2788
+ },
2789
+ "Job": {
2790
+ "allOf": [
2791
+ {
2792
+ "type": "object",
2793
+ "properties": {
2794
+ "job_id": {
2795
+ "$ref": "#/components/schemas/JobID"
2796
+ },
2797
+ "job_status": {
2798
+ "$ref": "#/components/schemas/JobStatus"
2799
+ },
2800
+ "manifest_file_path": {
2801
+ "type": "string",
2802
+ "description": "The S3 key of the manifest file"
2803
+ },
2804
+ "message": {
2805
+ "type": "string"
2806
+ },
2807
+ "timestamp": {
2808
+ "type": "string",
2809
+ "format": "date-time"
2810
+ },
2811
+ "plan_file_content": {
2812
+ "type": "string",
2813
+ "description": "An URL to download the plan file"
2814
+ },
2815
+ "resources_to_export": {
2816
+ "description": "An array of tree-like JSON objects or a singular tree-like JSON object representing the resources to import",
2817
+ "oneOf": [
2818
+ {
2819
+ "type": "array",
2820
+ "items": {
2821
+ "$ref": "#/components/schemas/RootResourceNode"
2822
+ }
2823
+ },
2824
+ {
2825
+ "$ref": "#/components/schemas/RootResourceNode"
2826
+ }
2827
+ ]
2828
+ },
2829
+ "large_resources_to_export_url": {
2830
+ "type": "string",
2831
+ "description": "An URL to download the resources to export when the resources are too large to be included in the response"
2832
+ },
2833
+ "resources_to_import": {
2834
+ "description": "An array of tree-like JSON objects or a singular tree-like JSON object representing the resources to import",
2835
+ "oneOf": [
2836
+ {
2837
+ "type": "array",
2838
+ "items": {
2839
+ "$ref": "#/components/schemas/RootResourceNode"
2840
+ }
2841
+ },
2842
+ {
2843
+ "$ref": "#/components/schemas/RootResourceNode"
2844
+ }
2845
+ ]
2846
+ },
2847
+ "large_resources_to_import_url": {
2848
+ "type": "string",
2849
+ "description": "An URL to download the resources to import when the resources are too large to be included in the response"
2850
+ },
2851
+ "resource_replacements": {
2852
+ "type": "array",
2853
+ "items": {
2854
+ "$ref": "#/components/schemas/ResourceReplacement"
2855
+ }
2856
+ },
2857
+ "is_verified": {
2858
+ "type": "boolean",
2859
+ "description": "Whether the manifest comes from a trusted source and is signed by epilot"
2860
+ },
2861
+ "errors": {
2862
+ "type": "array",
2863
+ "items": {
2864
+ "$ref": "#/components/schemas/FormattedError"
2865
+ }
2866
+ }
2867
+ }
2868
+ },
2869
+ {
2870
+ "$ref": "#/components/schemas/CommonImportFields"
2871
+ },
2872
+ {
2873
+ "$ref": "#/components/schemas/CommonMarkdownFields"
2874
+ },
2875
+ {
2876
+ "$ref": "#/components/schemas/CommonManifestFields"
2877
+ }
2878
+ ]
2879
+ },
2880
+ "UploadFilePayload": {
2881
+ "type": "object",
2882
+ "properties": {
2883
+ "filename": {
2884
+ "type": "string",
2885
+ "example": "example.manifest.zip"
2886
+ }
2887
+ },
2888
+ "required": [
2889
+ "filename"
2890
+ ]
2891
+ },
2892
+ "S3Reference": {
2893
+ "type": "object",
2894
+ "properties": {
2895
+ "bucket": {
2896
+ "type": "string",
2897
+ "example": "blueprint-manifest-prod-blueprintsv2bucket-sybpsryropzw"
2898
+ },
2899
+ "key": {
2900
+ "type": "string",
2901
+ "example": "templates/main.tf"
2902
+ }
2903
+ },
2904
+ "required": [
2905
+ "bucket",
2906
+ "key"
2907
+ ]
2908
+ },
2909
+ "CommonManifestFields": {
2910
+ "type": "object",
2911
+ "properties": {
2912
+ "manifest_id": {
2913
+ "$ref": "#/components/schemas/ManifestID"
2914
+ },
2915
+ "source_type": {
2916
+ "$ref": "#/components/schemas/ManifestSource"
2917
+ },
2918
+ "source_blueprint_name": {
2919
+ "type": "string",
2920
+ "example": "Solar B2B"
2921
+ },
2922
+ "source_blueprint_slug": {
2923
+ "type": "string",
2924
+ "description": "URL slug of a blueprint from the epilot marketplace",
2925
+ "example": "solar-b2b"
2926
+ },
2927
+ "source_blueprint_version": {
2928
+ "type": "string",
2929
+ "description": "Version of the blueprint (semver)",
2930
+ "example": "1.0.0"
2931
+ },
2932
+ "pre_install_requirements": {
2933
+ "$ref": "#/components/schemas/PreInstallRequirements"
2934
+ },
2935
+ "source_blueprint_file": {
2936
+ "type": "string",
2937
+ "deprecated": true,
2938
+ "description": "A URL to download the source blueprint file used to import the blueprint",
2939
+ "example": "https://blueprint-manifest-prod.s3.eu-central-1.amazonaws.com/manifest.zip"
2940
+ },
2941
+ "docs_link": {
2942
+ "type": "string",
2943
+ "description": "Link to the blueprint documentation",
2944
+ "example": "https://help.epilot.cloud"
2945
+ },
2946
+ "source_blueprint_file_ref": {
2947
+ "$ref": "#/components/schemas/S3Reference"
2948
+ },
2949
+ "install_status": {
2950
+ "$ref": "#/components/schemas/BlueprintInstallStatus"
2951
+ },
2952
+ "install_status_description": {
2953
+ "type": "string",
2954
+ "example": "This blueprint installation resulted in a partial deployment; some resources were created successfully, but failed to complete the full resource setup."
2955
+ },
2956
+ "is_verified": {
2957
+ "type": "boolean",
2958
+ "description": "Whether the manifest comes from a trusted source and is signed by epilot"
2959
+ },
2960
+ "created_by": {
2961
+ "$ref": "#/components/schemas/CallerIdentity"
2962
+ },
2963
+ "updated_by": {
2964
+ "$ref": "#/components/schemas/CallerIdentity"
2965
+ },
2966
+ "manifest_version": {
2967
+ "type": "string",
2968
+ "description": "Version of the manifest (semver)",
2969
+ "example": "1.0.0"
2970
+ },
2971
+ "selected_resources_url": {
2972
+ "type": "string",
2973
+ "description": "All the resources that were selected to be exported, used to pre-select the resources when updating a sandbox manifest",
2974
+ "example": "https://blueprint-manifest-prod.s3.eu-central-1.amazonaws.com/selected_resources.json"
2975
+ },
2976
+ "ready_imported_resources_url": {
2977
+ "type": "string",
2978
+ "description": "All the resources that were marked as ready by the user",
2979
+ "example": "https://blueprint-manifest-prod.s3.eu-central-1.amazonaws.com/ready_imported_resources.json"
2980
+ },
2981
+ "deployed_from": {
2982
+ "type": "object",
2983
+ "properties": {
2984
+ "source_organization_id": {
2985
+ "type": "string",
2986
+ "description": "ID of the organization that deployed the manifest"
2987
+ },
2988
+ "source_manifest_id": {
2989
+ "type": "string",
2990
+ "description": "ID of the manifest that was deployed"
2991
+ },
2992
+ "source_organization_type": {
2993
+ "type": "string",
2994
+ "enum": [
2995
+ "sandbox",
2996
+ "production"
2997
+ ]
2998
+ },
2999
+ "last_triggered_at": {
3000
+ "type": "string",
3001
+ "format": "date-time",
3002
+ "description": "When the deployment was last triggered"
3003
+ }
3004
+ },
3005
+ "description": "Information about the manifest that was deployed from, used to update existing deployments instead of always creating new ones"
3006
+ },
3007
+ "deployed_to": {
3008
+ "type": "array",
3009
+ "items": {
3010
+ "type": "object",
3011
+ "properties": {
3012
+ "destination_organization_id": {
3013
+ "type": "string",
3014
+ "description": "ID of the organization that the manifest was deployed to"
3015
+ },
3016
+ "destination_manifest_id": {
3017
+ "type": "string",
3018
+ "description": "ID of the manifest that was deployed to"
3019
+ },
3020
+ "destination_organization_type": {
3021
+ "type": "string",
3022
+ "enum": [
3023
+ "sandbox",
3024
+ "production"
3025
+ ]
3026
+ },
3027
+ "last_triggered_at": {
3028
+ "type": "string",
3029
+ "format": "date-time",
3030
+ "description": "When the deployment was last triggered"
3031
+ }
3032
+ }
3033
+ },
3034
+ "description": "Information about the manifest that was deployed to, used to update existing deployments instead of always creating new ones"
3035
+ }
3036
+ }
3037
+ },
3038
+ "ManifestTimestampFields": {
3039
+ "type": "object",
3040
+ "properties": {
3041
+ "created_at": {
3042
+ "description": "When the manifest was first installed (applied)",
3043
+ "type": "string",
3044
+ "format": "date-time"
3045
+ },
3046
+ "updated_at": {
3047
+ "description": "When the manifest was last updated (applied)",
3048
+ "type": "string",
3049
+ "format": "date-time"
3050
+ }
3051
+ }
3052
+ },
3053
+ "CommonImportFields": {
3054
+ "type": "object",
3055
+ "properties": {
3056
+ "source_type": {
3057
+ "$ref": "#/components/schemas/ManifestSource"
3058
+ },
3059
+ "imported_resources": {
3060
+ "description": "An array of tree-like JSON objects or a singular tree-like JSON object representing the resources to import",
3061
+ "oneOf": [
3062
+ {
3063
+ "type": "array",
3064
+ "items": {
3065
+ "$ref": "#/components/schemas/RootResourceNode"
3066
+ }
3067
+ },
3068
+ {
3069
+ "$ref": "#/components/schemas/RootResourceNode"
3070
+ }
3071
+ ]
3072
+ },
3073
+ "large_imported_resources_url": {
3074
+ "type": "string",
3075
+ "format": "uri",
3076
+ "description": "An URL to download the imported resources when the resources are too large to be included in the response",
3077
+ "example": "https://blueprint-manifest-prod.s3.eu-central-1.amazonaws.com/large.json"
3078
+ }
3079
+ }
3080
+ },
3081
+ "CommonMarkdownFields": {
3082
+ "type": "object",
3083
+ "properties": {
3084
+ "markdown": {
3085
+ "type": "object",
3086
+ "description": "Markdown content part of a manifest file",
3087
+ "properties": {
3088
+ "manifest": {
3089
+ "type": "string",
3090
+ "description": "Markdown content shown before installing the manifest",
3091
+ "example": "This is the content of the manifest.md file which contains the manifest descripton.\n"
3092
+ },
3093
+ "preinstall": {
3094
+ "type": "string",
3095
+ "deprecated": true,
3096
+ "description": "Markdown content to be displayed when showing the plan to install blueprint",
3097
+ "example": "This is the content of the preinstall.md file\n"
3098
+ },
3099
+ "postinstall": {
3100
+ "type": "string",
3101
+ "description": "Markdown content to be displayed when showing the plan to install blueprint",
3102
+ "example": "This is the content of the postinstall.md file\n"
3103
+ }
3104
+ }
3105
+ }
3106
+ }
3107
+ },
3108
+ "PreInstallRequirements": {
3109
+ "type": "array",
3110
+ "items": {
3111
+ "type": "string"
3112
+ },
3113
+ "description": "List of feature settings that must be enabled before installing the blueprint",
3114
+ "example": [
3115
+ "journey_automation",
3116
+ "ticket-entities",
3117
+ "advanced_permissions"
3118
+ ]
3119
+ },
3120
+ "BlueprintInstallStatus": {
3121
+ "type": "string",
3122
+ "enum": [
3123
+ "SUCCESS",
3124
+ "PARTIAL",
3125
+ "FAILED"
3126
+ ]
3127
+ },
3128
+ "FormattedErrorCodes": {
3129
+ "type": "string",
3130
+ "enum": [
3131
+ "dependency_extraction",
3132
+ "resource_not_found",
3133
+ "resource_fetch_api_error",
3134
+ "resource_fetch_unknown_error",
3135
+ "terraform_cli_process_error",
3136
+ "terraform_import_block_process_error",
3137
+ "terraform_init_error",
3138
+ "terraform_validate_error",
3139
+ "terraform_plan_error",
3140
+ "terraform_apply_error",
3141
+ "terraform_show_error",
3142
+ "generic_error",
3143
+ "bad_request",
3144
+ "forbidden",
3145
+ "conflict",
3146
+ "not_found",
3147
+ "undeclared_resource",
3148
+ "invalid_readonly_attribute",
3149
+ "invalid_attribute_value",
3150
+ "unsupported_attribute",
3151
+ "self_referential_block",
3152
+ "circular_dependency",
3153
+ "state_mismatch",
3154
+ "import_nonexistent_object",
3155
+ "provider_install_error",
3156
+ "stale_blueprint"
3157
+ ]
3158
+ },
3159
+ "FormattedErrorData": {
3160
+ "type": "object",
3161
+ "properties": {
3162
+ "id": {
3163
+ "type": "string"
3164
+ },
3165
+ "name": {
3166
+ "type": "string"
3167
+ },
3168
+ "type": {
3169
+ "type": "string"
3170
+ }
3171
+ }
3172
+ },
3173
+ "FormattedError": {
3174
+ "type": "object",
3175
+ "properties": {
3176
+ "error": {
3177
+ "anyOf": [
3178
+ {
3179
+ "type": "string"
3180
+ },
3181
+ {
3182
+ "type": "object"
3183
+ }
3184
+ ]
3185
+ },
3186
+ "code": {
3187
+ "$ref": "#/components/schemas/FormattedErrorCodes"
3188
+ },
3189
+ "data": {
3190
+ "type": "object",
3191
+ "properties": {
3192
+ "formattedResource": {
3193
+ "$ref": "#/components/schemas/FormattedErrorData"
3194
+ },
3195
+ "resource": {
3196
+ "type": "string"
3197
+ },
3198
+ "resourceDependency": {
3199
+ "type": "string"
3200
+ },
3201
+ "resources": {
3202
+ "type": "array",
3203
+ "items": {
3204
+ "type": "string"
3205
+ }
3206
+ },
3207
+ "addresses": {
3208
+ "type": "array",
3209
+ "items": {
3210
+ "type": "string"
3211
+ }
3212
+ },
3213
+ "originalError": {
3214
+ "type": "string"
3215
+ }
3216
+ }
3217
+ }
3218
+ }
3219
+ },
3220
+ "CallerIdentity": {
3221
+ "type": "object",
3222
+ "properties": {
3223
+ "name": {
3224
+ "description": "a human readable name of the caller (e.g. user name, token name or email address)",
3225
+ "example": "manifest@epilot.cloud"
3226
+ },
3227
+ "org_id": {
3228
+ "description": "epilot organization id",
3229
+ "type": "string",
3230
+ "example": "911690"
3231
+ },
3232
+ "user_id": {
3233
+ "description": "epilot user id, when called by a user",
3234
+ "type": "string",
3235
+ "example": "11001045"
3236
+ },
3237
+ "token_id": {
3238
+ "description": "token id, when called by API token",
3239
+ "type": "string",
3240
+ "example": "api_5ZugdRXasLfWBypHi93Fk"
3241
+ }
3242
+ },
3243
+ "required": [
3244
+ "org_id"
3245
+ ]
3246
+ },
3247
+ "SelectedResources": {
3248
+ "type": "object",
3249
+ "properties": {
3250
+ "exported_root_resources": {
3251
+ "type": "array",
3252
+ "items": {
3253
+ "type": "object",
3254
+ "properties": {
3255
+ "id": {
3256
+ "type": "string"
3257
+ },
3258
+ "type": {
3259
+ "$ref": "#/components/schemas/ResourceNodeType"
3260
+ },
3261
+ "address": {
3262
+ "type": "string",
3263
+ "description": "Terraform address of the resource"
3264
+ }
3265
+ },
3266
+ "required": [
3267
+ "id",
3268
+ "type"
3269
+ ]
3270
+ }
3271
+ },
3272
+ "selected_resources": {
3273
+ "type": "array",
3274
+ "items": {
3275
+ "type": "string"
3276
+ }
3277
+ },
3278
+ "pipeline_id": {
3279
+ "type": "string",
3280
+ "description": "Pipeline ID selected when doing the sandbox sync"
3281
+ }
3282
+ },
3283
+ "required": [
3284
+ "exported_root_resources",
3285
+ "selected_resources"
3286
+ ]
3287
+ },
3288
+ "ResourceReplacement": {
3289
+ "type": "object",
3290
+ "properties": {
3291
+ "originalAddress": {
3292
+ "type": "string",
3293
+ "description": "Original resource ID to be replaced"
3294
+ },
3295
+ "replacementId": {
3296
+ "type": "string",
3297
+ "description": "ID of the resource that will replace the original"
3298
+ },
3299
+ "replacementName": {
3300
+ "type": "string",
3301
+ "description": "Name of the resource that will replace the original"
3302
+ }
3303
+ },
3304
+ "required": [
3305
+ "originalAddress",
3306
+ "replacementId"
3307
+ ]
3308
+ },
3309
+ "PutManifestPayload": {
3310
+ "type": "object",
3311
+ "properties": {
3312
+ "source_blueprint_name": {
3313
+ "type": "string",
3314
+ "description": "Name of the source blueprint"
3315
+ },
3316
+ "markdown": {
3317
+ "type": "string",
3318
+ "description": "Markdown content of the manifest"
3319
+ },
3320
+ "ready_resources": {
3321
+ "type": "array",
3322
+ "items": {
3323
+ "type": "string"
3324
+ },
3325
+ "description": "Array of ids of resources selected to be ready by the user"
3326
+ },
3327
+ "deployed_to": {
3328
+ "type": "array",
3329
+ "items": {
3330
+ "type": "object",
3331
+ "properties": {
3332
+ "destination_organization_id": {
3333
+ "type": "string",
3334
+ "description": "ID of the organization that the manifest was deployed to"
3335
+ },
3336
+ "destination_manifest_id": {
3337
+ "type": "string",
3338
+ "description": "ID of the manifest that was deployed to"
3339
+ },
3340
+ "destination_organization_type": {
3341
+ "type": "string",
3342
+ "enum": [
3343
+ "sandbox",
3344
+ "production"
3345
+ ]
3346
+ },
3347
+ "last_triggered_at": {
3348
+ "type": "string"
3349
+ }
3350
+ }
3351
+ }
3352
+ }
3353
+ }
3354
+ }
3355
+ },
3356
+ "parameters": {
3357
+ "JobID": {
3358
+ "name": "job_id",
3359
+ "in": "path",
3360
+ "required": true,
3361
+ "description": "ID of an import or export job",
3362
+ "schema": {
3363
+ "$ref": "#/components/schemas/JobID"
3364
+ }
3365
+ }
3366
+ },
3367
+ "securitySchemes": {
3368
+ "EpilotAuth": {
3369
+ "type": "http",
3370
+ "scheme": "bearer",
3371
+ "description": "Authorization header with epilot OAuth2 bearer token",
3372
+ "bearerFormat": "JWT"
3373
+ }
3374
+ }
3375
+ }
3376
+ }