@salesforce/b2c-tooling-sdk 1.8.0 → 1.10.0

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 (226) hide show
  1. package/dist/cjs/auth/index.d.ts +3 -0
  2. package/dist/cjs/auth/index.js +2 -0
  3. package/dist/cjs/auth/index.js.map +1 -1
  4. package/dist/cjs/auth/jwt-utils.d.ts +25 -0
  5. package/dist/cjs/auth/jwt-utils.js +66 -0
  6. package/dist/cjs/auth/jwt-utils.js.map +1 -0
  7. package/dist/cjs/auth/oauth-implicit.js +4 -1
  8. package/dist/cjs/auth/oauth-implicit.js.map +1 -1
  9. package/dist/cjs/auth/oauth-jwt.d.ts +99 -0
  10. package/dist/cjs/auth/oauth-jwt.js +343 -0
  11. package/dist/cjs/auth/oauth-jwt.js.map +1 -0
  12. package/dist/cjs/auth/oauth.d.ts +42 -3
  13. package/dist/cjs/auth/oauth.js +90 -35
  14. package/dist/cjs/auth/oauth.js.map +1 -1
  15. package/dist/cjs/auth/stateful-oauth-strategy.js +3 -9
  16. package/dist/cjs/auth/stateful-oauth-strategy.js.map +1 -1
  17. package/dist/cjs/auth/stateful-store.js +33 -35
  18. package/dist/cjs/auth/stateful-store.js.map +1 -1
  19. package/dist/cjs/auth/types.d.ts +2 -1
  20. package/dist/cjs/auth/types.js +1 -1
  21. package/dist/cjs/auth/types.js.map +1 -1
  22. package/dist/cjs/cli/am-command.d.ts +1 -1
  23. package/dist/cjs/cli/am-command.js +3 -0
  24. package/dist/cjs/cli/am-command.js.map +1 -1
  25. package/dist/cjs/cli/base-command.js +4 -2
  26. package/dist/cjs/cli/base-command.js.map +1 -1
  27. package/dist/cjs/cli/columns.d.ts +128 -0
  28. package/dist/cjs/cli/columns.js +128 -0
  29. package/dist/cjs/cli/columns.js.map +1 -0
  30. package/dist/cjs/cli/config.js +4 -0
  31. package/dist/cjs/cli/config.js.map +1 -1
  32. package/dist/cjs/cli/details.d.ts +69 -0
  33. package/dist/cjs/cli/details.js +72 -0
  34. package/dist/cjs/cli/details.js.map +1 -0
  35. package/dist/cjs/cli/index.d.ts +4 -0
  36. package/dist/cjs/cli/index.js +2 -0
  37. package/dist/cjs/cli/index.js.map +1 -1
  38. package/dist/cjs/cli/instance-command.d.ts +3 -0
  39. package/dist/cjs/cli/oauth-command.d.ts +14 -2
  40. package/dist/cjs/cli/oauth-command.js +54 -3
  41. package/dist/cjs/cli/oauth-command.js.map +1 -1
  42. package/dist/cjs/cli/ods-command.d.ts +3 -0
  43. package/dist/cjs/cli/webdav-command.d.ts +3 -0
  44. package/dist/cjs/clients/cdn-zones.js +5 -2
  45. package/dist/cjs/clients/cdn-zones.js.map +1 -1
  46. package/dist/cjs/clients/cip.js +2 -1
  47. package/dist/cjs/clients/cip.js.map +1 -1
  48. package/dist/cjs/clients/custom-apis.js +5 -2
  49. package/dist/cjs/clients/custom-apis.js.map +1 -1
  50. package/dist/cjs/clients/granular-replications.js +4 -1
  51. package/dist/cjs/clients/granular-replications.js.map +1 -1
  52. package/dist/cjs/clients/mrt.generated.d.ts +1073 -41
  53. package/dist/cjs/clients/scapi-schemas.js +5 -2
  54. package/dist/cjs/clients/scapi-schemas.js.map +1 -1
  55. package/dist/cjs/clients/webdav.js +11 -3
  56. package/dist/cjs/clients/webdav.js.map +1 -1
  57. package/dist/cjs/config/dw-json.d.ts +17 -2
  58. package/dist/cjs/config/dw-json.js +4 -7
  59. package/dist/cjs/config/dw-json.js.map +1 -1
  60. package/dist/cjs/config/index.d.ts +2 -2
  61. package/dist/cjs/config/index.js +1 -1
  62. package/dist/cjs/config/index.js.map +1 -1
  63. package/dist/cjs/config/mapping.d.ts +7 -1
  64. package/dist/cjs/config/mapping.js +32 -0
  65. package/dist/cjs/config/mapping.js.map +1 -1
  66. package/dist/cjs/config/sources/env-source.js +13 -1
  67. package/dist/cjs/config/sources/env-source.js.map +1 -1
  68. package/dist/cjs/config/sources/package-json-source.js +2 -0
  69. package/dist/cjs/config/sources/package-json-source.js.map +1 -1
  70. package/dist/cjs/config/types.d.ts +35 -2
  71. package/dist/cjs/index.d.ts +2 -2
  72. package/dist/cjs/index.js +1 -1
  73. package/dist/cjs/index.js.map +1 -1
  74. package/dist/cjs/operations/bm-users/index.d.ts +50 -0
  75. package/dist/cjs/operations/bm-users/index.js +55 -0
  76. package/dist/cjs/operations/bm-users/index.js.map +1 -0
  77. package/dist/cjs/operations/bm-users/users.d.ts +189 -0
  78. package/dist/cjs/operations/bm-users/users.js +229 -0
  79. package/dist/cjs/operations/bm-users/users.js.map +1 -0
  80. package/dist/cjs/operations/code/deploy.js +19 -10
  81. package/dist/cjs/operations/code/deploy.js.map +1 -1
  82. package/dist/cjs/operations/code/download.js +50 -32
  83. package/dist/cjs/operations/code/download.js.map +1 -1
  84. package/dist/cjs/operations/debug/debug-session.js +23 -8
  85. package/dist/cjs/operations/debug/debug-session.js.map +1 -1
  86. package/dist/cjs/operations/debug/index.d.ts +3 -0
  87. package/dist/cjs/operations/debug/index.js +2 -0
  88. package/dist/cjs/operations/debug/index.js.map +1 -1
  89. package/dist/cjs/operations/debug/projections.d.ts +72 -0
  90. package/dist/cjs/operations/debug/projections.js +84 -0
  91. package/dist/cjs/operations/debug/projections.js.map +1 -0
  92. package/dist/cjs/operations/debug/resolve-path.d.ts +15 -0
  93. package/dist/cjs/operations/debug/resolve-path.js +52 -0
  94. package/dist/cjs/operations/debug/resolve-path.js.map +1 -0
  95. package/dist/cjs/operations/mrt/certificate.d.ts +60 -0
  96. package/dist/cjs/operations/mrt/certificate.js +76 -0
  97. package/dist/cjs/operations/mrt/certificate.js.map +1 -0
  98. package/dist/cjs/operations/mrt/env.d.ts +79 -0
  99. package/dist/cjs/operations/mrt/env.js +65 -3
  100. package/dist/cjs/operations/mrt/env.js.map +1 -1
  101. package/dist/cjs/operations/mrt/index.d.ts +8 -4
  102. package/dist/cjs/operations/mrt/index.js +6 -2
  103. package/dist/cjs/operations/mrt/index.js.map +1 -1
  104. package/dist/cjs/operations/mrt/organization-member.d.ts +68 -0
  105. package/dist/cjs/operations/mrt/organization-member.js +88 -0
  106. package/dist/cjs/operations/mrt/organization-member.js.map +1 -0
  107. package/dist/cjs/operations/mrt/push.d.ts +67 -0
  108. package/dist/cjs/operations/mrt/push.js +63 -0
  109. package/dist/cjs/operations/mrt/push.js.map +1 -1
  110. package/dist/cjs/ux/index.d.ts +1 -0
  111. package/dist/cjs/ux/index.js +7 -0
  112. package/dist/cjs/ux/index.js.map +1 -0
  113. package/dist/esm/auth/index.d.ts +3 -0
  114. package/dist/esm/auth/index.js +2 -0
  115. package/dist/esm/auth/index.js.map +1 -1
  116. package/dist/esm/auth/jwt-utils.d.ts +25 -0
  117. package/dist/esm/auth/jwt-utils.js +66 -0
  118. package/dist/esm/auth/jwt-utils.js.map +1 -0
  119. package/dist/esm/auth/oauth-implicit.js +4 -1
  120. package/dist/esm/auth/oauth-implicit.js.map +1 -1
  121. package/dist/esm/auth/oauth-jwt.d.ts +99 -0
  122. package/dist/esm/auth/oauth-jwt.js +343 -0
  123. package/dist/esm/auth/oauth-jwt.js.map +1 -0
  124. package/dist/esm/auth/oauth.d.ts +42 -3
  125. package/dist/esm/auth/oauth.js +90 -35
  126. package/dist/esm/auth/oauth.js.map +1 -1
  127. package/dist/esm/auth/stateful-oauth-strategy.js +3 -9
  128. package/dist/esm/auth/stateful-oauth-strategy.js.map +1 -1
  129. package/dist/esm/auth/stateful-store.js +33 -35
  130. package/dist/esm/auth/stateful-store.js.map +1 -1
  131. package/dist/esm/auth/types.d.ts +2 -1
  132. package/dist/esm/auth/types.js +1 -1
  133. package/dist/esm/auth/types.js.map +1 -1
  134. package/dist/esm/cli/am-command.d.ts +1 -1
  135. package/dist/esm/cli/am-command.js +3 -0
  136. package/dist/esm/cli/am-command.js.map +1 -1
  137. package/dist/esm/cli/base-command.js +4 -2
  138. package/dist/esm/cli/base-command.js.map +1 -1
  139. package/dist/esm/cli/columns.d.ts +128 -0
  140. package/dist/esm/cli/columns.js +128 -0
  141. package/dist/esm/cli/columns.js.map +1 -0
  142. package/dist/esm/cli/config.js +4 -0
  143. package/dist/esm/cli/config.js.map +1 -1
  144. package/dist/esm/cli/details.d.ts +69 -0
  145. package/dist/esm/cli/details.js +72 -0
  146. package/dist/esm/cli/details.js.map +1 -0
  147. package/dist/esm/cli/index.d.ts +4 -0
  148. package/dist/esm/cli/index.js +2 -0
  149. package/dist/esm/cli/index.js.map +1 -1
  150. package/dist/esm/cli/instance-command.d.ts +3 -0
  151. package/dist/esm/cli/oauth-command.d.ts +14 -2
  152. package/dist/esm/cli/oauth-command.js +54 -3
  153. package/dist/esm/cli/oauth-command.js.map +1 -1
  154. package/dist/esm/cli/ods-command.d.ts +3 -0
  155. package/dist/esm/cli/webdav-command.d.ts +3 -0
  156. package/dist/esm/clients/cdn-zones.js +5 -2
  157. package/dist/esm/clients/cdn-zones.js.map +1 -1
  158. package/dist/esm/clients/cip.js +2 -1
  159. package/dist/esm/clients/cip.js.map +1 -1
  160. package/dist/esm/clients/custom-apis.js +5 -2
  161. package/dist/esm/clients/custom-apis.js.map +1 -1
  162. package/dist/esm/clients/granular-replications.js +4 -1
  163. package/dist/esm/clients/granular-replications.js.map +1 -1
  164. package/dist/esm/clients/mrt.generated.d.ts +1073 -41
  165. package/dist/esm/clients/scapi-schemas.js +5 -2
  166. package/dist/esm/clients/scapi-schemas.js.map +1 -1
  167. package/dist/esm/clients/webdav.js +11 -3
  168. package/dist/esm/clients/webdav.js.map +1 -1
  169. package/dist/esm/config/dw-json.d.ts +17 -2
  170. package/dist/esm/config/dw-json.js +4 -7
  171. package/dist/esm/config/dw-json.js.map +1 -1
  172. package/dist/esm/config/index.d.ts +2 -2
  173. package/dist/esm/config/index.js +1 -1
  174. package/dist/esm/config/index.js.map +1 -1
  175. package/dist/esm/config/mapping.d.ts +7 -1
  176. package/dist/esm/config/mapping.js +32 -0
  177. package/dist/esm/config/mapping.js.map +1 -1
  178. package/dist/esm/config/sources/env-source.js +13 -1
  179. package/dist/esm/config/sources/env-source.js.map +1 -1
  180. package/dist/esm/config/sources/package-json-source.js +2 -0
  181. package/dist/esm/config/sources/package-json-source.js.map +1 -1
  182. package/dist/esm/config/types.d.ts +35 -2
  183. package/dist/esm/index.d.ts +2 -2
  184. package/dist/esm/index.js +1 -1
  185. package/dist/esm/index.js.map +1 -1
  186. package/dist/esm/operations/bm-users/index.d.ts +50 -0
  187. package/dist/esm/operations/bm-users/index.js +55 -0
  188. package/dist/esm/operations/bm-users/index.js.map +1 -0
  189. package/dist/esm/operations/bm-users/users.d.ts +189 -0
  190. package/dist/esm/operations/bm-users/users.js +229 -0
  191. package/dist/esm/operations/bm-users/users.js.map +1 -0
  192. package/dist/esm/operations/code/deploy.js +19 -10
  193. package/dist/esm/operations/code/deploy.js.map +1 -1
  194. package/dist/esm/operations/code/download.js +50 -32
  195. package/dist/esm/operations/code/download.js.map +1 -1
  196. package/dist/esm/operations/debug/debug-session.js +23 -8
  197. package/dist/esm/operations/debug/debug-session.js.map +1 -1
  198. package/dist/esm/operations/debug/index.d.ts +3 -0
  199. package/dist/esm/operations/debug/index.js +2 -0
  200. package/dist/esm/operations/debug/index.js.map +1 -1
  201. package/dist/esm/operations/debug/projections.d.ts +72 -0
  202. package/dist/esm/operations/debug/projections.js +84 -0
  203. package/dist/esm/operations/debug/projections.js.map +1 -0
  204. package/dist/esm/operations/debug/resolve-path.d.ts +15 -0
  205. package/dist/esm/operations/debug/resolve-path.js +52 -0
  206. package/dist/esm/operations/debug/resolve-path.js.map +1 -0
  207. package/dist/esm/operations/mrt/certificate.d.ts +60 -0
  208. package/dist/esm/operations/mrt/certificate.js +76 -0
  209. package/dist/esm/operations/mrt/certificate.js.map +1 -0
  210. package/dist/esm/operations/mrt/env.d.ts +79 -0
  211. package/dist/esm/operations/mrt/env.js +65 -3
  212. package/dist/esm/operations/mrt/env.js.map +1 -1
  213. package/dist/esm/operations/mrt/index.d.ts +8 -4
  214. package/dist/esm/operations/mrt/index.js +6 -2
  215. package/dist/esm/operations/mrt/index.js.map +1 -1
  216. package/dist/esm/operations/mrt/organization-member.d.ts +68 -0
  217. package/dist/esm/operations/mrt/organization-member.js +88 -0
  218. package/dist/esm/operations/mrt/organization-member.js.map +1 -0
  219. package/dist/esm/operations/mrt/push.d.ts +67 -0
  220. package/dist/esm/operations/mrt/push.js +63 -0
  221. package/dist/esm/operations/mrt/push.js.map +1 -1
  222. package/dist/esm/ux/index.d.ts +1 -0
  223. package/dist/esm/ux/index.js +7 -0
  224. package/dist/esm/ux/index.js.map +1 -0
  225. package/package.json +22 -2
  226. package/specs/mrt-api-v1.json +2192 -48
