@blezgo/api-sdk 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +27 -0
  3. package/dist/account/client.d.ts +3 -0
  4. package/dist/account/client.d.ts.map +1 -0
  5. package/dist/account/client.js +3 -0
  6. package/dist/account/client.js.map +1 -0
  7. package/dist/account/generated.d.ts +2648 -0
  8. package/dist/account/generated.d.ts.map +1 -0
  9. package/dist/account/generated.js +6 -0
  10. package/dist/account/generated.js.map +1 -0
  11. package/dist/account/index.d.ts +2 -0
  12. package/dist/account/index.d.ts.map +1 -0
  13. package/dist/account/index.js +2 -0
  14. package/dist/account/index.js.map +1 -0
  15. package/dist/admin/client.d.ts +3 -0
  16. package/dist/admin/client.d.ts.map +1 -0
  17. package/dist/admin/client.js +3 -0
  18. package/dist/admin/client.js.map +1 -0
  19. package/dist/admin/generated.d.ts +956 -0
  20. package/dist/admin/generated.d.ts.map +1 -0
  21. package/dist/admin/generated.js +6 -0
  22. package/dist/admin/generated.js.map +1 -0
  23. package/dist/admin/index.d.ts +2 -0
  24. package/dist/admin/index.d.ts.map +1 -0
  25. package/dist/admin/index.js +2 -0
  26. package/dist/admin/index.js.map +1 -0
  27. package/dist/authentication/client.d.ts +3 -0
  28. package/dist/authentication/client.d.ts.map +1 -0
  29. package/dist/authentication/client.js +3 -0
  30. package/dist/authentication/client.js.map +1 -0
  31. package/dist/authentication/generated.d.ts +746 -0
  32. package/dist/authentication/generated.d.ts.map +1 -0
  33. package/dist/authentication/generated.js +6 -0
  34. package/dist/authentication/generated.js.map +1 -0
  35. package/dist/authentication/index.d.ts +2 -0
  36. package/dist/authentication/index.d.ts.map +1 -0
  37. package/dist/authentication/index.js +2 -0
  38. package/dist/authentication/index.js.map +1 -0
  39. package/dist/cache/client.d.ts +3 -0
  40. package/dist/cache/client.d.ts.map +1 -0
  41. package/dist/cache/client.js +3 -0
  42. package/dist/cache/client.js.map +1 -0
  43. package/dist/cache/generated.d.ts +3355 -0
  44. package/dist/cache/generated.d.ts.map +1 -0
  45. package/dist/cache/generated.js +6 -0
  46. package/dist/cache/generated.js.map +1 -0
  47. package/dist/cache/index.d.ts +2 -0
  48. package/dist/cache/index.d.ts.map +1 -0
  49. package/dist/cache/index.js +2 -0
  50. package/dist/cache/index.js.map +1 -0
  51. package/dist/config/client.d.ts +3 -0
  52. package/dist/config/client.d.ts.map +1 -0
  53. package/dist/config/client.js +3 -0
  54. package/dist/config/client.js.map +1 -0
  55. package/dist/config/generated.d.ts +1150 -0
  56. package/dist/config/generated.d.ts.map +1 -0
  57. package/dist/config/generated.js +6 -0
  58. package/dist/config/generated.js.map +1 -0
  59. package/dist/config/index.d.ts +2 -0
  60. package/dist/config/index.d.ts.map +1 -0
  61. package/dist/config/index.js +2 -0
  62. package/dist/config/index.js.map +1 -0
  63. package/dist/dashboard/client.d.ts +3 -0
  64. package/dist/dashboard/client.d.ts.map +1 -0
  65. package/dist/dashboard/client.js +3 -0
  66. package/dist/dashboard/client.js.map +1 -0
  67. package/dist/dashboard/generated.d.ts +4831 -0
  68. package/dist/dashboard/generated.d.ts.map +1 -0
  69. package/dist/dashboard/generated.js +6 -0
  70. package/dist/dashboard/generated.js.map +1 -0
  71. package/dist/dashboard/index.d.ts +2 -0
  72. package/dist/dashboard/index.d.ts.map +1 -0
  73. package/dist/dashboard/index.js +2 -0
  74. package/dist/dashboard/index.js.map +1 -0
  75. package/dist/errors/client.d.ts +3 -0
  76. package/dist/errors/client.d.ts.map +1 -0
  77. package/dist/errors/client.js +3 -0
  78. package/dist/errors/client.js.map +1 -0
  79. package/dist/errors/generated.d.ts +340 -0
  80. package/dist/errors/generated.d.ts.map +1 -0
  81. package/dist/errors/generated.js +6 -0
  82. package/dist/errors/generated.js.map +1 -0
  83. package/dist/errors/index.d.ts +2 -0
  84. package/dist/errors/index.d.ts.map +1 -0
  85. package/dist/errors/index.js +2 -0
  86. package/dist/errors/index.js.map +1 -0
  87. package/dist/index.d.ts +15 -0
  88. package/dist/index.d.ts.map +1 -0
  89. package/dist/index.js +19 -0
  90. package/dist/index.js.map +1 -0
  91. package/dist/internationalization/client.d.ts +3 -0
  92. package/dist/internationalization/client.d.ts.map +1 -0
  93. package/dist/internationalization/client.js +3 -0
  94. package/dist/internationalization/client.js.map +1 -0
  95. package/dist/internationalization/generated.d.ts +587 -0
  96. package/dist/internationalization/generated.d.ts.map +1 -0
  97. package/dist/internationalization/generated.js +6 -0
  98. package/dist/internationalization/generated.js.map +1 -0
  99. package/dist/internationalization/index.d.ts +2 -0
  100. package/dist/internationalization/index.d.ts.map +1 -0
  101. package/dist/internationalization/index.js +2 -0
  102. package/dist/internationalization/index.js.map +1 -0
  103. package/dist/invitations/client.d.ts +3 -0
  104. package/dist/invitations/client.d.ts.map +1 -0
  105. package/dist/invitations/client.js +3 -0
  106. package/dist/invitations/client.js.map +1 -0
  107. package/dist/invitations/generated.d.ts +4019 -0
  108. package/dist/invitations/generated.d.ts.map +1 -0
  109. package/dist/invitations/generated.js +6 -0
  110. package/dist/invitations/generated.js.map +1 -0
  111. package/dist/invitations/index.d.ts +2 -0
  112. package/dist/invitations/index.d.ts.map +1 -0
  113. package/dist/invitations/index.js +2 -0
  114. package/dist/invitations/index.js.map +1 -0
  115. package/dist/registration/client.d.ts +3 -0
  116. package/dist/registration/client.d.ts.map +1 -0
  117. package/dist/registration/client.js +3 -0
  118. package/dist/registration/client.js.map +1 -0
  119. package/dist/registration/generated.d.ts +1010 -0
  120. package/dist/registration/generated.d.ts.map +1 -0
  121. package/dist/registration/generated.js +6 -0
  122. package/dist/registration/generated.js.map +1 -0
  123. package/dist/registration/index.d.ts +2 -0
  124. package/dist/registration/index.d.ts.map +1 -0
  125. package/dist/registration/index.js +2 -0
  126. package/dist/registration/index.js.map +1 -0
  127. package/dist/role/client.d.ts +3 -0
  128. package/dist/role/client.d.ts.map +1 -0
  129. package/dist/role/client.js +3 -0
  130. package/dist/role/client.js.map +1 -0
  131. package/dist/role/generated.d.ts +6324 -0
  132. package/dist/role/generated.d.ts.map +1 -0
  133. package/dist/role/generated.js +6 -0
  134. package/dist/role/generated.js.map +1 -0
  135. package/dist/role/index.d.ts +2 -0
  136. package/dist/role/index.d.ts.map +1 -0
  137. package/dist/role/index.js +2 -0
  138. package/dist/role/index.js.map +1 -0
  139. package/dist/tenant/client.d.ts +3 -0
  140. package/dist/tenant/client.d.ts.map +1 -0
  141. package/dist/tenant/client.js +3 -0
  142. package/dist/tenant/client.js.map +1 -0
  143. package/dist/tenant/generated.d.ts +8273 -0
  144. package/dist/tenant/generated.d.ts.map +1 -0
  145. package/dist/tenant/generated.js +6 -0
  146. package/dist/tenant/generated.js.map +1 -0
  147. package/dist/tenant/index.d.ts +2 -0
  148. package/dist/tenant/index.d.ts.map +1 -0
  149. package/dist/tenant/index.js +2 -0
  150. package/dist/tenant/index.js.map +1 -0
  151. package/dist/tokens/client.d.ts +3 -0
  152. package/dist/tokens/client.d.ts.map +1 -0
  153. package/dist/tokens/client.js +3 -0
  154. package/dist/tokens/client.js.map +1 -0
  155. package/dist/tokens/generated.d.ts +528 -0
  156. package/dist/tokens/generated.d.ts.map +1 -0
  157. package/dist/tokens/generated.js +6 -0
  158. package/dist/tokens/generated.js.map +1 -0
  159. package/dist/tokens/index.d.ts +2 -0
  160. package/dist/tokens/index.d.ts.map +1 -0
  161. package/dist/tokens/index.js +2 -0
  162. package/dist/tokens/index.js.map +1 -0
  163. package/dist/user/client.d.ts +3 -0
  164. package/dist/user/client.d.ts.map +1 -0
  165. package/dist/user/client.js +3 -0
  166. package/dist/user/client.js.map +1 -0
  167. package/dist/user/generated.d.ts +4350 -0
  168. package/dist/user/generated.d.ts.map +1 -0
  169. package/dist/user/generated.js +6 -0
  170. package/dist/user/generated.js.map +1 -0
  171. package/dist/user/index.d.ts +2 -0
  172. package/dist/user/index.d.ts.map +1 -0
  173. package/dist/user/index.js +2 -0
  174. package/dist/user/index.js.map +1 -0
  175. package/package.json +39 -0
