Imp Imp

Getting Started

All Actor Arsenal actors run on the Apify platform. You'll need an Apify account and API token to use them programmatically.

Step 1: Get Your API Token

Go to Apify Console > Settings > Integrations to find your API token.

Step 2: Install the Apify Client

# Node.js
npm install apify-client

# Python
pip install apify-client

Step 3: Run Your First Actor

const { ApifyClient } = require('apify-client');

const client = new ApifyClient({
    token: 'YOUR_API_TOKEN',
});

// Run the Citation God Mode actor
const run = await client.actor('alizarin_refrigerator-owner/citation-god-mode').call({
    businessName: 'Your Business Name',
    address: '123 Main St, City, ST 12345',
    phone: '555-123-4567',
});

// Get results
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Authentication

All API requests require authentication via your Apify API token.

Header Authentication

Authorization: Bearer YOUR_API_TOKEN

Query Parameter

https://api.apify.com/v2/acts/...?token=YOUR_API_TOKEN
Security Warning
Never expose your API token in client-side code. Always use server-side requests or environment variables.

Running Actors

Start Actor Run

POST /v2/acts/{actorId}/runs
Parameter Type Description
actorId string required Actor ID (e.g., "alizarin_refrigerator-owner/citation-god-mode")
waitForFinish integer optional Wait up to N seconds for run to finish (max 300)
memory integer optional Memory limit in MB (128-32768)
// Start run and wait for completion
const response = await fetch(
    'https://api.apify.com/v2/acts/alizarin_refrigerator-owner/citation-god-mode/runs?waitForFinish=300',
    {
        method: 'POST',
        headers: {
            'Authorization': `Bearer ${API_TOKEN}`,
            'Content-Type': 'application/json',
        },
        body: JSON.stringify({
            businessName: 'Acme Corp',
            address: '123 Main St, Austin, TX 78701',
            phone: '512-555-1234',
        }),
    }
);

Citation Checker API

Check NAP consistency across 60+ business directories.

Input Schema

Field Type Description
businessName string required Exact business name as it should appear
address string required Full street address with city, state, zip
phone string required Primary business phone number
website string optional Business website URL
demoMode boolean optional Return sample data (default: false)

Output Schema

{
    "summary": {
        "totalPlatforms": 60,
        "foundOn": 42,
        "consistentNAP": 38,
        "inconsistencies": 4,
        "napScore": 90.5
    },
    "citations": [
        {
            "platform": "Google Business Profile",
            "found": true,
            "nameMatch": true,
            "addressMatch": true,
            "phoneMatch": true,
            "listingUrl": "https://..."
        }
    ]
}
Pro Tip
Use demoMode: true for testing to avoid consuming credits.

Social Posters API

Automate posting to social media platforms.

Common Input Fields

Field Type Description
text string required Post content/caption
imageUrl string optional Image URL to attach
sessionCookie string required Platform session cookie for auth

Facebook Poster Example

await client.actor('alizarin_refrigerator-owner/facebook-poster').call({
    pageId: 'your-page-id',
    text: 'Check out our latest updates!',
    imageUrl: 'https://example.com/image.jpg',
    sessionCookie: 'your-session-cookie',
});

LinkedIn Poster Example

await client.actor('alizarin_refrigerator-owner/linkedin-poster').call({
    postType: 'company', // or 'personal'
    companyId: 'your-company-id',
    text: 'Exciting news from our team!',
    sessionCookie: 'li_at=your-cookie',
});

Sports APIs

Real-time sports data from official league APIs.

NFL API Example

const run = await client.actor('alizarin_refrigerator-owner/nfl-api---football-statistics').call({
    action: 'standings', // standings, schedule, teams, scores
    season: 2024,
    week: 17, // optional for scores
});

// Returns team standings, records, division rankings

Available Actions (All Sports APIs)

Action Description
standings League/division standings
schedule Season or week schedule
teams All teams with metadata
scores Live or final scores
roster Team roster (requires teamId)
player Player stats (requires playerId)

MCP Servers

Model Context Protocol servers for AI assistants like Claude.

What is MCP?

MCP (Model Context Protocol) is a standard for connecting AI assistants to external tools and data sources. Our MCP servers let Claude and other AI assistants use Apify actors as tools.

Using with Claude Desktop

Add to your claude_desktop_config.json:

{
    "mcpServers": {
        "local-seo": {
            "command": "npx",
            "args": ["@anthropic/mcp-remote", "https://actors-mcp.apify.actor/alizarin_refrigerator-owner/local-seo-mcp-server"],
            "env": {
                "APIFY_TOKEN": "your-api-token"
            }
        }
    }
}

Available MCP Servers

Server Tools Use Case
local-seo-mcp-server check_citations, scrape_reviews, gbp_audit, local_rankings Local SEO analysis
social-media-mcp-server post_to_facebook, post_to_linkedin, scrape_engagement Social automation
seo-intelligence-mcp-server keyword_research, competitor_analysis, backlink_check SEO research
lead-enrichment-mcp-server enrich_company, find_contacts, verify_email B2B lead gen

Webhooks

Get notified when actor runs complete.

Setting Up Webhooks

const run = await client.actor('alizarin_refrigerator-owner/citation-god-mode').call(
    {
        businessName: 'Acme Corp',
        address: '123 Main St',
    },
    {
        webhooks: [
            {
                eventTypes: ['ACTOR.RUN.SUCCEEDED', 'ACTOR.RUN.FAILED'],
                requestUrl: 'https://your-server.com/webhook',
            }
        ]
    }
);

Webhook Payload

{
    "eventType": "ACTOR.RUN.SUCCEEDED",
    "eventData": {
        "actorId": "...",
        "actorRunId": "...",
        "defaultDatasetId": "...",
        "status": "SUCCEEDED"
    }
}
150,000
KILLS
100%
HEALTH
Doomguy
274
ACTORS
0/3
SECRETS
Apify APIFY PARTNER