Category Search

Service version: 2
Last edit: 2022.09.07

Purpose

If your search use case only requires POI (Points of Interest) results filtered by category, you may use the Category Search endpoint. This endpoint will only return POI results which are categorized as specified.

Run this endpoint

You can easily run this and other endpoints. Go to the TomTom API Explorer page and follow the directions.

List of available categories

Note: This category list is subject to change with a new data release.

Available categories

"(sub) urban", "access gateway", "administrative area", "administrative division", "adventure sports venue", "adventure vehicle", "advertising/marketing", "afghan", "african", "agricultural school", "agricultural supplies", "agricultural technology", "agriculture", "airfield", "airline", "airline access", "airport", "algerian", "ambulance unit", "american", "amphitheater", "amusement arcade", "amusement park", "amusement place", "anabranch", "animal services", "animal shelter", "antique/art", "apartment", "aquaculture facility", "aquatic zoo marine park", "arabian", "arboreta botanical gardens", "arch", "argentinean", "armenian", "art school", "ashram", "asian (other)", "asylum", "athletic", "athletic field", "atv/snowmobile", "australian", "austrian", "automatic teller machine", "automobile", "automobile manufacturing", "automotive dealer", "bags leatherwear", "balloonport", "bank", "bank(s)", "banks", "banquet rooms", "bar", "barbecue", "baseball", "basketball", "basque", "battlefield", "bay", "beach", "beach club", "beaches", "beauty salon", "beauty supplies", "bed breakfast guest houses", "belgian", "betting station", "bistro", "blood bank", "boat", "boat launching ramp", "boating equipment accessories", "bodyshops", "bolivian", "book shops", "bosnian", "bowling", "brazilian", "brewery", "bridge", "bridge tunnel operations", "british", "buffet", "building", "building (point)", "bulgarian", "bungalow", "burmese", "bus", "bus charter rentals", "bus lines", "bus station", "bus stop", "cabaret", "cabins lodges", "cable telephone", "cafeterias", "café", "café/pub", "californian", "cambodian", "camping ground", "canadian", "cape", "capital of a political entity", "car", "car glass replacement shops", "car wash", "caravan site", "caribbean", "cash dispenser", "casino", "castle", "catering", "cave", "cd's, dvd videos", "cd/video rental", "cemetery", "center", "chalet", "chemicals", "chicken", "child care facility", "chilean", "chinese", "christmas/holiday store", "church", "cinema", "city center", "cleaning services", "cliff(s)", "clinic", "closed", "clothing accessories: children", "clothing accessories: footwear shoe repairs", "clothing accessories: general", "clothing accessories: men", "clothing accessories: specialty", "clothing accessories: women", "club association", "coach stop", "coal mine(s)", "coast guard station", "cocktail bar", "coffee shop", "college", "college/university", "colombian", "comedy club", "commercial building", "common", "communication center", "community center", "company", "computer data services", "computer software", "concert hall", "condominium complex", "construction", "construction material equipment", "convenience stores", "convent", "coral reef(s)", "corsican", "cottage", "country house", "courthouse", "cove", "cove(s)", "crater lake", "crater lakes", "crater(s)", "creole-cajun", "cricket ground", "crêperie", "cuban", "culinary school", "cultural center", "currency exchange", "customs house", "customs post", "cypriot", "czech", "dairy", "dam", "dance studio school", "danish", "delicatessen", "dentist", "department store", "dependent political entity", "desert", "dinner theater", "diplomatic facility", "discotheque", "dispensary", "diversified finanacials", "dock(s)", "docking basin", "dockyard", "doctor", "dominican", "dongbei", "doughnuts", "drive through bottle shop", "drive-in cinema", "driving school", "drug store", "dry cleaners", "dune", "dutch", "egyptian", "electric vehicle station", "electrical appliance", "electrical, office it: camera's photography", "electrical, office it: computer computer supplies", "electrical, office it: consumer electronics", "electrical, office it: office equipment", "electronics", "embassy", "emergency medical service", "english", "entertainment", "equipment rental", "erotic", "estate(s)", "ethiopian", "exchange", "exhibition convention center", "exotic", "factory", "factory outlet", "fairground", "farm", "farm village", "farmers", "farms", "farmstead", "fast food", "ferry", "ferry terminal", "field(s)", "fifth-order administrative division", "filipino", "finnish", "fire station/brigade", "first-order administrative division", "fishing area", "fishing hunting area", "fitness club center", "flats/apartment complex", "florists", "flying club", "fondue", "food drinks: bakers", "food drinks: butchers", "food drinks: fishmongers", "food drinks: food markets", "food drinks: food shops", "food drinks: green grocers", "food drinks: grocers", "food drinks: wine spirits", "football", "forest area", "forest reserve", "forest station", "forest(s)", "fort", "fossilized forest", "foundry", "fourth-order administrative division", "fracture zone", "free trade zone", "french", "frontier crossing", "fuel depot", "funeral service mortuaries", "furniture/home furnishings", "furrow", "fusion", "gap", "garden(s)", "gas-oil separator plant", "gasfield", "gate", "general", "general car repair servicing", "general practitioner", "geographic feature", "german", "geyser", "ghat", "gifts, cards, novelties souvenirs", "glacier(s)", "glassware/ceramic", "gold exchange", "gold mine(s)", "golf course", "gorge(s)", "government office", "grassland", "grave", "gravel area", "grazing area", "greek", "grill", "guangdong", "guest house", "gulf", "gully", "gurudwara", "hairdressers barbers", "halting place", "hamburgers", "hammock(s)", "hanging valley", "harbor", "harbor(s)", "hardware", "hawaiian", "headland", "headwaters", "health care service", "heath", "helipad/helicopter landing", "heliport", "hermitage", "high school", "hiking", "hill", "hills", "historic site", "historical administrative division", "historical first-order administrative division", "historical fourth-order administrative division", "historical park", "historical political entity", "historical populated place", "historical region", "historical second-order administrative division", "historical site", "historical third-order administrative division", "hobby/free time", "hockey club", "hole", "holiday rental", "home appliance repair", "homestead", "horse racing", "horse riding", "horticulture", "hospital", "hospital for women children", "hospital of chinese medicine", "hospital/polyclinic", "hostel", "hot pot", "hot spring(s)", "hotel", "hotel/motel", "house garden: carpet/floor coverings", "house garden: curtains/textiles", "house garden: do-it-yourself centers", "house garden: furniture fittings", "house garden: garden centers services", "house garden: glass windows", "house garden: kitchens bathrooms", "house garden: lighting", "house garden: painting decorating", "hunan", "hungarian", "hunting reserve", "ice cream parlor", "ice hockey", "ice skating rink", "import/export distribution", "important tourist attraction", "indian", "indonesian", "industrial area", "industrial building", "informal", "insurance", "international", "internet café", "investment advisors", "iranian", "irish", "island", "islands", "islet", "israeli", "israeli settlement", "italian", "jamaican", "japanese", "jazz club", "jetty", "jewelry, clocks watches", "jewish", "junior college/community college", "karaoke club", "korean", "kosher", "lagoon", "lakeshore", "language school", "large_airport", "latin american", "laundry", "lebanese", "legal services", "leisure center", "leprosarium", "library", "lighthouse", "local", "local government office", "local specialities", "locale", "locality", "lottery shop", "luxembourgian", "macrobiotic", "maghrib", "mail/package/freight delivery", "mall", "maltese", "manufacturing", "manufacturing facility", "marina", "marine electronic equipment", "market", "marsh/swamp/vlei", "mauritian", "mausoleum/grave", "mechanical engineering", "media facility", "medical center", "medical supplies equipment", "mediterranean", "medium_airport", "memorial", "metro", "metro station", "mexican", "microbrewery/beer garden", "middle eastern", "middle school", "military authority", "military base", "military installation", "military school", "mineral/hot springs", "mining", "mission", "mobile phone shop", "monastery", "mongolian", "monument", "moroccan", "mosque", "motel", "motor sport", "motorcycle", "motorcycle repair", "motoring organization office", "mountain bike", "mountain pass", "mountain peak", "moving storage", "multi-purpose", "museum", "music center", "musical instruments", "mussels", "nail salon", "national", "native reservation", "natural attraction", "nature reserve", "naval base", "neighbourhood", "nepalese", "netball", "newsagents tobacconists", "nightlife", "non governmental organization", "norwegian", "oasis", "observation point", "observatory", "oem", "office building", "oil natural gas", "open parking area", "opera", "opera house", "opticians", "order 1 area", "order 2 area", "order 3 area", "order 4 area", "order 5 area", "order 6 area", "order 7 area", "order 8 area", "order 9 area", "organic", "oriental", "pagoda", "pakistani", "palace", "pan", "park", "park headquarters", "park recreation area", "parking garage", "parking lot", "parkway", "passenger transport ticket office", "pawn shop", "pedestrian subway", "personal care facility", "personal service", "peruvian", "pet supplies", "petrol station", "pharmaceuticals", "pharmacy", "photo lab/development", "photocopy", "picnic area", "pier", "pizza", "place of worship", "plain/flat", "planetarium", "plateau", "police post", "police station", "polish", "polynesian", "populated locality", "populated place", "populated places", "port", "port/warehouse facility", "portage", "portuguese", "post office", "power station", "pre school", "preserve", "primary producer", "primary resource/utility", "primary school", "prison", "prison/correctional facility", "private authority", "private club", "promenade", "promontory(-ies)", "provençal", "province", "pub", "pub food", "public", "public amenity", "public authority", "public call box", "public health technologies", "public transport stop", "publishing technologies", "pyramid", "pyramids", "quarry", "race track", "racetrack", "railroad station", "railroad stop", "railway siding", "railway station", "rapids", "real estate", "real estate agents", "recreation area", "recreational", "recreational vehicles", "recycling shop", "reef", "religious center", "religious site", "rent-a-car facility", "rent-a-car-parking", "repair facility", "repair shops", "research facility", "reservation", "reservoir", "residential accommodation", "residential estate", "resort", "rest area", "rest camps", "restaurant", "restaurant area", "resthouse", "retail outlet", "retirement community", "retreat", "ridge", "river crossing", "river scenic area", "road rescue", "roadside", "rock climbing", "rocks", "rugby ground", "rumanian", "russian", "salad bar", "sale installation of car accessories", "sanatorium", "sandwich", "sauna, solarium massage", "savings institution", "savoyan", "scandinavian", "scenic/panoramic view", "school", "scottish", "seafood", "seaplane_base", "seashore", "seat of a first-order administrative division", "seat of a fourth-order administrative division", "seat of a second-order administrative division", "seat of a third-order administrative division", "seat of government of a political entity", "second-order administrative division", "security gate", "security products", "senior high school", "service", "services", "shandong", "shanghai", "shop", "shopping center", "sichuan", "sicilian", "ski resort", "slavic", "slovak", "small_airport", "snacks", "snooker, pool billiard", "soccer", "soul food", "soup", "spa", "spanish", "special", "special school", "specialist", "specialty foods", "sport school", "sports center", "sports equipment clothing", "squash court", "stadium", "stamp shop", "station access", "statue", "steak house", "stock exchange", "store", "sudanese", "supermarkets hypermarkets", "supra national", "surinamese", "sushi", "swedish", "swimming pool", "swiss", "synagogue", "syrian", "tailor shop", "taiwanese", "take away", "tapas", "tax services", "taxi stand", "taxi, limousine shuttle service", "tea house", "technical school", "tele communications", "temple", "temple(s)", "tennis court", "teppanyakki", "thai", "theater", "thematic sport", "third-order administrative division", "tibetan", "toilet", "tourist information office", "tower", "townhouse complex", "toys games", "traffic circle", "traffic control department", "traffic light", "traffic service center", "traffic sign", "trail system", "tram stop", "transport", "transport authority/vehicle registration", "travel agents", "truck", "truck repair service", "truck stop", "tunisian", "tunnel", "turkish", "tyre (tire) services", "united states government establishment", "university", "university prep school", "unknown", "uruguayan", "valley", "van", "variety store", "vegetarian", "venezuelan", "veterinarian", "veterinary facility", "vietnamese", "villa", "vocational training", "water hole", "water sport", "wedding services", "weigh scales", "weigh station", "welfare organization", "well", "welsh", "western continental", "wholesale clubs", "wilderness area", "wildlife park", "wildlife reserve", "wine bar", "winery", "winter sport", "yacht basin", "yogurt/juice bar", "zoo", "zoos, arboreta botanical garden"