@@ -60,6 +60,7 @@
60
60
  "name": "my org",
61
61
  "slug": "my-org",
62
62
  "has_mobify_tag_project": false,
63
+ "can_configure_ssr_architecture": false,
63
64
  "created_at": "2020-07-14T19:33:21.197800Z",
64
65
  "updated_at": "2020-07-21T17:02:38.745978Z",
65
66
  "permissions": {
@@ -80,6 +81,893 @@
80
81
  }
81
82
  }
82
83
  },
84
+ "/api/organizations/{organization_slug}/certificates/": {
85
+ "get": {
86
+ "operationId": "organizations_certificates_list",
87
+ "description": "List certificates for an organization with filtering and search",
88
+ "parameters": [
89
+ {
90
+ "in": "query",
91
+ "name": "custom_only",
92
+ "schema": {
93
+ "type": "boolean"
94
+ },
95
+ "description": "If true, returns only custom domain certificates created by the customer."
96
+ },
97
+ {
98
+ "name": "limit",
99
+ "required": false,
100
+ "in": "query",
101
+ "description": "Number of results to return per page.",
102
+ "schema": {
103
+ "type": "integer"
104
+ }
105
+ },
106
+ {
107
+ "name": "offset",
108
+ "required": false,
109
+ "in": "query",
110
+ "description": "The initial index from which to return the results.",
111
+ "schema": {
112
+ "type": "integer"
113
+ }
114
+ },
115
+ {
116
+ "name": "ordering",
117
+ "required": false,
118
+ "in": "query",
119
+ "description": "Which field to use when ordering the results.",
120
+ "schema": {
121
+ "type": "string"
122
+ }
123
+ },
124
+ {
125
+ "in": "path",
126
+ "name": "organization_slug",
127
+ "schema": {
128
+ "type": "string"
129
+ },
130
+ "description": "The organization identifier.",
131
+ "required": true
132
+ },
133
+ {
134
+ "name": "search",
135
+ "required": false,
136
+ "in": "query",
137
+ "description": "A search term.",
138
+ "schema": {
139
+ "type": "string"
140
+ }
141
+ }
142
+ ],
143
+ "tags": [
144
+ "organizations"
145
+ ],
146
+ "security": [
147
+ {
148
+ "Basic": []
149
+ },
150
+ {
151
+ "BearerToken": []
152
+ }
153
+ ],
154
+ "responses": {
155
+ "200": {
156
+ "content": {
157
+ "application/json": {
158
+ "schema": {
159
+ "$ref": "#/components/schemas/PaginatedCertificateListCreateList"
160
+ },
161
+ "examples": {
162
+ "ListCertificates": {
163
+ "value": {
164
+ "count": 123,
165
+ "next": "http://api.example.org/accounts/?offset=400&limit=100",
166
+ "previous": "http://api.example.org/accounts/?offset=200&limit=100",
167
+ "results": [
168
+ {
169
+ "count": 2,
170
+ "next": null,
171
+ "previous": null,
172
+ "results": [
173
+ {
174
+ "id": "123e4567-e89b-12d3-a456-426614174000",
175
+ "domain_name": "*.example.com",
176
+ "validation_status": "PENDING_VALIDATION",
177
+ "validation_record": {
178
+ "name": "_acme-challenge.example.com",
179
+ "value": "validation123.example.com"
180
+ },
181
+ "aws_arns": [
182
+ "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012"
183
+ ],
184
+ "created_at": "2023-10-28T10:00:00Z",
185
+ "updated_at": "2023-10-28T10:00:00Z",
186
+ "validation_requested_at": "2023-10-28T10:00:00Z",
187
+ "validation_requested_by": "user@example.com",
188
+ "expires_at": "2024-10-28T10:00:00Z",
189
+ "targets": [],
190
+ "created_by": "user@example.com"
191
+ }
192
+ ],
193
+ "limits": {
194
+ "max_certificates": {
195
+ "limit": 10,
196
+ "used": 2
197
+ }
198
+ },
199
+ "customer_action_needed": true
200
+ }
201
+ ]
202
+ },
203
+ "summary": "List certificates"
204
+ }
205
+ }
206
+ }
207
+ },
208
+ "description": ""
209
+ }
210
+ }
211
+ },
212
+ "post": {
213
+ "operationId": "organizations_certificates_create",
214
+ "description": "Create a new certificate for an organization",
215
+ "parameters": [
216
+ {
217
+ "in": "path",
218
+ "name": "organization_slug",
219
+ "schema": {
220
+ "type": "string"
221
+ },
222
+ "description": "The organization identifier.",
223
+ "required": true
224
+ }
225
+ ],
226
+ "tags": [
227
+ "organizations"
228
+ ],
229
+ "requestBody": {
230
+ "content": {
231
+ "application/json": {
232
+ "schema": {
233
+ "$ref": "#/components/schemas/CertificateListCreate"
234
+ },
235
+ "examples": {
236
+ "CreateCertificateRequest": {
237
+ "value": {
238
+ "domain_name": "*.example.com"
239
+ },
240
+ "summary": "Create certificate request"
241
+ }
242
+ }
243
+ },
244
+ "application/x-www-form-urlencoded": {
245
+ "schema": {
246
+ "$ref": "#/components/schemas/CertificateListCreate"
247
+ }
248
+ },
249
+ "multipart/form-data": {
250
+ "schema": {
251
+ "$ref": "#/components/schemas/CertificateListCreate"
252
+ }
253
+ }
254
+ },
255
+ "required": true
256
+ },
257
+ "security": [
258
+ {
259
+ "Basic": []
260
+ },
261
+ {
262
+ "BearerToken": []
263
+ }
264
+ ],
265
+ "responses": {
266
+ "201": {
267
+ "content": {
268
+ "application/json": {
269
+ "schema": {
270
+ "$ref": "#/components/schemas/CertificateListCreate"
271
+ },
272
+ "examples": {
273
+ "CreateCertificateResponse": {
274
+ "value": {
275
+ "id": "123e4567-e89b-12d3-a456-426614174000",
276
+ "domain_name": "*.example.com",
277
+ "validation_status": "PENDING_VALIDATION",
278
+ "validation_record": {
279
+ "name": "_acme-challenge.example.com",
280
+ "value": "validation123.example.com"
281
+ },
282
+ "aws_arns": [
283
+ "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012"
284
+ ],
285
+ "created_at": "2023-10-28T10:00:00Z",
286
+ "updated_at": "2023-10-28T10:00:00Z",
287
+ "validation_requested_at": "2023-10-28T10:00:00Z",
288
+ "validation_requested_by": "user@example.com",
289
+ "targets": []
290
+ },
291
+ "summary": "Create certificate response"
292
+ }
293
+ }
294
+ }
295
+ },
296
+ "description": ""
297
+ }
298
+ }
299
+ }
300
+ },
301
+ "/api/organizations/{organization_slug}/certificates/{cert_id}/": {
302
+ "get": {
303
+ "operationId": "organizations_certificates_retrieve",
304
+ "description": "Retrieve a specific certificate for an organization",
305
+ "parameters": [
306
+ {
307
+ "in": "path",
308
+ "name": "cert_id",
309
+ "schema": {
310
+ "type": "string"
311
+ },
312
+ "description": "The certificate's id",
313
+ "required": true
314
+ },
315
+ {
316
+ "in": "path",
317
+ "name": "organization_slug",
318
+ "schema": {
319
+ "type": "string"
320
+ },
321
+ "description": "The organization identifier.",
322
+ "required": true
323
+ }
324
+ ],
325
+ "tags": [
326
+ "organizations"
327
+ ],
328
+ "security": [
329
+ {
330
+ "Basic": []
331
+ },
332
+ {
333
+ "BearerToken": []
334
+ }
335
+ ],
336
+ "responses": {
337
+ "200": {
338
+ "content": {
339
+ "application/json": {
340
+ "schema": {
341
+ "$ref": "#/components/schemas/CertificateBase"
342
+ },
343
+ "examples": {
344
+ "GetCertificateResponse": {
345
+ "value": {
346
+ "id": "123e4567-e89b-12d3-a456-426614174000",
347
+ "domain_name": "*.example.com",
348
+ "validation_status": "PENDING_VALIDATION",
349
+ "validation_record": {
350
+ "name": "_acme-challenge.example.com",
351
+ "value": "validation123.example.com"
352
+ },
353
+ "aws_arns": [
354
+ "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012"
355
+ ],
356
+ "created_at": "2023-10-28T10:00:00Z",
357
+ "updated_at": "2023-10-28T10:00:00Z",
358
+ "validation_requested_at": "2023-10-28T10:00:00Z",
359
+ "validation_requested_by": "user@example.com",
360
+ "targets": []
361
+ },
362
+ "summary": "Get certificate response"
363
+ }
364
+ }
365
+ }
366
+ },
367
+ "description": ""
368
+ }
369
+ }
370
+ },
371
+ "delete": {
372
+ "operationId": "organizations_certificates_destroy",
373
+ "description": "Delete a specific certificate for an organization",
374
+ "parameters": [
375
+ {
376
+ "in": "path",
377
+ "name": "cert_id",
378
+ "schema": {
379
+ "type": "string"
380
+ },
381
+ "description": "The certificate's id",
382
+ "required": true
383
+ },
384
+ {
385
+ "in": "path",
386
+ "name": "organization_slug",
387
+ "schema": {
388
+ "type": "string"
389
+ },
390
+ "description": "The organization identifier.",
391
+ "required": true
392
+ }
393
+ ],
394
+ "tags": [
395
+ "organizations"
396
+ ],
397
+ "security": [
398
+ {
399
+ "Basic": []
400
+ },
401
+ {
402
+ "BearerToken": []
403
+ }
404
+ ],
405
+ "responses": {
406
+ "204": {
407
+ "description": "No response body"
408
+ }
409
+ }
410
+ }
411
+ },
412
+ "/api/organizations/{organization_slug}/certificates/{cert_id}/restart-validation/": {
413
+ "put": {
414
+ "operationId": "organizations_certificates_restart_validation_update",
415
+ "description": "Restart validation for a certificate. Creates a new certificate in AWS and updates the existing certificate record. Only works for certificates that are not yet validated.",
416
+ "parameters": [
417
+ {
418
+ "in": "path",
419
+ "name": "cert_id",
420
+ "schema": {
421
+ "type": "string"
422
+ },
423
+ "description": "Certificate ID",
424
+ "required": true
425
+ },
426
+ {
427
+ "in": "path",
428
+ "name": "organization_slug",
429
+ "schema": {
430
+ "type": "string"
431
+ },
432
+ "description": "The organization identifier.",
433
+ "required": true
434
+ }
435
+ ],
436
+ "tags": [
437
+ "organizations"
438
+ ],
439
+ "requestBody": {
440
+ "content": {
441
+ "application/json": {
442
+ "schema": {
443
+ "$ref": "#/components/schemas/CertificateBase"
444
+ }
445
+ },
446
+ "application/x-www-form-urlencoded": {
447
+ "schema": {
448
+ "$ref": "#/components/schemas/CertificateBase"
449
+ }
450
+ },
451
+ "multipart/form-data": {
452
+ "schema": {
453
+ "$ref": "#/components/schemas/CertificateBase"
454
+ }
455
+ }
456
+ },
457
+ "required": true
458
+ },
459
+ "security": [
460
+ {
461
+ "Basic": []
462
+ },
463
+ {
464
+ "BearerToken": []
465
+ }
466
+ ],
467
+ "responses": {
468
+ "200": {
469
+ "content": {
470
+ "application/json": {
471
+ "schema": {
472
+ "$ref": "#/components/schemas/CertificateBase"
473
+ },
474
+ "examples": {
475
+ "ResponseExample1": {
476
+ "value": {
477
+ "id": "uuid",
478
+ "domain_name": "shop.example.com",
479
+ "validation_status": "pending_validation",
480
+ "validation_record": {
481
+ "name": "_abc.shop.example.com",
482
+ "value": "_xyz.acm-validations.aws"
483
+ },
484
+ "validation_requested_at": "2025-10-16T12:00:00Z",
485
+ "deletion_status": "ACTIVE"
486
+ }
487
+ }
488
+ }
489
+ }
490
+ },
491
+ "description": "Certificate validation restarted successfully"
492
+ },
493
+ "400": {
494
+ "description": "Certificate is already validated or cannot be restarted"
495
+ }
496
+ }
497
+ },
498
+ "patch": {
499
+ "operationId": "organizations_certificates_restart_validation_partial_update",
500
+ "description": "Restart validation for a specific certificate for an organization.",
501
+ "parameters": [
502
+ {
503
+ "in": "path",
504
+ "name": "cert_id",
505
+ "schema": {
506
+ "type": "string",
507
+ "pattern": "^[\\w-]+$"
508
+ },
509
+ "required": true
510
+ },
511
+ {
512
+ "in": "path",
513
+ "name": "organization_slug",
514
+ "schema": {
515
+ "type": "string",
516
+ "pattern": "^[\\w-]+$"
517
+ },
518
+ "required": true
519
+ }
520
+ ],
521
+ "tags": [
522
+ "organizations"
523
+ ],
524
+ "requestBody": {
525
+ "content": {
526
+ "application/json": {
527
+ "schema": {
528
+ "$ref": "#/components/schemas/PatchedCertificateBase"
529
+ }
530
+ },
531
+ "application/x-www-form-urlencoded": {
532
+ "schema": {
533
+ "$ref": "#/components/schemas/PatchedCertificateBase"
534
+ }
535
+ },
536
+ "multipart/form-data": {
537
+ "schema": {
538
+ "$ref": "#/components/schemas/PatchedCertificateBase"
539
+ }
540
+ }
541
+ }
542
+ },
543
+ "security": [
544
+ {
545
+ "Basic": []
546
+ },
547
+ {
548
+ "BearerToken": []
549
+ }
550
+ ],
551
+ "responses": {
552
+ "200": {
553
+ "content": {
554
+ "application/json": {
555
+ "schema": {
556
+ "$ref": "#/components/schemas/CertificateBase"
557
+ }
558
+ }
559
+ },
560
+ "description": ""
561
+ }
562
+ }
563
+ }
564
+ },
565
+ "/api/organizations/{organization_slug}/members/": {
566
+ "get": {
567
+ "operationId": "list_organization_members",
568
+ "description": "List all the members of an organization.",
569
+ "parameters": [
570
+ {
571
+ "name": "limit",
572
+ "required": false,
573
+ "in": "query",
574
+ "description": "Number of results to return per page.",
575
+ "schema": {
576
+ "type": "integer"
577
+ }
578
+ },
579
+ {
580
+ "name": "offset",
581
+ "required": false,
582
+ "in": "query",
583
+ "description": "The initial index from which to return the results.",
584
+ "schema": {
585
+ "type": "integer"
586
+ }
587
+ },
588
+ {
589
+ "name": "ordering",
590
+ "required": false,
591
+ "in": "query",
592
+ "description": "Which field to use when ordering the results.",
593
+ "schema": {
594
+ "type": "string"
595
+ }
596
+ },
597
+ {
598
+ "in": "path",
599
+ "name": "organization_slug",
600
+ "schema": {
601
+ "type": "string"
602
+ },
603
+ "description": "The organization identifier.",
604
+ "required": true
605
+ },
606
+ {
607
+ "name": "search",
608
+ "required": false,
609
+ "in": "query",
610
+ "description": "A search term.",
611
+ "schema": {
612
+ "type": "string"
613
+ }
614
+ }
615
+ ],
616
+ "tags": [
617
+ "organizations"
618
+ ],
619
+ "security": [
620
+ {
621
+ "Basic": []
622
+ },
623
+ {
624
+ "BearerToken": []
625
+ }
626
+ ],
627
+ "responses": {
628
+ "200": {
629
+ "content": {
630
+ "application/json": {
631
+ "schema": {
632
+ "$ref": "#/components/schemas/PaginatedAPIOrganizationMemberList"
633
+ },
634
+ "examples": {
635
+ "ResponseExample1": {
636
+ "value": {
637
+ "count": 123,
638
+ "next": "http://api.example.org/accounts/?offset=400&limit=100",
639
+ "previous": "http://api.example.org/accounts/?offset=200&limit=100",
640
+ "results": [
641
+ [
642
+ {
643
+ "user": "user1@example.com",
644
+ "role": {
645
+ "name": "Owner",
646
+ "value": 0
647
+ },
648
+ "first_name": "John",
649
+ "last_name": "Doe",
650
+ "can_view_all_projects": true,
651
+ "custom_domain_cert_permission": {
652
+ "name": "Manage",
653
+ "value": 0
654
+ }
655
+ },
656
+ {
657
+ "user": "user2@example.com",
658
+ "role": {
659
+ "name": "Member",
660
+ "value": 1
661
+ },
662
+ "first_name": "Jane",
663
+ "last_name": "Smith",
664
+ "can_view_all_projects": false,
665
+ "custom_domain_cert_permission": {
666
+ "name": "View Only",
667
+ "value": 1
668
+ }
669
+ }
670
+ ]
671
+ ]
672
+ }
673
+ }
674
+ }
675
+ }
676
+ },
677
+ "description": ""
678
+ }
679
+ }
680
+ },
681
+ "post": {
682
+ "operationId": "organizations_members_create",
683
+ "description": "Add a new member to an organization.",
684
+ "parameters": [
685
+ {
686
+ "in": "path",
687
+ "name": "organization_slug",
688
+ "schema": {
689
+ "type": "string"
690
+ },
691
+ "description": "The organization identifier.",
692
+ "required": true
693
+ }
694
+ ],
695
+ "tags": [
696
+ "organizations"
697
+ ],
698
+ "requestBody": {
699
+ "content": {
700
+ "application/json": {
701
+ "schema": {
702
+ "$ref": "#/components/schemas/APIOrganizationMemberCreate"
703
+ },
704
+ "examples": {
705
+ "RequestExample1": {
706
+ "value": {
707
+ "user": "newuser@example.com",
708
+ "role": 1,
709
+ "can_view_all_projects": false,
710
+ "custom_domain_cert_permission": 2
711
+ }
712
+ }
713
+ }
714
+ },
715
+ "application/x-www-form-urlencoded": {
716
+ "schema": {
717
+ "$ref": "#/components/schemas/APIOrganizationMemberCreate"
718
+ }
719
+ },
720
+ "multipart/form-data": {
721
+ "schema": {
722
+ "$ref": "#/components/schemas/APIOrganizationMemberCreate"
723
+ }
724
+ }
725
+ },
726
+ "required": true
727
+ },
728
+ "security": [
729
+ {
730
+ "Basic": []
731
+ },
732
+ {
733
+ "BearerToken": []
734
+ }
735
+ ],
736
+ "responses": {
737
+ "201": {
738
+ "content": {
739
+ "application/json": {
740
+ "schema": {
741
+ "$ref": "#/components/schemas/APIOrganizationMemberCreate"
742
+ },
743
+ "examples": {
744
+ "ResponseExample1": {
745
+ "value": {
746
+ "user": "newuser@example.com",
747
+ "role": {
748
+ "name": "Member",
749
+ "value": 1
750
+ },
751
+ "first_name": "New",
752
+ "last_name": "User",
753
+ "can_view_all_projects": false,
754
+ "custom_domain_cert_permission": {
755
+ "name": "No Access",
756
+ "value": 2
757
+ }
758
+ }
759
+ }
760
+ }
761
+ }
762
+ },
763
+ "description": ""
764
+ }
765
+ }
766
+ }
767
+ },
768
+ "/api/organizations/{organization_slug}/members/{email}/": {
769
+ "get": {
770
+ "operationId": "organizations_members_retrieve",
771
+ "description": "Read data about an organization member's permissions.",
772
+ "parameters": [
773
+ {
774
+ "in": "path",
775
+ "name": "email",
776
+ "schema": {
777
+ "type": "string"
778
+ },
779
+ "description": "The email address of the organization member.",
780
+ "required": true
781
+ },
782
+ {
783
+ "in": "path",
784
+ "name": "organization_slug",
785
+ "schema": {
786
+ "type": "string"
787
+ },
788
+ "description": "The organization identifier.",
789
+ "required": true
790
+ }
791
+ ],
792
+ "tags": [
793
+ "organizations"
794
+ ],
795
+ "security": [
796
+ {
797
+ "Basic": []
798
+ },
799
+ {
800
+ "BearerToken": []
801
+ }
802
+ ],
803
+ "responses": {
804
+ "200": {
805
+ "content": {
806
+ "application/json": {
807
+ "schema": {
808
+ "$ref": "#/components/schemas/APIOrganizationMember"
809
+ },
810
+ "examples": {
811
+ "ResponseExample1": {
812
+ "value": {
813
+ "user": "user@example.com",
814
+ "role": {
815
+ "name": "Owner",
816
+ "value": 0
817
+ },
818
+ "first_name": "John",
819
+ "last_name": "Doe",
820
+ "can_view_all_projects": true,
821
+ "custom_domain_cert_permission": {
822
+ "name": "Manage",
823
+ "value": 0
824
+ }
825
+ }
826
+ }
827
+ }
828
+ }
829
+ },
830
+ "description": ""
831
+ }
832
+ }
833
+ },
834
+ "patch": {
835
+ "operationId": "organizations_members_partial_update",
836
+ "description": "Update an organization member's permissions.",
837
+ "parameters": [
838
+ {
839
+ "in": "path",
840
+ "name": "email",
841
+ "schema": {
842
+ "type": "string"
843
+ },
844
+ "description": "The email address of the organization member.",
845
+ "required": true
846
+ },
847
+ {
848
+ "in": "path",
849
+ "name": "organization_slug",
850
+ "schema": {
851
+ "type": "string"
852
+ },
853
+ "description": "The organization identifier.",
854
+ "required": true
855
+ }
856
+ ],
857
+ "tags": [
858
+ "organizations"
859
+ ],
860
+ "requestBody": {
861
+ "content": {
862
+ "application/json": {
863
+ "schema": {
864
+ "$ref": "#/components/schemas/PatchedAPIOrganizationMemberUpdate"
865
+ },
866
+ "examples": {
867
+ "RequestExample1": {
868
+ "value": {
869
+ "role": {
870
+ "name": "Member",
871
+ "value": 1
872
+ },
873
+ "can_view_all_projects": false,
874
+ "custom_domain_cert_permission": 1
875
+ }
876
+ }
877
+ }
878
+ },
879
+ "application/x-www-form-urlencoded": {
880
+ "schema": {
881
+ "$ref": "#/components/schemas/PatchedAPIOrganizationMemberUpdate"
882
+ }
883
+ },
884
+ "multipart/form-data": {
885
+ "schema": {
886
+ "$ref": "#/components/schemas/PatchedAPIOrganizationMemberUpdate"
887
+ }
888
+ }
889
+ }
890
+ },
891
+ "security": [
892
+ {
893
+ "Basic": []
894
+ },
895
+ {
896
+ "BearerToken": []
897
+ }
898
+ ],
899
+ "responses": {
900
+ "200": {
901
+ "content": {
902
+ "application/json": {
903
+ "schema": {
904
+ "$ref": "#/components/schemas/APIOrganizationMemberUpdate"
905
+ },
906
+ "examples": {
907
+ "ResponseExample1": {
908
+ "value": {
909
+ "user": "user@example.com",
910
+ "role": {
911
+ "name": "Member",
912
+ "value": 1
913
+ },
914
+ "first_name": "John",
915
+ "last_name": "Doe",
916
+ "can_view_all_projects": false,
917
+ "custom_domain_cert_permission": {
918
+ "name": "View Only",
919
+ "value": 1
920
+ }
921
+ }
922
+ }
923
+ }
924
+ }
925
+ },
926
+ "description": ""
927
+ }
928
+ }
929
+ },
930
+ "delete": {
931
+ "operationId": "organizations_members_destroy",
932
+ "description": "Remove a member from an organization.",
933
+ "parameters": [
934
+ {
935
+ "in": "path",
936
+ "name": "email",
937
+ "schema": {
938
+ "type": "string"
939
+ },
940
+ "description": "The email address of the organization member.",
941
+ "required": true
942
+ },
943
+ {
944
+ "in": "path",
945
+ "name": "organization_slug",
946
+ "schema": {
947
+ "type": "string"
948
+ },
949
+ "description": "The organization identifier.",
950
+ "required": true
951
+ }
952
+ ],
953
+ "tags": [
954
+ "organizations"
955
+ ],
956
+ "security": [
957
+ {
958
+ "Basic": []
959
+ },
960
+ {
961
+ "BearerToken": []
962
+ }
963
+ ],
964
+ "responses": {
965
+ "204": {
966
+ "description": "No response body"
967
+ }
968
+ }
969
+ }
970
+ },
83
971
  "/api/projects/": {
84
972
  "get": {
85
973
  "operationId": "projects_list",
@@ -163,7 +1051,8 @@
163
1051
  "create_jwt": true,
164
1052
  "upload_bundle": true,
165
1053
  "edit_environment_variable": true,
166
- "edit_access_control_header": true
1054
+ "edit_access_control_header": true,
1055
+ "edit_data_access_layer_entry": true
167
1056
  },
168
1057
  "deletion_status": "ACTIVE",
169
1058
  "created_at": "2025-07-24T07:30:22.288165Z",
@@ -256,7 +1145,8 @@
256
1145
  "create_jwt": true,
257
1146
  "upload_bundle": true,
258
1147
  "edit_environment_variable": true,
259
- "edit_access_control_header": true
1148
+ "edit_access_control_header": true,
1149
+ "edit_data_access_layer_entry": true
260
1150
  },
