Skip to main content
POST
/
v1
/
responses
cURL
curl --request POST \
  --url https://api.concentrate.ai/v1/responses/ \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "<string>",
  "input": "<string>",
  "stream": true,
  "temperature": 1,
  "top_p": 0.5,
  "include": [
    "web_search_call.results"
  ],
  "instructions": "<string>",
  "max_output_tokens": 123,
  "metadata": {},
  "reasoning": {
    "effort": "none",
    "summary": "auto",
    "generate_summary": "auto"
  },
  "text": {
    "format": {
      "type": "text"
    },
    "verbosity": "medium"
  },
  "tools": [
    {
      "type": "function",
      "name": "<string>",
      "parameters": {},
      "description": "<string>",
      "strict": true,
      "cache_control": {
        "type": "ephemeral",
        "ttl": "5m"
      }
    }
  ],
  "tool_choice": {
    "name": "<string>",
    "type": "function"
  },
  "parallel_tool_calls": true,
  "top_logprobs": 10,
  "background": true,
  "context_management": [
    {
      "type": "compaction",
      "compact_threshold": 4503599627370996
    }
  ],
  "conversation": "<string>",
  "max_tool_calls": 123,
  "previous_response_id": "<string>",
  "prompt": {
    "id": "<string>",
    "version": "<string>",
    "variables": "<string>"
  },
  "prompt_cache_key": "<string>",
  "prompt_cache_retention": "in-memory",
  "safety_identifier": "<string>",
  "store": true,
  "stream_options": {
    "include_obfuscation": true
  },
  "truncation": "auto",
  "user": "<string>",
  "routing": {
    "model": {
      "fallbacks": [
        "<string>"
      ],
      "sort": "performance"
    },
    "provider": {
      "fallbacks": [
        "<string>"
      ],
      "sort": "performance",
      "interval": "<string>"
    }
  },
  "cache_control": {
    "type": "ephemeral",
    "ttl": "5m"
  }
}
'
{
  "id": "<string>",
  "model": "<string>",
  "object": "response",
  "output": [
    {
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "<string>",
          "annotations": [
            {
              "type": "url_citation",
              "start_index": 4503599627370495,
              "end_index": 4503599627370495,
              "title": "<string>",
              "url": "<string>"
            }
          ],
          "logprobs": [
            {
              "token": "<string>",
              "bytes": [
                123
              ],
              "logprob": 123,
              "top_logprobs": [
                {
                  "token": "<string>",
                  "bytes": [
                    123
                  ],
                  "logprob": 123
                }
              ]
            }
          ],
          "cache_control": {
            "type": "ephemeral",
            "ttl": "5m"
          }
        }
      ],
      "type": "message",
      "id": "<string>",
      "status": "completed",
      "cache_control": {
        "type": "ephemeral",
        "ttl": "5m"
      }
    }
  ],
  "usage": {
    "input_tokens": 1,
    "input_tokens_details": {
      "cached_tokens": 1,
      "cached_tokens_created": 1
    },
    "output_tokens": 1,
    "output_tokens_details": {
      "reasoning_tokens": 1
    },
    "total_tokens": 1,
    "tool_calls": {
      "web_search": 1
    }
  },
  "error": {
    "code": "<string>",
    "message": "<string>"
  },
  "frequency_penalty": 123,
  "incomplete_details": {
    "reason": "max_output_tokens"
  },
  "instructions": "<string>",
  "metadata": {},
  "temperature": 1,
  "tool_choice": {
    "name": "<string>",
    "type": "function"
  },
  "tools": [
    {
      "type": "function",
      "name": "<string>",
      "parameters": {},
      "description": "<string>",
      "strict": true,
      "cache_control": {
        "type": "ephemeral",
        "ttl": "5m"
      }
    }
  ],
  "top_p": 0.5,
  "background": true,
  "completed_at": 0,
  "created_at": 0,
  "conversation": {
    "id": "<string>"
  },
  "max_output_tokens": 0,
  "max_tool_calls": 0,
  "parallel_tool_calls": true,
  "presence_penalty": 123,
  "previous_response_id": "<string>",
  "prompt": {
    "id": "<string>",
    "version": "<string>",
    "variables": "<string>"
  },
  "prompt_cache_key": "<string>",
  "prompt_cache_retention": "in-memory",
  "reasoning": {
    "effort": "none",
    "summary": "auto",
    "generate_summary": "auto"
  },
  "safety_identifier": "<string>",
  "service_tier": "auto",
  "status": "completed",
  "store": true,
  "text": {
    "format": {
      "type": "text"
    },
    "verbosity": "medium"
  },
  "top_logprobs": 10,
  "truncation": "auto",
  "user": "<string>",
  "cost": {
    "total": 123
  }
}

