@volter/twin-openai 0.1.1 → 2.0.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 (120) hide show
  1. package/README.md +33 -30
  2. package/defaults/handlers.json +10 -0
  3. package/dist/defaults/handlers.json +10 -0
  4. package/dist/src/cli.d.ts +2 -0
  5. package/dist/src/cli.js +29 -0
  6. package/dist/src/generated/surface.gen.json +1 -0
  7. package/dist/src/generated/ui.gen.json +1 -0
  8. package/dist/src/index.d.ts +19 -0
  9. package/dist/src/index.js +72 -0
  10. package/dist/src/manifest.d.ts +6 -0
  11. package/dist/src/manifest.js +323 -0
  12. package/dist/src/openai-budget.d.ts +53 -0
  13. package/dist/src/openai-budget.js +147 -0
  14. package/dist/src/openai-capabilities.d.ts +4 -0
  15. package/dist/src/openai-capabilities.js +1569 -0
  16. package/dist/src/openai-conformance.d.ts +13 -0
  17. package/dist/src/openai-conformance.js +116 -0
  18. package/dist/src/openai-connector.d.ts +86 -0
  19. package/dist/src/openai-connector.js +291 -0
  20. package/dist/src/openai-media.d.ts +43 -0
  21. package/dist/src/openai-media.js +257 -0
  22. package/dist/src/openai-models.d.ts +74 -0
  23. package/dist/src/openai-models.js +148 -0
  24. package/dist/src/openai-scenario.d.ts +51 -0
  25. package/dist/src/openai-scenario.js +166 -0
  26. package/dist/src/openai-server.d.ts +40 -0
  27. package/dist/src/openai-server.js +126 -0
  28. package/dist/src/openai-stub.d.ts +82 -0
  29. package/dist/src/openai-stub.js +256 -0
  30. package/dist/src/openai-twin.d.ts +182 -0
  31. package/dist/src/openai-twin.js +1117 -0
  32. package/dist/src/openai-types.d.ts +194 -0
  33. package/dist/src/openai-types.js +4 -0
  34. package/dist/src/openai-webhooks.d.ts +47 -0
  35. package/dist/src/openai-webhooks.js +99 -0
  36. package/dist/src/screens/api-keys.d.ts +16 -0
  37. package/dist/src/screens/api-keys.js +131 -0
  38. package/dist/src/screens/session.d.ts +22 -0
  39. package/dist/src/screens/session.js +115 -0
  40. package/dist/src/semantics/assistants.d.ts +2 -0
  41. package/dist/src/semantics/assistants.js +331 -0
  42. package/dist/src/semantics/audio.d.ts +2 -0
  43. package/dist/src/semantics/audio.js +27 -0
  44. package/dist/src/semantics/batches.d.ts +4 -0
  45. package/dist/src/semantics/batches.js +86 -0
  46. package/dist/src/semantics/chat-completions.d.ts +3 -0
  47. package/dist/src/semantics/chat-completions.js +58 -0
  48. package/dist/src/semantics/containers.d.ts +2 -0
  49. package/dist/src/semantics/containers.js +147 -0
  50. package/dist/src/semantics/embeddings.d.ts +2 -0
  51. package/dist/src/semantics/embeddings.js +13 -0
  52. package/dist/src/semantics/evals.d.ts +2 -0
  53. package/dist/src/semantics/evals.js +173 -0
  54. package/dist/src/semantics/files.d.ts +13 -0
  55. package/dist/src/semantics/files.js +59 -0
  56. package/dist/src/semantics/fine-tuning.d.ts +4 -0
  57. package/dist/src/semantics/fine-tuning.js +178 -0
  58. package/dist/src/semantics/images.d.ts +2 -0
  59. package/dist/src/semantics/images.js +18 -0
  60. package/dist/src/semantics/index.d.ts +8 -0
  61. package/dist/src/semantics/index.js +46 -0
  62. package/dist/src/semantics/models.d.ts +2 -0
  63. package/dist/src/semantics/models.js +34 -0
  64. package/dist/src/semantics/moderations.d.ts +2 -0
  65. package/dist/src/semantics/moderations.js +12 -0
  66. package/dist/src/semantics/organization.d.ts +2 -0
  67. package/dist/src/semantics/organization.js +67 -0
  68. package/dist/src/semantics/progress.d.ts +22 -0
  69. package/dist/src/semantics/progress.js +63 -0
  70. package/dist/src/semantics/responses.d.ts +3 -0
  71. package/dist/src/semantics/responses.js +153 -0
  72. package/dist/src/semantics/shared.d.ts +32 -0
  73. package/dist/src/semantics/shared.js +69 -0
  74. package/dist/src/semantics/uploads.d.ts +2 -0
  75. package/dist/src/semantics/uploads.js +84 -0
  76. package/dist/src/semantics/vector-stores.d.ts +2 -0
  77. package/dist/src/semantics/vector-stores.js +281 -0
  78. package/dist/test-fixtures/openai-openapi-operations.SOURCE.md +18 -0
  79. package/dist/test-fixtures/openai-openapi-operations.json +1849 -0
  80. package/package.json +21 -10
  81. package/src/cli.ts +9 -7
  82. package/src/generated/surface.gen.json +1 -0
  83. package/src/generated/ui.gen.json +1 -0
  84. package/src/index.ts +20 -10
  85. package/src/manifest.ts +343 -0
  86. package/src/openai-budget.ts +4 -4
  87. package/src/openai-capabilities.ts +177 -195
  88. package/src/openai-conformance.ts +1 -1
  89. package/src/openai-connector.ts +40 -43
  90. package/src/openai-media.ts +225 -0
  91. package/src/openai-models.ts +145 -15
  92. package/src/openai-scenario.ts +46 -10
  93. package/src/openai-server.ts +65 -108
  94. package/src/openai-stub.ts +54 -30
  95. package/src/openai-twin.ts +760 -1665
  96. package/src/openai-types.ts +24 -6
  97. package/src/openai-webhooks.ts +2 -1
  98. package/src/screens/api-keys.tsx +138 -0
  99. package/src/screens/session.tsx +131 -0
  100. package/src/semantics/assistants.ts +336 -0
  101. package/src/semantics/audio.ts +31 -0
  102. package/src/semantics/batches.ts +88 -0
  103. package/src/semantics/chat-completions.ts +66 -0
  104. package/src/semantics/containers.ts +151 -0
  105. package/src/semantics/embeddings.ts +19 -0
  106. package/src/semantics/evals.ts +182 -0
  107. package/src/semantics/files.ts +67 -0
  108. package/src/semantics/fine-tuning.ts +185 -0
  109. package/src/semantics/images.ts +23 -0
  110. package/src/semantics/index.ts +52 -0
  111. package/src/semantics/models.ts +41 -0
  112. package/src/semantics/moderations.ts +14 -0
  113. package/src/semantics/organization.ts +76 -0
  114. package/src/semantics/progress.ts +72 -0
  115. package/src/semantics/responses.ts +151 -0
  116. package/src/semantics/shared.ts +82 -0
  117. package/src/semantics/uploads.ts +92 -0
  118. package/src/semantics/vector-stores.ts +279 -0
  119. package/test-fixtures/openai-openapi-operations.SOURCE.md +4 -5
  120. package/test-fixtures/openai-openapi-operations.json +224 -1334