261
1151
  "deletion_status": "ACTIVE",
262
1152
  "created_at": "2025-07-24T07:30:22.288165Z",
@@ -331,7 +1221,8 @@
331
1221
  "create_jwt": true,
332
1222
  "upload_bundle": true,
333
1223
  "edit_environment_variable": true,
334
- "edit_access_control_header": true
1224
+ "edit_access_control_header": true,
1225
+ "edit_data_access_layer_entry": true
335
1226
  },
336
1227
  "deletion_status": "ACTIVE",
337
1228
  "created_at": "2025-07-24T07:30:22.288165Z",
@@ -432,7 +1323,8 @@
432
1323
  "create_jwt": true,
433
1324
  "upload_bundle": true,
434
1325
  "edit_environment_variable": true,
435
- "edit_access_control_header": true
1326
+ "edit_access_control_header": true,
1327
+ "edit_data_access_layer_entry": true
436
1328
  },
437
1329
  "deletion_status": "ACTIVE",
438
1330
  "created_at": "2025-07-24T07:30:22.288165Z",
@@ -648,6 +1540,15 @@
648
1540
  "type": "integer"
649
1541
  }
650
1542
  },
1543
+ {
1544
+ "name": "ordering",
1545
+ "required": false,
1546
+ "in": "query",
1547
+ "description": "Which field to use when ordering the results.",
1548
+ "schema": {
1549
+ "type": "string"
1550
+ }
1551
+ },
651
1552
  {
652
1553
  "in": "path",
653
1554
  "name": "project_slug",
@@ -703,7 +1604,12 @@
703
1604
  "is_uploaded": true,
704
1605
  "is_ssr_bundle": true,
705
1606
  "ssr_runtime": "12.x",
706
- "ssr_runtime_description": "NodeJS 12.x"
1607
+ "ssr_runtime_description": "NodeJS 12.x",
1608
+ "in_use": true,
1609
+ "in_use_by": [
1610
+ "production",
1611
+ "staging"
1612
+ ]
707
1613
  }
708
1614
  ]
709
1615
  }
@@ -725,7 +1631,9 @@
725
1631
  "is_uploaded": true,
726
1632
  "is_ssr_bundle": true,
727
1633
  "ssr_runtime": "10.x",