Documentation Index

Fetch the complete documentation index at: https://concentrate.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

Overview

The main endpoint for generating AI responses. Supports both streaming and non-streaming modes, with automatic normalization across all providers.

Guardrails

Redaction guardrails are configured on your API key (not in this endpoint body). When enabled, they are applied automatically for requests made with that key. See Guardrails & Redaction.

Body

application/json
model
string
required

Model identifier. Use /v1/models to list all available models. Supports canonical names (e.g. gpt-5.2, claude-opus-4-6), aliases, and provider-prefixed formats (e.g. openai/gpt-5.2). Use "auto" for automatic model selection.

input
required
Minimum string length: 1
stream
boolean | null
temperature
number | null
Required range: 0 <= x <= 2
top_p
number | null
Required range: 0 <= x <= 1
include
enum<string>[] | null
Maximum array length: 8
Available options:
web_search_call.results,
web_search_call.action.sources,
message.output_text.logprobs,
message.input_image.image_url,
reasoning.encrypted_content,
file_search_call.results,
computer_call_output.output.image_url,
code_interpreter_call.outputs
instructions
string | null
max_output_tokens
integer | null
Required range: x <= 9007199254740991
metadata
object
reasoning
object
text
object
tools
object[] | null
tool_choice
parallel_tool_calls
boolean | null
top_logprobs
integer | null
Required range: 0 <= x <= 20
background
boolean | null
context_management
object[] | null
conversation
max_tool_calls
integer | null
Required range: x <= 9007199254740991
previous_response_id
string | null
prompt
object
prompt_cache_key
string | null
prompt_cache_retention
enum<string> | null
Available options:
in-memory,
24h
safety_identifier
string | null
store
boolean | null
stream_options
object
truncation
enum<string> | null
Available options:
auto,
disabled
user
string | null
routing
object
cache_control
object

Response

Default Response

id
string
required
model
string
required

Model identifier. Use /v1/models to list all available models. Supports canonical names (e.g. gpt-5.2, claude-opus-4-6), aliases, and provider-prefixed formats (e.g. openai/gpt-5.2). Use "auto" for automatic model selection.

object
enum<string>
default:response
required
Available options:
response
output
object[]
required
usage
object
required
error
object
frequency_penalty
number | null
incomplete_details
object
instructions
metadata
object
temperature
number | null
Required range: 0 <= x <= 2
tool_choice
tools
object[] | null
top_p
number | null
Required range: 0 <= x <= 1
background
boolean | null
completed_at
integer | null
Required range: -9007199254740991 <= x <= 9007199254740991
created_at
integer | null
Required range: -9007199254740991 <= x <= 9007199254740991
conversation
object
max_output_tokens
integer | null
Required range: -9007199254740991 <= x <= 9007199254740991
max_tool_calls
integer | null
Required range: -9007199254740991 <= x <= 9007199254740991
parallel_tool_calls
boolean | null
presence_penalty
number | null
previous_response_id
string | null
prompt
object
prompt_cache_key
string | null
prompt_cache_retention
enum<string> | null
Available options:
in-memory,
24h
reasoning
object
safety_identifier
string | null
service_tier
enum<string> | null
Available options:
auto,
default,
flex,
scale,
priority
status
Available options:
completed,
in_progress,
incomplete
store
boolean | null
text
object
top_logprobs
integer | null
Required range: 0 <= x <= 20
truncation
enum<string> | null
Available options:
auto,
disabled
user
string | null
cost
object