@widgetic/api-sdk 1.0.31 → 1.0.33

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 (308) hide show
  1. package/README.md +4 -0
  2. package/dist/apis/AdminApi.d.ts +30 -46
  3. package/dist/apis/AdminApi.js +53 -102
  4. package/dist/apis/AdminBillingApi.d.ts +2 -2
  5. package/dist/apis/AdminBillingApi.js +2 -2
  6. package/dist/apis/BillingApi.d.ts +44 -1
  7. package/dist/apis/BillingApi.js +127 -0
  8. package/dist/apis/CompositionsApi.d.ts +19 -15
  9. package/dist/apis/CompositionsApi.js +21 -14
  10. package/dist/apis/CreditsApi.d.ts +7 -7
  11. package/dist/apis/CreditsApi.js +5 -5
  12. package/dist/apis/OrganizationsApi.d.ts +35 -7
  13. package/dist/apis/OrganizationsApi.js +86 -6
  14. package/dist/apis/PartnerApi.d.ts +141 -36
  15. package/dist/apis/PartnerApi.js +333 -31
  16. package/dist/apis/PartnerCustomizationsApi.d.ts +4 -4
  17. package/dist/apis/PartnerCustomizationsApi.js +4 -4
  18. package/dist/apis/PartnersApi.d.ts +85 -67
  19. package/dist/apis/PartnersApi.js +198 -119
  20. package/dist/apis/PublicEmbedApi.d.ts +42 -3
  21. package/dist/apis/PublicEmbedApi.js +99 -2
  22. package/dist/apis/SubscriptionsApi.d.ts +2 -2
  23. package/dist/apis/SubscriptionsApi.js +2 -2
  24. package/dist/apis/UploadsApi.d.ts +4 -4
  25. package/dist/apis/UploadsApi.js +4 -4
  26. package/dist/apis/UsersApi.d.ts +4 -4
  27. package/dist/apis/UsersApi.js +4 -4
  28. package/dist/apis/index.d.ts +0 -4
  29. package/dist/apis/index.js +0 -4
  30. package/dist/esm/apis/AdminApi.d.ts +30 -46
  31. package/dist/esm/apis/AdminApi.js +54 -103
  32. package/dist/esm/apis/AdminBillingApi.d.ts +2 -2
  33. package/dist/esm/apis/AdminBillingApi.js +2 -2
  34. package/dist/esm/apis/BillingApi.d.ts +44 -1
  35. package/dist/esm/apis/BillingApi.js +128 -1
  36. package/dist/esm/apis/CompositionsApi.d.ts +19 -15
  37. package/dist/esm/apis/CompositionsApi.js +22 -15
  38. package/dist/esm/apis/CreditsApi.d.ts +7 -7
  39. package/dist/esm/apis/CreditsApi.js +6 -6
  40. package/dist/esm/apis/OrganizationsApi.d.ts +35 -7
  41. package/dist/esm/apis/OrganizationsApi.js +87 -7
  42. package/dist/esm/apis/PartnerApi.d.ts +141 -36
  43. package/dist/esm/apis/PartnerApi.js +334 -32
  44. package/dist/esm/apis/PartnerCustomizationsApi.d.ts +4 -4
  45. package/dist/esm/apis/PartnerCustomizationsApi.js +4 -4
  46. package/dist/esm/apis/PartnersApi.d.ts +85 -67
  47. package/dist/esm/apis/PartnersApi.js +198 -119
  48. package/dist/esm/apis/PublicEmbedApi.d.ts +42 -3
  49. package/dist/esm/apis/PublicEmbedApi.js +100 -3
  50. package/dist/esm/apis/SubscriptionsApi.d.ts +2 -2
  51. package/dist/esm/apis/SubscriptionsApi.js +2 -2
  52. package/dist/esm/apis/UploadsApi.d.ts +4 -4
  53. package/dist/esm/apis/UploadsApi.js +4 -4
  54. package/dist/esm/apis/UsersApi.d.ts +4 -4
  55. package/dist/esm/apis/UsersApi.js +4 -4
  56. package/dist/esm/apis/index.d.ts +0 -4
  57. package/dist/esm/apis/index.js +0 -4
  58. package/dist/esm/models/BillingUsersUserIdStorageCancelPackPostRequest.d.ts +40 -0
  59. package/dist/esm/models/BillingUsersUserIdStorageCancelPackPostRequest.js +43 -0
  60. package/dist/esm/models/BillingUsersUserIdStorageGet200Response.d.ts +39 -0
  61. package/dist/esm/models/BillingUsersUserIdStorageGet200Response.js +44 -0
  62. package/dist/esm/models/BillingUsersUserIdStorageGet200ResponseData.d.ts +33 -0
  63. package/dist/esm/models/BillingUsersUserIdStorageGet200ResponseData.js +42 -0
  64. package/dist/esm/models/Composition.d.ts +12 -0
  65. package/dist/esm/models/Composition.js +2 -0
  66. package/dist/esm/models/CompositionDataSource.d.ts +41 -0
  67. package/dist/esm/models/CompositionDataSource.js +47 -0
  68. package/dist/esm/models/CompositionEntriesReading.d.ts +20 -4
  69. package/dist/esm/models/CompositionEntriesReading.js +3 -0
  70. package/dist/esm/models/CompositionEntryAggregateTally.d.ts +15 -8
  71. package/dist/esm/models/CompositionEntryAggregatesBlock.d.ts +10 -0
  72. package/dist/esm/models/CompositionEntryItem.d.ts +4 -1
  73. package/dist/esm/models/CompositionEntryItemsMeta.d.ts +8 -0
  74. package/dist/esm/models/ConvertSoloToTeams200Response.d.ts +39 -0
  75. package/dist/esm/models/ConvertSoloToTeams200Response.js +44 -0
  76. package/dist/esm/models/CreatePartnerRequest.d.ts +7 -0
  77. package/dist/esm/models/CreatePartnerRequest.js +2 -0
  78. package/dist/esm/models/DeleteCompositionDataSource200Response.d.ts +32 -0
  79. package/dist/esm/models/DeleteCompositionDataSource200Response.js +43 -0
  80. package/dist/esm/models/GetCompositionContentSchema200Response.d.ts +2 -2
  81. package/dist/esm/models/GetOrganizationPricing200ResponseDataStorage.d.ts +3 -2
  82. package/dist/esm/models/GetOrganizationStorageUsage200ResponseDataStorageUsage.d.ts +5 -5
  83. package/dist/esm/models/GetPartnerCreditTransactions200Response.d.ts +39 -0
  84. package/dist/esm/models/GetPartnerCreditTransactions200Response.js +44 -0
  85. package/dist/esm/models/GetPublicCompositionEmbed200Response.d.ts +106 -0
  86. package/dist/esm/models/GetPublicCompositionEmbed200Response.js +67 -0
  87. package/dist/esm/models/GetPublicCompositionEmbed200ResponseDataSource.d.ts +38 -0
  88. package/dist/esm/models/GetPublicCompositionEmbed200ResponseDataSource.js +43 -0
  89. package/dist/esm/models/GetPublicCompositionEmbed200ResponseDirect.d.ts +44 -0
  90. package/dist/esm/models/GetPublicCompositionEmbed200ResponseDirect.js +45 -0
  91. package/dist/esm/models/GetPublicCompositionEmbed403Response.d.ts +51 -0
  92. package/dist/esm/models/GetPublicCompositionEmbed403Response.js +48 -0
  93. package/dist/esm/models/GetPublicCompositionEmbed403ResponseDetails.d.ts +46 -0
  94. package/dist/esm/models/GetPublicCompositionEmbed403ResponseDetails.js +50 -0
  95. package/dist/esm/models/GetPublicCompositionEmbed404Response.d.ts +47 -0
  96. package/dist/esm/models/GetPublicCompositionEmbed404Response.js +51 -0
  97. package/dist/esm/models/GetPublicCompositionEmbed429Response.d.ts +38 -0
  98. package/dist/esm/models/GetPublicCompositionEmbed429Response.js +43 -0
  99. package/dist/esm/models/IssuePartnerInvoiceRequest.d.ts +14 -1
  100. package/dist/esm/models/IssuePartnerInvoiceRequest.js +2 -0
  101. package/dist/esm/models/IssuedPartnerInvoice.d.ts +6 -0
  102. package/dist/esm/models/IssuedPartnerInvoice.js +4 -0
  103. package/dist/esm/models/ManagedUserEntryItem.d.ts +4 -1
  104. package/dist/esm/models/MyPartner.d.ts +7 -0
  105. package/dist/esm/models/MyPartner.js +4 -0
  106. package/dist/esm/models/MyPartners.d.ts +9 -1
  107. package/dist/esm/models/MyPartners.js +6 -1
  108. package/dist/esm/models/OrganizationsOrgIdBillingGet200ResponseData.d.ts +25 -5
  109. package/dist/esm/models/OrganizationsOrgIdBillingGet200ResponseData.js +9 -0
  110. package/dist/esm/models/Partner.d.ts +7 -0
  111. package/dist/esm/models/Partner.js +2 -0
  112. package/dist/esm/models/PartnerActivation.d.ts +1 -1
  113. package/dist/esm/models/PartnerBillingOverviewOperationalCredits.d.ts +0 -14
  114. package/dist/esm/models/PartnerBillingOverviewOperationalCredits.js +0 -4
  115. package/dist/esm/models/PartnerBillingProfile.d.ts +1 -1
  116. package/dist/esm/models/PartnerContract.d.ts +15 -3
  117. package/dist/esm/models/PartnerContract.js +6 -2
  118. package/dist/esm/models/PartnerCustomization.d.ts +15 -3
  119. package/dist/esm/models/PartnerCustomization.js +6 -2
  120. package/dist/esm/models/PartnerDetails.d.ts +7 -0
  121. package/dist/esm/models/PartnerDetails.js +2 -0
  122. package/dist/esm/models/PartnerEntryContextSecret.d.ts +39 -0
  123. package/dist/esm/models/PartnerEntryContextSecret.js +48 -0
  124. package/dist/esm/models/PartnerEntryContextSigning.d.ts +62 -0
  125. package/dist/esm/models/PartnerEntryContextSigning.js +63 -0
  126. package/dist/esm/models/PartnerExtraCreditsInvoice.d.ts +98 -0
  127. package/dist/esm/models/PartnerExtraCreditsInvoice.js +87 -0
  128. package/dist/esm/models/PartnerInvoiceSchedule.d.ts +66 -0
  129. package/dist/esm/models/PartnerInvoiceSchedule.js +67 -0
  130. package/dist/esm/models/PartnerInvoiceScheduleContract.d.ts +68 -0
  131. package/dist/esm/models/PartnerInvoiceScheduleContract.js +67 -0
  132. package/dist/esm/models/PartnerInvoiceScheduleNext.d.ts +94 -0
  133. package/dist/esm/models/PartnerInvoiceScheduleNext.js +91 -0
  134. package/dist/esm/models/PartnerInvoiceScheduleNextPeriod.d.ts +38 -0
  135. package/dist/esm/models/PartnerInvoiceScheduleNextPeriod.js +47 -0
  136. package/dist/esm/models/PartnerInvoiceScheduleOverdue.d.ts +38 -0
  137. package/dist/esm/models/PartnerInvoiceScheduleOverdue.js +47 -0
  138. package/dist/esm/models/PartnerInvoiceSchedulePeriod.d.ts +101 -0
  139. package/dist/esm/models/PartnerInvoiceSchedulePeriod.js +91 -0
  140. package/dist/esm/models/PartnerNotification.d.ts +1 -1
  141. package/dist/esm/models/PartnerNotificationEventType.d.ts +2 -0
  142. package/dist/esm/models/PartnerNotificationEventType.js +2 -0
  143. package/dist/esm/models/PartnerNotificationTestEventRequest.d.ts +33 -0
  144. package/dist/esm/models/PartnerNotificationTestEventRequest.js +44 -0
  145. package/dist/esm/models/PartnerNotificationTestEventResult.d.ts +50 -0
  146. package/dist/esm/models/PartnerNotificationTestEventResult.js +53 -0
  147. package/dist/esm/models/PartnerUpdateResult.d.ts +8 -16
  148. package/dist/esm/models/PartnerUpdateResult.js +2 -5
  149. package/dist/esm/models/PartnerWithWarnings.d.ts +7 -0
  150. package/dist/esm/models/PartnerWithWarnings.js +2 -0
  151. package/dist/esm/models/PersonalExtraStorage.d.ts +92 -0
  152. package/dist/esm/models/PersonalExtraStorage.js +83 -0
  153. package/dist/esm/models/PersonalExtraStorageBlock.d.ts +56 -0
  154. package/dist/esm/models/PersonalExtraStorageBlock.js +57 -0
  155. package/dist/esm/models/PersonalStorage.d.ts +80 -0
  156. package/dist/esm/models/PersonalStorage.js +73 -0
  157. package/dist/esm/models/PersonalStoragePack.d.ts +100 -0
  158. package/dist/esm/models/PersonalStoragePack.js +84 -0
  159. package/dist/esm/models/PostPublicCompositionEmbedStatus200Response.d.ts +39 -0
  160. package/dist/esm/models/PostPublicCompositionEmbedStatus200Response.js +44 -0
  161. package/dist/esm/models/PostPublicCompositionEmbedStatus200ResponseData.d.ts +45 -0
  162. package/dist/esm/models/PostPublicCompositionEmbedStatus200ResponseData.js +51 -0
  163. package/dist/esm/models/PostPublicCompositionEmbedStatus429Response.d.ts +32 -0
  164. package/dist/esm/models/PostPublicCompositionEmbedStatus429Response.js +41 -0
  165. package/dist/esm/models/PostPublicCompositionEmbedStatusRequest.d.ts +32 -0
  166. package/dist/esm/models/PostPublicCompositionEmbedStatusRequest.js +43 -0
  167. package/dist/esm/models/PublicCompositionEntryRequest.d.ts +1 -1
  168. package/dist/esm/models/RequestExtraCredits.d.ts +33 -0
  169. package/dist/esm/models/RequestExtraCredits.js +43 -0
  170. package/dist/esm/models/StorageChange.d.ts +4 -3
  171. package/dist/esm/models/SurfaceConversionResult.d.ts +85 -0
  172. package/dist/esm/models/SurfaceConversionResult.js +76 -0
  173. package/dist/esm/models/SurfaceConversionResultSubscription.d.ts +82 -0
  174. package/dist/esm/models/SurfaceConversionResultSubscription.js +62 -0
  175. package/dist/esm/models/UpdatePartnerCustomizationRequest.d.ts +3 -3
  176. package/dist/esm/models/UpdatePartnerCustomizationRequest.js +2 -2
  177. package/dist/esm/models/UpdatePartnerEntryContextSigningRequest.d.ts +32 -0
  178. package/dist/esm/models/UpdatePartnerEntryContextSigningRequest.js +43 -0
  179. package/dist/esm/models/UpdatePartnerRequest.d.ts +7 -24
  180. package/dist/esm/models/UpdatePartnerRequest.js +2 -8
  181. package/dist/esm/models/index.d.ts +37 -86
  182. package/dist/esm/models/index.js +37 -86
  183. package/dist/models/BillingUsersUserIdStorageCancelPackPostRequest.d.ts +40 -0
  184. package/dist/models/BillingUsersUserIdStorageCancelPackPostRequest.js +50 -0
  185. package/dist/models/BillingUsersUserIdStorageGet200Response.d.ts +39 -0
  186. package/dist/models/BillingUsersUserIdStorageGet200Response.js +51 -0
  187. package/dist/models/BillingUsersUserIdStorageGet200ResponseData.d.ts +33 -0
  188. package/dist/models/BillingUsersUserIdStorageGet200ResponseData.js +49 -0
  189. package/dist/models/Composition.d.ts +12 -0
  190. package/dist/models/Composition.js +2 -0
  191. package/dist/models/CompositionDataSource.d.ts +41 -0
  192. package/dist/models/CompositionDataSource.js +54 -0
  193. package/dist/models/CompositionEntriesReading.d.ts +20 -4
  194. package/dist/models/CompositionEntriesReading.js +3 -0
  195. package/dist/models/CompositionEntryAggregateTally.d.ts +15 -8
  196. package/dist/models/CompositionEntryAggregatesBlock.d.ts +10 -0
  197. package/dist/models/CompositionEntryItem.d.ts +4 -1
  198. package/dist/models/CompositionEntryItemsMeta.d.ts +8 -0
  199. package/dist/models/ConvertSoloToTeams200Response.d.ts +39 -0
  200. package/dist/models/ConvertSoloToTeams200Response.js +51 -0
  201. package/dist/models/CreatePartnerRequest.d.ts +7 -0
  202. package/dist/models/CreatePartnerRequest.js +2 -0
  203. package/dist/models/DeleteCompositionDataSource200Response.d.ts +32 -0
  204. package/dist/models/DeleteCompositionDataSource200Response.js +50 -0
  205. package/dist/models/GetCompositionContentSchema200Response.d.ts +2 -2
  206. package/dist/models/GetOrganizationPricing200ResponseDataStorage.d.ts +3 -2
  207. package/dist/models/GetOrganizationStorageUsage200ResponseDataStorageUsage.d.ts +5 -5
  208. package/dist/models/GetPartnerCreditTransactions200Response.d.ts +39 -0
  209. package/dist/models/GetPartnerCreditTransactions200Response.js +51 -0
  210. package/dist/models/GetPublicCompositionEmbed200Response.d.ts +106 -0
  211. package/dist/models/GetPublicCompositionEmbed200Response.js +74 -0
  212. package/dist/models/GetPublicCompositionEmbed200ResponseDataSource.d.ts +38 -0
  213. package/dist/models/GetPublicCompositionEmbed200ResponseDataSource.js +50 -0
  214. package/dist/models/GetPublicCompositionEmbed200ResponseDirect.d.ts +44 -0
  215. package/dist/models/GetPublicCompositionEmbed200ResponseDirect.js +52 -0
  216. package/dist/models/GetPublicCompositionEmbed403Response.d.ts +51 -0
  217. package/dist/models/GetPublicCompositionEmbed403Response.js +55 -0
  218. package/dist/models/GetPublicCompositionEmbed403ResponseDetails.d.ts +46 -0
  219. package/dist/models/GetPublicCompositionEmbed403ResponseDetails.js +58 -0
  220. package/dist/models/GetPublicCompositionEmbed404Response.d.ts +47 -0
  221. package/dist/models/GetPublicCompositionEmbed404Response.js +59 -0
  222. package/dist/models/GetPublicCompositionEmbed429Response.d.ts +38 -0
  223. package/dist/models/GetPublicCompositionEmbed429Response.js +50 -0
  224. package/dist/models/IssuePartnerInvoiceRequest.d.ts +14 -1
  225. package/dist/models/IssuePartnerInvoiceRequest.js +2 -0
  226. package/dist/models/IssuedPartnerInvoice.d.ts +6 -0
  227. package/dist/models/IssuedPartnerInvoice.js +4 -0
  228. package/dist/models/ManagedUserEntryItem.d.ts +4 -1
  229. package/dist/models/MyPartner.d.ts +7 -0
  230. package/dist/models/MyPartner.js +4 -0
  231. package/dist/models/MyPartners.d.ts +9 -1
  232. package/dist/models/MyPartners.js +6 -1
  233. package/dist/models/OrganizationsOrgIdBillingGet200ResponseData.d.ts +25 -5
  234. package/dist/models/OrganizationsOrgIdBillingGet200ResponseData.js +10 -0
  235. package/dist/models/Partner.d.ts +7 -0
  236. package/dist/models/Partner.js +2 -0
  237. package/dist/models/PartnerActivation.d.ts +1 -1
  238. package/dist/models/PartnerBillingOverviewOperationalCredits.d.ts +0 -14
  239. package/dist/models/PartnerBillingOverviewOperationalCredits.js +0 -4
  240. package/dist/models/PartnerBillingProfile.d.ts +1 -1
  241. package/dist/models/PartnerContract.d.ts +15 -3
  242. package/dist/models/PartnerContract.js +6 -2
  243. package/dist/models/PartnerCustomization.d.ts +15 -3
  244. package/dist/models/PartnerCustomization.js +6 -2
  245. package/dist/models/PartnerDetails.d.ts +7 -0
  246. package/dist/models/PartnerDetails.js +2 -0
  247. package/dist/models/PartnerEntryContextSecret.d.ts +39 -0
  248. package/dist/models/PartnerEntryContextSecret.js +55 -0
  249. package/dist/models/PartnerEntryContextSigning.d.ts +62 -0
  250. package/dist/models/PartnerEntryContextSigning.js +70 -0
  251. package/dist/models/PartnerExtraCreditsInvoice.d.ts +98 -0
  252. package/dist/models/PartnerExtraCreditsInvoice.js +94 -0
  253. package/dist/models/PartnerInvoiceSchedule.d.ts +66 -0
  254. package/dist/models/PartnerInvoiceSchedule.js +74 -0
  255. package/dist/models/PartnerInvoiceScheduleContract.d.ts +68 -0
  256. package/dist/models/PartnerInvoiceScheduleContract.js +74 -0
  257. package/dist/models/PartnerInvoiceScheduleNext.d.ts +94 -0
  258. package/dist/models/PartnerInvoiceScheduleNext.js +99 -0
  259. package/dist/models/PartnerInvoiceScheduleNextPeriod.d.ts +38 -0
  260. package/dist/models/PartnerInvoiceScheduleNextPeriod.js +54 -0
  261. package/dist/models/PartnerInvoiceScheduleOverdue.d.ts +38 -0
  262. package/dist/models/PartnerInvoiceScheduleOverdue.js +54 -0
  263. package/dist/models/PartnerInvoiceSchedulePeriod.d.ts +101 -0
  264. package/dist/models/PartnerInvoiceSchedulePeriod.js +99 -0
  265. package/dist/models/PartnerNotification.d.ts +1 -1
  266. package/dist/models/PartnerNotificationEventType.d.ts +2 -0
  267. package/dist/models/PartnerNotificationEventType.js +2 -0
  268. package/dist/models/PartnerNotificationTestEventRequest.d.ts +33 -0
  269. package/dist/models/PartnerNotificationTestEventRequest.js +51 -0
  270. package/dist/models/PartnerNotificationTestEventResult.d.ts +50 -0
  271. package/dist/models/PartnerNotificationTestEventResult.js +60 -0
  272. package/dist/models/PartnerUpdateResult.d.ts +8 -16
  273. package/dist/models/PartnerUpdateResult.js +2 -5
  274. package/dist/models/PartnerWithWarnings.d.ts +7 -0
  275. package/dist/models/PartnerWithWarnings.js +2 -0
  276. package/dist/models/PersonalExtraStorage.d.ts +92 -0
  277. package/dist/models/PersonalExtraStorage.js +91 -0
  278. package/dist/models/PersonalExtraStorageBlock.d.ts +56 -0
  279. package/dist/models/PersonalExtraStorageBlock.js +65 -0
  280. package/dist/models/PersonalStorage.d.ts +80 -0
  281. package/dist/models/PersonalStorage.js +80 -0
  282. package/dist/models/PersonalStoragePack.d.ts +100 -0
  283. package/dist/models/PersonalStoragePack.js +92 -0
  284. package/dist/models/PostPublicCompositionEmbedStatus200Response.d.ts +39 -0
  285. package/dist/models/PostPublicCompositionEmbedStatus200Response.js +51 -0
  286. package/dist/models/PostPublicCompositionEmbedStatus200ResponseData.d.ts +45 -0
  287. package/dist/models/PostPublicCompositionEmbedStatus200ResponseData.js +59 -0
  288. package/dist/models/PostPublicCompositionEmbedStatus429Response.d.ts +32 -0
  289. package/dist/models/PostPublicCompositionEmbedStatus429Response.js +48 -0
  290. package/dist/models/PostPublicCompositionEmbedStatusRequest.d.ts +32 -0
  291. package/dist/models/PostPublicCompositionEmbedStatusRequest.js +50 -0
  292. package/dist/models/PublicCompositionEntryRequest.d.ts +1 -1
  293. package/dist/models/RequestExtraCredits.d.ts +33 -0
  294. package/dist/models/RequestExtraCredits.js +50 -0
  295. package/dist/models/StorageChange.d.ts +4 -3
  296. package/dist/models/SurfaceConversionResult.d.ts +85 -0
  297. package/dist/models/SurfaceConversionResult.js +84 -0
  298. package/dist/models/SurfaceConversionResultSubscription.d.ts +82 -0
  299. package/dist/models/SurfaceConversionResultSubscription.js +70 -0
  300. package/dist/models/UpdatePartnerCustomizationRequest.d.ts +3 -3
  301. package/dist/models/UpdatePartnerCustomizationRequest.js +2 -2
  302. package/dist/models/UpdatePartnerEntryContextSigningRequest.d.ts +32 -0
  303. package/dist/models/UpdatePartnerEntryContextSigningRequest.js +50 -0
  304. package/dist/models/UpdatePartnerRequest.d.ts +7 -24
  305. package/dist/models/UpdatePartnerRequest.js +2 -8
  306. package/dist/models/index.d.ts +37 -86
  307. package/dist/models/index.js +37 -86
  308. package/package.json +3 -2