728
- "ssr_runtime_description": "NodeJS 10.x"
1634
+ "ssr_runtime_description": "NodeJS 10.x",
1635
+ "in_use": false,
1636
+ "in_use_by": []
729
1637
  }
730
1638
  ]
731
1639
  }
@@ -747,7 +1655,11 @@
747
1655
  "is_uploaded": true,
748
1656
  "is_ssr_bundle": true,
749
1657
  "ssr_runtime": "8.10",
750
- "ssr_runtime_description": "NodeJS 8.10"
1658
+ "ssr_runtime_description": "NodeJS 8.10",
1659
+ "in_use": true,
1660
+ "in_use_by": [
1661
+ "development"
1662
+ ]
751
1663
  }
752
1664
  ]
753
1665
  }
@@ -760,6 +1672,57 @@
760
1672
  }
761
1673
  }
762
1674
  },
1675
+ "/api/projects/{project_slug}/bundles/{bundle_id}/": {
1676
+ "delete": {
1677
+ "operationId": "projects_bundles_destroy",
1678
+ "description": "Request deletion of a bundle. The bundle will be asynchronously deleted. This operation can only be performed by project admins.",
1679
+ "parameters": [
1680
+ {
1681
+ "in": "path",
1682
+ "name": "bundle_id",
1683
+ "schema": {
1684
+ "type": "string"
1685
+ },
1686
+ "description": "The bundle's id",
1687
+ "required": true
1688
+ },
1689
+ {
1690
+ "in": "path",
1691
+ "name": "project_slug",
1692
+ "schema": {
1693
+ "type": "string"
1694
+ },
1695
+ "description": "The project identifier.",
1696
+ "required": true
1697
+ }
1698
+ ],
1699
+ "tags": [
1700
+ "projects"
1701
+ ],
1702
+ "security": [
1703
+ {
1704
+ "Basic": []
1705
+ },
1706
+ {
1707
+ "BearerToken": []
1708
+ }
1709
+ ],
1710
+ "responses": {
1711
+ "202": {
1712
+ "description": "Bundle deletion request accepted. The bundle will be asynchronously deleted."
1713
+ },
1714
+ "404": {
1715
+ "description": "Bundle not found."
1716
+ },
1717
+ "409": {
1718
+ "description": "Bundle cannot be deleted (in progress, in failed state)."
1719
+ },
1720
+ "403": {
1721
+ "description": "Bundle deployed to one or more target, cannot delete."
1722
+ }
1723
+ }
1724
+ }
1725
+ },
763
1726
  "/api/projects/{project_slug}/bundles/{bundle_id}/download/": {
764
1727
  "get": {
765
1728
  "operationId": "projects_bundles_download_retrieve",
@@ -816,6 +1779,158 @@
816
1779
  }
817
1780
  }
818
1781
  },
1782
+ "/api/projects/{project_slug}/bundles/bulk-delete/": {
1783
+ "post": {
1784
+ "operationId": "projects_bundles_bulk_delete_create",
1785
+ "description": "Request deletion for multiple bundles. Bundles are deleted asynchronously. Only project admins can perform this call. The response indicates which bundles were successfully queued for deletion and which failed validation.",
1786
+ "parameters": [
1787
+ {
1788
+ "in": "path",
1789
+ "name": "project_slug",
1790
+ "schema": {
1791
+ "type": "string"
1792
+ },
1793
+ "description": "The project identifier.",
1794
+ "required": true
1795
+ }
1796
+ ],
1797
+ "tags": [
1798
+ "projects"
1799
+ ],
1800
+ "requestBody": {
1801
+ "content": {
1802
+ "application/json": {
1803
+ "schema": {
1804
+ "$ref": "#/components/schemas/BundleBulkDelete"
1805
+ },
1806
+ "examples": {
1807
+ "RequestExample1": {
1808
+ "value": {
1809
+ "bundle_ids": [
1810
+ 1,
1811
+ 2,
1812
+ 3
1813
+ ]
1814
+ }
1815
+ }
1816
+ }
1817
+ },
1818
+ "application/x-www-form-urlencoded": {
1819
+ "schema": {
1820
+ "$ref": "#/components/schemas/BundleBulkDelete"
1821
+ }
1822
+ },
1823
+ "multipart/form-data": {
1824
+ "schema": {
1825
+ "$ref": "#/components/schemas/BundleBulkDelete"
1826
+ }
1827
+ }
1828
+ },
1829
+ "required": true
1830
+ },
1831
+ "security": [
1832
+ {
1833
+ "Basic": []
1834
+ },
1835
+ {
1836
+ "BearerToken": []
1837
+ }
1838
+ ],
1839
+ "responses": {
1840
+ "202": {
1841
+ "content": {
1842
+ "application/json": {
1843
+ "schema": {
1844
+ "$ref": "#/components/schemas/BundleBulkDeleteResponse"
1845
+ },
1846
+ "examples": {
1847
+ "ResponseExample1-AllSuccessful": {
1848
+ "value": {
1849
+ "bundles_queued_for_cleanup": [
1850
+ 1,
1851
+ 2,
1852
+ 3
1853
+ ]
1854
+ },
1855
+ "summary": "ResponseExample1 - All Successful"
1856
+ },
1857
+ "ResponseExample2-PartialSuccess": {
1858
+ "value": {
1859
+ "bundles_queued_for_cleanup": [
1860
+ 1,
1861
+ 3
1862
+ ],
1863
+ "rejected_bundles": [
1864
+ {
1865
+ "bundle_id": 2,
1866
+ "detail": "We can't delete this bundle because it's in use by 1 target(s)."
1867
+ }
1868
+ ]
1869
+ },
1870
+ "summary": "ResponseExample2 - Partial Success"
1871
+ },
1872
+ "ResponseExample2-PartialSuccess2": {
1873
+ "value": {
1874
+ "bundles_queued_for_cleanup": [
1875
+ 1
1876
+ ],
1877
+ "rejected_bundles": [
1878
+ {
1879
+ "bundle_ids": [
1880
+ 9999
1881
+ ],
1882
+ "detail": "Bundles not found in project testproject."
1883
+ },
1884
+ {
1885
+ "bundle_id": 2,
1886
+ "detail": "We can't delete this bundle because it's in use by 3 target(s)."
1887
+ },
1888
+ {
1889
+ "bundle_id": 3,
1890
+ "detail": "We can't delete this bundle because bundle deletion is in progress."
1891
+ },
1892
+ {
1893
+ "bundle_id": 4,
1894
+ "detail": "We can't delete this bundle because bundle deletion is in progress."
1895
+ },
1896
+ {
1897
+ "bundle_id": 5,
1898
+ "detail": "We can't delete this bundle because bundle deletion is in progress."
1899
+ },
1900
+ {
1901
+ "bundle_id": 6,
1902
+ "detail": "Bundle deletion failed. We've been notified of this error and are working to resolve it."
1903
+ }
1904
+ ]
1905
+ },
1906
+ "summary": "ResponseExample2 - Partial Success 2"
1907
+ },
1908
+ "ResponseExample3-AllFailed": {
1909
+ "value": {
1910
+ "rejected_bundles": [
1911
+ {
1912
+ "bundle_id": 1,
1913
+ "detail": "We can't delete this bundle because bundle deletion is in progress."
1914
+ },
1915
+ {
1916
+ "bundle_id": 2,
1917
+ "detail": "We can't delete this bundle because it's in use by 1 target(s)."
1918
+ }
1919
+ ]
1920
+ },
1921
+ "summary": "ResponseExample3 - All Failed"
1922
+ }
1923
+ }
1924
+ }
1925
+ },
1926
+ "description": "Bundle deletion was requested. Check the response body for details about the bundles that were queued and that failed deletion."
1927
+ },
1928
+ "500": {
1929
+ "description": "An unexpected error occurred during the bulk delete operation. The operation has been rolled back and no bundles were deleted."
1930
+ }
1931
+ }
1932
+ }
1933
+ },
819
1934
  "/api/projects/{project_slug}/members/": {
820
1935
  "get": {
821
1936
  "operationId": "projects_members_list",
@@ -1517,6 +2632,7 @@
1517
2632
  "ssr_external_hostname": "www-testing.example.com",
1518
2633
  "ssr_external_domain": "example.com",
1519
2634
  "ssr_region": "eu-central-1",
2635
+ "ssr_architecture": "x86",
1520
2636
  "ssr_whitelisted_ips": "103.12.25.0/24",
1521
2637
  "ssr_proxy_configs": [
1522
2638
  {
@@ -1529,7 +2645,9 @@
1529
2645
  ],
1530
2646
  "allow_cookies": false,
1531
2647
  "enable_source_maps": false,
1532
- "log_level": "INFO"
2648
+ "log_level": "INFO",
2649
+ "certificate_id": 0,
2650
+ "certificate_domain": "*.example.com"
1533
2651
  }
1534
2652
  ]
1535
2653
  }
@@ -1572,6 +2690,7 @@
1572
2690
  "ssr_external_hostname": "www-testing.example.com",
1573
2691
  "ssr_external_domain": "example.com",
1574
2692
  "ssr_region": "eu-central-1",
2693
+ "ssr_architecture": "x86",
1575
2694
  "ssr_whitelisted_ips": "103.12.25.0/24",
1576
2695
  "ssr_proxy_configs": [
1577
2696
  {
@@ -1584,7 +2703,8 @@
1584
2703
  ],
1585
2704
  "allow_cookies": false,
1586
2705
  "enable_source_maps": false,
1587
- "log_level": "INFO"
2706
+ "log_level": "INFO",
2707
+ "certificate_id": 0
1588
2708
  }
1589
2709
  }
1590
2710
  }
@@ -1625,6 +2745,7 @@
1625
2745
  "ssr_external_hostname": "www-testing.example.com",
1626
2746
  "ssr_external_domain": "example.com",
1627
2747
  "ssr_region": "eu-central-1",
2748
+ "ssr_architecture": "x86",
1628
2749
  "ssr_whitelisted_ips": "103.12.25.0/24",
1629
2750
  "ssr_proxy_configs": [
1630
2751
  {
@@ -1637,7 +2758,9 @@
1637
2758
  ],
1638
2759
  "allow_cookies": true,
1639
2760
  "enable_source_maps": false,
1640
- "log_level": "INFO"
2761
+ "log_level": "INFO",
2762
+ "certificate_id": 0,
2763
+ "certificate_domain": "*.example.com"
1641
2764
  }
1642
2765
  }
1643
2766
  }
@@ -1737,6 +2860,7 @@
1737
2860
  "ssr_external_hostname": "www-testing.example.com",
1738
2861
  "ssr_external_domain": "example.com",
1739
2862
  "ssr_region": "eu-central-1",
2863
+ "ssr_architecture": "x86",
1740
2864
  "ssr_whitelisted_ips": "103.12.25.0/24",
1741
2865
  "ssr_proxy_configs": [
1742
2866
  {
@@ -1750,7 +2874,9 @@
1750
2874
  ],
1751
2875
  "allow_cookies": false,
1752
2876
  "enable_source_maps": false,
1753
- "log_level": "INFO"
2877
+ "log_level": "INFO",
2878
+ "certificate_id": 0,
2879
+ "certificate_domain": "*.example.com"
1754
2880
  }
1755
2881
  }
1756
2882
  }
@@ -1799,6 +2925,7 @@
1799
2925
  "ssr_external_hostname": "www-testing.example.com",
1800
2926
  "ssr_external_domain": "example.com",
1801
2927
  "ssr_region": "eu-central-1",
2928
+ "ssr_architecture": "arm64",
1802
2929
  "ssr_whitelisted_ips": "103.12.25.0/24",
1803
2930
  "ssr_proxy_configs": [
1804
2931
  {
@@ -1812,7 +2939,8 @@
1812
2939
  ],
1813
2940
  "allow_cookies": true,
1814
2941
  "enable_source_maps": true,
1815
- "log_level": "INFO"
2942
+ "log_level": "INFO",
2943
+ "certificate_id": 123
1816
2944
  }
1817
2945
  }
1818
2946
  }
@@ -1889,6 +3017,7 @@
1889
3017
  "ssr_external_hostname": "www-testing.example.com",
1890
3018
  "ssr_external_domain": "example.com",
1891
3019
  "ssr_region": "eu-central-1",
3020
+ "ssr_architecture": "arm64",
1892
3021
  "ssr_whitelisted_ips": "103.12.25.0/24",
1893
3022
  "ssr_proxy_configs": [
1894
3023
  {
@@ -1902,7 +3031,9 @@
1902
3031
  ],
1903
3032
  "allow_cookies": true,
1904
3033
  "enable_source_maps": true,
1905
- "log_level": "INFO"
3034
+ "log_level": "INFO",
3035
+ "certificate_id": 0,
3036
+ "certificate_domain": "*.example.com"
1906
3037
  }
1907
3038
  }
1908
3039
  }
@@ -2256,8 +3387,110 @@
2256
3387
  }
2257
3388
  ],