@@ -0,0 +1,4350 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+ export interface paths {
6
+ "/v1/users/admin": {
7
+ parameters: {
8
+ query?: never;
9
+ header?: never;
10
+ path?: never;
11
+ cookie?: never;
12
+ };
13
+ /**
14
+ * Get Users
15
+ * @description Get paginated list of users with filtering and search.
16
+ *
17
+ * **For**: Admin users managing organization users
18
+ * **Purpose**: Lists all users in the organization with filtering options
19
+ *
20
+ * **Authentication**: Required (JWT token with api_access permission)
21
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
22
+ */
23
+ get: operations["listUsers"];
24
+ put?: never;
25
+ /**
26
+ * Create User
27
+ * @description Create a new user account.
28
+ *
29
+ * **For**: Admin users adding new users to the organization
30
+ * **Purpose**: Creates a new user with specified role and permissions
31
+ *
32
+ * **Authentication**: Required (JWT token with api_access permission)
33
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
34
+ */
35
+ post: operations["createUser"];
36
+ delete?: never;
37
+ options?: never;
38
+ head?: never;
39
+ patch?: never;
40
+ trace?: never;
41
+ };
42
+ "/v1/users/admin/{user_id}": {
43
+ parameters: {
44
+ query?: never;
45
+ header?: never;
46
+ path?: never;
47
+ cookie?: never;
48
+ };
49
+ /**
50
+ * Get User Details
51
+ * @description Get detailed information about a specific user.
52
+ *
53
+ * **For**: Admin users viewing detailed user information
54
+ * **Purpose**: Retrieves complete user profile and settings
55
+ *
56
+ * **Authentication**: Required (JWT token with api_access permission)
57
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
58
+ */
59
+ get: operations["getUser"];
60
+ put?: never;
61
+ post?: never;
62
+ /**
63
+ * Delete User
64
+ * @description Delete a user.
65
+ *
66
+ * **For**: Admin users removing users from the organization
67
+ * **Purpose**: Soft deletes (default) or permanently removes a user
68
+ *
69
+ * **Authentication**: Required (JWT token with api_access permission)
70
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
71
+ */
72
+ delete: operations["deleteUser"];
73
+ options?: never;
74
+ head?: never;
75
+ /**
76
+ * Update User
77
+ * @description Update user information.
78
+ *
79
+ * **For**: Admin users updating user profiles
80
+ * **Purpose**: Updates user profile information (not including password or role)
81
+ *
82
+ * **Authentication**: Required (JWT token with api_access permission)
83
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
84
+ */
85
+ patch: operations["updateUser"];
86
+ trace?: never;
87
+ };
88
+ "/v1/users/admin/{user_id}/blocks": {
89
+ parameters: {
90
+ query?: never;
91
+ header?: never;
92
+ path?: never;
93
+ cookie?: never;
94
+ };
95
+ get?: never;
96
+ put?: never;
97
+ /**
98
+ * Block User
99
+ * @description Block a user account.
100
+ *
101
+ * **For**: Admin users blocking problematic users
102
+ * **Purpose**: Disables user access and optionally notifies them
103
+ *
104
+ * **Authentication**: Required (JWT token with api_access permission)
105
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
106
+ */
107
+ post: operations["blockUser"];
108
+ /**
109
+ * Unblock User
110
+ * @description Unblock a user account.
111
+ *
112
+ * **For**: Admin users restoring blocked user access
113
+ * **Purpose**: Re-enables user access and resets login attempts
114
+ *
115
+ * **Authentication**: Required (JWT token with api_access permission)
116
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
117
+ */
118
+ delete: operations["unblockUser"];
119
+ options?: never;
120
+ head?: never;
121
+ patch?: never;
122
+ trace?: never;
123
+ };
124
+ "/v1/users/admin/{user_id}/email-verifications": {
125
+ parameters: {
126
+ query?: never;
127
+ header?: never;
128
+ path?: never;
129
+ cookie?: never;
130
+ };
131
+ get?: never;
132
+ put?: never;
133
+ /**
134
+ * Verify Email
135
+ * @description Manually verify user email.
136
+ *
137
+ * **For**: Admin users manually verifying user emails
138
+ * **Purpose**: Marks user email as verified without requiring verification link
139
+ *
140
+ * **Authentication**: Required (JWT token with api_access permission)
141
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
142
+ */
143
+ post: operations["verifyUserEmail"];
144
+ delete?: never;
145
+ options?: never;
146
+ head?: never;
147
+ patch?: never;
148
+ trace?: never;
149
+ };
150
+ "/v1/users/admin/{user_id}/mobile-verifications": {
151
+ parameters: {
152
+ query?: never;
153
+ header?: never;
154
+ path?: never;
155
+ cookie?: never;
156
+ };
157
+ get?: never;
158
+ put?: never;
159
+ /**
160
+ * Verify Mobile
161
+ * @description Manually verify user mobile.
162
+ *
163
+ * **For**: Admin users manually verifying user mobile numbers
164
+ * **Purpose**: Marks user mobile as verified without requiring OTP
165
+ *
166
+ * **Authentication**: Required (JWT token with api_access permission)
167
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
168
+ */
169
+ post: operations["verifyUserMobile"];
170
+ delete?: never;
171
+ options?: never;
172
+ head?: never;
173
+ patch?: never;
174
+ trace?: never;
175
+ };
176
+ "/v1/users/admin/{user_id}/role": {
177
+ parameters: {
178
+ query?: never;
179
+ header?: never;
180
+ path?: never;
181
+ cookie?: never;
182
+ };
183
+ get?: never;
184
+ put?: never;
185
+ post?: never;
186
+ delete?: never;
187
+ options?: never;
188
+ head?: never;
189
+ /**
190
+ * Change Role
191
+ * @description Change user role.
192
+ *
193
+ * **For**: Admin users managing user roles and permissions
194
+ * **Purpose**: Updates user role and associated permissions in org_users_tbl, roles_tbl, access_layer_tbl, and user_access_layer_tbl
195
+ *
196
+ * **Authentication**: Required (JWT token with api_access permission)
197
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
198
+ */
199
+ patch: operations["updateUserRole"];
200
+ trace?: never;
201
+ };
202
+ "/v1/users/admin/{user_id}/password-resets": {
203
+ parameters: {
204
+ query?: never;
205
+ header?: never;
206
+ path?: never;
207
+ cookie?: never;
208
+ };
209
+ get?: never;
210
+ put?: never;
211
+ /**
212
+ * Reset Password
213
+ * @description Reset user password.
214
+ *
215
+ * **For**: Admin users resetting user passwords
216
+ * **Purpose**: Administratively sets a new password for a user
217
+ *
218
+ * **Authentication**: Required (JWT token with user.manage.all permission)
219
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
220
+ */
221
+ post: operations["resetUserPassword"];
222
+ delete?: never;
223
+ options?: never;
224
+ head?: never;
225
+ patch?: never;
226
+ trace?: never;
227
+ };
228
+ "/v1/users/admin/{user_id}/permissions": {
229
+ parameters: {
230
+ query?: never;
231
+ header?: never;
232
+ path?: never;
233
+ cookie?: never;
234
+ };
235
+ /**
236
+ * Get User Permissions
237
+ * @description Get user's effective permissions (resolved from role + overrides).
238
+ *
239
+ * **For**: Admin users debugging permission issues
240
+ * **Purpose**: View user's final resolved permissions (role + overrides)
241
+ *
242
+ * **Response Example**:
243
+ * ```json
244
+ * {
245
+ * "status": "success",
246
+ * "data": {
247
+ * "user_id": 789,
248
+ * "role": {"role_id": "role_teacher_123", "role_name": "Teacher"},
249
+ * "permissions": {
250
+ * "course": {"view": ["all"], "create": ["own"], "edit": ["own"]},
251
+ * "user": {"view": ["own"]}
252
+ * },
253
+ * "overrides": [
254
+ * {
255
+ * "override_id": "uacl_abc123",
256
+ * "permissions": {"course": {"delete": ["all"]}},
257
+ * "is_active": true,
258
+ * "expires_at": "2026-03-01T00:00:00Z"
259
+ * }
260
+ * ],
261
+ * "final_permissions": {
262
+ * "course": {"view": ["all"], "create": ["own"], "edit": ["own"], "delete": ["all"]},
263
+ * "user": {"view": ["own"]}
264
+ * }
265
+ * }
266
+ * }
267
+ * ```
268
+ *
269
+ * **Use Cases**:
270
+ * - Debugging: Why does user have/not have specific permission?
271
+ * - Audit: What can this user actually do?
272
+ * - Support: Help user understand their access level
273
+ *
274
+ * **Authentication**: Required (JWT token with user_permission.view.all permission)
275
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
276
+ * **Permissions**: user_permission.view.all
277
+ */
278
+ get: operations["listUserPermissions"];
279
+ put?: never;
280
+ /**
281
+ * Grant Permission Override
282
+ * @description Grant permission override to a specific user (RBAC v2.1).
283
+ *
284
+ * **For**: Admin users granting temporary or permanent permission overrides
285
+ * **Purpose**: Override user's role permissions (highest precedence in permission resolution)
286
+ *
287
+ * **Example Request Body**:
288
+ * ```json
289
+ * {
290
+ * "target_user_id": 789,
291
+ * "permissions": {
292
+ * "course": {"delete": ["all"]},
293
+ * "user": {"view": ["all"]}
294
+ * },
295
+ * "override_reason": "Temporary admin access for Q4 cleanup project",
296
+ * "expires_at": "2026-03-01T00:00:00Z"
297
+ * }
298
+ * ```
299
+ *
300
+ * **Use Cases**:
301
+ * - Temporary elevated permissions for specific projects
302
+ * - Emergency admin access grants
303
+ * - User-specific permission restrictions
304
+ *
305
+ * **Permission Resolution** (highest to lowest):
306
+ * 1. **User Permission Override** ← This endpoint
307
+ * 2. Role Access Layer
308
+ * 3. Platform Default
309
+ * 4. Deny
310
+ *
311
+ * **Authentication**: Required (JWT token with user_permission.grant.all permission)
312
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
313
+ * **Permissions**: user_permission.grant.all
314
+ */
315
+ post: operations["createUserPermission"];
316
+ delete?: never;
317
+ options?: never;
318
+ head?: never;
319
+ patch?: never;
320
+ trace?: never;
321
+ };
322
+ "/v1/users/admin/{user_id}/permissions/{override_id}": {
323
+ parameters: {
324
+ query?: never;
325
+ header?: never;
326
+ path?: never;
327
+ cookie?: never;
328
+ };
329
+ get?: never;
330
+ put?: never;
331
+ post?: never;
332
+ /**
333
+ * Revoke Permission Override
334
+ * @description Revoke user's permission override (revert to role permissions).
335
+ *
336
+ * **For**: Admin users removing permission overrides
337
+ * **Purpose**: Remove user-specific permission override, user reverts to role permissions
338
+ *
339
+ * **Path Parameters**:
340
+ * - user_id: Target user's internal ID
341
+ * - override_id: Override external ID (uacl_xxx)
342
+ *
343
+ * **Query Parameters**:
344
+ * - reason: Optional reason for revocation (for audit log)
345
+ *
346
+ * **Use Cases**:
347
+ * - Project completed, remove temporary elevated access
348
+ * - Emergency access no longer needed
349
+ * - Revoke mistakenly granted permissions
350
+ *
351
+ * **Note**: Soft delete for recoverability, audit log entry created
352
+ *
353
+ * **Authentication**: Required (JWT token with user_permission.revoke.all permission)
354
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
355
+ * **Permissions**: user_permission.revoke.all
356
+ */
357
+ delete: operations["deleteUserPermission"];
358
+ options?: never;
359
+ head?: never;
360
+ patch?: never;
361
+ trace?: never;
362
+ };
363
+ "/v1/users/admin/bulk-registrations": {
364
+ parameters: {
365
+ query?: never;
366
+ header?: never;
367
+ path?: never;
368
+ cookie?: never;
369
+ };
370
+ get?: never;
371
+ put?: never;
372
+ /**
373
+ * Bulk Register Users
374
+ * @description Register multiple users at once.
375
+ *
376
+ * **For**: Admin users creating multiple user accounts in bulk
377
+ * **Purpose**: Creates multiple user accounts with passwords
378
+ *
379
+ * **Authentication**: Required (JWT token with api_access permission)
380
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
381
+ */
382
+ post: operations["bulkRegisterUsers"];
383
+ delete?: never;
384
+ options?: never;
385
+ head?: never;
386
+ patch?: never;
387
+ trace?: never;
388
+ };
389
+ "/v1/users/admin/bulk-updates": {
390
+ parameters: {
391
+ query?: never;
392
+ header?: never;
393
+ path?: never;
394
+ cookie?: never;
395
+ };
396
+ get?: never;
397
+ put?: never;
398
+ /**
399
+ * Bulk Update Users
400
+ * @description Update multiple users at once.
401
+ *
402
+ * **For**: Admin users updating multiple users with same data
403
+ * **Purpose**: Applies same updates to multiple users
404
+ *
405
+ * **Authentication**: Required (JWT token with api_access permission)
406
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
407
+ */
408
+ post: operations["bulkUpdateUsers"];
409
+ delete?: never;
410
+ options?: never;
411
+ head?: never;
412
+ patch?: never;
413
+ trace?: never;
414
+ };
415
+ "/v1/users/admin/bulk-deletions": {
416
+ parameters: {
417
+ query?: never;
418
+ header?: never;
419
+ path?: never;
420
+ cookie?: never;
421
+ };
422
+ get?: never;
423
+ put?: never;
424
+ /**
425
+ * Bulk Delete Users
426
+ * @description Delete multiple users at once.
427
+ *
428
+ * **For**: Admin users removing multiple users
429
+ * **Purpose**: Deletes multiple users (soft or hard delete)
430
+ *
431
+ * **Authentication**: Required (JWT token with api_access permission)
432
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
433
+ */
434
+ post: operations["bulkDeleteUsers"];
435
+ delete?: never;
436
+ options?: never;
437
+ head?: never;
438
+ patch?: never;
439
+ trace?: never;
440
+ };
441
+ "/v1/users/admin/stats": {
442
+ parameters: {
443
+ query?: never;
444
+ header?: never;
445
+ path?: never;
446
+ cookie?: never;
447
+ };
448
+ /**
449
+ * Get User Stats
450
+ * @description Get user statistics for the organization.
451
+ *
452
+ * **For**: Admin users viewing dashboard metrics
453
+ * **Purpose**: Provides overview statistics of users in the organization
454
+ *
455
+ * **Authentication**: Required (JWT token with api_access permission)
456
+ * **Headers**: X-Api-Key (org_id), Authorization (admin user)
457
+ */
458
+ get: operations["getUserStats"];
459
+ put?: never;
460
+ post?: never;
461
+ delete?: never;
462
+ options?: never;
463
+ head?: never;
464
+ patch?: never;
465
+ trace?: never;
466
+ };
467
+ }
468
+ export type webhooks = Record<string, never>;
469
+ export interface components {
470
+ schemas: {
471
+ /** BulkRegisterUser */
472
+ BulkRegisterUser: {
473
+ /**
474
+ * Email
475
+ * Format: email
476
+ */
477
+ email: string;
478
+ /** Password */
479
+ password: string;
480
+ /** First Name */
481
+ first_name: string;
482
+ /** Last Name */
483
+ last_name?: string | null;
484
+ /**
485
+ * Role Id
486
+ * @description Role ID for the user
487
+ */
488
+ role_id: number;
489
+ /** Mobile Isd Code */
490
+ mobile_isd_code?: string | null;
491
+ /** Mobile No */
492
+ mobile_no?: string | null;
493
+ };
494
+ Extensions: {
495
+ /** @example GENERIC_ERROR */
496
+ message_code?: string;
497
+ /** @example [] */
498
+ invalid_params?: components["schemas"]["InvalidParam"][];
499
+ extra_data?: Record<string, never> | null;
500
+ /** @example Detailed debug information */
501
+ debug?: string | null;
502
+ };
503
+ /** AddUserRequest */
504
+ AddUserRequest: {
505
+ /**
506
+ * Email
507
+ * Format: email
508
+ */
509
+ email: string;
510
+ /** Password */
511
+ password: string;
512
+ /** Confirm Password */
513
+ confirm_password: string;
514
+ /** First Name */
515
+ first_name: string;
516
+ /** Last Name */
517
+ last_name?: string | null;
518
+ /** Username */
519
+ username?: string | null;
520
+ /**
521
+ * Role Id
522
+ * @description Role ID for the user
523
+ */
524
+ role_id: number;
525
+ /** Mobile Isd Code */
526
+ mobile_isd_code?: string | null;
527
+ /** Mobile No */
528
+ mobile_no?: string | null;
529
+ /**
530
+ * Timezone
531
+ * @default UTC
532
+ */
533
+ timezone: string | null;
534
+ /**
535
+ * Preferred Language
536
+ * @default en-US
537
+ */
538
+ preferred_language: string | null;
539
+ /**
540
+ * Send Welcome Email
541
+ * @default true
542
+ */
543
+ send_welcome_email: boolean | null;
544
+ };
545
+ /**
546
+ * @example {
547
+ * "status": "success",
548
+ * "message": "Operation successful",
549
+ * "message_code": "api_suc_20001",
550
+ * "data": {},
551
+ * "metadata": {
552
+ * "timestamp": "2026-03-26T10:00:00.000Z",
553
+ * "requestId": "07e22004-cb60-4dfc-bc9c-b6f99664dca1",
554
+ * "traceId": "a9f1204c-bb82-41de-b234-7c3a9e120000",
555
+ * "version": "v1",
556
+ * "executionTime": 42,
557
+ * "language": "en-US"
558
+ * }
559
+ * }
560
+ */
561
+ StandardResponse: {
562
+ /** @example success */
563
+ status?: string;
564
+ data?: Record<string, never> | null;
565
+ /** @example Operation successful */
566
+ message?: string | null;
567
+ /** @example api_suc_20001 */
568
+ message_code?: string | null;
569
+ metadata?: Record<string, never> | null;
570
+ error?: components["schemas"]["ErrorResponse"];
571
+ };
572
+ InvalidParam: {
573
+ /** @example items[0].quantity */
574
+ field?: string;
575
+ /** @example Input should be greater than or equal to 1 */
576
+ error?: string;
577
+ };
578
+ /** BulkRegisterRequest */
579
+ BulkRegisterRequest: {
580
+ /** Users */
581
+ users: components["schemas"]["BulkRegisterUser"][];
582
+ /**
583
+ * Send Welcome Email
584
+ * @default true
585
+ */
586
+ send_welcome_email: boolean | null;
587
+ };
588
+ ErrorResponse: {
589
+ /** @example about:blank */
590
+ type?: string;
591
+ /** @example GENERIC_ERROR */
592
+ code?: string;
593
+ /** @example Client Error */
594
+ title?: string;
595
+ /** @example 400 */
596
+ status?: number;
597
+ /** @example An error occurred */
598
+ detail?: string;
599
+ /** @example /v1/cart/items */
600
+ instance?: string;
601
+ extensions?: components["schemas"]["Extensions"];
602
+ };
603
+ /** BlockUserRequest */
604
+ BlockUserRequest: {
605
+ /** Reason */
606
+ reason?: string | null;
607
+ /**
608
+ * Notify User
609
+ * @default false
610
+ */
611
+ notify_user: boolean | null;
612
+ };
613
+ /** BulkDeleteRequest */
614
+ BulkDeleteRequest: {
615
+ /** User Ids */
616
+ user_ids: number[];
617
+ /**
618
+ * Soft Delete
619
+ * @default true
620
+ */
621
+ soft_delete: boolean | null;
622
+ };
623
+ /** UpdateUserRequest */
624
+ UpdateUserRequest: {
625
+ /** First Name */
626
+ first_name?: string | null;
627
+ /** Last Name */
628
+ last_name?: string | null;
629
+ /** Username */
630
+ username?: string | null;
631
+ /** Mobile Isd Code */
632
+ mobile_isd_code?: string | null;
633
+ /** Mobile No */
634
+ mobile_no?: string | null;
635
+ /** Timezone */
636
+ timezone?: string | null;
637
+ /** Preferred Language */
638
+ preferred_language?: string | null;
639
+ /** Address1 */
640
+ address1?: string | null;
641
+ /** Address2 */
642
+ address2?: string | null;
643
+ /** City */
644
+ city?: string | null;
645
+ /** State */
646
+ state?: string | null;
647
+ /** Country */
648
+ country?: string | null;
649
+ /** Zip */
650
+ zip?: string | null;
651
+ };
652
+ /** ResetPasswordRequest */
653
+ ResetPasswordRequest: {
654
+ /** New Password */
655
+ new_password: string;
656
+ /**
657
+ * Send Email
658
+ * @default true
659
+ */
660
+ send_email: boolean | null;
661
+ };
662
+ /** BulkUpdateRequest */
663
+ BulkUpdateRequest: {
664
+ /** User Ids */
665
+ user_ids: number[];
666
+ updates: components["schemas"]["UpdateUserRequest"];
667
+ };
668
+ /** ChangeUserRoleRequest */
669
+ ChangeUserRoleRequest: {
670
+ /**
671
+ * Role Id
672
+ * @description New role ID for the user
673
+ */
674
+ role_id: number;
675
+ };
676
+ };
677
+ responses: never;
678
+ parameters: never;
679
+ requestBodies: never;
680
+ headers: never;
681
+ pathItems: never;
682
+ }
683
+ export type $defs = Record<string, never>;
684
+ export interface operations {
685
+ listUsers: {
686
+ parameters: {
687
+ query?: {
688
+ /** @description Search by name, email, username */
689
+ query?: string | null;
690
+ /** @description Filter by role ID */
691
+ role_id?: number | null;
692
+ /** @description Filter by status: active, blocked, inactive */
693
+ status?: string | null;
694
+ /** @description Filter by email verification status */
695
+ email_verified?: boolean | null;
696
+ /** @description Filter by mobile verification status */
697
+ mobile_verified?: boolean | null;
698
+ /** @description Sort field: created, name, email */
699
+ sort_by?: string | null;
700
+ /** @description Sort order: asc, desc */
701
+ order?: string | null;
702
+ /** @description Page number (1-based) */
703
+ page?: number;
704
+ /** @description Items per page (1–100, default 20) */
705
+ limit?: number;
706
+ };
707
+ header?: {
708
+ authorization?: string | null;
709
+ };
710
+ path?: never;
711
+ cookie?: never;
712
+ };
713
+ requestBody?: never;
714
+ responses: {
715
+ /** @description Successful Response */
716
+ 200: {
717
+ headers: {
718
+ [name: string]: unknown;
719
+ };
720
+ content: {
721
+ "application/json": unknown;
722
+ };
723
+ };
724
+ /** @description Bad Request */
725
+ 400: {
726
+ headers: {
727
+ [name: string]: unknown;
728
+ };
729
+ content: {
730
+ /**
731
+ * @example {
732
+ * "status": "error",
733
+ * "message": "An error occurred",
734
+ * "message_code": "GENERIC_ERROR",
735
+ * "metadata": {
736
+ * "timestamp": "2025-08-05T18:38:57Z",
737
+ * "requestId": "uuid",
738
+ * "traceId": "uuid",
739
+ * "version": "v1",
740
+ * "executionTime": 0,
741
+ * "language": "en-US",
742
+ * "links": [
743
+ * {
744
+ * "rel": "self",
745
+ * "href": "/v1/cart/items",
746
+ * "method": "POST"
747
+ * }
748
+ * ]
749
+ * },
750
+ * "error": {
751
+ * "type": "https://{your-domain}/errors/client-error",
752
+ * "code": "GENERIC_ERROR",
753
+ * "title": "Client Error",
754
+ * "status": 400,
755
+ * "detail": "An error occurred",
756
+ * "instance": "/v1/cart/items",
757
+ * "extensions": {
758
+ * "message_code": "GENERIC_ERROR",
759
+ * "invalid_params": []
760
+ * }
761
+ * }
762
+ * }
763
+ */
764
+ "application/json": components["schemas"]["StandardResponse"];
765
+ };
766
+ };
767
+ /** @description Unprocessable Entity */
768
+ 422: {
769
+ headers: {
770
+ [name: string]: unknown;
771
+ };
772
+ content: {
773
+ /**
774
+ * @example {
775
+ * "status": "error",
776
+ * "message": "One or more input fields are invalid",
777
+ * "message_code": "INVALID_INPUT",
778
+ * "metadata": {
779
+ * "timestamp": "2025-08-05T18:38:57Z",
780
+ * "requestId": "uuid",
781
+ * "traceId": "uuid",
782
+ * "version": "v1",
783
+ * "executionTime": 0,
784
+ * "language": "en-US",
785
+ * "links": [
786
+ * {
787
+ * "rel": "self",
788
+ * "href": "/v1/cart/items",
789
+ * "method": "POST"
790
+ * }
791
+ * ]
792
+ * },
793
+ * "error": {
794
+ * "type": "https://{your-domain}/errors/invalid-input",
795
+ * "code": "INVALID_INPUT",
796
+ * "title": "Invalid Input",
797
+ * "status": 422,
798
+ * "detail": "One or more input fields are invalid",
799
+ * "instance": "/v1/cart/items",
800
+ * "extensions": {
801
+ * "message_code": "INVALID_INPUT",
802
+ * "invalid_params": [
803
+ * {
804
+ * "field": "items[0].quantity",
805
+ * "error": "Input should be greater than or equal to 1"
806
+ * }
807
+ * ]
808
+ * }
809
+ * }
810
+ * }
811
+ */
812
+ "application/json": components["schemas"]["StandardResponse"];
813
+ };
814
+ };
815
+ /** @description Too Many Requests */
816
+ 429: {
817
+ headers: {
818
+ [name: string]: unknown;
819
+ };
820
+ content: {
821
+ /**
822
+ * @example {
823
+ * "status": "error",
824
+ * "message": "Too many requests",
825
+ * "message_code": "RATE_LIMIT_EXCEEDED",
826
+ * "metadata": {
827
+ * "timestamp": "2025-08-05T18:38:57Z",
828
+ * "requestId": "uuid",
829
+ * "traceId": "uuid",
830
+ * "version": "v1",
831
+ * "executionTime": 0,
832
+ * "language": "en-US",
833
+ * "links": [
834
+ * {
835
+ * "rel": "self",
836
+ * "href": "/v1/cart/items",
837
+ * "method": "POST"
838
+ * }
839
+ * ]
840
+ * },
841
+ * "error": {
842
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
843
+ * "code": "RATE_LIMIT_EXCEEDED",
844
+ * "title": "Rate Limit Exceeded",
845
+ * "status": 429,
846
+ * "detail": "Too many requests",
847
+ * "instance": "/v1/cart/items",
848
+ * "extensions": {
849
+ * "message_code": "RATE_LIMIT_EXCEEDED",
850
+ * "invalid_params": []
851
+ * }
852
+ * }
853
+ * }
854
+ */
855
+ "application/json": components["schemas"]["StandardResponse"];
856
+ };
857
+ };
858
+ /** @description Internal Server Error */
859
+ 500: {
860
+ headers: {
861
+ [name: string]: unknown;
862
+ };
863
+ content: {
864
+ /**
865
+ * @example {
866
+ * "status": "error",
867
+ * "message": "An unexpected error occurred",
868
+ * "message_code": "SERVER_ERROR",
869
+ * "metadata": {
870
+ * "timestamp": "2025-08-05T18:38:57Z",
871
+ * "requestId": "uuid",
872
+ * "traceId": "uuid",
873
+ * "version": "v1",
874
+ * "executionTime": 0,
875
+ * "language": "en-US",
876
+ * "links": [
877
+ * {
878
+ * "rel": "self",
879
+ * "href": "/v1/cart/items",
880
+ * "method": "POST"
881
+ * }
882
+ * ]
883
+ * },
884
+ * "error": {
885
+ * "type": "https://{your-domain}/errors/server-error",
886
+ * "code": "SERVER_ERROR",
887
+ * "title": "Server Error",
888
+ * "status": 500,
889
+ * "detail": "An unexpected error occurred",
890
+ * "instance": "/v1/cart/items",
891
+ * "extensions": {
892
+ * "message_code": "SERVER_ERROR",
893
+ * "invalid_params": []
894
+ * }
895
+ * }
896
+ * }
897
+ */
898
+ "application/json": components["schemas"]["StandardResponse"];
899
+ };
900
+ };
901
+ };
902
+ };
903
+ createUser: {
904
+ parameters: {
905
+ query?: never;
906
+ header?: {
907
+ authorization?: string | null;
908
+ };
909
+ path?: never;
910
+ cookie?: never;
911
+ };
912
+ requestBody: {
913
+ content: {
914
+ "application/json": components["schemas"]["AddUserRequest"];
915
+ };
916
+ };
917
+ responses: {
918
+ /** @description Successful Response */
919
+ 200: {
920
+ headers: {
921
+ [name: string]: unknown;
922
+ };
923
+ content: {
924
+ "application/json": unknown;
925
+ };
926
+ };
927
+ /** @description Bad Request */
928
+ 400: {
929
+ headers: {
930
+ [name: string]: unknown;
931
+ };
932
+ content: {
933
+ /**
934
+ * @example {
935
+ * "status": "error",
936
+ * "message": "An error occurred",
937
+ * "message_code": "GENERIC_ERROR",
938
+ * "metadata": {
939
+ * "timestamp": "2025-08-05T18:38:57Z",
940
+ * "requestId": "uuid",
941
+ * "traceId": "uuid",
942
+ * "version": "v1",
943
+ * "executionTime": 0,
944
+ * "language": "en-US",
945
+ * "links": [
946
+ * {
947
+ * "rel": "self",
948
+ * "href": "/v1/cart/items",
949
+ * "method": "POST"
950
+ * }
951
+ * ]
952
+ * },
953
+ * "error": {
954
+ * "type": "https://{your-domain}/errors/client-error",
955
+ * "code": "GENERIC_ERROR",
956
+ * "title": "Client Error",
957
+ * "status": 400,
958
+ * "detail": "An error occurred",
959
+ * "instance": "/v1/cart/items",
960
+ * "extensions": {
961
+ * "message_code": "GENERIC_ERROR",
962
+ * "invalid_params": []
963
+ * }
964
+ * }
965
+ * }
966
+ */
967
+ "application/json": components["schemas"]["StandardResponse"];
968
+ };
969
+ };
970
+ /** @description Unprocessable Entity */
971
+ 422: {
972
+ headers: {
973
+ [name: string]: unknown;
974
+ };
975
+ content: {
976
+ /**
977
+ * @example {
978
+ * "status": "error",
979
+ * "message": "One or more input fields are invalid",
980
+ * "message_code": "INVALID_INPUT",
981
+ * "metadata": {
982
+ * "timestamp": "2025-08-05T18:38:57Z",
983
+ * "requestId": "uuid",
984
+ * "traceId": "uuid",
985
+ * "version": "v1",
986
+ * "executionTime": 0,
987
+ * "language": "en-US",
988
+ * "links": [
989
+ * {
990
+ * "rel": "self",
991
+ * "href": "/v1/cart/items",
992
+ * "method": "POST"
993
+ * }
994
+ * ]
995
+ * },
996
+ * "error": {
997
+ * "type": "https://{your-domain}/errors/invalid-input",
998
+ * "code": "INVALID_INPUT",
999
+ * "title": "Invalid Input",
1000
+ * "status": 422,
1001
+ * "detail": "One or more input fields are invalid",
1002
+ * "instance": "/v1/cart/items",
1003
+ * "extensions": {
1004
+ * "message_code": "INVALID_INPUT",
1005
+ * "invalid_params": [
1006
+ * {
1007
+ * "field": "items[0].quantity",
1008
+ * "error": "Input should be greater than or equal to 1"
1009
+ * }
1010
+ * ]
1011
+ * }
1012
+ * }
1013
+ * }
1014
+ */
1015
+ "application/json": components["schemas"]["StandardResponse"];
1016
+ };
1017
+ };
1018
+ /** @description Too Many Requests */
1019
+ 429: {
1020
+ headers: {
1021
+ [name: string]: unknown;
1022
+ };
1023
+ content: {
1024
+ /**
1025
+ * @example {
1026
+ * "status": "error",
1027
+ * "message": "Too many requests",
1028
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1029
+ * "metadata": {
1030
+ * "timestamp": "2025-08-05T18:38:57Z",
1031
+ * "requestId": "uuid",
1032
+ * "traceId": "uuid",
1033
+ * "version": "v1",
1034
+ * "executionTime": 0,
1035
+ * "language": "en-US",
1036
+ * "links": [
1037
+ * {
1038
+ * "rel": "self",
1039
+ * "href": "/v1/cart/items",
1040
+ * "method": "POST"
1041
+ * }
1042
+ * ]
1043
+ * },
1044
+ * "error": {
1045
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
1046
+ * "code": "RATE_LIMIT_EXCEEDED",
1047
+ * "title": "Rate Limit Exceeded",
1048
+ * "status": 429,
1049
+ * "detail": "Too many requests",
1050
+ * "instance": "/v1/cart/items",
1051
+ * "extensions": {
1052
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1053
+ * "invalid_params": []
1054
+ * }
1055
+ * }
1056
+ * }
1057
+ */
1058
+ "application/json": components["schemas"]["StandardResponse"];
1059
+ };
1060
+ };
1061
+ /** @description Internal Server Error */
1062
+ 500: {
1063
+ headers: {
1064
+ [name: string]: unknown;
1065
+ };
1066
+ content: {
1067
+ /**
1068
+ * @example {
1069
+ * "status": "error",
1070
+ * "message": "An unexpected error occurred",
1071
+ * "message_code": "SERVER_ERROR",
1072
+ * "metadata": {
1073
+ * "timestamp": "2025-08-05T18:38:57Z",
1074
+ * "requestId": "uuid",
1075
+ * "traceId": "uuid",
1076
+ * "version": "v1",
1077
+ * "executionTime": 0,
1078
+ * "language": "en-US",
1079
+ * "links": [
1080
+ * {
1081
+ * "rel": "self",
1082
+ * "href": "/v1/cart/items",
1083
+ * "method": "POST"
1084
+ * }
1085
+ * ]
1086
+ * },
1087
+ * "error": {
1088
+ * "type": "https://{your-domain}/errors/server-error",
1089
+ * "code": "SERVER_ERROR",
1090
+ * "title": "Server Error",
1091
+ * "status": 500,
1092
+ * "detail": "An unexpected error occurred",
1093
+ * "instance": "/v1/cart/items",
1094
+ * "extensions": {
1095
+ * "message_code": "SERVER_ERROR",
1096
+ * "invalid_params": []
1097
+ * }
1098
+ * }
1099
+ * }
1100
+ */
1101
+ "application/json": components["schemas"]["StandardResponse"];
1102
+ };
1103
+ };
1104
+ };
1105
+ };
1106
+ getUser: {
1107
+ parameters: {
1108
+ query?: never;
1109
+ header?: {
1110
+ authorization?: string | null;
1111
+ };
1112
+ path: {
1113
+ user_id: number;
1114
+ };
1115
+ cookie?: never;
1116
+ };
1117
+ requestBody?: never;
1118
+ responses: {
1119
+ /** @description Successful Response */
1120
+ 200: {
1121
+ headers: {
1122
+ [name: string]: unknown;
1123
+ };
1124
+ content: {
1125
+ "application/json": unknown;
1126
+ };
1127
+ };
1128
+ /** @description Bad Request */
1129
+ 400: {
1130
+ headers: {
1131
+ [name: string]: unknown;
1132
+ };
1133
+ content: {
1134
+ /**
1135
+ * @example {
1136
+ * "status": "error",
1137
+ * "message": "An error occurred",
1138
+ * "message_code": "GENERIC_ERROR",
1139
+ * "metadata": {
1140
+ * "timestamp": "2025-08-05T18:38:57Z",
1141
+ * "requestId": "uuid",
1142
+ * "traceId": "uuid",
1143
+ * "version": "v1",
1144
+ * "executionTime": 0,
1145
+ * "language": "en-US",
1146
+ * "links": [
1147
+ * {
1148
+ * "rel": "self",
1149
+ * "href": "/v1/cart/items",
1150
+ * "method": "POST"
1151
+ * }
1152
+ * ]
1153
+ * },
1154
+ * "error": {
1155
+ * "type": "https://{your-domain}/errors/client-error",
1156
+ * "code": "GENERIC_ERROR",
1157
+ * "title": "Client Error",
1158
+ * "status": 400,
1159
+ * "detail": "An error occurred",
1160
+ * "instance": "/v1/cart/items",
1161
+ * "extensions": {
1162
+ * "message_code": "GENERIC_ERROR",
1163
+ * "invalid_params": []
1164
+ * }
1165
+ * }
1166
+ * }
1167
+ */
1168
+ "application/json": components["schemas"]["StandardResponse"];
1169
+ };
1170
+ };
1171
+ /** @description Unprocessable Entity */
1172
+ 422: {
1173
+ headers: {
1174
+ [name: string]: unknown;
1175
+ };
1176
+ content: {
1177
+ /**
1178
+ * @example {
1179
+ * "status": "error",
1180
+ * "message": "One or more input fields are invalid",
1181
+ * "message_code": "INVALID_INPUT",
1182
+ * "metadata": {
1183
+ * "timestamp": "2025-08-05T18:38:57Z",
1184
+ * "requestId": "uuid",
1185
+ * "traceId": "uuid",
1186
+ * "version": "v1",
1187
+ * "executionTime": 0,
1188
+ * "language": "en-US",
1189
+ * "links": [
1190
+ * {
1191
+ * "rel": "self",
1192
+ * "href": "/v1/cart/items",
1193
+ * "method": "POST"
1194
+ * }
1195
+ * ]
1196
+ * },
1197
+ * "error": {
1198
+ * "type": "https://{your-domain}/errors/invalid-input",
1199
+ * "code": "INVALID_INPUT",
1200
+ * "title": "Invalid Input",
1201
+ * "status": 422,
1202
+ * "detail": "One or more input fields are invalid",
1203
+ * "instance": "/v1/cart/items",
1204
+ * "extensions": {
1205
+ * "message_code": "INVALID_INPUT",
1206
+ * "invalid_params": [
1207
+ * {
1208
+ * "field": "items[0].quantity",
1209
+ * "error": "Input should be greater than or equal to 1"
1210
+ * }
1211
+ * ]
1212
+ * }
1213
+ * }
1214
+ * }
1215
+ */
1216
+ "application/json": components["schemas"]["StandardResponse"];
1217
+ };
1218
+ };
1219
+ /** @description Too Many Requests */
1220
+ 429: {
1221
+ headers: {
1222
+ [name: string]: unknown;
1223
+ };
1224
+ content: {
1225
+ /**
1226
+ * @example {
1227
+ * "status": "error",
1228
+ * "message": "Too many requests",
1229
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1230
+ * "metadata": {
1231
+ * "timestamp": "2025-08-05T18:38:57Z",
1232
+ * "requestId": "uuid",
1233
+ * "traceId": "uuid",
1234
+ * "version": "v1",
1235
+ * "executionTime": 0,
1236
+ * "language": "en-US",
1237
+ * "links": [
1238
+ * {
1239
+ * "rel": "self",
1240
+ * "href": "/v1/cart/items",
1241
+ * "method": "POST"
1242
+ * }
1243
+ * ]
1244
+ * },
1245
+ * "error": {
1246
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
1247
+ * "code": "RATE_LIMIT_EXCEEDED",
1248
+ * "title": "Rate Limit Exceeded",
1249
+ * "status": 429,
1250
+ * "detail": "Too many requests",
1251
+ * "instance": "/v1/cart/items",
1252
+ * "extensions": {
1253
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1254
+ * "invalid_params": []
1255
+ * }
1256
+ * }
1257
+ * }
1258
+ */
1259
+ "application/json": components["schemas"]["StandardResponse"];
1260
+ };
1261
+ };
1262
+ /** @description Internal Server Error */
1263
+ 500: {
1264
+ headers: {
1265
+ [name: string]: unknown;
1266
+ };
1267
+ content: {
1268
+ /**
1269
+ * @example {
1270
+ * "status": "error",
1271
+ * "message": "An unexpected error occurred",
1272
+ * "message_code": "SERVER_ERROR",
1273
+ * "metadata": {
1274
+ * "timestamp": "2025-08-05T18:38:57Z",
1275
+ * "requestId": "uuid",
1276
+ * "traceId": "uuid",
1277
+ * "version": "v1",
1278
+ * "executionTime": 0,
1279
+ * "language": "en-US",
1280
+ * "links": [
1281
+ * {
1282
+ * "rel": "self",
1283
+ * "href": "/v1/cart/items",
1284
+ * "method": "POST"
1285
+ * }
1286
+ * ]
1287
+ * },
1288
+ * "error": {
1289
+ * "type": "https://{your-domain}/errors/server-error",
1290
+ * "code": "SERVER_ERROR",
1291
+ * "title": "Server Error",
1292
+ * "status": 500,
1293
+ * "detail": "An unexpected error occurred",
1294
+ * "instance": "/v1/cart/items",
1295
+ * "extensions": {
1296
+ * "message_code": "SERVER_ERROR",
1297
+ * "invalid_params": []
1298
+ * }
1299
+ * }
1300
+ * }
1301
+ */
1302
+ "application/json": components["schemas"]["StandardResponse"];
1303
+ };
1304
+ };
1305
+ };
1306
+ };
1307
+ deleteUser: {
1308
+ parameters: {
1309
+ query?: {
1310
+ /** @description Soft delete (default) or hard delete */
1311
+ soft_delete?: boolean;
1312
+ };
1313
+ header?: {
1314
+ authorization?: string | null;
1315
+ };
1316
+ path: {
1317
+ user_id: number;
1318
+ };
1319
+ cookie?: never;
1320
+ };
1321
+ requestBody?: never;
1322
+ responses: {
1323
+ /** @description Successful Response */
1324
+ 200: {
1325
+ headers: {
1326
+ [name: string]: unknown;
1327
+ };
1328
+ content: {
1329
+ "application/json": unknown;
1330
+ };
1331
+ };
1332
+ /** @description Bad Request */
1333
+ 400: {
1334
+ headers: {
1335
+ [name: string]: unknown;
1336
+ };
1337
+ content: {
1338
+ /**
1339
+ * @example {
1340
+ * "status": "error",
1341
+ * "message": "An error occurred",
1342
+ * "message_code": "GENERIC_ERROR",
1343
+ * "metadata": {
1344
+ * "timestamp": "2025-08-05T18:38:57Z",
1345
+ * "requestId": "uuid",
1346
+ * "traceId": "uuid",
1347
+ * "version": "v1",
1348
+ * "executionTime": 0,
1349
+ * "language": "en-US",
1350
+ * "links": [
1351
+ * {
1352
+ * "rel": "self",
1353
+ * "href": "/v1/cart/items",
1354
+ * "method": "POST"
1355
+ * }
1356
+ * ]
1357
+ * },
1358
+ * "error": {
1359
+ * "type": "https://{your-domain}/errors/client-error",
1360
+ * "code": "GENERIC_ERROR",
1361
+ * "title": "Client Error",
1362
+ * "status": 400,
1363
+ * "detail": "An error occurred",
1364
+ * "instance": "/v1/cart/items",
1365
+ * "extensions": {
1366
+ * "message_code": "GENERIC_ERROR",
1367
+ * "invalid_params": []
1368
+ * }
1369
+ * }
1370
+ * }
1371
+ */
1372
+ "application/json": components["schemas"]["StandardResponse"];
1373
+ };
1374
+ };
1375
+ /** @description Unprocessable Entity */
1376
+ 422: {
1377
+ headers: {
1378
+ [name: string]: unknown;
1379
+ };
1380
+ content: {
1381
+ /**
1382
+ * @example {
1383
+ * "status": "error",
1384
+ * "message": "One or more input fields are invalid",
1385
+ * "message_code": "INVALID_INPUT",
1386
+ * "metadata": {
1387
+ * "timestamp": "2025-08-05T18:38:57Z",
1388
+ * "requestId": "uuid",
1389
+ * "traceId": "uuid",
1390
+ * "version": "v1",
1391
+ * "executionTime": 0,
1392
+ * "language": "en-US",
1393
+ * "links": [
1394
+ * {
1395
+ * "rel": "self",
1396
+ * "href": "/v1/cart/items",
1397
+ * "method": "POST"
1398
+ * }
1399
+ * ]
1400
+ * },
1401
+ * "error": {
1402
+ * "type": "https://{your-domain}/errors/invalid-input",
1403
+ * "code": "INVALID_INPUT",
1404
+ * "title": "Invalid Input",
1405
+ * "status": 422,
1406
+ * "detail": "One or more input fields are invalid",
1407
+ * "instance": "/v1/cart/items",
1408
+ * "extensions": {
1409
+ * "message_code": "INVALID_INPUT",
1410
+ * "invalid_params": [
1411
+ * {
1412
+ * "field": "items[0].quantity",
1413
+ * "error": "Input should be greater than or equal to 1"
1414
+ * }
1415
+ * ]
1416
+ * }
1417
+ * }
1418
+ * }
1419
+ */
1420
+ "application/json": components["schemas"]["StandardResponse"];
1421
+ };
1422
+ };
1423
+ /** @description Too Many Requests */
1424
+ 429: {
1425
+ headers: {
1426
+ [name: string]: unknown;
1427
+ };
1428
+ content: {
1429
+ /**
1430
+ * @example {
1431
+ * "status": "error",
1432
+ * "message": "Too many requests",
1433
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1434
+ * "metadata": {
1435
+ * "timestamp": "2025-08-05T18:38:57Z",
1436
+ * "requestId": "uuid",
1437
+ * "traceId": "uuid",
1438
+ * "version": "v1",
1439
+ * "executionTime": 0,
1440
+ * "language": "en-US",
1441
+ * "links": [
1442
+ * {
1443
+ * "rel": "self",
1444
+ * "href": "/v1/cart/items",
1445
+ * "method": "POST"
1446
+ * }
1447
+ * ]
1448
+ * },
1449
+ * "error": {
1450
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
1451
+ * "code": "RATE_LIMIT_EXCEEDED",
1452
+ * "title": "Rate Limit Exceeded",
1453
+ * "status": 429,
1454
+ * "detail": "Too many requests",
1455
+ * "instance": "/v1/cart/items",
1456
+ * "extensions": {
1457
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1458
+ * "invalid_params": []
1459
+ * }
1460
+ * }
1461
+ * }
1462
+ */
1463
+ "application/json": components["schemas"]["StandardResponse"];
1464
+ };
1465
+ };
1466
+ /** @description Internal Server Error */
1467
+ 500: {
1468
+ headers: {
1469
+ [name: string]: unknown;
1470
+ };
1471
+ content: {
1472
+ /**
1473
+ * @example {
1474
+ * "status": "error",
1475
+ * "message": "An unexpected error occurred",
1476
+ * "message_code": "SERVER_ERROR",
1477
+ * "metadata": {
1478
+ * "timestamp": "2025-08-05T18:38:57Z",
1479
+ * "requestId": "uuid",
1480
+ * "traceId": "uuid",
1481
+ * "version": "v1",
1482
+ * "executionTime": 0,
1483
+ * "language": "en-US",
1484
+ * "links": [
1485
+ * {
1486
+ * "rel": "self",
1487
+ * "href": "/v1/cart/items",
1488
+ * "method": "POST"
1489
+ * }
1490
+ * ]
1491
+ * },
1492
+ * "error": {
1493
+ * "type": "https://{your-domain}/errors/server-error",
1494
+ * "code": "SERVER_ERROR",
1495
+ * "title": "Server Error",
1496
+ * "status": 500,
1497
+ * "detail": "An unexpected error occurred",
1498
+ * "instance": "/v1/cart/items",
1499
+ * "extensions": {
1500
+ * "message_code": "SERVER_ERROR",
1501
+ * "invalid_params": []
1502
+ * }
1503
+ * }
1504
+ * }
1505
+ */
1506
+ "application/json": components["schemas"]["StandardResponse"];
1507
+ };
1508
+ };
1509
+ };
1510
+ };
1511
+ updateUser: {
1512
+ parameters: {
1513
+ query?: never;
1514
+ header?: {
1515
+ authorization?: string | null;
1516
+ };
1517
+ path: {
1518
+ user_id: number;
1519
+ };
1520
+ cookie?: never;
1521
+ };
1522
+ requestBody: {
1523
+ content: {
1524
+ "application/json": components["schemas"]["UpdateUserRequest"];
1525
+ };
1526
+ };
1527
+ responses: {
1528
+ /** @description Successful Response */
1529
+ 200: {
1530
+ headers: {
1531
+ [name: string]: unknown;
1532
+ };
1533
+ content: {
1534
+ "application/json": unknown;
1535
+ };
1536
+ };
1537
+ /** @description Bad Request */
1538
+ 400: {
1539
+ headers: {
1540
+ [name: string]: unknown;
1541
+ };
1542
+ content: {
1543
+ /**
1544
+ * @example {
1545
+ * "status": "error",
1546
+ * "message": "An error occurred",
1547
+ * "message_code": "GENERIC_ERROR",
1548
+ * "metadata": {
1549
+ * "timestamp": "2025-08-05T18:38:57Z",
1550
+ * "requestId": "uuid",
1551
+ * "traceId": "uuid",
1552
+ * "version": "v1",
1553
+ * "executionTime": 0,
1554
+ * "language": "en-US",
1555
+ * "links": [
1556
+ * {
1557
+ * "rel": "self",
1558
+ * "href": "/v1/cart/items",
1559
+ * "method": "POST"
1560
+ * }
1561
+ * ]
1562
+ * },
1563
+ * "error": {
1564
+ * "type": "https://{your-domain}/errors/client-error",
1565
+ * "code": "GENERIC_ERROR",
1566
+ * "title": "Client Error",
1567
+ * "status": 400,
1568
+ * "detail": "An error occurred",
1569
+ * "instance": "/v1/cart/items",
1570
+ * "extensions": {
1571
+ * "message_code": "GENERIC_ERROR",
1572
+ * "invalid_params": []
1573
+ * }
1574
+ * }
1575
+ * }
1576
+ */
1577
+ "application/json": components["schemas"]["StandardResponse"];
1578
+ };
1579
+ };
1580
+ /** @description Unprocessable Entity */
1581
+ 422: {
1582
+ headers: {
1583
+ [name: string]: unknown;
1584
+ };
1585
+ content: {
1586
+ /**
1587
+ * @example {
1588
+ * "status": "error",
1589
+ * "message": "One or more input fields are invalid",
1590
+ * "message_code": "INVALID_INPUT",
1591
+ * "metadata": {
1592
+ * "timestamp": "2025-08-05T18:38:57Z",
1593
+ * "requestId": "uuid",
1594
+ * "traceId": "uuid",
1595
+ * "version": "v1",
1596
+ * "executionTime": 0,
1597
+ * "language": "en-US",
1598
+ * "links": [
1599
+ * {
1600
+ * "rel": "self",
1601
+ * "href": "/v1/cart/items",
1602
+ * "method": "POST"
1603
+ * }
1604
+ * ]
1605
+ * },
1606
+ * "error": {
1607
+ * "type": "https://{your-domain}/errors/invalid-input",
1608
+ * "code": "INVALID_INPUT",
1609
+ * "title": "Invalid Input",
1610
+ * "status": 422,
1611
+ * "detail": "One or more input fields are invalid",
1612
+ * "instance": "/v1/cart/items",
1613
+ * "extensions": {
1614
+ * "message_code": "INVALID_INPUT",
1615
+ * "invalid_params": [
1616
+ * {
1617
+ * "field": "items[0].quantity",
1618
+ * "error": "Input should be greater than or equal to 1"
1619
+ * }
1620
+ * ]
1621
+ * }
1622
+ * }
1623
+ * }
1624
+ */
1625
+ "application/json": components["schemas"]["StandardResponse"];
1626
+ };
1627
+ };
1628
+ /** @description Too Many Requests */
1629
+ 429: {
1630
+ headers: {
1631
+ [name: string]: unknown;
1632
+ };
1633
+ content: {
1634
+ /**
1635
+ * @example {
1636
+ * "status": "error",
1637
+ * "message": "Too many requests",
1638
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1639
+ * "metadata": {
1640
+ * "timestamp": "2025-08-05T18:38:57Z",
1641
+ * "requestId": "uuid",
1642
+ * "traceId": "uuid",
1643
+ * "version": "v1",
1644
+ * "executionTime": 0,
1645
+ * "language": "en-US",
1646
+ * "links": [
1647
+ * {
1648
+ * "rel": "self",
1649
+ * "href": "/v1/cart/items",
1650
+ * "method": "POST"
1651
+ * }
1652
+ * ]
1653
+ * },
1654
+ * "error": {
1655
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
1656
+ * "code": "RATE_LIMIT_EXCEEDED",
1657
+ * "title": "Rate Limit Exceeded",
1658
+ * "status": 429,
1659
+ * "detail": "Too many requests",
1660
+ * "instance": "/v1/cart/items",
1661
+ * "extensions": {
1662
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1663
+ * "invalid_params": []
1664
+ * }
1665
+ * }
1666
+ * }
1667
+ */
1668
+ "application/json": components["schemas"]["StandardResponse"];
1669
+ };
1670
+ };
1671
+ /** @description Internal Server Error */
1672
+ 500: {
1673
+ headers: {
1674
+ [name: string]: unknown;
1675
+ };
1676
+ content: {
1677
+ /**
1678
+ * @example {
1679
+ * "status": "error",
1680
+ * "message": "An unexpected error occurred",
1681
+ * "message_code": "SERVER_ERROR",
1682
+ * "metadata": {
1683
+ * "timestamp": "2025-08-05T18:38:57Z",
1684
+ * "requestId": "uuid",
1685
+ * "traceId": "uuid",
1686
+ * "version": "v1",
1687
+ * "executionTime": 0,
1688
+ * "language": "en-US",
1689
+ * "links": [
1690
+ * {
1691
+ * "rel": "self",
1692
+ * "href": "/v1/cart/items",
1693
+ * "method": "POST"
1694
+ * }
1695
+ * ]
1696
+ * },
1697
+ * "error": {
1698
+ * "type": "https://{your-domain}/errors/server-error",
1699
+ * "code": "SERVER_ERROR",
1700
+ * "title": "Server Error",
1701
+ * "status": 500,
1702
+ * "detail": "An unexpected error occurred",
1703
+ * "instance": "/v1/cart/items",
1704
+ * "extensions": {
1705
+ * "message_code": "SERVER_ERROR",
1706
+ * "invalid_params": []
1707
+ * }
1708
+ * }
1709
+ * }
1710
+ */
1711
+ "application/json": components["schemas"]["StandardResponse"];
1712
+ };
1713
+ };
1714
+ };
1715
+ };
1716
+ blockUser: {
1717
+ parameters: {
1718
+ query?: never;
1719
+ header?: {
1720
+ authorization?: string | null;
1721
+ };
1722
+ path: {
1723
+ user_id: number;
1724
+ };
1725
+ cookie?: never;
1726
+ };
1727
+ requestBody: {
1728
+ content: {
1729
+ "application/json": components["schemas"]["BlockUserRequest"];
1730
+ };
1731
+ };
1732
+ responses: {
1733
+ /** @description Successful Response */
1734
+ 200: {
1735
+ headers: {
1736
+ [name: string]: unknown;
1737
+ };
1738
+ content: {
1739
+ "application/json": unknown;
1740
+ };
1741
+ };
1742
+ /** @description Bad Request */
1743
+ 400: {
1744
+ headers: {
1745
+ [name: string]: unknown;
1746
+ };
1747
+ content: {
1748
+ /**
1749
+ * @example {
1750
+ * "status": "error",
1751
+ * "message": "An error occurred",
1752
+ * "message_code": "GENERIC_ERROR",
1753
+ * "metadata": {
1754
+ * "timestamp": "2025-08-05T18:38:57Z",
1755
+ * "requestId": "uuid",
1756
+ * "traceId": "uuid",
1757
+ * "version": "v1",
1758
+ * "executionTime": 0,
1759
+ * "language": "en-US",
1760
+ * "links": [
1761
+ * {
1762
+ * "rel": "self",
1763
+ * "href": "/v1/cart/items",
1764
+ * "method": "POST"
1765
+ * }
1766
+ * ]
1767
+ * },
1768
+ * "error": {
1769
+ * "type": "https://{your-domain}/errors/client-error",
1770
+ * "code": "GENERIC_ERROR",
1771
+ * "title": "Client Error",
1772
+ * "status": 400,
1773
+ * "detail": "An error occurred",
1774
+ * "instance": "/v1/cart/items",
1775
+ * "extensions": {
1776
+ * "message_code": "GENERIC_ERROR",
1777
+ * "invalid_params": []
1778
+ * }
1779
+ * }
1780
+ * }
1781
+ */
1782
+ "application/json": components["schemas"]["StandardResponse"];
1783
+ };
1784
+ };
1785
+ /** @description Unprocessable Entity */
1786
+ 422: {
1787
+ headers: {
1788
+ [name: string]: unknown;
1789
+ };
1790
+ content: {
1791
+ /**
1792
+ * @example {
1793
+ * "status": "error",
1794
+ * "message": "One or more input fields are invalid",
1795
+ * "message_code": "INVALID_INPUT",
1796
+ * "metadata": {
1797
+ * "timestamp": "2025-08-05T18:38:57Z",
1798
+ * "requestId": "uuid",
1799
+ * "traceId": "uuid",
1800
+ * "version": "v1",
1801
+ * "executionTime": 0,
1802
+ * "language": "en-US",
1803
+ * "links": [
1804
+ * {
1805
+ * "rel": "self",
1806
+ * "href": "/v1/cart/items",
1807
+ * "method": "POST"
1808
+ * }
1809
+ * ]
1810
+ * },
1811
+ * "error": {
1812
+ * "type": "https://{your-domain}/errors/invalid-input",
1813
+ * "code": "INVALID_INPUT",
1814
+ * "title": "Invalid Input",
1815
+ * "status": 422,
1816
+ * "detail": "One or more input fields are invalid",
1817
+ * "instance": "/v1/cart/items",
1818
+ * "extensions": {
1819
+ * "message_code": "INVALID_INPUT",
1820
+ * "invalid_params": [
1821
+ * {
1822
+ * "field": "items[0].quantity",
1823
+ * "error": "Input should be greater than or equal to 1"
1824
+ * }
1825
+ * ]
1826
+ * }
1827
+ * }
1828
+ * }
1829
+ */
1830
+ "application/json": components["schemas"]["StandardResponse"];
1831
+ };
1832
+ };
1833
+ /** @description Too Many Requests */
1834
+ 429: {
1835
+ headers: {
1836
+ [name: string]: unknown;
1837
+ };
1838
+ content: {
1839
+ /**
1840
+ * @example {
1841
+ * "status": "error",
1842
+ * "message": "Too many requests",
1843
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1844
+ * "metadata": {
1845
+ * "timestamp": "2025-08-05T18:38:57Z",
1846
+ * "requestId": "uuid",
1847
+ * "traceId": "uuid",
1848
+ * "version": "v1",
1849
+ * "executionTime": 0,
1850
+ * "language": "en-US",
1851
+ * "links": [
1852
+ * {
1853
+ * "rel": "self",
1854
+ * "href": "/v1/cart/items",
1855
+ * "method": "POST"
1856
+ * }
1857
+ * ]
1858
+ * },
1859
+ * "error": {
1860
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
1861
+ * "code": "RATE_LIMIT_EXCEEDED",
1862
+ * "title": "Rate Limit Exceeded",
1863
+ * "status": 429,
1864
+ * "detail": "Too many requests",
1865
+ * "instance": "/v1/cart/items",
1866
+ * "extensions": {
1867
+ * "message_code": "RATE_LIMIT_EXCEEDED",
1868
+ * "invalid_params": []
1869
+ * }
1870
+ * }
1871
+ * }
1872
+ */
1873
+ "application/json": components["schemas"]["StandardResponse"];
1874
+ };
1875
+ };
1876
+ /** @description Internal Server Error */
1877
+ 500: {
1878
+ headers: {
1879
+ [name: string]: unknown;
1880
+ };
1881
+ content: {
1882
+ /**
1883
+ * @example {
1884
+ * "status": "error",
1885
+ * "message": "An unexpected error occurred",
1886
+ * "message_code": "SERVER_ERROR",
1887
+ * "metadata": {
1888
+ * "timestamp": "2025-08-05T18:38:57Z",
1889
+ * "requestId": "uuid",
1890
+ * "traceId": "uuid",
1891
+ * "version": "v1",
1892
+ * "executionTime": 0,
1893
+ * "language": "en-US",
1894
+ * "links": [
1895
+ * {
1896
+ * "rel": "self",
1897
+ * "href": "/v1/cart/items",
1898
+ * "method": "POST"
1899
+ * }
1900
+ * ]
1901
+ * },
1902
+ * "error": {
1903
+ * "type": "https://{your-domain}/errors/server-error",
1904
+ * "code": "SERVER_ERROR",
1905
+ * "title": "Server Error",
1906
+ * "status": 500,
1907
+ * "detail": "An unexpected error occurred",
1908
+ * "instance": "/v1/cart/items",
1909
+ * "extensions": {
1910
+ * "message_code": "SERVER_ERROR",
1911
+ * "invalid_params": []
1912
+ * }
1913
+ * }
1914
+ * }
1915
+ */
1916
+ "application/json": components["schemas"]["StandardResponse"];
1917
+ };
1918
+ };
1919
+ };
1920
+ };
1921
+ unblockUser: {
1922
+ parameters: {
1923
+ query?: never;
1924
+ header?: {
1925
+ authorization?: string | null;
1926
+ };
1927
+ path: {
1928
+ user_id: number;
1929
+ };
1930
+ cookie?: never;
1931
+ };
1932
+ requestBody?: never;
1933
+ responses: {
1934
+ /** @description Successful Response */
1935
+ 200: {
1936
+ headers: {
1937
+ [name: string]: unknown;
1938
+ };
1939
+ content: {
1940
+ "application/json": unknown;
1941
+ };
1942
+ };
1943
+ /** @description Bad Request */
1944
+ 400: {
1945
+ headers: {
1946
+ [name: string]: unknown;
1947
+ };
1948
+ content: {
1949
+ /**
1950
+ * @example {
1951
+ * "status": "error",
1952
+ * "message": "An error occurred",
1953
+ * "message_code": "GENERIC_ERROR",
1954
+ * "metadata": {
1955
+ * "timestamp": "2025-08-05T18:38:57Z",
1956
+ * "requestId": "uuid",
1957
+ * "traceId": "uuid",
1958
+ * "version": "v1",
1959
+ * "executionTime": 0,
1960
+ * "language": "en-US",
1961
+ * "links": [
1962
+ * {
1963
+ * "rel": "self",
1964
+ * "href": "/v1/cart/items",
1965
+ * "method": "POST"
1966
+ * }
1967
+ * ]
1968
+ * },
1969
+ * "error": {
1970
+ * "type": "https://{your-domain}/errors/client-error",
1971
+ * "code": "GENERIC_ERROR",
1972
+ * "title": "Client Error",
1973
+ * "status": 400,
1974
+ * "detail": "An error occurred",
1975
+ * "instance": "/v1/cart/items",
1976
+ * "extensions": {
1977
+ * "message_code": "GENERIC_ERROR",
1978
+ * "invalid_params": []
1979
+ * }
1980
+ * }
1981
+ * }
1982
+ */
1983
+ "application/json": components["schemas"]["StandardResponse"];
1984
+ };
1985
+ };
1986
+ /** @description Unprocessable Entity */
1987
+ 422: {
1988
+ headers: {
1989
+ [name: string]: unknown;
1990
+ };
1991
+ content: {
1992
+ /**
1993
+ * @example {
1994
+ * "status": "error",
1995
+ * "message": "One or more input fields are invalid",
1996
+ * "message_code": "INVALID_INPUT",
1997
+ * "metadata": {
1998
+ * "timestamp": "2025-08-05T18:38:57Z",
1999
+ * "requestId": "uuid",
2000
+ * "traceId": "uuid",
2001
+ * "version": "v1",
2002
+ * "executionTime": 0,
2003
+ * "language": "en-US",
2004
+ * "links": [
2005
+ * {
2006
+ * "rel": "self",
2007
+ * "href": "/v1/cart/items",
2008
+ * "method": "POST"
2009
+ * }
2010
+ * ]
2011
+ * },
2012
+ * "error": {
2013
+ * "type": "https://{your-domain}/errors/invalid-input",
2014
+ * "code": "INVALID_INPUT",
2015
+ * "title": "Invalid Input",
2016
+ * "status": 422,
2017
+ * "detail": "One or more input fields are invalid",
2018
+ * "instance": "/v1/cart/items",
2019
+ * "extensions": {
2020
+ * "message_code": "INVALID_INPUT",
2021
+ * "invalid_params": [
2022
+ * {
2023
+ * "field": "items[0].quantity",
2024
+ * "error": "Input should be greater than or equal to 1"
2025
+ * }
2026
+ * ]
2027
+ * }
2028
+ * }
2029
+ * }
2030
+ */
2031
+ "application/json": components["schemas"]["StandardResponse"];
2032
+ };
2033
+ };
2034
+ /** @description Too Many Requests */
2035
+ 429: {
2036
+ headers: {
2037
+ [name: string]: unknown;
2038
+ };
2039
+ content: {
2040
+ /**
2041
+ * @example {
2042
+ * "status": "error",
2043
+ * "message": "Too many requests",
2044
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2045
+ * "metadata": {
2046
+ * "timestamp": "2025-08-05T18:38:57Z",
2047
+ * "requestId": "uuid",
2048
+ * "traceId": "uuid",
2049
+ * "version": "v1",
2050
+ * "executionTime": 0,
2051
+ * "language": "en-US",
2052
+ * "links": [
2053
+ * {
2054
+ * "rel": "self",
2055
+ * "href": "/v1/cart/items",
2056
+ * "method": "POST"
2057
+ * }
2058
+ * ]
2059
+ * },
2060
+ * "error": {
2061
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
2062
+ * "code": "RATE_LIMIT_EXCEEDED",
2063
+ * "title": "Rate Limit Exceeded",
2064
+ * "status": 429,
2065
+ * "detail": "Too many requests",
2066
+ * "instance": "/v1/cart/items",
2067
+ * "extensions": {
2068
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2069
+ * "invalid_params": []
2070
+ * }
2071
+ * }
2072
+ * }
2073
+ */
2074
+ "application/json": components["schemas"]["StandardResponse"];
2075
+ };
2076
+ };
2077
+ /** @description Internal Server Error */
2078
+ 500: {
2079
+ headers: {
2080
+ [name: string]: unknown;
2081
+ };
2082
+ content: {
2083
+ /**
2084
+ * @example {
2085
+ * "status": "error",
2086
+ * "message": "An unexpected error occurred",
2087
+ * "message_code": "SERVER_ERROR",
2088
+ * "metadata": {
2089
+ * "timestamp": "2025-08-05T18:38:57Z",
2090
+ * "requestId": "uuid",
2091
+ * "traceId": "uuid",
2092
+ * "version": "v1",
2093
+ * "executionTime": 0,
2094
+ * "language": "en-US",
2095
+ * "links": [
2096
+ * {
2097
+ * "rel": "self",
2098
+ * "href": "/v1/cart/items",
2099
+ * "method": "POST"
2100
+ * }
2101
+ * ]
2102
+ * },
2103
+ * "error": {
2104
+ * "type": "https://{your-domain}/errors/server-error",
2105
+ * "code": "SERVER_ERROR",
2106
+ * "title": "Server Error",
2107
+ * "status": 500,
2108
+ * "detail": "An unexpected error occurred",
2109
+ * "instance": "/v1/cart/items",
2110
+ * "extensions": {
2111
+ * "message_code": "SERVER_ERROR",
2112
+ * "invalid_params": []
2113
+ * }
2114
+ * }
2115
+ * }
2116
+ */
2117
+ "application/json": components["schemas"]["StandardResponse"];
2118
+ };
2119
+ };
2120
+ };
2121
+ };
2122
+ verifyUserEmail: {
2123
+ parameters: {
2124
+ query?: never;
2125
+ header?: {
2126
+ authorization?: string | null;
2127
+ };
2128
+ path: {
2129
+ user_id: number;
2130
+ };
2131
+ cookie?: never;
2132
+ };
2133
+ requestBody?: never;
2134
+ responses: {
2135
+ /** @description Successful Response */
2136
+ 200: {
2137
+ headers: {
2138
+ [name: string]: unknown;
2139
+ };
2140
+ content: {
2141
+ "application/json": unknown;
2142
+ };
2143
+ };
2144
+ /** @description Bad Request */
2145
+ 400: {
2146
+ headers: {
2147
+ [name: string]: unknown;
2148
+ };
2149
+ content: {
2150
+ /**
2151
+ * @example {
2152
+ * "status": "error",
2153
+ * "message": "An error occurred",
2154
+ * "message_code": "GENERIC_ERROR",
2155
+ * "metadata": {
2156
+ * "timestamp": "2025-08-05T18:38:57Z",
2157
+ * "requestId": "uuid",
2158
+ * "traceId": "uuid",
2159
+ * "version": "v1",
2160
+ * "executionTime": 0,
2161
+ * "language": "en-US",
2162
+ * "links": [
2163
+ * {
2164
+ * "rel": "self",
2165
+ * "href": "/v1/cart/items",
2166
+ * "method": "POST"
2167
+ * }
2168
+ * ]
2169
+ * },
2170
+ * "error": {
2171
+ * "type": "https://{your-domain}/errors/client-error",
2172
+ * "code": "GENERIC_ERROR",
2173
+ * "title": "Client Error",
2174
+ * "status": 400,
2175
+ * "detail": "An error occurred",
2176
+ * "instance": "/v1/cart/items",
2177
+ * "extensions": {
2178
+ * "message_code": "GENERIC_ERROR",
2179
+ * "invalid_params": []
2180
+ * }
2181
+ * }
2182
+ * }
2183
+ */
2184
+ "application/json": components["schemas"]["StandardResponse"];
2185
+ };
2186
+ };
2187
+ /** @description Unprocessable Entity */
2188
+ 422: {
2189
+ headers: {
2190
+ [name: string]: unknown;
2191
+ };
2192
+ content: {
2193
+ /**
2194
+ * @example {
2195
+ * "status": "error",
2196
+ * "message": "One or more input fields are invalid",
2197
+ * "message_code": "INVALID_INPUT",
2198
+ * "metadata": {
2199
+ * "timestamp": "2025-08-05T18:38:57Z",
2200
+ * "requestId": "uuid",
2201
+ * "traceId": "uuid",
2202
+ * "version": "v1",
2203
+ * "executionTime": 0,
2204
+ * "language": "en-US",
2205
+ * "links": [
2206
+ * {
2207
+ * "rel": "self",
2208
+ * "href": "/v1/cart/items",
2209
+ * "method": "POST"
2210
+ * }
2211
+ * ]
2212
+ * },
2213
+ * "error": {
2214
+ * "type": "https://{your-domain}/errors/invalid-input",
2215
+ * "code": "INVALID_INPUT",
2216
+ * "title": "Invalid Input",
2217
+ * "status": 422,
2218
+ * "detail": "One or more input fields are invalid",
2219
+ * "instance": "/v1/cart/items",
2220
+ * "extensions": {
2221
+ * "message_code": "INVALID_INPUT",
2222
+ * "invalid_params": [
2223
+ * {
2224
+ * "field": "items[0].quantity",
2225
+ * "error": "Input should be greater than or equal to 1"
2226
+ * }
2227
+ * ]
2228
+ * }
2229
+ * }
2230
+ * }
2231
+ */
2232
+ "application/json": components["schemas"]["StandardResponse"];
2233
+ };
2234
+ };
2235
+ /** @description Too Many Requests */
2236
+ 429: {
2237
+ headers: {
2238
+ [name: string]: unknown;
2239
+ };
2240
+ content: {
2241
+ /**
2242
+ * @example {
2243
+ * "status": "error",
2244
+ * "message": "Too many requests",
2245
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2246
+ * "metadata": {
2247
+ * "timestamp": "2025-08-05T18:38:57Z",
2248
+ * "requestId": "uuid",
2249
+ * "traceId": "uuid",
2250
+ * "version": "v1",
2251
+ * "executionTime": 0,
2252
+ * "language": "en-US",
2253
+ * "links": [
2254
+ * {
2255
+ * "rel": "self",
2256
+ * "href": "/v1/cart/items",
2257
+ * "method": "POST"
2258
+ * }
2259
+ * ]
2260
+ * },
2261
+ * "error": {
2262
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
2263
+ * "code": "RATE_LIMIT_EXCEEDED",
2264
+ * "title": "Rate Limit Exceeded",
2265
+ * "status": 429,
2266
+ * "detail": "Too many requests",
2267
+ * "instance": "/v1/cart/items",
2268
+ * "extensions": {
2269
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2270
+ * "invalid_params": []
2271
+ * }
2272
+ * }
2273
+ * }
2274
+ */
2275
+ "application/json": components["schemas"]["StandardResponse"];
2276
+ };
2277
+ };
2278
+ /** @description Internal Server Error */
2279
+ 500: {
2280
+ headers: {
2281
+ [name: string]: unknown;
2282
+ };
2283
+ content: {
2284
+ /**
2285
+ * @example {
2286
+ * "status": "error",
2287
+ * "message": "An unexpected error occurred",
2288
+ * "message_code": "SERVER_ERROR",
2289
+ * "metadata": {
2290
+ * "timestamp": "2025-08-05T18:38:57Z",
2291
+ * "requestId": "uuid",
2292
+ * "traceId": "uuid",
2293
+ * "version": "v1",
2294
+ * "executionTime": 0,
2295
+ * "language": "en-US",
2296
+ * "links": [
2297
+ * {
2298
+ * "rel": "self",
2299
+ * "href": "/v1/cart/items",
2300
+ * "method": "POST"
2301
+ * }
2302
+ * ]
2303
+ * },
2304
+ * "error": {
2305
+ * "type": "https://{your-domain}/errors/server-error",
2306
+ * "code": "SERVER_ERROR",
2307
+ * "title": "Server Error",
2308
+ * "status": 500,
2309
+ * "detail": "An unexpected error occurred",
2310
+ * "instance": "/v1/cart/items",
2311
+ * "extensions": {
2312
+ * "message_code": "SERVER_ERROR",
2313
+ * "invalid_params": []
2314
+ * }
2315
+ * }
2316
+ * }
2317
+ */
2318
+ "application/json": components["schemas"]["StandardResponse"];
2319
+ };
2320
+ };
2321
+ };
2322
+ };
2323
+ verifyUserMobile: {
2324
+ parameters: {
2325
+ query?: never;
2326
+ header?: {
2327
+ authorization?: string | null;
2328
+ };
2329
+ path: {
2330
+ user_id: number;
2331
+ };
2332
+ cookie?: never;
2333
+ };
2334
+ requestBody?: never;
2335
+ responses: {
2336
+ /** @description Successful Response */
2337
+ 200: {
2338
+ headers: {
2339
+ [name: string]: unknown;
2340
+ };
2341
+ content: {
2342
+ "application/json": unknown;
2343
+ };
2344
+ };
2345
+ /** @description Bad Request */
2346
+ 400: {
2347
+ headers: {
2348
+ [name: string]: unknown;
2349
+ };
2350
+ content: {
2351
+ /**
2352
+ * @example {
2353
+ * "status": "error",
2354
+ * "message": "An error occurred",
2355
+ * "message_code": "GENERIC_ERROR",
2356
+ * "metadata": {
2357
+ * "timestamp": "2025-08-05T18:38:57Z",
2358
+ * "requestId": "uuid",
2359
+ * "traceId": "uuid",
2360
+ * "version": "v1",
2361
+ * "executionTime": 0,
2362
+ * "language": "en-US",
2363
+ * "links": [
2364
+ * {
2365
+ * "rel": "self",
2366
+ * "href": "/v1/cart/items",
2367
+ * "method": "POST"
2368
+ * }
2369
+ * ]
2370
+ * },
2371
+ * "error": {
2372
+ * "type": "https://{your-domain}/errors/client-error",
2373
+ * "code": "GENERIC_ERROR",
2374
+ * "title": "Client Error",
2375
+ * "status": 400,
2376
+ * "detail": "An error occurred",
2377
+ * "instance": "/v1/cart/items",
2378
+ * "extensions": {
2379
+ * "message_code": "GENERIC_ERROR",
2380
+ * "invalid_params": []
2381
+ * }
2382
+ * }
2383
+ * }
2384
+ */
2385
+ "application/json": components["schemas"]["StandardResponse"];
2386
+ };
2387
+ };
2388
+ /** @description Unprocessable Entity */
2389
+ 422: {
2390
+ headers: {
2391
+ [name: string]: unknown;
2392
+ };
2393
+ content: {
2394
+ /**
2395
+ * @example {
2396
+ * "status": "error",
2397
+ * "message": "One or more input fields are invalid",
2398
+ * "message_code": "INVALID_INPUT",
2399
+ * "metadata": {
2400
+ * "timestamp": "2025-08-05T18:38:57Z",
2401
+ * "requestId": "uuid",
2402
+ * "traceId": "uuid",
2403
+ * "version": "v1",
2404
+ * "executionTime": 0,
2405
+ * "language": "en-US",
2406
+ * "links": [
2407
+ * {
2408
+ * "rel": "self",
2409
+ * "href": "/v1/cart/items",
2410
+ * "method": "POST"
2411
+ * }
2412
+ * ]
2413
+ * },
2414
+ * "error": {
2415
+ * "type": "https://{your-domain}/errors/invalid-input",
2416
+ * "code": "INVALID_INPUT",
2417
+ * "title": "Invalid Input",
2418
+ * "status": 422,
2419
+ * "detail": "One or more input fields are invalid",
2420
+ * "instance": "/v1/cart/items",
2421
+ * "extensions": {
2422
+ * "message_code": "INVALID_INPUT",
2423
+ * "invalid_params": [
2424
+ * {
2425
+ * "field": "items[0].quantity",
2426
+ * "error": "Input should be greater than or equal to 1"
2427
+ * }
2428
+ * ]
2429
+ * }
2430
+ * }
2431
+ * }
2432
+ */
2433
+ "application/json": components["schemas"]["StandardResponse"];
2434
+ };
2435
+ };
2436
+ /** @description Too Many Requests */
2437
+ 429: {
2438
+ headers: {
2439
+ [name: string]: unknown;
2440
+ };
2441
+ content: {
2442
+ /**
2443
+ * @example {
2444
+ * "status": "error",
2445
+ * "message": "Too many requests",
2446
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2447
+ * "metadata": {
2448
+ * "timestamp": "2025-08-05T18:38:57Z",
2449
+ * "requestId": "uuid",
2450
+ * "traceId": "uuid",
2451
+ * "version": "v1",
2452
+ * "executionTime": 0,
2453
+ * "language": "en-US",
2454
+ * "links": [
2455
+ * {
2456
+ * "rel": "self",
2457
+ * "href": "/v1/cart/items",
2458
+ * "method": "POST"
2459
+ * }
2460
+ * ]
2461
+ * },
2462
+ * "error": {
2463
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
2464
+ * "code": "RATE_LIMIT_EXCEEDED",
2465
+ * "title": "Rate Limit Exceeded",
2466
+ * "status": 429,
2467
+ * "detail": "Too many requests",
2468
+ * "instance": "/v1/cart/items",
2469
+ * "extensions": {
2470
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2471
+ * "invalid_params": []
2472
+ * }
2473
+ * }
2474
+ * }
2475
+ */
2476
+ "application/json": components["schemas"]["StandardResponse"];
2477
+ };
2478
+ };
2479
+ /** @description Internal Server Error */
2480
+ 500: {
2481
+ headers: {
2482
+ [name: string]: unknown;
2483
+ };
2484
+ content: {
2485
+ /**
2486
+ * @example {
2487
+ * "status": "error",
2488
+ * "message": "An unexpected error occurred",
2489
+ * "message_code": "SERVER_ERROR",
2490
+ * "metadata": {
2491
+ * "timestamp": "2025-08-05T18:38:57Z",
2492
+ * "requestId": "uuid",
2493
+ * "traceId": "uuid",
2494
+ * "version": "v1",
2495
+ * "executionTime": 0,
2496
+ * "language": "en-US",
2497
+ * "links": [
2498
+ * {
2499
+ * "rel": "self",
2500
+ * "href": "/v1/cart/items",
2501
+ * "method": "POST"
2502
+ * }
2503
+ * ]
2504
+ * },
2505
+ * "error": {
2506
+ * "type": "https://{your-domain}/errors/server-error",
2507
+ * "code": "SERVER_ERROR",
2508
+ * "title": "Server Error",
2509
+ * "status": 500,
2510
+ * "detail": "An unexpected error occurred",
2511
+ * "instance": "/v1/cart/items",
2512
+ * "extensions": {
2513
+ * "message_code": "SERVER_ERROR",
2514
+ * "invalid_params": []
2515
+ * }
2516
+ * }
2517
+ * }
2518
+ */
2519
+ "application/json": components["schemas"]["StandardResponse"];
2520
+ };
2521
+ };
2522
+ };
2523
+ };
2524
+ updateUserRole: {
2525
+ parameters: {
2526
+ query?: never;
2527
+ header?: {
2528
+ authorization?: string | null;
2529
+ };
2530
+ path: {
2531
+ user_id: number;
2532
+ };
2533
+ cookie?: never;
2534
+ };
2535
+ requestBody: {
2536
+ content: {
2537
+ "application/json": components["schemas"]["ChangeUserRoleRequest"];
2538
+ };
2539
+ };
2540
+ responses: {
2541
+ /** @description Successful Response */
2542
+ 200: {
2543
+ headers: {
2544
+ [name: string]: unknown;
2545
+ };
2546
+ content: {
2547
+ "application/json": unknown;
2548
+ };
2549
+ };
2550
+ /** @description Bad Request */
2551
+ 400: {
2552
+ headers: {
2553
+ [name: string]: unknown;
2554
+ };
2555
+ content: {
2556
+ /**
2557
+ * @example {
2558
+ * "status": "error",
2559
+ * "message": "An error occurred",
2560
+ * "message_code": "GENERIC_ERROR",
2561
+ * "metadata": {
2562
+ * "timestamp": "2025-08-05T18:38:57Z",
2563
+ * "requestId": "uuid",
2564
+ * "traceId": "uuid",
2565
+ * "version": "v1",
2566
+ * "executionTime": 0,
2567
+ * "language": "en-US",
2568
+ * "links": [
2569
+ * {
2570
+ * "rel": "self",
2571
+ * "href": "/v1/cart/items",
2572
+ * "method": "POST"
2573
+ * }
2574
+ * ]
2575
+ * },
2576
+ * "error": {
2577
+ * "type": "https://{your-domain}/errors/client-error",
2578
+ * "code": "GENERIC_ERROR",
2579
+ * "title": "Client Error",
2580
+ * "status": 400,
2581
+ * "detail": "An error occurred",
2582
+ * "instance": "/v1/cart/items",
2583
+ * "extensions": {
2584
+ * "message_code": "GENERIC_ERROR",
2585
+ * "invalid_params": []
2586
+ * }
2587
+ * }
2588
+ * }
2589
+ */
2590
+ "application/json": components["schemas"]["StandardResponse"];
2591
+ };
2592
+ };
2593
+ /** @description Unprocessable Entity */
2594
+ 422: {
2595
+ headers: {
2596
+ [name: string]: unknown;
2597
+ };
2598
+ content: {
2599
+ /**
2600
+ * @example {
2601
+ * "status": "error",
2602
+ * "message": "One or more input fields are invalid",
2603
+ * "message_code": "INVALID_INPUT",
2604
+ * "metadata": {
2605
+ * "timestamp": "2025-08-05T18:38:57Z",
2606
+ * "requestId": "uuid",
2607
+ * "traceId": "uuid",
2608
+ * "version": "v1",
2609
+ * "executionTime": 0,
2610
+ * "language": "en-US",
2611
+ * "links": [
2612
+ * {
2613
+ * "rel": "self",
2614
+ * "href": "/v1/cart/items",
2615
+ * "method": "POST"
2616
+ * }
2617
+ * ]
2618
+ * },
2619
+ * "error": {
2620
+ * "type": "https://{your-domain}/errors/invalid-input",
2621
+ * "code": "INVALID_INPUT",
2622
+ * "title": "Invalid Input",
2623
+ * "status": 422,
2624
+ * "detail": "One or more input fields are invalid",
2625
+ * "instance": "/v1/cart/items",
2626
+ * "extensions": {
2627
+ * "message_code": "INVALID_INPUT",
2628
+ * "invalid_params": [
2629
+ * {
2630
+ * "field": "items[0].quantity",
2631
+ * "error": "Input should be greater than or equal to 1"
2632
+ * }
2633
+ * ]
2634
+ * }
2635
+ * }
2636
+ * }
2637
+ */
2638
+ "application/json": components["schemas"]["StandardResponse"];
2639
+ };
2640
+ };
2641
+ /** @description Too Many Requests */
2642
+ 429: {
2643
+ headers: {
2644
+ [name: string]: unknown;
2645
+ };
2646
+ content: {
2647
+ /**
2648
+ * @example {
2649
+ * "status": "error",
2650
+ * "message": "Too many requests",
2651
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2652
+ * "metadata": {
2653
+ * "timestamp": "2025-08-05T18:38:57Z",
2654
+ * "requestId": "uuid",
2655
+ * "traceId": "uuid",
2656
+ * "version": "v1",
2657
+ * "executionTime": 0,
2658
+ * "language": "en-US",
2659
+ * "links": [
2660
+ * {
2661
+ * "rel": "self",
2662
+ * "href": "/v1/cart/items",
2663
+ * "method": "POST"
2664
+ * }
2665
+ * ]
2666
+ * },
2667
+ * "error": {
2668
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
2669
+ * "code": "RATE_LIMIT_EXCEEDED",
2670
+ * "title": "Rate Limit Exceeded",
2671
+ * "status": 429,
2672
+ * "detail": "Too many requests",
2673
+ * "instance": "/v1/cart/items",
2674
+ * "extensions": {
2675
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2676
+ * "invalid_params": []
2677
+ * }
2678
+ * }
2679
+ * }
2680
+ */
2681
+ "application/json": components["schemas"]["StandardResponse"];
2682
+ };
2683
+ };
2684
+ /** @description Internal Server Error */
2685
+ 500: {
2686
+ headers: {
2687
+ [name: string]: unknown;
2688
+ };
2689
+ content: {
2690
+ /**
2691
+ * @example {
2692
+ * "status": "error",
2693
+ * "message": "An unexpected error occurred",
2694
+ * "message_code": "SERVER_ERROR",
2695
+ * "metadata": {
2696
+ * "timestamp": "2025-08-05T18:38:57Z",
2697
+ * "requestId": "uuid",
2698
+ * "traceId": "uuid",
2699
+ * "version": "v1",
2700
+ * "executionTime": 0,
2701
+ * "language": "en-US",
2702
+ * "links": [
2703
+ * {
2704
+ * "rel": "self",
2705
+ * "href": "/v1/cart/items",
2706
+ * "method": "POST"
2707
+ * }
2708
+ * ]
2709
+ * },
2710
+ * "error": {
2711
+ * "type": "https://{your-domain}/errors/server-error",
2712
+ * "code": "SERVER_ERROR",
2713
+ * "title": "Server Error",
2714
+ * "status": 500,
2715
+ * "detail": "An unexpected error occurred",
2716
+ * "instance": "/v1/cart/items",
2717
+ * "extensions": {
2718
+ * "message_code": "SERVER_ERROR",
2719
+ * "invalid_params": []
2720
+ * }
2721
+ * }
2722
+ * }
2723
+ */
2724
+ "application/json": components["schemas"]["StandardResponse"];
2725
+ };
2726
+ };
2727
+ };
2728
+ };
2729
+ resetUserPassword: {
2730
+ parameters: {
2731
+ query?: never;
2732
+ header?: {
2733
+ authorization?: string | null;
2734
+ };
2735
+ path: {
2736
+ user_id: number;
2737
+ };
2738
+ cookie?: never;
2739
+ };
2740
+ requestBody: {
2741
+ content: {
2742
+ "application/json": components["schemas"]["ResetPasswordRequest"];
2743
+ };
2744
+ };
2745
+ responses: {
2746
+ /** @description Successful Response */
2747
+ 200: {
2748
+ headers: {
2749
+ [name: string]: unknown;
2750
+ };
2751
+ content: {
2752
+ "application/json": unknown;
2753
+ };
2754
+ };
2755
+ /** @description Bad Request */
2756
+ 400: {
2757
+ headers: {
2758
+ [name: string]: unknown;
2759
+ };
2760
+ content: {
2761
+ /**
2762
+ * @example {
2763
+ * "status": "error",
2764
+ * "message": "An error occurred",
2765
+ * "message_code": "GENERIC_ERROR",
2766
+ * "metadata": {
2767
+ * "timestamp": "2025-08-05T18:38:57Z",
2768
+ * "requestId": "uuid",
2769
+ * "traceId": "uuid",
2770
+ * "version": "v1",
2771
+ * "executionTime": 0,
2772
+ * "language": "en-US",
2773
+ * "links": [
2774
+ * {
2775
+ * "rel": "self",
2776
+ * "href": "/v1/cart/items",
2777
+ * "method": "POST"
2778
+ * }
2779
+ * ]
2780
+ * },
2781
+ * "error": {
2782
+ * "type": "https://{your-domain}/errors/client-error",
2783
+ * "code": "GENERIC_ERROR",
2784
+ * "title": "Client Error",
2785
+ * "status": 400,
2786
+ * "detail": "An error occurred",
2787
+ * "instance": "/v1/cart/items",
2788
+ * "extensions": {
2789
+ * "message_code": "GENERIC_ERROR",
2790
+ * "invalid_params": []
2791
+ * }
2792
+ * }
2793
+ * }
2794
+ */
2795
+ "application/json": components["schemas"]["StandardResponse"];
2796
+ };
2797
+ };
2798
+ /** @description Unprocessable Entity */
2799
+ 422: {
2800
+ headers: {
2801
+ [name: string]: unknown;
2802
+ };
2803
+ content: {
2804
+ /**
2805
+ * @example {
2806
+ * "status": "error",
2807
+ * "message": "One or more input fields are invalid",
2808
+ * "message_code": "INVALID_INPUT",
2809
+ * "metadata": {
2810
+ * "timestamp": "2025-08-05T18:38:57Z",
2811
+ * "requestId": "uuid",
2812
+ * "traceId": "uuid",
2813
+ * "version": "v1",
2814
+ * "executionTime": 0,
2815
+ * "language": "en-US",
2816
+ * "links": [
2817
+ * {
2818
+ * "rel": "self",
2819
+ * "href": "/v1/cart/items",
2820
+ * "method": "POST"
2821
+ * }
2822
+ * ]
2823
+ * },
2824
+ * "error": {
2825
+ * "type": "https://{your-domain}/errors/invalid-input",
2826
+ * "code": "INVALID_INPUT",
2827
+ * "title": "Invalid Input",
2828
+ * "status": 422,
2829
+ * "detail": "One or more input fields are invalid",
2830
+ * "instance": "/v1/cart/items",
2831
+ * "extensions": {
2832
+ * "message_code": "INVALID_INPUT",
2833
+ * "invalid_params": [
2834
+ * {
2835
+ * "field": "items[0].quantity",
2836
+ * "error": "Input should be greater than or equal to 1"
2837
+ * }
2838
+ * ]
2839
+ * }
2840
+ * }
2841
+ * }
2842
+ */
2843
+ "application/json": components["schemas"]["StandardResponse"];
2844
+ };
2845
+ };
2846
+ /** @description Too Many Requests */
2847
+ 429: {
2848
+ headers: {
2849
+ [name: string]: unknown;
2850
+ };
2851
+ content: {
2852
+ /**
2853
+ * @example {
2854
+ * "status": "error",
2855
+ * "message": "Too many requests",
2856
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2857
+ * "metadata": {
2858
+ * "timestamp": "2025-08-05T18:38:57Z",
2859
+ * "requestId": "uuid",
2860
+ * "traceId": "uuid",
2861
+ * "version": "v1",
2862
+ * "executionTime": 0,
2863
+ * "language": "en-US",
2864
+ * "links": [
2865
+ * {
2866
+ * "rel": "self",
2867
+ * "href": "/v1/cart/items",
2868
+ * "method": "POST"
2869
+ * }
2870
+ * ]
2871
+ * },
2872
+ * "error": {
2873
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
2874
+ * "code": "RATE_LIMIT_EXCEEDED",
2875
+ * "title": "Rate Limit Exceeded",
2876
+ * "status": 429,
2877
+ * "detail": "Too many requests",
2878
+ * "instance": "/v1/cart/items",
2879
+ * "extensions": {
2880
+ * "message_code": "RATE_LIMIT_EXCEEDED",
2881
+ * "invalid_params": []
2882
+ * }
2883
+ * }
2884
+ * }
2885
+ */
2886
+ "application/json": components["schemas"]["StandardResponse"];
2887
+ };
2888
+ };
2889
+ /** @description Internal Server Error */
2890
+ 500: {
2891
+ headers: {
2892
+ [name: string]: unknown;
2893
+ };
2894
+ content: {
2895
+ /**
2896
+ * @example {
2897
+ * "status": "error",
2898
+ * "message": "An unexpected error occurred",
2899
+ * "message_code": "SERVER_ERROR",
2900
+ * "metadata": {
2901
+ * "timestamp": "2025-08-05T18:38:57Z",
2902
+ * "requestId": "uuid",
2903
+ * "traceId": "uuid",
2904
+ * "version": "v1",
2905
+ * "executionTime": 0,
2906
+ * "language": "en-US",
2907
+ * "links": [
2908
+ * {
2909
+ * "rel": "self",
2910
+ * "href": "/v1/cart/items",
2911
+ * "method": "POST"
2912
+ * }
2913
+ * ]
2914
+ * },
2915
+ * "error": {
2916
+ * "type": "https://{your-domain}/errors/server-error",
2917
+ * "code": "SERVER_ERROR",
2918
+ * "title": "Server Error",
2919
+ * "status": 500,
2920
+ * "detail": "An unexpected error occurred",
2921
+ * "instance": "/v1/cart/items",
2922
+ * "extensions": {
2923
+ * "message_code": "SERVER_ERROR",
2924
+ * "invalid_params": []
2925
+ * }
2926
+ * }
2927
+ * }
2928
+ */
2929
+ "application/json": components["schemas"]["StandardResponse"];
2930
+ };
2931
+ };
2932
+ };
2933
+ };
2934
+ listUserPermissions: {
2935
+ parameters: {
2936
+ query?: never;
2937
+ header?: {
2938
+ authorization?: string | null;
2939
+ };
2940
+ path: {
2941
+ user_id: number;
2942
+ };
2943
+ cookie?: never;
2944
+ };
2945
+ requestBody?: never;
2946
+ responses: {
2947
+ /** @description Successful Response */
2948
+ 200: {
2949
+ headers: {
2950
+ [name: string]: unknown;
2951
+ };
2952
+ content: {
2953
+ "application/json": unknown;
2954
+ };
2955
+ };
2956
+ /** @description Bad Request */
2957
+ 400: {
2958
+ headers: {
2959
+ [name: string]: unknown;
2960
+ };
2961
+ content: {
2962
+ /**
2963
+ * @example {
2964
+ * "status": "error",
2965
+ * "message": "An error occurred",
2966
+ * "message_code": "GENERIC_ERROR",
2967
+ * "metadata": {
2968
+ * "timestamp": "2025-08-05T18:38:57Z",
2969
+ * "requestId": "uuid",
2970
+ * "traceId": "uuid",
2971
+ * "version": "v1",
2972
+ * "executionTime": 0,
2973
+ * "language": "en-US",
2974
+ * "links": [
2975
+ * {
2976
+ * "rel": "self",
2977
+ * "href": "/v1/cart/items",
2978
+ * "method": "POST"
2979
+ * }
2980
+ * ]
2981
+ * },
2982
+ * "error": {
2983
+ * "type": "https://{your-domain}/errors/client-error",
2984
+ * "code": "GENERIC_ERROR",
2985
+ * "title": "Client Error",
2986
+ * "status": 400,
2987
+ * "detail": "An error occurred",
2988
+ * "instance": "/v1/cart/items",
2989
+ * "extensions": {
2990
+ * "message_code": "GENERIC_ERROR",
2991
+ * "invalid_params": []
2992
+ * }
2993
+ * }
2994
+ * }
2995
+ */
2996
+ "application/json": components["schemas"]["StandardResponse"];
2997
+ };
2998
+ };
2999
+ /** @description Unprocessable Entity */
3000
+ 422: {
3001
+ headers: {
3002
+ [name: string]: unknown;
3003
+ };
3004
+ content: {
3005
+ /**
3006
+ * @example {
3007
+ * "status": "error",
3008
+ * "message": "One or more input fields are invalid",
3009
+ * "message_code": "INVALID_INPUT",
3010
+ * "metadata": {
3011
+ * "timestamp": "2025-08-05T18:38:57Z",
3012
+ * "requestId": "uuid",
3013
+ * "traceId": "uuid",
3014
+ * "version": "v1",
3015
+ * "executionTime": 0,
3016
+ * "language": "en-US",
3017
+ * "links": [
3018
+ * {
3019
+ * "rel": "self",
3020
+ * "href": "/v1/cart/items",
3021
+ * "method": "POST"
3022
+ * }
3023
+ * ]
3024
+ * },
3025
+ * "error": {
3026
+ * "type": "https://{your-domain}/errors/invalid-input",
3027
+ * "code": "INVALID_INPUT",
3028
+ * "title": "Invalid Input",
3029
+ * "status": 422,
3030
+ * "detail": "One or more input fields are invalid",
3031
+ * "instance": "/v1/cart/items",
3032
+ * "extensions": {
3033
+ * "message_code": "INVALID_INPUT",
3034
+ * "invalid_params": [
3035
+ * {
3036
+ * "field": "items[0].quantity",
3037
+ * "error": "Input should be greater than or equal to 1"
3038
+ * }
3039
+ * ]
3040
+ * }
3041
+ * }
3042
+ * }
3043
+ */
3044
+ "application/json": components["schemas"]["StandardResponse"];
3045
+ };
3046
+ };
3047
+ /** @description Too Many Requests */
3048
+ 429: {
3049
+ headers: {
3050
+ [name: string]: unknown;
3051
+ };
3052
+ content: {
3053
+ /**
3054
+ * @example {
3055
+ * "status": "error",
3056
+ * "message": "Too many requests",
3057
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3058
+ * "metadata": {
3059
+ * "timestamp": "2025-08-05T18:38:57Z",
3060
+ * "requestId": "uuid",
3061
+ * "traceId": "uuid",
3062
+ * "version": "v1",
3063
+ * "executionTime": 0,
3064
+ * "language": "en-US",
3065
+ * "links": [
3066
+ * {
3067
+ * "rel": "self",
3068
+ * "href": "/v1/cart/items",
3069
+ * "method": "POST"
3070
+ * }
3071
+ * ]
3072
+ * },
3073
+ * "error": {
3074
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
3075
+ * "code": "RATE_LIMIT_EXCEEDED",
3076
+ * "title": "Rate Limit Exceeded",
3077
+ * "status": 429,
3078
+ * "detail": "Too many requests",
3079
+ * "instance": "/v1/cart/items",
3080
+ * "extensions": {
3081
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3082
+ * "invalid_params": []
3083
+ * }
3084
+ * }
3085
+ * }
3086
+ */
3087
+ "application/json": components["schemas"]["StandardResponse"];
3088
+ };
3089
+ };
3090
+ /** @description Internal Server Error */
3091
+ 500: {
3092
+ headers: {
3093
+ [name: string]: unknown;
3094
+ };
3095
+ content: {
3096
+ /**
3097
+ * @example {
3098
+ * "status": "error",
3099
+ * "message": "An unexpected error occurred",
3100
+ * "message_code": "SERVER_ERROR",
3101
+ * "metadata": {
3102
+ * "timestamp": "2025-08-05T18:38:57Z",
3103
+ * "requestId": "uuid",
3104
+ * "traceId": "uuid",
3105
+ * "version": "v1",
3106
+ * "executionTime": 0,
3107
+ * "language": "en-US",
3108
+ * "links": [
3109
+ * {
3110
+ * "rel": "self",
3111
+ * "href": "/v1/cart/items",
3112
+ * "method": "POST"
3113
+ * }
3114
+ * ]
3115
+ * },
3116
+ * "error": {
3117
+ * "type": "https://{your-domain}/errors/server-error",
3118
+ * "code": "SERVER_ERROR",
3119
+ * "title": "Server Error",
3120
+ * "status": 500,
3121
+ * "detail": "An unexpected error occurred",
3122
+ * "instance": "/v1/cart/items",
3123
+ * "extensions": {
3124
+ * "message_code": "SERVER_ERROR",
3125
+ * "invalid_params": []
3126
+ * }
3127
+ * }
3128
+ * }
3129
+ */
3130
+ "application/json": components["schemas"]["StandardResponse"];
3131
+ };
3132
+ };
3133
+ };
3134
+ };
3135
+ createUserPermission: {
3136
+ parameters: {
3137
+ query?: never;
3138
+ header?: {
3139
+ authorization?: string | null;
3140
+ };
3141
+ path: {
3142
+ user_id: number;
3143
+ };
3144
+ cookie?: never;
3145
+ };
3146
+ requestBody?: never;
3147
+ responses: {
3148
+ /** @description Successful Response */
3149
+ 201: {
3150
+ headers: {
3151
+ [name: string]: unknown;
3152
+ };
3153
+ content: {
3154
+ "application/json": unknown;
3155
+ };
3156
+ };
3157
+ /** @description Bad Request */
3158
+ 400: {
3159
+ headers: {
3160
+ [name: string]: unknown;
3161
+ };
3162
+ content: {
3163
+ /**
3164
+ * @example {
3165
+ * "status": "error",
3166
+ * "message": "An error occurred",
3167
+ * "message_code": "GENERIC_ERROR",
3168
+ * "metadata": {
3169
+ * "timestamp": "2025-08-05T18:38:57Z",
3170
+ * "requestId": "uuid",
3171
+ * "traceId": "uuid",
3172
+ * "version": "v1",
3173
+ * "executionTime": 0,
3174
+ * "language": "en-US",
3175
+ * "links": [
3176
+ * {
3177
+ * "rel": "self",
3178
+ * "href": "/v1/cart/items",
3179
+ * "method": "POST"
3180
+ * }
3181
+ * ]
3182
+ * },
3183
+ * "error": {
3184
+ * "type": "https://{your-domain}/errors/client-error",
3185
+ * "code": "GENERIC_ERROR",
3186
+ * "title": "Client Error",
3187
+ * "status": 400,
3188
+ * "detail": "An error occurred",
3189
+ * "instance": "/v1/cart/items",
3190
+ * "extensions": {
3191
+ * "message_code": "GENERIC_ERROR",
3192
+ * "invalid_params": []
3193
+ * }
3194
+ * }
3195
+ * }
3196
+ */
3197
+ "application/json": components["schemas"]["StandardResponse"];
3198
+ };
3199
+ };
3200
+ /** @description Unprocessable Entity */
3201
+ 422: {
3202
+ headers: {
3203
+ [name: string]: unknown;
3204
+ };
3205
+ content: {
3206
+ /**
3207
+ * @example {
3208
+ * "status": "error",
3209
+ * "message": "One or more input fields are invalid",
3210
+ * "message_code": "INVALID_INPUT",
3211
+ * "metadata": {
3212
+ * "timestamp": "2025-08-05T18:38:57Z",
3213
+ * "requestId": "uuid",
3214
+ * "traceId": "uuid",
3215
+ * "version": "v1",
3216
+ * "executionTime": 0,
3217
+ * "language": "en-US",
3218
+ * "links": [
3219
+ * {
3220
+ * "rel": "self",
3221
+ * "href": "/v1/cart/items",
3222
+ * "method": "POST"
3223
+ * }
3224
+ * ]
3225
+ * },
3226
+ * "error": {
3227
+ * "type": "https://{your-domain}/errors/invalid-input",
3228
+ * "code": "INVALID_INPUT",
3229
+ * "title": "Invalid Input",
3230
+ * "status": 422,
3231
+ * "detail": "One or more input fields are invalid",
3232
+ * "instance": "/v1/cart/items",
3233
+ * "extensions": {
3234
+ * "message_code": "INVALID_INPUT",
3235
+ * "invalid_params": [
3236
+ * {
3237
+ * "field": "items[0].quantity",
3238
+ * "error": "Input should be greater than or equal to 1"
3239
+ * }
3240
+ * ]
3241
+ * }
3242
+ * }
3243
+ * }
3244
+ */
3245
+ "application/json": components["schemas"]["StandardResponse"];
3246
+ };
3247
+ };
3248
+ /** @description Too Many Requests */
3249
+ 429: {
3250
+ headers: {
3251
+ [name: string]: unknown;
3252
+ };
3253
+ content: {
3254
+ /**
3255
+ * @example {
3256
+ * "status": "error",
3257
+ * "message": "Too many requests",
3258
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3259
+ * "metadata": {
3260
+ * "timestamp": "2025-08-05T18:38:57Z",
3261
+ * "requestId": "uuid",
3262
+ * "traceId": "uuid",
3263
+ * "version": "v1",
3264
+ * "executionTime": 0,
3265
+ * "language": "en-US",
3266
+ * "links": [
3267
+ * {
3268
+ * "rel": "self",
3269
+ * "href": "/v1/cart/items",
3270
+ * "method": "POST"
3271
+ * }
3272
+ * ]
3273
+ * },
3274
+ * "error": {
3275
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
3276
+ * "code": "RATE_LIMIT_EXCEEDED",
3277
+ * "title": "Rate Limit Exceeded",
3278
+ * "status": 429,
3279
+ * "detail": "Too many requests",
3280
+ * "instance": "/v1/cart/items",
3281
+ * "extensions": {
3282
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3283
+ * "invalid_params": []
3284
+ * }
3285
+ * }
3286
+ * }
3287
+ */
3288
+ "application/json": components["schemas"]["StandardResponse"];
3289
+ };
3290
+ };
3291
+ /** @description Internal Server Error */
3292
+ 500: {
3293
+ headers: {
3294
+ [name: string]: unknown;
3295
+ };
3296
+ content: {
3297
+ /**
3298
+ * @example {
3299
+ * "status": "error",
3300
+ * "message": "An unexpected error occurred",
3301
+ * "message_code": "SERVER_ERROR",
3302
+ * "metadata": {
3303
+ * "timestamp": "2025-08-05T18:38:57Z",
3304
+ * "requestId": "uuid",
3305
+ * "traceId": "uuid",
3306
+ * "version": "v1",
3307
+ * "executionTime": 0,
3308
+ * "language": "en-US",
3309
+ * "links": [
3310
+ * {
3311
+ * "rel": "self",
3312
+ * "href": "/v1/cart/items",
3313
+ * "method": "POST"
3314
+ * }
3315
+ * ]
3316
+ * },
3317
+ * "error": {
3318
+ * "type": "https://{your-domain}/errors/server-error",
3319
+ * "code": "SERVER_ERROR",
3320
+ * "title": "Server Error",
3321
+ * "status": 500,
3322
+ * "detail": "An unexpected error occurred",
3323
+ * "instance": "/v1/cart/items",
3324
+ * "extensions": {
3325
+ * "message_code": "SERVER_ERROR",
3326
+ * "invalid_params": []
3327
+ * }
3328
+ * }
3329
+ * }
3330
+ */
3331
+ "application/json": components["schemas"]["StandardResponse"];
3332
+ };
3333
+ };
3334
+ };
3335
+ };
3336
+ deleteUserPermission: {
3337
+ parameters: {
3338
+ query?: {
3339
+ /** @description Reason for revocation */
3340
+ reason?: string | null;
3341
+ };
3342
+ header?: {
3343
+ authorization?: string | null;
3344
+ };
3345
+ path: {
3346
+ user_id: number;
3347
+ override_id: string;
3348
+ };
3349
+ cookie?: never;
3350
+ };
3351
+ requestBody?: never;
3352
+ responses: {
3353
+ /** @description Successful Response */
3354
+ 200: {
3355
+ headers: {
3356
+ [name: string]: unknown;
3357
+ };
3358
+ content: {
3359
+ "application/json": unknown;
3360
+ };
3361
+ };
3362
+ /** @description Bad Request */
3363
+ 400: {
3364
+ headers: {
3365
+ [name: string]: unknown;
3366
+ };
3367
+ content: {
3368
+ /**
3369
+ * @example {
3370
+ * "status": "error",
3371
+ * "message": "An error occurred",
3372
+ * "message_code": "GENERIC_ERROR",
3373
+ * "metadata": {
3374
+ * "timestamp": "2025-08-05T18:38:57Z",
3375
+ * "requestId": "uuid",
3376
+ * "traceId": "uuid",
3377
+ * "version": "v1",
3378
+ * "executionTime": 0,
3379
+ * "language": "en-US",
3380
+ * "links": [
3381
+ * {
3382
+ * "rel": "self",
3383
+ * "href": "/v1/cart/items",
3384
+ * "method": "POST"
3385
+ * }
3386
+ * ]
3387
+ * },
3388
+ * "error": {
3389
+ * "type": "https://{your-domain}/errors/client-error",
3390
+ * "code": "GENERIC_ERROR",
3391
+ * "title": "Client Error",
3392
+ * "status": 400,
3393
+ * "detail": "An error occurred",
3394
+ * "instance": "/v1/cart/items",
3395
+ * "extensions": {
3396
+ * "message_code": "GENERIC_ERROR",
3397
+ * "invalid_params": []
3398
+ * }
3399
+ * }
3400
+ * }
3401
+ */
3402
+ "application/json": components["schemas"]["StandardResponse"];
3403
+ };
3404
+ };
3405
+ /** @description Unprocessable Entity */
3406
+ 422: {
3407
+ headers: {
3408
+ [name: string]: unknown;
3409
+ };
3410
+ content: {
3411
+ /**
3412
+ * @example {
3413
+ * "status": "error",
3414
+ * "message": "One or more input fields are invalid",
3415
+ * "message_code": "INVALID_INPUT",
3416
+ * "metadata": {
3417
+ * "timestamp": "2025-08-05T18:38:57Z",
3418
+ * "requestId": "uuid",
3419
+ * "traceId": "uuid",
3420
+ * "version": "v1",
3421
+ * "executionTime": 0,
3422
+ * "language": "en-US",
3423
+ * "links": [
3424
+ * {
3425
+ * "rel": "self",
3426
+ * "href": "/v1/cart/items",
3427
+ * "method": "POST"
3428
+ * }
3429
+ * ]
3430
+ * },
3431
+ * "error": {
3432
+ * "type": "https://{your-domain}/errors/invalid-input",
3433
+ * "code": "INVALID_INPUT",
3434
+ * "title": "Invalid Input",
3435
+ * "status": 422,
3436
+ * "detail": "One or more input fields are invalid",
3437
+ * "instance": "/v1/cart/items",
3438
+ * "extensions": {
3439
+ * "message_code": "INVALID_INPUT",
3440
+ * "invalid_params": [
3441
+ * {
3442
+ * "field": "items[0].quantity",
3443
+ * "error": "Input should be greater than or equal to 1"
3444
+ * }
3445
+ * ]
3446
+ * }
3447
+ * }
3448
+ * }
3449
+ */
3450
+ "application/json": components["schemas"]["StandardResponse"];
3451
+ };
3452
+ };
3453
+ /** @description Too Many Requests */
3454
+ 429: {
3455
+ headers: {
3456
+ [name: string]: unknown;
3457
+ };
3458
+ content: {
3459
+ /**
3460
+ * @example {
3461
+ * "status": "error",
3462
+ * "message": "Too many requests",
3463
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3464
+ * "metadata": {
3465
+ * "timestamp": "2025-08-05T18:38:57Z",
3466
+ * "requestId": "uuid",
3467
+ * "traceId": "uuid",
3468
+ * "version": "v1",
3469
+ * "executionTime": 0,
3470
+ * "language": "en-US",
3471
+ * "links": [
3472
+ * {
3473
+ * "rel": "self",
3474
+ * "href": "/v1/cart/items",
3475
+ * "method": "POST"
3476
+ * }
3477
+ * ]
3478
+ * },
3479
+ * "error": {
3480
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
3481
+ * "code": "RATE_LIMIT_EXCEEDED",
3482
+ * "title": "Rate Limit Exceeded",
3483
+ * "status": 429,
3484
+ * "detail": "Too many requests",
3485
+ * "instance": "/v1/cart/items",
3486
+ * "extensions": {
3487
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3488
+ * "invalid_params": []
3489
+ * }
3490
+ * }
3491
+ * }
3492
+ */
3493
+ "application/json": components["schemas"]["StandardResponse"];
3494
+ };
3495
+ };
3496
+ /** @description Internal Server Error */
3497
+ 500: {
3498
+ headers: {
3499
+ [name: string]: unknown;
3500
+ };
3501
+ content: {
3502
+ /**
3503
+ * @example {
3504
+ * "status": "error",
3505
+ * "message": "An unexpected error occurred",
3506
+ * "message_code": "SERVER_ERROR",
3507
+ * "metadata": {
3508
+ * "timestamp": "2025-08-05T18:38:57Z",
3509
+ * "requestId": "uuid",
3510
+ * "traceId": "uuid",
3511
+ * "version": "v1",
3512
+ * "executionTime": 0,
3513
+ * "language": "en-US",
3514
+ * "links": [
3515
+ * {
3516
+ * "rel": "self",
3517
+ * "href": "/v1/cart/items",
3518
+ * "method": "POST"
3519
+ * }
3520
+ * ]
3521
+ * },
3522
+ * "error": {
3523
+ * "type": "https://{your-domain}/errors/server-error",
3524
+ * "code": "SERVER_ERROR",
3525
+ * "title": "Server Error",
3526
+ * "status": 500,
3527
+ * "detail": "An unexpected error occurred",
3528
+ * "instance": "/v1/cart/items",
3529
+ * "extensions": {
3530
+ * "message_code": "SERVER_ERROR",
3531
+ * "invalid_params": []
3532
+ * }
3533
+ * }
3534
+ * }
3535
+ */
3536
+ "application/json": components["schemas"]["StandardResponse"];
3537
+ };
3538
+ };
3539
+ };
3540
+ };
3541
+ bulkRegisterUsers: {
3542
+ parameters: {
3543
+ query?: never;
3544
+ header?: {
3545
+ authorization?: string | null;
3546
+ };
3547
+ path?: never;
3548
+ cookie?: never;
3549
+ };
3550
+ requestBody: {
3551
+ content: {
3552
+ "application/json": components["schemas"]["BulkRegisterRequest"];
3553
+ };
3554
+ };
3555
+ responses: {
3556
+ /** @description Successful Response */
3557
+ 200: {
3558
+ headers: {
3559
+ [name: string]: unknown;
3560
+ };
3561
+ content: {
3562
+ "application/json": unknown;
3563
+ };
3564
+ };
3565
+ /** @description Bad Request */
3566
+ 400: {
3567
+ headers: {
3568
+ [name: string]: unknown;
3569
+ };
3570
+ content: {
3571
+ /**
3572
+ * @example {
3573
+ * "status": "error",
3574
+ * "message": "An error occurred",
3575
+ * "message_code": "GENERIC_ERROR",
3576
+ * "metadata": {
3577
+ * "timestamp": "2025-08-05T18:38:57Z",
3578
+ * "requestId": "uuid",
3579
+ * "traceId": "uuid",
3580
+ * "version": "v1",
3581
+ * "executionTime": 0,
3582
+ * "language": "en-US",
3583
+ * "links": [
3584
+ * {
3585
+ * "rel": "self",
3586
+ * "href": "/v1/cart/items",
3587
+ * "method": "POST"
3588
+ * }
3589
+ * ]
3590
+ * },
3591
+ * "error": {
3592
+ * "type": "https://{your-domain}/errors/client-error",
3593
+ * "code": "GENERIC_ERROR",
3594
+ * "title": "Client Error",
3595
+ * "status": 400,
3596
+ * "detail": "An error occurred",
3597
+ * "instance": "/v1/cart/items",
3598
+ * "extensions": {
3599
+ * "message_code": "GENERIC_ERROR",
3600
+ * "invalid_params": []
3601
+ * }
3602
+ * }
3603
+ * }
3604
+ */
3605
+ "application/json": components["schemas"]["StandardResponse"];
3606
+ };
3607
+ };
3608
+ /** @description Unprocessable Entity */
3609
+ 422: {
3610
+ headers: {
3611
+ [name: string]: unknown;
3612
+ };
3613
+ content: {
3614
+ /**
3615
+ * @example {
3616
+ * "status": "error",
3617
+ * "message": "One or more input fields are invalid",
3618
+ * "message_code": "INVALID_INPUT",
3619
+ * "metadata": {
3620
+ * "timestamp": "2025-08-05T18:38:57Z",
3621
+ * "requestId": "uuid",
3622
+ * "traceId": "uuid",
3623
+ * "version": "v1",
3624
+ * "executionTime": 0,
3625
+ * "language": "en-US",
3626
+ * "links": [
3627
+ * {
3628
+ * "rel": "self",
3629
+ * "href": "/v1/cart/items",
3630
+ * "method": "POST"
3631
+ * }
3632
+ * ]
3633
+ * },
3634
+ * "error": {
3635
+ * "type": "https://{your-domain}/errors/invalid-input",
3636
+ * "code": "INVALID_INPUT",
3637
+ * "title": "Invalid Input",
3638
+ * "status": 422,
3639
+ * "detail": "One or more input fields are invalid",
3640
+ * "instance": "/v1/cart/items",
3641
+ * "extensions": {
3642
+ * "message_code": "INVALID_INPUT",
3643
+ * "invalid_params": [
3644
+ * {
3645
+ * "field": "items[0].quantity",
3646
+ * "error": "Input should be greater than or equal to 1"
3647
+ * }
3648
+ * ]
3649
+ * }
3650
+ * }
3651
+ * }
3652
+ */
3653
+ "application/json": components["schemas"]["StandardResponse"];
3654
+ };
3655
+ };
3656
+ /** @description Too Many Requests */
3657
+ 429: {
3658
+ headers: {
3659
+ [name: string]: unknown;
3660
+ };
3661
+ content: {
3662
+ /**
3663
+ * @example {
3664
+ * "status": "error",
3665
+ * "message": "Too many requests",
3666
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3667
+ * "metadata": {
3668
+ * "timestamp": "2025-08-05T18:38:57Z",
3669
+ * "requestId": "uuid",
3670
+ * "traceId": "uuid",
3671
+ * "version": "v1",
3672
+ * "executionTime": 0,
3673
+ * "language": "en-US",
3674
+ * "links": [
3675
+ * {
3676
+ * "rel": "self",
3677
+ * "href": "/v1/cart/items",
3678
+ * "method": "POST"
3679
+ * }
3680
+ * ]
3681
+ * },
3682
+ * "error": {
3683
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
3684
+ * "code": "RATE_LIMIT_EXCEEDED",
3685
+ * "title": "Rate Limit Exceeded",
3686
+ * "status": 429,
3687
+ * "detail": "Too many requests",
3688
+ * "instance": "/v1/cart/items",
3689
+ * "extensions": {
3690
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3691
+ * "invalid_params": []
3692
+ * }
3693
+ * }
3694
+ * }
3695
+ */
3696
+ "application/json": components["schemas"]["StandardResponse"];
3697
+ };
3698
+ };
3699
+ /** @description Internal Server Error */
3700
+ 500: {
3701
+ headers: {
3702
+ [name: string]: unknown;
3703
+ };
3704
+ content: {
3705
+ /**
3706
+ * @example {
3707
+ * "status": "error",
3708
+ * "message": "An unexpected error occurred",
3709
+ * "message_code": "SERVER_ERROR",
3710
+ * "metadata": {
3711
+ * "timestamp": "2025-08-05T18:38:57Z",
3712
+ * "requestId": "uuid",
3713
+ * "traceId": "uuid",
3714
+ * "version": "v1",
3715
+ * "executionTime": 0,
3716
+ * "language": "en-US",
3717
+ * "links": [
3718
+ * {
3719
+ * "rel": "self",
3720
+ * "href": "/v1/cart/items",
3721
+ * "method": "POST"
3722
+ * }
3723
+ * ]
3724
+ * },
3725
+ * "error": {
3726
+ * "type": "https://{your-domain}/errors/server-error",
3727
+ * "code": "SERVER_ERROR",
3728
+ * "title": "Server Error",
3729
+ * "status": 500,
3730
+ * "detail": "An unexpected error occurred",
3731
+ * "instance": "/v1/cart/items",
3732
+ * "extensions": {
3733
+ * "message_code": "SERVER_ERROR",
3734
+ * "invalid_params": []
3735
+ * }
3736
+ * }
3737
+ * }
3738
+ */
3739
+ "application/json": components["schemas"]["StandardResponse"];
3740
+ };
3741
+ };
3742
+ };
3743
+ };
3744
+ bulkUpdateUsers: {
3745
+ parameters: {
3746
+ query?: never;
3747
+ header?: {
3748
+ authorization?: string | null;
3749
+ };
3750
+ path?: never;
3751
+ cookie?: never;
3752
+ };
3753
+ requestBody: {
3754
+ content: {
3755
+ "application/json": components["schemas"]["BulkUpdateRequest"];
3756
+ };
3757
+ };
3758
+ responses: {
3759
+ /** @description Successful Response */
3760
+ 200: {
3761
+ headers: {
3762
+ [name: string]: unknown;
3763
+ };
3764
+ content: {
3765
+ "application/json": unknown;
3766
+ };
3767
+ };
3768
+ /** @description Bad Request */
3769
+ 400: {
3770
+ headers: {
3771
+ [name: string]: unknown;
3772
+ };
3773
+ content: {
3774
+ /**
3775
+ * @example {
3776
+ * "status": "error",
3777
+ * "message": "An error occurred",
3778
+ * "message_code": "GENERIC_ERROR",
3779
+ * "metadata": {
3780
+ * "timestamp": "2025-08-05T18:38:57Z",
3781
+ * "requestId": "uuid",
3782
+ * "traceId": "uuid",
3783
+ * "version": "v1",
3784
+ * "executionTime": 0,
3785
+ * "language": "en-US",
3786
+ * "links": [
3787
+ * {
3788
+ * "rel": "self",
3789
+ * "href": "/v1/cart/items",
3790
+ * "method": "POST"
3791
+ * }
3792
+ * ]
3793
+ * },
3794
+ * "error": {
3795
+ * "type": "https://{your-domain}/errors/client-error",
3796
+ * "code": "GENERIC_ERROR",
3797
+ * "title": "Client Error",
3798
+ * "status": 400,
3799
+ * "detail": "An error occurred",
3800
+ * "instance": "/v1/cart/items",
3801
+ * "extensions": {
3802
+ * "message_code": "GENERIC_ERROR",
3803
+ * "invalid_params": []
3804
+ * }
3805
+ * }
3806
+ * }
3807
+ */
3808
+ "application/json": components["schemas"]["StandardResponse"];
3809
+ };
3810
+ };
3811
+ /** @description Unprocessable Entity */
3812
+ 422: {
3813
+ headers: {
3814
+ [name: string]: unknown;
3815
+ };
3816
+ content: {
3817
+ /**
3818
+ * @example {
3819
+ * "status": "error",
3820
+ * "message": "One or more input fields are invalid",
3821
+ * "message_code": "INVALID_INPUT",
3822
+ * "metadata": {
3823
+ * "timestamp": "2025-08-05T18:38:57Z",
3824
+ * "requestId": "uuid",
3825
+ * "traceId": "uuid",
3826
+ * "version": "v1",
3827
+ * "executionTime": 0,
3828
+ * "language": "en-US",
3829
+ * "links": [
3830
+ * {
3831
+ * "rel": "self",
3832
+ * "href": "/v1/cart/items",
3833
+ * "method": "POST"
3834
+ * }
3835
+ * ]
3836
+ * },
3837
+ * "error": {
3838
+ * "type": "https://{your-domain}/errors/invalid-input",
3839
+ * "code": "INVALID_INPUT",
3840
+ * "title": "Invalid Input",
3841
+ * "status": 422,
3842
+ * "detail": "One or more input fields are invalid",
3843
+ * "instance": "/v1/cart/items",
3844
+ * "extensions": {
3845
+ * "message_code": "INVALID_INPUT",
3846
+ * "invalid_params": [
3847
+ * {
3848
+ * "field": "items[0].quantity",
3849
+ * "error": "Input should be greater than or equal to 1"
3850
+ * }
3851
+ * ]
3852
+ * }
3853
+ * }
3854
+ * }
3855
+ */
3856
+ "application/json": components["schemas"]["StandardResponse"];
3857
+ };
3858
+ };
3859
+ /** @description Too Many Requests */
3860
+ 429: {
3861
+ headers: {
3862
+ [name: string]: unknown;
3863
+ };
3864
+ content: {
3865
+ /**
3866
+ * @example {
3867
+ * "status": "error",
3868
+ * "message": "Too many requests",
3869
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3870
+ * "metadata": {
3871
+ * "timestamp": "2025-08-05T18:38:57Z",
3872
+ * "requestId": "uuid",
3873
+ * "traceId": "uuid",
3874
+ * "version": "v1",
3875
+ * "executionTime": 0,
3876
+ * "language": "en-US",
3877
+ * "links": [
3878
+ * {
3879
+ * "rel": "self",
3880
+ * "href": "/v1/cart/items",
3881
+ * "method": "POST"
3882
+ * }
3883
+ * ]
3884
+ * },
3885
+ * "error": {
3886
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
3887
+ * "code": "RATE_LIMIT_EXCEEDED",
3888
+ * "title": "Rate Limit Exceeded",
3889
+ * "status": 429,
3890
+ * "detail": "Too many requests",
3891
+ * "instance": "/v1/cart/items",
3892
+ * "extensions": {
3893
+ * "message_code": "RATE_LIMIT_EXCEEDED",
3894
+ * "invalid_params": []
3895
+ * }
3896
+ * }
3897
+ * }
3898
+ */
3899
+ "application/json": components["schemas"]["StandardResponse"];
3900
+ };
3901
+ };
3902
+ /** @description Internal Server Error */
3903
+ 500: {
3904
+ headers: {
3905
+ [name: string]: unknown;
3906
+ };
3907
+ content: {
3908
+ /**
3909
+ * @example {
3910
+ * "status": "error",
3911
+ * "message": "An unexpected error occurred",
3912
+ * "message_code": "SERVER_ERROR",
3913
+ * "metadata": {
3914
+ * "timestamp": "2025-08-05T18:38:57Z",
3915
+ * "requestId": "uuid",
3916
+ * "traceId": "uuid",
3917
+ * "version": "v1",
3918
+ * "executionTime": 0,
3919
+ * "language": "en-US",
3920
+ * "links": [
3921
+ * {
3922
+ * "rel": "self",
3923
+ * "href": "/v1/cart/items",
3924
+ * "method": "POST"
3925
+ * }
3926
+ * ]
3927
+ * },
3928
+ * "error": {
3929
+ * "type": "https://{your-domain}/errors/server-error",
3930
+ * "code": "SERVER_ERROR",
3931
+ * "title": "Server Error",
3932
+ * "status": 500,
3933
+ * "detail": "An unexpected error occurred",
3934
+ * "instance": "/v1/cart/items",
3935
+ * "extensions": {
3936
+ * "message_code": "SERVER_ERROR",
3937
+ * "invalid_params": []
3938
+ * }
3939
+ * }
3940
+ * }
3941
+ */
3942
+ "application/json": components["schemas"]["StandardResponse"];
3943
+ };
3944
+ };
3945
+ };
3946
+ };
3947
+ bulkDeleteUsers: {
3948
+ parameters: {
3949
+ query?: never;
3950
+ header?: {
3951
+ authorization?: string | null;
3952
+ };
3953
+ path?: never;
3954
+ cookie?: never;
3955
+ };
3956
+ requestBody: {
3957
+ content: {
3958
+ "application/json": components["schemas"]["BulkDeleteRequest"];
3959
+ };
3960
+ };
3961
+ responses: {
3962
+ /** @description Successful Response */
3963
+ 200: {
3964
+ headers: {
3965
+ [name: string]: unknown;
3966
+ };
3967
+ content: {
3968
+ "application/json": unknown;
3969
+ };
3970
+ };
3971
+ /** @description Bad Request */
3972
+ 400: {
3973
+ headers: {
3974
+ [name: string]: unknown;
3975
+ };
3976
+ content: {
3977
+ /**
3978
+ * @example {
3979
+ * "status": "error",
3980
+ * "message": "An error occurred",
3981
+ * "message_code": "GENERIC_ERROR",
3982
+ * "metadata": {
3983
+ * "timestamp": "2025-08-05T18:38:57Z",
3984
+ * "requestId": "uuid",
3985
+ * "traceId": "uuid",
3986
+ * "version": "v1",
3987
+ * "executionTime": 0,
3988
+ * "language": "en-US",
3989
+ * "links": [
3990
+ * {
3991
+ * "rel": "self",
3992
+ * "href": "/v1/cart/items",
3993
+ * "method": "POST"
3994
+ * }
3995
+ * ]
3996
+ * },
3997
+ * "error": {
3998
+ * "type": "https://{your-domain}/errors/client-error",
3999
+ * "code": "GENERIC_ERROR",
4000
+ * "title": "Client Error",
4001
+ * "status": 400,
4002
+ * "detail": "An error occurred",
4003
+ * "instance": "/v1/cart/items",
4004
+ * "extensions": {
4005
+ * "message_code": "GENERIC_ERROR",
4006
+ * "invalid_params": []
4007
+ * }
4008
+ * }
4009
+ * }
4010
+ */
4011
+ "application/json": components["schemas"]["StandardResponse"];
4012
+ };
4013
+ };
4014
+ /** @description Unprocessable Entity */
4015
+ 422: {
4016
+ headers: {
4017
+ [name: string]: unknown;
4018
+ };
4019
+ content: {
4020
+ /**
4021
+ * @example {
4022
+ * "status": "error",
4023
+ * "message": "One or more input fields are invalid",
4024
+ * "message_code": "INVALID_INPUT",
4025
+ * "metadata": {
4026
+ * "timestamp": "2025-08-05T18:38:57Z",
4027
+ * "requestId": "uuid",
4028
+ * "traceId": "uuid",
4029
+ * "version": "v1",
4030
+ * "executionTime": 0,
4031
+ * "language": "en-US",
4032
+ * "links": [
4033
+ * {
4034
+ * "rel": "self",
4035
+ * "href": "/v1/cart/items",
4036
+ * "method": "POST"
4037
+ * }
4038
+ * ]
4039
+ * },
4040
+ * "error": {
4041
+ * "type": "https://{your-domain}/errors/invalid-input",
4042
+ * "code": "INVALID_INPUT",
4043
+ * "title": "Invalid Input",
4044
+ * "status": 422,
4045
+ * "detail": "One or more input fields are invalid",
4046
+ * "instance": "/v1/cart/items",
4047
+ * "extensions": {
4048
+ * "message_code": "INVALID_INPUT",
4049
+ * "invalid_params": [
4050
+ * {
4051
+ * "field": "items[0].quantity",
4052
+ * "error": "Input should be greater than or equal to 1"
4053
+ * }
4054
+ * ]
4055
+ * }
4056
+ * }
4057
+ * }
4058
+ */
4059
+ "application/json": components["schemas"]["StandardResponse"];
4060
+ };
4061
+ };
4062
+ /** @description Too Many Requests */
4063
+ 429: {
4064
+ headers: {
4065
+ [name: string]: unknown;
4066
+ };
4067
+ content: {
4068
+ /**
4069
+ * @example {
4070
+ * "status": "error",
4071
+ * "message": "Too many requests",
4072
+ * "message_code": "RATE_LIMIT_EXCEEDED",
4073
+ * "metadata": {
4074
+ * "timestamp": "2025-08-05T18:38:57Z",
4075
+ * "requestId": "uuid",
4076
+ * "traceId": "uuid",
4077
+ * "version": "v1",
4078
+ * "executionTime": 0,
4079
+ * "language": "en-US",
4080
+ * "links": [
4081
+ * {
4082
+ * "rel": "self",
4083
+ * "href": "/v1/cart/items",
4084
+ * "method": "POST"
4085
+ * }
4086
+ * ]
4087
+ * },
4088
+ * "error": {
4089
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
4090
+ * "code": "RATE_LIMIT_EXCEEDED",
4091
+ * "title": "Rate Limit Exceeded",
4092
+ * "status": 429,
4093
+ * "detail": "Too many requests",
4094
+ * "instance": "/v1/cart/items",
4095
+ * "extensions": {
4096
+ * "message_code": "RATE_LIMIT_EXCEEDED",
4097
+ * "invalid_params": []
4098
+ * }
4099
+ * }
4100
+ * }
4101
+ */
4102
+ "application/json": components["schemas"]["StandardResponse"];
4103
+ };
4104
+ };
4105
+ /** @description Internal Server Error */
4106
+ 500: {
4107
+ headers: {
4108
+ [name: string]: unknown;
4109
+ };
4110
+ content: {
4111
+ /**
4112
+ * @example {
4113
+ * "status": "error",
4114
+ * "message": "An unexpected error occurred",
4115
+ * "message_code": "SERVER_ERROR",
4116
+ * "metadata": {
4117
+ * "timestamp": "2025-08-05T18:38:57Z",
4118
+ * "requestId": "uuid",
4119
+ * "traceId": "uuid",
4120
+ * "version": "v1",
4121
+ * "executionTime": 0,
4122
+ * "language": "en-US",
4123
+ * "links": [
4124
+ * {
4125
+ * "rel": "self",
4126
+ * "href": "/v1/cart/items",
4127
+ * "method": "POST"
4128
+ * }
4129
+ * ]
4130
+ * },
4131
+ * "error": {
4132
+ * "type": "https://{your-domain}/errors/server-error",
4133
+ * "code": "SERVER_ERROR",
4134
+ * "title": "Server Error",
4135
+ * "status": 500,
4136
+ * "detail": "An unexpected error occurred",
4137
+ * "instance": "/v1/cart/items",
4138
+ * "extensions": {
4139
+ * "message_code": "SERVER_ERROR",
4140
+ * "invalid_params": []
4141
+ * }
4142
+ * }
4143
+ * }
4144
+ */
4145
+ "application/json": components["schemas"]["StandardResponse"];
4146
+ };
4147
+ };
4148
+ };
4149
+ };
4150
+ getUserStats: {
4151
+ parameters: {
4152
+ query?: never;
4153
+ header?: {
4154
+ authorization?: string | null;
4155
+ };
4156
+ path?: never;
4157
+ cookie?: never;
4158
+ };
4159
+ requestBody?: never;
4160
+ responses: {
4161
+ /** @description Successful Response */
4162
+ 200: {
4163
+ headers: {
4164
+ [name: string]: unknown;
4165
+ };
4166
+ content: {
4167
+ "application/json": unknown;
4168
+ };
4169
+ };
4170
+ /** @description Bad Request */
4171
+ 400: {
4172
+ headers: {
4173
+ [name: string]: unknown;
4174
+ };
4175
+ content: {
4176
+ /**
4177
+ * @example {
4178
+ * "status": "error",
4179
+ * "message": "An error occurred",
4180
+ * "message_code": "GENERIC_ERROR",
4181
+ * "metadata": {
4182
+ * "timestamp": "2025-08-05T18:38:57Z",
4183
+ * "requestId": "uuid",
4184
+ * "traceId": "uuid",
4185
+ * "version": "v1",
4186
+ * "executionTime": 0,
4187
+ * "language": "en-US",
4188
+ * "links": [
4189
+ * {
4190
+ * "rel": "self",
4191
+ * "href": "/v1/cart/items",
4192
+ * "method": "POST"
4193
+ * }
4194
+ * ]
4195
+ * },
4196
+ * "error": {
4197
+ * "type": "https://{your-domain}/errors/client-error",
4198
+ * "code": "GENERIC_ERROR",
4199
+ * "title": "Client Error",
4200
+ * "status": 400,
4201
+ * "detail": "An error occurred",
4202
+ * "instance": "/v1/cart/items",
4203
+ * "extensions": {
4204
+ * "message_code": "GENERIC_ERROR",
4205
+ * "invalid_params": []
4206
+ * }
4207
+ * }
4208
+ * }
4209
+ */
4210
+ "application/json": components["schemas"]["StandardResponse"];
4211
+ };
4212
+ };
4213
+ /** @description Unprocessable Entity */
4214
+ 422: {
4215
+ headers: {
4216
+ [name: string]: unknown;
4217
+ };
4218
+ content: {
4219
+ /**
4220
+ * @example {
4221
+ * "status": "error",
4222
+ * "message": "One or more input fields are invalid",
4223
+ * "message_code": "INVALID_INPUT",
4224
+ * "metadata": {
4225
+ * "timestamp": "2025-08-05T18:38:57Z",
4226
+ * "requestId": "uuid",
4227
+ * "traceId": "uuid",
4228
+ * "version": "v1",
4229
+ * "executionTime": 0,
4230
+ * "language": "en-US",
4231
+ * "links": [
4232
+ * {
4233
+ * "rel": "self",
4234
+ * "href": "/v1/cart/items",
4235
+ * "method": "POST"
4236
+ * }
4237
+ * ]
4238
+ * },
4239
+ * "error": {
4240
+ * "type": "https://{your-domain}/errors/invalid-input",
4241
+ * "code": "INVALID_INPUT",
4242
+ * "title": "Invalid Input",
4243
+ * "status": 422,
4244
+ * "detail": "One or more input fields are invalid",
4245
+ * "instance": "/v1/cart/items",
4246
+ * "extensions": {
4247
+ * "message_code": "INVALID_INPUT",
4248
+ * "invalid_params": [
4249
+ * {
4250
+ * "field": "items[0].quantity",
4251
+ * "error": "Input should be greater than or equal to 1"
4252
+ * }
4253
+ * ]
4254
+ * }
4255
+ * }
4256
+ * }
4257
+ */
4258
+ "application/json": components["schemas"]["StandardResponse"];
4259
+ };
4260
+ };
4261
+ /** @description Too Many Requests */
4262
+ 429: {
4263
+ headers: {
4264
+ [name: string]: unknown;
4265
+ };
4266
+ content: {
4267
+ /**
4268
+ * @example {
4269
+ * "status": "error",
4270
+ * "message": "Too many requests",
4271
+ * "message_code": "RATE_LIMIT_EXCEEDED",
4272
+ * "metadata": {
4273
+ * "timestamp": "2025-08-05T18:38:57Z",
4274
+ * "requestId": "uuid",
4275
+ * "traceId": "uuid",
4276
+ * "version": "v1",
4277
+ * "executionTime": 0,
4278
+ * "language": "en-US",
4279
+ * "links": [
4280
+ * {
4281
+ * "rel": "self",
4282
+ * "href": "/v1/cart/items",
4283
+ * "method": "POST"
4284
+ * }
4285
+ * ]
4286
+ * },
4287
+ * "error": {
4288
+ * "type": "https://{your-domain}/errors/rate-limit-exceeded",
4289
+ * "code": "RATE_LIMIT_EXCEEDED",
4290
+ * "title": "Rate Limit Exceeded",
4291
+ * "status": 429,
4292
+ * "detail": "Too many requests",
4293
+ * "instance": "/v1/cart/items",
4294
+ * "extensions": {
4295
+ * "message_code": "RATE_LIMIT_EXCEEDED",
4296
+ * "invalid_params": []
4297
+ * }
4298
+ * }
4299
+ * }
4300
+ */
4301
+ "application/json": components["schemas"]["StandardResponse"];
4302
+ };
4303
+ };
4304
+ /** @description Internal Server Error */
4305
+ 500: {
4306
+ headers: {
4307
+ [name: string]: unknown;
4308
+ };
4309
+ content: {
4310
+ /**
4311
+ * @example {
4312
+ * "status": "error",
4313
+ * "message": "An unexpected error occurred",
4314
+ * "message_code": "SERVER_ERROR",
4315
+ * "metadata": {
4316
+ * "timestamp": "2025-08-05T18:38:57Z",
4317
+ * "requestId": "uuid",
4318
+ * "traceId": "uuid",
4319
+ * "version": "v1",
4320
+ * "executionTime": 0,
4321
+ * "language": "en-US",
4322
+ * "links": [
4323
+ * {
4324
+ * "rel": "self",
4325
+ * "href": "/v1/cart/items",
4326
+ * "method": "POST"
4327
+ * }
4328
+ * ]
4329
+ * },
4330
+ * "error": {
4331
+ * "type": "https://{your-domain}/errors/server-error",
4332
+ * "code": "SERVER_ERROR",
4333
+ * "title": "Server Error",
4334
+ * "status": 500,
4335
+ * "detail": "An unexpected error occurred",
4336
+ * "instance": "/v1/cart/items",
4337
+ * "extensions": {
4338
+ * "message_code": "SERVER_ERROR",
4339
+ * "invalid_params": []
4340
+ * }
4341
+ * }
4342
+ * }
4343
+ */
4344
+ "application/json": components["schemas"]["StandardResponse"];
4345
+ };
4346
+ };
4347
+ };
4348
+ };
4349
+ }
4350
+ //# sourceMappingURL=generated.d.ts.map