API ReferenceText

Create a text completion

POST
/v1/completions

Creates a completion for the provided prompt. Supports streaming via SSE.

Authorization

AuthorizationBearer <token>

Bearer token authentication. Use your provider API key or Bifrost authentication token. Virtual keys (prefixed with sk-bf-) can also be passed here.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://example.com/v1/completions" \  -H "Content-Type: application/json" \  -d '{    "model": "string",    "prompt": "string"  }'
{  "id": "string",  "choices": [    {      "index": 0,      "finish_reason": "string",      "log_probs": {        "content": [          {            "bytes": [              0            ],            "logprob": 0,            "token": "string",            "top_logprobs": [              {                "bytes": [                  0                ],                "logprob": 0,                "token": "string"              }            ]          }        ],        "refusal": [          {            "bytes": [              0            ],            "logprob": 0,            "token": "string"          }        ],        "text_offset": [          0        ],        "token_logprobs": [          0        ],        "tokens": [          "string"        ],        "top_logprobs": [          {            "property1": 0,            "property2": 0          }        ]      },      "text": "string",      "message": {        "role": "assistant",        "name": "string",        "content": "string",        "tool_call_id": "string",        "refusal": "string",        "audio": {          "id": "string",          "data": "string",          "expires_at": 0,          "transcript": "string"        },        "reasoning": "string",        "reasoning_details": [          {            "id": "string",            "index": 0,            "type": "reasoning.summary",            "summary": "string",            "text": "string",            "signature": "string",            "data": "string"          }        ],        "annotations": [          {            "type": "string",            "url_citation": {              "start_index": 0,              "end_index": 0,              "title": "string",              "url": "string",              "sources": {},              "type": "string"            }          }        ],        "tool_calls": [          {            "index": 0,            "type": "string",            "id": "string",            "function": {              "name": "string",              "arguments": "string"            }          }        ]      },      "delta": {        "role": "string",        "content": "string",        "refusal": "string",        "audio": {          "id": "string",          "data": "string",          "expires_at": 0,          "transcript": "string"        },        "reasoning": "string",        "reasoning_details": [          {            "id": "string",            "index": 0,            "type": "reasoning.summary",            "summary": "string",            "text": "string",            "signature": "string",            "data": "string"          }        ],        "tool_calls": [          {            "index": 0,            "type": "string",            "id": "string",            "function": {              "name": "string",              "arguments": "string"            }          }        ]      }    }  ],  "model": "string",  "object": "string",  "system_fingerprint": "string",  "usage": {    "prompt_tokens": 0,    "prompt_tokens_details": {      "text_tokens": 0,      "audio_tokens": 0,      "image_tokens": 0,      "cached_read_tokens": 0,      "cached_write_tokens": 0    },    "completion_tokens": 0,    "completion_tokens_details": {      "text_tokens": 0,      "accepted_prediction_tokens": 0,      "audio_tokens": 0,      "citation_tokens": 0,      "num_search_queries": 0,      "reasoning_tokens": 0,      "image_tokens": 0,      "rejected_prediction_tokens": 0    },    "total_tokens": 0,    "cost": {      "input_tokens_cost": 0,      "output_tokens_cost": 0,      "reasoning_tokens_cost": 0,      "citation_tokens_cost": 0,      "search_queries_cost": 0,      "request_cost": 0,      "total_cost": 0    }  },  "extra_fields": {    "request_type": "string",    "provider": "openai",    "model_requested": "string",    "model_deployment": "string",    "latency": 0,    "chunk_index": 0,    "raw_request": {},    "raw_response": {},    "cache_debug": {      "cache_hit": true,      "cache_id": "string",      "hit_type": "string",      "requested_provider": "string",      "requested_model": "string",      "provider_used": "string",      "model_used": "string",      "input_tokens": 0,      "threshold": 0,      "similarity": 0    }  }}
{  "event_id": "string",  "type": "string",  "is_bifrost_error": true,  "status_code": 0,  "error": {    "type": "string",    "code": "string",    "message": "string",    "param": "string",    "event_id": "string"  },  "extra_fields": {    "provider": "openai",    "model_requested": "string",    "request_type": "string"  }}
{  "event_id": "string",  "type": "string",  "is_bifrost_error": true,  "status_code": 0,  "error": {    "type": "string",    "code": "string",    "message": "string",    "param": "string",    "event_id": "string"  },  "extra_fields": {    "provider": "openai",    "model_requested": "string",    "request_type": "string"  }}