AI Law Tracker Bills API

The Bills API from AI Law Tracker — 2 operation(s) for bills.

Operations 2

GET /bills Curated landmark-bill index #
GET /bills/{slug} One landmark bill: sources, citations, cross-links #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ai-law-tracker-com:ai-law-tracker-com-bills-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ai-law-tracker-com-bills-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AI Law Tracker — Public Laws Bills API
  version: v1
  description: Read-only, versioned JSON API over the audited AI-regulation dataset (US state + federal, EU, and global). FREE beta. Data is CC BY 4.0 — attribution required. Informational only, not legal advice.
  license:
    name: CC BY 4.0
    url: https://creativecommons.org/licenses/by/4.0/
servers:
- url: https://ai-law-tracker.com/api/v1
security:
- {}
- ApiKeyAuth: []
- BearerAuth: []
tags:
- name: Bills
paths:
  /bills:
    get:
      summary: Curated landmark-bill index
      description: The named, name-searchable AI laws (valid slugs for /bills/{slug}), from the primary-sourced landmark registry. Free.
      responses:
        '200':
          description: List of { slug, bill_number, title, jurisdiction, status, deadline, official_url, verified_on }.
      operationId: listBills
      tags:
      - Bills
  /bills/{slug}:
    get:
      summary: 'One landmark bill: sources, citations, cross-links'
      description: One curated bill — core fields, tiered source URLs, citations (identifier + audited alternate names), and cross-links. Where a matching legal_records row exists, the response binds the live change timeline (links.history → /laws/{id}/history). Primary-sourced; the DB binding is best-effort (a miss omits the link, never fabricates it).
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
        description: A bill slug (see /bills).
      responses:
        '200':
          description: The bill detail.
        '404':
          description: Unknown bill
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      operationId: getBill
      tags:
      - Bills
components:
  schemas:
    Error:
      type: object
      properties:
        api_version:
          type: string
        error:
          type: object
          properties:
            code:
              type: string
              example: rate_limited
            message:
              type: string
            docs:
              type: string
            retry_after:
              type: integer
              description: Seconds (429 only).
          required:
          - code
          - message
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
    BearerAuth:
      type: http
      scheme: bearer
x-news:
  description: GET /v1/news copyright + tier gate. We serve ONLY the headline, a short excerpt, the publisher name and the source URL — never full article text. Free = a taste (newest headlines only, low volume, excerpt withheld); Developer+ = the full archive, high volume + the excerpt.
  recency_window_days:
    anonymous: 14
    free_key: 45
    developer: null
    pro: null
    business: null
  excerpt: Developer+ only (withheld on the free/anon taste).
x-webhooks:
  description: Outbound change notifications. Subscribe with POST /v1/webhooks; deliveries are POSTed to target_url with an HMAC-SHA256 signature.
  events:
  - law.created
  - law.updated
  payload:
    $ref: '#/components/schemas/WebhookPayload'
  headers:
    X-ALT-Signature: sha256=<hex HMAC-SHA256 of `${timestamp}.${rawBody}` under your signing_secret>
    X-ALT-Timestamp: Unix seconds; folded into the signed content (reject if skew is large).
    X-ALT-Event: law.created | law.updated
    X-ALT-Delivery: Delivery uuid — use as an idempotency key.
    X-ALT-Webhook-Id: The subscription uuid.
  delivery: At-least-once. Up to 6 attempts with exponential backoff; 10 consecutive failures auto-disable the webhook. De-duplicate on X-ALT-Delivery / event_id.
  verify_example_node: "const crypto = require('crypto');\nfunction verify(req, secret) {\n  const ts = req.headers['x-alt-timestamp'];\n  const sig = (req.headers['x-alt-signature'] || '').replace(/^sha256=/, '');\n  const expected = crypto.createHmac('sha256', secret).update(`${ts}.${req.rawBody}`).digest('hex');\n  const a = Buffer.from(sig), b = Buffer.from(expected);\n  return a.length === b.length && crypto.timingSafeEqual(a, b);\n}"
