openapi: 3.0.0 info: contact: x-twitter: TomTom description: "The Maps API web services suite offers the following APIs:\n - Raster\n The Maps Raster API renders map data that is divided into gridded sections called tiles. Tiles are square images (png or jpg format) in various sizes which are available at 19 different zoom levels, ranging from 0 to 20. For zoom level 0, the entire earth is displayed on one single tile, while at zoom level 20, the world is divided into 240 tiles.\n - Vector\n Similar to Maps Raster API, the Maps Vector API serves data on different zoom level ranging from 0 to 22. For zoom level 0, the entire earth is displayed on one single tile, while at zoom level 22, the world is divided into 244 tiles.\n The Maps Vector Service delivers geographic map data packaged in a vector representation of squared sections called vector tiles. Each tile includes pre-defined collections of map features (points, lines, road shapes, water polygons, building footprints, ect.) delivered in one of the specified vector formats. Format of the tile is formally described using protobuf schema." title: Maps Additional Data Routing API version: 1.0.0 x-apisguru-categories: - location x-logo: url: https://twitter.com/TomTom/profile_image?size=original x-origin: - converter: url: https://github.com/lucybot/api-spec-converter version: 2.7.31 format: openapi url: https://developer.tomtom.com/system/files/swagger_models/maps_api_0.yaml version: '3.0' x-providerName: tomtom.com x-serviceName: maps servers: - url: https://api.tomtom.com security: - api_key: [] tags: - name: Routing description: Route calculation between locations paths: /routing/{versionNumber}/calculateRoute/{locations}/{contentType}: get: operationId: calculateRoute summary: Calculate Route description: Calculates a route between two or more locations. Supports optimization for fastest, shortest, or eco routes with traffic consideration. tags: - Routing parameters: - name: versionNumber in: path required: true schema: type: integer enum: - 1 description: Service version number - name: locations in: path required: true schema: type: string description: Colon-separated list of coordinates (lat,lon:lat,lon) example: 52.50931,13.42936:52.50274,13.43872 - name: contentType in: path required: true schema: type: string enum: - json - jsonp - xml - name: routeType in: query schema: type: string enum: - fastest - shortest - eco - thrilling description: Optimization type for route calculation - name: traffic in: query schema: type: boolean description: Use real-time traffic data - name: avoid in: query schema: type: string description: Comma-separated list of things to avoid (tollRoads, motorways, ferries, etc.) - name: travelMode in: query schema: type: string enum: - car - truck - taxi - bus - van - motorcycle - bicycle - pedestrian - name: departAt in: query schema: type: string format: date-time description: Departure time for historical traffic - name: arriveAt in: query schema: type: string format: date-time description: Desired arrival time - name: maxAlternatives in: query schema: type: integer minimum: 0 maximum: 5 description: Number of alternative routes to return - name: instructionsType in: query schema: type: string enum: - coded - text - tagged - name: language in: query schema: type: string description: Language tag for instructions (e.g., en-US) - name: vehicleMaxSpeed in: query schema: type: integer description: Maximum speed of the vehicle (km/h) - name: vehicleWeight in: query schema: type: integer description: Vehicle weight (kg) - name: vehicleAxleWeight in: query schema: type: integer description: Weight per axle (kg) - name: vehicleLength in: query schema: type: number description: Vehicle length (meters) - name: vehicleWidth in: query schema: type: number description: Vehicle width (meters) - name: vehicleHeight in: query schema: type: number description: Vehicle height (meters) - name: vehicleCommercial in: query schema: type: boolean description: Whether vehicle is used for commercial purposes - name: vehicleLoadType in: query schema: type: string description: Types of cargo carried - name: computeTravelTimeFor in: query schema: type: string enum: - none - all - name: sectionType in: query schema: type: string - name: report in: query schema: type: string enum: - effectiveSettings - name: callback in: query schema: type: string description: Callback function name for JSONP responses: '200': description: Route calculation result content: application/json: schema: $ref: '#/components/schemas/RouteResponse' post: operationId: calculateRoutePost summary: Calculate Route (POST) description: Calculates a route using POST for complex requests with additional body parameters. tags: - Routing parameters: - name: versionNumber in: path required: true schema: type: integer enum: - 1 - name: locations in: path required: true schema: type: string - name: contentType in: path required: true schema: type: string enum: - json requestBody: required: false content: application/json: schema: type: object properties: supportingPoints: type: array items: $ref: '#/components/schemas/LatLon' avoidVignette: type: array items: type: string allowVignette: type: array items: type: string avoidAreas: type: object responses: '200': description: Route calculation result content: application/json: schema: $ref: '#/components/schemas/RouteResponse' components: schemas: LatLon: type: object properties: latitude: type: number format: double longitude: type: number format: double RouteSummary: type: object properties: lengthInMeters: type: integer travelTimeInSeconds: type: integer trafficDelayInSeconds: type: integer trafficLengthInMeters: type: integer departureTime: type: string format: date-time arrivalTime: type: string format: date-time noTrafficTravelTimeInSeconds: type: integer historicTrafficTravelTimeInSeconds: type: integer liveTrafficIncidentsTravelTimeInSeconds: type: integer Route: type: object properties: summary: $ref: '#/components/schemas/RouteSummary' legs: type: array items: $ref: '#/components/schemas/RouteLeg' sections: type: array items: type: object guidance: type: object RouteResponse: type: object properties: formatVersion: type: string routes: type: array items: $ref: '#/components/schemas/Route' RouteLeg: type: object properties: summary: $ref: '#/components/schemas/RouteSummary' points: type: array items: $ref: '#/components/schemas/LatLon' securitySchemes: api_key: in: query name: key type: apiKey