# Kardinal API > Documentation for Kardinal's self-service logistics optimization API. ## Docs - [Calculer une tournée optimisée](https://developers.kardinal.ai/api-reference/calculer-une-tournée-optimisée.md): À compléter : schéma de requête (véhicules, commandes, contraintes) et de réponse (tournée calculée). - [Data security and handling](https://developers.kardinal.ai/concepts/data-security.md): Hosting and compliance for delivery and end-customer data. - [Hard vs soft constraints](https://developers.kardinal.ai/concepts/hard-vs-soft-constraints.md): Feasibility logic and why a problem can be declared infeasible. - [How the optimization engine works](https://developers.kardinal.ai/concepts/how-the-optimization-engine-works.md): What is minimized/maximized, and the trade-off between solution quality and computation time. - [Sync/async architecture](https://developers.kardinal.ai/concepts/sync-async-architecture.md): What determines response time depending on problem size. - [Complete route walkthrough](https://developers.kardinal.ai/getting-started/complete-tour-walkthrough.md): Model a representative case: multiple vehicles, depots, and time windows, through to a usable result. - [First API call](https://developers.kardinal.ai/getting-started/first-api-call.md): Get a sandbox key and calculate your first route in under 15 minutes. - [Modeling advanced constraints](https://developers.kardinal.ai/guides/advanced-constraints.md): Heterogeneous capacities, driver skills, mandatory breaks, multiple time windows. - [Authentication and API keys](https://developers.kardinal.ai/guides/authentication.md): Key generation, rotation, and storage best practices. - [Handling infeasibility](https://developers.kardinal.ai/guides/handling-infeasibility.md): Interpret a no-solution response and diagnose the constraint at fault. - [Handling large volumes](https://developers.kardinal.ai/guides/handling-large-volumes.md): Batch import, pagination, and async mode for long-running calculations. - [Migrating between API versions](https://developers.kardinal.ai/guides/migrating-api-versions.md): Version differences, deprecations, and a migration checklist. - [Real-time re-optimization](https://developers.kardinal.ai/guides/real-time-reoptimization.md): Trigger a recalculation following a disruption (delay, cancellation, urgent order). - [Moving from sandbox to production](https://developers.kardinal.ai/guides/sandbox-to-production.md): Environment differences and a production launch checklist. - [Changelog](https://developers.kardinal.ai/reference/changelog.md): API version history. - [Data model](https://developers.kardinal.ai/reference/data-model.md): Dictionary of the Vehicle, Order/Task, Depot, Constraint, and Time window objects. - [Error codes](https://developers.kardinal.ai/reference/error-codes.md): Table of business errors and their meaning, beyond generic HTTP codes. - [Glossary](https://developers.kardinal.ai/reference/glossary.md): Unified terminology used throughout the Kardinal documentation. - [Limits and quotas](https://developers.kardinal.ai/reference/limits-and-quotas.md): Rate limits, maximum payload size, computation time, and SLA. ## OpenAPI Specs - [openapi](https://developers.kardinal.ai/openapi.json)