@@ -10,24 +10,63 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { PublicCompositionEntryCreated, PublicCompositionEntryRequest } from '../models/index';
13
+ import type { GetPublicCompositionEmbed200Response, PostPublicCompositionEmbedStatus200Response, PostPublicCompositionEmbedStatusRequest, PublicCompositionEntryCreated, PublicCompositionEntryRequest } from '../models/index';
14
14
  export interface CreatePublicCompositionEntryRequest {
15
15
  compositionId: string;
16
16
  table: string;
17
17
  publicCompositionEntryRequest: PublicCompositionEntryRequest;
18
18
  }
19
+ export interface GetPublicCompositionEmbedRequest {
20
+ compositionId: string;
21
+ }
22
+ export interface GetPublicCompositionIframeRequest {
23
+ compositionId: string;
24
+ }
25
+ export interface PostPublicCompositionEmbedStatusOperationRequest {
26
+ postPublicCompositionEmbedStatusRequest: PostPublicCompositionEmbedStatusRequest;
27
+ }
19
28
  /**
20
29
  *
21
30
  */
22
31
  export declare class PublicEmbedApi extends runtime.BaseAPI {
23
32
  /**
24
- * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution but is not authenticated. Request bodies are limited to 16 KB before parsing.
33
+ * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution; it is not authenticated unless the partner signs it (see **Signed context**). Request bodies are limited to 16 KB before parsing. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/entries/{table}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Signed context.** A partner that wants to trust `context` (to bill a customer by it, say) makes a signing secret (`rotatePartnerEntryContextSecret`), and its server signs the context it hands to the embed. The signature travels inside `context` as two reserved keys, `widgetic_exp` (UTC seconds, at most seven days ahead) and `widgetic_sig`. The gateway checks them after the `Origin` and before anything else is judged, stored or announced, and keeps and announces the context WITHOUT them. A context that is not signed as the partner requires is refused with 403 `CONTEXT_SIGNATURE_REQUIRED`, `CONTEXT_SIGNATURE_INVALID` or `CONTEXT_SIGNATURE_EXPIRED`; when the check cannot be made just now the answer is a retryable 503 `CONTEXT_SIGNATURE_UNAVAILABLE`, never an unchecked entry. Until a partner makes a secret nothing changes: the two keys are dropped and the rest is taken as it came. A signature is good until its `widgetic_exp` and may be used again until then, so a partner that must count each submission once keeps a unique value of its own (a `submissionId`, say) in the context. The recipe and a test vector are in the description of `rotatePartnerEntryContextSecret`.
25
34
  * Append a visitor entry through the gateway
26
35
  */
27
36
  createPublicCompositionEntryRaw(requestParameters: CreatePublicCompositionEntryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PublicCompositionEntryCreated>>;
28
37
  /**
29
- * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution but is not authenticated. Request bodies are limited to 16 KB before parsing.
38
+ * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution; it is not authenticated unless the partner signs it (see **Signed context**). Request bodies are limited to 16 KB before parsing. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/entries/{table}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Signed context.** A partner that wants to trust `context` (to bill a customer by it, say) makes a signing secret (`rotatePartnerEntryContextSecret`), and its server signs the context it hands to the embed. The signature travels inside `context` as two reserved keys, `widgetic_exp` (UTC seconds, at most seven days ahead) and `widgetic_sig`. The gateway checks them after the `Origin` and before anything else is judged, stored or announced, and keeps and announces the context WITHOUT them. A context that is not signed as the partner requires is refused with 403 `CONTEXT_SIGNATURE_REQUIRED`, `CONTEXT_SIGNATURE_INVALID` or `CONTEXT_SIGNATURE_EXPIRED`; when the check cannot be made just now the answer is a retryable 503 `CONTEXT_SIGNATURE_UNAVAILABLE`, never an unchecked entry. Until a partner makes a secret nothing changes: the two keys are dropped and the rest is taken as it came. A signature is good until its `widgetic_exp` and may be used again until then, so a partner that must count each submission once keeps a unique value of its own (a `submissionId`, say) in the context. The recipe and a test vector are in the description of `rotatePartnerEntryContextSecret`.
30
39
  * Append a visitor entry through the gateway
31
40
  */
32
41
  createPublicCompositionEntry(requestParameters: CreatePublicCompositionEntryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PublicCompositionEntryCreated>;
42
+ /**
43
+ * Public customer embed lookup. No API key. Used by embed-sdk.js on third-party sites. If the composition\'s owner listed the websites it may appear on (the workspace\'s domain list, or the `allowedDomains` of a partner the owner administers), a request from any other website is refused with 403 `DOMAIN_NOT_ALLOWED`. The website is read from the `Origin` header, or the host of `Referer` when there is no `Origin`; a request that names neither (a server, a tool) is not refused. An owner who listed nothing is not restricted, and a page on the visitor\'s own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed. So is the website where a partner integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), for the widgets of that partner: a partner\'s list never has to name it. The list stops other websites from showing the embed in a visitor\'s browser; it does not hide the published content from someone who holds the composition ID. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** 500 calls for each visitor address and browser in one counting window, shared with the frame and the status routes. Over it the answer is 429 `RATE_LIMITED` with a `Retry-After` header.
44
+ * Resolve a composition UUID to a published widget URL
45
+ */
46
+ getPublicCompositionEmbedRaw(requestParameters: GetPublicCompositionEmbedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPublicCompositionEmbed200Response>>;
47
+ /**
48
+ * Public customer embed lookup. No API key. Used by embed-sdk.js on third-party sites. If the composition\'s owner listed the websites it may appear on (the workspace\'s domain list, or the `allowedDomains` of a partner the owner administers), a request from any other website is refused with 403 `DOMAIN_NOT_ALLOWED`. The website is read from the `Origin` header, or the host of `Referer` when there is no `Origin`; a request that names neither (a server, a tool) is not refused. An owner who listed nothing is not restricted, and a page on the visitor\'s own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed. So is the website where a partner integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), for the widgets of that partner: a partner\'s list never has to name it. The list stops other websites from showing the embed in a visitor\'s browser; it does not hide the published content from someone who holds the composition ID. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** 500 calls for each visitor address and browser in one counting window, shared with the frame and the status routes. Over it the answer is 429 `RATE_LIMITED` with a `Retry-After` header.
49
+ * Resolve a composition UUID to a published widget URL
50
+ */
51
+ getPublicCompositionEmbed(requestParameters: GetPublicCompositionEmbedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPublicCompositionEmbed200Response>;
52
+ /**
53
+ * Public HTML wrapper with an inner published artifact iframe. No API key or SDK required. If the composition\'s owner listed the websites it may appear on, the page is sent with `Content-Security-Policy: frame-ancestors` naming those websites (and Widgetic\'s own, and the website where the partner the owner administers integrates Widgetic, with its subdomains), so a browser refuses to show it inside any other website whatever `Referer` policy that website uses. Opening the address directly still works. An owner who listed nothing is not restricted. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/frame`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag.
54
+ * Embed a published composition with its saved values
55
+ */
56
+ getPublicCompositionIframeRaw(requestParameters: GetPublicCompositionIframeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>>;
57
+ /**
58
+ * Public HTML wrapper with an inner published artifact iframe. No API key or SDK required. If the composition\'s owner listed the websites it may appear on, the page is sent with `Content-Security-Policy: frame-ancestors` naming those websites (and Widgetic\'s own, and the website where the partner the owner administers integrates Widgetic, with its subdomains), so a browser refuses to show it inside any other website whatever `Referer` policy that website uses. Opening the address directly still works. An owner who listed nothing is not restricted. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/frame`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag.
59
+ * Embed a published composition with its saved values
60
+ */
61
+ getPublicCompositionIframe(requestParameters: GetPublicCompositionIframeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string>;
62
+ /**
63
+ * Public batch health check for embed-sdk.js. No API key. Uses the same serving gate and domain policy as `GET /embed/compositions/{compositionId}`: the caller\'s website is read from `Origin`, or the host of `Referer` when there is no `Origin`. A request that names neither (a server or tool) is not refused for domain reasons. **Address.** `https://api.widgetic.com/embed/compositions/status`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** The route counts against the same limit as the lookup and the frame routes: 500 calls for each visitor address and browser in one counting window. A call is ONE hit whatever the number of `ids` it carries (up to 100), so a server that checks many compositions spends one call for each hundred of them. A visitor who is over the limit gets 429 `RATE_LIMITED` for the WHOLE call, with a `Retry-After` header and no state for any id: there is no per-composition rate-limit state in the answer.
64
+ * Batch-check whether compositions are currently served for embed
65
+ */
66
+ postPublicCompositionEmbedStatusRaw(requestParameters: PostPublicCompositionEmbedStatusOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PostPublicCompositionEmbedStatus200Response>>;
67
+ /**
68
+ * Public batch health check for embed-sdk.js. No API key. Uses the same serving gate and domain policy as `GET /embed/compositions/{compositionId}`: the caller\'s website is read from `Origin`, or the host of `Referer` when there is no `Origin`. A request that names neither (a server or tool) is not refused for domain reasons. **Address.** `https://api.widgetic.com/embed/compositions/status`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** The route counts against the same limit as the lookup and the frame routes: 500 calls for each visitor address and browser in one counting window. A call is ONE hit whatever the number of `ids` it carries (up to 100), so a server that checks many compositions spends one call for each hundred of them. A visitor who is over the limit gets 429 `RATE_LIMITED` for the WHOLE call, with a `Retry-After` header and no state for any id: there is no per-composition rate-limit state in the answer.
69
+ * Batch-check whether compositions are currently served for embed
70
+ */
71
+ postPublicCompositionEmbedStatus(requestParameters: PostPublicCompositionEmbedStatusOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostPublicCompositionEmbedStatus200Response>;
33
72
  }
@@ -21,13 +21,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
21
21
  });
22
22
  };
23
23
  import * as runtime from '../runtime.js';
24
- import { PublicCompositionEntryCreatedFromJSON, PublicCompositionEntryRequestToJSON, } from '../models/index.js';
24
+ import { GetPublicCompositionEmbed200ResponseFromJSON, PostPublicCompositionEmbedStatus200ResponseFromJSON, PostPublicCompositionEmbedStatusRequestToJSON, PublicCompositionEntryCreatedFromJSON, PublicCompositionEntryRequestToJSON, } from '../models/index.js';
25
25
  /**
26
26
  *
27
27
  */
28
28
  export class PublicEmbedApi extends runtime.BaseAPI {
29
29
  /**
30
- * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution but is not authenticated. Request bodies are limited to 16 KB before parsing.
30
+ * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution; it is not authenticated unless the partner signs it (see **Signed context**). Request bodies are limited to 16 KB before parsing. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/entries/{table}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Signed context.** A partner that wants to trust `context` (to bill a customer by it, say) makes a signing secret (`rotatePartnerEntryContextSecret`), and its server signs the context it hands to the embed. The signature travels inside `context` as two reserved keys, `widgetic_exp` (UTC seconds, at most seven days ahead) and `widgetic_sig`. The gateway checks them after the `Origin` and before anything else is judged, stored or announced, and keeps and announces the context WITHOUT them. A context that is not signed as the partner requires is refused with 403 `CONTEXT_SIGNATURE_REQUIRED`, `CONTEXT_SIGNATURE_INVALID` or `CONTEXT_SIGNATURE_EXPIRED`; when the check cannot be made just now the answer is a retryable 503 `CONTEXT_SIGNATURE_UNAVAILABLE`, never an unchecked entry. Until a partner makes a secret nothing changes: the two keys are dropped and the rest is taken as it came. A signature is good until its `widgetic_exp` and may be used again until then, so a partner that must count each submission once keeps a unique value of its own (a `submissionId`, say) in the context. The recipe and a test vector are in the description of `rotatePartnerEntryContextSecret`.
31
31
  * Append a visitor entry through the gateway
32
32
  */
33
33
  createPublicCompositionEntryRaw(requestParameters, initOverrides) {
@@ -55,7 +55,7 @@ export class PublicEmbedApi extends runtime.BaseAPI {
55
55
  });
56
56
  }
57
57
  /**
58
- * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution but is not authenticated. Request bodies are limited to 16 KB before parsing.
58
+ * Public append-only write into a published composition database. No API key. The browser must send a permitted `Origin` header (the artifact iframe origin or a website the owner allowed). Host `context` is stored for partner attribution; it is not authenticated unless the partner signs it (see **Signed context**). Request bodies are limited to 16 KB before parsing. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/entries/{table}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Signed context.** A partner that wants to trust `context` (to bill a customer by it, say) makes a signing secret (`rotatePartnerEntryContextSecret`), and its server signs the context it hands to the embed. The signature travels inside `context` as two reserved keys, `widgetic_exp` (UTC seconds, at most seven days ahead) and `widgetic_sig`. The gateway checks them after the `Origin` and before anything else is judged, stored or announced, and keeps and announces the context WITHOUT them. A context that is not signed as the partner requires is refused with 403 `CONTEXT_SIGNATURE_REQUIRED`, `CONTEXT_SIGNATURE_INVALID` or `CONTEXT_SIGNATURE_EXPIRED`; when the check cannot be made just now the answer is a retryable 503 `CONTEXT_SIGNATURE_UNAVAILABLE`, never an unchecked entry. Until a partner makes a secret nothing changes: the two keys are dropped and the rest is taken as it came. A signature is good until its `widgetic_exp` and may be used again until then, so a partner that must count each submission once keeps a unique value of its own (a `submissionId`, say) in the context. The recipe and a test vector are in the description of `rotatePartnerEntryContextSecret`.
59
59
  * Append a visitor entry through the gateway
60
60
  */
61
61
  createPublicCompositionEntry(requestParameters, initOverrides) {
@@ -64,4 +64,101 @@ export class PublicEmbedApi extends runtime.BaseAPI {
64
64
  return yield response.value();
65
65
  });
66
66
  }
67
+ /**
68
+ * Public customer embed lookup. No API key. Used by embed-sdk.js on third-party sites. If the composition\'s owner listed the websites it may appear on (the workspace\'s domain list, or the `allowedDomains` of a partner the owner administers), a request from any other website is refused with 403 `DOMAIN_NOT_ALLOWED`. The website is read from the `Origin` header, or the host of `Referer` when there is no `Origin`; a request that names neither (a server, a tool) is not refused. An owner who listed nothing is not restricted, and a page on the visitor\'s own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed. So is the website where a partner integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), for the widgets of that partner: a partner\'s list never has to name it. The list stops other websites from showing the embed in a visitor\'s browser; it does not hide the published content from someone who holds the composition ID. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** 500 calls for each visitor address and browser in one counting window, shared with the frame and the status routes. Over it the answer is 429 `RATE_LIMITED` with a `Retry-After` header.
69
+ * Resolve a composition UUID to a published widget URL
70
+ */
71
+ getPublicCompositionEmbedRaw(requestParameters, initOverrides) {
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ if (requestParameters['compositionId'] == null) {
74
+ throw new runtime.RequiredError('compositionId', 'Required parameter "compositionId" was null or undefined when calling getPublicCompositionEmbed().');
75
+ }
76
+ const queryParameters = {};
77
+ const headerParameters = {};
78
+ const response = yield this.request({
79
+ path: `/embed/compositions/{compositionId}`.replace(`{${"compositionId"}}`, encodeURIComponent(String(requestParameters['compositionId']))),
80
+ method: 'GET',
81
+ headers: headerParameters,
82
+ query: queryParameters,
83
+ }, initOverrides);
84
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPublicCompositionEmbed200ResponseFromJSON(jsonValue));
85
+ });
86
+ }
87
+ /**
88
+ * Public customer embed lookup. No API key. Used by embed-sdk.js on third-party sites. If the composition\'s owner listed the websites it may appear on (the workspace\'s domain list, or the `allowedDomains` of a partner the owner administers), a request from any other website is refused with 403 `DOMAIN_NOT_ALLOWED`. The website is read from the `Origin` header, or the host of `Referer` when there is no `Origin`; a request that names neither (a server, a tool) is not refused. An owner who listed nothing is not restricted, and a page on the visitor\'s own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed. So is the website where a partner integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), for the widgets of that partner: a partner\'s list never has to name it. The list stops other websites from showing the embed in a visitor\'s browser; it does not hide the published content from someone who holds the composition ID. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** 500 calls for each visitor address and browser in one counting window, shared with the frame and the status routes. Over it the answer is 429 `RATE_LIMITED` with a `Retry-After` header.
89
+ * Resolve a composition UUID to a published widget URL
90
+ */
91
+ getPublicCompositionEmbed(requestParameters, initOverrides) {
92
+ return __awaiter(this, void 0, void 0, function* () {
93
+ const response = yield this.getPublicCompositionEmbedRaw(requestParameters, initOverrides);
94
+ return yield response.value();
95
+ });
96
+ }
97
+ /**
98
+ * Public HTML wrapper with an inner published artifact iframe. No API key or SDK required. If the composition\'s owner listed the websites it may appear on, the page is sent with `Content-Security-Policy: frame-ancestors` naming those websites (and Widgetic\'s own, and the website where the partner the owner administers integrates Widgetic, with its subdomains), so a browser refuses to show it inside any other website whatever `Referer` policy that website uses. Opening the address directly still works. An owner who listed nothing is not restricted. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/frame`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag.
99
+ * Embed a published composition with its saved values
100
+ */
101
+ getPublicCompositionIframeRaw(requestParameters, initOverrides) {
102
+ return __awaiter(this, void 0, void 0, function* () {
103
+ if (requestParameters['compositionId'] == null) {
104
+ throw new runtime.RequiredError('compositionId', 'Required parameter "compositionId" was null or undefined when calling getPublicCompositionIframe().');
105
+ }
106
+ const queryParameters = {};
107
+ const headerParameters = {};
108
+ const response = yield this.request({
109
+ path: `/embed/compositions/{compositionId}/frame`.replace(`{${"compositionId"}}`, encodeURIComponent(String(requestParameters['compositionId']))),
110
+ method: 'GET',
111
+ headers: headerParameters,
112
+ query: queryParameters,
113
+ }, initOverrides);
114
+ if (this.isJsonMime(response.headers.get('content-type'))) {
115
+ return new runtime.JSONApiResponse(response);
116
+ }
117
+ else {
118
+ return new runtime.TextApiResponse(response);
119
+ }
120
+ });
121
+ }
122
+ /**
123
+ * Public HTML wrapper with an inner published artifact iframe. No API key or SDK required. If the composition\'s owner listed the websites it may appear on, the page is sent with `Content-Security-Policy: frame-ancestors` naming those websites (and Widgetic\'s own, and the website where the partner the owner administers integrates Widgetic, with its subdomains), so a browser refuses to show it inside any other website whatever `Referer` policy that website uses. Opening the address directly still works. An owner who listed nothing is not restricted. **Address.** `https://api.widgetic.com/embed/compositions/{compositionId}/frame`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag.
124
+ * Embed a published composition with its saved values
125
+ */
126
+ getPublicCompositionIframe(requestParameters, initOverrides) {
127
+ return __awaiter(this, void 0, void 0, function* () {
128
+ const response = yield this.getPublicCompositionIframeRaw(requestParameters, initOverrides);
129
+ return yield response.value();
130
+ });
131
+ }
132
+ /**
133
+ * Public batch health check for embed-sdk.js. No API key. Uses the same serving gate and domain policy as `GET /embed/compositions/{compositionId}`: the caller\'s website is read from `Origin`, or the host of `Referer` when there is no `Origin`. A request that names neither (a server or tool) is not refused for domain reasons. **Address.** `https://api.widgetic.com/embed/compositions/status`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** The route counts against the same limit as the lookup and the frame routes: 500 calls for each visitor address and browser in one counting window. A call is ONE hit whatever the number of `ids` it carries (up to 100), so a server that checks many compositions spends one call for each hundred of them. A visitor who is over the limit gets 429 `RATE_LIMITED` for the WHOLE call, with a `Retry-After` header and no state for any id: there is no per-composition rate-limit state in the answer.
134
+ * Batch-check whether compositions are currently served for embed
135
+ */
136
+ postPublicCompositionEmbedStatusRaw(requestParameters, initOverrides) {
137
+ return __awaiter(this, void 0, void 0, function* () {
138
+ if (requestParameters['postPublicCompositionEmbedStatusRequest'] == null) {
139
+ throw new runtime.RequiredError('postPublicCompositionEmbedStatusRequest', 'Required parameter "postPublicCompositionEmbedStatusRequest" was null or undefined when calling postPublicCompositionEmbedStatus().');
140
+ }
141
+ const queryParameters = {};
142
+ const headerParameters = {};
143
+ headerParameters['Content-Type'] = 'application/json';
144
+ const response = yield this.request({
145
+ path: `/embed/compositions/status`,
146
+ method: 'POST',
147
+ headers: headerParameters,
148
+ query: queryParameters,
149
+ body: PostPublicCompositionEmbedStatusRequestToJSON(requestParameters['postPublicCompositionEmbedStatusRequest']),
150
+ }, initOverrides);
151
+ return new runtime.JSONApiResponse(response, (jsonValue) => PostPublicCompositionEmbedStatus200ResponseFromJSON(jsonValue));
152
+ });
153
+ }
154
+ /**
155
+ * Public batch health check for embed-sdk.js. No API key. Uses the same serving gate and domain policy as `GET /embed/compositions/{compositionId}`: the caller\'s website is read from `Origin`, or the host of `Referer` when there is no `Origin`. A request that names neither (a server or tool) is not refused for domain reasons. **Address.** `https://api.widgetic.com/embed/compositions/status`: the root of the API host, NOT under `/v1`. A client generated from this description for `https://api.widgetic.com/v1` must be given the base address `https://api.widgetic.com` for the calls of the `Public Embed` tag. **Limit.** The route counts against the same limit as the lookup and the frame routes: 500 calls for each visitor address and browser in one counting window. A call is ONE hit whatever the number of `ids` it carries (up to 100), so a server that checks many compositions spends one call for each hundred of them. A visitor who is over the limit gets 429 `RATE_LIMITED` for the WHOLE call, with a `Retry-After` header and no state for any id: there is no per-composition rate-limit state in the answer.
156
+ * Batch-check whether compositions are currently served for embed
157
+ */
158
+ postPublicCompositionEmbedStatus(requestParameters, initOverrides) {
159
+ return __awaiter(this, void 0, void 0, function* () {
160
+ const response = yield this.postPublicCompositionEmbedStatusRaw(requestParameters, initOverrides);
161
+ return yield response.value();
162
+ });
163
+ }
67
164
  }
