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 2<sup>40</sup> 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 2<sup>44</sup> 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 Filters 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: Filters
paths:
/search/{versionNumber}/geometryFilter.{ext}:
get:
parameters:
- $ref: '#/components/parameters/versionNumber'
- $ref: '#/components/parameters/ext'
- description: List of geometries to filter by. Available types are CIRCLE (with the radius expressed in meters) and POLYGON.
example: '[{"type":"CIRCLE", "position":"40.80558, -73.96548", "radius":100}, {"type":"POLYGON", "vertices":["37.7524152343544, -122.43576049804686", "37.70660472542312, -122.43301391601562", "37.712059855877314, -122.36434936523438", "37.75350561243041, -122.37396240234374"]}]'
in: query
name: geometryList
required: true
schema:
type: string
- description: List of POIs to filter. The only required attribute of a POI is position, everything else is optional and will be echoed back when passed in.
example: '[{"poi":{"name":"S Restaurant Toms"},"address":{"freeformAddress":"2880 Broadway, New York, NY 10025"},"position":{"lat":40.80558,"lon":-73.96548}},{"poi":{"name":"Yasha Raman Corporation"},"address":{"freeformAddress":"940 Amsterdam Ave, New York, NY 10025"},"position":{"lat":40.80076,"lon":-73.96556}}]'
in: query
name: poiList
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/200'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
404/596:
$ref: '#/components/responses/404596'
5XX:
$ref: '#/components/responses/5xx'
summary: Geometry Filter
tags:
- Filters
post:
parameters:
- $ref: '#/components/parameters/versionNumber'
- $ref: '#/components/parameters/ext'
requestBody:
content:
application/json:
schema:
example:
geometryList:
- position: 40.80558,-73.96548
radius: 100
type: CIRCLE
- type: POLYGON
vertices:
- 37.7524152343544,-122.43576049804686
- 37.70660472542312,-122.43301391601562
- 37.712059855877314,-122.36434936523438
- 37.75350561243041,-122.37396240234374
poiList:
- address:
freeformAddress: 2880 Broadway, New York, NY 10025
poi:
name: S Restaurant Tom's
position:
lat: 40.80558
lon: -73.96548
properties:
geometryList:
items:
properties:
position:
type: string
radius:
type: integer
type:
type: string
vertices:
items:
type: string
type: array
type: object
type: array
poiList:
items:
properties:
address:
properties:
freeformAddress:
type: string
type: object
poi:
properties:
name:
type: string
type: object
position:
properties:
lat:
format: float
type: number
lon:
format: float
type: number
type: object
type: object
type: array
type: object
responses:
'200':
$ref: '#/components/responses/200'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
404/596:
$ref: '#/components/responses/404596'
5XX:
$ref: '#/components/responses/5xx'
summary: Geometry Filter
tags:
- Filters
/search/{versionNumber}/routedFilter/{position}/{heading}.{ext}:
get:
deprecated: true
parameters:
- $ref: '#/components/parameters/versionNumber'
- $ref: '#/components/parameters/position'
- description: The directional heading in degrees, usually similar to the course along a road segment. Entered in degrees, measured clockwise from north (so north is 0, east is 90, etc.)
example: -15.6
in: path
name: heading
required: true
schema:
format: float
type: number
- $ref: '#/components/parameters/ext'
- description: List of POIs to filter. The only required attribute of a POI is position, everything else is optional and will be echoed back when passed in.
example: '[{"poi":{"name":"Cleaire Advanced Emission Controls"},"address":{"freeformAddress":"7220 Trade St, San Diego, CA 92121"},"position":{"lat":"37.83274","lon":"-122.27631"}}]'
in: query
name: poiList
required: true
schema:
type: string
- $ref: '#/components/parameters/routingTimeout'
responses:
'200':
$ref: '#/components/responses/200'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
404/596:
$ref: '#/components/responses/404596'
5XX:
$ref: '#/components/responses/5xx'
summary: Routed Filter
tags:
- Filters
post:
deprecated: true
parameters:
- $ref: '#/components/parameters/versionNumber'
- $ref: '#/components/parameters/position'
- description: The directional heading in degrees, usually similar to the course along a road segment. Entered in degrees, measured clockwise from north (so north is 0, east is 90, etc.)
example: 90
in: path
name: heading
required: true
schema:
format: float
type: number
- $ref: '#/components/parameters/ext'
- $ref: '#/components/parameters/routingTimeout'
requestBody:
content:
application/json:
schema:
example:
poiList:
- address:
freeformAddress: 9500 Gilman Dr, San Diego, CA 92037
poi:
name: University of California San Diego
position:
lat: 32.87349
lon: -117.2378
- address:
freeformAddress: 7220 Trade St, San Diego, CA 92121
poi:
name: Cleaire Advanced Emission Controls
position:
lat: 37.83274
lon: -122.27631
properties:
poiList:
items:
properties:
address:
properties:
freeformAddress:
type: string
type: object
poi:
properties:
name:
type: string
type: object
position:
properties:
lat:
format: float
type: number
lon:
format: float
type: number
type: object
type: object
type: array
type: object
responses:
'200':
$ref: '#/components/responses/200'
'400':
$ref: '#/components/responses/400'
'403':
$ref: '#/components/responses/403'
'405':
$ref: '#/components/responses/405'
404/596:
$ref: '#/components/responses/404596'
5XX:
$ref: '#/components/responses/5xx'
summary: Routed Filter
tags:
- Filters
components:
responses:
'403':
description: "Forbidden: possible causes include:\n - Service requires SSL\n - Not authorized\n - Rate or volume limit exceeded\n - Unknown referer"
'405':
description: 'Method Not Allowed: the HTTP method (GET, POST, etc) is not supported for this request.'
5xx:
description: An error occurred while processing the request. Please try again later.
'200':
description: 'OK: the search successfully returned zero or more results.'
'400':
description: 'Bad Request: one or more parameters were incorrectly specified.'
'404596':
description: 'Not Found: the HTTP request method (GET, POST, etc) or path is incorrect.'
parameters:
versionNumber:
description: Service version number. The current value is 2.
in: path
name: versionNumber
required: true
schema:
enum:
- 2
type: integer
routingTimeout:
description: Only return results that arrive from routing engine within this time limit.
in: query
name: routingTimeout
schema:
default: 4000
type: integer
ext:
description: Expected response format.
example: xml
in: path
name: ext
required: true
schema:
enum:
- json
- jsonp
- js
- xml
type: string
position:
description: This is specified as a comma separated string composed of lat., lon.
example: 37.8328,-122.27669
in: path
name: position
required: true
schema:
type: string
securitySchemes:
api_key:
in: query
name: key
type: apiKey