@omnibase/core-js 0.9.18 → 0.10.1

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 (229) hide show
  1. package/.openapi-generator/FILES +44 -0
  2. package/README.md +34 -3
  3. package/docs/AddInvoiceLineItem200Response.md +36 -0
  4. package/docs/AddInvoiceLineItemRequest.md +38 -0
  5. package/docs/ConfigureWebhooks200Response.md +36 -0
  6. package/docs/CreateInvoice200Response.md +36 -0
  7. package/docs/CreateInvoiceRequest.md +40 -0
  8. package/docs/FinalizeInvoiceRequest.md +34 -0
  9. package/docs/GetMeterByID200Response.md +36 -0
  10. package/docs/GetPriceByID200Response.md +36 -0
  11. package/docs/GetProductByID200Response.md +36 -0
  12. package/docs/GetWebhookSecret200Response.md +36 -0
  13. package/docs/InvoiceLineItemResponse.md +38 -0
  14. package/docs/InvoiceResponse.md +46 -0
  15. package/docs/MeterResponse.md +34 -0
  16. package/docs/PerUnitPrice.md +1 -1
  17. package/docs/Price.md +1 -1
  18. package/docs/PriceResponse.md +36 -0
  19. package/docs/PriceWithStripeID.md +1 -1
  20. package/docs/ProductResponse.md +34 -0
  21. package/docs/UpdateInvoiceRequest.md +36 -0
  22. package/docs/V1PaymentsApi.md +391 -0
  23. package/docs/V1StripeApi.md +213 -0
  24. package/docs/V1WebhooksApi.md +150 -0
  25. package/docs/WebhookEndpointConfig.md +40 -0
  26. package/docs/WebhookResult.md +46 -0
  27. package/docs/WebhookSecretResponse.md +48 -0
  28. package/docs/WebhooksConfigRequest.md +34 -0
  29. package/docs/WebhooksConfigResponse.md +34 -0
  30. package/package.json +1 -1
  31. package/src/apis/V1AuthApi.ts +2 -2
  32. package/src/apis/V1ConfigurationApi.ts +2 -2
  33. package/src/apis/V1EventsApi.ts +2 -2
  34. package/src/apis/V1PaymentsApi.ts +350 -2
  35. package/src/apis/V1PermissionsApi.ts +2 -2
  36. package/src/apis/V1StorageApi.ts +2 -2
  37. package/src/apis/V1StripeApi.ts +140 -2
  38. package/src/apis/V1TenantsApi.ts +2 -2
  39. package/src/apis/V1WebhooksApi.ts +132 -0
  40. package/src/apis/index.ts +1 -0
  41. package/src/models/AcceptInvite200Response.ts +2 -2
  42. package/src/models/AcceptInviteRequest.ts +2 -2
  43. package/src/models/AcceptInviteResponse.ts +2 -2
  44. package/src/models/ActiveTenantResponse.ts +2 -2
  45. package/src/models/AddInvoiceLineItem200Response.ts +82 -0
  46. package/src/models/AddInvoiceLineItemRequest.ts +94 -0
  47. package/src/models/AddSubscription200Response.ts +2 -2
  48. package/src/models/AddSubscriptionRequest.ts +2 -2
  49. package/src/models/AddSubscriptionResponse.ts +2 -2
  50. package/src/models/ArchiveAllResponse.ts +2 -2
  51. package/src/models/ArchiveAllStripeConfig200Response.ts +2 -2
  52. package/src/models/BadRequest.ts +2 -2
  53. package/src/models/BadRequestResponse.ts +2 -2
  54. package/src/models/BillingInterval.ts +2 -2
  55. package/src/models/BillingStatusResponse.ts +2 -2
  56. package/src/models/CheckPermission200Response.ts +2 -2
  57. package/src/models/CheckPermissionRequest.ts +2 -2
  58. package/src/models/CheckPermissionRequestWithSubjectId.ts +2 -2
  59. package/src/models/CheckPermissionRequestWithSubjectSet.ts +2 -2
  60. package/src/models/CheckPermissionResponse.ts +2 -2
  61. package/src/models/ConfigHistoryItem.ts +2 -2
  62. package/src/models/ConfigHistoryPagination.ts +2 -2
  63. package/src/models/ConfigHistoryResponse.ts +2 -2
  64. package/src/models/ConfigureWebhooks200Response.ts +82 -0
  65. package/src/models/ConflictResponse.ts +2 -2
  66. package/src/models/ConvertStripeIDToConfigID200Response.ts +2 -2
  67. package/src/models/CreateCheckout200Response.ts +2 -2
  68. package/src/models/CreateCheckoutRequest.ts +2 -2
  69. package/src/models/CreateCheckoutResponse.ts +2 -2
  70. package/src/models/CreateCustomerPortal200Response.ts +2 -2
  71. package/src/models/CreateEmailTemplateRequest.ts +2 -2
  72. package/src/models/CreateInvite200Response.ts +2 -2
  73. package/src/models/CreateInvoice200Response.ts +82 -0
  74. package/src/models/CreateInvoiceRequest.ts +100 -0
  75. package/src/models/CreateOrUpdateEmailTemplate200Response.ts +2 -2
  76. package/src/models/CreateOrUpdateEmailTemplate200ResponseAllOfData.ts +2 -2
  77. package/src/models/CreatePortalRequest.ts +2 -2
  78. package/src/models/CreatePortalResponse.ts +2 -2
  79. package/src/models/CreateRelationship200Response.ts +2 -2
  80. package/src/models/CreateRelationshipRequest.ts +2 -2
  81. package/src/models/CreateRelationshipRequestWithSubjectId.ts +2 -2
  82. package/src/models/CreateRelationshipRequestWithSubjectSet.ts +2 -2
  83. package/src/models/CreateRelationshipResponse.ts +2 -2
  84. package/src/models/CreateRole200Response.ts +2 -2
  85. package/src/models/CreateRoleRequest.ts +2 -2
  86. package/src/models/CreateTenant200Response.ts +2 -2
  87. package/src/models/CreateTenantRequest.ts +2 -2
  88. package/src/models/CreateTenantResponse.ts +2 -2
  89. package/src/models/CreateTenantUserInviteRequest.ts +2 -2
  90. package/src/models/CreateTenantUserInviteResponse.ts +2 -2
  91. package/src/models/CreateUser200Response.ts +2 -2
  92. package/src/models/CreateUserRequest.ts +2 -2
  93. package/src/models/CreateUserRequestName.ts +2 -2
  94. package/src/models/CurrencyCode.ts +2 -2
  95. package/src/models/DeleteEmailTemplate200Response.ts +2 -2
  96. package/src/models/DeleteEmailTemplate200ResponseAllOfData.ts +2 -2
  97. package/src/models/DeleteObject200Response.ts +2 -2
  98. package/src/models/DeleteObjectRequest.ts +2 -2
  99. package/src/models/DeleteRelationship200Response.ts +2 -2
  100. package/src/models/DeleteRelationshipRequest.ts +2 -2
  101. package/src/models/DeleteRelationshipRequestWithSubjectId.ts +2 -2
  102. package/src/models/DeleteRelationshipRequestWithSubjectSet.ts +2 -2
  103. package/src/models/DeleteRelationshipResponse.ts +2 -2
  104. package/src/models/DeleteRole200Response.ts +2 -2
  105. package/src/models/DeleteRoleResponse.ts +2 -2
  106. package/src/models/DeleteTenant200Response.ts +2 -2
  107. package/src/models/DeleteTenantResponse.ts +2 -2
  108. package/src/models/DeleteTenantUserRequest.ts +2 -2
  109. package/src/models/DeployPermissionNamespaces200Response.ts +2 -2
  110. package/src/models/DownloadFile200Response.ts +2 -2
  111. package/src/models/DownloadRequest.ts +2 -2
  112. package/src/models/DownloadResponse.ts +2 -2
  113. package/src/models/EmailTemplate.ts +2 -2
  114. package/src/models/ErrorResponse.ts +2 -2
  115. package/src/models/FinalizeInvoiceRequest.ts +65 -0
  116. package/src/models/ForbiddenResponse.ts +2 -2
  117. package/src/models/GetActiveTenant200Response.ts +2 -2
  118. package/src/models/GetEmailTemplates200Response.ts +2 -2
  119. package/src/models/GetEmailTemplates200ResponseAllOfData.ts +2 -2
  120. package/src/models/GetIdentity200Response.ts +2 -2
  121. package/src/models/GetMeterByID200Response.ts +82 -0
  122. package/src/models/GetPriceByID200Response.ts +82 -0
  123. package/src/models/GetProductByID200Response.ts +82 -0
  124. package/src/models/GetRoleDefinitions200Response.ts +2 -2
  125. package/src/models/GetSession200Response.ts +2 -2
  126. package/src/models/GetStripeConfig200Response.ts +2 -2
  127. package/src/models/GetStripeConfigHistory200Response.ts +2 -2
  128. package/src/models/GetTenantBillingStatus200Response.ts +2 -2
  129. package/src/models/GetTenantJWT200Response.ts +2 -2
  130. package/src/models/GetWebhookSecret200Response.ts +82 -0
  131. package/src/models/InternalServerError.ts +2 -2
  132. package/src/models/InternalServerErrorResponse.ts +2 -2
  133. package/src/models/InvoiceLineItemResponse.ts +82 -0
  134. package/src/models/InvoiceResponse.ts +115 -0
  135. package/src/models/JWTTokenResponse.ts +2 -2
  136. package/src/models/KratosIdentity.ts +2 -2
  137. package/src/models/KratosIdentityCredentials.ts +2 -2
  138. package/src/models/KratosIdentityCredentialsPassword.ts +2 -2
  139. package/src/models/KratosIdentityRecoveryAddressesInner.ts +2 -2
  140. package/src/models/KratosIdentityTraits.ts +2 -2
  141. package/src/models/KratosIdentityTraitsName.ts +2 -2
  142. package/src/models/KratosIdentityVerifiableAddressesInner.ts +2 -2
  143. package/src/models/ListRoles200Response.ts +2 -2
  144. package/src/models/ListTenantSubscriptions200Response.ts +2 -2
  145. package/src/models/ListTenantUsers200Response.ts +2 -2
  146. package/src/models/ListTenants200Response.ts +2 -2
  147. package/src/models/ListTenantsResponse.ts +2 -2
  148. package/src/models/Logout200Response.ts +2 -2
  149. package/src/models/LogoutResponse.ts +2 -2
  150. package/src/models/MessageResponse.ts +2 -2
  151. package/src/models/Meter.ts +2 -2
  152. package/src/models/MeterCustomerMapping.ts +2 -2
  153. package/src/models/MeterDefaultAggregation.ts +2 -2
  154. package/src/models/MeterResponse.ts +74 -0
  155. package/src/models/MeterValueSettings.ts +2 -2
  156. package/src/models/MeterWithStripeID.ts +2 -2
  157. package/src/models/MigrationErrorResponse.ts +2 -2
  158. package/src/models/MigrationSuccessResponse.ts +2 -2
  159. package/src/models/NamespaceDefinition.ts +2 -2
  160. package/src/models/NamespaceDefinitionsResponse.ts +2 -2
  161. package/src/models/NamespaceDeploymentResponse.ts +2 -2
  162. package/src/models/NotFound.ts +2 -2
  163. package/src/models/NotFoundResponse.ts +2 -2
  164. package/src/models/PerUnitBillingScheme.ts +2 -2
  165. package/src/models/PerUnitPrice.ts +3 -3
  166. package/src/models/Price.ts +2 -2
  167. package/src/models/PriceDisplay.ts +2 -2
  168. package/src/models/PriceLimit.ts +2 -2
  169. package/src/models/PriceResponse.ts +90 -0
  170. package/src/models/PriceUI.ts +2 -2
  171. package/src/models/PriceWithStripeID.ts +3 -3
  172. package/src/models/Product.ts +2 -2
  173. package/src/models/ProductResponse.ts +74 -0
  174. package/src/models/ProductUI.ts +2 -2
  175. package/src/models/ProductWithStripeIDs.ts +2 -2
  176. package/src/models/PullStripeConfig200Response.ts +2 -2
  177. package/src/models/RecordUsageRequest.ts +2 -2
  178. package/src/models/Relationship.ts +2 -2
  179. package/src/models/RemoveSubscription200Response.ts +2 -2
  180. package/src/models/RemoveSubscriptionRequest.ts +2 -2
  181. package/src/models/RemoveSubscriptionResponse.ts +2 -2
  182. package/src/models/Role.ts +2 -2
  183. package/src/models/RolesListResponse.ts +2 -2
  184. package/src/models/SchemasConflictResponse.ts +2 -2
  185. package/src/models/SessionResponse.ts +2 -2
  186. package/src/models/StripeConfigResponse.ts +2 -2
  187. package/src/models/StripeConfigUpdateRequest.ts +2 -2
  188. package/src/models/StripeConfigValidateRequest.ts +2 -2
  189. package/src/models/StripeConfiguration.ts +2 -2
  190. package/src/models/StripeConfigurationWithIDs.ts +2 -2
  191. package/src/models/StripeIDConversionResponse.ts +2 -2
  192. package/src/models/SubjectSet.ts +2 -2
  193. package/src/models/SubjectSetRequest.ts +2 -2
  194. package/src/models/SubscriptionResponse.ts +2 -2
  195. package/src/models/SuccessResponse.ts +2 -2
  196. package/src/models/SuccessResponseData.ts +2 -2
  197. package/src/models/SwitchActiveTenant200Response.ts +2 -2
  198. package/src/models/SwitchTenantRequest.ts +2 -2
  199. package/src/models/SwitchTenantResponse.ts +2 -2
  200. package/src/models/Tenant.ts +2 -2
  201. package/src/models/TenantInvite.ts +2 -2
  202. package/src/models/TenantSettings.ts +2 -2
  203. package/src/models/TenantUserResponse.ts +2 -2
  204. package/src/models/Tier.ts +2 -2
  205. package/src/models/TierUpTo.ts +2 -2
  206. package/src/models/TieredBillingScheme.ts +2 -2
  207. package/src/models/TieredPrice.ts +2 -2
  208. package/src/models/TiersMode.ts +2 -2
  209. package/src/models/Unauthorized.ts +2 -2
  210. package/src/models/UnauthorizedResponse.ts +2 -2
  211. package/src/models/UpdateInvoiceRequest.ts +73 -0
  212. package/src/models/UpdateRoleRequest.ts +2 -2
  213. package/src/models/UpdateTenantUserRole200Response.ts +2 -2
  214. package/src/models/UpdateTenantUserRoleRequest.ts +2 -2
  215. package/src/models/UpdateTenantUserRoleResponse.ts +2 -2
  216. package/src/models/UploadFile200Response.ts +2 -2
  217. package/src/models/UploadRequest.ts +2 -2
  218. package/src/models/UploadResponse.ts +2 -2
  219. package/src/models/UsageType.ts +2 -2
  220. package/src/models/UserTenantListItem.ts +2 -2
  221. package/src/models/WebhookEndpointConfig.ts +91 -0
  222. package/src/models/WebhookResult.ts +131 -0
  223. package/src/models/WebhookSecretResponse.ts +127 -0
  224. package/src/models/WebhooksConfigRequest.ts +74 -0
  225. package/src/models/WebhooksConfigResponse.ts +74 -0
  226. package/src/models/WhoAmI200Response.ts +2 -2
  227. package/src/models/WhoAmIResponse.ts +2 -2
  228. package/src/models/index.ts +21 -0
  229. package/src/runtime.ts +2 -2
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * Omnibase REST API
5
- * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control via Ory Keto ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
5
+ * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
6
6
  *
