// route_optimization_api

The Route Optimization API for developers and their agents.

The Route Optimization API for developers and their agents.

Ten years of hard logistics cases, now self-serve. Build the whole thing on the free tier, and ship with an agent that knows how to model the problem, not just hit the API.
>_ Windows PowerShell
Escher logo
Dropon logo
Acteos logo
Saretec logo
Novea logo
Groom Club logo
Akanea logo
CYKE logo

// why_developers_ship_with_us

Why developers ship with us

Optimization that holds up

Ten years of hard logistics cases, in one engine. Real constraints, real routes, not toy examples.

Integrated in minutes

Typed SDKs, clear docs, forkable examples. From first call to production fast.

Transparent, free to start

Pay per stop, no quote, no sales call. The full product on the free tier, test your case before you spend a cent.

Built for agents too

MCP server, agentic docs, typed schemas. Your agent models the problem, not just the call.

// how_it_works

Three steps to your first optimized route.

01~30s
Create your account

No credit card. The free tier is live the moment you sign up.

02instant
Grab your token

A sandbox key, ready to paste into the SDK or your agent.

03POST /v1/optimize
Run your first optimization

Send vehicles, stops and constraints, get optimized routes back.

// the_old_way → deleted

Ship the diff.

Every other path to route optimization, built in-house or bought, costs you the same things: weeks, experts, and a quote. Here’s what switching looks like.

integration.md +5 −5 · time_to_first_route: weeks → minutes
@@ how_you_add_route_optimization @@
12−weeks wiring an open-source solver, still brittle in production
13−a build that needs re-tuning every time constraints change
14−a full suite you buy whole and use a fraction of
15−docs written for operations researchers, not developers
16−pricing : contact sales for a quote
12+a sandbox key, instant, no sales call
13+ten years of hard cases: cold-chain, hazmat, multi-depot
14+constraints that compose, tested past [MAX_STOPS]+ stops
15+docs your agent reads as well as you do
16+build the whole thing on the free tier, 1 stop = 1 stop

// proven_depth

Past the toy examples. Real-world constraints, handled.

Ten years of modeling depth, exposed as first-class API concepts. Toggle the constraints your operation actually has and watch the request build, this is exactly what you’d send. Every constraint, on every plan, including the free tier.

POST /api/v2/plans application/json

    
// tarification// pricing

Une tarification transparente. Payez à l'adresse.Transparent pricing. Pay per address.

Sans abonnement, sans paliers, sans appel commercial. Commencez gratuitement, puis rechargez avec des packs prépayés : le prix par adresse baisse à mesure que le volume augmente.No subscription, no tiers, no sales call. Start for free, then top up with prepaid packs: the price per address drops as volume grows.

1 000 adresses gratuites1,000 free addresses
gratuit pour démarrer, sans carte bancairefree to start, no credit card
à partir de 0,012 € / adressefrom 0.012 € / address
packs prépayés, le prix baisse avec le volumeprepaid packs, the price drops with volume
Sans expirationNever expires
les adresses n'expirent pas, aucun engagementaddresses don't expire, no commitment

Les re-optimisations sont gratuites (dans une fenêtre de 24h), vous ne payez que pour les adresses réellement optimisées.Re-optimizations are free (within a 24-hour window), you only pay for the addresses actually optimized.

Voir les tarifs → See pricing → // calculez votre facture vous-même// calculate your bill yourself

// free_tier

Build the whole thing on the free tier.

From first call to production, no payment, no sales call. 1,000 free stops to test, Python and JS/TS SDKs, full sandbox, complete docs.

The whole product, capped by volume, prove it works before you spend a cent.

WHAT'S INCLUDED
✓Full Python & JS/TS SDKs
✓The complete sandbox
✓Complete docs
✓Forkable examples
✓No feature gate
capped by volume, never by feature

// 2026_benchmark

Benchmarked against 10 route optimization APIs on real constraints.

An independent, reproducible study scored 11 route optimization engines on 149 documented business constraints across 8 sectors.

93%
Kardinal coverage
149
constraints scored
11
engines compared
Couverture par secteurCoverage by sector
score 0 → 1
Cliquez sur un moteur pour l'afficher ou le masquer, survolez pour le mettre en avant.Click an engine to show or hide it, hover to highlight.Touchez un moteur pour l'afficher ou le masquer, touchez un point pour voir son score.Tap an engine to show or hide it, tap a point to see its score.

// trust

Built to be trusted in production.

One engine, written in Rust, owned end to end. No wrapper around an open-source core, so we can answer for every result it returns.

Owned end to end

A single proprietary optimization engine, built in Rust, controlled from the algorithm to the API.

Improves weekly, never breaks

Engine updates ship 1–2× a week, each validated against a non-regression benchmark. Backward-compatible for 5+ years.

Deterministic by design

Same input, same solution, every time. Fixed-seed local search, fully reproducible. No flaky outputs to debug.

Scales for real

Autoscaling SaaS. Fire thousands of routes in under an hour, then scale back to zero.

99.95%
uptime in 2025
<1 month
median improvement lead time
EU
data residency

// quickstart

From first call to first routes in minutes.

A consistent, predictable API. Errors that are clear and actionable. Typed SDKs for Python and JS/TS. Reference docs that don’t assume an operations researcher.

cURL Python JS / TS
curl -X POST https://api.kardinal.ai/v1/optimize \
  -H "Authorization: Bearer $KARDINAL_KEY" \
  -H "Content-Type: application/json" \
  -d @plan.json

// agent_ready

Point your agent at our docs. It integrates Kardinal end-to-end.

Agents fail at route optimization because it’s a modeling problem, not a coding problem. We ship the modeling layer your agent is missing: MCP server, agentic docs, typed SDKs, skills.

Agentic docs
Written by agents, for agents, from ten years of real routing cases: modeling guides, decision trees and worked integrations your agent can actually read.
developers.kardinal.ai
MCP server
SOON
A live link to the optimization: orchestration agents query, adjust and react to running plans in real time, not just fire a request and wait.
npx @kardinal/mcp
Typed SDKs
Python and TypeScript, typed end to end, the types are the spec.
pip · npm
CLI & guardrails for agents
SOON
Your agent gets every plan reviewed before submitting it, and learns why a stop was left unassigned.
kardinal review <plan_id>

An auto-generated MCP can call an endpoint. It can’t model a pickup-and-delivery problem with legal driver breaks. The modeling layer is the product, that’s what your agent gets here and nowhere else.

Your first optimized route is five minutes away.

No sales call. No credit card.  1 000 free stops, enough to take your integration all the way to done.

Want to talk to our experts? → Contact us

Your first optimized route is five minutes away.

No sales call. No credit card.  1 000 free stops, enough to take your integration all the way to done.

Want to talk to our experts? → Contact us

// kardinal_factory

Need it modeled, deployed and run for you?

For large-scale managed operations, Kardinal Factory models, deploys and operates optimization with your teams. A different universe, same company.