2258
3389
  "responses": {
2259
- "204": {
2260
- "description": "No response body"
3390
+ "204": {
3391
+ "description": "No response body"
3392
+ }
3393
+ }
3394
+ }
3395
+ },
3396
+ "/api/projects/{project_slug}/target/{target_slug}/clone/": {
3397
+ "post": {
3398
+ "operationId": "projects_target_clone_create",
3399
+ "description": "Clone a target from another target in the same project. This creates a new target with the same configuration as the source target, excluding proxies and production flag. Optionally clones redirects and environment variables. The new target will be automatically deployed with the same bundle as the source target's current deployment (if source has a deployed bundle) or with a reset bundle.",
3400
+ "parameters": [
3401
+ {
3402
+ "in": "path",
3403
+ "name": "project_slug",
3404
+ "schema": {
3405
+ "type": "string"
3406
+ },
3407
+ "description": "The project identifier.",
3408
+ "required": true
3409
+ },
3410
+ {
3411
+ "in": "path",
3412
+ "name": "target_slug",
3413
+ "schema": {
3414
+ "type": "string"
3415
+ },
3416
+ "description": "The target identifier.",
3417
+ "required": true
3418
+ }
3419
+ ],
3420
+ "tags": [
3421
+ "projects"
3422
+ ],
3423
+ "requestBody": {
3424
+ "content": {
3425
+ "application/json": {
3426
+ "schema": {
3427
+ "$ref": "#/components/schemas/APITargetV2Clone"
3428
+ },
3429
+ "examples": {
3430
+ "RequestExample1": {
3431
+ "value": {
3432
+ "from_target_slug": "staging",
3433
+ "ssr_external_hostname": "www-copy.example.com",
3434
+ "certificate_id": 123,
3435
+ "clone_redirects": true,
3436
+ "clone_environment_variables": true,
3437
+ "clone_b2c_target_info": true
3438
+ }
3439
+ }
3440
+ }
3441
+ },
3442
+ "application/x-www-form-urlencoded": {
3443
+ "schema": {
3444
+ "$ref": "#/components/schemas/APITargetV2Clone"
3445
+ }
3446
+ },
3447
+ "multipart/form-data": {
3448
+ "schema": {
3449
+ "$ref": "#/components/schemas/APITargetV2Clone"
3450
+ }
3451
+ }
3452
+ },
3453
+ "required": true
3454
+ },
3455
+ "security": [
3456
+ {
3457
+ "Basic": []
3458
+ },
3459
+ {
3460
+ "BearerToken": []
3461
+ }
3462
+ ],
3463
+ "responses": {
3464
+ "201": {
3465
+ "content": {
3466
+ "application/json": {
3467
+ "schema": {
3468
+ "$ref": "#/components/schemas/APITargetV2Clone"
3469
+ },
3470
+ "examples": {
3471
+ "ResponseExample1": {
3472
+ "value": {
3473
+ "slug": "staging-copy",
3474
+ "name": "Staging Copy",
3475
+ "state": "CREATE_IN_PROGRESS",
3476
+ "deletion_status": "ACTIVE",
3477
+ "hostname": null,
3478
+ "ssr_external_hostname": "www-copy.example.com",
3479
+ "ssr_external_domain": "example.com",
3480
+ "ssr_region": "eu-central-1",
3481
+ "ssr_architecture": "x86",
3482
+ "ssr_whitelisted_ips": "103.12.25.0/24",
3483
+ "allow_cookies": false,
3484
+ "enable_source_maps": false,
3485
+ "log_level": "INFO",
3486
+ "certificate_id": 123,
3487
+ "certificate_domain": "*.example.com"
3488
+ }
3489
+ }
3490
+ }
3491
+ }
3492
+ },
3493
+ "description": ""
2261
3494
  }
2262
3495
  }
2263
3496
  }
@@ -3313,7 +4546,7 @@
3313
4546
  "examples": {
3314
4547
  "ResponseExample1": {
3315
4548
  "value": {
3316
- "api_key": "qLh_IRpIh594lPeURV4giczpW0q-Ki0YIcOdDz0aw0g"
4549
+ "api_key": "qLh_IRpIh59..."
3317
4550
  }
3318
4551
  }
3319
4552
  }
@@ -3350,6 +4583,7 @@
3350
4583
  "ResponseExample1": {
3351
4584
  "value": {
3352
4585
  "node_deprecation_notifications": true,
4586
+ "custom_domain_certificate_notifications": true,
3353
4587
  "created_at": "2024-01-15T10:30:00Z",
3354
4588
  "updated_at": "2024-01-15T10:30:00Z"
3355
4589
  }
@@ -3376,7 +4610,8 @@
3376
4610
  "examples": {
3377
4611
  "RequestExample1": {
3378
4612
  "value": {
3379
- "node_deprecation_notifications": false
4613
+ "node_deprecation_notifications": false,
4614
+ "custom_domain_certificate_notifications": false
3380
4615
  }
3381
4616
  }
3382
4617
  }
@@ -3412,6 +4647,7 @@
3412
4647
  "ResponseExample1": {
3413
4648
  "value": {
3414
4649
  "node_deprecation_notifications": false,
4650
+ "custom_domain_certificate_notifications": false,
3415
4651
  "created_at": "2024-01-15T10:30:00Z",
3416
4652
  "updated_at": "2024-01-15T10:35:00Z"
3417
4653
  }
@@ -3493,7 +4729,7 @@
3493
4729
  "publishing_status": {
3494
4730
  "allOf": [
3495
4731
  {
3496
- "$ref": "#/components/schemas/PublishingStatusEnum"
4732
+ "$ref": "#/components/schemas/Status1d2Enum"
3497
4733
  }
3498
4734
  ],
3499
4735
  "readOnly": true
@@ -3572,6 +4808,11 @@
3572
4808
  }
3573
4809
  ],
3574
4810
  "readOnly": true
4811
+ },
4812
+ "can_configure_ssr_architecture": {
4813
+ "type": "boolean",
4814
+ "readOnly": true,
4815
+ "description": "Enable SSR architecture selection (x86 or arm64) for this organization"
3575
4816
  }
3576
4817
  },
3577
4818
  "required": [
@@ -3579,6 +4820,105 @@
3579
4820
  "slug"
3580
4821
  ]
3581
4822
  },
4823
+ "APIOrganizationMember": {
4824
+ "type": "object",
4825
+ "properties": {
4826
+ "user": {
4827
+ "type": "string",
4828
+ "format": "email",
4829
+ "title": "Email address",
4830
+ "readOnly": true
4831
+ },
4832
+ "email": {
4833
+ "type": "string",
4834
+ "readOnly": true
4835
+ },
4836
+ "role": {
4837
+ "$ref": "#/components/schemas/RoleEnum"
4838
+ },
4839
+ "first_name": {
4840
+ "type": "string",
4841
+ "readOnly": true
4842
+ },
4843
+ "last_name": {
4844
+ "type": "string",
4845
+ "readOnly": true
4846
+ },
4847
+ "can_view_all_projects": {
4848
+ "type": "boolean",
4849
+ "readOnly": true
4850
+ },
4851
+ "custom_domain_cert_permission": {
4852
+ "allOf": [
4853
+ {
4854
+ "$ref": "#/components/schemas/Status1d2Enum"
4855
+ }
4856
+ ],
4857
+ "readOnly": true
4858
+ }
4859
+ },
4860
+ "required": [
4861
+ "role"
4862
+ ]
4863
+ },
4864
+ "APIOrganizationMemberCreate": {
4865
+ "type": "object",
4866
+ "description": "Serializer for creating organization members.",
4867
+ "properties": {
4868
+ "user": {
4869
+ "type": "string",
4870
+ "format": "email",
4871
+ "title": "Email address"
4872
+ },
4873
+ "role": {
4874
+ "$ref": "#/components/schemas/RoleEnum"
4875
+ },
4876
+ "can_view_all_projects": {
4877
+ "type": "boolean"
4878
+ },
4879
+ "custom_domain_cert_permission": {
4880
+ "$ref": "#/components/schemas/Status1d2Enum"
4881
+ }
4882
+ },
4883
+ "required": [
4884
+ "role",
4885
+ "user"
4886
+ ]
4887
+ },
4888
+ "APIOrganizationMemberUpdate": {
4889
+ "type": "object",
4890
+ "description": "Serializer for updating organization role permissions.\nAllows updating can_view_all_projects and custom_domain_cert_permission.",
4891
+ "properties": {
4892
+ "user": {
4893
+ "type": "string",
4894
+ "format": "email",
4895
+ "title": "Email address",
4896
+ "readOnly": true
4897
+ },
4898
+ "role": {
4899
+ "allOf": [
4900
+ {
4901
+ "$ref": "#/components/schemas/RoleEnum"
4902
+ }
4903
+ ],
4904
+ "readOnly": true
4905
+ },
4906
+ "first_name": {
4907
+ "type": "string",
4908
+ "readOnly": true
4909
+ },
4910
+ "last_name": {
4911
+ "type": "string",
4912
+ "readOnly": true
4913
+ },
4914
+ "can_view_all_projects": {
4915
+ "type": "boolean"
4916
+ },
4917
+ "custom_domain_cert_permission": {
4918
+ "$ref": "#/components/schemas/Status1d2Enum"
4919
+ }
4920
+ }
4921
+ },
3582
4922
  "APIProjectMember": {
3583
4923
  "type": "object",
3584
4924
  "properties": {
@@ -3629,8 +4969,7 @@
3629
4969
  "pattern": "^[a-z0-9]+(?:-+[a-z0-9]+)*$"
3630
4970
  },
3631
4971
  "organization": {
3632
- "type": "string",
3633
- "description": "User-friendly identifier for this instance."
4972
+ "type": "string"
3634
4973
  },
3635
4974
  "deletion_status": {
3636
4975
  "allOf": [
@@ -3710,6 +5049,9 @@
3710
5049
  },
3711
5050
  "edit_access_control_header": {
3712
5051
  "type": "boolean"
5052
+ },
5053
+ "edit_data_access_layer_entry": {
5054
+ "type": "boolean"
3713
5055
  }
3714
5056
  },
3715
5057
  "readOnly": true
@@ -3723,6 +5065,18 @@
3723
5065
  "title": "SSR AWS Region",
3724
5066
  "description": "The default AWS region for newly created targets\n\n* `us-east-1` - US East (N. Virginia)\n* `us-east-2` - US East (Ohio)\n* `us-west-1` - US West (N. California)\n* `us-west-2` - US West (Oregon)\n* `ap-south-1` - Asia Pacific (Mumbai)\n* `ap-south-2` - Asia Pacific (Hyderabad)\n* `ap-northeast-2` - Asia Pacific (Seoul)\n* `ap-southeast-1` - Asia Pacific (Singapore)\n* `ap-southeast-2` - Asia Pacific (Sydney)\n* `ap-southeast-3` - Asia Pacific (Jakarta)\n* `ap-northeast-1` - Asia Pacific (Tokyo)\n* `ap-northeast-3` - Asia Pacific (Osaka)\n* `ca-central-1` - Canada (Central)\n* `eu-central-1` - EU (Frankfurt)\n* `eu-central-2` - EU (Zurich)\n* `eu-west-1` - EU (Ireland)\n* `eu-west-2` - EU (London)\n* `eu-west-3` - EU (Paris)\n* `eu-north-1` - EU (Stockholm)\n* `eu-south-1` - EU (Milan)\n* `il-central-1` - Israel (Tel Aviv)\n* `me-central-1` - Middle East (UAE)\n* `sa-east-1` - South America (Sao Paulo)"
3725
5067
  },
5068
+ "ssr_architecture": {
5069
+ "nullable": true,
5070
+ "description": "Default Server-Side Rendering architecture (x86 or arm64) for targets under this project.\n\n* `x86` - x86\n* `arm64` - ARM64",
5071
+ "oneOf": [
5072
+ {
5073
+ "$ref": "#/components/schemas/SsrArchitectureEnum"
5074
+ },
5075
+ {
5076
+ "$ref": "#/components/schemas/NullEnum"
5077
+ }
5078
+ ]
5079
+ },
3726
5080
  "created_at": {
3727
5081
  "type": "string",
3728
5082
  "format": "date-time",
@@ -3734,6 +5088,19 @@
3734
5088
  "format": "date-time",
3735
5089
  "readOnly": true,
3736
5090
  "description": "Timestamp in the extended ISO 8601 format for when the object was last updated."
5091
+ },
5092
+ "source": {
5093
+ "readOnly": true,
5094
+ "nullable": true,
5095
+ "description": "Source of the project. One of: ecom, core, direct.\n\n* `ecom` - ecom\n* `core` - core\n* `direct` - direct",
5096
+ "oneOf": [
5097
+ {
5098
+ "$ref": "#/components/schemas/SourceEnum"
5099
+ },
5100
+ {
5101
+ "$ref": "#/components/schemas/NullEnum"
5102
+ }
5103
+ ]
3737
5104
  }
3738
5105
  },
3739
5106
  "required": [
@@ -3841,6 +5208,9 @@
3841
5208
  },
3842
5209
  "edit_access_control_header": {
3843
5210
  "type": "boolean"
5211
+ },
5212
+ "edit_data_access_layer_entry": {
5213
+ "type": "boolean"
3844
5214
  }
3845
5215
  },
3846
5216
  "readOnly": true
@@ -3854,6 +5224,18 @@
3854
5224
  "title": "SSR AWS Region",
3855
5225
  "description": "The default AWS region for newly created targets\n\n* `us-east-1` - US East (N. Virginia)\n* `us-east-2` - US East (Ohio)\n* `us-west-1` - US West (N. California)\n* `us-west-2` - US West (Oregon)\n* `ap-south-1` - Asia Pacific (Mumbai)\n* `ap-south-2` - Asia Pacific (Hyderabad)\n* `ap-northeast-2` - Asia Pacific (Seoul)\n* `ap-southeast-1` - Asia Pacific (Singapore)\n* `ap-southeast-2` - Asia Pacific (Sydney)\n* `ap-southeast-3` - Asia Pacific (Jakarta)\n* `ap-northeast-1` - Asia Pacific (Tokyo)\n* `ap-northeast-3` - Asia Pacific (Osaka)\n* `ca-central-1` - Canada (Central)\n* `eu-central-1` - EU (Frankfurt)\n* `eu-central-2` - EU (Zurich)\n* `eu-west-1` - EU (Ireland)\n* `eu-west-2` - EU (London)\n* `eu-west-3` - EU (Paris)\n* `eu-north-1` - EU (Stockholm)\n* `eu-south-1` - EU (Milan)\n* `il-central-1` - Israel (Tel Aviv)\n* `me-central-1` - Middle East (UAE)\n* `sa-east-1` - South America (Sao Paulo)"
3856
5226
  },
5227
+ "ssr_architecture": {
5228
+ "nullable": true,
5229
+ "description": "Default Server-Side Rendering architecture (x86 or arm64) for targets under this project.\n\n* `x86` - x86\n* `arm64` - ARM64",
5230
+ "oneOf": [
5231
+ {
5232
+ "$ref": "#/components/schemas/SsrArchitectureEnum"
5233
+ },
5234
+ {
5235
+ "$ref": "#/components/schemas/NullEnum"
5236
+ }
5237
+ ]
5238
+ },
3857
5239
  "created_at": {
3858
5240
  "type": "string",
3859
5241
  "format": "date-time",
@@ -3865,6 +5247,19 @@
3865
5247
  "format": "date-time",
3866
5248
  "readOnly": true,
3867
5249
  "description": "Timestamp in the extended ISO 8601 format for when the object was last updated."
5250
+ },
5251
+ "source": {
5252
+ "readOnly": true,
5253
+ "nullable": true,
5254
+ "description": "Source of the project. One of: ecom, core, direct.\n\n* `ecom` - ecom\n* `core` - core\n* `direct` - direct",
5255
+ "oneOf": [
5256
+ {
5257
+ "$ref": "#/components/schemas/SourceEnum"
5258
+ },
5259
+ {
5260
+ "$ref": "#/components/schemas/NullEnum"
5261
+ }
5262
+ ]
3868
5263
  }
