
Key points
- Credit usage analytics now omit source breakdowns, requiring clients to read returned category lists rather than assuming fixed fields.
- The Agent API renames preset to effort, introduces ultra-preview and removes the undocumented ultra identifier which now errors.
- New MCP approval settings allow developers to review tool calls before execution, with SDK support in recent Python and TypeScript releases.
Perplexity updated its API documentation to reflect changes in analytics reporting, effort level configurations and available model identifiers. These adjustments affect how developers track usage, configure agent behaviour and select underlying models for their applications.These changes require code updates for analytics tracking, agent configuration and model selection.The API shifts from static response assumptions to dynamic category parsing and introduces granular MCP approval controls.
The evidence
The changelog states that credit usage responses for specific datasets no longer include a credit source breakdown. Total credit counts and model breakdowns remain available in the output. Developers are instructed to read the returned categories list rather than expecting a fixed set of breakdown fields. Treating an omitted breakdown as zero usage is explicitly discouraged.
The decision
The Agent API now uses the term effort instead of preset for configuring agent behaviour. This is a naming change only, with no alterations to underlying models, prompts or pricing. The Python SDK version 0.46.0 and TypeScript SDK version 0.41.0 include the new effort parameter. The previous preset name remains accepted as a deprecated alias.
What to make of it
Effort levels have received versioned updates and parameter adjustments. The low and medium levels increase web search token limits from two thousand to four thousand. The high level switches to a different OpenAI model and raises maximum steps from fifteen to forty. The xhigh level increases maximum steps to three hundred and starts context compaction at one hundred and fifty thousand tokens.
In practice
Startups integrating these APIs must update their code to handle the new effort parameter and the removed ultra identifier. Integrations expecting fixed credit breakdowns will break if they do not dynamically read the returned categories. Developers using MCP tools can now enforce approval workflows by setting require_approval to always or using filter objects. The ultra-preview effort level is available for broad research tasks but may run for extended periods.
Why it matters
- Analytics integrations that assume static response structures will fail unless updated to parse dynamic category lists for credit usage.
- Applications relying on the undocumented ultra effort level will encounter errors and must migrate to ultra-preview or other valid levels.
- Security-conscious developers can now implement approval gates for MCP and connector tool calls, reducing unauthorised action risks.
Topics: API, Perplexity, MCP, Agent AI, Analytics
Updated
Did this article give you the evidence you needed?
Your choice stays on this device. No public tally.Questions readers ask
What happens if I use the ultra effort level now?
The undocumented ultra effort name is removed and returns an error; developers should use ultra-preview instead.
How do I handle missing credit source breakdowns?
Read the returned categories list and do not treat omitted breakdowns as zero usage, as per the Analytics API guide.
Which SDK versions support the new effort parameter?
Python SDK 0.46.0 and TypeScript SDK 0.41.0 add the effort parameter for Agent API configurations.
Connected stories
Reading receipt
- Credit usage analytics now omit source breakdowns, requiring clients to read returned category lists rather than assuming fixed fields.
- The Agent API renames preset to effort, introduces ultra-preview and removes the undocumented ultra identifier which now errors.
- New MCP approval settings allow developers to review tool calls before execution, with SDK support in recent Python and TypeScript releases.