Request data

HTTPS Method: GET

For ease of viewing and identification:

  • Constants and parameters enclosed in curly brackets { } must be replaced with their values.
  • Please see the following Request parameters section with the required and optional parameters tables for their values. The generic request format is as follows.

URL request format

https://{baseURL}/search/{versionNumber}/categorySearch/{query}.{ext}?key={Your_API_Key}&typeahead={typeahead}&limit={limit}&ofs={ofs}&lat={lat}&lon={lon}&countrySet={countrySet}&radius={radius}&topLeft={topLeft}&btmRight={btmRight}&language={language}&extendedPostalCodesFor={extendedPostalCodesFor}&categorySet={categorySet}&brandSet={brandSet}&connectorSet={connectorSet}&fuelSet={fuelSet}&view={view}&openingHours={openingHours}&timeZone={timeZone}&mapcodes={mapcodes}&relatedPois={relatedPois}&minPowerKW={minPowerKW}&maxPowerKW={maxPowerKW}

URL request example

https://api.tomtom.com/search/2/categorySearch/pizza.json?key={Your_API_Key}

curl command request example

curl 'https://api.tomtom.com/search/2/categorySearch/pizza.json?key={Your_API_Key}'

Request parameters

The following table describes the parameters that can be used in a request.

  • Required parameters must be used or the call will fail.
  • Optional parameters may be used.
  • If there is a default value that will be assumed when an optional parameter is not used, it is shown in the table.
  • The order of request parameters is not important.