3869
5264
  },
3870
5265
  "required": [
@@ -3951,6 +5346,53 @@
3951
5346
  "to_url"
3952
5347
  ]
3953
5348
  },
5349
+ "APITargetV2Clone": {
5350
+ "type": "object",
5351
+ "description": "Serializer for target cloning request.\nInherits from APITargetV2BaseSerializer to reuse validation helper methods.",
5352
+ "properties": {
5353
+ "from_target_slug": {
5354
+ "type": "string",
5355
+ "description": "The slug of the target to clone from.",
5356
+ "pattern": "^[-a-zA-Z0-9_]+$"
5357
+ },
5358
+ "ssr_external_hostname": {
5359
+ "type": "string",
5360
+ "nullable": true,
5361
+ "description": "Full hostname to be used by the cloned environment. Required when using non-MRT managed certificate.",
5362
+ "maxLength": 128
5363
+ },
5364
+ "ssr_external_domain": {
5365
+ "type": "string",
5366
+ "nullable": true,
5367
+ "description": "The domain to be used for a Universal PWA SSR deployment (e.g. customer.com). If not provided and hostname is provided, will be extracted from hostname.",
5368
+ "maxLength": 128
5369
+ },
5370
+ "certificate_id": {
5371
+ "type": "integer",
5372
+ "minimum": 0,
5373
+ "nullable": true,
5374
+ "description": "The ID of the certificate to associate with the cloned target's custom domain. Required for custom domains."
5375
+ },
5376
+ "clone_redirects": {
5377
+ "type": "boolean",
5378
+ "default": false,
5379
+ "description": "Whether to clone redirects from the source target."
5380
+ },
5381
+ "clone_environment_variables": {
5382
+ "type": "boolean",
5383
+ "default": false,
5384
+ "description": "Whether to clone environment variables from the source target."
5385
+ },
5386
+ "clone_b2c_target_info": {
5387
+ "type": "boolean",
5388
+ "default": false,
5389
+ "description": "Whether to clone B2C target info from the source target."
5390
+ }
5391
+ },
5392
+ "required": [
5393
+ "from_target_slug"
5394
+ ]
5395
+ },
3954
5396
  "APITargetV2Create": {
3955
5397
  "type": "object",
3956
5398
  "description": "This is the serializer for target create/list APIs.",
@@ -3996,7 +5438,7 @@
3996
5438
  "ssr_external_hostname": {
3997
5439
  "type": "string",
3998
5440
  "nullable": true,
3999
- "description": "Full hostname to used by the environment eg. www.customer.com.",
5441
+ "description": "Full hostname to be used by the environment eg. www.customer.com.",
4000
5442
  "maxLength": 128
4001
5443
  },
4002
5444
  "ssr_external_domain": {
@@ -4017,6 +5459,18 @@
4017
5459
  }
4018
5460
  ]
4019
5461
  },
5462
+ "ssr_architecture": {
5463
+ "nullable": true,
5464
+ "description": "The architecture for the Server-Side Rendering function (x86 or ARM64). If not specified, the ssr_architecture that's set in the project is used.\n\n* `x86` - x86\n* `arm64` - ARM64",
5465
+ "oneOf": [
5466
+ {
5467
+ "$ref": "#/components/schemas/SsrArchitectureEnum"
5468
+ },
5469
+ {
5470
+ "$ref": "#/components/schemas/NullEnum"
5471
+ }
5472
+ ]
5473
+ },
4020
5474
  "ssr_whitelisted_ips": {
4021
5475
  "type": "string",
4022
5476
  "nullable": true,
@@ -4040,27 +5494,76 @@
4040
5494
  ]
4041
5495
  }
4042
5496
  },
5497
+ "cdn_domain_name": {
5498
+ "type": "string",
5499
+ "readOnly": true,
5500
+ "description": "The Managed Runtime CDN origin domain name."
5501
+ },
4043
5502
  "is_production": {
4044
5503
  "type": "boolean",
4045
5504
  "title": "Production",
4046
5505
  "description": "Treat this target as a production environment."
4047
5506
  },
4048
- "allow_cookies": {
4049
- "type": "boolean",
5507
+ "allow_cookies": {
5508
+ "type": "boolean",
5509
+ "nullable": true,
5510
+ "description": "Set true to forward the HTTP cookie header sent by clients to your origin and ensure the Set-Cookie header sent by your app is respected and not stripped."
5511
+ },
5512
+ "enable_source_maps": {
5513
+ "type": "boolean",
5514
+ "nullable": true,
5515
+ "description": "Set true to enable source map support. This will set the NODE_OPTIONS environment variable to \"--enable-source-maps\" in your MRT environment."
5516
+ },
5517
+ "log_level": {
5518
+ "nullable": true,
5519
+ "description": "The minimum log level that will be emitted for this target\n\n* `TRACE` - TRACE\n* `DEBUG` - DEBUG\n* `INFO` - INFO\n* `WARN` - WARN\n* `ERROR` - ERROR\n* `FATAL` - FATAL",
5520
+ "oneOf": [
5521
+ {
5522
+ "$ref": "#/components/schemas/LogLevelEnum"
5523
+ },
5524
+ {
5525
+ "$ref": "#/components/schemas/NullEnum"
5526
+ }
5527
+ ]
5528
+ },
5529
+ "certificate_id": {
5530
+ "type": "integer",
5531
+ "minimum": 0,
5532
+ "writeOnly": true,
5533
+ "nullable": true,
5534
+ "description": "The ID of the certificate to associate with this target's custom domain. Must be an integer unique within the organization."
5535
+ },
5536
+ "certificate_domain": {
5537
+ "type": "string",
5538
+ "readOnly": true,
5539
+ "description": "The certificate domain used by this target. For MRT default domains, returns wildcard format (e.g., *.mobify-storefront-staging.com). For custom domains, returns the certificate domain name."
5540
+ },
5541
+ "configured_cdn": {
5542
+ "readOnly": true,
4050
5543
  "nullable": true,
4051
- "description": "Set true to forward the HTTP cookie header sent by clients to your origin and ensure the Set-Cookie header sent by your app is respected and not stripped."
5544
+ "description": "The content delivery network used for content, traffic, and security. A B2C instance must be connected to this environment to select eCDN.\n\n* `unknown` - unknown\n* `mrt_cdn` - mrt_cdn\n* `ecdn` - ecdn\n* `stacked_cdn` - stacked_cdn",
5545
+ "oneOf": [
5546
+ {
5547
+ "$ref": "#/components/schemas/ConfiguredCdnEnum"
5548
+ },
5549
+ {
5550
+ "$ref": "#/components/schemas/NullEnum"
5551
+ }
5552
+ ]
4052
5553
  },
4053
- "enable_source_maps": {
4054
- "type": "boolean",
5554
+ "cdn_public_hostname": {
5555
+ "type": "string",
5556
+ "readOnly": true,
4055
5557
  "nullable": true,
4056
- "description": "Set true to enable source map support. This will set the NODE_OPTIONS environment variable to \"--enable-source-maps\" in your MRT environment."
5558
+ "description": "Add a publicly visible hostname. Enter a subdomain if one is not already provided with your organization’s certified domain."
4057
5559
  },
4058
- "log_level": {
5560
+ "source": {
5561
+ "readOnly": true,
4059
5562
  "nullable": true,
4060
- "description": "The minimum log level emitted for this target.n\n* `TRACE`\n* `DEBUG`\n* `INFO`\n* `WARN`\n* `ERROR`\n* `FATAL`",
5563
+ "description": "Source of the environment. One of: ecom, core, direct.\n\n* `ecom` - ecom\n* `core` - core\n* `direct` - direct",
4061
5564
  "oneOf": [
4062
5565
  {
4063
- "$ref": "#/components/schemas/LogLevelEnum"
5566
+ "$ref": "#/components/schemas/SourceEnum"
4064
5567
  },
4065
5568
  {
4066
5569
  "$ref": "#/components/schemas/NullEnum"
@@ -4146,7 +5649,7 @@
4146
5649
  "ssr_external_hostname": {
4147
5650
  "type": "string",
4148
5651
  "nullable": true,
4149
- "description": "Full hostname to used by the environment eg. www.customer.com.",
5652
+ "description": "Full hostname to be used by the environment eg. www.customer.com.",
4150
5653
  "maxLength": 128
4151
5654
  },
4152
5655
  "ssr_external_domain": {
@@ -4167,6 +5670,18 @@
4167
5670
  }
4168
5671
  ]
4169
5672
  },
5673
+ "ssr_architecture": {
5674
+ "nullable": true,
5675
+ "description": "The architecture for the Server-Side Rendering function (x86 or ARM64). If not specified, the ssr_architecture that's set in the project is used.\n\n* `x86` - x86\n* `arm64` - ARM64",
5676
+ "oneOf": [
5677
+ {
5678
+ "$ref": "#/components/schemas/SsrArchitectureEnum"
5679
+ },
5680
+ {
5681
+ "$ref": "#/components/schemas/NullEnum"
5682
+ }
5683
+ ]
5684
+ },
4170
5685
  "ssr_whitelisted_ips": {
4171
5686
  "type": "string",
4172
5687
  "nullable": true,
@@ -4190,6 +5705,11 @@
4190
5705
  ]
4191
5706
  }
4192
5707
  },
5708
+ "cdn_domain_name": {
5709
+ "type": "string",
5710
+ "readOnly": true,
5711
+ "description": "The Managed Runtime CDN origin domain name."
5712
+ },
4193
5713
  "is_production": {
4194
5714
  "type": "boolean",
4195
5715
  "title": "Production",
@@ -4207,7 +5727,7 @@
4207
5727
  },
4208
5728
  "log_level": {
4209
5729
  "nullable": true,
4210
- "description": "The minimum log level emitted for this target.n\n* `TRACE`\n* `DEBUG`\n* `INFO`\n* `WARN`\n* `ERROR`\n* `FATAL`",
5730
+ "description": "The minimum log level that will be emitted for this target\n\n* `TRACE` - TRACE\n* `DEBUG` - DEBUG\n* `INFO` - INFO\n* `WARN` - WARN\n* `ERROR` - ERROR\n* `FATAL` - FATAL",
4211
5731
  "oneOf": [
4212
5732
  {
4213
5733
  "$ref": "#/components/schemas/LogLevelEnum"
@@ -4216,6 +5736,50 @@
4216
5736
  "$ref": "#/components/schemas/NullEnum"
4217
5737
  }
4218
5738
  ]
5739
+ },
5740
+ "certificate_id": {
5741
+ "type": "integer",
5742
+ "minimum": 0,
5743
+ "writeOnly": true,
5744
+ "nullable": true,
5745
+ "description": "The ID of the certificate to associate with this target's custom domain. Must be an integer unique within the organization. Set to null to remove the certificate association."
5746
+ },
5747
+ "certificate_domain": {
5748
+ "type": "string",
5749
+ "readOnly": true,
5750
+ "description": "The certificate domain used by this target. For MRT default domains, returns wildcard format (e.g., *.mobify-storefront-staging.com). For custom domains, returns the certificate domain name."
5751
+ },
5752
+ "configured_cdn": {
5753
+ "readOnly": true,
5754
+ "nullable": true,
5755
+ "description": "The content delivery network used for content, traffic, and security. A B2C instance must be connected to this environment to select eCDN.\n\n* `unknown` - unknown\n* `mrt_cdn` - mrt_cdn\n* `ecdn` - ecdn\n* `stacked_cdn` - stacked_cdn",
5756
+ "oneOf": [
5757
+ {
5758
+ "$ref": "#/components/schemas/ConfiguredCdnEnum"
5759
+ },
5760
+ {
5761
+ "$ref": "#/components/schemas/NullEnum"
5762
+ }
5763
+ ]
5764
+ },
5765
+ "cdn_public_hostname": {
5766
+ "type": "string",
5767
+ "readOnly": true,
5768
+ "nullable": true,
5769
+ "description": "Add a publicly visible hostname. Enter a subdomain if one is not already provided with your organization’s certified domain."
5770
+ },
5771
+ "source": {
5772
+ "readOnly": true,
5773
+ "nullable": true,
5774
+ "description": "Source of the environment. One of: ecom, core, direct.\n\n* `ecom` - ecom\n* `core` - core\n* `direct` - direct",
5775
+ "oneOf": [
5776
+ {
5777
+ "$ref": "#/components/schemas/SourceEnum"
5778
+ },
5779
+ {
5780
+ "$ref": "#/components/schemas/NullEnum"
5781
+ }
5782
+ ]
4219
5783
  }
4220
5784
  },
4221
5785
  "required": [
@@ -4307,6 +5871,56 @@
4307
5871
  "message"
4308
5872
  ]
4309
5873
  },
5874
+ "BundleBulkDelete": {
5875
+ "type": "object",
5876
+ "properties": {
5877
+ "bundle_ids": {
5878
+ "type": "array",
5879
+ "items": {
5880
+ "type": "integer"
5881
+ }
5882
+ }
5883
+ },
5884
+ "required": [
5885
+ "bundle_ids"
5886
+ ]
5887
+ },
5888
+ "BundleBulkDeleteFailedRequest": {
5889
+ "type": "object",
5890
+ "properties": {
5891
+ "bundle_id": {
5892
+ "type": "integer",
5893
+ "description": "The ID of the bundle that failed validation."
5894
+ },
5895
+ "errors": {
5896
+ "type": "string",
5897
+ "description": "Error message that explains why the bundle can't be queued for deletion."
5898
+ }
5899
+ },
5900
+ "required": [
5901
+ "bundle_id",
5902
+ "errors"
5903
+ ]
5904
+ },
5905
+ "BundleBulkDeleteResponse": {
5906
+ "type": "object",
5907
+ "properties": {
5908
+ "rejected_bundles": {
5909
+ "type": "array",
5910
+ "items": {
5911
+ "$ref": "#/components/schemas/BundleBulkDeleteFailedRequest"
5912
+ },
5913
+ "description": "Bundles that failed validation and couldn't be queued for deletion."
5914
+ },
5915
+ "bundles_queued_for_cleanup": {
5916
+ "type": "array",
5917
+ "items": {
5918
+ "type": "integer"
5919
+ },
5920
+ "description": "Bundle IDs for bundles that were queued for deletion."
5921
+ }
5922
+ }
5923
+ },
4310
5924
  "BundleDownload": {
4311
5925
  "type": "object",
4312
5926
  "properties": {
@@ -4368,6 +5982,209 @@
4368
5982
  "message"
4369
5983
  ]
4370
5984
  },