@@ -0,0 +1,1849 @@
1
+ {
2
+ "openapi": "3.0.3",
3
+ "info": {
4
+ "title": "OpenAI API (spec-census scoped subset)",
5
+ "version": "2.3.0",
6
+ "description": "A scope-filtered SUBSET of the upstream spec (https://github.com/openai/openai-openapi), derived by scripts/spec-census-bootstrap.ts: every operation under the committed scopePaths, operation metadata only (operationId, summary, tags) \u2014 schemas AND response codes dropped, which makes this an operation INVENTORY in OpenAPI's shape rather than a valid OpenAPI document: it says which operations exist and nothing about what they answer. It carried the FIRST response code per operation, which reads as the whole set \u2014 diff status codes against the freshly fetched spec instead. It is ONLY the operation-inventory denominator for ../openai-spec-census.json; see openai-openapi-operations.SOURCE.md for provenance."
7
+ },
8
+ "servers": [
9
+ {
10
+ "url": "https://api.openai.com/v1"
11
+ }
12
+ ],
13
+ "x-source": {
14
+ "vendor": "openai",
15
+ "upstream": "https://github.com/openai/openai-openapi",
16
+ "upstreamFile": "openapi.yaml",
17
+ "vendored": "derived by scripts/spec-census-bootstrap.ts from openapi.yaml fetched 2026-09-02 \u2014 scope-filtered to scopePaths, schemas and response codes dropped; 6 query-string path variant(s) (e.g. /responses?beta=true) folded into their base path",
18
+ "curatedOn": "2026-09-02",
19
+ "scope": "/assistants, /audio, /batches, /chat/, /containers, /embeddings, /evals, /files, /fine_tuning, /images, /models, /moderations, /organization, /responses, /threads, /uploads, /vector_stores"
20
+ },
21
+ "paths": {
22
+ "/assistants": {
23
+ "get": {
24
+ "operationId": "listAssistants",
25
+ "summary": "Returns a list of assistants.",
26
+ "tags": [
27
+ "Assistants"
28
+ ]
29
+ },
30
+ "post": {
31
+ "operationId": "createAssistant",
32
+ "summary": "Create an assistant with a model and instructions.",
33
+ "tags": [
34
+ "Assistants"
35
+ ]
36
+ }
37
+ },
38
+ "/assistants/{assistant_id}": {
39
+ "delete": {
40
+ "operationId": "deleteAssistant",
41
+ "summary": "Delete an assistant.",
42
+ "tags": [
43
+ "Assistants"
44
+ ]
45
+ },
46
+ "get": {
47
+ "operationId": "getAssistant",
48
+ "summary": "Retrieves an assistant.",
49
+ "tags": [
50
+ "Assistants"
51
+ ]
52
+ },
53
+ "post": {
54
+ "operationId": "modifyAssistant",
55
+ "summary": "Modifies an assistant.",
56
+ "tags": [
57
+ "Assistants"
58
+ ]
59
+ }
60
+ },
61
+ "/audio/speech": {
62
+ "post": {
63
+ "operationId": "createSpeech",
64
+ "summary": "Generates audio from the input text.",
65
+ "tags": [
66
+ "Audio"
67
+ ]
68
+ }
69
+ },
70
+ "/audio/transcriptions": {
71
+ "post": {
72
+ "operationId": "createTranscription",
73
+ "summary": "Transcribes audio into the input language.",
74
+ "tags": [
75
+ "Audio"
76
+ ]
77
+ }
78
+ },
79
+ "/audio/translations": {
80
+ "post": {
81
+ "operationId": "createTranslation",
82
+ "summary": "Translates audio into English.",
83
+ "tags": [
84
+ "Audio"
85
+ ]
86
+ }
87
+ },
88
+ "/audio/voice_consents": {
89
+ "get": {
90
+ "operationId": "listVoiceConsents",
91
+ "summary": "Returns a list of voice consent recordings.",
92
+ "tags": [
93
+ "Audio"
94
+ ]
95
+ },
96
+ "post": {
97
+ "operationId": "createVoiceConsent",
98
+ "summary": "Upload a voice consent recording.",
99
+ "tags": [
100
+ "Audio"
101
+ ]
102
+ }
103
+ },
104
+ "/audio/voice_consents/{consent_id}": {
105
+ "delete": {
106
+ "operationId": "deleteVoiceConsent",
107
+ "summary": "Deletes a voice consent recording.",
108
+ "tags": [
109
+ "Audio"
110
+ ]
111
+ },
112
+ "get": {
113
+ "operationId": "getVoiceConsent",
114
+ "summary": "Retrieves a voice consent recording.",
115
+ "tags": [
116
+ "Audio"
117
+ ]
118
+ },
119
+ "post": {
120
+ "operationId": "updateVoiceConsent",
121
+ "summary": "Updates a voice consent recording (metadata only).",
122
+ "tags": [
123
+ "Audio"
124
+ ]
125
+ }
126
+ },
127
+ "/audio/voices": {
128
+ "post": {
129
+ "operationId": "createVoice",
130
+ "summary": "Creates a custom voice.",
131
+ "tags": [
132
+ "Audio"
133
+ ]
134
+ }
135
+ },
136
+ "/batches": {
137
+ "get": {
138
+ "operationId": "listBatches",
139
+ "summary": "List your organization's batches.",
140
+ "tags": [
141
+ "Batch"
142
+ ]
143
+ },
144
+ "post": {
145
+ "operationId": "createBatch",
146
+ "summary": "Creates and executes a batch from an uploaded file of requests",
147
+ "tags": [
148
+ "Batch"
149
+ ]
150
+ }
151
+ },
152
+ "/batches/{batch_id}": {
153
+ "get": {
154
+ "operationId": "retrieveBatch",
155
+ "summary": "Retrieves a batch.",
156
+ "tags": [
157
+ "Batch"
158
+ ]
159
+ }
160
+ },
161
+ "/batches/{batch_id}/cancel": {
162
+ "post": {
163
+ "operationId": "cancelBatch",
164
+ "summary": "Cancels an in-progress batch",
165
+ "tags": [
166
+ "Batch"
167
+ ]
168
+ }
169
+ },
170
+ "/chat/completions": {
171
+ "get": {
172
+ "operationId": "listChatCompletions",
173
+ "summary": "List stored Chat Completions",
174
+ "tags": [
175
+ "Chat"
176
+ ]
177
+ },
178
+ "post": {
179
+ "operationId": "createChatCompletion",
180
+ "summary": "**Starting a new project?** We recommend trying [Responses](/docs/api-reference/responses)",
181
+ "tags": [
182
+ "Chat"
183
+ ]
184
+ }
185
+ },
186
+ "/chat/completions/{completion_id}": {
187
+ "delete": {
188
+ "operationId": "deleteChatCompletion",
189
+ "summary": "Delete a stored chat completion",
190
+ "tags": [
191
+ "Chat"
192
+ ]
193
+ },
194
+ "get": {
195
+ "operationId": "getChatCompletion",
196
+ "summary": "Get a stored chat completion",
197
+ "tags": [
198
+ "Chat"
199
+ ]
200
+ },
201
+ "post": {
202
+ "operationId": "updateChatCompletion",
203
+ "summary": "Modify a stored chat completion",
204
+ "tags": [
205
+ "Chat"
206
+ ]
207
+ }
208
+ },
209
+ "/chat/completions/{completion_id}/messages": {
210
+ "get": {
211
+ "operationId": "getChatCompletionMessages",
212
+ "summary": "Get the messages in a stored chat completion",
213
+ "tags": [
214
+ "Chat"
215
+ ]
216
+ }
217
+ },
218
+ "/containers": {
219
+ "get": {
220
+ "operationId": "ListContainers",
221
+ "summary": "List Containers",
222
+ "tags": [
223
+ "containers"
224
+ ]
225
+ },
226
+ "post": {
227
+ "operationId": "CreateContainer",
228
+ "summary": "Create Container",
229
+ "tags": [
230
+ "containers"
231
+ ]
232
+ }
233
+ },
234
+ "/containers/{container_id}": {
235
+ "delete": {
236
+ "operationId": "DeleteContainer",
237
+ "summary": "Delete Container",
238
+ "tags": [
239
+ "containers"
240
+ ]
241
+ },
242
+ "get": {
243
+ "operationId": "RetrieveContainer",
244
+ "summary": "Retrieve Container",
245
+ "tags": [
246
+ "containers"
247
+ ]
248
+ }
249
+ },
250
+ "/containers/{container_id}/files": {
251
+ "get": {
252
+ "operationId": "ListContainerFiles",
253
+ "summary": "List Container files",
254
+ "tags": [
255
+ "containers"
256
+ ]
257
+ },
258
+ "post": {
259
+ "operationId": "CreateContainerFile",
260
+ "summary": "Create a Container File",
261
+ "tags": [
262
+ "containers"
263
+ ]
264
+ }
265
+ },
266
+ "/containers/{container_id}/files/{file_id}": {
267
+ "delete": {
268
+ "operationId": "DeleteContainerFile",
269
+ "summary": "Delete Container File",
270
+ "tags": [
271
+ "containers"
272
+ ]
273
+ },
274
+ "get": {
275
+ "operationId": "RetrieveContainerFile",
276
+ "summary": "Retrieve Container File",
277
+ "tags": [
278
+ "containers"
279
+ ]
280
+ }
281
+ },
282
+ "/containers/{container_id}/files/{file_id}/content": {
283
+ "get": {
284
+ "operationId": "RetrieveContainerFileContent",
285
+ "summary": "Retrieve Container File Content",
286
+ "tags": [
287
+ "containers"
288
+ ]
289
+ }
290
+ },
291
+ "/embeddings": {
292
+ "post": {
293
+ "operationId": "createEmbedding",
294
+ "summary": "Creates an embedding vector representing the input text.",
295
+ "tags": [
296
+ "Embeddings"
297
+ ]
298
+ }
299
+ },
300
+ "/evals": {
301
+ "get": {
302
+ "operationId": "listEvals",
303
+ "summary": "List evaluations for a project.",
304
+ "tags": [
305
+ "Evals"
306
+ ]
307
+ },
308
+ "post": {
309
+ "operationId": "createEval",
310
+ "summary": "Create the structure of an evaluation that can be used to test a model's performance.",
311
+ "tags": [
312
+ "Evals"
313
+ ]
314
+ }
315
+ },
316
+ "/evals/{eval_id}": {
317
+ "delete": {
318
+ "operationId": "deleteEval",
319
+ "summary": "Delete an evaluation.",
320
+ "tags": [
321
+ "Evals"
322
+ ]
323
+ },
324
+ "get": {
325
+ "operationId": "getEval",
326
+ "summary": "Get an evaluation by ID.",
327
+ "tags": [
328
+ "Evals"
329
+ ]
330
+ },
331
+ "post": {
332
+ "operationId": "updateEval",
333
+ "summary": "Update certain properties of an evaluation.",
334
+ "tags": [
335
+ "Evals"
336
+ ]
337
+ }
338
+ },
339
+ "/evals/{eval_id}/runs": {
340
+ "get": {
341
+ "operationId": "getEvalRuns",
342
+ "summary": "Get a list of runs for an evaluation.",
343
+ "tags": [
344
+ "Evals"
345
+ ]
346
+ },
347
+ "post": {
348
+ "operationId": "createEvalRun",
349
+ "summary": "Kicks off a new run for a given evaluation, specifying the data source, and what model configuration to use to test",
350
+ "tags": [
351
+ "Evals"
352
+ ]
353
+ }
354
+ },
355
+ "/evals/{eval_id}/runs/{run_id}": {
356
+ "delete": {
357
+ "operationId": "deleteEvalRun",
358
+ "summary": "Delete an eval run.",
359
+ "tags": [
360
+ "Evals"
361
+ ]
362
+ },
363
+ "get": {
364
+ "operationId": "getEvalRun",
365
+ "summary": "Get an evaluation run by ID.",
366
+ "tags": [
367
+ "Evals"
368
+ ]
369
+ },
370
+ "post": {
371
+ "operationId": "cancelEvalRun",
372
+ "summary": "Cancel an ongoing evaluation run.",
373
+ "tags": [
374
+ "Evals"
375
+ ]
376
+ }
377
+ },
378
+ "/evals/{eval_id}/runs/{run_id}/output_items": {
379
+ "get": {
380
+ "operationId": "getEvalRunOutputItems",
381
+ "summary": "Get a list of output items for an evaluation run.",
382
+ "tags": [
383
+ "Evals"
384
+ ]
385
+ }
386
+ },
387
+ "/evals/{eval_id}/runs/{run_id}/output_items/{output_item_id}": {
388
+ "get": {
389
+ "operationId": "getEvalRunOutputItem",
390
+ "summary": "Get an evaluation run output item by ID.",
391
+ "tags": [
392
+ "Evals"
393
+ ]
394
+ }
395
+ },
396
+ "/files": {
397
+ "get": {
398
+ "operationId": "listFiles",
399
+ "summary": "Returns a list of files.",
400
+ "tags": [
401
+ "Files"
402
+ ]
403
+ },
404
+ "post": {
405
+ "operationId": "createFile",
406
+ "summary": "Upload a file that can be used across various endpoints",
407
+ "tags": [
408
+ "Files"
409
+ ]
410
+ }
411
+ },
412
+ "/files/{file_id}": {
413
+ "delete": {
414
+ "operationId": "deleteFile",
415
+ "summary": "Delete a file and remove it from all vector stores.",
416
+ "tags": [
417
+ "Files"
418
+ ]
419
+ },
420
+ "get": {
421
+ "operationId": "retrieveFile",
422
+ "summary": "Returns information about a specific file.",
423
+ "tags": [
424
+ "Files"
425
+ ]
426
+ }
427
+ },
428
+ "/files/{file_id}/content": {
429
+ "get": {
430
+ "operationId": "downloadFile",
431
+ "summary": "Returns a response containing the contents of the specified file.",
432
+ "tags": [
433
+ "Files"
434
+ ]
435
+ }
436
+ },
437
+ "/fine_tuning/alpha/graders/run": {
438
+ "post": {
439
+ "operationId": "runGrader",
440
+ "summary": "Run a grader.",
441
+ "tags": [
442
+ "Fine-tuning"
443
+ ]
444
+ }
445
+ },
446
+ "/fine_tuning/alpha/graders/validate": {
447
+ "post": {
448
+ "operationId": "validateGrader",
449
+ "summary": "Validate a grader.",
450
+ "tags": [
451
+ "Fine-tuning"
452
+ ]
453
+ }
454
+ },
455
+ "/fine_tuning/checkpoints/{fine_tuned_model_checkpoint}/permissions": {
456
+ "get": {
457
+ "operationId": "listFineTuningCheckpointPermissions",
458
+ "summary": "**NOTE:** This endpoint requires an [admin API key](../admin-api-keys).",
459
+ "tags": [
460
+ "Fine-tuning"
461
+ ]
462
+ },
463
+ "post": {
464
+ "operationId": "createFineTuningCheckpointPermission",
465
+ "summary": "**NOTE:** Calling this endpoint requires an [admin API key](../admin-api-keys).",
466
+ "tags": [
467
+ "Fine-tuning"
468
+ ]
469
+ }
470
+ },
471
+ "/fine_tuning/checkpoints/{fine_tuned_model_checkpoint}/permissions/{permission_id}": {
472
+ "delete": {
473
+ "operationId": "deleteFineTuningCheckpointPermission",
474
+ "summary": "**NOTE:** This endpoint requires an [admin API key](../admin-api-keys).",
475
+ "tags": [
476
+ "Fine-tuning"
477
+ ]
478
+ }
479
+ },
480
+ "/fine_tuning/jobs": {
481
+ "get": {
482
+ "operationId": "listPaginatedFineTuningJobs",
483
+ "summary": "List your organization's fine-tuning jobs",
484
+ "tags": [
485
+ "Fine-tuning"
486
+ ]
487
+ },
488
+ "post": {
489
+ "operationId": "createFineTuningJob",
490
+ "summary": "Creates a fine-tuning job which begins the process of creating a new model from a given dataset.",
491
+ "tags": [
492
+ "Fine-tuning"
493
+ ]
494
+ }
495
+ },
496
+ "/fine_tuning/jobs/{fine_tuning_job_id}": {
497
+ "get": {
498
+ "operationId": "retrieveFineTuningJob",
499
+ "summary": "Get info about a fine-tuning job.",
500
+ "tags": [
501
+ "Fine-tuning"
502
+ ]
503
+ }
504
+ },
505
+ "/fine_tuning/jobs/{fine_tuning_job_id}/cancel": {
506
+ "post": {
507
+ "operationId": "cancelFineTuningJob",
508
+ "summary": "Immediately cancel a fine-tune job.",
509
+ "tags": [
510
+ "Fine-tuning"
511
+ ]
512
+ }
513
+ },
514
+ "/fine_tuning/jobs/{fine_tuning_job_id}/checkpoints": {
515
+ "get": {
516
+ "operationId": "listFineTuningJobCheckpoints",
517
+ "summary": "List checkpoints for a fine-tuning job.",
518
+ "tags": [
519
+ "Fine-tuning"
520
+ ]
521
+ }
522
+ },
523
+ "/fine_tuning/jobs/{fine_tuning_job_id}/events": {
524
+ "get": {
525
+ "operationId": "listFineTuningEvents",
526
+ "summary": "Get status updates for a fine-tuning job.",
527
+ "tags": [
528
+ "Fine-tuning"
529
+ ]
530
+ }
531
+ },
532
+ "/fine_tuning/jobs/{fine_tuning_job_id}/pause": {
533
+ "post": {
534
+ "operationId": "pauseFineTuningJob",
535
+ "summary": "Pause a fine-tune job.",
536
+ "tags": [
537
+ "Fine-tuning"
538
+ ]
539
+ }
540
+ },
541
+ "/fine_tuning/jobs/{fine_tuning_job_id}/resume": {
542
+ "post": {
543
+ "operationId": "resumeFineTuningJob",
544
+ "summary": "Resume a fine-tune job.",
545
+ "tags": [
546
+ "Fine-tuning"
547
+ ]
548
+ }
549
+ },
550
+ "/images/edits": {
551
+ "post": {
552
+ "operationId": "createImageEdit",
553
+ "summary": "Creates an edited or extended image given one or more source images and a prompt",
554
+ "tags": [
555
+ "Images"
556
+ ]
557
+ }
558
+ },
559
+ "/images/generations": {
560
+ "post": {
561
+ "operationId": "createImage",
562
+ "summary": "Creates an image given a prompt",
563
+ "tags": [
564
+ "Images"
565
+ ]
566
+ }
567
+ },
568
+ "/images/variations": {
569
+ "post": {
570
+ "operationId": "createImageVariation",
571
+ "summary": "Creates a variation of a given image",
572
+ "tags": [
573
+ "Images"
574
+ ]
575
+ }
576
+ },
577
+ "/models": {
578
+ "get": {
579
+ "operationId": "listModels",
580
+ "summary": "Lists the currently available models, and provides basic information about each one such as the owner and availability.",
581
+ "tags": [
582
+ "Models"
583
+ ]
584
+ }
585
+ },
586
+ "/models/{model}": {
587
+ "delete": {
588
+ "operationId": "deleteModel",
589
+ "summary": "Delete a fine-tuned model",
590
+ "tags": [
591
+ "Models"
592
+ ]
593
+ },
594
+ "get": {
595
+ "operationId": "retrieveModel",
596
+ "summary": "Retrieves a model instance, providing basic information about the model such as the owner and permissioning.",
597
+ "tags": [
598
+ "Models"
599
+ ]
600
+ }
601
+ },
602
+ "/moderations": {
603
+ "post": {
604
+ "operationId": "createModeration",
605
+ "summary": "Classifies if text and/or image inputs are potentially harmful",
606
+ "tags": [
607
+ "Moderations"
608
+ ]
609
+ }
610
+ },
611
+ "/organization/admin_api_keys": {
612
+ "get": {
613
+ "operationId": "admin-api-keys-list",
614
+ "summary": "List organization API keys",
615
+ "tags": [
616
+ "organization"
617
+ ]
618
+ },
619
+ "post": {
620
+ "operationId": "admin-api-keys-create",
621
+ "summary": "Create an organization admin API key",
622
+ "tags": [
623
+ "organization"
624
+ ]
625
+ }
626
+ },
627
+ "/organization/admin_api_keys/{key_id}": {
628
+ "delete": {
629
+ "operationId": "admin-api-keys-delete",
630
+ "summary": "Delete an organization admin API key",
631
+ "tags": [
632
+ "organization"
633
+ ]
634
+ },
635
+ "get": {
636
+ "operationId": "admin-api-keys-get",
637
+ "summary": "Retrieve a single organization API key",
638
+ "tags": [
639
+ "organization"
640
+ ]
641
+ }
642
+ },
643
+ "/organization/audit_logs": {
644
+ "get": {
645
+ "operationId": "list-audit-logs",
646
+ "summary": "List user actions and configuration changes within this organization.",
647
+ "tags": [
648
+ "Audit Logs"
649
+ ]
650
+ }
651
+ },
652
+ "/organization/certificates": {
653
+ "get": {
654
+ "operationId": "listOrganizationCertificates",
655
+ "summary": "List uploaded certificates for this organization.",
656
+ "tags": [
657
+ "Certificates"
658
+ ]
659
+ },
660
+ "post": {
661
+ "operationId": "uploadCertificate",
662
+ "summary": "Upload a certificate to the organization",
663
+ "tags": [
664
+ "Certificates"
665
+ ]
666
+ }
667
+ },
668
+ "/organization/certificates/{certificate_id}": {
669
+ "delete": {
670
+ "operationId": "deleteCertificate",
671
+ "summary": "Delete a certificate from the organization.",
672
+ "tags": [
673
+ "Certificates"
674
+ ]
675
+ },
676
+ "get": {
677
+ "operationId": "getCertificate",
678
+ "summary": "Get a certificate that has been uploaded to the organization.",
679
+ "tags": [
680
+ "Certificates"
681
+ ]
682
+ },
683
+ "post": {
684
+ "operationId": "modifyCertificate",
685
+ "summary": "Modify a certificate",
686
+ "tags": [
687
+ "Certificates"
688
+ ]
689
+ }
690
+ },
691
+ "/organization/certificates/activate": {
692
+ "post": {
693
+ "operationId": "activateOrganizationCertificates",
694
+ "summary": "Activate certificates at the organization level.",
695
+ "tags": [
696
+ "Certificates"
697
+ ]
698
+ }
699
+ },
700
+ "/organization/certificates/deactivate": {
701
+ "post": {
702
+ "operationId": "deactivateOrganizationCertificates",
703
+ "summary": "Deactivate certificates at the organization level.",
704
+ "tags": [
705
+ "Certificates"
706
+ ]
707
+ }
708
+ },
709
+ "/organization/costs": {
710
+ "get": {
711
+ "operationId": "usage-costs",
712
+ "summary": "Get costs details for the organization.",
713
+ "tags": [
714
+ "Usage"
715
+ ]
716
+ }
717
+ },
718
+ "/organization/data_retention": {
719
+ "get": {
720
+ "operationId": "retrieve-organization-data-retention",
721
+ "summary": "Retrieves organization data retention controls.",
722
+ "tags": [
723
+ "Data retention"
724
+ ]
725
+ },
726
+ "post": {
727
+ "operationId": "update-organization-data-retention",
728
+ "summary": "Updates organization data retention controls.",
729
+ "tags": [
730
+ "Data retention"
731
+ ]
732
+ }
733
+ },
734
+ "/organization/groups": {
735
+ "get": {
736
+ "operationId": "list-groups",
737
+ "summary": "Lists all groups in the organization.",
738
+ "tags": [
739
+ "Groups"
740
+ ]
741
+ },
742
+ "post": {
743
+ "operationId": "create-group",
744
+ "summary": "Creates a new group in the organization.",
745
+ "tags": [
746
+ "Groups"
747
+ ]
748
+ }
749
+ },
750
+ "/organization/groups/{group_id}": {
751
+ "delete": {
752
+ "operationId": "delete-group",
753
+ "summary": "Deletes a group from the organization.",
754
+ "tags": [
755
+ "Groups"
756
+ ]
757
+ },
758
+ "get": {
759
+ "operationId": "retrieve-group",
760
+ "summary": "Retrieves a group.",
761
+ "tags": [
762
+ "Groups"
763
+ ]
764
+ },
765
+ "post": {
766
+ "operationId": "update-group",
767
+ "summary": "Updates a group's information.",
768
+ "tags": [
769
+ "Groups"
770
+ ]
771
+ }
772
+ },
773
+ "/organization/groups/{group_id}/roles": {
774
+ "get": {
775
+ "operationId": "list-group-role-assignments",
776
+ "summary": "Lists the organization roles assigned to a group within the organization.",
777
+ "tags": [
778
+ "Group organization role assignments"
779
+ ]
780
+ },
781
+ "post": {
782
+ "operationId": "assign-group-role",
783
+ "summary": "Assigns an organization role to a group within the organization.",
784
+ "tags": [
785
+ "Group organization role assignments"
786
+ ]
787
+ }
788
+ },
789
+ "/organization/groups/{group_id}/roles/{role_id}": {
790
+ "delete": {
791
+ "operationId": "unassign-group-role",
792
+ "summary": "Unassigns an organization role from a group within the organization.",
793
+ "tags": [
794
+ "Group organization role assignments"
795
+ ]
796
+ },
797
+ "get": {
798
+ "operationId": "retrieve-group-role",
799
+ "summary": "Retrieves an organization role assigned to a group.",
800
+ "tags": [
801
+ "Group organization role assignments"
802
+ ]
803
+ }
804
+ },
805
+ "/organization/groups/{group_id}/users": {
806
+ "get": {
807
+ "operationId": "list-group-users",
808
+ "summary": "Lists the users assigned to a group.",
809
+ "tags": [
810
+ "Group users"
811
+ ]
812
+ },
813
+ "post": {
814
+ "operationId": "add-group-user",
815
+ "summary": "Adds a user to a group.",
816
+ "tags": [
817
+ "Group users"
818
+ ]
819
+ }
820
+ },
821
+ "/organization/groups/{group_id}/users/{user_id}": {
822
+ "delete": {
823
+ "operationId": "remove-group-user",
824
+ "summary": "Removes a user from a group.",
825
+ "tags": [
826
+ "Group users"
827
+ ]
828
+ },
829
+ "get": {
830
+ "operationId": "retrieve-group-user",
831
+ "summary": "Retrieves a user in a group.",
832
+ "tags": [
833
+ "Group users"
834
+ ]
835
+ }
836
+ },
837
+ "/organization/invites": {
838
+ "get": {
839
+ "operationId": "list-invites",
840
+ "summary": "Returns a list of invites in the organization.",
841
+ "tags": [
842
+ "Invites"
843
+ ]
844
+ },
845
+ "post": {
846
+ "operationId": "inviteUser",
847
+ "summary": "Create an invite for a user to the organization",
848
+ "tags": [
849
+ "Invites"
850
+ ]
851
+ }
852
+ },
853
+ "/organization/invites/{invite_id}": {
854
+ "delete": {
855
+ "operationId": "delete-invite",
856
+ "summary": "Delete an invite",
857
+ "tags": [
858
+ "Invites"
859
+ ]
860
+ },
861
+ "get": {
862
+ "operationId": "retrieve-invite",
863
+ "summary": "Retrieves an invite.",
864
+ "tags": [
865
+ "Invites"
866
+ ]
867
+ }
868
+ },
869
+ "/organization/projects": {
870
+ "get": {
871
+ "operationId": "list-projects",
872
+ "summary": "Returns a list of projects.",
873
+ "tags": [
874
+ "Projects"
875
+ ]
876
+ },
877
+ "post": {
878
+ "operationId": "create-project",
879
+ "summary": "Create a new project in the organization",
880
+ "tags": [
881
+ "Projects"
882
+ ]
883
+ }
884
+ },
885
+ "/organization/projects/{project_id}": {
886
+ "get": {
887
+ "operationId": "retrieve-project",
888
+ "summary": "Retrieves a project.",
889
+ "tags": [
890
+ "Projects"
891
+ ]
892
+ },
893
+ "post": {
894
+ "operationId": "modify-project",
895
+ "summary": "Modifies a project in the organization.",
896
+ "tags": [
897
+ "Projects"
898
+ ]
899
+ }
900
+ },
901
+ "/organization/projects/{project_id}/api_keys": {
902
+ "get": {
903
+ "operationId": "list-project-api-keys",
904
+ "summary": "Returns a list of API keys in the project.",
905
+ "tags": [
906
+ "Projects"
907
+ ]
908
+ }
909
+ },
910
+ "/organization/projects/{project_id}/api_keys/{api_key_id}": {
911
+ "delete": {
912
+ "operationId": "delete-project-api-key",
913
+ "summary": "Deletes an API key from the project.",
914
+ "tags": [
915
+ "Projects"
916
+ ]
917
+ },
918
+ "get": {
919
+ "operationId": "retrieve-project-api-key",
920
+ "summary": "Retrieves an API key in the project.",
921
+ "tags": [
922
+ "Projects"
923
+ ]
924
+ }
925
+ },
926
+ "/organization/projects/{project_id}/archive": {
927
+ "post": {
928
+ "operationId": "archive-project",
929
+ "summary": "Archives a project in the organization",
930
+ "tags": [
931
+ "Projects"
932
+ ]
933
+ }
934
+ },
935
+ "/organization/projects/{project_id}/certificates": {
936
+ "get": {
937
+ "operationId": "listProjectCertificates",
938
+ "summary": "List certificates for this project.",
939
+ "tags": [
940
+ "Certificates"
941
+ ]
942
+ }
943
+ },
944
+ "/organization/projects/{project_id}/certificates/activate": {
945
+ "post": {
946
+ "operationId": "activateProjectCertificates",
947
+ "summary": "Activate certificates at the project level.",
948
+ "tags": [
949
+ "Certificates"
950
+ ]
951
+ }
952
+ },
953
+ "/organization/projects/{project_id}/certificates/deactivate": {
954
+ "post": {
955
+ "operationId": "deactivateProjectCertificates",
956
+ "summary": "Deactivate certificates at the project level",
957
+ "tags": [
958
+ "Certificates"
959
+ ]
960
+ }
961
+ },
962
+ "/organization/projects/{project_id}/data_retention": {
963
+ "get": {
964
+ "operationId": "retrieve-project-data-retention",
965
+ "summary": "Retrieves project data retention controls.",
966
+ "tags": [
967
+ "Data retention"
968
+ ]
969
+ },
970
+ "post": {
971
+ "operationId": "update-project-data-retention",
972
+ "summary": "Updates project data retention controls.",
973
+ "tags": [
974
+ "Data retention"
975
+ ]
976
+ }
977
+ },
978
+ "/organization/projects/{project_id}/groups": {
979
+ "get": {
980
+ "operationId": "list-project-groups",
981
+ "summary": "Lists the groups that have access to a project.",
982
+ "tags": [
983
+ "Project groups"
984
+ ]
985
+ },
986
+ "post": {
987
+ "operationId": "add-project-group",
988
+ "summary": "Grants a group access to a project.",
989
+ "tags": [
990
+ "Project groups"
991
+ ]
992
+ }
993
+ },
994
+ "/organization/projects/{project_id}/groups/{group_id}": {
995
+ "delete": {
996
+ "operationId": "remove-project-group",
997
+ "summary": "Revokes a group's access to a project.",
998
+ "tags": [
999
+ "Project groups"
1000
+ ]
1001
+ },
1002
+ "get": {
1003
+ "operationId": "retrieve-project-group",
1004
+ "summary": "Retrieves a project's group.",
1005
+ "tags": [
1006
+ "Project groups"
1007
+ ]
1008
+ }
1009
+ },
1010
+ "/organization/projects/{project_id}/hosted_tool_permissions": {
1011
+ "get": {
1012
+ "operationId": "retrieve-project-hosted-tool-permissions",
1013
+ "summary": "Returns hosted tool permissions for a project.",
1014
+ "tags": [
1015
+ "Hosted tools"
1016
+ ]
1017
+ },
1018
+ "post": {
1019
+ "operationId": "update-project-hosted-tool-permissions",
1020
+ "summary": "Updates hosted tool permissions for a project.",
1021
+ "tags": [
1022
+ "Hosted tools"
1023
+ ]
1024
+ }
1025
+ },
1026
+ "/organization/projects/{project_id}/model_permissions": {
1027
+ "delete": {
1028
+ "operationId": "delete-project-model-permissions",
1029
+ "summary": "Deletes model permissions for a project.",
1030
+ "tags": [
1031
+ "Projects"
1032
+ ]
1033
+ },
1034
+ "get": {
1035
+ "operationId": "retrieve-project-model-permissions",
1036
+ "summary": "Returns model permissions for a project.",
1037
+ "tags": [
1038
+ "Projects"
1039
+ ]
1040
+ },
1041
+ "post": {
1042
+ "operationId": "update-project-model-permissions",
1043
+ "summary": "Updates model permissions for a project.",
1044
+ "tags": [
1045
+ "Projects"
1046
+ ]
1047
+ }
1048
+ },
1049
+ "/organization/projects/{project_id}/rate_limits": {
1050
+ "get": {
1051
+ "operationId": "list-project-rate-limits",
1052
+ "summary": "Returns the rate limits per model for a project.",
1053
+ "tags": [
1054
+ "Projects"
1055
+ ]
1056
+ }
1057
+ },
1058
+ "/organization/projects/{project_id}/rate_limits/{rate_limit_id}": {
1059
+ "post": {
1060
+ "operationId": "update-project-rate-limits",
1061
+ "summary": "Updates a project rate limit.",
1062
+ "tags": [
1063
+ "Projects"
1064
+ ]
1065
+ }
1066
+ },
1067
+ "/organization/projects/{project_id}/service_accounts": {
1068
+ "get": {
1069
+ "operationId": "list-project-service-accounts",
1070
+ "summary": "Returns a list of service accounts in the project.",
1071
+ "tags": [
1072
+ "Projects"
1073
+ ]
1074
+ },
1075
+ "post": {
1076
+ "operationId": "create-project-service-account",
1077
+ "summary": "Creates a new service account in the project",
1078
+ "tags": [
1079
+ "Projects"
1080
+ ]
1081
+ }
1082
+ },
1083
+ "/organization/projects/{project_id}/service_accounts/{service_account_id}": {
1084
+ "delete": {
1085
+ "operationId": "delete-project-service-account",
1086
+ "summary": "Deletes a service account from the project.",
1087
+ "tags": [
1088
+ "Projects"
1089
+ ]
1090
+ },
1091
+ "get": {
1092
+ "operationId": "retrieve-project-service-account",
1093
+ "summary": "Retrieves a service account in the project.",
1094
+ "tags": [
1095
+ "Projects"
1096
+ ]
1097
+ },
1098
+ "post": {
1099
+ "operationId": "update-project-service-account",
1100
+ "summary": "Updates a service account in the project.",
1101
+ "tags": [
1102
+ "Projects"
1103
+ ]
1104
+ }
1105
+ },
1106
+ "/organization/projects/{project_id}/service_accounts/{service_account_id}/api_keys": {
1107
+ "post": {
1108
+ "operationId": "CreateanAPIkeyforaserviceaccount",
1109
+ "summary": "Creates an API key for a service account in the project.",
1110
+ "tags": [
1111
+ "organization"
1112
+ ]
1113
+ }
1114
+ },
1115
+ "/organization/projects/{project_id}/spend_alerts": {
1116
+ "get": {
1117
+ "operationId": "list-project-spend-alerts",
1118
+ "summary": "Lists project spend alerts.",
1119
+ "tags": [
1120
+ "Spend alerts"
1121
+ ]
1122
+ },
1123
+ "post": {
1124
+ "operationId": "create-project-spend-alert",
1125
+ "summary": "Creates a project spend alert.",
1126
+ "tags": [
1127
+ "Spend alerts"
1128
+ ]
1129
+ }
1130
+ },
1131
+ "/organization/projects/{project_id}/spend_alerts/{alert_id}": {
1132
+ "delete": {
1133
+ "operationId": "delete-project-spend-alert",
1134
+ "summary": "Deletes a project spend alert.",
1135
+ "tags": [
1136
+ "Spend alerts"
1137
+ ]
1138
+ },
1139
+ "get": {
1140
+ "operationId": "retrieve-project-spend-alert",
1141
+ "summary": "Retrieves a project spend alert.",
1142
+ "tags": [
1143
+ "Spend alerts"
1144
+ ]
1145
+ },
1146
+ "post": {
1147
+ "operationId": "update-project-spend-alert",
1148
+ "summary": "Updates a project spend alert.",
1149
+ "tags": [
1150
+ "Spend alerts"
1151
+ ]
1152
+ }
1153
+ },
1154
+ "/organization/projects/{project_id}/spend_limit": {
1155
+ "delete": {
1156
+ "operationId": "Deleteprojectspendlimit",
1157
+ "summary": "Delete a project's hard spend limit.",
1158
+ "tags": [
1159
+ "organization"
1160
+ ]
1161
+ },
1162
+ "get": {
1163
+ "operationId": "Getprojectspendlimit",
1164
+ "summary": "Get a project's hard spend limit.",
1165
+ "tags": [
1166
+ "organization"
1167
+ ]
1168
+ },
1169
+ "post": {
1170
+ "operationId": "Updateprojectspendlimit",
1171
+ "summary": "Create or replace a project's hard spend limit.",
1172
+ "tags": [
1173
+ "organization"
1174
+ ]
1175
+ }
1176
+ },
1177
+ "/organization/projects/{project_id}/users": {
1178
+ "get": {
1179
+ "operationId": "list-project-users",
1180
+ "summary": "Returns a list of users in the project.",
1181
+ "tags": [
1182
+ "Projects"
1183
+ ]
1184
+ },
1185
+ "post": {
1186
+ "operationId": "create-project-user",
1187
+ "summary": "Adds a user to the project",
1188
+ "tags": [
1189
+ "Projects"
1190
+ ]
1191
+ }
1192
+ },
1193
+ "/organization/projects/{project_id}/users/{user_id}": {
1194
+ "delete": {
1195
+ "operationId": "delete-project-user",
1196
+ "summary": "Deletes a user from the project.",
1197
+ "tags": [
1198
+ "Projects"
1199
+ ]
1200
+ },
1201
+ "get": {
1202
+ "operationId": "retrieve-project-user",
1203
+ "summary": "Retrieves a user in the project.",
1204
+ "tags": [
1205
+ "Projects"
1206
+ ]
1207
+ },
1208
+ "post": {
1209
+ "operationId": "modify-project-user",
1210
+ "summary": "Modifies a user's role in the project.",
1211
+ "tags": [
1212
+ "Projects"
1213
+ ]
1214
+ }
1215
+ },
1216
+ "/organization/roles": {
1217
+ "get": {
1218
+ "operationId": "list-roles",
1219
+ "summary": "Lists the roles configured for the organization.",
1220
+ "tags": [
1221
+ "Roles"
1222
+ ]
1223
+ },
1224
+ "post": {
1225
+ "operationId": "create-role",
1226
+ "summary": "Creates a custom role for the organization.",
1227
+ "tags": [
1228
+ "Roles"
1229
+ ]
1230
+ }
1231
+ },
1232
+ "/organization/roles/{role_id}": {
1233
+ "delete": {
1234
+ "operationId": "delete-role",
1235
+ "summary": "Deletes a custom role from the organization.",
1236
+ "tags": [
1237
+ "Roles"
1238
+ ]
1239
+ },
1240
+ "get": {
1241
+ "operationId": "retrieve-role",
1242
+ "summary": "Retrieves an organization role.",
1243
+ "tags": [
1244
+ "Roles"
1245
+ ]
1246
+ },
1247
+ "post": {
1248
+ "operationId": "update-role",
1249
+ "summary": "Updates an existing organization role.",
1250
+ "tags": [
1251
+ "Roles"
1252
+ ]
1253
+ }
1254
+ },
1255
+ "/organization/spend_alerts": {
1256
+ "get": {
1257
+ "operationId": "list-organization-spend-alerts",
1258
+ "summary": "Lists organization spend alerts.",
1259
+ "tags": [
1260
+ "Spend alerts"
1261
+ ]
1262
+ },
1263
+ "post": {
1264
+ "operationId": "create-organization-spend-alert",
1265
+ "summary": "Creates an organization spend alert.",
1266
+ "tags": [
1267
+ "Spend alerts"
1268
+ ]
1269
+ }
1270
+ },
1271
+ "/organization/spend_alerts/{alert_id}": {
1272
+ "delete": {
1273
+ "operationId": "delete-organization-spend-alert",
1274
+ "summary": "Deletes an organization spend alert.",
1275
+ "tags": [
1276
+ "Spend alerts"
1277
+ ]
1278
+ },
1279
+ "get": {
1280
+ "operationId": "retrieve-organization-spend-alert",
1281
+ "summary": "Retrieves an organization spend alert.",
1282
+ "tags": [
1283
+ "Spend alerts"
1284
+ ]
1285
+ },
1286
+ "post": {
1287
+ "operationId": "update-organization-spend-alert",
1288
+ "summary": "Updates an organization spend alert.",
1289
+ "tags": [
1290
+ "Spend alerts"
1291
+ ]
1292
+ }
1293
+ },
1294
+ "/organization/spend_limit": {
1295
+ "delete": {
1296
+ "operationId": "Deleteorganizationspendlimit",
1297
+ "summary": "Delete the organization's hard spend limit.",
1298
+ "tags": [
1299
+ "organization"
1300
+ ]
1301
+ },
1302
+ "get": {
1303
+ "operationId": "Getorganizationspendlimit",
1304
+ "summary": "Get the organization's hard spend limit.",
1305
+ "tags": [
1306
+ "organization"
1307
+ ]
1308
+ },
1309
+ "post": {
1310
+ "operationId": "Updateorganizationspendlimit",
1311
+ "summary": "Create or replace the organization's hard spend limit.",
1312
+ "tags": [
1313
+ "organization"
1314
+ ]
1315
+ }
1316
+ },
1317
+ "/organization/usage/audio_speeches": {
1318
+ "get": {
1319
+ "operationId": "usage-audio-speeches",
1320
+ "summary": "Get audio speeches usage details for the organization.",
1321
+ "tags": [
1322
+ "Usage"
1323
+ ]
1324
+ }
1325
+ },
1326
+ "/organization/usage/audio_transcriptions": {
1327
+ "get": {
1328
+ "operationId": "usage-audio-transcriptions",
1329
+ "summary": "Get audio transcriptions usage details for the organization.",
1330
+ "tags": [
1331
+ "Usage"
1332
+ ]
1333
+ }
1334
+ },
1335
+ "/organization/usage/code_interpreter_sessions": {
1336
+ "get": {
1337
+ "operationId": "usage-code-interpreter-sessions",
1338
+ "summary": "Get code interpreter sessions usage details for the organization.",
1339
+ "tags": [
1340
+ "Usage"
1341
+ ]
1342
+ }
1343
+ },
1344
+ "/organization/usage/completions": {
1345
+ "get": {
1346
+ "operationId": "usage-completions",
1347
+ "summary": "Get completions usage details for the organization.",
1348
+ "tags": [
1349
+ "Usage"
1350
+ ]
1351
+ }
1352
+ },
1353
+ "/organization/usage/embeddings": {
1354
+ "get": {
1355
+ "operationId": "usage-embeddings",
1356
+ "summary": "Get embeddings usage details for the organization.",
1357
+ "tags": [
1358
+ "Usage"
1359
+ ]
1360
+ }
1361
+ },
1362
+ "/organization/usage/file_search_calls": {
1363
+ "get": {
1364
+ "operationId": "usage-file-search-calls",
1365
+ "summary": "Get file search calls usage details for the organization.",
1366
+ "tags": [
1367
+ "Usage"
1368
+ ]
1369
+ }
1370
+ },
1371
+ "/organization/usage/images": {
1372
+ "get": {
1373
+ "operationId": "usage-images",
1374
+ "summary": "Get images usage details for the organization.",
1375
+ "tags": [
1376
+ "Usage"
1377
+ ]
1378
+ }
1379
+ },
1380
+ "/organization/usage/moderations": {
1381
+ "get": {
1382
+ "operationId": "usage-moderations",
1383
+ "summary": "Get moderations usage details for the organization.",
1384
+ "tags": [
1385
+ "Usage"
1386
+ ]
1387
+ }
1388
+ },
1389
+ "/organization/usage/vector_stores": {
1390
+ "get": {
1391
+ "operationId": "usage-vector-stores",
1392
+ "summary": "Get vector stores usage details for the organization.",
1393
+ "tags": [
1394
+ "Usage"
1395
+ ]
1396
+ }
1397
+ },
1398
+ "/organization/usage/web_search_calls": {
1399
+ "get": {
1400
+ "operationId": "usage-web-search-calls",
1401
+ "summary": "Get web search calls usage details for the organization.",
1402
+ "tags": [
1403
+ "Usage"
1404
+ ]
1405
+ }
1406
+ },
1407
+ "/organization/users": {
1408
+ "get": {
1409
+ "operationId": "list-users",
1410
+ "summary": "Lists all of the users in the organization.",
1411
+ "tags": [
1412
+ "Users"
1413
+ ]
1414
+ }
1415
+ },
1416
+ "/organization/users/{user_id}": {
1417
+ "delete": {
1418
+ "operationId": "delete-user",
1419
+ "summary": "Deletes a user from the organization.",
1420
+ "tags": [
1421
+ "Users"
1422
+ ]
1423
+ },
1424
+ "get": {
1425
+ "operationId": "retrieve-user",
1426
+ "summary": "Retrieves a user by their identifier.",
1427
+ "tags": [
1428
+ "Users"
1429
+ ]
1430
+ },
1431
+ "post": {
1432
+ "operationId": "modify-user",
1433
+ "summary": "Modifies a user's role in the organization.",
1434
+ "tags": [
1435
+ "Users"
1436
+ ]
1437
+ }
1438
+ },
1439
+ "/organization/users/{user_id}/roles": {
1440
+ "get": {
1441
+ "operationId": "list-user-role-assignments",
1442
+ "summary": "Lists the organization roles assigned to a user within the organization.",
1443
+ "tags": [
1444
+ "User organization role assignments"
1445
+ ]
1446
+ },
1447
+ "post": {
1448
+ "operationId": "assign-user-role",
1449
+ "summary": "Assigns an organization role to a user within the organization.",
1450
+ "tags": [
1451
+ "User organization role assignments"
1452
+ ]
1453
+ }
1454
+ },
1455
+ "/organization/users/{user_id}/roles/{role_id}": {
1456
+ "delete": {
1457
+ "operationId": "unassign-user-role",
1458
+ "summary": "Unassigns an organization role from a user within the organization.",
1459
+ "tags": [
1460
+ "User organization role assignments"
1461
+ ]
1462
+ },
1463
+ "get": {
1464
+ "operationId": "retrieve-user-role",
1465
+ "summary": "Retrieves an organization role assigned to a user.",
1466
+ "tags": [
1467
+ "User organization role assignments"
1468
+ ]
1469
+ }
1470
+ },
1471
+ "/responses": {
1472
+ "post": {
1473
+ "operationId": "createResponse",
1474
+ "summary": "Creates a model response",
1475
+ "tags": [
1476
+ "Responses"
1477
+ ]
1478
+ }
1479
+ },
1480
+ "/responses/{response_id}": {
1481
+ "delete": {
1482
+ "operationId": "deleteResponse",
1483
+ "summary": "Deletes a model response with the given ID.",
1484
+ "tags": [
1485
+ "Responses"
1486
+ ]
1487
+ },
1488
+ "get": {
1489
+ "operationId": "getResponse",
1490
+ "summary": "Retrieves a model response with the given ID.",
1491
+ "tags": [
1492
+ "Responses"
1493
+ ]
1494
+ }
1495
+ },
1496
+ "/responses/{response_id}/cancel": {
1497
+ "post": {
1498
+ "operationId": "cancelResponse",
1499
+ "summary": "Cancels a model response with the given ID",
1500
+ "tags": [
1501
+ "Responses"
1502
+ ]
1503
+ }
1504
+ },
1505
+ "/responses/{response_id}/input_items": {
1506
+ "get": {
1507
+ "operationId": "listInputItems",
1508
+ "summary": "Returns a list of input items for a given response.",
1509
+ "tags": [
1510
+ "Responses"
1511
+ ]
1512
+ }
1513
+ },
1514
+ "/responses/compact": {
1515
+ "post": {
1516
+ "operationId": "Compactconversation",
1517
+ "summary": "Compact a conversation",
1518
+ "tags": [
1519
+ "responses"
1520
+ ]
1521
+ }
1522
+ },
1523
+ "/responses/input_tokens": {
1524
+ "post": {
1525
+ "operationId": "Getinputtokencounts",
1526
+ "summary": "Returns input token counts of the request.",
1527
+ "tags": [
1528
+ "responses"
1529
+ ]
1530
+ }
1531
+ },
1532
+ "/threads": {
1533
+ "post": {
1534
+ "operationId": "createThread",
1535
+ "summary": "Create a thread.",
1536
+ "tags": [
1537
+ "Assistants"
1538
+ ]
1539
+ }
1540
+ },
1541
+ "/threads/{thread_id}": {
1542
+ "delete": {
1543
+ "operationId": "deleteThread",
1544
+ "summary": "Delete a thread.",
1545
+ "tags": [
1546
+ "Assistants"
1547
+ ]
1548
+ },
1549
+ "get": {
1550
+ "operationId": "getThread",
1551
+ "summary": "Retrieves a thread.",
1552
+ "tags": [
1553
+ "Assistants"
1554
+ ]
1555
+ },
1556
+ "post": {
1557
+ "operationId": "modifyThread",
1558
+ "summary": "Modifies a thread.",
1559
+ "tags": [
1560
+ "Assistants"
1561
+ ]
1562
+ }
1563
+ },
1564
+ "/threads/{thread_id}/messages": {
1565
+ "get": {
1566
+ "operationId": "listMessages",
1567
+ "summary": "Returns a list of messages for a given thread.",
1568
+ "tags": [
1569
+ "Assistants"
1570
+ ]
1571
+ },
1572
+ "post": {
1573
+ "operationId": "createMessage",
1574
+ "summary": "Create a message.",
1575
+ "tags": [
1576
+ "Assistants"
1577
+ ]
1578
+ }
1579
+ },
1580
+ "/threads/{thread_id}/messages/{message_id}": {
1581
+ "delete": {
1582
+ "operationId": "deleteMessage",
1583
+ "summary": "Deletes a message.",
1584
+ "tags": [
1585
+ "Assistants"
1586
+ ]
1587
+ },
1588
+ "get": {
1589
+ "operationId": "getMessage",
1590
+ "summary": "Retrieve a message.",
1591
+ "tags": [
1592
+ "Assistants"
1593
+ ]
1594
+ },
1595
+ "post": {
1596
+ "operationId": "modifyMessage",
1597
+ "summary": "Modifies a message.",
1598
+ "tags": [
1599
+ "Assistants"
1600
+ ]
1601
+ }
1602
+ },
1603
+ "/threads/{thread_id}/runs": {
1604
+ "get": {
1605
+ "operationId": "listRuns",
1606
+ "summary": "Returns a list of runs belonging to a thread.",
1607
+ "tags": [
1608
+ "Assistants"
1609
+ ]
1610
+ },
1611
+ "post": {
1612
+ "operationId": "createRun",
1613
+ "summary": "Create a run.",
1614
+ "tags": [
1615
+ "Assistants"
1616
+ ]
1617
+ }
1618
+ },
1619
+ "/threads/{thread_id}/runs/{run_id}": {
1620
+ "get": {
1621
+ "operationId": "getRun",
1622
+ "summary": "Retrieves a run.",
1623
+ "tags": [
1624
+ "Assistants"
1625
+ ]
1626
+ },
1627
+ "post": {
1628
+ "operationId": "modifyRun",
1629
+ "summary": "Modifies a run.",
1630
+ "tags": [
1631
+ "Assistants"
1632
+ ]
1633
+ }
1634
+ },
1635
+ "/threads/{thread_id}/runs/{run_id}/cancel": {
1636
+ "post": {
1637
+ "operationId": "cancelRun",
1638
+ "summary": "Cancels a run that is `in_progress`.",
1639
+ "tags": [
1640
+ "Assistants"
1641
+ ]
1642
+ }
1643
+ },
1644
+ "/threads/{thread_id}/runs/{run_id}/steps": {
1645
+ "get": {
1646
+ "operationId": "listRunSteps",
1647
+ "summary": "Returns a list of run steps belonging to a run.",
1648
+ "tags": [
1649
+ "Assistants"
1650
+ ]
1651
+ }
1652
+ },
1653
+ "/threads/{thread_id}/runs/{run_id}/steps/{step_id}": {
1654
+ "get": {
1655
+ "operationId": "getRunStep",
1656
+ "summary": "Retrieves a run step.",
1657
+ "tags": [
1658
+ "Assistants"
1659
+ ]
1660
+ }
1661
+ },
1662
+ "/threads/{thread_id}/runs/{run_id}/submit_tool_outputs": {
1663
+ "post": {
1664
+ "operationId": "submitToolOuputsToRun",
1665
+ "summary": "When a run has the `status: \"requires_action\"` and `required_action.type` is `submit_tool_outputs`, this endpoint can be used to submit the ",
1666
+ "tags": [
1667
+ "Assistants"
1668
+ ]
1669
+ }
1670
+ },
1671
+ "/threads/runs": {
1672
+ "post": {
1673
+ "operationId": "createThreadAndRun",
1674
+ "summary": "Create a thread and run it in one request.",
1675
+ "tags": [
1676
+ "Assistants"
1677
+ ]
1678
+ }
1679
+ },
1680
+ "/uploads": {
1681
+ "post": {
1682
+ "operationId": "createUpload",
1683
+ "summary": "Creates an intermediate [Upload](/docs/api-reference/uploads/object) object",
1684
+ "tags": [
1685
+ "Uploads"
1686
+ ]
1687
+ }
1688
+ },
1689
+ "/uploads/{upload_id}/cancel": {
1690
+ "post": {
1691
+ "operationId": "cancelUpload",
1692
+ "summary": "Cancels the Upload",
1693
+ "tags": [
1694
+ "Uploads"
1695
+ ]
1696
+ }
1697
+ },
1698
+ "/uploads/{upload_id}/complete": {
1699
+ "post": {
1700
+ "operationId": "completeUpload",
1701
+ "summary": "Completes the [Upload](/docs/api-reference/uploads/object)",
1702
+ "tags": [
1703
+ "Uploads"
1704
+ ]
1705
+ }
1706
+ },
1707
+ "/uploads/{upload_id}/parts": {
1708
+ "post": {
1709
+ "operationId": "addUploadPart",
1710
+ "summary": "Adds a [Part](/docs/api-reference/uploads/part-object) to an [Upload](/docs/api-reference/uploads/object) object",
1711
+ "tags": [
1712
+ "Uploads"
1713
+ ]
1714
+ }
1715
+ },
1716
+ "/vector_stores": {
1717
+ "get": {
1718
+ "operationId": "listVectorStores",
1719
+ "summary": "Returns a list of vector stores.",
1720
+ "tags": [
1721
+ "Vector stores"
1722
+ ]
1723
+ },
1724
+ "post": {
1725
+ "operationId": "createVectorStore",
1726
+ "summary": "Create a vector store.",
1727
+ "tags": [
1728
+ "Vector stores"
1729
+ ]
1730
+ }
1731
+ },
1732
+ "/vector_stores/{vector_store_id}": {
1733
+ "delete": {
1734
+ "operationId": "deleteVectorStore",
1735
+ "summary": "Delete a vector store.",
1736
+ "tags": [
1737
+ "Vector stores"
1738
+ ]
1739
+ },
1740
+ "get": {
1741
+ "operationId": "getVectorStore",
1742
+ "summary": "Retrieves a vector store.",
1743
+ "tags": [
1744
+ "Vector stores"
1745
+ ]
1746
+ },
1747
+ "post": {
1748
+ "operationId": "modifyVectorStore",
1749
+ "summary": "Modifies a vector store.",
1750
+ "tags": [
1751
+ "Vector stores"
1752
+ ]
1753
+ }
1754
+ },
1755
+ "/vector_stores/{vector_store_id}/file_batches": {
1756
+ "post": {
1757
+ "operationId": "createVectorStoreFileBatch",
1758
+ "summary": "Create a vector store file batch.",
1759
+ "tags": [
1760
+ "Vector stores"
1761
+ ]
1762
+ }
1763
+ },
1764
+ "/vector_stores/{vector_store_id}/file_batches/{batch_id}": {
1765
+ "get": {
1766
+ "operationId": "getVectorStoreFileBatch",
1767
+ "summary": "Retrieves a vector store file batch.",
1768
+ "tags": [
1769
+ "Vector stores"
1770
+ ]
1771
+ }
1772
+ },
1773
+ "/vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel": {
1774
+ "post": {
1775
+ "operationId": "cancelVectorStoreFileBatch",
1776
+ "summary": "Cancel a vector store file batch",
1777
+ "tags": [
1778
+ "Vector stores"
1779
+ ]
1780
+ }
1781
+ },
1782
+ "/vector_stores/{vector_store_id}/file_batches/{batch_id}/files": {
1783
+ "get": {
1784
+ "operationId": "listFilesInVectorStoreBatch",
1785
+ "summary": "Returns a list of vector store files in a batch.",
1786
+ "tags": [
1787
+ "Vector stores"
1788
+ ]
1789
+ }
1790
+ },
1791
+ "/vector_stores/{vector_store_id}/files": {
1792
+ "get": {
1793
+ "operationId": "listVectorStoreFiles",
1794
+ "summary": "Returns a list of vector store files.",
1795
+ "tags": [
1796
+ "Vector stores"
1797
+ ]
1798
+ },
1799
+ "post": {
1800
+ "operationId": "createVectorStoreFile",
1801
+ "summary": "Create a vector store file by attaching a [File](/docs/api-reference/files) to a [vector store](/docs/api-reference/vector-stores/object).",
1802
+ "tags": [
1803
+ "Vector stores"
1804
+ ]
1805
+ }
1806
+ },
1807
+ "/vector_stores/{vector_store_id}/files/{file_id}": {
1808
+ "delete": {
1809
+ "operationId": "deleteVectorStoreFile",
1810
+ "summary": "Delete a vector store file",
1811
+ "tags": [
1812
+ "Vector stores"
1813
+ ]
1814
+ },
1815
+ "get": {
1816
+ "operationId": "getVectorStoreFile",
1817
+ "summary": "Retrieves a vector store file.",
1818
+ "tags": [
1819
+ "Vector stores"
1820
+ ]
1821
+ },
1822
+ "post": {
1823
+ "operationId": "updateVectorStoreFileAttributes",
1824
+ "summary": "Update attributes on a vector store file.",
1825
+ "tags": [
1826
+ "Vector stores"
1827
+ ]
1828
+ }
1829
+ },
1830
+ "/vector_stores/{vector_store_id}/files/{file_id}/content": {
1831
+ "get": {
1832
+ "operationId": "retrieveVectorStoreFileContent",
1833
+ "summary": "Retrieve the parsed contents of a vector store file.",
1834
+ "tags": [
1835
+ "Vector stores"
1836
+ ]
1837
+ }
1838
+ },
1839
+ "/vector_stores/{vector_store_id}/search": {
1840
+ "post": {
1841
+ "operationId": "searchVectorStore",
1842
+ "summary": "Search a vector store for relevant chunks based on a query and file attributes filter.",
1843
+ "tags": [
1844
+ "Vector stores"
1845
+ ]
1846
+ }
1847
+ }
1848
+ }
1849
+ }