Required parameters

Description

baseURL


string

Base URL for calling the API.


Values:

versionNumber
string

The service version.
Value: The current value is 2.

query


string

The query string. It must be properly URL-encoded.


Value: A properly URL-encoded query string.

ext
string

A valid response format.
Values: json , jsonp , js , or xml

key
string

An API Key valid for the requested service.
Value: Your valid API Key.

Optional parameters

Description

typeahead
boolean

If the typeahead flag is set, the query will be interpreted as a partial input and the search will enter predictive mode.


Default value: false

limit
integer

Maximum number of responses that will be returned.
Default value: 10
Maximum value: 100

ofs
integer

Starting offset of the returned results within the full result set.


Default value: 0
Maximum value: 1900


The total number of results can be no more than 2000. If you want to receive all the results, you need to limit the number of results by using, for example, the radius parameter.

lat
float

Latitude, e.g., lat=37.337 lat,lon where results should be biased. Note: supplying a lat/lon without a radius will only bias the search results to that area.
Value: min/max: -90 to +90
Reference: Latitude, Longitude, and Coordinate System Grids

lon
float

Longitude, e.g., lon=-121.89 lat,lon where results should be biased. Note: supplying a lat/lon without a radius will only bias the search results to that area.
Value: min/max: -180 to +180
Reference: Latitude, Longitude, and Coordinate System Grids

countrySet
string

Comma separated string of country codes in ISO 3166-1 alpha-2 or alpha-3 code formats (e.g., FR,ES or FRA,ESP). This will limit the search to the specified countries. The choice of view may restrict which countries are available.


Values: FR , ES or FRA , ESP , etc. Visit the Search API Market Coverage page for a list of all the countries supported by the Search engine.

radius
integer

If radius and position are set, the results will be constrained to the defined area. The radius parameter is specified in meters. Valid radius values are numbers greater than 0. Supplying values equal to or lesser than 0 causes the parameter to be ignored.


Value: A radius.

topLeft


string

Top-left position of the bounding box.
Note: the btmRight parameter should always go along with the topLeft parameter as they both define the bounding box.