5985
+ "CertificateBase": {
5986
+ "type": "object",
5987
+ "description": "Base serializer for certificate serializers with common fields and methods.",
5988
+ "properties": {
5989
+ "id": {
5990
+ "type": "integer",
5991
+ "readOnly": true,
5992
+ "description": "An ID unique within a business."
5993
+ },
5994
+ "domain_name": {
5995
+ "type": "string",
5996
+ "title": "Certificate domain",
5997
+ "description": "The domain for the certificate either wildcard (e.g. *.example.com) or single domain (e.g. sub.example.com)",
5998
+ "maxLength": 255
5999
+ },
6000
+ "validation_requested_at": {
6001
+ "type": "string",
6002
+ "readOnly": true
6003
+ },
6004
+ "validation_status": {
6005
+ "allOf": [
6006
+ {
6007
+ "$ref": "#/components/schemas/ValidationStatusEnum"
6008
+ }
6009
+ ],
6010
+ "readOnly": true,
6011
+ "description": "Current validation status of the certificate\n\n* `pending_validation` - Pending Validation\n* `validation_succeeded` - Validation Succeeded\n* `validation_failed` - Validation Failed"
6012
+ },
6013
+ "validation_record": {
6014
+ "type": "string",
6015
+ "readOnly": true
6016
+ },
6017
+ "expires_at": {
6018
+ "type": "string",
6019
+ "format": "date-time",
6020
+ "readOnly": true,
6021
+ "nullable": true,
6022
+ "title": "Certificate Expiry Date",
6023
+ "description": "Expiry date of the certificate from ACM."
6024
+ },
6025
+ "renewal_status": {
6026
+ "readOnly": true,
6027
+ "nullable": true,
6028
+ "description": "Current status of certificate renewal.\n\n* `PENDING_AUTO_RENEWAL` - Pending Auto Renewal\n* `FAILED` - Failed",
6029
+ "oneOf": [
6030
+ {
6031
+ "$ref": "#/components/schemas/RenewalStatusEnum"
6032
+ },
6033
+ {
6034
+ "$ref": "#/components/schemas/NullEnum"
6035
+ }
6036
+ ]
6037
+ },
6038
+ "renewal_eligibility": {
6039
+ "readOnly": true,
6040
+ "nullable": true,
6041
+ "description": "Whether the certificate is eligible for renewal.\n\n* `ELIGIBLE` - Eligible\n* `INELIGIBLE` - Ineligible",
6042
+ "oneOf": [
6043
+ {
6044
+ "$ref": "#/components/schemas/RenewalEligibilityEnum"
6045
+ },
6046
+ {
6047
+ "$ref": "#/components/schemas/NullEnum"
6048
+ }
6049
+ ]
6050
+ },
6051
+ "targets": {
6052
+ "type": "string",
6053
+ "readOnly": true
6054
+ },
6055
+ "created_by": {
6056
+ "type": "string",
6057
+ "readOnly": true
6058
+ },
6059
+ "created_at": {
6060
+ "type": "string",
6061
+ "format": "date-time",
6062
+ "readOnly": true,
6063
+ "description": "Timestamp in the extended ISO 8601 format for when the object was created."
6064
+ },
6065
+ "is_mrt_managed": {
6066
+ "type": "string",
6067
+ "readOnly": true
6068
+ },
6069
+ "deletion_status": {
6070
+ "allOf": [
6071
+ {
6072
+ "$ref": "#/components/schemas/DeletionStatusEnum"
6073
+ }
6074
+ ],
6075
+ "readOnly": true
6076
+ }
6077
+ },
6078
+ "required": [
6079
+ "domain_name"
6080
+ ]
6081
+ },
6082
+ "CertificateListCreate": {
6083
+ "type": "object",
6084
+ "description": "Base serializer for certificate serializers with common fields and methods.",
6085
+ "properties": {
6086
+ "id": {
6087
+ "type": "integer",
6088
+ "readOnly": true,
6089
+ "description": "An ID unique within a business."
6090
+ },
6091
+ "domain_name": {
6092
+ "type": "string",
6093
+ "description": "The domain for the certificate (e.g. shop.example.com)",
6094
+ "maxLength": 255
6095
+ },
6096
+ "validation_requested_at": {
6097
+ "type": "string",
6098
+ "readOnly": true
6099
+ },
6100
+ "validation_status": {
6101
+ "allOf": [
6102
+ {
6103
+ "$ref": "#/components/schemas/ValidationStatusEnum"
6104
+ }
6105
+ ],
6106
+ "readOnly": true,
6107
+ "description": "Current validation status of the certificate\n\n* `pending_validation` - Pending Validation\n* `validation_succeeded` - Validation Succeeded\n* `validation_failed` - Validation Failed"
6108
+ },
6109
+ "validation_record": {
6110
+ "type": "string",
6111
+ "readOnly": true
6112
+ },
6113
+ "expires_at": {
6114
+ "type": "string",
6115
+ "format": "date-time",
6116
+ "readOnly": true,
6117
+ "nullable": true,
6118
+ "title": "Certificate Expiry Date",
6119
+ "description": "Expiry date of the certificate from ACM."
6120
+ },
6121
+ "renewal_status": {
6122
+ "readOnly": true,
6123
+ "nullable": true,
6124
+ "description": "Current status of certificate renewal.\n\n* `PENDING_AUTO_RENEWAL` - Pending Auto Renewal\n* `FAILED` - Failed",
6125
+ "oneOf": [
6126
+ {
6127
+ "$ref": "#/components/schemas/RenewalStatusEnum"
6128
+ },
6129
+ {
6130
+ "$ref": "#/components/schemas/NullEnum"
6131
+ }
6132
+ ]
6133
+ },
6134
+ "renewal_eligibility": {
6135
+ "readOnly": true,
6136
+ "nullable": true,
6137
+ "description": "Whether the certificate is eligible for renewal.\n\n* `ELIGIBLE` - Eligible\n* `INELIGIBLE` - Ineligible",
6138
+ "oneOf": [
6139
+ {
6140
+ "$ref": "#/components/schemas/RenewalEligibilityEnum"
6141
+ },
6142
+ {
6143
+ "$ref": "#/components/schemas/NullEnum"
6144
+ }
6145
+ ]
6146
+ },
6147
+ "targets": {
6148
+ "type": "string",
6149
+ "readOnly": true
6150
+ },
6151
+ "created_by": {
6152
+ "type": "string",
6153
+ "readOnly": true
6154
+ },
6155
+ "created_at": {
6156
+ "type": "string",
6157
+ "format": "date-time",
6158
+ "readOnly": true,
6159
+ "description": "Timestamp in the extended ISO 8601 format for when the object was created."
6160
+ },
6161
+ "is_mrt_managed": {
6162
+ "type": "string",
6163
+ "readOnly": true
6164
+ },
6165
+ "deletion_status": {
6166
+ "allOf": [
6167
+ {
6168
+ "$ref": "#/components/schemas/DeletionStatusEnum"
6169
+ }
6170
+ ],
6171
+ "readOnly": true
6172
+ }
6173
+ },
6174
+ "required": [
6175
+ "domain_name"
6176
+ ]
6177
+ },
6178
+ "ConfiguredCdnEnum": {
6179
+ "enum": [
6180
+ "unknown",
6181
+ "mrt_cdn",
6182
+ "ecdn",
6183
+ "stacked_cdn"
6184
+ ],
6185
+ "type": "string",
6186
+ "description": "* `unknown` - unknown\n* `mrt_cdn` - mrt_cdn\n* `ecdn` - ecdn\n* `stacked_cdn` - stacked_cdn"
6187
+ },
4371
6188
  "DeletionStatusEnum": {
4372
6189
  "enum": [
4373
6190
  "ACTIVE",
@@ -4560,7 +6377,6 @@
4560
6377
  "properties": {
4561
6378
  "name": {
4562
6379
  "type": "string",
4563
- "description": "Name of the Environment Variable.",
4564
6380
  "maxLength": 512
4565
6381
  },
4566
6382
  "value": {
@@ -4594,7 +6410,7 @@
4594
6410
  "publishing_status": {
4595
6411
  "allOf": [
4596
6412
  {
4597
- "$ref": "#/components/schemas/PublishingStatusEnum"
6413
+ "$ref": "#/components/schemas/Status1d2Enum"
4598
6414
  }
4599
6415
  ],
4600
6416
  "readOnly": true
@@ -4627,7 +6443,7 @@
4627
6443
  "FATAL"
4628
6444
  ],
4629
6445
  "type": "string",
4630
- "description": "The minimum log level emitted for a target."
6446
+ "description": "* `TRACE` - TRACE\n* `DEBUG` - DEBUG\n* `INFO` - INFO\n* `WARN` - WARN\n* `ERROR` - ERROR\n* `FATAL` - FATAL"
4631
6447
  },
4632
6448
  "NullEnum": {
4633
6449
  "enum": [
@@ -4726,6 +6542,37 @@
4726
6542
  }
4727
6543
  }
4728
6544
  },
6545
+ "PaginatedAPIOrganizationMemberList": {
6546
+ "type": "object",
6547
+ "required": [
6548
+ "count",
6549
+ "results"
6550
+ ],
6551
+ "properties": {
6552
+ "count": {
6553
+ "type": "integer",
6554
+ "example": 123
6555
+ },
6556
+ "next": {
6557
+ "type": "string",
6558
+ "nullable": true,
6559
+ "format": "uri",
6560
+ "example": "http://api.example.org/accounts/?offset=400&limit=100"
6561
+ },
6562
+ "previous": {
6563
+ "type": "string",
6564
+ "nullable": true,
6565
+ "format": "uri",
6566
+ "example": "http://api.example.org/accounts/?offset=200&limit=100"
6567
+ },
6568
+ "results": {
6569
+ "type": "array",
6570
+ "items": {
6571
+ "$ref": "#/components/schemas/APIOrganizationMember"
6572
+ }
6573
+ }
6574
+ }
6575
+ },
4729
6576
  "PaginatedAPIProjectMemberList": {
4730
6577
  "type": "object",
4731
6578
  "required": [
@@ -4881,6 +6728,37 @@
4881
6728
  }
4882
6729
  }
4883
6730
  },
6731
+ "PaginatedCertificateListCreateList": {
6732
+ "type": "object",
6733
+ "required": [
6734
+ "count",
6735
+ "results"
6736
+ ],
6737
+ "properties": {
6738
+ "count": {
6739
+ "type": "integer",
6740
+ "example": 123
6741
+ },
6742
+ "next": {
6743
+ "type": "string",
6744
+ "nullable": true,
6745
+ "format": "uri",
6746
+ "example": "http://api.example.org/accounts/?offset=400&limit=100"
6747
+ },
6748
+ "previous": {
6749
+ "type": "string",
6750
+ "nullable": true,
6751
+ "format": "uri",
6752
+ "example": "http://api.example.org/accounts/?offset=200&limit=100"
6753
+ },
6754
+ "results": {
6755
+ "type": "array",
6756
+ "items": {
6757
+ "$ref": "#/components/schemas/CertificateListCreate"
6758
+ }
6759
+ }
6760
+ }
6761
+ },
4884
6762
  "PaginatedDeployListList": {
4885
6763
  "type": "object",
4886
6764
  "required": [
@@ -4974,6 +6852,40 @@
4974
6852
  }
4975
6853
  }
4976
6854
  },
6855
+ "PatchedAPIOrganizationMemberUpdate": {
6856
+ "type": "object",
6857
+ "description": "Serializer for updating organization role permissions.\nAllows updating can_view_all_projects and custom_domain_cert_permission.",
6858
+ "properties": {
6859
+ "user": {
6860
+ "type": "string",
6861
+ "format": "email",
6862
+ "title": "Email address",
6863
+ "readOnly": true
6864
+ },
6865
+ "role": {
6866
+ "allOf": [
6867
+ {
6868
+ "$ref": "#/components/schemas/RoleEnum"
6869
+ }
6870
+ ],
6871
+ "readOnly": true
6872
+ },
6873
+ "first_name": {
6874
+ "type": "string",
6875
+ "readOnly": true
6876
+ },
6877
+ "last_name": {
6878
+ "type": "string",
6879
+ "readOnly": true
6880
+ },
6881
+ "can_view_all_projects": {
6882
+ "type": "boolean"
6883
+ },
6884
+ "custom_domain_cert_permission": {
6885
+ "$ref": "#/components/schemas/Status1d2Enum"
6886
+ }
6887
+ }
6888
+ },
4977
6889
  "PatchedAPIProjectMember": {
4978
6890
  "type": "object",
4979
6891
  "properties": {
@@ -5101,6 +7013,9 @@
5101
7013
  },
5102
7014
  "edit_access_control_header": {
5103
7015
  "type": "boolean"
7016
+ },
7017
+ "edit_data_access_layer_entry": {
7018
+ "type": "boolean"
5104
7019
  }
5105
7020
  },
5106
7021
  "readOnly": true
@@ -5114,6 +7029,18 @@
5114
7029
  "title": "SSR AWS Region",
5115
7030
  "description": "The default AWS region for newly created targets\n\n* `us-east-1` - US East (N. Virginia)\n* `us-east-2` - US East (Ohio)\n* `us-west-1` - US West (N. California)\n* `us-west-2` - US West (Oregon)\n* `ap-south-1` - Asia Pacific (Mumbai)\n* `ap-south-2` - Asia Pacific (Hyderabad)\n* `ap-northeast-2` - Asia Pacific (Seoul)\n* `ap-southeast-1` - Asia Pacific (Singapore)\n* `ap-southeast-2` - Asia Pacific (Sydney)\n* `ap-southeast-3` - Asia Pacific (Jakarta)\n* `ap-northeast-1` - Asia Pacific (Tokyo)\n* `ap-northeast-3` - Asia Pacific (Osaka)\n* `ca-central-1` - Canada (Central)\n* `eu-central-1` - EU (Frankfurt)\n* `eu-central-2` - EU (Zurich)\n* `eu-west-1` - EU (Ireland)\n* `eu-west-2` - EU (London)\n* `eu-west-3` - EU (Paris)\n* `eu-north-1` - EU (Stockholm)\n* `eu-south-1` - EU (Milan)\n* `il-central-1` - Israel (Tel Aviv)\n* `me-central-1` - Middle East (UAE)\n* `sa-east-1` - South America (Sao Paulo)"
5116
7031
  },
