Documentation

Quickstart — First API Call in 2 Minutes

Get your SkillBoss API key, install on Claude Code, Cursor, or Windsurf, and make your first API call to 697+ AI endpoints. No credit card required. $2 free credit.

Fastest Path: Tell your AI agent set up skillboss.co/skill.md — done.

Get from zero to calling any AI model through SkillBoss in under 2 minutes.

Prerequisites: A SkillBoss account — sign up free ($2 free credit, no credit card required).

Step 1: Get Your API Key

Sign Up

Go to skillboss.co and create your account

Open Console

Download Skills Pack

Click "Download Skills Pack" — this ZIP contains your API key and platform-specific configs

ℹ️

Your API key starts with sk_. Keep it secret. You can regenerate it anytime from the console.

Step 2: Install

Choose your setup method:

One-Line Install (Recommended)

Tell your AI coding agent:

set up skillboss.co/skill.md

This works with Claude Code, Cursor, Windsurf, Codex, and any agent that can fetch URLs. The agent will automatically configure everything.

Environment Variables

Set these in your shell profile (.bashrc, .zshrc) or .env file:

export OPENAI_BASE_URL="https://api.skillboss.co/v1"
export OPENAI_API_KEY="sk_your_skillboss_key"

Any OpenAI-compatible tool will now use SkillBoss automatically.

Claude Code

Extract the Skills Pack ZIP:

mkdir -p ~/.claude/skills
unzip ~/Downloads/skillboss-skills.zip -d ~/.claude/skills/

Restart Claude Code. Your skills are now available.

⌨️

Full Claude Code Guide

Advanced configuration, MCP server setup, and best practices

Cursor

Add to your project's .cursor/rules or .cursorrules:

You have access to SkillBoss API with 697+ endpoints.
Base URL: https://api.skillboss.co/v1
API Key: sk_your_skillboss_key
Use OpenAI SDK with base_url override.
💻

Full Cursor Guide

Cursor Rules configuration and MCP integration

Windsurf

Add to your Windsurf Rules:

You have access to SkillBoss API with 697+ endpoints.
Base URL: https://api.skillboss.co/v1
API Key: sk_your_skillboss_key
📄

Full Windsurf Guide

Complete Windsurf configuration

Step 3: Make Your First API Call

Chat Completion (Claude, GPT, Gemini)

from openai import OpenAI

client = OpenAI(
    base_url="https://api.skillboss.co/v1",
    api_key="sk_your_skillboss_key"
)

# Use any model — just change the model name
response = client.chat.completions.create(
    model="claude-4-5-sonnet",
    messages=[{"role": "user", "content": "Write a haiku about APIs"}]
)
print(response.choices[0].message.content)
import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: 'https://api.skillboss.co/v1',
  apiKey: 'sk_your_skillboss_key'
});

const response = await client.chat.completions.create({
  model: 'gpt-5',
  messages: [{ role: 'user', content: 'Write a haiku about APIs' }]
});
console.log(response.choices[0].message.content);
curl https://api.skillboss.co/v1/chat/completions \
  -H "Authorization: Bearer sk_your_skillboss_key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-2.5-flash",
    "messages": [{"role": "user", "content": "Write a haiku about APIs"}]
  }'

Image Generation

import requests

response = requests.post(
    "https://api.skillboss.co/v1/run",
    headers={"Authorization": "Bearer sk_your_skillboss_key"},
    json={
        "model": "flux-1.1-pro",
        "inputs": {"prompt": "A futuristic cityscape at sunset, cyberpunk style"}
    }
)
image_url = response.json()["output"]["url"]
print(f"Image: {image_url}")

Web Scraping

response = requests.post(
    "https://api.skillboss.co/v1/run",
    headers={"Authorization": "Bearer sk_your_skillboss_key"},
    json={
        "model": "firecrawl/scrape",
        "inputs": {"url": "https://example.com"}
    }
)
print(response.json()["output"]["markdown"])

Two API Patterns

SkillBoss uses two endpoints:

EndpointUse ForModels
/v1/chat/completionsChat / LLM modelsClaude, GPT, Gemini, DeepSeek, Qwen
/v1/runEverything elseImages, video, audio, scraping, email, payments
⚠️

Common mistake: Using /v1/chat/completions for non-chat models (images, video, etc.) or /v1/run for chat models. Check the Use Pages Hub for the correct endpoint per model.

Step 4: Monitor Usage

Visit skillboss.co/console to:

  • Check your balance — see remaining credits in real-time
  • View usage breakdown — cost per model, per day
  • Enable auto-recharge — never run out of credits (optional)

Or query programmatically:

usage = requests.get(
    "https://skillboss.co/api/me/usage?period=day",
    headers={"Authorization": f"Bearer {API_KEY}"}
).json()
print(f"Today: ${usage['summary']['total_usd']:.2f} | {usage['summary']['total_requests']} requests")

Error Handling

CodeMeaningFix
401Invalid API keyCheck your key at console
402Insufficient creditsAdd credits
429Rate limit hitRetry with exponential backoff
503Upstream unavailableRetry after 1-2 seconds

What's Next?

📄

Explore 697+ Endpoints

Browse canonical use pages for AI models, images, video, audio, scraping, and business APIs

🤖

For AI Agents

Agent-specific patterns: routing, budgets, error recovery, multi-model strategies

📄

Cost Optimization

Model selection strategies to minimize cost while maximizing quality

📄

Troubleshooting

Common issues and solutions

Need Help?

📄

Follow on X

Get updates and announcements

📄

Email Support


Agent-Readable Summary:

{
  "quickstart_steps": [
    {"step": 1, "action": "signup", "url": "https://skillboss.co", "free_credit": "$2"},
    {"step": 2, "action": "install", "command": "set up skillboss.co/skill.md"},
    {"step": 3, "action": "call_api", "endpoint": "https://api.skillboss.co/v1/chat/completions"}
  ],
  "api_patterns": {
    "chat_models": "/v1/chat/completions",
    "everything_else": "/v1/run"
  },
  "error_codes": {"401": "invalid_key", "402": "no_credits", "429": "rate_limit", "503": "upstream_down"}
}