Skip to main content
POST
/
v1
/
responses
curl --request POST \
  --url https://api.evolink.ai/v1/responses \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "doubao-seed-2.0-pro",
  "input": "Please introduce yourself"
}
'
{
  "id": "resp_02177148667427813c33c36521378d02b2c8389204fa8c3e2f63e",
  "object": "response",
  "created_at": 1771486674,
  "model": "doubao-seed-2-0-code-preview-260215",
  "status": "completed",
  "output": [
    {
      "id": "rs_0217****404a",
      "type": "reasoning",
      "summary": [
        {
          "text": "<string>",
          "type": "summary_text"
        }
      ],
      "status": "completed"
    }
  ],
  "service_tier": "default",
  "instructions": "<string>",
  "previous_response_id": "<string>",
  "max_output_tokens": 32768,
  "temperature": 123,
  "top_p": 123,
  "thinking": {},
  "tools": "<array>",
  "tool_choice": "<unknown>",
  "parallel_tool_calls": true,
  "text": {},
  "usage": {
    "input_tokens": 88,
    "input_tokens_details": {
      "cached_tokens": 0
    },
    "output_tokens": 230,
    "output_tokens_details": {
      "reasoning_tokens": 211
    },
    "total_tokens": 318
  },
  "caching": {
    "type": "enabled"
  },
  "store": true,
  "expire_at": 1756539922,
  "error": {},
  "incomplete_details": {}
}

Authorizations

Authorization
string
header
required

All APIs require Bearer Token authentication

Get API Key:

Visit the API Key Management Page to get your API Key

Add to request headers:

Authorization: Bearer YOUR_API_KEY

Body

application/json
model
enum<string>
default:doubao-seed-2.0-pro
required

Chat model name

  • doubao-seed-2.0-pro: Flagship, strongest overall capability
  • doubao-seed-2.0-lite: Lightweight, faster speed
  • doubao-seed-2.0-mini: Ultra-fast, quickest response
  • doubao-seed-2.0-code: Code-specialized
Available options:
doubao-seed-2.0-pro,
doubao-seed-2.0-lite,
doubao-seed-2.0-mini,
doubao-seed-2.0-code
Example:

"doubao-seed-2.0-pro"

input
required

Input content. Supports two formats:

1. Plain text string: Equivalent to text input from the user role

2. Element list (array): Contains multiple input types including messages, context, tool calls, etc.

instructions
string | null

Insert a system message or developer instruction as the first instruction in the model context

Note:

  • When used with previous_response_id, instructions from the previous response are not inherited
  • Cannot be used together with caching
previous_response_id
string | null

Unique identifier of the previous model response, used to implement multi-turn conversations

Note:

  • When provided, it will include the input and response content from the previous round, and the input tokens for the current request will increase accordingly
  • In continuous multi-turn conversations, it is recommended to add approximately 100ms delay between each request
expire_at
integer

Storage expiration time, UTC Unix timestamp (seconds)

Note:

  • Value range: (creation time, creation time + 604800], i.e., maximum retention of 7 days
  • Default: creation time + 259200 (3 days)
  • Applies to both store and caching
  • Cache storage is billed by time, less than 1 hour is counted as 1 hour
max_output_tokens
integer | null

Maximum number of output tokens from the model, including model response and chain-of-thought content

Example:

32768

thinking
object

Controls whether the model enables deep thinking mode

reasoning
object

Limit deep thinking workload, reducing it can make responses faster and use fewer tokens

caching
object

Whether to enable context caching

Note: Cannot be used together with instructions field or tools field (except Function Calling)

store
boolean | null
default:true

Whether to store the generated model response for later retrieval via API

  • true: Store the current model response
  • false: Do not store
stream
boolean | null
default:false

Whether to stream the response content

  • false: Return all content at once after the model finishes generating
  • true: Return chunks progressively via SSE protocol, ending with a data: [DONE] message
temperature
number | null
default:1

Sampling temperature, controls output randomness

  • Value range: [0, 2]
  • Lower values are more deterministic, higher values are more random
  • It is recommended to adjust only one of temperature or top_p

Note: doubao-seed-2.0-pro and doubao-seed-2.0-lite are fixed at 1, manual specification will be ignored

Required range: 0 <= x <= 2
top_p
number | null
default:0.7

Nucleus sampling probability threshold

  • Value range: [0, 1]
  • It is recommended to adjust only one of temperature or top_p

Note: doubao-seed-2.0-pro and doubao-seed-2.0-lite are fixed at 0.95, manual specification will be ignored

Required range: 0 <= x <= 1
text
object

Format definition for model text output

tools
object[]

List of tools the model can call

Supported tool types:

  • function: Custom function (Function Calling)
  • web_search: Web search
  • doubao_app: Doubao App
  • image_process: Image processing
  • mcp: MCP tools
  • knowledge_search: Private knowledge base search
tool_choice

Controls whether the model calls tools

String mode:

  • none: Do not call tools
  • required: Must call tools
  • auto: Model decides (default)

Object mode: Specify a particular tool to call

Available options:
none,
auto,
required
max_tool_calls
integer

Maximum number of tool call rounds (unlimited calls per round)

  • Value range: [1, 10]
  • Web Search default: 3
  • Image Process default: 10 (modification not supported)
  • Knowledge Search default: 3

Note: This parameter operates on a best-effort basis; the actual number of calls is influenced by model inference performance and other factors

Required range: 1 <= x <= 10
context_management
object

Context management strategy to help the model effectively utilize the context window

Response

Response generated successfully

id
string

Unique identifier for this response

Example:

"resp_02177148667427813c33c36521378d02b2c8389204fa8c3e2f63e"

object
enum<string>

Object type, fixed as response

Available options:
response
Example:

"response"

created_at
number

Unix timestamp (seconds) of creation time

Example:

1771486674

model
string

Actual model name and version used

Example:

"doubao-seed-2-0-code-preview-260215"

status
enum<string>

Response status

  • completed: Generation completed
  • in_progress: Generation in progress
  • incomplete: Incomplete
  • failed: Failed
Available options:
completed,
in_progress,
incomplete,
failed
Example:

"completed"

output
(Chain-of-thought output · object | Message output · object | Tool call output · object)[]

Model output content list, including chain-of-thought output, message output, tool call output, etc.

service_tier
string

Service tier for this request

  • default: Default service tier
  • scale: Used guaranteed package quota
Example:

"default"

instructions
string | null

System instructions used for this request

previous_response_id
string | null

Referenced previous response ID

max_output_tokens
integer

Maximum number of output tokens from the model

Example:

32768

temperature
number | null

Sampling temperature used

top_p
number | null

top_p value used

thinking
object

Thinking mode configuration used

tools
array | null

List of tools used

tool_choice
any | null

Tool choice configuration used

parallel_tool_calls
boolean | null

Whether parallel tool calls are allowed

text
object

Text output format configuration

usage
object

Token usage statistics

caching
object

Caching configuration

store
boolean

Whether the response was stored

expire_at
integer

Storage expiration time (Unix timestamp)

Example:

1756539922

error
object

Error information, null on success

incomplete_details
object

Detailed reason for incompleteness