7032
+ "ssr_architecture": {
7033
+ "nullable": true,
7034
+ "description": "Default Server-Side Rendering architecture (x86 or arm64) for targets under this project.\n\n* `x86` - x86\n* `arm64` - ARM64",
7035
+ "oneOf": [
7036
+ {
7037
+ "$ref": "#/components/schemas/SsrArchitectureEnum"
7038
+ },
7039
+ {
7040
+ "$ref": "#/components/schemas/NullEnum"
7041
+ }
7042
+ ]
7043
+ },
5117
7044
  "created_at": {
5118
7045
  "type": "string",
5119
7046
  "format": "date-time",
@@ -5125,6 +7052,19 @@
5125
7052
  "format": "date-time",
5126
7053
  "readOnly": true,
5127
7054
  "description": "Timestamp in the extended ISO 8601 format for when the object was last updated."
7055
+ },
7056
+ "source": {
7057
+ "readOnly": true,
7058
+ "nullable": true,
7059
+ "description": "Source of the project. One of: ecom, core, direct.\n\n* `ecom` - ecom\n* `core` - core\n* `direct` - direct",
7060
+ "oneOf": [
7061
+ {
7062
+ "$ref": "#/components/schemas/SourceEnum"
7063
+ },
7064
+ {
7065
+ "$ref": "#/components/schemas/NullEnum"
7066
+ }
7067
+ ]
5128
7068
  }
5129
7069
  }
5130
7070
  },
@@ -5237,7 +7177,7 @@
5237
7177
  "ssr_external_hostname": {
5238
7178
  "type": "string",
5239
7179
  "nullable": true,
5240
- "description": "Full hostname to used by the environment eg. www.customer.com.",
7180
+ "description": "Full hostname to be used by the environment eg. www.customer.com.",
5241
7181
  "maxLength": 128
5242
7182
  },
5243
7183
  "ssr_external_domain": {
@@ -5258,6 +7198,18 @@
5258
7198
  }
5259
7199
  ]
5260
7200
  },
7201
+ "ssr_architecture": {
7202
+ "nullable": true,
7203
+ "description": "The architecture for the Server-Side Rendering function (x86 or ARM64). If not specified, the ssr_architecture that's set in the project is used.\n\n* `x86` - x86\n* `arm64` - ARM64",
7204
+ "oneOf": [
7205
+ {
7206
+ "$ref": "#/components/schemas/SsrArchitectureEnum"
7207
+ },
7208
+ {
7209
+ "$ref": "#/components/schemas/NullEnum"
7210
+ }
7211
+ ]
7212
+ },
5261
7213
  "ssr_whitelisted_ips": {
5262
7214
  "type": "string",
5263
7215
  "nullable": true,
@@ -5281,6 +7233,11 @@
5281
7233
  ]
5282
7234
  }
5283
7235
  },
7236
+ "cdn_domain_name": {
7237
+ "type": "string",
7238
+ "readOnly": true,
7239
+ "description": "The Managed Runtime CDN origin domain name."
7240
+ },
5284
7241
  "is_production": {
5285
7242
  "type": "boolean",
5286
7243
  "title": "Production",
@@ -5298,7 +7255,7 @@
5298
7255
  },
5299
7256
  "log_level": {
5300
7257
  "nullable": true,
5301
- "description": "The minimum log level emitted for this target.\n\n* `TRACE`\n* `DEBUG`\n* `INFO`\n* `WARN`\n* `ERROR`\n* `FATAL`",
7258
+ "description": "The minimum log level that will be emitted for this target\n\n* `TRACE` - TRACE\n* `DEBUG` - DEBUG\n* `INFO` - INFO\n* `WARN` - WARN\n* `ERROR` - ERROR\n* `FATAL` - FATAL",
5302
7259
  "oneOf": [
5303
7260
  {
5304
7261
  "$ref": "#/components/schemas/LogLevelEnum"
@@ -5307,6 +7264,144 @@
5307
7264
  "$ref": "#/components/schemas/NullEnum"
5308
7265
  }
5309
7266
  ]
7267
+ },
7268
+ "certificate_id": {
7269
+ "type": "integer",
7270
+ "minimum": 0,
7271
+ "writeOnly": true,
7272
+ "nullable": true,
7273
+ "description": "The ID of the certificate to associate with this target's custom domain. Must be an integer unique within the organization. Set to null to remove the certificate association."
7274
+ },
7275
+ "certificate_domain": {
7276
+ "type": "string",
7277
+ "readOnly": true,
7278
+ "description": "The certificate domain used by this target. For MRT default domains, returns wildcard format (e.g., *.mobify-storefront-staging.com). For custom domains, returns the certificate domain name."
7279
+ },
7280
+ "configured_cdn": {
7281
+ "readOnly": true,
7282
+ "nullable": true,
7283
+ "description": "The content delivery network used for content, traffic, and security. A B2C instance must be connected to this environment to select eCDN.\n\n* `unknown` - unknown\n* `mrt_cdn` - mrt_cdn\n* `ecdn` - ecdn\n* `stacked_cdn` - stacked_cdn",
7284
+ "oneOf": [
7285
+ {
7286
+ "$ref": "#/components/schemas/ConfiguredCdnEnum"
7287
+ },
7288
+ {
7289
+ "$ref": "#/components/schemas/NullEnum"
7290
+ }
7291
+ ]
7292
+ },
7293
+ "cdn_public_hostname": {
7294
+ "type": "string",
7295
+ "readOnly": true,
7296
+ "nullable": true,
7297
+ "description": "Add a publicly visible hostname. Enter a subdomain if one is not already provided with your organization’s certified domain."
7298
+ },
7299
+ "source": {
7300
+ "readOnly": true,
7301
+ "nullable": true,
7302
+ "description": "Source of the environment. One of: ecom, core, direct.\n\n* `ecom` - ecom\n* `core` - core\n* `direct` - direct",
7303
+ "oneOf": [
7304
+ {
7305
+ "$ref": "#/components/schemas/SourceEnum"
7306
+ },
7307
+ {
7308
+ "$ref": "#/components/schemas/NullEnum"
7309
+ }
7310
+ ]
7311
+ }
7312
+ }
7313
+ },
7314
+ "PatchedCertificateBase": {
7315
+ "type": "object",
7316
+ "description": "Base serializer for certificate serializers with common fields and methods.",
7317
+ "properties": {
7318
+ "id": {
7319
+ "type": "integer",
7320
+ "readOnly": true,
7321
+ "description": "An ID unique within a business."
7322
+ },
7323
+ "domain_name": {
7324
+ "type": "string",
7325
+ "title": "Certificate domain",
7326
+ "description": "The domain for the certificate either wildcard (e.g. *.example.com) or single domain (e.g. sub.example.com)",
7327
+ "maxLength": 255
7328
+ },
7329
+ "validation_requested_at": {
7330
+ "type": "string",
7331
+ "readOnly": true
7332
+ },
7333
+ "validation_status": {
7334
+ "allOf": [
7335
+ {
7336
+ "$ref": "#/components/schemas/ValidationStatusEnum"
7337
+ }
7338
+ ],
7339
+ "readOnly": true,
7340
+ "description": "Current validation status of the certificate\n\n* `pending_validation` - Pending Validation\n* `validation_succeeded` - Validation Succeeded\n* `validation_failed` - Validation Failed"
7341
+ },
7342
+ "validation_record": {
7343
+ "type": "string",
7344
+ "readOnly": true
7345
+ },
7346
+ "expires_at": {
7347
+ "type": "string",
7348
+ "format": "date-time",
7349
+ "readOnly": true,
7350
+ "nullable": true,
7351
+ "title": "Certificate Expiry Date",
7352
+ "description": "Expiry date of the certificate from ACM."
7353
+ },
7354
+ "renewal_status": {
7355
+ "readOnly": true,
7356
+ "nullable": true,
7357
+ "description": "Current status of certificate renewal.\n\n* `PENDING_AUTO_RENEWAL` - Pending Auto Renewal\n* `FAILED` - Failed",
7358
+ "oneOf": [
7359
+ {
7360
+ "$ref": "#/components/schemas/RenewalStatusEnum"
7361
+ },
7362
+ {
7363
+ "$ref": "#/components/schemas/NullEnum"
7364
+ }
7365
+ ]
7366
+ },
7367
+ "renewal_eligibility": {
7368
+ "readOnly": true,
7369
+ "nullable": true,
7370
+ "description": "Whether the certificate is eligible for renewal.\n\n* `ELIGIBLE` - Eligible\n* `INELIGIBLE` - Ineligible",
7371
+ "oneOf": [
7372
+ {
7373
+ "$ref": "#/components/schemas/RenewalEligibilityEnum"
7374
+ },
7375
+ {
7376
+ "$ref": "#/components/schemas/NullEnum"
7377
+ }
7378
+ ]
7379
+ },
7380
+ "targets": {
7381
+ "type": "string",
7382
+ "readOnly": true
7383
+ },
7384
+ "created_by": {
7385
+ "type": "string",
7386
+ "readOnly": true
7387
+ },
7388
+ "created_at": {
7389
+ "type": "string",
7390
+ "format": "date-time",
7391
+ "readOnly": true,
7392
+ "description": "Timestamp in the extended ISO 8601 format for when the object was created."
7393
+ },
7394
+ "is_mrt_managed": {
7395
+ "type": "string",
7396
+ "readOnly": true
7397
+ },
7398
+ "deletion_status": {
7399
+ "allOf": [
7400
+ {
7401
+ "$ref": "#/components/schemas/DeletionStatusEnum"
7402
+ }
7403
+ ],
7404
+ "readOnly": true
5310
7405
  }
5311
7406
  }
5312
7407
  },
@@ -5398,7 +7493,11 @@
5398
7493
  "properties": {
5399
7494
  "node_deprecation_notifications": {
5400
7495
  "type": "boolean",
5401
- "description": "The user's email notification preferences for Node.js runtime's deprecation and retirement."
7496
+ "description": "Receive email notifications about Node.js runtime deprecations"
7497
+ },
7498
+ "custom_domain_certificate_notifications": {
7499
+ "type": "boolean",
7500
+ "description": "Receive email notifications about custom domain certificate changes"
5402
7501
  },
5403
7502
  "created_at": {
5404
7503
  "type": "string",
@@ -5438,14 +7537,21 @@
5438
7537
  "type": "string",
5439
7538
  "description": "* `MOBIFY_STUDIO` - MOBIFY_STUDIO\n* `MOBIFYJS_CLIENT` - MOBIFYJS_CLIENT\n* `MOBIFY_ADAPTIVEJS` - MOBIFY_ADAPTIVEJS\n* `MOBIFY_TAG_BASED_PWA` - MOBIFY_TAG_BASED_PWA\n* `SSR` - SSR"
5440
7539
  },
5441
- "PublishingStatusEnum": {
7540
+ "RenewalEligibilityEnum": {
5442
7541
  "enum": [
5443
- 0,
5444
- 1,
5445
- 2
7542
+ "ELIGIBLE",
7543
+ "INELIGIBLE"
5446
7544
  ],
5447
- "type": "integer",
5448
- "description": "* `0` - Pending\n* `1` - Completed\n* `2` - Failed"
7545
+ "type": "string",
7546
+ "description": "* `ELIGIBLE` - Eligible\n* `INELIGIBLE` - Ineligible"
7547
+ },
7548
+ "RenewalStatusEnum": {
7549
+ "enum": [
7550
+ "PENDING_AUTO_RENEWAL",
7551
+ "FAILED"
7552
+ ],
7553
+ "type": "string",
7554
+ "description": "* `PENDING_AUTO_RENEWAL` - Pending Auto Renewal\n* `FAILED` - Failed"
5449
7555
  },
5450
7556
  "ResourceLimit": {
5451
7557
  "type": "object",
@@ -5462,6 +7568,31 @@
5462
7568
  "used"
5463
7569
  ]
5464
7570
  },
7571
+ "RoleEnum": {
7572
+ "enum": [
7573
+ 0,
7574
+ 1
7575
+ ],
7576
+ "type": "integer",
7577
+ "description": "* `0` - Owner\n* `1` - Member"
7578
+ },
7579
+ "SourceEnum": {
7580
+ "enum": [
7581
+ "ecom",
7582
+ "core",
7583
+ "direct"
7584
+ ],
7585
+ "type": "string",
7586
+ "description": "* `ecom` - ecom\n* `core` - core\n* `direct` - direct"
7587
+ },
7588
+ "SsrArchitectureEnum": {
7589
+ "enum": [
7590
+ "x86",
7591
+ "arm64"
7592
+ ],
7593
+ "type": "string",
7594
+ "description": "* `x86` - x86\n* `arm64` - ARM64"
7595
+ },
5465
7596
  "SsrRegionEnum": {
5466
7597
  "enum": [
5467
7598
  "us-east-1",
@@ -5509,14 +7640,18 @@
5509
7640
  2
5510
7641
  ],
5511
7642
  "type": "integer",
5512
- "description": "* `0` - ok\n* `1` - broken\n* `2` - preparing"
7643
+ "description": "* `0` - Pending\n* `1` - Completed\n* `2` - Failed"
5513
7644
  },
5514
7645
  "UserEmailPreferences": {
5515
7646
  "type": "object",
5516
7647
  "properties": {
5517
7648
  "node_deprecation_notifications": {
5518
7649
  "type": "boolean",
5519
- "description": "The user's email notification preferences for Node.js runtime's deprecation and retirement."
7650
+ "description": "Receive email notifications about Node.js runtime deprecations"
7651
+ },
7652
+ "custom_domain_certificate_notifications": {
7653
+ "type": "boolean",
7654
+ "description": "Receive email notifications about custom domain certificate changes"
5520
7655
  },
5521
7656
  "created_at": {
5522
7657
  "type": "string",
@@ -5531,6 +7666,15 @@
5531
7666
  "description": "Timestamp in the extended ISO 8601 format for when the object was last updated."
5532
7667
  }
5533
7668
  }
7669
+ },
7670
+ "ValidationStatusEnum": {
7671
+ "enum": [
7672
+ "pending_validation",
7673
+ "validation_succeeded",
7674
+ "validation_failed"
7675
+ ],
7676
+ "type": "string",
7677
+ "description": "* `pending_validation` - Pending Validation\n* `validation_succeeded` - Validation Succeeded\n* `validation_failed` - Validation Failed"
5534
7678
  }
5535
7679
  },
5536
7680
  "securitySchemes": {
@@ -5549,7 +7693,7 @@
5549
7693
  },
5550
7694
  "servers": [
5551
7695
  {
5552
- "url": "https://cloud.mobify.com"
7696
+ "url": "https://falcon-cloud-test1.mrt-soak.com"
5553
7697
  }
5554
7698
  ]
5555
- }
7699
+ }