kardinal-ai. For changes to the API itself, see the API changelog.
First public release, targeting API 1.0.1
- Synchronous client for every endpoint of the Route Optimization API:
plans.submit,get,update,delete,list,iter_all,start,stop,get_status, andsolutions.get,get_objectives,wait. pydanticmodels generated from the API specification, with the API’s field names and descriptions.- Misspelled keys refused before sending (
UnknownFieldError), with the closest real field name;allow_unknownto send a field the SDK doesn’t know yet. solutions.wait, which follows a plan’s optimization and returns its solution once it’s over.- Typed exceptions for every API error, with
.errors,.details, and.retryable; any403raised asKardinalLimitError. - Automatic retries of reads,
update,delete,start, andstop;submitis never retried. - Optional
kardinalcommand-line tool (pip install "kardinal-ai[cli]"), with local plan validation. - Python 3.10 or later.