7
- * The version of the OpenAPI document: 0.9.18
7
+ * The version of the OpenAPI document: 0.10.1
8
8
  * Contact: support@omnibase.dev
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -15,18 +15,28 @@
15
15
 
16
16
  import * as runtime from '../runtime';
17
17
  import type {
18
+ AddInvoiceLineItem200Response,
19
+ AddInvoiceLineItemRequest,
18
20
  BadRequestResponse,
19
21
  CreateCheckout200Response,
20
22
  CreateCheckoutRequest,
21
23
  CreateCustomerPortal200Response,
24
+ CreateInvoice200Response,
25
+ CreateInvoiceRequest,
22
26
  CreatePortalRequest,
27
+ FinalizeInvoiceRequest,
23
28
  InternalServerErrorResponse,
24
29
  NotFoundResponse,
25
30
  RecordUsageRequest,
26
31
  SuccessResponse,
27
32
  UnauthorizedResponse,
33
+ UpdateInvoiceRequest,
28
34
  } from '../models/index';
29
35
  import {
36
+ AddInvoiceLineItem200ResponseFromJSON,
37
+ AddInvoiceLineItem200ResponseToJSON,
38
+ AddInvoiceLineItemRequestFromJSON,
39
+ AddInvoiceLineItemRequestToJSON,
30
40
  BadRequestResponseFromJSON,
31
41
  BadRequestResponseToJSON,
32
42
  CreateCheckout200ResponseFromJSON,
@@ -35,8 +45,14 @@ import {
35
45
  CreateCheckoutRequestToJSON,
36
46
  CreateCustomerPortal200ResponseFromJSON,
37
47
  CreateCustomerPortal200ResponseToJSON,
48
+ CreateInvoice200ResponseFromJSON,
49
+ CreateInvoice200ResponseToJSON,
50
+ CreateInvoiceRequestFromJSON,
51
+ CreateInvoiceRequestToJSON,
38
52
  CreatePortalRequestFromJSON,
39
53
  CreatePortalRequestToJSON,
54
+ FinalizeInvoiceRequestFromJSON,
55
+ FinalizeInvoiceRequestToJSON,
40
56
  InternalServerErrorResponseFromJSON,
41
57
  InternalServerErrorResponseToJSON,
42
58
  NotFoundResponseFromJSON,
@@ -47,8 +63,18 @@ import {
47
63
  SuccessResponseToJSON,
48
64
  UnauthorizedResponseFromJSON,
49
65
  UnauthorizedResponseToJSON,
66
+ UpdateInvoiceRequestFromJSON,
67
+ UpdateInvoiceRequestToJSON,
50
68
  } from '../models/index';
51
69
 
70
+ export interface AddInvoiceLineItemOperationRequest {
71
+ xServiceKey: string;
72
+ invoiceId: string;
73
+ addInvoiceLineItemRequest: AddInvoiceLineItemRequest;
74
+ xTenantId?: string;
75
+ xStripeCustomerId?: string;
76
+ }
77
+
52
78
  export interface CreateCheckoutOperationRequest {
53
79
  createCheckoutRequest: CreateCheckoutRequest;
54
80
  }
@@ -57,15 +83,107 @@ export interface CreateCustomerPortalRequest {
57
83
  createPortalRequest: CreatePortalRequest;
58
84
  }
59
85
 
86
+ export interface CreateInvoiceOperationRequest {
87
+ xServiceKey: string;
88
+ createInvoiceRequest: CreateInvoiceRequest;
89
+ xTenantId?: string;
90
+ xStripeCustomerId?: string;
91
+ }
92
+
93
+ export interface FinalizeInvoiceOperationRequest {
94
+ xServiceKey: string;
95
+ invoiceId: string;
96
+ finalizeInvoiceRequest: FinalizeInvoiceRequest;
97
+ }
98
+
99
+ export interface GetInvoiceRequest {
100
+ xServiceKey: string;
101
+ invoiceId: string;
102
+ }
103
+
60
104
  export interface RecordUsageOperationRequest {
61
105
  recordUsageRequest: RecordUsageRequest;
62
106
  }
63
107
 
108
+ export interface UpdateInvoiceOperationRequest {
109
+ xServiceKey: string;
110
+ invoiceId: string;
111
+ updateInvoiceRequest: UpdateInvoiceRequest;
112
+ }
113
+
64
114
  /**
65
115
  *
66
116
  */
67
117
  export class V1PaymentsApi extends runtime.BaseAPI {
68
118
 
119
+ /**
120
+ * Adds a new line item to a draft invoice. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Customer Identification You must provide the Stripe customer ID using ONE of: - `X-Stripe-Customer-Id` header: Directly specify the Stripe customer ID - `X-Tenant-Id` header: Look up the Stripe customer ID from the tenant\'s configuration ## Prerequisites - Invoice must be in draft status ## Use Cases - Adding platform fees - Adding additional charges - Custom billing line items
121
+ * Add invoice line item
122
+ */
123
+ async addInvoiceLineItemRaw(requestParameters: AddInvoiceLineItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AddInvoiceLineItem200Response>> {
124
+ if (requestParameters['xServiceKey'] == null) {
125
+ throw new runtime.RequiredError(
126
+ 'xServiceKey',
127
+ 'Required parameter "xServiceKey" was null or undefined when calling addInvoiceLineItem().'
128
+ );
129
+ }
130
+
131
+ if (requestParameters['invoiceId'] == null) {
132
+ throw new runtime.RequiredError(
133
+ 'invoiceId',
134
+ 'Required parameter "invoiceId" was null or undefined when calling addInvoiceLineItem().'
135
+ );
136
+ }
137
+
138
+ if (requestParameters['addInvoiceLineItemRequest'] == null) {
139
+ throw new runtime.RequiredError(
140
+ 'addInvoiceLineItemRequest',
141
+ 'Required parameter "addInvoiceLineItemRequest" was null or undefined when calling addInvoiceLineItem().'
142
+ );
143
+ }
144
+
145
+ const queryParameters: any = {};
146
+
147
+ const headerParameters: runtime.HTTPHeaders = {};
148
+
149
+ headerParameters['Content-Type'] = 'application/json';
150
+
151
+ if (requestParameters['xServiceKey'] != null) {
152
+ headerParameters['X-Service-Key'] = String(requestParameters['xServiceKey']);
153
+ }
154
+
155
+ if (requestParameters['xTenantId'] != null) {
156
+ headerParameters['X-Tenant-Id'] = String(requestParameters['xTenantId']);
157
+ }
158
+
159
+ if (requestParameters['xStripeCustomerId'] != null) {
160
+ headerParameters['X-Stripe-Customer-Id'] = String(requestParameters['xStripeCustomerId']);
161
+ }
162
+
163
+
164
+ let urlPath = `/api/v1/payments/invoices/{invoice_id}/items`;
165
+ urlPath = urlPath.replace(`{${"invoice_id"}}`, encodeURIComponent(String(requestParameters['invoiceId'])));
166
+
167
+ const response = await this.request({
168
+ path: urlPath,
169
+ method: 'POST',
170
+ headers: headerParameters,
171
+ query: queryParameters,
172
+ body: AddInvoiceLineItemRequestToJSON(requestParameters['addInvoiceLineItemRequest']),
173
+ }, initOverrides);
174
+
175
+ return new runtime.JSONApiResponse(response, (jsonValue) => AddInvoiceLineItem200ResponseFromJSON(jsonValue));
176
+ }
177
+
178
+ /**
179
+ * Adds a new line item to a draft invoice. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Customer Identification You must provide the Stripe customer ID using ONE of: - `X-Stripe-Customer-Id` header: Directly specify the Stripe customer ID - `X-Tenant-Id` header: Look up the Stripe customer ID from the tenant\'s configuration ## Prerequisites - Invoice must be in draft status ## Use Cases - Adding platform fees - Adding additional charges - Custom billing line items
180
+ * Add invoice line item
181
+ */
182
+ async addInvoiceLineItem(requestParameters: AddInvoiceLineItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AddInvoiceLineItem200Response> {
183
+ const response = await this.addInvoiceLineItemRaw(requestParameters, initOverrides);
184
+ return await response.value();
185
+ }
186
+
69
187
  /**
70
188
  * Creates a Stripe Checkout Session for the specified price ID. The session URL can be used to redirect users to complete payment. ## Authentication Optional cookie authentication. If authenticated and user has a Stripe customer ID, it will be used; otherwise, a new customer will be created. ## Use Cases - Subscription sign-ups - One-time purchases - Trial period checkouts - Promotional code redemption
71
189
  * Create checkout session
@@ -148,6 +266,176 @@ export class V1PaymentsApi extends runtime.BaseAPI {
148
266
  return await response.value();
149
267
  }
150
268
 
269
+ /**
270
+ * Creates a new draft invoice for the specified customer. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Customer Identification You must provide the Stripe customer ID using ONE of: - `X-Stripe-Customer-Id` header: Directly specify the Stripe customer ID - `X-Tenant-Id` header: Look up the Stripe customer ID from the tenant\'s configuration ## Use Cases - Creating invoices for platform fees - Manual billing scenarios - Custom invoice generation
271
+ * Create invoice
272
+ */
273
+ async createInvoiceRaw(requestParameters: CreateInvoiceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreateInvoice200Response>> {
274
+ if (requestParameters['xServiceKey'] == null) {
275
+ throw new runtime.RequiredError(
276
+ 'xServiceKey',
277
+ 'Required parameter "xServiceKey" was null or undefined when calling createInvoice().'
278
+ );
279
+ }
280
+
281
+ if (requestParameters['createInvoiceRequest'] == null) {
282
+ throw new runtime.RequiredError(
283
+ 'createInvoiceRequest',
284
+ 'Required parameter "createInvoiceRequest" was null or undefined when calling createInvoice().'
285
+ );
286
+ }
287
+
288
+ const queryParameters: any = {};
289
+
290
+ const headerParameters: runtime.HTTPHeaders = {};
291
+
292
+ headerParameters['Content-Type'] = 'application/json';
293
+
294
+ if (requestParameters['xServiceKey'] != null) {
295
+ headerParameters['X-Service-Key'] = String(requestParameters['xServiceKey']);
296
+ }
297
+
298
+ if (requestParameters['xTenantId'] != null) {
299
+ headerParameters['X-Tenant-Id'] = String(requestParameters['xTenantId']);
300
+ }
301
+
302
+ if (requestParameters['xStripeCustomerId'] != null) {
303
+ headerParameters['X-Stripe-Customer-Id'] = String(requestParameters['xStripeCustomerId']);
304
+ }
305
+
306
+
307
+ let urlPath = `/api/v1/payments/invoices`;
308
+
309
+ const response = await this.request({
310
+ path: urlPath,
311
+ method: 'POST',
312
+ headers: headerParameters,
313
+ query: queryParameters,
314
+ body: CreateInvoiceRequestToJSON(requestParameters['createInvoiceRequest']),
315
+ }, initOverrides);
316
+
317
+ return new runtime.JSONApiResponse(response, (jsonValue) => CreateInvoice200ResponseFromJSON(jsonValue));
318
+ }
319
+
320
+ /**
321
+ * Creates a new draft invoice for the specified customer. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Customer Identification You must provide the Stripe customer ID using ONE of: - `X-Stripe-Customer-Id` header: Directly specify the Stripe customer ID - `X-Tenant-Id` header: Look up the Stripe customer ID from the tenant\'s configuration ## Use Cases - Creating invoices for platform fees - Manual billing scenarios - Custom invoice generation
322
+ * Create invoice
323
+ */
324
+ async createInvoice(requestParameters: CreateInvoiceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreateInvoice200Response> {
325
+ const response = await this.createInvoiceRaw(requestParameters, initOverrides);
326
+ return await response.value();
327
+ }
328
+
329
+ /**
330
+ * Finalizes a draft invoice, optionally auto-advancing to send it immediately. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Prerequisites - Invoice must be in draft status ## Use Cases - Approving invoices for sending - Completing invoice preparation - Triggering invoice emails
331
+ * Finalize invoice
332
+ */
333
+ async finalizeInvoiceRaw(requestParameters: FinalizeInvoiceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreateInvoice200Response>> {
334
+ if (requestParameters['xServiceKey'] == null) {
335
+ throw new runtime.RequiredError(
336
+ 'xServiceKey',
337
+ 'Required parameter "xServiceKey" was null or undefined when calling finalizeInvoice().'
338
+ );
339
+ }
340
+
341
+ if (requestParameters['invoiceId'] == null) {
342
+ throw new runtime.RequiredError(
343
+ 'invoiceId',
344
+ 'Required parameter "invoiceId" was null or undefined when calling finalizeInvoice().'
345
+ );
346
+ }
347
+
348
+ if (requestParameters['finalizeInvoiceRequest'] == null) {
349
+ throw new runtime.RequiredError(
350
+ 'finalizeInvoiceRequest',
351
+ 'Required parameter "finalizeInvoiceRequest" was null or undefined when calling finalizeInvoice().'
352
+ );
353
+ }
354
+
355
+ const queryParameters: any = {};
356
+
357
+ const headerParameters: runtime.HTTPHeaders = {};
358
+
359
+ headerParameters['Content-Type'] = 'application/json';
360
+
361
+ if (requestParameters['xServiceKey'] != null) {
362
+ headerParameters['X-Service-Key'] = String(requestParameters['xServiceKey']);
363
+ }
364
+
365
+
366
+ let urlPath = `/api/v1/payments/invoices/{invoice_id}/finalize`;
367
+ urlPath = urlPath.replace(`{${"invoice_id"}}`, encodeURIComponent(String(requestParameters['invoiceId'])));
368
+
369
+ const response = await this.request({
370
+ path: urlPath,
371
+ method: 'POST',
372
+ headers: headerParameters,
373
+ query: queryParameters,
374
+ body: FinalizeInvoiceRequestToJSON(requestParameters['finalizeInvoiceRequest']),
375
+ }, initOverrides);
376
+
377
+ return new runtime.JSONApiResponse(response, (jsonValue) => CreateInvoice200ResponseFromJSON(jsonValue));
378
+ }
379
+
380
+ /**
381
+ * Finalizes a draft invoice, optionally auto-advancing to send it immediately. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Prerequisites - Invoice must be in draft status ## Use Cases - Approving invoices for sending - Completing invoice preparation - Triggering invoice emails
382
+ * Finalize invoice
383
+ */
384
+ async finalizeInvoice(requestParameters: FinalizeInvoiceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreateInvoice200Response> {
385
+ const response = await this.finalizeInvoiceRaw(requestParameters, initOverrides);
386
+ return await response.value();
387
+ }
388
+
389
+ /**
390
+ * Retrieves a Stripe invoice by its ID. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Use Cases - Webhook processing - Invoice status checking - Invoice data retrieval
391
+ * Get invoice
392
+ */
393
+ async getInvoiceRaw(requestParameters: GetInvoiceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreateInvoice200Response>> {
394
+ if (requestParameters['xServiceKey'] == null) {
395
+ throw new runtime.RequiredError(
396
+ 'xServiceKey',
397
+ 'Required parameter "xServiceKey" was null or undefined when calling getInvoice().'
398
+ );
399
+ }
400
+
401
+ if (requestParameters['invoiceId'] == null) {
402
+ throw new runtime.RequiredError(
403
+ 'invoiceId',
404
+ 'Required parameter "invoiceId" was null or undefined when calling getInvoice().'
405
+ );
406
+ }
407
+
408
+ const queryParameters: any = {};
409
+
410
+ const headerParameters: runtime.HTTPHeaders = {};
411
+
412
+ if (requestParameters['xServiceKey'] != null) {
413
+ headerParameters['X-Service-Key'] = String(requestParameters['xServiceKey']);
414
+ }
415
+
416
+
417
+ let urlPath = `/api/v1/payments/invoices/{invoice_id}`;
418
+ urlPath = urlPath.replace(`{${"invoice_id"}}`, encodeURIComponent(String(requestParameters['invoiceId'])));
419
+
420
+ const response = await this.request({
421
+ path: urlPath,
422
+ method: 'GET',
423
+ headers: headerParameters,
424
+ query: queryParameters,
425
+ }, initOverrides);
426
+
427
+ return new runtime.JSONApiResponse(response, (jsonValue) => CreateInvoice200ResponseFromJSON(jsonValue));
428
+ }
429
+
430
+ /**
431
+ * Retrieves a Stripe invoice by its ID. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Use Cases - Webhook processing - Invoice status checking - Invoice data retrieval
432
+ * Get invoice
433
+ */
434
+ async getInvoice(requestParameters: GetInvoiceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreateInvoice200Response> {
435
+ const response = await this.getInvoiceRaw(requestParameters, initOverrides);
436
+ return await response.value();
437
+ }
438
+
151
439
  /**
152
440
  * Records a usage event for metered billing. The customer must have an active subscription with metered pricing. ## Authentication Requires cookie authentication with an associated Stripe customer ID (set via payments middleware). ## Prerequisites - User must be authenticated - Tenant must have a Stripe customer ID configured - If stripe_customer_id not found in context, returns 400: \"stripe_customer_id not found in context\" ## Use Cases - API request metering - Compute time tracking - Storage usage recording - Any metered billing scenario
153
441
  * Record metered usage
@@ -189,4 +477,64 @@ export class V1PaymentsApi extends runtime.BaseAPI {
189
477
  return await response.value();
190
478
  }
191
479
 
480
+ /**
481
+ * Updates a draft invoice\'s description and metadata. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Prerequisites - Invoice must be in draft status ## Use Cases - Adding custom descriptions - Adding metadata for tracking - Customizing invoice before sending
482
+ * Update invoice
483
+ */
484
+ async updateInvoiceRaw(requestParameters: UpdateInvoiceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CreateInvoice200Response>> {
485
+ if (requestParameters['xServiceKey'] == null) {
486
+ throw new runtime.RequiredError(
487
+ 'xServiceKey',
488
+ 'Required parameter "xServiceKey" was null or undefined when calling updateInvoice().'
489
+ );
490
+ }
491
+
492
+ if (requestParameters['invoiceId'] == null) {
493
+ throw new runtime.RequiredError(
494
+ 'invoiceId',
495
+ 'Required parameter "invoiceId" was null or undefined when calling updateInvoice().'
496
+ );
497
+ }
498
+
499
+ if (requestParameters['updateInvoiceRequest'] == null) {
500
+ throw new runtime.RequiredError(
501
+ 'updateInvoiceRequest',
502
+ 'Required parameter "updateInvoiceRequest" was null or undefined when calling updateInvoice().'
503
+ );
504
+ }
505
+
506
+ const queryParameters: any = {};
507
+
508
+ const headerParameters: runtime.HTTPHeaders = {};
509
+
510
+ headerParameters['Content-Type'] = 'application/json';
511
+
512
+ if (requestParameters['xServiceKey'] != null) {
513
+ headerParameters['X-Service-Key'] = String(requestParameters['xServiceKey']);
514
+ }
515
+
516
+
517
+ let urlPath = `/api/v1/payments/invoices/{invoice_id}`;
518
+ urlPath = urlPath.replace(`{${"invoice_id"}}`, encodeURIComponent(String(requestParameters['invoiceId'])));
519
+
520
+ const response = await this.request({
521
+ path: urlPath,
522
+ method: 'PATCH',
523
+ headers: headerParameters,
524
+ query: queryParameters,
525
+ body: UpdateInvoiceRequestToJSON(requestParameters['updateInvoiceRequest']),
526
+ }, initOverrides);
527
+
528
+ return new runtime.JSONApiResponse(response, (jsonValue) => CreateInvoice200ResponseFromJSON(jsonValue));
529
+ }
530
+
531
+ /**
532
+ * Updates a draft invoice\'s description and metadata. ## Authentication Requires service key authentication via `X-Service-Key` header. ## Prerequisites - Invoice must be in draft status ## Use Cases - Adding custom descriptions - Adding metadata for tracking - Customizing invoice before sending
533
+ * Update invoice
534
+ */
535
+ async updateInvoice(requestParameters: UpdateInvoiceOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CreateInvoice200Response> {
536
+ const response = await this.updateInvoiceRaw(requestParameters, initOverrides);
537
+ return await response.value();
538
+ }
539
+
192
540
  }
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * Omnibase REST API
5
- * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control via Ory Keto ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
5
+ * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
6
6
  *
7
- * The version of the OpenAPI document: 0.9.18
7
+ * The version of the OpenAPI document: 0.10.1
8
8
  * Contact: support@omnibase.dev
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * Omnibase REST API
5
- * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control via Ory Keto ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
5
+ * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
6
6
  *
7
- * The version of the OpenAPI document: 0.9.18
7
+ * The version of the OpenAPI document: 0.10.1
8
8
  * Contact: support@omnibase.dev
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * Omnibase REST API
5
- * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control via Ory Keto ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
5
+ * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
6
6
  *
7
- * The version of the OpenAPI document: 0.9.18
7
+ * The version of the OpenAPI document: 0.10.1
8
8
  * Contact: support@omnibase.dev
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -17,6 +17,9 @@ import * as runtime from '../runtime';
17
17
  import type {
18
18
  BadRequest,
19
19
  ConvertStripeIDToConfigID200Response,
20
+ GetMeterByID200Response,
21
+ GetPriceByID200Response,
22
+ GetProductByID200Response,
20
23
  GetStripeConfig200Response,
21
24
  InternalServerError,
22
25
  NotFound,
@@ -27,6 +30,12 @@ import {
27
30
  BadRequestToJSON,
28
31
  ConvertStripeIDToConfigID200ResponseFromJSON,
29
32
  ConvertStripeIDToConfigID200ResponseToJSON,
33
+ GetMeterByID200ResponseFromJSON,
34
+ GetMeterByID200ResponseToJSON,
35
+ GetPriceByID200ResponseFromJSON,
36
+ GetPriceByID200ResponseToJSON,
37
+ GetProductByID200ResponseFromJSON,
38
+ GetProductByID200ResponseToJSON,
30
39
  GetStripeConfig200ResponseFromJSON,
31
40
  GetStripeConfig200ResponseToJSON,
32
41
  InternalServerErrorFromJSON,
@@ -41,6 +50,18 @@ export interface ConvertStripeIDToConfigIDRequest {
41
50
  stripeId: string;
42
51
  }
43
52
 
53
+ export interface GetMeterByIDRequest {
54
+ meterId: string;
55
+ }
56
+
57
+ export interface GetPriceByIDRequest {
58
+ priceId: string;
59
+ }
60
+
61
+ export interface GetProductByIDRequest {
62
+ productId: string;
63
+ }
64
+
44
65
  /**
45
66
  *
46
67
  */
@@ -85,6 +106,123 @@ export class V1StripeApi extends runtime.BaseAPI {
85
106
  return await response.value();
86
107
  }
87
108
 
109
+ /**
110
+ * Returns a specific billing meter from the Stripe configuration by its config ID. ## Authentication No authentication required for public endpoint. ## Use Cases - Fetch meter details for usage tracking - Display metered billing information - Usage reporting configuration
111
+ * Get meter by ID
112
+ */
113
+ async getMeterByIDRaw(requestParameters: GetMeterByIDRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetMeterByID200Response>> {
114
+ if (requestParameters['meterId'] == null) {
115
+ throw new runtime.RequiredError(
116
+ 'meterId',
117
+ 'Required parameter "meterId" was null or undefined when calling getMeterByID().'
118
+ );
119
+ }
120
+
121
+ const queryParameters: any = {};
122
+
123
+ const headerParameters: runtime.HTTPHeaders = {};
124
+
125
+
126
+ let urlPath = `/api/v1/stripe/config/meters/{meter_id}`;
127
+ urlPath = urlPath.replace(`{${"meter_id"}}`, encodeURIComponent(String(requestParameters['meterId'])));
128
+
129
+ const response = await this.request({
130
+ path: urlPath,
131
+ method: 'GET',
132
+ headers: headerParameters,
133
+ query: queryParameters,
134
+ }, initOverrides);
135
+
136
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetMeterByID200ResponseFromJSON(jsonValue));
137
+ }
138
+
139
+ /**
140
+ * Returns a specific billing meter from the Stripe configuration by its config ID. ## Authentication No authentication required for public endpoint. ## Use Cases - Fetch meter details for usage tracking - Display metered billing information - Usage reporting configuration
141
+ * Get meter by ID
142
+ */
143
+ async getMeterByID(requestParameters: GetMeterByIDRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetMeterByID200Response> {
144
+ const response = await this.getMeterByIDRaw(requestParameters, initOverrides);
145
+ return await response.value();
146
+ }
147
+
148
+ /**
149
+ * Returns a specific price from the Stripe configuration by its config ID, along with its parent product. ## Authentication No authentication required for public endpoint. ## Use Cases - Fetch price details for checkout - Display specific pricing information - Subscription management
150
+ * Get price by ID
151
+ */
152
+ async getPriceByIDRaw(requestParameters: GetPriceByIDRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPriceByID200Response>> {
153
+ if (requestParameters['priceId'] == null) {
154
+ throw new runtime.RequiredError(
155
+ 'priceId',
156
+ 'Required parameter "priceId" was null or undefined when calling getPriceByID().'
157
+ );
158
+ }
159
+
160
+ const queryParameters: any = {};
161
+
162
+ const headerParameters: runtime.HTTPHeaders = {};
163
+
164
+
165
+ let urlPath = `/api/v1/stripe/config/prices/{price_id}`;
166
+ urlPath = urlPath.replace(`{${"price_id"}}`, encodeURIComponent(String(requestParameters['priceId'])));
167
+
168
+ const response = await this.request({
169
+ path: urlPath,
170
+ method: 'GET',
171
+ headers: headerParameters,
172
+ query: queryParameters,
173
+ }, initOverrides);
174
+
175
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPriceByID200ResponseFromJSON(jsonValue));
176
+ }
177
+
178
+ /**
179
+ * Returns a specific price from the Stripe configuration by its config ID, along with its parent product. ## Authentication No authentication required for public endpoint. ## Use Cases - Fetch price details for checkout - Display specific pricing information - Subscription management
180
+ * Get price by ID
181
+ */
182
+ async getPriceByID(requestParameters: GetPriceByIDRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPriceByID200Response> {
183
+ const response = await this.getPriceByIDRaw(requestParameters, initOverrides);
184
+ return await response.value();
185
+ }
186
+
187
+ /**
188
+ * Returns a specific product from the Stripe configuration by its config ID, including all its prices. ## Authentication No authentication required for public endpoint. ## Use Cases - Fetch product details - Display product information with all price options - Product catalog pages
189
+ * Get product by ID
190
+ */
191
+ async getProductByIDRaw(requestParameters: GetProductByIDRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetProductByID200Response>> {
192
+ if (requestParameters['productId'] == null) {
193
+ throw new runtime.RequiredError(
194
+ 'productId',
195
+ 'Required parameter "productId" was null or undefined when calling getProductByID().'
196
+ );
197
+ }
198
+
199
+ const queryParameters: any = {};
200
+
201
+ const headerParameters: runtime.HTTPHeaders = {};
202
+
203
+
204
+ let urlPath = `/api/v1/stripe/config/products/{product_id}`;
205
+ urlPath = urlPath.replace(`{${"product_id"}}`, encodeURIComponent(String(requestParameters['productId'])));
206
+
207
+ const response = await this.request({
208
+ path: urlPath,
209
+ method: 'GET',
210
+ headers: headerParameters,
211
+ query: queryParameters,
212
+ }, initOverrides);
213
+
214
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetProductByID200ResponseFromJSON(jsonValue));
215
+ }
216
+
217
+ /**
218
+ * Returns a specific product from the Stripe configuration by its config ID, including all its prices. ## Authentication No authentication required for public endpoint. ## Use Cases - Fetch product details - Display product information with all price options - Product catalog pages
219
+ * Get product by ID
220
+ */
221
+ async getProductByID(requestParameters: GetProductByIDRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetProductByID200Response> {
222
+ const response = await this.getProductByIDRaw(requestParameters, initOverrides);
223
+ return await response.value();
224
+ }
225
+
88
226
  /**
89
227
  * Returns the current Stripe configuration with public prices only (filters out enterprise prices). ## Authentication No authentication required for public endpoint. ## Use Cases - Display pricing to users - Build subscription selection UI - Public pricing pages
90
228
  * Get public Stripe config
@@ -2,9 +2,9 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * Omnibase REST API
5
- * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control via Ory Keto ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
5
+ * Self-hostable Backend-as-a-Service providing database management, authentication, payments, storage, and email services. ## Features - **Database**: PostgreSQL with RLS and migrations - **Authentication**: Ory Kratos integration with session management - **Payments**: Stripe integration with version-controlled billing configs - **Storage**: S3-compatible object storage with RLS - **Email**: Transactional email service - **Permissions**: Fine-grained access control ## Authentication Most endpoints require authentication via session cookies or JWT tokens. Use the appropriate security scheme based on the endpoint requirements.
6
6
  *
7
- * The version of the OpenAPI document: 0.9.18
7
+ * The version of the OpenAPI document: 0.10.1
8
8
  * Contact: support@omnibase.dev
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).