Fleet Telematics Custom Locations Developer's Guide

Attribute Search and Layer Download

Search for custom geometries by attribute filter, or download complete layer.

Resource URI

GET /search/all.json /search/all.txt

Resource Parameters

Parameters Required? Description
apikey Yes


A 43-byte Base64 URL-safe encoded string used for the authentication of the client application. As a logged in user, you can generate it at https://developer.here.com/projects/. API keys never expire but you can invalidate your API keys at any time. You cannot have more than two API keys for one app at the same time.

You must include an API key with every request. For further details, see Acquiring Credentials.

layer_id Yes Layer ID identifying the layers to be searched. Can also be a comma separated list of layers. Layer names are not case sensitive. The maximum length of a layer name and the permitted characters can be lookup up in the service via /serviceconfiguration.json
geom No full or none. Specifies the geometry representation in the result. Default = full. Full geometry is used for interactive editing, where the original geometry is required. None is used for applications like geofencing, which most of the time want to know only the ids of the geofence points/lines polygons they are in or near.
filter No

An JavaScript expression being evaluated for each geometry matching search query.

Columns value for the geometry are available as defined variables.

When specified, only geometries where expression evaluates to true will be returned.

Example: filter=RATING > 3 && NAME != 'MyPlace23' && NAME.startsWith('Food')

Parameter value must be url encoded when using special characters.

This filter expression is applied after the spatial filtering, hence only to few geometries. Only for the all.json the filter is applied to all geometries, so it can become very slow for big layers. Hence, following substring search expressions use database indexes and are much faster than other filter expressions (for updatable layers):

  • COL_NAME.indexOf("my_substring") >= 0
  • COL_NAME.startsWith("my_prefix")
  • COL_NAME == "str"
  • COL_NAME === "str"
  • COL_NAME != "str"
  • COL_NAME !== "str"
  • COL_NAME.indexOf("str") >= 0
  • COL_NAME.startsWith("str")
  • COL_NAME.like("%str%")

To avoid service overload, filter expressions must not exceed 100 characters of text and their execution on the result must not exceed 100 ms execution time.

start_geometry_id No To paginate huge responses, this parameter specifies the lowest geometry id to be returned. If geometry ids are not known, then retrieve the first page using zero, and to retrieve subsequent pages then request highest geometry of current page + 1 (it doesn't matter whether this geometry id actually exists or not). Use this parameter together with no_of_records.
no_of_records No

The maximum number of geometries in the response. If more geometries satisfy the search/filter criteria, they will be suppressed.

It is undefined, which of the matching geometries are returned, unless this parameter is used together with start_geometry_id, which sorts the results set by geometry id.

callback No Specifies the function used to wrap the JSON response.
meta No Send with value=1 to get the response geometries framed with meta information like layer and tile id. Default = no meta data.