@@ -120,12 +120,12 @@ export declare class SubscriptionsApi extends runtime.BaseAPI {
120
120
  */
121
121
  getSubscriptionsByUserId(requestParameters: GetSubscriptionsByUserIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<Subscription>>;
122
122
  /**
123
- * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Admin only.
123
+ * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Extra storage is not a reason to refuse: the storage the subscription bills stays on it at the same price (only the seats are repriced), and the storage rows the leaving holder had are handed to the arriving one, so a team\'s packs become a person\'s and back. Admin only.
124
124
  * Move a subscription between the personal and organization surfaces
125
125
  */
126
126
  moveSubscriptionSurfaceRaw(requestParameters: MoveSubscriptionSurfaceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
127
127
  /**
128
- * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Admin only.
128
+ * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Extra storage is not a reason to refuse: the storage the subscription bills stays on it at the same price (only the seats are repriced), and the storage rows the leaving holder had are handed to the arriving one, so a team\'s packs become a person\'s and back. Admin only.
129
129
  * Move a subscription between the personal and organization surfaces
130
130
  */
131
131
  moveSubscriptionSurface(requestParameters: MoveSubscriptionSurfaceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
@@ -271,7 +271,7 @@ export class SubscriptionsApi extends runtime.BaseAPI {
271
271
  });
272
272
  }
273
273
  /**
274
- * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Admin only.
274
+ * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Extra storage is not a reason to refuse: the storage the subscription bills stays on it at the same price (only the seats are repriced), and the storage rows the leaving holder had are handed to the arriving one, so a team\'s packs become a person\'s and back. Admin only.
275
275
  * Move a subscription between the personal and organization surfaces
276
276
  */
277
277
  moveSubscriptionSurfaceRaw(requestParameters, initOverrides) {
@@ -306,7 +306,7 @@ export class SubscriptionsApi extends runtime.BaseAPI {
306
306
  });
307
307
  }
308
308
  /**
309
- * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Admin only.
309
+ * Rewrites the subscription onto the target surface: the scope columns and the plan are updated together, the Stripe subscription is repriced to the target plan first (so a refusal changes nothing), the source plan\'s entitlements and the allowance it granted are retired, and the target plan\'s are granted — for an organization target, to each of its billable members. Extra storage is not a reason to refuse: the storage the subscription bills stays on it at the same price (only the seats are repriced), and the storage rows the leaving holder had are handed to the arriving one, so a team\'s packs become a person\'s and back. Admin only.
310
310
  * Move a subscription between the personal and organization surfaces
311
311
  */
312
312
  moveSubscriptionSurface(requestParameters, initOverrides) {
@@ -77,22 +77,22 @@ export declare class UploadsApi extends runtime.BaseAPI {
77
77
  */
78
78
  uploadsLimitsGet(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UploadLimits>;
79
79
  /**
80
- * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the account\'s storage allowance, and a full allowance is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional. A partner\'s own uploads (with its API key) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
80
+ * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the storage of the workspace it is uploaded in, and a full workspace is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. For a person signed in on widgetic.com that is the workspace they are currently working in: inside a team, the team\'s shared storage; inside their own workspace, their own allowance. An organization API key, and a Shopify store\'s session, always work in that team\'s shared storage. A personal API key or an SDK token always uses the account\'s own allowance. The two never add up and one never lends room to the other. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. When the full storage is a Shopify store\'s team\'s, extra storage cannot be added through Shopify yet, so the message ends by saying so and what to do instead: delete files, or contact support. On a Solo plan it names the Teams plan (which holds more) and `error.details.planPageUrl` is the address of the plan page on Shopify. `error.suggestedAction` says the same in a few words, instead of the usual \"upgrade your storage plan\". Any other team, and a person\'s own workspace, get the shorter message. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional, and it does not depend on how the file arrives. A partner\'s own uploads (with its API key, an SDK token, or from the Widgetic website, the resumable route and the media library alike) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
81
81
  * Upload a file
82
82
  */
83
83
  uploadsPostRaw(requestParameters: UploadsPost0Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Upload>>;
84
84
  /**
85
- * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the account\'s storage allowance, and a full allowance is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional. A partner\'s own uploads (with its API key) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
85
+ * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the storage of the workspace it is uploaded in, and a full workspace is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. For a person signed in on widgetic.com that is the workspace they are currently working in: inside a team, the team\'s shared storage; inside their own workspace, their own allowance. An organization API key, and a Shopify store\'s session, always work in that team\'s shared storage. A personal API key or an SDK token always uses the account\'s own allowance. The two never add up and one never lends room to the other. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. When the full storage is a Shopify store\'s team\'s, extra storage cannot be added through Shopify yet, so the message ends by saying so and what to do instead: delete files, or contact support. On a Solo plan it names the Teams plan (which holds more) and `error.details.planPageUrl` is the address of the plan page on Shopify. `error.suggestedAction` says the same in a few words, instead of the usual \"upgrade your storage plan\". Any other team, and a person\'s own workspace, get the shorter message. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional, and it does not depend on how the file arrives. A partner\'s own uploads (with its API key, an SDK token, or from the Widgetic website, the resumable route and the media library alike) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
86
86
  * Upload a file
87
87
  */
88
88
  uploadsPost(requestParameters: UploadsPost0Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Upload>;
89
89
  /**
90
- * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. This call stores the finished file: it counts against the account\'s storage allowance only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused or not yet activated cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`).
90
+ * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. The upload is for the workspace the person was working in when it was declared: inside a team, the team\'s shared storage; inside their own workspace, their own allowance (a Shopify store\'s session always works in the store\'s team). Declaring it checks that the file fits that space right now (a team\'s space never borrows from the person\'s own, nor the other way round), and the workspace is kept with the upload. A person who has left the team by the time the file is stored gets it stored in their own space instead, never the team\'s. This call stores the finished file: it counts against the storage of that workspace only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused, not yet activated or behind on a payment cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`, `PARTNER_PAYMENT_ARREARS`). An account that administers a partner keeps the finished file in the partner\'s own storage destination (`setPartnerStorageDestination`), never in Widgetic\'s: the pieces wait in Widgetic\'s temporary storage and are removed when this call has written the file to the partner\'s bucket, and the file takes none of the allowance (declaring it checks no room for it either). A partner with no destination cannot start a resumable upload (the declaring `POST /uploads/tus` answers 409 with a line of text, before a byte is sent), and one that removed it since cannot complete one (`PARTNER_STORAGE_REQUIRED`).
91
91
  * Finish a resumable upload — store the file and return it
92
92
  */
93
93
  uploadsTusIdCompletePostRaw(requestParameters: UploadsTusIdCompletePostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Upload>>;
94
94
  /**
95
- * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. This call stores the finished file: it counts against the account\'s storage allowance only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused or not yet activated cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`).
95
+ * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. The upload is for the workspace the person was working in when it was declared: inside a team, the team\'s shared storage; inside their own workspace, their own allowance (a Shopify store\'s session always works in the store\'s team). Declaring it checks that the file fits that space right now (a team\'s space never borrows from the person\'s own, nor the other way round), and the workspace is kept with the upload. A person who has left the team by the time the file is stored gets it stored in their own space instead, never the team\'s. This call stores the finished file: it counts against the storage of that workspace only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused, not yet activated or behind on a payment cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`, `PARTNER_PAYMENT_ARREARS`). An account that administers a partner keeps the finished file in the partner\'s own storage destination (`setPartnerStorageDestination`), never in Widgetic\'s: the pieces wait in Widgetic\'s temporary storage and are removed when this call has written the file to the partner\'s bucket, and the file takes none of the allowance (declaring it checks no room for it either). A partner with no destination cannot start a resumable upload (the declaring `POST /uploads/tus` answers 409 with a line of text, before a byte is sent), and one that removed it since cannot complete one (`PARTNER_STORAGE_REQUIRED`).
96
96
  * Finish a resumable upload — store the file and return it
97
97
  */
98
98
  uploadsTusIdCompletePost(requestParameters: UploadsTusIdCompletePostRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Upload>;
@@ -178,7 +178,7 @@ export class UploadsApi extends runtime.BaseAPI {
178
178
  });
179
179
  }
180
180
  /**
181
- * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the account\'s storage allowance, and a full allowance is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional. A partner\'s own uploads (with its API key) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
181
+ * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the storage of the workspace it is uploaded in, and a full workspace is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. For a person signed in on widgetic.com that is the workspace they are currently working in: inside a team, the team\'s shared storage; inside their own workspace, their own allowance. An organization API key, and a Shopify store\'s session, always work in that team\'s shared storage. A personal API key or an SDK token always uses the account\'s own allowance. The two never add up and one never lends room to the other. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. When the full storage is a Shopify store\'s team\'s, extra storage cannot be added through Shopify yet, so the message ends by saying so and what to do instead: delete files, or contact support. On a Solo plan it names the Teams plan (which holds more) and `error.details.planPageUrl` is the address of the plan page on Shopify. `error.suggestedAction` says the same in a few words, instead of the usual \"upgrade your storage plan\". Any other team, and a person\'s own workspace, get the shorter message. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional, and it does not depend on how the file arrives. A partner\'s own uploads (with its API key, an SDK token, or from the Widgetic website, the resumable route and the media library alike) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
182
182
  * Upload a file
183
183
  */
184
184
  uploadsPostRaw(requestParameters, initOverrides) {
@@ -236,7 +236,7 @@ export class UploadsApi extends runtime.BaseAPI {
236
236
  });
237
237
  }
238
238
  /**
239
- * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the account\'s storage allowance, and a full allowance is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional. A partner\'s own uploads (with its API key) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
239
+ * Stores one file for the account and returns its public address. This is how a user\'s own images, video and PDFs reach a widget\'s content. Send a `multipart/form-data` request with the file in the field named `file`. The file counts against the storage of the workspace it is uploaded in, and a full workspace is refused with 413 and `QUOTA_STORAGE_EXCEEDED`. For a person signed in on widgetic.com that is the workspace they are currently working in: inside a team, the team\'s shared storage; inside their own workspace, their own allowance. An organization API key, and a Shopify store\'s session, always work in that team\'s shared storage. A personal API key or an SDK token always uses the account\'s own allowance. The two never add up and one never lends room to the other. A file over the size limit is refused with 413 and `UPLOAD_TOO_LARGE`, and a type that is not accepted with 415 and `UPLOAD_UNSUPPORTED_TYPE`; `uploadsLimitsGet` lists the size limit and the accepted types. When the full storage is a Shopify store\'s team\'s, extra storage cannot be added through Shopify yet, so the message ends by saying so and what to do instead: delete files, or contact support. On a Solo plan it names the Teams plan (which holds more) and `error.details.planPageUrl` is the address of the plan page on Shopify. `error.suggestedAction` says the same in a few words, instead of the usual \"upgrade your storage plan\". Any other team, and a person\'s own workspace, get the shorter message. To upload the file for one of your managed users, send `managed_user_id` (Widgetic\'s id for the user) or `managed_user_external_id` (your own identifier for the user), not both. The file stays in your account and counts against its allowance; the tag lets you list one user\'s files with `uploadsGet`. The managed user must be yours and active: one that is not yours, or does not exist, is refused with 404 and `MANAGED_USER_NOT_FOUND`, and one that is switched off with 409 and `MANAGED_USER_INACTIVE`, before the file is stored. The tag is set here and does not change afterwards. Called with an editor session (`createManagedUserEditorSession`), the file is always filed for the session\'s own managed user and is always media for widget content: naming another managed user is refused with 403 and `MANAGED_USER_SESSION_MISMATCH`, and `context_type`, `source`, `widget_id` and `conversation_id` are ignored. A full storage allowance is refused with the same 413 and `QUOTA_STORAGE_EXCEEDED`, but the message only says that it is not available right now (not how much is stored: that is the partner\'s business) and `error.details.limit` is `storage`. An account that administers a partner with a storage destination (`setPartnerStorageDestination`) has its files stored in the partner\'s own bucket instead. Such a file takes none of the allowance, its `url` is served from the partner\'s public address, and its `storage_key` is the key in the partner\'s bucket. The file is never stored with Widgetic instead: when the destination cannot be used the upload is refused with 503 and `STORAGE_DESTINATION_UNAVAILABLE`, and when the partner\'s storage rejects the file with 502 and `STORAGE_DESTINATION_WRITE_FAILED`. Partner storage is not optional, and it does not depend on how the file arrives. A partner\'s own uploads (with its API key, an SDK token, or from the Widgetic website, the resumable route and the media library alike) and the uploads of its customers\' editor sessions are kept in the partner\'s own storage or not at all, so a partner with no destination (or one that removed it after the session was made) has them refused with 409 and `PARTNER_STORAGE_REQUIRED`; they are never stored with Widgetic. An editor session\'s browser is only told that the feature is not available right now.
240
240
  * Upload a file
241
241
  */
242
242
  uploadsPost(requestParameters, initOverrides) {
@@ -246,7 +246,7 @@ export class UploadsApi extends runtime.BaseAPI {
246
246
  });
247
247
  }
248
248
  /**
249
- * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. This call stores the finished file: it counts against the account\'s storage allowance only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused or not yet activated cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`).
249
+ * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. The upload is for the workspace the person was working in when it was declared: inside a team, the team\'s shared storage; inside their own workspace, their own allowance (a Shopify store\'s session always works in the store\'s team). Declaring it checks that the file fits that space right now (a team\'s space never borrows from the person\'s own, nor the other way round), and the workspace is kept with the upload. A person who has left the team by the time the file is stored gets it stored in their own space instead, never the team\'s. This call stores the finished file: it counts against the storage of that workspace only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused, not yet activated or behind on a payment cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`, `PARTNER_PAYMENT_ARREARS`). An account that administers a partner keeps the finished file in the partner\'s own storage destination (`setPartnerStorageDestination`), never in Widgetic\'s: the pieces wait in Widgetic\'s temporary storage and are removed when this call has written the file to the partner\'s bucket, and the file takes none of the allowance (declaring it checks no room for it either). A partner with no destination cannot start a resumable upload (the declaring `POST /uploads/tus` answers 409 with a line of text, before a byte is sent), and one that removed it since cannot complete one (`PARTNER_STORAGE_REQUIRED`).
250
250
  * Finish a resumable upload — store the file and return it
251
251
  */
252
252
  uploadsTusIdCompletePostRaw(requestParameters, initOverrides) {
@@ -266,7 +266,7 @@ export class UploadsApi extends runtime.BaseAPI {
266
266
  });
267
267
  }
268
268
  /**
269
- * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. This call stores the finished file: it counts against the account\'s storage allowance only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused or not yet activated cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`).
269
+ * Resumable uploads carry a file of up to 250 MB (the limit `tus_max_bytes` of `uploadsLimitsGet`, the same for every account) in pieces that can be resumed after a dropped connection, or after the server was restarted: the pieces wait in shared storage, not on one server. They follow the [tus protocol](https://tus.io): `POST /uploads/tus` declares the file (`Upload-Length` and the `Upload-Metadata` keys `filename`, `filetype` and, optionally, `context_type`, `source`, `widget_id`, `conversation_id` and, to file the upload under one of a partner\'s managed users, `managed_user_id` or `managed_user_external_id`), `PATCH` sends the bytes, `HEAD` says how far a client got. They need a signed-in session; an API key uses `uploadsPost`. A partner files an upload under one of its managed users with `managed_user_id` (Widgetic\'s id) or `managed_user_external_id` (the partner\'s own id for the user), never both: the same two fields, with the same spelling, as the form fields of `uploadsPost`. The managed user is looked up among the signed-in account\'s own when the upload is declared, so a wrong one is refused before any byte is sent (the declaring `POST /uploads/tus` answers 400, 404 or 409 with a line of text), and is looked up again here, when the file is stored. The stored file then carries the managed user (`managedUserId`), is found by the `managedUserId` filter of `uploadsGet`, and is counted for that user by `getPartnerStorageUsage`. Without either key the file is the account\'s own. The upload is for the workspace the person was working in when it was declared: inside a team, the team\'s shared storage; inside their own workspace, their own allowance (a Shopify store\'s session always works in the store\'s team). Declaring it checks that the file fits that space right now (a team\'s space never borrows from the person\'s own, nor the other way round), and the workspace is kept with the upload. A person who has left the team by the time the file is stored gets it stored in their own space instead, never the team\'s. This call stores the finished file: it counts against the storage of that workspace only now, not while the file is on its way, so an upload that is abandoned costs nothing. It is safe to call again after a lost answer: the file that was stored is returned, not stored twice. A file that could not be stored (storage down, allowance full) stays available for a day from when the upload began, so the call can be repeated without sending the file again. An unfinished upload is deleted after that day, and an account can hold only a few at once. A partner account that is paused, not yet activated or behind on a payment cannot start a resumable upload (the declaring `POST /uploads/tus` answers 403) and cannot complete one (`PARTNER_SUSPENDED`, `PARTNER_INACTIVE`, `PARTNER_PAYMENT_ARREARS`). An account that administers a partner keeps the finished file in the partner\'s own storage destination (`setPartnerStorageDestination`), never in Widgetic\'s: the pieces wait in Widgetic\'s temporary storage and are removed when this call has written the file to the partner\'s bucket, and the file takes none of the allowance (declaring it checks no room for it either). A partner with no destination cannot start a resumable upload (the declaring `POST /uploads/tus` answers 409 with a line of text, before a byte is sent), and one that removed it since cannot complete one (`PARTNER_STORAGE_REQUIRED`).
270
270
  * Finish a resumable upload — store the file and return it
271
271
  */
272
272
  uploadsTusIdCompletePost(requestParameters, initOverrides) {
@@ -57,22 +57,22 @@ export interface UsersSendFeedbackPostOperationRequest {
57
57
  */
58
58
  export declare class UsersApi extends runtime.BaseAPI {
59
59
  /**
60
- * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
60
+ * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. So is the website where a partner your account administers integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), so there is nothing to add for it either and a list can never lock it out. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
61
61
  * Allow a website to show your widgets
62
62
  */
63
63
  addPersonalWorkspaceDomainRaw(requestParameters: AddPersonalWorkspaceDomain0Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PersonalWorkspaceDomainResult>>;
64
64
  /**
65
- * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
65
+ * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. So is the website where a partner your account administers integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), so there is nothing to add for it either and a list can never lock it out. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
66
66
  * Allow a website to show your widgets
67
67
  */
68
68
  addPersonalWorkspaceDomain(requestParameters: AddPersonalWorkspaceDomain0Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PersonalWorkspaceDomainResult>;
69
69
  /**
70
- * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys. An account on a plan without API access cannot make one.
70
+ * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys, except a partner account, which has no limit: what a partner\'s keys do is paid for from its own credits, however many integrations it runs. An account on a plan without API access cannot make one (a partner account is not asked about a plan).
71
71
  * Create an API key
72
72
  */
73
73
  createUserApiKeyRaw(requestParameters: CreateUserApiKey0Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreatedUserApiKey>>;
74
74
  /**
75
- * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys. An account on a plan without API access cannot make one.
75
+ * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys, except a partner account, which has no limit: what a partner\'s keys do is paid for from its own credits, however many integrations it runs. An account on a plan without API access cannot make one (a partner account is not asked about a plan).
76
76
  * Create an API key
77
77
  */
78
78
  createUserApiKey(requestParameters: CreateUserApiKey0Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreatedUserApiKey>;
@@ -27,7 +27,7 @@ import { AddDomainRequestToJSON, CreateUserApiKeyRequestToJSON, CreatedUserApiKe
27
27
  */
28
28
  export class UsersApi extends runtime.BaseAPI {
29
29
  /**
30
- * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
30
+ * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. So is the website where a partner your account administers integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), so there is nothing to add for it either and a list can never lock it out. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
31
31
  * Allow a website to show your widgets
32
32
  */
33
33
  addPersonalWorkspaceDomainRaw(requestParameters, initOverrides) {
@@ -59,7 +59,7 @@ export class UsersApi extends runtime.BaseAPI {
59
59
  });
60
60
  }
61
61
  /**
62
- * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
62
+ * Adds a website to an account\'s own list. Give a website name such as `example.com`, or `*.example.com` for a website and all of its subdomains. A scheme, a port, a path, capital letters and a leading `www.` are dropped, so `https://www.Example.com/shop` is kept as `example.com`, and `example.com` covers `www.example.com` too. Something that is not a website name is refused, not stored. Until the first website is added nothing is restricted, and a widget can be shown anywhere. Once the list has one, a widget of the account is shown on the listed websites (and on Widgetic\'s own) and nowhere else. A page on your own machine (`localhost`, `127.0.0.1` or `[::1]`, on any port) is always allowed, so there is nothing to add to test locally. So is the website where a partner your account administers integrates Widgetic, with every subdomain of it (`platformDomain` in the answer of `GET /partners/mine`), so there is nothing to add for it either and a list can never lock it out. A change can take about 15 seconds to reach every server. The list is a safeguard against other websites showing your widgets in a visitor\'s browser. It is not access control: anyone who knows a widget\'s id can still fetch its published content with a plain request that names no website. An account can list at most 50 websites. Use `*.example.com` for a website and all of its subdomains instead of listing each one.
63
63
  * Allow a website to show your widgets
64
64
  */
65
65
  addPersonalWorkspaceDomain(requestParameters, initOverrides) {
@@ -69,7 +69,7 @@ export class UsersApi extends runtime.BaseAPI {
69
69
  });
70
70
  }
71
71
  /**
72
- * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys. An account on a plan without API access cannot make one.
72
+ * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys, except a partner account, which has no limit: what a partner\'s keys do is paid for from its own credits, however many integrations it runs. An account on a plan without API access cannot make one (a partner account is not asked about a plan).
73
73
  * Create an API key
74
74
  */
75
75
  createUserApiKeyRaw(requestParameters, initOverrides) {
@@ -104,7 +104,7 @@ export class UsersApi extends runtime.BaseAPI {
104
104
  });
105
105
  }
106
106
  /**
107
- * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys. An account on a plan without API access cannot make one.
107
+ * Makes a new API key for an account and returns its secret in `key`. That is the only time the secret is shown: Widgetic keeps a hash, so a key that was not stored cannot be recovered, only replaced. To rotate a key, make the new one, switch the integration over to it, then delete the old one. Only a person signed in on widgetic.com can make a key: a request made with an API key, or with an SDK token, is refused with 403. That way a leaked key cannot be used to make a second one that survives its revocation. Make keys from the dashboard; a key can still list, rename, switch off and delete keys. An `Idempotency-Key` header is required (8 to 50 characters: letters, digits, `-` and `_`). A retry with the same header and the same body returns the same answer instead of making a second key, and the same header with a different body is refused with 422. Make keys one at a time: two requests for the same account that run at the same moment can overwrite each other. A key can be limited to what it needs. Send a `preset` (`read_only`, `content` or `full_access`) or a list of `scopes`, never both. Send neither for a key that can do everything its owner can, as every key made before scopes existed. A limited key is refused with 403 and the code `API_KEY_SCOPE_MISSING` on anything outside its scopes, so a key held by a build server or by a partner\'s backend can be given only the part of the API it uses. The scopes of a key are fixed when it is made: to widen one, make a new key and delete the old one. A limited key cannot make, change or delete keys, exchange tokens or reach the administration routes. The list of scopes is in the `ApiKeyScope` schema. An account can hold at most 25 keys, except a partner account, which has no limit: what a partner\'s keys do is paid for from its own credits, however many integrations it runs. An account on a plan without API access cannot make one (a partner account is not asked about a plan).
108
108
  * Create an API key
109
109
  */
110
110
  createUserApiKey(requestParameters, initOverrides) {
@@ -3,7 +3,6 @@ export * from './AIProxyApi';
3
3
  export * from './AdminApi';
4
4
  export * from './AdminBillingApi';
5
5
  export * from './AgentApi';
6
- export * from './AgentRepositoryManagementApi';
7
6
  export * from './AnalyticsApi';
8
7
  export * from './AuthenticationApi';
9
8
  export * from './BatchApi';
@@ -18,7 +17,6 @@ export * from './DemoContentsApi';
18
17
  export * from './EmailApi';
19
18
  export * from './EmailProxyApi';
20
19
  export * from './EntitlementsApi';
21
- export * from './EnterpriseCustomizationsApi';
22
20
  export * from './FigmaProxyApi';
23
21
  export * from './FoldersApi';
24
22
  export * from './HealthApi';
@@ -45,12 +43,10 @@ export * from './SubscriptionPlansApi';
45
43
  export * from './SubscriptionsApi';
46
44
  export * from './TokensApi';
47
45
  export * from './TranslationsApi';
48
- export * from './UIComponentsApi';
49
46
  export * from './UploadsApi';
50
47
  export * from './UsageApi';
51
48
  export * from './UsersApi';
52
49
  export * from './WebhooksApi';
53
50
  export * from './WidgetBuilderApi';
54
51
  export * from './WidgetsApi';
55
- export * from './WorkflowsApi';
56
52
  export * from './WorkspacesApi';