{
  "name": "Kagi Search API",
  "slug": "kagi-search",
  "website_url": "https://kagi.com/api/docs",
  "vendor_description": "\"The Search API gives programmable access to Kagi's premium search results.\"",
  "categories": [
    "web-search"
  ],
  "summary": "Kagi Search API provides programmable access to Kagi's premium search index, covering web, image, news, video, podcast, and content extraction endpoints, with built-in summarization and citation-grounded answers suited for RAG pipelines and AI agents. Pricing is usage-based at $12 per 1,000 searches with no sales call required, and an enterprise plan is available. The API is GDPR compliant, supports Python, Go, Rust, and TypeScript SDKs, and ships an MCP server for agent tooling integrations.",
  "capabilities": {
    "supported_actions": [
      "web_search",
      "image_search",
      "news_search",
      "video_search",
      "podcast_search",
      "get_contents",
      "enrich_web",
      "enrich_news",
      "summarize",
      "answer_with_citations"
    ],
    "supported_regions": [
      "Global - any valid ISO 3166-1 Alpha-2 country code supported as region filter; 'no_region' for general results"
    ],
    "supported_languages": [],
    "input_types": [
      "natural language query",
      "keywords",
      "URL (for extract and summarizer endpoints)",
      "text (for summarizer endpoint)",
      "lens filters",
      "domain filters",
      "date range filters",
      "region filters",
      "file type filters"
    ],
    "output_types": [
      "JSON",
      "Markdown",
      "answer + citations (FastGPT)",
      "full page contents (extract)",
      "structured result objects (url, title, snippet, timestamp, image thumbnail, metadata)"
    ],
    "webhooks_supported": false,
    "sandbox_available": false,
    "sdk_languages": [
      "Python",
      "Go",
      "Rust",
      "TypeScript"
    ],
    "mcp_server_available": true
  },
  "integration": {
    "api_style": "rest",
    "base_url": "https://kagi.com/api/v1",
    "api_version": "v1",
    "versioning_scheme": "url",
    "stability": "beta",
    "deprecation_policy_url": null,
    "auth_methods": [
      "api_key"
    ],
    "auth_docs_url": "https://help.kagi.com/kagi/api/overview.html",
    "idempotency_supported": null,
    "error_format": "vendor-specific (meta.trace field + X-Kagi-Trace response header)",
    "webhook_signing": null,
    "webhook_events_url": null,
    "rate_limit_requests": null,
    "rate_limit_window": null,
    "sdk_packages": [
      {
        "package": "kagi-api-python",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/kagisearch/kagi-api-python"
      },
      {
        "package": "kagi-api-golang",
        "language": "Go",
        "official": true,
        "repo_url": "https://github.com/kagisearch/kagi-api-golang"
      },
      {
        "package": "kagi-api-rust",
        "language": "Rust",
        "official": true,
        "repo_url": "https://github.com/kagisearch/kagi-api-rust"
      },
      {
        "package": "kagi-api-typescript",
        "language": "TypeScript",
        "official": true,
        "repo_url": "https://github.com/kagisearch/kagi-api-typescript"
      }
    ],
    "mcp_url": "https://mcp.kagi.com/mcp",
    "quickstart_url": "https://help.kagi.com/kagi/api/api-portal.html"
  },
  "pricing": {
    "pricing_model": "usage_based",
    "has_published_pricing": true,
    "starting_price_usd": "12.0000",
    "price_basis": "1,000 searches",
    "free_tier_available": false,
    "free_tier_limit": null,
    "free_tier_details": null,
    "minimum_commitment": null,
    "self_serve_signup": true,
    "requires_sales_call": false,
    "requires_verification": true,
    "enterprise_plan_available": true,
    "price_points": [
      {
        "plan": null,
        "item": "Search API",
        "amount_usd": "12.0000",
        "amount_percent": null,
        "per": "1,000 requests",
        "currency": "USD",
        "source_url": "https://kagi.com/api/pricing"
      },
      {
        "plan": null,
        "item": "Extract API",
        "amount_usd": "4.0000",
        "amount_percent": null,
        "per": "1,000 pages",
        "currency": "USD",
        "source_url": "https://kagi.com/api/pricing"
      },
      {
        "plan": null,
        "item": "FastGPT API (with web search)",
        "amount_usd": "15.0000",
        "amount_percent": null,
        "per": "1,000 queries",
        "currency": "USD",
        "source_url": "https://help.kagi.com/kagi/api/fastgpt.html"
      },
      {
        "plan": null,
        "item": "FastGPT API (without web search)",
        "amount_usd": "1.5000",
        "amount_percent": null,
        "per": "1,000 queries",
        "currency": "USD",
        "source_url": "https://help.kagi.com/kagi/api/fastgpt.html"
      },
      {
        "plan": null,
        "item": "Enrichment API (Teclis web + TinyGem news)",
        "amount_usd": "2.0000",
        "amount_percent": null,
        "per": "1,000 searches",
        "currency": "USD",
        "source_url": "https://help.kagi.com/kagi/api/enrich.html"
      },
      {
        "plan": null,
        "item": "Universal Summarizer — Cecil & Agnes models (per 1k tokens)",
        "amount_usd": "0.0300",
        "amount_percent": null,
        "per": "1,000 tokens processed",
        "currency": "USD",
        "source_url": "https://help.kagi.com/kagi/api/summarizer.html"
      },
      {
        "plan": "Ultimate subscriber",
        "item": "Universal Summarizer — Cecil & Agnes models (per 1k tokens, discounted)",
        "amount_usd": "0.0250",
        "amount_percent": null,
        "per": "1,000 tokens processed",
        "currency": "USD",
        "source_url": "https://help.kagi.com/kagi/api/summarizer.html"
      },
      {
        "plan": null,
        "item": "Universal Summarizer — Muriel model (flat per summary)",
        "amount_usd": "1.0000",
        "amount_percent": null,
        "per": "summary",
        "currency": "USD",
        "source_url": "https://help.kagi.com/kagi/api/summarizer.html"
      },
      {
        "plan": "Enterprise",
        "item": "Search API (volume discount, custom rate limits, enterprise SLA)",
        "amount_usd": null,
        "amount_percent": null,
        "per": null,
        "currency": "USD",
        "source_url": "https://kagi.com/api/pricing"
      }
    ]
  },
  "compliance": {
    "soc2": "none",
    "hipaa": false,
    "gdpr": true,
    "iso_27001": false,
    "pci_dss": false,
    "sla_published": false,
    "sla_url": null,
    "data_retention_policy_url": "https://kagi.com/privacy",
    "documented_rate_limits": null,
    "known_restrictions": [
      "Extract endpoint is limited to 10 URLs per request",
      "Only Kagi API products are licensed for commercial use; non-API frontend products (e.g. Universal Summarizer UI) are non-commercial only",
      "On Family and Team plans, only the account owner can access the API portal",
      "API keys can be IP-whitelisted, restricting access to configured addresses",
      "Search queries temporarily logged for debugging and automatically purged after a short period",
      "HTTP(S) URLs only for extract endpoint",
      "Enrichment API only billed when non-zero results are returned",
      "FastGPT web_search parameter currently mandatory (disabling it returns an error)"
    ]
  },
  "developer": {
    "docs_url": null,
    "api_reference_url": "https://kagi.com/signin?r=/api",
    "openapi_spec_url": null,
    "postman_collection_url": null,
    "changelog_url": "https://kagi.com/changelog",
    "status_page_url": "https://status.kagi.com",
    "llms_txt_url": null,
    "markdown_docs_url": null,
    "rendering": "client_rendered"
  },
  "adoption": {
    "launched_at": "2018-01-01",
    "ga_date": null,
    "github_stars": null,
    "github_stars_at": null,
    "notable_customers": []
  },
  "scores": {
    "agent_friendliness": 40,
    "pricing_transparency": 85,
    "setup_speed": 60,
    "docs_quality": 30,
    "procurement_friction": 85,
    "trust_readiness": 15,
    "best_for": [
      "AI agents and automation - an agent-ready surface (MCP / llms.txt)",
      "Teams needing broad API coverage out of the box",
      "Cost-sensitive teams - low, transparent entry price"
    ],
    "avoid_if": [
      "You want to try it free before paying",
      "You have strict compliance requirements"
    ]
  },
  "sources": [
    {
      "field": "sdk_languages",
      "url": "https://kagi.com/api/docs",
      "excerpt": "Official client libraries available for: Golang, Python, TypeScript, Rust",
      "confidence": "high"
    },
    {
      "field": "vendor_description",
      "url": "https://help.kagi.com/kagi/api/search.html",
      "excerpt": "The Search API gives programmable access to Kagi's premium search results.",
      "confidence": "high"
    },
    {
      "field": "supported_actions",
      "url": "https://kagi.com/api/docs",
      "excerpt": "POST /search – a feature-rich endpoint for search products and agents; POST /extract – Extracts markdown content from up to 10 HTTP(s) URLs",
      "confidence": "high"
    },
    {
      "field": "supported_actions",
      "url": "https://help.kagi.com/kagi/api/enrich.html",
      "excerpt": "GET /enrich/web … GET /enrich/news",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "Pay only for what you use",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "We will invoice every 30 days or as soon as your usage reaches $100.",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "$12 /1k requests",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "$4 /1k pages",
      "confidence": "high"
    },
    {
      "field": "free_tier_available",
      "url": "https://help.kagi.com/kagi/api/api-portal.html",
      "excerpt": "Add payment method via the API Billing panel; Copy your auto-generated API key and store securely",
      "confidence": "high"
    },
    {
      "field": "free_tier_available",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "We will invoice every 30 days or as soon as your usage reaches $100.",
      "confidence": "high"
    },
    {
      "field": "enterprise_plan_available",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "Volume discounts, Custom rate limits, Enterprise-grade support and SLAs, Dedicated onboarding",
      "confidence": "high"
    },
    {
      "field": "soc2",
      "url": "https://help.kagi.com/kagi/privacy/security.html",
      "excerpt": "Kagi has undergone an independent security audit by Illumant ... no findings of material significance",
      "confidence": "high"
    },
    {
      "field": "soc2",
      "url": "https://blog.kagi.com/security-audit",
      "excerpt": "no findings of material significance. This indicates that the organization's applications, systems, networks and data are well protected",
      "confidence": "high"
    },
    {
      "field": "hipaa",
      "url": "https://help.kagi.com/kagi/privacy/security.html",
      "excerpt": "Kagi has undergone an independent security audit by Illumant",
      "confidence": "high"
    },
    {
      "field": "hipaa",
      "url": "https://kagi.com/privacy",
      "excerpt": "For information about your data protection rights under GDPR, CCPA, and other privacy laws, see our Privacy Rights Addendum.",
      "confidence": "high"
    },
    {
      "field": "gdpr",
      "url": "https://kagi.com/privacy",
      "excerpt": "For information about your data protection rights under GDPR, CCPA, and other privacy laws, see our Privacy Rights Addendum.",
      "confidence": "high"
    },
    {
      "field": "iso_27001",
      "url": "https://help.kagi.com/kagi/privacy/security.html",
      "excerpt": "Kagi has undergone an independent security audit by Illumant ... no findings of material significance",
      "confidence": "high"
    },
    {
      "field": "pci_dss",
      "url": "https://kagi.com/privacy",
      "excerpt": "Kagi uses external payment processors (Stripe, PayPal, OpenNode) for PCI compliance.",
      "confidence": "high"
    },
    {
      "field": "sla_published",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "Enterprise-grade support and SLAs ... Dedicated onboarding",
      "confidence": "high"
    },
    {
      "field": "sla_published",
      "url": "https://help.kagi.com/kagi/api/overview.html",
      "excerpt": "The documentation contains no information regarding SOC2, HIPAA, GDPR, ISO 27001 certifications or SLA commitments.",
      "confidence": "high"
    },
    {
      "field": "mcp_server_available",
      "url": "https://kagi.com/api/docs",
      "excerpt": "MCP Server … Hosted at https://mcp.kagi.com/mcp with HTTP Bearer authentication.",
      "confidence": "high"
    },
    {
      "field": "mcp_server_available",
      "url": "https://github.com/kagisearch/kagimcp",
      "excerpt": "The Official Model Context Protocol (MCP) server for Kagi Search & other tools.",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://kagi.com/api/docs",
      "excerpt": "Each URL is processed and the extracted content is returned in the response … up to 10 HTTP(s) URLs",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://help.kagi.com/kagi/api/enrich.html",
      "excerpt": "we bill only when non-zero results are returned",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://help.kagi.com/kagi/api/fastgpt.html",
      "excerpt": "The web_search parameter is currently mandatory; attempting to disable it results in an error",
      "confidence": "high"
    },
    {
      "field": "sandbox_available",
      "url": "https://kagi.com/api/docs",
      "excerpt": "API key from https://kagi.com/api/keys … production API endpoint is https://kagi.com/api/v1",
      "confidence": "high"
    },
    {
      "field": "supported_regions",
      "url": "https://help.kagi.com/kagi/api/search.html",
      "excerpt": "The API accepts 'any valid ISO-3166-1 Alpha-2 country code' or the special value no_region for general results.",
      "confidence": "high"
    },
    {
      "field": "auth_methods",
      "url": "https://help.kagi.com/kagi/api/search.html",
      "excerpt": "Authorization: Bot $TOKEN",
      "confidence": "high"
    },
    {
      "field": "auth_methods",
      "url": "https://kagi.com/api/docs/openapi",
      "excerpt": "HTTP Bearer scheme using API keys from https://kagi.com/api/keys",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://kagi.com/api/docs/openapi",
      "excerpt": "Base URL: `https://kagi.com/api/v1`",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://help.kagi.com/kagi/api/search.html",
      "excerpt": "curl -H \"Authorization: Bot $TOKEN\" \"https://kagi.com/api/v1/search?q=kagi+search\"",
      "confidence": "high"
    },
    {
      "field": "api_version",
      "url": "https://kagi.com/api/docs/openapi",
      "excerpt": "API Version: 1",
      "confidence": "high"
    },
    {
      "field": "api_version",
      "url": "https://help.kagi.com/kagi/api/search.html",
      "excerpt": "A legacy v0 API exists and is documented separately in \"Search API (Legacy),\" suggesting v1 is the current stable version.",
      "confidence": "high"
    },
    {
      "field": "versioning_scheme",
      "url": "https://kagi.com/api/docs/openapi",
      "excerpt": "Base URL: `https://kagi.com/api/v1`",
      "confidence": "high"
    },
    {
      "field": "versioning_scheme",
      "url": "https://help.kagi.com/kagi/api/search.html",
      "excerpt": "A legacy v0 API exists and is documented separately in \"Search API (Legacy)\"",
      "confidence": "high"
    },
    {
      "field": "stability",
      "url": "https://help.kagi.com/kagi/company/history.html",
      "excerpt": "The Kagi Search API preview opens to all users",
      "confidence": "medium"
    },
    {
      "field": "stability",
      "url": "https://help.kagi.com/kagi/api/overview.html",
      "excerpt": "v0 API deprecated in favor of v1; existing v0 credit honored during transition",
      "confidence": "medium"
    },
    {
      "field": "sdk_packages",
      "url": "https://help.kagi.com/kagi/api/overview.html",
      "excerpt": "Python: https://github.com/kagisearch/kagi-api-python; Go: https://github.com/kagisearch/kagi-api-golang; Rust: https://github.com/kagisearch/kagi-api-rust; TypeScript: https://github.com/kagisearch/kagi-api-typescript",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://help.kagi.com/kagi/api/api-portal.html",
      "excerpt": "All repositories are hosted at `github.com/kagisearch/`",
      "confidence": "high"
    },
    {
      "field": "mcp_url",
      "url": "https://kagi.com/api/docs/openapi",
      "excerpt": "MCP server hosted at https://mcp.kagi.com/mcp",
      "confidence": "high"
    },
    {
      "field": "mcp_url",
      "url": "https://github.com/kagisearch/kagimcp",
      "excerpt": "The Official Model Context Protocol (MCP) server for Kagi Search & other tools",
      "confidence": "high"
    },
    {
      "field": "quickstart_url",
      "url": "https://help.kagi.com/kagi/api/api-portal.html",
      "excerpt": "Step 1: Sign up for a Kagi account if you don't have one already. Step 2: Access settings at Settings → API or navigate to kagi.com/api",
      "confidence": "high"
    },
    {
      "field": "error_format",
      "url": "https://kagi.com/api/docs/openapi",
      "excerpt": "trace IDs available via `meta.trace` response field or `X-Kagi-Trace` header for debugging",
      "confidence": "medium"
    },
    {
      "field": "requires_verification",
      "url": "https://help.kagi.com/kagi/api/api-portal.html",
      "excerpt": "Add payment method via the API Billing panel; Copy your auto-generated API key and store securely",
      "confidence": "high"
    },
    {
      "field": "data_retention_policy_url",
      "url": "https://kagi.com/privacy",
      "excerpt": "search queries themselves are only logged temporarily for debugging purposes and are automatically purged after a short period",
      "confidence": "high"
    },
    {
      "field": "starting_price_usd",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "$12 /1k requests",
      "confidence": "high"
    },
    {
      "field": "starting_price_usd",
      "url": "https://help.kagi.com/kagi/api/api-portal.html",
      "excerpt": "The Kagi Search API is priced at $12 per 1,000 queries",
      "confidence": "high"
    },
    {
      "field": "price_basis",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "$12 /1k requests",
      "confidence": "high"
    },
    {
      "field": "price_basis",
      "url": "https://kagi.com/api/pricing",
      "excerpt": "We will invoice every 30 days or as soon as your usage reaches $100.",
      "confidence": "high"
    },
    {
      "field": "launched_at",
      "url": "https://help.kagi.com/kagi/company/history.html",
      "excerpt": "Kagi was founded by Vladimir Prelovac in May 2018 in Palo Alto, CA (USA).",
      "confidence": "high"
    },
    {
      "field": "api_style",
      "url": "https://kagi.com/api/docs/openapi",
      "excerpt": "Endpoints: POST /search – Web search with premium results and Lens support; POST /extract – Extract markdown from up to 10 URLs",
      "confidence": "high"
    }
  ],
  "fields_not_found": [
    "documented_rate_limits",
    "sla_published (SLAs mentioned for enterprise tier only, not as published uptime SLA for all users)",
    "supported_languages (no language parameter documented; results include language detection metadata but no explicit list of supported query languages)",
    "sandbox_available (no dedicated test/sandbox environment found; only live production API)",
    "rate_limit_requests",
    "rate_limit_window",
    "idempotency_supported",
    "sla_url",
    "deprecation_policy_url",
    "webhook_signing",
    "webhook_events_url",
    "ga_date",
    "free_tier_limit",
    "notable_customers"
  ],
  "source_confidence": "high",
  "last_verified_at": "2026-06-14T00:00:00.000Z",
  "contribute": {
    "note": "This data is crowd-editable. Suggest corrections or leave a review via these endpoints - no auth required, requests are rate-limited, and every submission is reviewed before it goes live. For a field edit, {field} is any key in this response and a citation is required.",
    "endpoints": [
      {
        "action": "review",
        "label": "Leave a review or comment",
        "method": "POST",
        "url": "https://apio.sh/api/feedback/kagi-search",
        "example_body": {
          "kind": "review",
          "rating": 5,
          "body": "Your experience with this API…"
        }
      },
      {
        "action": "field_edit",
        "label": "Suggest a correction to a field (cite a source)",
        "method": "POST",
        "url": "https://apio.sh/api/suggest/kagi-search/{field}",
        "example_body": {
          "value": "corrected value",
          "citations": [
            {
              "url": "https://source.example/page",
              "excerpt": "supporting quote"
            }
          ],
          "note": "what changed and why"
        }
      },
      {
        "action": "new_api",
        "label": "Suggest a new API to add",
        "method": "POST",
        "url": "https://apio.sh/api/suggest/api",
        "example_body": {
          "value": {
            "name": "Acme API",
            "website_url": "https://acme.example"
          },
          "citations": [
            {
              "url": "https://acme.example"
            }
          ]
        }
      },
      {
        "action": "token",
        "label": "Optional - raise your rate limit",
        "method": "GET",
        "url": "https://apio.sh/api/feedback/token"
      }
    ]
  }
}