Value: A comma-separated string composed by lat,lon. This is specified as a comma-separated string composed by lat,lon. (e.g., 37.553,-122.453 ). Important note: Point-Radius parameters and Bounding box parameters are mutually exclusive. Point radius parameters take precedence when both are passed.

btmRight
string

Bottom-right position of the bounding box. Note: The btmRight parameter should always go along with the topLeft parameter as they both define the bounding box.
Value: A comma-separated string composed by lat,lon. This is specified as a comma-separated string composed by lat,lon (e.g., 37.553,-122.453 ). Important note: Point-Radius parameters and Bounding box parameters are mutually exclusive. Point radius parameters take precedence when both are passed.

language
string

Language in which search results should be returned. Should be one of the TomTom supported IETF language tags , case insensitive. When data in the specified language is not available for a specific field or the language is not specified, the default language is used (English).


Value: A TomTom supported IETF language tag.

extendedPostalCodesFor
string

Indexes for which extended postal codes should be included in the results. Available indexes are: POI = Points of Interest. The value should be POI or None to disable extended postal codes. By default extended postal codes are included. Extended postal code is returned as an extendedPostalCode property of an address. Availability is region-dependent.
Values: POI or None


Usage examples:

  • extendedPostalCodesFor=POI

  • extendedPostalCodesFor=None

categorySet


string

A comma-separated list of categories which could be used to restrict the result to the Points Of Interest of specific categories. The list of categories can be discovered using the POI Categories endpoint.


Value: A comma-separated list of category identifiers (in any order). When multiple category identifiers are provided, only POIs that belong to (at least) one of the categories from the provided list will be returned.


