instantly-install-auth
Provides steps for generating Instantly.ai API keys and configuring Bearer token authentication for API v2.
Install
mkdir -p .claude/skills/instantly-install-auth && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/7116" && unzip -o skill.zip -d .claude/skills/instantly-install-auth && rm skill.zipInstalls to .claude/skills/instantly-install-auth
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Set up Instantly.ai API v2 authentication and project configuration.Key capabilities
- →Configure Instantly.ai API v2 authentication
- →Generate Instantly API keys with specific scopes
- →Set up environment variables for `INSTANTLY_API_KEY`
- →Set up environment variables for `INSTANTLY_BASE_URL`
- →Create API client wrappers for TypeScript
- →Create API client wrappers for Python
How it works
This skill guides the user to generate an Instantly API key from the dashboard, configure it in a `.env` file, and provides code examples for creating API client wrappers in TypeScript and Python.
Inputs & outputs
When to use instantly-install-auth
- →Generating and scoping new Instantly API keys
- →Configuring environment variables for outreach automation
- →Setting up REST client credentials
About this skill
Instantly Install & Auth
Overview
Configure Instantly.ai API v2 authentication. Instantly uses Bearer token auth with scoped API keys. There is no official SDK — all integrations use direct REST calls to https://api.instantly.ai/api/v2/.
Prerequisites
- Instantly.ai account on Hypergrowth plan ($97/mo) or higher (required for API v2 access)
- Node.js 18+ or Python 3.10+
- Access to Instantly dashboard at
https://app.instantly.ai
Instructions
Step 1: Generate API Key
- Log into
https://app.instantly.ai - Navigate to Settings > Integrations > API
- Click Create New API Key
- Select scopes (e.g.,
campaigns:read,leads:all,accounts:read) - Copy the key — it is shown only once
set -euo pipefail
# Create .env file with your API key
cat > .env << 'ENVEOF'
INSTANTLY_API_KEY=your-api-key-here
INSTANTLY_BASE_URL=https://api.instantly.ai/api/v2
ENVEOF
echo "Created .env with Instantly config"
Available API scopes (resource:action format):
| Scope | Access |
|---|---|
campaigns:read | List/get campaigns and analytics |
campaigns:update | Create, patch, activate, pause campaigns |
campaigns:all | Full campaign CRUD + analytics |
accounts:read | List/get email accounts |
accounts:update | Create, warmup, pause accounts |
leads:read | List/get leads and lead lists |
leads:update | Create, move, delete leads |
leads:all | Full lead CRUD |
all:all | Unrestricted access (dev only) |
Step 2: Create API Client Wrapper (TypeScript)
// src/instantly.ts
import "dotenv/config";
const BASE = process.env.INSTANTLY_BASE_URL || "https://api.instantly.ai/api/v2";
const API_KEY = process.env.INSTANTLY_API_KEY;
if (!API_KEY) throw new Error("INSTANTLY_API_KEY is required");
export async function instantly<T = unknown>(
path: string,
options: RequestInit = {}
): Promise<T> {
const url = `${BASE}${path}`;
const res = await fetch(url, {
...options,
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${API_KEY}`,
...options.headers,
},
});
if (!res.ok) {
const body = await res.text();
throw new Error(`Instantly API ${res.status}: ${body}`);
}
return res.json() as Promise<T>;
}
Step 3: Create API Client Wrapper (Python)
# instantly_client.py
import os
import httpx
from dotenv import load_dotenv
load_dotenv()
BASE_URL = os.getenv("INSTANTLY_BASE_URL", "https://api.instantly.ai/api/v2")
API_KEY = os.getenv("INSTANTLY_API_KEY")
if not API_KEY:
raise ValueError("INSTANTLY_API_KEY environment variable is required")
client = httpx.Client(
base_url=BASE_URL,
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
},
timeout=30.0,
)
def instantly_get(path: str, params: dict = None):
r = client.get(path, params=params)
r.raise_for_status()
return r.json()
def instantly_post(path: str, json_data: dict = None):
r = client.post(path, json=json_data)
r.raise_for_status()
return r.json()
Step 4: Verify Connection
// verify.ts — run with: npx tsx verify.ts
import { instantly } from "./src/instantly";
interface Campaign {
id: string;
name: string;
status: number;
}
async function verify() {
// List campaigns — if this returns, auth is working
const campaigns = await instantly<Campaign[]>("/campaigns?limit=1");
console.log("Auth verified. Campaigns found:", campaigns.length >= 0);
// List email accounts
const accounts = await instantly<{ email: string }[]>("/accounts?limit=1");
console.log("Accounts accessible:", accounts.length >= 0);
console.log("Instantly API v2 connection is working.");
}
verify().catch((err) => {
console.error("Auth failed:", err.message);
process.exit(1);
});
Output
.envfile withINSTANTLY_API_KEYandINSTANTLY_BASE_URL- Reusable API client wrapper (
src/instantly.tsorinstantly_client.py) - Verified connection to Instantly API v2
Error Handling
| Error | Cause | Solution |
|---|---|---|
401 Unauthorized | Invalid or expired API key | Regenerate key in Settings > Integrations |
403 Forbidden | Key missing required scope | Edit key scopes or create new key with correct permissions |
429 Too Many Requests | Rate limit exceeded | Implement exponential backoff (see instantly-rate-limits) |
ECONNREFUSED | Network/firewall issue | Ensure outbound HTTPS to api.instantly.ai is allowed |
API key not found | Key was revoked | Generate a new key from the dashboard |
Resources
Next Steps
After successful auth, proceed to instantly-hello-world for your first API call.
When not to use it
- →When an Instantly.ai account is not on the Hypergrowth plan or higher
- →When Node.js 18+ or Python 3.10+ is not available
- →When access to the Instantly dashboard is not available
Prerequisites
Limitations
- →API keys are shown only once upon creation
- →API v2 access requires a Hypergrowth plan or higher
- →Authentication errors can occur due to invalid or expired API keys
How it compares
This skill automates the initial setup of Instantly.ai API authentication and client wrappers, providing a quicker start than manually configuring environment variables and writing client code.
Compared to similar skills
instantly-install-auth side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| instantly-install-auth (this skill) | 1 | 27d | Caution | Beginner |
| lindy-install-auth | 4 | 27d | Caution | Beginner |
| evernote-install-auth | 1 | 27d | Review | Beginner |
| documenso-install-auth | 1 | 27d | Review | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by jeremylongshore
View all by jeremylongshore →You might also like
lindy-install-auth
jeremylongshore
Install and configure Lindy AI SDK/CLI authentication. Use when setting up a new Lindy integration, configuring API keys, or initializing Lindy in your project. Trigger with phrases like "install lindy", "setup lindy", "lindy auth", "configure lindy API key".
evernote-install-auth
jeremylongshore
Install and configure Evernote SDK and OAuth authentication. Use when setting up a new Evernote integration, configuring API keys, or initializing Evernote in your project. Trigger with phrases like "install evernote", "setup evernote", "evernote auth", "configure evernote API", "evernote oauth".
documenso-install-auth
jeremylongshore
Install and configure Documenso SDK/API authentication. Use when setting up a new Documenso integration, configuring API keys, or initializing Documenso in your project. Trigger with phrases like "install documenso", "setup documenso", "documenso auth", "configure documenso API key".
deepgram-install-auth
jeremylongshore
Install and configure Deepgram SDK/CLI authentication. Use when setting up a new Deepgram integration, configuring API keys, or initializing Deepgram in your project. Trigger with phrases like "install deepgram", "setup deepgram", "deepgram auth", "configure deepgram API key".
fireflies-install-auth
jeremylongshore
Install and configure Fireflies.ai SDK/CLI authentication. Use when setting up a new Fireflies.ai integration, configuring API keys, or initializing Fireflies.ai in your project. Trigger with phrases like "install fireflies", "setup fireflies", "fireflies auth", "configure fireflies API key".
klingai-install-auth
jeremylongshore
Execute set up Kling AI API authentication and configure API keys. Use when starting a new Kling AI integration or troubleshooting auth issues. Trigger with phrases like 'kling ai setup', 'klingai api key', 'kling ai authentication', 'configure klingai'.