gankdat docs

← home · machine-readable spec: /openapi.json · MCP endpoint for agents: /mcp

Quickstart (60 seconds, no JS needed)

# 1. Get a free key (250 req/mo, shown once) from the signup form at
#    https://gankdat.com  (signup is bot-protected)

# 2. Query procurement notices by value and CPV code (filters combine with AND)
curl -H "Authorization: Bearer fapi_..." \
  "https://gankdat.com/v1/data/uk-tenders?value_amount_min=1000000&cpv_codes=45&status=active"

# 3. Query planning applications
curl -H "Authorization: Bearer fapi_..." \
  "https://gankdat.com/v1/data/uk-planning?authority=109&q=extension&per_page=5"

# 4. Check your usage (free)
curl -H "Authorization: Bearer fapi_..." https://gankdat.com/v1/usage

For AI agents

# MCP (Streamable HTTP) — tools: list_sources, query_uk_tenders, query_uk_planning, get_usage
"mcpServers": { "gankdat": {
  "url": "https://gankdat.com/mcp",
  "headers": { "Authorization": "Bearer fapi_..." } } }

# x402 pay-per-request (no account): GET /x402/data/uk-tenders → HTTP 402 → pay → retry

Every response uses the same envelope: {"ok":true,"data":…,"meta":…} or {"ok":false,"error":{"code","message","docs_url"}}. Errors carry stable codes (unauthorized, quota_exceeded, rate_limited, …) and validation failures list per-field details. Full reference below ↓