Usage examples:

  • categorySet=7315 (search Points Of Interest of category Restaurant )

  • categorySet=7315025,7315017 (search Points Of Interest of a category, in this example an Italian ( italian ) or French ( french ) Restaurant

brandSet


string

A comma-separated list of brand names which could be used to restrict the result to Points Of Interest of specific brands.


Value: A comma-separated list of brand names (in any order). When multiple brands are provided, only POIs that belong to (at least) one of the brands from the provided list will be returned. Brands that contain a "," (comma) in their name should be put into quotes, for example: "A,B,C".
Usage examples:

  • brandSet=Tomtom (search Points Of Interest of the "Tomtom" brand)

  • brandSet=Tomtom,Foobar (search Points Of Interest of the "Tomtom" brand OR "Foobar" brand)

  • brandSet="A,B,C Comma" (search Points Of Interest of the "Adam,Batsman,and,Bowling" brand)

connectorSet


string

A comma-separated list of connector types which could be used to restrict the result to the Points Of Interest of type Electric Vehicle Station supporting specific connector types. See the list of Supported Connector Types.
Value: A comma-separated list of connector types (in any order). When multiple connector types are provided, only POIs that support (at least) one of the connector types from the provided list will be returned.


Usage examples:

  • connectorSet=IEC62196Type2CableAttached (search Points Of Interest of type Electric Vehicle Station supporting IEC62196Type2CableAttached)

  • connectorSet=IEC62196Type2Outlet,IEC62196Type2CableAttached (search Points Of Interest of type Electric Vehicle Station supporting IEC62196Type2CableAttached or IEC62196Type2Outlet )

minPowerKW
double

An optional parameter which could be used to restrict the result to the Points Of Interest of type Electric Vehicle Station supporting at least one connector with a specific minimal value of power in kilowatts (closed interval - with that value).
Value: A double value representing the power rate in kilowatts.
Usage example: minPowerKW=22.2. Returns a Points Of Interest of type Electric Vehicle Station supporting at least one connector with a power rate in the range from 22.2 kW. This parameter might be used together with maxPowerKW.

maxPowerKW
double

An optional parameter which could be used to restrict the result to the Points Of Interest of type Electric Vehicle Station supporting at least one connector with a specific maximum value of power in kilowatts (closed interval - with that value).
Value: A double value representing the power rate in kilowatts.
Usage example: maxPowerKW=43.2. Returns a Points Of Interest of type Electric Vehicle Station supporting at least one connector with a power rate in the range to 43.2 kW. This parameter might be used together with minPowerKW.

fuelSet


string

A comma-separated list of fuel types which could be used to restrict the result to the Points Of Interest of specific fuels. If fuelSet is specified, the query can remain empty. Only POIs with a proper fuel type will be returned.


Value: A comma-separated list of fuel type identifiers (in any order). When multiple fuel types are provided, only POIs that belong to (at least) one of the fuel types from the provided list will be returned.


Available values:

  • Petrol

  • LPG

  • Diesel

  • Biodiesel

  • DieselForCommercialVehicles

  • E85

  • LNG

  • CNG

  • Hydrogen

  • AdBlue


Usage examples:

  • fuelSet=Diesel (search Points Of Interest of the Diesel fuel type)

  • fuelSet=Petrol,LPG (search Points Of Interest of either the Petrol or LPG fuel type)

view
string

Geopolitical View. The context used to resolve the handling of disputed territories. Views include Unified , along with AR , IL , IN , MA , PK , RU , TR , and CN which are respectively tailored for Argentina, Israel, India, Morocco, Pakistan, Russia, Turkey, and China.


Default values:

  • Argentina, default view: AR


    available views: Unified , IL , IN , MA , PK , RU , TR , CN

  • India, default view: IN


    available views: -

  • Morocco, default view: MA


    available views: Unified , AR , IL , IN , PK , RU , TR , CN

  • Pakistan, default view: PK


    available views: Unified , AR , IL , IN , MA , RU , TR , CN

  • Russia, default view: RU


    available views: Unified , AR , IL , IN , MA , PK , TR , CN

  • Turkey, default view: TR


    available views: Unified , AR , IL , IN , MA , PK , RU , CN

  • China, default view: CN


    available views: Unified , AR , IL , IN , MA , PK , RU , TR

  • Others, default view: Unified


    available views: AR , IL , IN , MA , PK , RU , TR , CN

openingHours
string

List of opening hours for a POI (Points of Interest).
Value: nextSevenDays. Mode shows the opening hours for next week, starting with the current day in the local time of the POI.


Usage example: openingHours=nextSevenDays

mapcodes
string

Enables the return of a comma-separated mapcodes list. It can also filter the response to only show selected mapcode types. See mapcodes in the response.


Values: One or more of: Local , International , Alternative A mapcode represents a specific location to within a few meters. Every location on Earth can be represented by a mapcode. Mapcodes are designed to be short, easy to recognize, remember, and communicate. Visit the Mapcode project website for more information.


Usage examples:

  • mapcodes=Local (only returns the Local mapcode for a location)

  • mapcodes=Local,Alternative (returns both Local and Alternative mapcodes for a location)

  • mapcodes=Local,Alternative,International (returns all possible mapcodes for a location)

timeZone
string

Used to indicate the mode in which the timeZone object should be returned.
Values: iana Mode shows the IANA ID which allows the user to determine the current time zone for the POI.


Usage examples: timeZone=iana

relatedPois


string

An optional parameter that provides the possibility to return related Points Of Interest.


Default value: off


Values: off , child , parent , all


Points Of Interest can be related to each other when one is physically part of another. For example, an airport terminal can physically belong to an airport. This relationship is expressed as a parent/child relationship: the airport terminal is a child of the airport. If the value child or parent is given, a related Points Of Interest with a specified relation type will be returned in the response. If the value all is given, then both child and parent relations are returned.


Usage examples:

  • relatedPois=child : Returns only Points Of Interest with a child relation.

  • relatedPois=parent : Returns only Points Of Interest with a parent relation.

  • relatedPois=all : Returns Points Of Interest with all possible relations.

Request headers

Optional headers

Description

Accept-Encoding

Enables response compression.
Value: gzip

Tracking-ID

Specifies an identifier for the request. It can be used to trace a call. The value must match the regular expression '^[a-zA-Z0-9-]{1,100}$'. For details check RFC 4122. If specified, it is replicated in the Tracking-ID response header. It is only meant to be used for support and does not involve tracking of you or your users in any form.


Value: An identifier for the request.


Response data

Response body

For illustrative purposes the example below is neatly indented and includes all possible response fields. Actual responses are more compact and the fields present will vary based on the result type and the data available. See the following response field documentation for more information. When requesting JSON output the response has the following structure:

1{
2 "summary": {
3 "query": "pizza",
4 "queryType": "NON_NEAR",
5 "queryTime": 95,
6 "numResults": 10,
7 "offset": 0,
8 "totalResults": 247458,
9 "fuzzyLevel": 1,
10 "geoBias": {
11 "lat": 36.98844,
12 "lon": -121.97483
13 }
14 },
15 "results": []
16}

Each element of the results array is in the following format:

Results array elements format - JSON
1{
2 "type": "POI",
3 "id": "g6JpZK84NDAwNjEwMDE4NjUxNDKhY6NVU0GhdqdVbmlmaWVk",
4 "score": 5,
5 "dist": 0,
6 "info": "search:ta:840061001865142-US",
7 "poi": {
8 "name": "Upper Crust Pizza & Pasta",
9 "phone": "+(1)-(831)-4762333",
10 "url": "www.uppercrustsc.com/",
11 "brands": [
12 {
13 "name": "Upper Crust"
14 }
15 ],
16 "categorySet": [
17 {
18 "id": 7315015
19 }
20 ],
21 "categories": ["pizza", "restaurant"],
22 "openingHours": {
23 "mode": "nextSevenDays",
24 "timeRanges": [
25 {
26 "startTime": {
27 "date": "2019-02-05",
28 "hour": 7,
29 "minute": 0
30 },
31 "endTime": {
32 "date": "2019-02-05",
33 "hour": 21,
34 "minute": 0
35 }
36 },
37 {
38 "startTime": {
39 "date": "2019-02-06",
40 "hour": 7,
41 "minute": 0
42 },
43 "endTime": {
44 "date": "2019-02-06",
45 "hour": 21,
46 "minute": 0
47 }
48 },
49 {
50 "startTime": {
51 "date": "2019-02-07",
52 "hour": 7,
53 "minute": 0
54 },
55 "endTime": {
56 "date": "2019-02-07",
57 "hour": 21,
58 "minute": 0
59 }
60 },
61 {
62 "startTime": {
63 "date": "2019-02-08",
64 "hour": 7,
65 "minute": 0
66 },
67 "endTime": {
68 "date": "2019-02-08",
69 "hour": 21,
70 "minute": 0
71 }
72 },
73 {
74 "startTime": {
75 "date": "2019-02-09",
76 "hour": 7,
77 "minute": 0
78 },
79 "endTime": {
80 "date": "2019-02-09",
81 "hour": 21,
82 "minute": 0
83 }
84 },
85 {
86 "startTime": {
87 "date": "2019-02-10",
88 "hour": 7,
89 "minute": 0
90 },
91 "endTime": {
92 "date": "2019-02-10",
93 "hour": 12,
94 "minute": 0
95 }
96 },
97 {
98 "startTime": {
99 "date": "2019-02-10",
100 "hour": 14,
101 "minute": 0
102 },
103 "endTime": {
104 "date": "2019-02-10",
105 "hour": 21,
106 "minute": 0
107 }
108 }
109 ]
110 },
111 "classifications": [
112 {
113 "code": "RESTAURANT",
114 "names": [
115 {
116 "nameLocale": "en-US",
117 "name": "pizza"
118 },
119 {
120 "nameLocale": "en-US",
121 "name": "restaurant"
122 }
123 ]
124 }
125 ],
126 "timeZone": {
127 "ianaId": "Europe/Andorra"
128 }
129 },
130 "relatedPois": [
131 {
132 "relationType": "child",
133 "id": "g6JpZK83ODQwMDkwMDAwMjUxMTWhY6NBUkWhdqdVbmlmaWVk"
134 },
135 {
136 "relationType": "child",
137 "id": "u234HsadasKHZK81MjgwMDkwMDQyNDY3jashfsaASDHkjhdA"
138 }
139 ],
140 "address": {
141 "streetNumber": "2501",
142 "streetName": "Soquel Dr",
143 "municipalitySubdivision": "Santa Cruz, Live Oak",
144 "municipality": "Santa Cruz, Live Oak",
145 "countrySecondarySubdivision": "Santa Cruz",
146 "countryTertiarySubdivision": "Santa Cruz",
147 "countrySubdivision": "CA",
148 "postalCode": "95065",
149 "extendedPostalCode": "950652023",
150 "countryCode": "US",
151 "country": "United States Of America",
152 "countryCodeISO3": "USA",
153 "freeformAddress": "2501 Soquel Dr, Santa Cruz, CA 95065",
154 "countrySubdivisionName": "California",
155 "localName": "Santa Cruz"
156 },
157 "position": {
158 "lat": 36.98844,
159 "lon": -121.97483
160 },
161 "mapcodes": [
162 {
163 "type": "Local",
164 "fullMapcode": "US-CA FS.WRH3",
165 "territory": "US-CA",
166 "code": "FS.WRH3"
167 },
168 {
169 "type": "International",
170 "fullMapcode": "S4ZW4.990V"
171 },
172 {
173 "type": "Alternative",
174 "fullMapcode": "US-CA 4349.S8W",
175 "territory": "US-CA",
176 "code": "4349.S8W"
177 },
178 {
179 "type": "Alternative",
180 "fullMapcode": "US-CA JJCH.H9DF",
181 "territory": "US-CA",
182 "code": "JJCH.H9DF"
183 },
184 {
185 "type": "Alternative",
186 "fullMapcode": "USA JJCH.H9DF",
187 "territory": "USA",
188 "code": "JJCH.H9DF"
189 }
190 ],
191 "viewport": {
192 "topLeftPoint": {
193 "lat": 36.98934,
194 "lon": -121.97596
195 },
196 "btmRightPoint": {
197 "lat": 36.98754,
198 "lon": -121.9737
199 }
200 },
201 "entryPoints": [
202 {
203 "type": "main",
204 "position": {
205 "lat": 36.98817,
206 "lon": -121.97487
207 }
208 },
209 {
210 "type": "minor",
211 "functions": ["FrontDoor"],
212 "position": {
213 "lat": 52.30987,
214 "lon": 4.76093
215 }
216 }
217 ],
218 "chargingPark": {
219 "connectors": [
220 {
221 "connectorType": "IEC62196Type2CCS",
222 "ratedPowerKW": 22.2,
223 "currentA": 32,
224 "currentType": "AC3",
225 "voltageV": 380
226 },
227 {
228 "connectorType": "Tesla",
229 "ratedPowerKW": 43.2,
230 "currentA": 16,
231 "currentType": "AC3",
232 "voltageV": 480
233 }
234 ]
235 },
236 "dataSources": {
237 "chargingAvailability": {
238 "id": "442009000132285"
239 },
240 "parkingAvailability": {
241 "id": "00000000-0005-36de-0009-20d4467654e2"
242 },
243 "fuelPrice": {
244 "id": "1:cf81fe50-6218-11ea-a677-d05099d5f839"
245 },
246 "geometry": {
247 "id": "00004e4c-3100-3c00-0000-0000685e23c7"
248 }
249 }
250}

Response fields

The following table describes all of the fields that can appear in a response. Fields are listed by the response section they belong to and in the order that they appear in the response.

Primary fields

Description

summary
object

Summary information about the search that was performed.
summary object

results
array

Result list, sorted in descending order by score.
results array

summary object

Field Description

query
string

Query as interpreted by the search engine.

queryType
string

Response type. Can be NEARBY or NON_NEAR.

queryTime
integer

Time spent on resolving the query.

numResults
integer

Number of results in the response.

offset
integer

Starting offset of the returned results within the full result set.

totalResults
integer

Total number of results found.

fuzzyLevel
integer

Maximum fuzzy level required to provide results.

geoBias
object

Position used to bias the results:
LatLon

results array

Field Description

type
string

Type of result.
Value: POI

id
string

A stable unique id for the POI index, and a non-stable unique id for the other indexes.
Note: Stable id means that it doesn't change between data releases without changing the location, attribution, or classification.

score
double

Score of the result. A larger score means there is a probability that a result meeting the query criteria is higher.

dist
double

Unit: meters. This is the distance to an object if geoBias was provided.

info
string

Information about the original data source of the result.

poi
object

Information about the Points of Interest in the result.
poi object

relatedPois
object

List of related Points Of Interest.
relatedPois object

address
object

Structured address for the result.
address object

position
object

Position of the result:
LatLon

mapcodes
array

List of mapcode objects
mapcodes object

viewport
object

A viewport which can be used to display the result on a map.
viewport object

entrypoints
array

List of entry points of the POI.
entryPoints array

chargingPark
object

A list of chargingPark objects. Present only when the Points of Interest are of the Electric Vehicle Station type.
chargingPark object

dataSources
object

Optional section. Reference ids for use with the Additional Data service.
dataSources object

poi object

Field Description

name
string

Name of the POI.

phone
string

Telephone number.

brands
array

The list of POI brands.
brands array

url
string

Website URL.

categories


array


Deprecated

The list of POI categories. Supported Category Codes

Deprecated: Use classifications instead.

  • As of May 1, 2018

    • The response categories field has been deprecated.

    • It will be withdrawn following a 12 month deprecation period.

    • The planned withdrawal date is May 1, 2019.

categorySet
array

The list of the most specific POI categories.
categorySet array

openingHours
object

List of opening hours for a POI (Points of Interest).


openingHours object

classifications
array

The list of POI category classifications.
classifications array

timeZone
object

Time zone information for the POI.
timeZone object

categorySet array

Field Description

id
number

Category id. A full list of available categories is available under the POI Categories endpoint.

brands array

Field Description

name
string

Brand name.

classifications array

Field Description

code
string

Fixed top level category code.


Supported Category Codes

names
array

List of category names with locale code information. Currently only en-US locale is returned.
names array

names array

Field Description

nameLocale
string

Locale code of this category name.

name
string

Category name in given locale.

relatedPois object

Field Description

relationType
string

Relation type: child , parent

id
string

Pass this as entityId to the Place by ID service to fetch additional data for the Point Of Interest.

address object

Field Description

streetNumber
string

The building number on the street.

streetName
string

The street name.

municipalitySubdivision
string

Sub / Super City

municipality
string

City / Town

countrySecondarySubdivision
string

County

countryTertiarySubdivision
string

Named Area

countrySubdivision
string

State or Province

postalCode
string

Postal Code / Zip Code

extendedPostalCode
string

Extended postal code (availability dependent on region)

countryCode
string

Country (Note: this is a two-letter code, not a country name.)

country
string

Country name

countryCodeISO3
string

ISO alpha-3 country code

freeformAddress
string

An address line formatted according to the formatting rules of the result's country of origin. In the case of countries, its full country name.

countrySubdivisionName
string

The full name of the first level of a country's administrative hierarchy. This field appears only in case countrySubdivision is presented in an abbreviated form. Supported only for USA, Canada, and Great Britain.

localName
string

An address component which represents the name of a geographic area or locality that groups a number of addressable objects for addressing purposes, without being an administrative unit.

mapcodes object

Field Description

type


string

Type of mapcode.


Local


The shortest possible (and easiest to remember) mapcode. Local mapcodes are especially useful when the user knows what territory the mapcode is in (for example, when an application is designed to be used inside just one European country or US state). Note that the code element of a Local mapcode is ambiguous when used without the territory element. For example, the "4J.P2" mapcode can mean the Eiffel Tower location ( 48.858380, 2.294440 ) (with the territory set to FRA ), but also some place in Amsterdam-Noord, Netherlands (52.382184, 4.911021) (with the territory set to NLD ).


International


This mapcode is unambiguous. It is also the longest.


Alternative


Alternatives to Local mapcodes. Each Alternative mapcode points to slightly different coordinates due to the way mapcodes are computed (see the mapcode documentation ). For example, the position from a response can be encoded as "5DM.WC" ( 51.759244, 19.448316 ) and the "VHJ.036" ( 51.759245, 19.448264 ), which are close to each other, but not exactly the same place.

fullMapcode
string

The full form of a mapcode ( territory + code ). It is always unambiguous. The territory element is always in the Latin alphabet. In an International mapcode, the territory part is empty.

territory
string

The territory element of the mapcode.

  • The territory element is always in the Latin alphabet.

  • Usually, the territory is the ISO 3166-1 alpha 3 abbreviation for the country name.

  • However in these eight very large countries:

    • USA
    • Canada
    • Mexico
    • Brazil
    • India
    • Russia
    • China

    an address has little meaning unless the user also knows what state it's in (just as, elsewhere, an address has little meaning if the user doesn’t know what country it’s in). More information about territory codes is available at Territories for mapcodes. This field is not returned for an International mapcode.

code


string

The mapcode without the territory element. It consists of two groups of letters and digits separated by a dot. The code is using the same language and alphabet as the response. The language parameter may be used to modify the language and alphabet of both the response and the code (for example: Cyrillic for the language 'ru-RU'). This field is not returned for the International mapcodes. Use fullMapcode instead.

viewport object

Field Description

topLeftPoint
object

Top-left corner of the rectangle.


LatLon

btmRightPoint
object

Bottom-right corner of the rectangle.


LatLon

entryPoints array

Field Description

type
string

The main entry point.


One of: main , minor

functions
array

If present, represents the type of access for the POI.
Example: FrontDoor

position
object

Position of the entry point.


LatLon

chargingPark object

Field Description

connectors


array

A list of connectors available in the Points Of Interest of an Electric Vehicle Station type.
connectors array

connectors array

Field Description

connectorType
string

Type of the connector available in Electric Vehicle Station. See the list of Supported Connector Types.

ratedPowerKW
double

Rated power of the connector in kilowatts (kW).

currentA
integer

Current value of the connector in amperes (A).

currentType
string

Current type of the connector.

voltageV
integer

Voltage of the connector in Volts (V).

dataSources object

Field Description

chargingAvailability
object

Information about the charging stations availability.
chargingAvailability object

parkingAvailability
object

Information about the parking site availability.
parkingAvailability object

fuelPrice
object

Information about the fuel station prices.
fuelPrice object

geometry
object

Information about the geometric shape of the result.
geometry object

chargingAvailability object

Field Description

id
string

Pass this as chargingAvailability to the EV Charging Stations Availability service to fetch charging availability information for this result.

parkingAvailability object

Field Description

id


string

Pass this as parkingAvailability to the Parking Availability service to fetch parking availability information for this result.

fuelPrice object

Field Description

id


string

Pass this as fuelPrice to the Fuel Prices service to fetch fuel price information for this result.

geometry object

Field Description

id
string

Pass this as geometryId to the Additional Data service to fetch geometry information for this result.

Field Description

sourceName
string

Name of an additional data provider.

LatLon

Field Description

lat
float

Latitude. min/max: -90 to +90
Reference: Latitude, Longitude, and Coordinate System Grids

lon
float

Longitude. min/max: -180 to +180
Reference: Latitude, Longitude, and Coordinate System Grids

openingHours object

Field Description

mode
string

Mode used in the request.

timeRanges
array

List of time ranges for the next 7 days.
timeRanges array

timeRanges array

Field Description

startTime
object

The point in the next 7 days range when a given POI is being opened, or the beginning of the range if it was opened before the range, inclusive.
startTime object

endTime
object

The point in the next 7 days range when a given POI is being opened, or the beginning of the range if it was opened before the range, exclusive.
endTime object

startTime object, endTime object

Field Description

date


string

Represents current day in calendar year in POI time zone.

hour


integer

Hours are in the 24 hour format in the local time of a POI; possible values are 0 - 23.

minute


integer

Minutes are in the local time of a POI; possible values are 0 - 59.

timeZone object

Field Description

ianaId
string

ID from the IANA Time Zone Database.

Response codes

The following data table contains response codes signifying successful and failed requests to an API server.

Code

Meaning & possible causes

200

OK : The search successfully returned zero or more results.

400

Bad Request : One or more parameters were incorrectly specified.

403

Forbidden : Possible causes include:

  • Service requires SSL
  • Not authorized
  • Rate or volume limit exceeded
  • Unknown referer

405

Method Not Allowed : The HTTP method ( GET , POST , etc.) is not supported for this request.

404/596

Not Found : The HTTP request method ( GET , POST , etc.) or path is incorrect.

429

Too Many Requests : The API Key is over QPS (Queries per second).

5xx

Server Error : The service was unable to process your request. Contact support to resolve the issue.

Response headers

The following data table contains response headers sent back from an API server.

Header

Description

Access-Control-Allow-Origin

Ensures that clients implementing the CORS security model are able to access the response from this service.


Value: An asterisk * that signifies access to the TomTom API using the Access-Control-Allow-Origin (ACAO) header in its Response indicating which origin sites are allowed.

Content-Type

Indicates the format of the response, as chosen by the client.


Format: type/subtype; charset=utf-8


Values: type/subtype is one of:

  • application/json

  • text/javascript

  • text/xml

Content-Encoding

If requested by the client, the Search service applies gzip compression to the responses with the Accept-Encoding header.


Value: gzip

Tracking-ID

An identifier for the request. If the Tracking-ID header was specified, it is replicated in the response. Otherwise, it is generated automatically by the service. It is only meant to be used for support and does not involve tracking of you or your users in any form.


Value: An identifier for the request.

Error response

The error response content type depends on the ext parameter.

1{
2 "errorText": "Error parsing 'language': Language tag 'en-ES' not supported",
3 "detailedError": {
4 "code": "BadRequest",
5 "message": "Error parsing 'language': Language tag 'en-ES' not supported",
6 "target": "language"
7 },
8 "httpStatusCode": "400"
9}
1<?xml version="1.0" encoding="UTF-8"?>
2<response>
3 <errorText>Error parsing 'language': Language tag 'en-ES' not supported</errorText>
4 <detailedError>
5 <code>BadRequest</code>
6 <message>Error parsing 'language': Language tag 'en-ES' not supported</message>
7 <target>language</target>
8 </detailedError>
9 <httpStatusCode>400</httpStatusCode>
10</response>

Error response fields

Primary fields

Description

errorText


string

A human-readable description of the error.

detailedError


object

Detailed information about the error.


detailedError object

httpStatusCode


integer

HTTP response codes signifying failed requests to an API server.

detailedError object

Field Description

code


string

One of a server-defined set of error codes.

message


string

A human-readable description of the error code. It is intended as an aid to developers and is not suitable for exposure to end users.

target


string

Optional. Target of the particular error.


Value: The name of the request parameter causing the error.