Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ Do not invent slugs: there is NO `perplexity/sonar-pro` slug.
|---|---|---|
| `sonar` | `preset: "fast"`, or `model: "perplexity/sonar"` + `tools: [{"type": "web_search"}]` | `fast` is the documented starting point. Output is not byte-identical and pricing differs - A/B compare quality and cost before cutover. |
| `sonar-pro` | Two options - pick per the heuristic below | Option 1, documented starting point: `preset: "fast"`. Option 2, model-slug substitution: `model: "perplexity/sonar"` + web_search. |
| `sonar-reasoning` | `preset: "low"`, or a current reasoning model + web_search | Retired; do not carry the name forward. Verify the model's supported reasoning efforts and note the substitution in your migration notes. |
| `sonar-reasoning` | `preset: "low"`, or a current reasoning model + web_search | This skill's recommendation for the retired model, not a mapping specified by the migration guide. Verify the model's supported reasoning efforts and note the substitution in your migration notes. |
| `sonar-reasoning-pro` | `preset: "low"`, or a current reasoning model + web_search + a generously sized `max_output_tokens` | `low` is the documented starting point; evaluate heavier presets separately. |
| `sonar-deep-research` | `preset: "high"` | The current migration guide recommends `high` for deep research. |

These are starting points from the [migration guide](https://docs.perplexity.ai/docs/agent-api/migrate-from-sonar/how-to), not guarantees of equivalent behavior or cost.
The [migration guide](https://docs.perplexity.ai/docs/agent-api/migrate-from-sonar/how-to) supplies the documented preset starting points above; alternative model choices and the `sonar-reasoning` row are this skill's recommendations. None guarantees equivalent behavior or cost.

### The sonar-pro two-option rule

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ Only remove the feature if none of these fit, and call the removal out in the mi

| Limit | Value / behavior |
|---|---|
| Document request body | <= 72 MiB including base64, prompts, and other fields; decoded inline documents have a separate 50 MiB combined limit |
| Native Responses request body | Up to 72 MiB, subject to a lower configured limit, including prompts, base64, and all other fields; decoded inline documents have a separate 50 MiB combined limit |
| `search_domain_filter` | <= 20 entries, scheme-less, <= 253 chars each |
| `models` fallback chain | <= 5 |
| `metadata` | <= 16 keys; key <= 64; value <= 512 |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ Envelope: `{"error": {"message": str, "type": str, "code": int, "param"?: str}}`
| 400 | `invalid_request`, `invalid_model`, `invalid_parameter`, `invalid_date_format`, `invalid_search_domain_filter`, ... | Unknown field (with `param`), bad model slug, bad filter, missing `max_output_tokens` on `anthropic/*`, reserved function name, expired reconnect cursor. |
| 401/403 | `forbidden` | Bad or blocked key. |
| 404 | `not_found` | Unknown response id (also returned for other accounts' ids and `store:false` responses). |
| 413 | `payload_too_large` | Request body exceeds the applicable limit; document requests allow up to 72 MiB with a separate 50 MiB decoded-inline-document limit. See [request limits](request-mapping.md#limits). |
| 413 | `payload_too_large` | Native Responses request body exceeds its configured limit (at most 72 MiB). Decoded inline documents have a separate 50 MiB combined limit. See [request limits](request-mapping.md#limits). |
| 424 | `external_connector_error` | MCP server unreachable. |
| 429 | `request_rate_limit_exceeded` | Rate limit; retry with backoff; `X-RateLimit-*` headers present. |
| 5xx | `internal_error`, `bad_gateway`, `upstream_structured_output_failed`, `gateway_timeout` | Retry-worthy. |
Expand Down
Loading