Perplexity: Sonar Pro Search

perplexity/sonar-pro-search

Exclusively available on the OpenRouter API, Sonar Pro's new Pro Search mode is Perplexity's most advanced agentic search system. It is designed for deeper reasoning and analysis. Pricing is based on...

vision
MODALITIES
INPUT PRICE
$3per 1M
OUTPUT PRICE
$15per 1M
CONTEXT
200K
RELEASED
Oct 31, 2025
ProviderUptimeChat
$3$15

Capabilities

Input modalities
imagetext
Output modalities
text
Features
frequency_penaltyinclude_reasoningmax_tokenspresence_penaltyreasoningstructured_outputstemperaturetop_ktop_pweb_search_options
1

Get your API key

Create an API key from the Keys page, then set it as an environment variable:

export ONLIST_API_KEY=sk-...
2

Make your first request

Endpoints

POSThttps://onlist.io/v1/chat/completions

OpenAI Chat Completions format

Request Headers
Authorization:Bearer $ONLIST_API_KEY
Content-Type:application/json
Model:perplexity/sonar-pro-search
POSThttps://onlist.io/v1/responses

OpenAI Responses format

Request Headers
Authorization:Bearer $ONLIST_API_KEY
Content-Type:application/json
Model:perplexity/sonar-pro-search
POSThttps://onlist.io/v1/messages

Anthropic Messages format

Request Headers
Authorization:Bearer $ONLIST_API_KEY
Content-Type:application/json
Model:perplexity/sonar-pro-search

Code samples

curl https://onlist.io/v1/chat/completions \
  -H "Authorization: Bearer $ONLIST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "model": "perplexity/sonar-pro-search",
       "messages": [
         {
           "role": "user",
           "content": "Explain quantum entanglement in one paragraph."
         }
       ]
     }'

Replace $ONLIST_API_KEY with the API key from your Keys page.

Authentication

All requests must include an Authorization: Bearer <TOKEN> header. Generate keys from the Keys page; keys can be scoped to specific models, groups, IP ranges, and rate limits.

3

Enable streaming

Add "stream": true to receive partial responses as server-sent events in real time.

Streaming example

curl https://onlist.io/v1/chat/completions \
  -H "Authorization: Bearer $ONLIST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "model": "perplexity/sonar-pro-search",
       "messages": [
         {
           "role": "user",
           "content": "Write a haiku about recursion."
         }
       ],
       "stream": true
     }'

Supported parameters

NameTypeDescription
frequency_penaltynumberPenalizes new tokens based on their existing frequency in the text (-2.0 to 2.0).
include_reasoning
max_tokensintegerMaximum number of tokens to generate in the completion.
presence_penaltynumberPenalizes new tokens based on whether they appear in the text so far (-2.0 to 2.0).
reasoning
structured_outputs
temperaturenumberSampling temperature between 0 and 2. Higher values make output more random.
top_kintegerLimits token selection to the k most likely candidates at each step.
top_pnumberNucleus sampling. The model considers tokens with top_p probability mass.
web_search_options

These are the request parameters this model accepts. Parameter semantics follow the OpenAI Chat Completions specification.