Skip to main content
POST
TypeScript SDK

Authorizations

Authorization
string
header
required

Use an API key created in the NinjaChat developer console.

Headers

Idempotency-Key
string

Safely retry the same logical write without duplicate billing or execution.

Required string length: 1 - 255

Body

application/json
messages
object[]
required
Minimum array length: 1
model
string
Required string length: 1 - 160
models
string[]
Required array length: 1 - 15 elements
Required string length: 1 - 160
max_completion_tokens
integer

Maximum completion tokens, including reasoning where the provider counts it. Must fit the selected provider's output and context limits. Defaults to 2048 when omitted.

Required range: x <= 9007199254740991
temperature
number
Required range: 0 <= x <= 2
top_p
number
Required range: 0 <= x <= 1
stop
frequency_penalty
number
Required range: -2 <= x <= 2
presence_penalty
number
Required range: -2 <= x <= 2
seed
integer
user
string
Maximum string length: 256
stream
boolean
default:false
stream_options
object
response_format
object
tools
object[]
tool_choice
Available options:
none,
auto,
required
parallel_tool_calls
boolean
reasoning
object
routing
object

Response

Chat completion or SSE stream.

id
string
required
object
enum<string>
required
Available options:
chat.completion
created
integer
required
model
string
required
Required string length: 1 - 160
resolved_model
string
required
Required string length: 1 - 160
provider
string | null
required
choices
object[]
required
usage
object
required
cost_usd
number
required
Required range: x >= 0
request_id
string
required
routing
object
required
cost
object
balance
string
metadata
object