TomTom Filters API

The Filters API from TomTom — 2 operation(s) for filters.

OpenAPI Specification

tomtom-filters-api-openapi.yml Raw ↑
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