From persona-pack
Sets up Persona API authentication for Node.js/Python: configures env vars with sandbox/production keys, installs axios/requests+dotenv, verifies connection via REST API calls.
How this skill is triggered — by the user, by Claude, or both
Slash command
/persona-pack:persona-install-authThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Set up Persona API authentication. Persona uses Bearer token auth with environment-prefixed API keys (`persona_sandbox_*` for testing, `persona_production_*` for live). No SDK required -- direct REST API calls with any HTTP client.
Set up Persona API authentication. Persona uses Bearer token auth with environment-prefixed API keys (persona_sandbox_* for testing, persona_production_* for live). No SDK required -- direct REST API calls with any HTTP client.
1. Log into dashboard.withpersona.com
2. Go to Settings > API Keys
3. Copy your sandbox key (starts with persona_sandbox_)
4. For production: copy production key (starts with persona_production_)
# .env — never commit
PERSONA_API_KEY=persona_sandbox_xxxxxxxxxxxxxxxxxxxxxxxx
PERSONA_API_VERSION=2023-01-05
# .gitignore
echo '.env' >> .gitignore
set -euo pipefail
# Node.js
npm install axios dotenv
# Python
pip install requests python-dotenv
import axios from 'axios';
const persona = axios.create({
baseURL: 'https://withpersona.com/api/v1',
headers: {
'Authorization': `Bearer ${process.env.PERSONA_API_KEY}`,
'Persona-Version': process.env.PERSONA_API_VERSION || '2023-01-05',
'Content-Type': 'application/json',
},
});
async function verify() {
const { data } = await persona.get('/inquiries?page[size]=1');
console.log(`Connected! Found ${data.data.length} inquiry(ies).`);
}
verify().catch(console.error);
import os, requests
from dotenv import load_dotenv
load_dotenv()
headers = {
"Authorization": f"Bearer {os.environ['PERSONA_API_KEY']}",
"Persona-Version": os.environ.get("PERSONA_API_VERSION", "2023-01-05"),
}
resp = requests.get("https://withpersona.com/api/v1/inquiries?page[size]=1", headers=headers)
resp.raise_for_status()
print(f"Connected! Status: {resp.status_code}")
| Error | Cause | Solution |
|---|---|---|
401 Unauthorized | Invalid or expired API key | Verify key in Dashboard > Settings > API Keys |
403 Forbidden | Key doesn't match environment | Use persona_sandbox_* for testing |
400 Missing Persona-Version | Version header not set | Add Persona-Version: 2023-01-05 header |
| Connection refused | Network/firewall issue | Ensure HTTPS to withpersona.com is allowed |
Create your first inquiry: persona-hello-world
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin persona-packDelivers production deployment checklist for Persona identity verification, including Python API example, prerequisites, HTTPS webhooks, compliance, monitoring, and error handling.
Installs Juicebox PeopleGPT SDK via npm or pip, configures API key authentication, and verifies connection for AI-powered people search across 800M+ profiles.
Configures Instantly.ai API v2 authentication: generates scoped keys, sets .env vars via bash, and creates TypeScript REST client wrapper.