How do I request extracted page content from Perplexity search?

The Citead team, updated

In short. Set max_tokens and max_tokens_per_page in a Perplexity Search API request and read extracted text from results[].snippet.

Definition: Extracted page content is text returned from a web page in a search result. As of 17 October 2026, Perplexity's Search API exposes this text through results[].snippet, with max_tokens and max_tokens_per_page controlling the content budgets.

Key facts

  • Perplexity's Search API guide defines max_tokens as the total content cap across results and max_tokens_per_page as the cap for each page.
  • The Search the Web reference defines snippet as content extracted from the page, alongside its title and url.
  • Perplexity's Best Practices recommends requesting only the result count needed, because more results take longer to return.

How is extraction requested?

The Search API guide places both content budgets in the search request body. Its detailed-content example uses the following call, with an API key supplied through PERPLEXITY_API_KEY:

curl -X POST 'https://api.perplexity.ai/search' \
  -H "Authorization: Bearer $PERPLEXITY_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "query": "renewable energy technologies",
    "max_results": 10,
    "max_tokens": 50000,
    "max_tokens_per_page": 4096
  }' | jq

Here, max_results controls the result count. The total content budget is 50,000 tokens, and the per-page limit is 4,096 tokens. The guide describes higher budgets as returning more extracted content and lower budgets as keeping snippets shorter. It says omitted settings use default budgets, without giving numeric defaults.

Which response fields contain the content?

The Search the Web reference describes a ranked results array. Each result requires title, url, and snippet. The optional date field represents publication date; last_updated represents the page's last update. Both date fields can be null.

The response also requires an id string. Its optional server_time field accepts a string or null. For an application consuming extracted content, the relevant field path is:

results[].snippet

Keeping each snippet associated with its url preserves the relationship between the returned text and its source page. The reference's example describes a snippet as an excerpt relevant to the query.

How should the limits be chosen?

The API reference schema accepts integers from 1 to 1,000,000 for each token setting. These are content caps; a request sets both the overall allowance and the allowance for individual pages.

Perplexity's Best Practices guide recommends specific queries with context, time frames, and precise terminology. Together with a deliberate result count, these settings provide a practical starting point for inspecting returned excerpts before passing them to another application.

FAQ

Can I request shorter extracted content?

Yes. You can lower max_tokens or max_tokens_per_page; Perplexity's Search API guide describes lower budgets as returning shorter content.

Where should I read the returned text?

Read snippet inside each object in results. The Search the Web reference identifies url as the corresponding page address.

Sources

  1. Perplexity, "Perplexity Search API", undated
  2. Perplexity, "Search the Web", undated
  3. Perplexity, "Best Practices", undated

Check how a page reads to answer engines. Open the GEO score analyzer

Test a page and see what to fix first

The analysis usually takes less than 10 seconds and needs no account.

400,000+ pages scored in the public benchmark