
Real-time web-connected search with accurate citations and customizable sources for up-to-date AI search integration in production apps.
Real-time web-connected search with accurate citations and customizable sources for up-to-date AI search integration in production apps.
perplexity-sonarPOST /v1/chat/completionsPOST /v1/responsesPOST /v1/messagesPOST /v1/searchLive pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.
Perplexity Sonar serves the OpenAI-compatible Chat Completions API. Point any OpenAI SDK at https://api.empiriolabs.ai/v1 with your EmpirioLabs API key and use the model id perplexity-sonar. Get an API key from the EmpirioLabs dashboard.
curl https://api.empiriolabs.ai/v1/chat/completions \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "perplexity-sonar",
"messages": [
{"role": "user", "content": "Write a haiku about the ocean."}
]
}'from openai import OpenAI
client = OpenAI(
base_url="https://api.empiriolabs.ai/v1",
api_key="YOUR_EMPIRIOLABS_API_KEY",
)
response = client.chat.completions.create(
model="perplexity-sonar",
messages=[{"role": "user", "content": "Write a haiku about the ocean."}],
)
print(response.choices[0].message.content)Request parameters supported by the Perplexity Sonar API on EmpirioLabs. Defaults apply when a field is omitted.
| Parameter | Type | Default | Range / values | Description |
|---|---|---|---|---|
| temperature | number | 0.2 | 0 to 2 | Sampling temperature. 0 = deterministic, 2 = maximum randomness. |
| top_p | number | 0.9 | 0 to 1 | Nucleus sampling probability mass. Lower = more focused. |
| max_tokens | number | 1024 | 1 to 32768 | Maximum tokens in the response. |
| search_context_size | enum | medium | low, medium, high | Higher context gives better answers but increases the base fee per request. |
| search_mode | enum | default | default, academic, sec | Filter search results by source type. Academic = scholarly papers, SEC = financial filings. |
| search_domain_filter | string | - | - | Comma-separated list of domains (allow with no prefix, deny with leading -) |
| search_language_filter | string | - | - | Comma-separated ISO 639-1 codes (2 letters). Max 10. |
| search_after_date | string | - | - | Use YYYY-MM-DD. Only include sources after this date. |
| search_before_date | string | - | - | Use YYYY-MM-DD. Only include sources before this date. |
| search_recency_filter | enum | none | none, hour, day, week, month, year | Relative time filter. Cannot be combined with specific dates. |
| last_updated_after_filter | string | - | - | Use YYYY-MM-DD. Only include sources after this date. |
| last_updated_before_filter | string | - | - | Use YYYY-MM-DD. Only include sources before this date. |
| country | string | - | - | Two-letter ISO 3166-1 code (e.g. US, GB) for biasing results to a country. |
| region | string | - | - | State or province name for location bias. |
On EmpirioLabs, Perplexity Sonar is billed pay as you go: Input $2.40 per 1M prompt tokens; Output $2.40 per 1M generated tokens; Base Fee (Low Context) $0.012 per request. The live rate card on this page always matches what the API charges.
Perplexity Sonar supports a 127K-token context window.
Yes. Perplexity Sonar serves the OpenAI-compatible Chat Completions API, so existing OpenAI SDKs work by pointing base_url at https://api.empiriolabs.ai/v1 and setting the model id to perplexity-sonar.
Yes. The EmpirioLabs playground runs Perplexity Sonar in the browser with the same parameters the API exposes, so you can test prompts before writing code.
Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.
Explore our models, or contact us about business inquiries, custom deployments, or anything else.