Skip to main content Install and configure Perplexity SDK/CLI authentication.
Use when setting up a new Perplexity integration, configuring API keys,
or initializing Perplexity in your project.
Trigger with phrases like "install perplexity", "setup perplexity",
"perplexity auth", "configure perplexity API key".
npx skills add jeremylongshore/claude-code-plugins-plus-skills --skill perplexity-install-auth ai automation claude-code devops mcp ai-agents
Perplexity Install & Auth
Overview
Set up Perplexity Sonar API access using the OpenAI-compatible chat completions endpoint at https://api.perplexity.ai. Perplexity does not have a custom SDK -- you use the standard OpenAI client library pointed at Perplexity's base URL.
Prerequisites
Node.js 18+ or Python 3.10+
Perplexity account at perplexity.ai
API key from perplexity.ai/settings/api
Instructions
Step 1: Install OpenAI Client Library
set -euo pipefail
# Node.js / TypeScript
npm install openai
# Python
pip install openai
There is no @perplexity/sdk package. Perplexity uses the OpenAI wire format, so you use the official openai package with a custom baseURL.
Step 2: Configure API Key
# Set environment variable
export PERPLEXITY_API_KEY="pplx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Or create .env file (add .env to .gitignore)
echo 'PERPLEXITY_API_KEY=pplx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' >> .env
API keys start with pplx- and are generated at perplexity.ai/settings/api . You must add credits to your account before making API calls.
Step 3: Verify Connection (TypeScript) import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.PERPLEXITY_API_KEY,
baseURL: "https://api.perplexity.ai",
});
async function verify() {
const response = await client.chat.completions.create({
model: "sonar",
messages: [{ role: "user", content: "What is 2+2?" }],
max_tokens: 50,
});
console.log("Connected:", response.choices[0].message.content);
console.log("Model:", response.model);
console.log("Tokens used:", response.usage?.total_tokens);
}
verify().catch(console.error);
Step 4: Verify Connection (Python) import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["PERPLEXITY_API_KEY"],
base_url="https://api.perplexity.ai",
)
response = client.chat.completions.create(
model="sonar",
messages=[{"role": "user", "content": "What is 2+2?"}],
max_tokens=50,
)
print("Connected:", response.choices[0].message.content)
print("Model:", response.model)
print("Tokens:", response.usage.total_tokens)
Available Models Model Use Case Input $/M tokens Output $/M tokens sonarFast search, simple queries $1 $1 sonar-proDeep research, more citations $3 $15 sonar-reasoning-proChain-of-thought with search $3 $15 sonar-deep-researchMulti-step research synthesis $2 $8
Error Handling Error Cause Solution 401 UnauthorizedInvalid or missing API key Verify key starts with pplx- and has credits 403 ForbiddenKey lacks model access Check key permissions at perplexity.ai/settings Module not found: openaiSDK not installed Run npm install openai or pip install openai Connection refusedWrong base URL Ensure baseURL is https://api.perplexity.ai
Output
OpenAI client configured with Perplexity base URL
Successful API response confirming connection
Token usage confirming billing is active
Resources
Next Steps After successful auth, proceed to perplexity-hello-world for your first search query.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).