How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Kardinal Core API

The Core API from Kardinal — 4 operation(s) for core.

Kardinal Core API is one of 8 APIs that Kardinal publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Core. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, a getting-started guide, and authentication docs.

This API exposes 4 operations across 4 paths, and defines 144 schemas. It is described by OpenAPI 3.2.0, at version 2.55.0.

Requests are made against a single base URL, /api/v2.

4 operations 4 paths 144 schemas 1 GET2 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
2.55.0
Base URL
https://app.kardinal.ai/api/v2
Authentication
HTTP Bearer, HTTP Bearer, HTTP Bearer, HTTP Bearer, HTTP Bearer
Resource Areas
1

Authentication & Security 5

Kardinal Core API declares 5 security schemes for authenticating requests. It accepts HTTP bearer tokens (JWT) (otp_token). It accepts HTTP bearer tokens (JWT) (gdpr_token). It accepts HTTP bearer tokens (JWT) (access_token). It accepts HTTP bearer tokens (JWT) (refresh_token). It accepts HTTP bearer tokens (JWT) (password_token). By default, every request must be authenticated.

Paths & Operations 4

Across 4 paths, the API surfaces 4 operations — 1 GET, 2 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Core 4
POST
/login
Login (returns an OTP token if MFA is configured for the user)
postLogin body → 200400403500
POST
/login/otp
Confirm login with OTP
postLoginOTP body → 200400403500
PUT
/agencies/{agencyId}/plans/{planId}
Create or update a plan
putPlan 3 params body → 200201400401403404500
GET
/agencies/{agencyId}/plans/{planId}/solution
Retrieve a plan solution
getPlanSolution 2 params → 200401403404500

Schemas 144

The contract defines 144 schemas that model the data the API accepts and returns. The most detailed are Plan (33 properties), Resource (23 properties), User (19 properties), Tour (18 properties). Each schema is shown below with its type and property counts.

