Every law as structured data

One API call to search, read, and track changes across legislation from 14 countries. Free to start.

What are you building?Get your free API key
Early adopters get 5,000 calls/month free — forever. Standard free tier drops to 2,000.
659,758+ laws
31 countries
749,315+ reforms tracked

Typed end-to-end, zero-config, retries + webhook verification built in.

Python
PyPI
pip install legalize
from legalize import Legalize client = Legalize() for law in client.laws.iter("es"): print(law.id)
Node
npm
npm install @legalize-dev/sdk
import { Legalize } from "@legalize-dev/sdk"; const client = new Legalize(); for await (const law of client.laws.iter("es")) console.log(law.id);
go get github.com/legalize-dev/legalize-sdks/go
client, _ := legalize.New() defer client.Close() iter := client.Laws().Iter(ctx, "es", nil) // pull-based: iter.Next(ctx)

Set LEGALIZE_API_KEY in your environment. Every SDK reads it automatically — no argument needed.

from legalize import Legalize client = Legalize() # Search the Spanish civil code, auto-paginated for law in client.laws.search_iter("es", q="propiedad intelectual"): print(law.id, law.title)
import { Legalize } from "@legalize-dev/sdk"; const client = new Legalize(); // Search the Spanish civil code, auto-paginated for await (const law of client.laws.searchIter("es", "propiedad intelectual")) { console.log(law.id, law.title); }
client, _ := legalize.New() defer client.Close() iter := client.Laws().SearchIter(ctx, "es", "propiedad intelectual", nil) for { law, ok, err := iter.Next(ctx) if err != nil || !ok { break } fmt.Println(law.ID, law.Title) }
export KEY="leg_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" curl -H "Authorization: Bearer $KEY" \ "https://legalize.dev/api/v1/es/laws?q=propiedad+intelectual"
Time-travel

Every law has a git history

Each reform is a commit, and you can fetch the text of any law at any past revision with one call. No other legal API ships this.

Structured

Markdown + typed metadata

Body as clean Markdown, frontmatter with jurisdiction, status, dates, reform IDs. Drop into a RAG pipeline without scraping HTML.

Cross-border

One API, 31 countries

ES, FR, DE, AT, SE, LV, LT, PT, UY, CL, and counting. Same schema, same Bearer token. No per-country onboarding.

Webhooks

React in real time

Register an endpoint, receive signed deliveries when a law is created, updated or repealed. SDK verifies the HMAC for you.

Three tiers. Every country on every tier. No card on the free one. Full pricing →

Free

€0

2,000 requests/month, all countries, OpenAPI spec.

Early adopters: 5,000/month, forever.

Enterprise

€149+ /month

Custom volume (2M+), bulk export, semantic search, SLA.

For scale and compliance platforms.

See all →
2026-04-15 Account deletion v0.13.0
2026-04-14 8 new countries, 250K+ laws v0.12.0
2026-04-13 New UI languages, email preferences v0.11.0

Start here

Quickstart →

Install, authenticate, first call.

Essentials

Authentication →

Bearer tokens, env vars, rotation.

Essentials

Pagination →

Lazy iterators across large result sets.

Advanced

Time-travel →

Fetch any law at any past revision.

Advanced

Webhooks →

Signed event deliveries, verification.

Reference

API reference →

Every endpoint, with try-it panel.

What will you build?

Compliance dashboards. Legal AI assistants. Reform trackers. Civic tech tools. Journalism investigations. Academic research. The data is here — the rest is up to you.

Get your free API key