x-rate-limits:
  description: 'A KEY IS REQUIRED on every data endpoint (since 2026-08-20); a keyless request answers 401 key_required. Free keys are self-serve and need no card — POST /v1/keys, or https://ai-law-tracker.com/developers#get-key. Open without a key: /v1/health, /v1/openapi.json, /v1/keys, /v1/checkout, /v1/auth, /v1/us-law/taxonomy and /v1/us-law/jurisdictions. Per-key limits are enforced by the gate; every response carries X-RateLimit-Limit/Remaining/Reset and a 429 includes Retry-After. Per-key overrides (rate_limit/daily_limit/monthly_limit) take precedence over the tier defaults — GET /v1/me always reports YOUR effective numbers.'
  keyless: not served — 401 key_required (see the open-endpoint list above)
  free_key: 60 req/min, 300 req/day, 9000 req/month
  starter: 150 req/min, 5000 req/day, 150000 req/month
  pro: 300 req/min, 10000 req/day, 300000 req/month
  business: 1000 req/min, 15000 req/day, 450000 req/month
  oem: 1500 req/min, 20000 req/day, 600000 req/month
  enterprise: 2000 req/min, 2000000 req/day (custom above this — contact sales)
  us_law_platform:
    us_free: US Law — Free — 60 req/min, 500 req/day, 750 records/day
    us_entry: US Law — Starter — 100 req/min, 5000 req/day, 2500 records/day
    us_solo: US Law — Solo — 150 req/min, 10000 req/day, 2800 records/day
    us_starter: US Law — Pro — 300 req/min, 25000 req/day, 3100 records/day
    us_pro: US Law — Business — 600 req/min, 100000 req/day, 75000 records/day
    us_enterprise: US Law — Enterprise — 2000 req/min, 500000 req/day, 250000 records/day
x-pricing:
  description: Two product lines over two corpora. AI Law Tracker sells the AI-specific corpus (/laws, /search, /news, the interpreted obligations layer); the US Law Platform sells the general US-law corpus (/us-law) and is metered on RECORDS SERVED rather than requests. A key is licensed for one line or the other (or both). See https://ai-law-tracker.com/pricing.
  ai_law:
  - id: free
    name: Free
    price_usd_month: 0
    self_serve: false
    note: Demo & prototyping
  - id: starter
    name: Starter
    price_usd_month: 49
    self_serve: true
    note: Ship your first integration
  - id: pro
    name: Pro
    price_usd_month: 99
    self_serve: true
    note: AI products & vendors
  - id: business
    name: Business
    price_usd_month: 299
    self_serve: true
    note: Vendors, firms & gov-affairs
  - id: oem
    name: OEM / White-label
    price_usd_month: 499
    self_serve: false
    note: Embed & redistribute the data
  - id: enterprise
    name: Enterprise
    price_usd_month: null
    self_serve: false
    note: Big 4, insurers & RegTech platforms
  us_law:
  - id: us_free
    name: US Law — Free
    price_usd_month: 0
    records_per_day: 750
    self_serve: false
    note: Evaluate the corpus before you commit
  - id: us_entry
    name: US Law — Starter
    price_usd_month: 99
    records_per_day: 2500
    self_serve: true
    note: Evaluate in production, on one project
  - id: us_solo
    name: US Law — Solo
    price_usd_month: 199
    records_per_day: 2800
    self_serve: true
    note: One developer, one application
  - id: us_starter
    name: US Law — Pro
    price_usd_month: 499
    records_per_day: 3100
    self_serve: true
    note: A team building on the corpus, over the API
  - id: us_pro
    name: US Law — Business
    price_usd_month: 1500
    records_per_day: 75000
    self_serve: false
    note: Pipelines & bulk export, under licence
  - id: us_enterprise
    name: US Law — Enterprise
    price_usd_month: null
    records_per_day: 250000
    self_serve: false
    note: Platforms, insurers & redistribution
  retired:
  - id: developer
    name: Developer
    price_usd_month: 29
    note: Withdrawn from sale 2026-08-19. Existing keys keep every limit and capability they had; no new checkout is accepted. Replaced by Starter ($49).
x-attribution: Data by AI Law Tracker (CC BY 4.0) — https://ai-law-tracker.com