Perplexity install auth
'Install and configure Perplexity Sonar API authentication.From its SKILL.md
npx -y skills add jeremylongshore/claude-code-plugins-plus-skills --skill perplexity-install-authAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.3 KB, 963 tokens by cl100k_base, as published. Nobody here has run it
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 |
|---|---|---|---|
sonar | Fast search, simple queries | $1 | $1 |
sonar-pro | Deep research, more citations | $3 | $15 |
sonar-reasoning-pro | Chain-of-thought with search | $3 | $15 |
sonar-deep-research | Multi-step research synthesis | $2 | $8 |
Error Handling
| Error | Cause | Solution |
|---|---|---|
401 Unauthorized | Invalid or missing API key | Verify key starts with pplx- and has credits |
403 Forbidden | Key lacks model access | Check key permissions at perplexity.ai/settings |
Module not found: openai | SDK not installed | Run npm install openai or pip install openai |
Connection refused | Wrong 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.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.