WayPointBegin
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
6 properties 2 required
LoginOTPOutput
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
5 properties
CountryCodes
array
GDPRToken
string
A JSON Web Token with scope 'gdpr', to be used to approve a GDPR policy, valid for 1 hour.
EnvelopedLoginMFAOutput
object
An object containing a 'mfa' JSON Web Token, returned by a successful login of a user which needs to setup MFA authentication.
2 properties
Password
string
A user password must contain at least: - 1 number, - 1 uppercase letter, - 1 lowercase letter, - 1 special character amongst the following: !"$%&'()+,-./:; ?@[…
OrderViolation
object
Violation of a order's stops constraint.
4 properties 2 required
MaxInterStopDurationViolation
object
Violation of a resource's MaxInterStopDuration constraint.
4 properties 3 required
Duration
string
A period of time, expressed in the ISO8601 duration format.
EnvelopedErrors
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
1 property
AdditionalConstraintCapacities
object
This constraint is valid if all the capacities are satisfied.
4 properties 3 required
User
object
A user is a person who can use Platform's services.
19 properties 1 required
AdditionalConstraintMaxStopTagGroups
object
If the tour has stops whose stopTags constitute too many groups, then the tour is invalid.
4 properties 2 required
AuthorizedTimeWindowViolation
object
Violation of a stop's TimeWindow constraint.
4 properties 3 required
RegexIdValidation
string
At least one character among those allowed: unaccented alpha-numeric characters, "-", ".", "", "~", ":", "@", "!", "$", ",".
ForbiddenAssignmentViolation
object
Violation of a ForbiddenAssignment constraint.
3 properties 1 required
Properties
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
PlanObjectives
array
[TOVALIDATE] Description pending review by a Kardinal engineer.
WayPointStop
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
14 properties 2 required
OTPValue
string
A 6-digits OTP code.
AdditionalConstraintAtLeastOneConstraint
object
If one of the constraint is valid, then the tour is valid.
3 properties 2 required
SolutionObjective
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
4 properties
TimeWindow
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
2 properties 2 required
IncompatibleStopTags
array
Incompatibilities between stop tags (all elements must be different regardless of order).
AlternativesStop
object
A stop composed of different alternative single stops.
3 properties 2 required
Username
string
The username is used for login, it is unique for each user, it can be either an email (for clients) or a regular username (for Kardinal's internal users).
PlanStatus
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
5 properties
Role
string
The user's role.
CountryIds
array
A list of country identifiers.
Plan
object
A plan for a date and agency, with resource and orders associated.
33 properties 3 required
MaximizePrecedencesObjective
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
3 properties 2 required
StopTagPrecedencePair
object
A pair of precedence stop tags.
2 properties 2 required
ClientId
The client id.
CostsByResourceTag
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
SetupDuration
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
3 properties 3 required
StopKind
string
[TOVALIDATE] Description pending review by a Kardinal engineer.
MaxInterStopDurationBounds
object
Per-segment maximum duration between two consecutive stops on a tour. Each key is independent; an absent key means no constraint on that segment.
3 properties
WayPointEnd
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
6 properties 2 required
PlanState
string
The corresponding plan's state. - waiting: The plan was received and is awaiting processing. - processing: The plan is being processed. - preOptimizing: The pl…
BeginViolation
object
Violation of a warehouse Constraint at the begining of a Tour.
2 properties 1 required
CountryCode
string
A country standard name or Alpha-2 code or Alpha-3 code.
Position
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
2 properties 2 required
VehicleProfileBicycle
object
A cyclist profile. Unaffected by traffic variations.
6 properties 1 required
RegexNotEmpty
string
Not empty string.
EndViolation
object
Violation of a warehouse Constraint at the end of a Tour.
2 properties 1 required
CountryId
The country id.
VehicleProfileMotorbike
object
A motorized profile for vehicles over 125cc, unrestricted in terms of roads. Unaffected by traffic variations.
9 properties 1 required
CostFloorsAndCoeffs
object
Cost floors and coefficients. A cost cannot be empty. An overcost cannot be set if there is no cost, and the overcostFloor must be greater than costFloor.
5 properties
MaxInterStopDistanceInKmBounds
object
Per-segment maximum distance, in km, between two consecutive stops on a tour. Each key is independent; an absent key means no constraint on that segment.
3 properties
TimeWindowBreak
object
A required break of a given duration in a given time window.
3 properties 2 required
StopTagPair
array
A pair of incompatible stop tags.
AdditionalConstraintAtLeastOneValidCapacity
object
If the tour has not, at each stop, one of its capacities lower than or equal to the link limit, then the tour is invalid.
4 properties 2 required
RemovalStrategyViolation
object
Violation of a resource's RemovalStrategy constraint.
3 properties 2 required
GlobalViolationMaxCumulatedCost
object
Violation linked to a MaxCumulatedCost global constraint.
5 properties
Email
string
A valid email address.
VehicleProfileTruck
object
A heavy-weight vehicle profile. Affected by both traffic variations and road restrictions (weight, height, hazardous goods, etc.).
18 properties 1 required
UserStatus
string
The user's status.
PlanStatusVersion
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
2 properties
AgencyIds
array
A list of agency identifiers.
AvoidEarlyLoading
object
Declares a stop tag and optional capacities for early loading computation.
2 properties 1 required
RegionIds
array
A list of region identifiers.
AtLeastOneValidCapacityViolation
object
Violation of a AtLeastOneValidCapacity constraint.
4 properties 3 required
Order
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
8 properties 2 required
AdditionalConstraintForbiddenAssignment
object
Forbidden assignment by stop tag and resource tag.
4 properties 3 required
RemovalStrategyType
string
[TOVALIDATE] Description pending review by a Kardinal engineer.
EnvelopedLoginAccessOutput
object
An object containing the access and refresh JSON Web Tokens and the user description, returned by a successful login.
4 properties
GlobalConstraintMaxCumulatedCost
object
Provide an upper bound on the cost of specified resources.
4 properties 2 required
TaggedTimeWindow
object
TimeWindow with resource tags.
3 properties 2 required
Solution
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
13 properties
OptimizationDirection
string
[TOVALIDATE] Description pending review by a Kardinal engineer.
TourViolation
Semantic violations, can be handled "generically" or specifically.
AdditionalConstraintRemovalStrategy
object
If the tour does not respect the defined removal strategy, then the tour is invalid.
5 properties 1 required
AgencyId
The agency id.
VehicleProfileScooter
object
A 50cc to 125cc motorized profile, with limited access to certain highways and high-speed roads. Unaffected by traffic variations.
8 properties 1 required
FromPrevious
object
The travel distance and duration from the previous waypoint to the current one.
2 properties 2 required
ForbiddenAssignment
object
Forbidden assignment by stop tag and resource tag.
2 properties 2 required
ErrorProperties
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
AssignmentBegin
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
3 properties 2 required
MaxWorkingDurationViolation
object
Violation of a resource's MaxWorkingDuration constraint.
3 properties 3 required
VehicleProfileCar
object
A light-weight vehicle profile. Affected by traffic variations.
12 properties 1 required
PlanId
The plan id.
AssignmentEnd
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
3 properties 2 required
AccessToken
string
A JSON Web Token with scope 'access', to be used to access protected data, valid for 1 hour.
TunnelCategory
string
Tunnel category restriction for truck routing (ADR tunnel categories)
EnvelopedPlan
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
4 properties
LoginBackupCodeInput
object
Provides a backup code to fulfill the login.
1 property 1 required
SuccessiveStopsViolation
object
Violation of a order's succesive stops constraint.
3 properties 2 required
WayPointBreak
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
6 properties 1 required
Login
object
The payload to use for login.
2 properties 2 required
WaypointViolation
Semantic violations, can be handled "generically" or specifically.
Break
[TOVALIDATE] Description pending review by a Kardinal engineer.
SingleStop
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
10 properties 2 required
AtLeastOneConstraintViolation
object
Violation of a resource's AtLeastOneConstraint constraint.
3 properties 3 required
AtFirstPositionArrival
string
The resource must go back to it's Tour first position.
VehicleProfilePedestrian
object
A walking "driver" profile. Pedestrians are unaffected by traffic variations.
5 properties 1 required
DateTime
string
A full calendar date time, expressed in the ISO8601 date format: YYYY-MM-DDThh:mm:ssZ.
ObfuscatedPhoneNumber
stringnull
An obfuscated representation of the phone number used for MFA
CustomObjective
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
4 properties 4 required
CapacityViolation
object
Violation of a resource's capacity constraint.
4 properties 3 required
MaxStopTagGroupsViolation
object
Violation of a resource's MaxStopTagGroups constraint.
3 properties 2 required
EnvelopedLoginGDPROutput
object
An object containing a 'gdpr' JSON Web Token, returned by a successful login of a user which needs to approve a GDPR policy.
2 properties
WorkingDurationSlidingBreak
object
Limitation rule on max working duration without any break.
3 properties 3 required
MFAToken
string
A JSON Web Token with scope 'mfa', to be used to setup MFA authentication, valid for 1 hour.
AssignmentStop
object
The beginTime is set to arrivalTime if not setted. If the stopId is the id of an alternative, arrivalTime, beginTime, and departureTime cannot be set and the c…
6 properties 1 required
Tour
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
18 properties
AssignmentBreak
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
4 properties 3 required
State
object
[TOVALIDATE] Believed to describe a resource's manual-mode state. Needs confirmation.
2 properties
EnvelopedLoginOTPOutput
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
1 property
ResourceMode
string
[TOVALIDATE] Description pending review by a Kardinal engineer.
MaxStopSpanViolation
object
Violation of a order's MaxStopSpan constraint.
3 properties 3 required
ObfuscatedEmail
stringnull
An obfuscated representation of the email used for MFA.
WayPointStatus
string
[TOVALIDATE] Description pending review by a Kardinal engineer.
Capacities
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
Level
string
The user's level.
MaxGroupsByStopTag
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
MaxInterStopDistanceInKmViolation
object
Violation of a resource's MaxInterStopDistanceInKm constraint.
4 properties 3 required
WorkingTimeWindowViolation
object
Violation of a resource's TimeWindow constraint.
2 properties 2 required
ObjectivesEnum
string
The available optimization objectives, processed lexicographically in the order provided in Plan.objectives: - maximizeMandatoryStops: Maximizes the number of…
Resource
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
23 properties 3 required
AdditionalOperationDuration
object
Additional operation duration by stop tag and resource tag.
3 properties 3 required
ExceededNbGroups
object
The maximum number of groups and its corresponding exceeding number of groups, for a stop tag.
2 properties 2 required
StopIncompatibilityViolation
object
Violation of a resource's StopIncompatibility constraint.
4 properties 3 required
RegexPrefixedIdValidation
string
An id beginning with a prefix and an underscore.
ShippedHazardousGood
string
[TOVALIDATE] Description pending review by a Kardinal engineer.
AssignmentStatus
string
[TOVALIDATE] Description pending review by a Kardinal engineer.
RefreshToken
string
A JSON Web Token with scope 'refresh', to be used to refresh the access token, valid for 30 days.
OperationDurationPolicy
object
Policy to indicate which operation duration must not be taken into account.
2 properties 1 required
TravelDurationSlidingBreak
object
Limitation rule on max travel duration without any break.
3 properties 3 required
PlanVersion
integer
The plan version.
TimeZone
string
The time zone is a string code which identifies a region of the world in the "time zone database", also called "tz database". The tz database is a partition of…
MaxDistanceInKmViolation
object
Violation of a resource's MaxDistanceInKm constraint.
3 properties 3 required
EnvelopedSolution
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
4 properties
Cost
object
A composable cost model used by the minimizeCosts objective — every field set on this object (workedHours, km, using, and the per-stop-tag / per-capacity / per…
7 properties
Stop
[TOVALIDATE] Description pending review by a Kardinal engineer.
UserType
string
The user type.
BackupCode
string
A unique 16-characters backup code.
RegionId
The region id.
AdditionalConstraintIncompatibleStopTags
object
Incompatibility between stop tags.
4 properties 2 required
OTPType
string
Type of OTP (One-Time Password).
Error
object
[TOVALIDATE] Description pending review by a Kardinal engineer.
3 properties 2 required
LoginOTPInput
object
Provides the OTP code to fulfill the login.
1 property 1 required
SkillsViolation
object
Violation of a Skill constraint.
3 properties 1 required
TaggedCostFloorsAndCoeffs
object
1 property
VehicleProfileFly
object
A crow-fly (straight-line) mode of transportation, useful for quick testing since it is computed extremely fast.
2 properties 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

kardinal-core-api-openapi.yml Raw ↑

Other APIs Kardinal publishes across the network.

Kardinal Authenticate API
Kardinal Management API
Kardinal Order API
Kardinal Plan API
Kardinal Resource API
Kardinal Simple Plan API
Kardinal Solution API
Where this information came from

This is an independent, third-party profile of Kardinal Core API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.