{
  "generated_at": "2026-07-17",
  "name": "Veezee",
  "tagline": "Data API for AI agents: LinkedIn, Reddit, and X (formerly Twitter) on one contract. Structured profiles, companies, subreddits, posts, tweets, and search over MCP or REST. Zero setup: the first call returns data, and paying is the only human step.",
  "platforms": [
    "linkedin",
    "reddit",
    "x"
  ],
  "scope": {
    "source": "hand, derived from generated/docs-data.json tool descriptions and public/AGENTS.md",
    "best_for": [
      "people search",
      "profile enrichment",
      "company enrichment",
      "candidate sourcing",
      "prospect research",
      "discussion and comment-level sentiment search (Reddit)",
      "recency and volume sweeps (X)"
    ],
    "not_supported": [
      "No writing to LinkedIn: every tool is read-only (no posting, commenting, or messaging).",
      "No posting, commenting, or DMs on Reddit or X: every Reddit and X tool is read-only too.",
      "No real-time monitoring or recurring watch jobs on any platform: each call is a one-time fetch or page, not a subscription; poll on a cadence instead.",
      "No bulk export guarantee: search and feed tools return one page per call, not a full-dataset dump.",
      "No contact details: linkedin_get_profile does not return email addresses or phone numbers.",
      "No company search by name: linkedin_get_company takes a URL, slug, or domain; resolve a name via linkedin_search_people's current_company filter instead.",
      "No keyword search across LinkedIn posts: linkedin_get_posts returns one entity's recent posts only, not a search.",
      "No t.co link expansion: x_resolve_url cannot expand a shortened X link offline; expand it in a browser step first.",
      "No batch tweet lookup: x_get_tweet fetches one tweet at a time, unlike reddit_get_post's up-to-100 batch."
    ]
  },
  "capabilities": {
    "source": "generated/docs-data.json (frozen tool contract) + src/contract/pricing.json",
    "tools": [
      {
        "name": "linkedin_resolve_url",
        "description": "Identify a LinkedIn URL",
        "platform": "linkedin",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "url"
        ],
        "credits": 2
      },
      {
        "name": "linkedin_get_profile",
        "description": "Get a LinkedIn person profile",
        "platform": "linkedin",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "identifier"
        ],
        "credits": 4
      },
      {
        "name": "linkedin_search_people",
        "description": "Search people on LinkedIn",
        "platform": "linkedin",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [],
        "credits": 10
      },
      {
        "name": "linkedin_get_company",
        "description": "Get a LinkedIn company",
        "platform": "linkedin",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "identifier"
        ],
        "credits": 4
      },
      {
        "name": "linkedin_get_posts",
        "description": "Get recent posts by a person or company",
        "platform": "linkedin",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "identifier"
        ],
        "credits": 4
      },
      {
        "name": "reddit_search",
        "description": "Search Reddit posts, comments, subreddits, or users",
        "platform": "reddit",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "query"
        ],
        "credits": 6
      },
      {
        "name": "reddit_get_subreddit",
        "description": "Get subreddit details",
        "platform": "reddit",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "subreddit_name"
        ],
        "credits": 4
      },
      {
        "name": "reddit_get_subreddit_posts",
        "description": "Get a subreddit's posts",
        "platform": "reddit",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "subreddit_name"
        ],
        "credits": 4
      },
      {
        "name": "reddit_get_user",
        "description": "Get a Reddit user",
        "platform": "reddit",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "username"
        ],
        "credits": 4
      },
      {
        "name": "reddit_get_post",
        "description": "Get Reddit posts by id, with optional discussion thread",
        "platform": "reddit",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "post_ids"
        ],
        "credits": 4
      },
      {
        "name": "reddit_resolve_url",
        "description": "Identify a Reddit URL",
        "platform": "reddit",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "url"
        ],
        "credits": 2
      },
      {
        "name": "x_search",
        "description": "Search X (formerly Twitter)",
        "platform": "x",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "query"
        ],
        "credits": 6
      },
      {
        "name": "x_get_profile",
        "description": "Get an X profile",
        "platform": "x",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "identifier"
        ],
        "credits": 4
      },
      {
        "name": "x_get_tweets",
        "description": "Get an account's tweets",
        "platform": "x",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "identifier"
        ],
        "credits": 4
      },
      {
        "name": "x_get_tweet",
        "description": "Get one tweet with full metrics",
        "platform": "x",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "tweet_id"
        ],
        "credits": 4
      },
      {
        "name": "x_resolve_url",
        "description": "Identify an X URL",
        "platform": "x",
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [
          "url"
        ],
        "credits": 2
      },
      {
        "name": "get_usage",
        "description": "Check credits and recent charges",
        "platform": null,
        "platforms": [
          "linkedin",
          "reddit",
          "x"
        ],
        "required_inputs": [],
        "credits": 0
      }
    ]
  },
  "install": {
    "source": "hand, cross-checked against src/site/serve.ts and /docs/clients",
    "default_path": "Default path: use MCP when your host supports it, the SDK otherwise, REST as the fallback; the CLI and skills are conveniences layered on top of those.",
    "mcp": {
      "url": "https://mcp.veezee.io/linkedin",
      "reddit_url": "https://mcp.veezee.io/reddit",
      "x_url": "https://mcp.veezee.io/x",
      "all_platforms_url": "https://mcp.veezee.io/all",
      "transport": "streamable-http",
      "add_command": "claude mcp add --transport http veezee https://mcp.veezee.io/linkedin"
    },
    "sdk": {
      "install": "npm install @veezee/sdk",
      "node": "20+",
      "docs": "https://veezee.io/docs/sdk"
    },
    "rest": {
      "base_url": "https://api.veezee.io",
      "contract": "https://veezee.io/openapi.json"
    },
    "cli": {
      "install": "npm install -g @veezee/sdk",
      "bin": "veezee",
      "docs": "https://veezee.io/docs/cli"
    },
    "skills": {
      "install": "npx skills add veezeehq/veezee-skills",
      "index": "https://veezee.io/.well-known/agent-skills/index.json"
    }
  },
  "auth": {
    "source": "hand, matches /trust and /AGENTS.md",
    "method": "REST and CLI need an API key; your agent mints one free in a single call. MCP clients that support the MCP authorization spec connect via OAuth instead: no key at all.",
    "key_header": "Authorization: Bearer <api_key>",
    "mint": "POST https://api.veezee.io/v1/keys/mint with no body returns a key once, free, no signup, no card, plus ready-made setup snippets. An un-keyed call returns KEY_REQUIRED carrying this same recipe, so any agent self-heals in one round-trip.",
    "free_key": "The data routes and MCP work with a free key: 200 credits per IP per day, recent data only, no realtime, no Idempotency-Key needed. The key adds no allowance beyond the per-IP budget; realtime needs a paid key. get_usage works on any key and reports the free-tier day budget (free_tier block) on trial keys.",
    "get_a_key": "Buy a key at https://veezee.io/upgrade (or POST /v1/checkout). If you already have a free key, checkout credits that same key; otherwise api_key is shown exactly once on the confirmation page. Store it immediately.",
    "claim": "Checkout claims the account with the checkout email automatically; minted keys are claimed by signing in at https://veezee.io/login (one-time emailed code, no password). Claiming unlocks the dashboard, key rotation, self-serve lost-key recovery at https://veezee.io/recover, and a one-time grant of 10,000 credits, once per email.",
    "manage": "get_usage returns manage_url; it opens the Stripe billing portal to change or cancel a paid plan. Humans without a link can paste the API key at https://veezee.io/manage."
  },
  "pricing": {
    "source": "src/contract/pricing.json",
    "currency": "usd",
    "unit_rate": "$2.00 per 1,000 credits",
    "minimum_purchase_usd": 20,
    "minimum_purchase_note": "The per-1,000-credit rate is a unit price, not a standalone purchase: the smallest purchasable pack is Flex at $20.00.",
    "free_key": {
      "credits_per_day": 200,
      "price_usd": 0,
      "note": "Shared per IP. Mint one free at POST /v1/keys/mint: no signup, no card, recent data only, no realtime."
    },
    "packs": [
      {
        "name": "flex",
        "credits": 10000,
        "price_usd": 20,
        "billing": "one-time",
        "note": "Prepaid, does not expire while the account is open."
      },
      {
        "name": "production",
        "credits_per_month": 80000,
        "price_usd_per_month": 99,
        "billing": "monthly",
        "note": "5 concurrent calls, higher rate limits (120 req/min, search up to 30 results/call)."
      }
    ]
  },
  "limits": {
    "source": "src/contract/pricing.json plan_caps",
    "trial": {
      "credits_grant": 500,
      "concurrent": 1,
      "requests_per_minute": 20,
      "search_max_results_per_call": 10,
      "realtime_fetches_total": 5
    },
    "paid": {
      "concurrent": 5,
      "requests_per_minute": 120,
      "search_max_results_per_call": 30
    }
  },
  "commercial_availability": {
    "status": "live",
    "note": "Purchases on /upgrade charge real cards through Stripe. Failed or unfulfilled calls refund to the credit balance automatically; unused purchased credits are refunded on request within 14 days (hello@veezee.io)."
  },
  "links": {
    "status": {
      "url": null,
      "note": "No public status page yet."
    },
    "evidence": {
      "url": "https://veezee.io/evidence",
      "note": "Tool-selection eval (picker/first-call/response-usability); JSON twin at https://veezee.io/evidence/tool-selection-eval.json. 30-day availability and latency are pending (no accumulated data yet)."
    },
    "proof_feed": {
      "url": "https://veezee.io/proof-feed.json",
      "note": "Latest e2e run per environment: per-tool success, latency ms, credits charged, data freshness. Schema at /proof-feed.schema.json."
    },
    "support": {
      "url": "mailto:hello@veezee.io"
    },
    "legal": {
      "url": "https://veezee.io/terms",
      "note": "Terms at https://veezee.io/terms, privacy at https://veezee.io/privacy. The trust page (https://veezee.io/trust) covers data storage, key handling, auth, billing and cancellation."
    }
  }
}
