first commit
This commit is contained in:
664
docs/openapi/paths/inference/async.yaml
Normal file
664
docs/openapi/paths/inference/async.yaml
Normal file
@@ -0,0 +1,664 @@
|
||||
# Async Inference Endpoints
|
||||
|
||||
# --- Submission endpoints ---
|
||||
|
||||
async-chat-completions:
|
||||
post:
|
||||
operationId: createAsyncChatCompletion
|
||||
summary: Create async chat completion
|
||||
description: |
|
||||
Submits a chat completion request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
Streaming is not supported for async requests.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/chat.yaml#/ChatCompletionRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-text-completions:
|
||||
post:
|
||||
operationId: createAsyncTextCompletion
|
||||
summary: Create async text completion
|
||||
description: |
|
||||
Submits a text completion request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
Streaming is not supported for async requests.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/text.yaml#/TextCompletionRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-responses:
|
||||
post:
|
||||
operationId: createAsyncResponse
|
||||
summary: Create async response
|
||||
description: |
|
||||
Submits a response request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
Streaming is not supported for async requests.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/responses.yaml#/ResponsesRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-embeddings:
|
||||
post:
|
||||
operationId: createAsyncEmbedding
|
||||
summary: Create async embedding
|
||||
description: |
|
||||
Submits an embedding request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/embeddings.yaml#/EmbeddingRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-speech:
|
||||
post:
|
||||
operationId: createAsyncSpeech
|
||||
summary: Create async speech
|
||||
description: |
|
||||
Submits a speech synthesis request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
SSE streaming is not supported for async requests.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/speech.yaml#/SpeechRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-transcriptions:
|
||||
post:
|
||||
operationId: createAsyncTranscription
|
||||
summary: Create async transcription
|
||||
description: |
|
||||
Submits a transcription request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
Streaming is not supported for async requests.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/transcription.yaml#/TranscriptionRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-image-generation:
|
||||
post:
|
||||
operationId: createAsyncImageGeneration
|
||||
summary: Create async image generation
|
||||
description: |
|
||||
Submits an image generation request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
Streaming is not supported for async requests.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageGenerationRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-image-edit:
|
||||
post:
|
||||
operationId: createAsyncImageEdit
|
||||
summary: Create async image edit
|
||||
description: |
|
||||
Submits an image edit request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
Streaming is not supported for async requests.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageEditRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-image-variation:
|
||||
post:
|
||||
operationId: createAsyncImageVariation
|
||||
summary: Create async image variation
|
||||
description: |
|
||||
Submits an image variation request for asynchronous execution. Returns a job ID immediately
|
||||
with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncResultTTL'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageVariationRequest'
|
||||
responses:
|
||||
'202':
|
||||
description: Job accepted for processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
# --- Retrieval endpoints ---
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-chat-completions-job:
|
||||
get:
|
||||
operationId: getAsyncChatCompletionJob
|
||||
summary: Get async chat completion job
|
||||
description: |
|
||||
Retrieves the status and result of an async chat completion job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-text-completions-job:
|
||||
get:
|
||||
operationId: getAsyncTextCompletionJob
|
||||
summary: Get async text completion job
|
||||
description: |
|
||||
Retrieves the status and result of an async text completion job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-responses-job:
|
||||
get:
|
||||
operationId: getAsyncResponseJob
|
||||
summary: Get async response job
|
||||
description: |
|
||||
Retrieves the status and result of an async response job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-embeddings-job:
|
||||
get:
|
||||
operationId: getAsyncEmbeddingJob
|
||||
summary: Get async embedding job
|
||||
description: |
|
||||
Retrieves the status and result of an async embedding job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-speech-job:
|
||||
get:
|
||||
operationId: getAsyncSpeechJob
|
||||
summary: Get async speech job
|
||||
description: |
|
||||
Retrieves the status and result of an async speech job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-transcriptions-job:
|
||||
get:
|
||||
operationId: getAsyncTranscriptionJob
|
||||
summary: Get async transcription job
|
||||
description: |
|
||||
Retrieves the status and result of an async transcription job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-image-generation-job:
|
||||
get:
|
||||
operationId: getAsyncImageGenerationJob
|
||||
summary: Get async image generation job
|
||||
description: |
|
||||
Retrieves the status and result of an async image generation job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-image-edit-job:
|
||||
get:
|
||||
operationId: getAsyncImageEditJob
|
||||
summary: Get async image edit job
|
||||
description: |
|
||||
Retrieves the status and result of an async image edit job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
async-image-variation-job:
|
||||
get:
|
||||
operationId: getAsyncImageVariationJob
|
||||
summary: Get async image variation job
|
||||
description: |
|
||||
Retrieves the status and result of an async image variation job.
|
||||
Returns HTTP 202 if the job is still pending or processing, HTTP 200 if completed or failed.
|
||||
tags:
|
||||
- Async Jobs
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/AsyncJobId'
|
||||
responses:
|
||||
'200':
|
||||
description: Job completed (successfully or with failure)
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'202':
|
||||
description: Job is still pending or processing
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/async.yaml#/AsyncJobResponse'
|
||||
'404':
|
||||
description: Job not found or expired
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
|
||||
# --- Shared parameters ---
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
components:
|
||||
parameters:
|
||||
AsyncJobId:
|
||||
name: job_id
|
||||
in: path
|
||||
required: true
|
||||
description: The unique identifier of the async job
|
||||
schema:
|
||||
type: string
|
||||
AsyncResultTTL:
|
||||
name: x-bf-async-job-result-ttl
|
||||
in: header
|
||||
required: false
|
||||
description: |
|
||||
Time-to-live in seconds for the job result after completion. Defaults to 3600 (1 hour).
|
||||
After expiry, the job result is automatically cleaned up.
|
||||
schema:
|
||||
type: integer
|
||||
default: 3600
|
||||
71
docs/openapi/paths/inference/audio.yaml
Normal file
71
docs/openapi/paths/inference/audio.yaml
Normal file
@@ -0,0 +1,71 @@
|
||||
speech:
|
||||
post:
|
||||
operationId: createSpeech
|
||||
summary: Create speech
|
||||
description: |
|
||||
Generates audio from the input text. Returns audio data or streams via SSE.
|
||||
tags:
|
||||
- Audio
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/speech.yaml#/SpeechRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
audio/mpeg:
|
||||
schema:
|
||||
type: string
|
||||
format: binary
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/speech.yaml#/SpeechResponse'
|
||||
text/event-stream:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/speech.yaml#/SpeechStreamResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
transcriptions:
|
||||
post:
|
||||
operationId: createTranscription
|
||||
summary: Create transcription
|
||||
description: |
|
||||
Transcribes audio into text in the input language.
|
||||
tags:
|
||||
- Audio
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/transcription.yaml#/TranscriptionRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/transcription.yaml#/TranscriptionResponse'
|
||||
text/event-stream:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/transcription.yaml#/TranscriptionStreamResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
190
docs/openapi/paths/inference/batches.yaml
Normal file
190
docs/openapi/paths/inference/batches.yaml
Normal file
@@ -0,0 +1,190 @@
|
||||
batches:
|
||||
post:
|
||||
operationId: createBatch
|
||||
summary: Create a batch job
|
||||
description: |
|
||||
Creates a batch job for asynchronous processing.
|
||||
tags:
|
||||
- Batch
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/batch.yaml#/BatchCreateRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/batch.yaml#/BatchCreateResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
get:
|
||||
operationId: listBatches
|
||||
summary: List batch jobs
|
||||
description: |
|
||||
Lists batch jobs for a provider.
|
||||
tags:
|
||||
- Batch
|
||||
parameters:
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: Provider to list batches for
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
- name: limit
|
||||
in: query
|
||||
description: Maximum number of batches to return
|
||||
schema:
|
||||
type: integer
|
||||
minimum: 1
|
||||
- name: after
|
||||
in: query
|
||||
description: Cursor for pagination
|
||||
schema:
|
||||
type: string
|
||||
- name: before
|
||||
in: query
|
||||
description: Cursor for pagination
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/batch.yaml#/BatchListResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
batches-by-id:
|
||||
get:
|
||||
operationId: retrieveBatch
|
||||
summary: Retrieve a batch job
|
||||
description: |
|
||||
Retrieves a specific batch job by ID.
|
||||
tags:
|
||||
- Batch
|
||||
parameters:
|
||||
- name: batch_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the batch to retrieve
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the batch
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/batch.yaml#/BatchRetrieveResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
batches-cancel:
|
||||
post:
|
||||
operationId: cancelBatch
|
||||
summary: Cancel a batch job
|
||||
description: |
|
||||
Cancels a batch job.
|
||||
tags:
|
||||
- Batch
|
||||
parameters:
|
||||
- name: batch_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the batch to cancel
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the batch
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/batch.yaml#/BatchCancelResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
batches-results:
|
||||
get:
|
||||
operationId: getBatchResults
|
||||
summary: Get batch results
|
||||
description: |
|
||||
Retrieves results from a completed batch job.
|
||||
tags:
|
||||
- Batch
|
||||
parameters:
|
||||
- name: batch_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the batch
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the batch
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/batch.yaml#/BatchResultsResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
33
docs/openapi/paths/inference/chat-completions.yaml
Normal file
33
docs/openapi/paths/inference/chat-completions.yaml
Normal file
@@ -0,0 +1,33 @@
|
||||
chat-completions:
|
||||
post:
|
||||
operationId: createChatCompletion
|
||||
summary: Create a chat completion
|
||||
description: |
|
||||
Creates a completion for the provided messages. Supports streaming via SSE.
|
||||
tags:
|
||||
- Chat Completions
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/chat.yaml#/ChatCompletionRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/chat.yaml#/ChatCompletionResponse'
|
||||
text/event-stream:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/chat.yaml#/ChatCompletionStreamResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
390
docs/openapi/paths/inference/containers.yaml
Normal file
390
docs/openapi/paths/inference/containers.yaml
Normal file
@@ -0,0 +1,390 @@
|
||||
containers:
|
||||
post:
|
||||
operationId: createContainer
|
||||
summary: Create a container
|
||||
description: |
|
||||
Creates a new container for storing files and data.
|
||||
tags:
|
||||
- Containers
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerCreateRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerCreateResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
get:
|
||||
operationId: listContainers
|
||||
summary: List containers
|
||||
description: |
|
||||
Lists containers for a provider.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: Provider to list containers for
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
- name: limit
|
||||
in: query
|
||||
description: Maximum number of containers to return (1-100, default 20)
|
||||
schema:
|
||||
type: integer
|
||||
minimum: 1
|
||||
limit: 200
|
||||
maximum: 100
|
||||
- name: after
|
||||
in: query
|
||||
description: Cursor for pagination
|
||||
schema:
|
||||
type: string
|
||||
- name: order
|
||||
in: query
|
||||
description: Sort order (asc/desc)
|
||||
schema:
|
||||
type: string
|
||||
enum: [asc, desc]
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerListResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
containers-by-id:
|
||||
get:
|
||||
operationId: retrieveContainer
|
||||
summary: Retrieve a container
|
||||
description: |
|
||||
Retrieves a specific container by ID.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: container_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the container to retrieve
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the container
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerRetrieveResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
delete:
|
||||
operationId: deleteContainer
|
||||
summary: Delete a container
|
||||
description: |
|
||||
Deletes a container.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: container_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the container to delete
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the container
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerDeleteResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
# =============================================================================
|
||||
# CONTAINER FILES ENDPOINTS
|
||||
# =============================================================================
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
container-files:
|
||||
post:
|
||||
operationId: createContainerFile
|
||||
summary: Create a file in a container
|
||||
description: |
|
||||
Creates a new file in a container. You can either upload file content directly
|
||||
via multipart/form-data or reference an existing file by its ID.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: container_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the container
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the container
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerFileCreateMultipartRequest'
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerFileCreateJsonRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerFileCreateResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
get:
|
||||
operationId: listContainerFiles
|
||||
summary: List files in a container
|
||||
description: |
|
||||
Lists all files in a container.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: container_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the container
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the container
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
- name: limit
|
||||
in: query
|
||||
description: Maximum number of files to return
|
||||
schema:
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 100
|
||||
- name: after
|
||||
in: query
|
||||
description: Cursor for pagination
|
||||
schema:
|
||||
type: string
|
||||
- name: order
|
||||
in: query
|
||||
description: Sort order (asc/desc)
|
||||
schema:
|
||||
type: string
|
||||
enum: [asc, desc]
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerFileListResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
container-files-by-id:
|
||||
get:
|
||||
operationId: retrieveContainerFile
|
||||
summary: Retrieve a file from a container
|
||||
description: |
|
||||
Retrieves metadata for a specific file in a container.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: container_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the container
|
||||
schema:
|
||||
type: string
|
||||
- name: file_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the file
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the container
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerFileRetrieveResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
delete:
|
||||
operationId: deleteContainerFile
|
||||
summary: Delete a file from a container
|
||||
description: |
|
||||
Deletes a file from a container.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: container_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the container
|
||||
schema:
|
||||
type: string
|
||||
- name: file_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the file to delete
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the container
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/containers.yaml#/ContainerFileDeleteResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
container-files-content:
|
||||
get:
|
||||
operationId: getContainerFileContent
|
||||
summary: Download file content from a container
|
||||
description: |
|
||||
Downloads the content of a file from a container.
|
||||
tags:
|
||||
- Containers
|
||||
parameters:
|
||||
- name: container_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the container
|
||||
schema:
|
||||
type: string
|
||||
- name: file_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the file
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the container
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/octet-stream:
|
||||
schema:
|
||||
type: string
|
||||
format: binary
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
30
docs/openapi/paths/inference/count-tokens.yaml
Normal file
30
docs/openapi/paths/inference/count-tokens.yaml
Normal file
@@ -0,0 +1,30 @@
|
||||
count-tokens:
|
||||
post:
|
||||
operationId: countTokens
|
||||
summary: Count tokens
|
||||
description: |
|
||||
Counts the number of tokens in the provided messages.
|
||||
tags:
|
||||
- Count Tokens
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/count-tokens.yaml#/CountTokensRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/count-tokens.yaml#/CountTokensResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
30
docs/openapi/paths/inference/embeddings.yaml
Normal file
30
docs/openapi/paths/inference/embeddings.yaml
Normal file
@@ -0,0 +1,30 @@
|
||||
embeddings:
|
||||
post:
|
||||
operationId: createEmbedding
|
||||
summary: Create embeddings
|
||||
description: |
|
||||
Creates an embedding vector representing the input text.
|
||||
tags:
|
||||
- Embeddings
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/embeddings.yaml#/EmbeddingRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/embeddings.yaml#/EmbeddingResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
201
docs/openapi/paths/inference/files.yaml
Normal file
201
docs/openapi/paths/inference/files.yaml
Normal file
@@ -0,0 +1,201 @@
|
||||
files:
|
||||
post:
|
||||
operationId: uploadFile
|
||||
summary: Upload a file
|
||||
description: |
|
||||
Uploads a file to be used with batch operations or other features.
|
||||
tags:
|
||||
- Files
|
||||
parameters:
|
||||
- name: provider
|
||||
in: query
|
||||
description: Provider to upload file to (can also use x-model-provider header)
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/files.yaml#/FileUploadRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/files.yaml#/FileUploadResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
get:
|
||||
operationId: listFiles
|
||||
summary: List files
|
||||
description: |
|
||||
Lists files for a provider.
|
||||
tags:
|
||||
- Files
|
||||
parameters:
|
||||
- name: x-model-provider
|
||||
in: query
|
||||
required: true
|
||||
description: Provider to list files for
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
- name: purpose
|
||||
in: query
|
||||
description: Filter by purpose
|
||||
schema:
|
||||
$ref: '../../schemas/inference/files.yaml#/FilePurpose'
|
||||
- name: limit
|
||||
in: query
|
||||
description: Maximum number of files to return
|
||||
schema:
|
||||
type: integer
|
||||
minimum: 1
|
||||
- name: after
|
||||
in: query
|
||||
description: Cursor for pagination
|
||||
schema:
|
||||
type: string
|
||||
- name: order
|
||||
in: query
|
||||
description: Sort order (asc/desc)
|
||||
schema:
|
||||
type: string
|
||||
enum: [asc, desc]
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/files.yaml#/FileListResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
files-by-id:
|
||||
get:
|
||||
operationId: retrieveFile
|
||||
summary: Retrieve file metadata
|
||||
description: |
|
||||
Retrieves metadata for a specific file.
|
||||
tags:
|
||||
- Files
|
||||
parameters:
|
||||
- name: file_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the file
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the file
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/files.yaml#/FileRetrieveResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
delete:
|
||||
operationId: deleteFile
|
||||
summary: Delete a file
|
||||
description: |
|
||||
Deletes a file.
|
||||
tags:
|
||||
- Files
|
||||
parameters:
|
||||
- name: file_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the file to delete
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the file
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/files.yaml#/FileDeleteResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
files-content:
|
||||
get:
|
||||
operationId: getFileContent
|
||||
summary: Download file content
|
||||
description: |
|
||||
Downloads the content of a file.
|
||||
tags:
|
||||
- Files
|
||||
parameters:
|
||||
- name: file_id
|
||||
in: path
|
||||
required: true
|
||||
description: The ID of the file
|
||||
schema:
|
||||
type: string
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
description: The provider of the file
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/octet-stream:
|
||||
schema:
|
||||
type: string
|
||||
format: binary
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
112
docs/openapi/paths/inference/images.yaml
Normal file
112
docs/openapi/paths/inference/images.yaml
Normal file
@@ -0,0 +1,112 @@
|
||||
# Image Generation Endpoints
|
||||
|
||||
image-generation:
|
||||
post:
|
||||
operationId: imageGeneration
|
||||
summary: Generate an image
|
||||
description: |
|
||||
Generates images from text prompts using the specified model.
|
||||
tags:
|
||||
- Images
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageGenerationRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: |
|
||||
Successful response. Returns JSON for non-streaming requests, or Server-Sent Events (SSE) stream when `stream=true`.
|
||||
When streaming, events are sent with the following event types:
|
||||
- `image_generation.partial_image`: Intermediate image chunks with base64-encoded image data
|
||||
- `image_generation.completed`: Final event for each image with usage information
|
||||
- `error`: Error events with error details
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageGenerationResponse'
|
||||
text/event-stream:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageGenerationStreamResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
image-edit:
|
||||
post:
|
||||
operationId: imageEdit
|
||||
summary: Edit an image
|
||||
description: |
|
||||
Edits an image using a text prompt and optional mask. Request must be sent as multipart/form-data
|
||||
with at least `model`, `prompt` (unless `type` is `background_removal`), and `image` (or `image[]`).
|
||||
tags:
|
||||
- Images
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageEditRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: |
|
||||
Successful response. Returns JSON for non-streaming requests, or Server-Sent Events (SSE) stream when `stream=true`.
|
||||
When streaming, events are sent with the following event types:
|
||||
- `image_edit.partial_image`: Intermediate image chunks with base64-encoded image data
|
||||
- `image_edit.completed`: Final event for each image with usage information
|
||||
- `error`: Error events with error details
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageGenerationResponse'
|
||||
text/event-stream:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageEditStreamResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
image-variation:
|
||||
post:
|
||||
operationId: imageVariation
|
||||
summary: Create Variation
|
||||
description: |
|
||||
Creates variations of an image. Request must be sent as multipart/form-data with `model` and `image` (or `image[]`).
|
||||
Does not support streaming.
|
||||
tags:
|
||||
- Images
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
multipart/form-data:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageVariationRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response. Returns JSON with generated image variation(s).
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/images.yaml#/ImageGenerationResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
41
docs/openapi/paths/inference/models.yaml
Normal file
41
docs/openapi/paths/inference/models.yaml
Normal file
@@ -0,0 +1,41 @@
|
||||
models:
|
||||
get:
|
||||
operationId: listModels
|
||||
summary: List available models
|
||||
description: |
|
||||
Lists available models. If provider is not specified, lists all models from all configured providers.
|
||||
tags:
|
||||
- Models
|
||||
parameters:
|
||||
- name: provider
|
||||
in: query
|
||||
description: Filter by provider (e.g., openai, anthropic, bedrock)
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/ModelProvider'
|
||||
- name: page_size
|
||||
in: query
|
||||
description: Maximum number of models to return
|
||||
schema:
|
||||
type: integer
|
||||
minimum: 0
|
||||
- name: page_token
|
||||
in: query
|
||||
description: Token for pagination
|
||||
schema:
|
||||
type: string
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/models.yaml#/ListModelsResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
30
docs/openapi/paths/inference/rerank.yaml
Normal file
30
docs/openapi/paths/inference/rerank.yaml
Normal file
@@ -0,0 +1,30 @@
|
||||
rerank:
|
||||
post:
|
||||
operationId: rerankDocuments
|
||||
summary: Rerank documents
|
||||
description: |
|
||||
Reorders input documents by relevance to a query.
|
||||
tags:
|
||||
- Rerank
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/rerank.yaml#/RerankRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/rerank.yaml#/RerankResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
33
docs/openapi/paths/inference/responses.yaml
Normal file
33
docs/openapi/paths/inference/responses.yaml
Normal file
@@ -0,0 +1,33 @@
|
||||
responses:
|
||||
post:
|
||||
operationId: createResponse
|
||||
summary: Create a response
|
||||
description: |
|
||||
Creates a response using the OpenAI Responses API format. Supports streaming via SSE.
|
||||
tags:
|
||||
- Responses
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/responses.yaml#/ResponsesRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/responses.yaml#/ResponsesResponse'
|
||||
text/event-stream:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/responses.yaml#/ResponsesStreamResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
33
docs/openapi/paths/inference/text-completions.yaml
Normal file
33
docs/openapi/paths/inference/text-completions.yaml
Normal file
@@ -0,0 +1,33 @@
|
||||
text-completions:
|
||||
post:
|
||||
operationId: createTextCompletion
|
||||
summary: Create a text completion
|
||||
description: |
|
||||
Creates a completion for the provided prompt. Supports streaming via SSE.
|
||||
tags:
|
||||
- Text Completions
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/text.yaml#/TextCompletionRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/text.yaml#/TextCompletionResponse'
|
||||
text/event-stream:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/text.yaml#/TextCompletionStreamResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
311
docs/openapi/paths/inference/videos.yaml
Normal file
311
docs/openapi/paths/inference/videos.yaml
Normal file
@@ -0,0 +1,311 @@
|
||||
# Video Generation Endpoints
|
||||
|
||||
video-generation:
|
||||
post:
|
||||
operationId: videoGeneration
|
||||
summary: Generate a video
|
||||
description: |
|
||||
Creates a video generation job from a text prompt. This is an asynchronous operation
|
||||
that returns immediately with a job ID. Use the retrieve endpoint to check the status
|
||||
and get the video URL when generation is complete.
|
||||
tags:
|
||||
- Videos
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoGenerationRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: |
|
||||
Successful response. Returns a video generation job object with status information.
|
||||
Poll the retrieve endpoint to check completion status.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoGenerationResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
get:
|
||||
operationId: videoList
|
||||
summary: List video generation jobs
|
||||
description: |
|
||||
Lists video generation jobs for a specific provider. Results are paginated
|
||||
and can be filtered using query parameters.
|
||||
tags:
|
||||
- Videos
|
||||
parameters:
|
||||
- name: provider
|
||||
in: query
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: Provider name (e.g., "openai", "gemini")
|
||||
- name: after
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
description: Cursor for pagination - ID of the last item from the previous page
|
||||
- name: limit
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 100
|
||||
default: 20
|
||||
description: Maximum number of results to return
|
||||
- name: order
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
enum:
|
||||
- "asc"
|
||||
- "desc"
|
||||
default: "desc"
|
||||
description: Sort order by creation time
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response. Returns a paginated list of video generation jobs.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoListResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
video-by-id:
|
||||
get:
|
||||
operationId: videoRetrieve
|
||||
summary: Retrieve a video generation job
|
||||
description: |
|
||||
Retrieves the status and metadata for a video generation job.
|
||||
Use this endpoint to poll for completion status after creating a video generation job.
|
||||
When the status is "completed", the response will include a URL to download the video.
|
||||
tags:
|
||||
- Videos
|
||||
parameters:
|
||||
- name: video_id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: Video ID in format `id:provider` (e.g., `video_abc123:openai`)
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response. Returns the video generation job details.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoGenerationResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Video not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
delete:
|
||||
operationId: videoDelete
|
||||
summary: Delete a video generation job
|
||||
description: |
|
||||
Deletes a video generation job and its associated assets.
|
||||
This operation cannot be undone.
|
||||
tags:
|
||||
- Videos
|
||||
parameters:
|
||||
- name: video_id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: Video ID in format `id:provider` (e.g., `video_abc123:openai`)
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response. Returns deletion confirmation.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoDeleteResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Video not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
video-download:
|
||||
get:
|
||||
operationId: videoDownload
|
||||
summary: Download video content
|
||||
description: |
|
||||
Downloads the binary content of a generated video.
|
||||
The video must have a status of "completed" to be downloadable.
|
||||
Returns the raw video file (typically MP4 format).
|
||||
tags:
|
||||
- Videos
|
||||
parameters:
|
||||
- name: video_id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: Video ID in format `id:provider` (e.g., `video_abc123:openai`)
|
||||
- name: variant
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
enum:
|
||||
- "video"
|
||||
- "thumbnail"
|
||||
- "spritesheet"
|
||||
description: Variant of the video content to download (provider-specific)
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response. Returns the video file as binary content.
|
||||
content:
|
||||
video/mp4:
|
||||
schema:
|
||||
type: string
|
||||
format: binary
|
||||
application/octet-stream:
|
||||
schema:
|
||||
type: string
|
||||
format: binary
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Video not found or not yet available
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
video-delete:
|
||||
delete:
|
||||
operationId: videoDelete
|
||||
summary: Delete a video generation job
|
||||
description: |
|
||||
Deletes a video generation job and its associated assets.
|
||||
This operation cannot be undone.
|
||||
tags:
|
||||
- Videos
|
||||
parameters:
|
||||
- name: video_id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: Video ID in format `id:provider` (e.g., `video_abc123:openai`)
|
||||
responses:
|
||||
'200':
|
||||
description: Successful response. Returns deletion confirmation.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoDeleteResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Video not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
video-remix:
|
||||
post:
|
||||
operationId: videoRemix
|
||||
summary: Remix a video
|
||||
description: |
|
||||
Creates a new video generation job by remixing an existing video with a new prompt.
|
||||
The source video must have a status of "completed" to be remixed.
|
||||
Returns a new video generation job that can be polled for completion.
|
||||
tags:
|
||||
- Videos
|
||||
parameters:
|
||||
- name: video_id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: Video ID in format `id:provider` (e.g., `video_abc123:openai`)
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoRemixRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: |
|
||||
Successful response. Returns a new video generation job object.
|
||||
Poll the retrieve endpoint to check completion status.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/videos.yaml#/VideoGenerationResponse'
|
||||
'400':
|
||||
$ref: '../../openapi.yaml#/components/responses/BadRequest'
|
||||
'404':
|
||||
description: Source video not found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../schemas/inference/common.yaml#/BifrostError'
|
||||
'500':
|
||||
$ref: '../../openapi.yaml#/components/responses/InternalError'
|
||||
security:
|
||||
- BearerAuth: []
|
||||
- BasicAuth: []
|
||||
- VirtualKeyAuth: []
|
||||
- ApiKeyAuth: []
|
||||
Reference in New Issue
Block a user