TomTom Filters API

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

Operations 4

GET /search/{versionNumber}/geometryFilter.{ext} Geometry Filter #
POST /search/{versionNumber}/geometryFilter.{ext} Geometry Filter #
GET /search/{versionNumber}/routedFilter/{position}/{heading}.{ext} Routed Filter #
POST /search/{versionNumber}/routedFilter/{position}/{heading}.{ext} Routed Filter #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tomtom-filters-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tomtom-filters-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    name: Contact Us
    url: https://developer.tomtom.com/contact-us
    x-twitter: TomTom
  description: Search API is a RESTful API that allows developers to run a single line fuzzy search for addresses and POIs. Search API returns the latitude/longitude of a specific address, cross street, geographic feature, or point of interest (POI).
  title: Search Filters API
  version: 1.0.0
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
      operationId: getSearchByVersionNumberGeometryFilter{ext}
      x-operation-id-source: derived
    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
      operationId: postSearchByVersionNumberGeometryFilter{ext}
      x-operation-id-source: derived
  /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
      operationId: getSearchByVersionNumberRoutedFilterByPositionByHeading}{ext
      x-operation-id-source: derived
    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
      operationId: postSearchByVersionNumberRoutedFilterByPositionByHeading}{ext
      x-operation-id-source: derived
components:
  responses:
    '404596':
      description: 'Not Found: the HTTP request method (GET, POST, etc) or path is incorrect.'
    5xx:
      description: An error occurred while processing the request. Please try again later.
    '400':
      description: 'Bad Request: one or more parameters were incorrectly specified.'
    '405':
      description: 'Method Not Allowed: the HTTP method (GET, POST, etc) is not supported for this request.'
    '200':
      description: 'OK: the search successfully returned zero or more results.'
    '403':
      description: "Forbidden: possible causes include:\n  - Service requires SSL\n  - Not authorized\n  - Rate or volume limit exceeded\n  - Unknown referer"
  parameters:
    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
    versionNumber:
      description: Service version number. The current value is 2.
      in: path
      name: versionNumber
      required: true
      schema:
        enum:
        - 2
        type: integer
    ext:
      description: Expected response format.
      example: xml
      in: path
      name: ext
      required: true
      schema:
        enum:
        - json
        - jsonp
        - js
        - xml
        type: string
    routingTimeout:
      description: Only return results that arrive from routing engine within this time limit.
      in: query
      name: routingTimeout
      schema:
        default: 4000
        type: integer
  securitySchemes:
    api_key:
      in: query
      name: key
      type: apiKey