Skip to content

ARLAS Exploration API

Overview

Explore the content of ARLAS collections

Version information

Version : 10.0.1

Contact information

Contact : Gisaia
Contact Email : contact@gisaia.com

License information

License : Apache 2.0
License URL : https://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : null

URI scheme

BasePath : /arlas
Schemes : HTTP

Tags

  • collections
  • explore
  • write

Resources

Collections

Get all collection references

GET /collections
Description

Get all collection references in ARLAS

Parameters
Type Name Description Schema Default
Query pretty
optional
Pretty print boolean "false"
Responses
HTTP Code Description Schema
200 Successful operation < CollectionReference > array
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Get all collection references as a json file

GET /collections/_export
Description

Get all collection references in ARLAS as json file

Responses
HTTP Code Description Schema
200 Successful operation < CollectionReference > array
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Add collection references from a json file

POST /collections/_import
Description

Add collection references in ARLAS from a json file

Parameters
Type Name Schema
FormData file
optional
file
Responses
HTTP Code Description Schema
200 Successful operation string
500 Arlas Server Error. Error
Consumes
  • multipart/form-data
Produces
  • application/json;charset=utf-8

Get a collection reference

GET /collections/{collection}
Description

Get a collection reference in ARLAS

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query pretty
optional
Pretty print boolean "false"
Responses
HTTP Code Description Schema
200 Successful operation CollectionReference
404 Collection not found. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Add a collection reference

PUT /collections/{collection}
Description

Add a collection reference in ARLAS

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query pretty
optional
Pretty print boolean "false"
Body collectionParams
required
collectionParams CollectionReferenceParameters
Responses
HTTP Code Description Schema
200 Successful operation CollectionReference
400 JSON parameter malformed. Error
404 Not Found Error. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Delete a collection reference

DELETE /collections/{collection}
Description

Delete a collection reference in ARLAS

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query pretty
optional
Pretty print boolean "false"
Responses
HTTP Code Description Schema
200 Successful operation Success
404 Collection not found. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Explore

List

GET /explore/_list
Description

List the collections configured in ARLAS.

Parameters
Type Name Description Schema Default
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Responses
HTTP Code Description Schema
200 Successful operation CollectionReferenceDescription
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

OpenSearch Description Document

GET /explore/ogc/opensearch/{collection}
Description

Access to the OpenSearch Description document for the given collection

Parameters
Type Name Description Schema
Path collection
required
collection string
Query max-age-cache
optional
max-age-cache integer (int32)
Responses
HTTP Code Description Schema
200 Successful operation No Content
400 Bad request. Error
500 Arlas Server Error. Error
Produces
  • application/xml

Suggest

GET /explore/{collections}/_suggest
Description

Suggest the the n (n=size) most relevant terms given the filters

Parameters
Type Name Description Schema Default
Path collections
required
collections, comma separated string
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided. The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

: | {fieldName} equals {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric



- The AND operator is applied between filters having different fieldNames.

- The OR operator is applied on filters having the same fieldName.

- If the fieldName starts with - then a must not filter is used

- If the fieldName starts with - then a must not filter is used

For more details, check https://gitlab.com/GISAIA.ARLAS/ARLAS-server/blob/master/doc/api/API-definition.md
< string > array(multi)
Query field
optional
Name of the field to be used for retrieving the most relevant terms string "_all"
Query from
optional
From index to start the search from. Defaults to 0. integer (int32) 0
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given geometry (WKT) < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given geometry (WKT) < string > array(multi)
Query q
optional
A full text search string
Query size
optional
The maximum number of entries or sub-entries to be returned. The default value is 10 integer (int32) 10
Responses
HTTP Code Description Schema
200 Successful operation No Content
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Aggregate

POST /explore/{collection}/_aggregate
Description

Aggregate the elements in the collection(s), given the filters and the aggregation parameters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Body body
optional
AggregationsRequest
Responses
HTTP Code Description Schema
200 Successful operation AggregationResponse
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Aggregate

GET /explore/{collection}/_aggregate
Description

Aggregate the elements in the collection(s), given the filters and the aggregation parameters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query agg
required
- The agg parameter should be given in the following formats:

{type}:{field}:interval-{interval}:format-{format}:collect_field-{collect_field}:collect_fct-{function}:order-{order}:on-{on}:size-{size}

Where :

- {type}:{field} part is mandatory.

- interval must be specified only when aggregation type is datehistogram, histogram and geohash.

- format is optional for datehistogram, and must not be specified for the other types.

- (collect_field,collect_fct) couple is optional for all aggregation types.

- It's possible to apply multiple metric aggregations by defining multiple (collect_field,collect_fct) couples.

- (collect_field,collect_fct) couples should be unique in that case.

- (order,on) couple is optional for all aggregation types.

- size is optional for term and geohash, and must not be specified for the other types.

- include is optional for term, and must not be specified for the other types.

- {type} possible values are :

datehistogram, histogram, geohash and term.

- {interval} possible values depends on {type}.

If {type} = datehistogram, then {interval} = {size}(year,quarter,month,week,day,hour,minute,second). Size value must be equal to 1 for year,quarter,month and week unities.

If {type} = histogram, then {interval} = {size}.

If {type} = geohash, then {interval} = {size}. It's an integer between 1 and 12. Lower the length, greater is the surface of aggregation.

If {type} = term, then interval-{interval} is not needed.

- format-{format} is the date format for key aggregation. The default value is yyyy-MM-dd-hh:mm:ss.

- {collect_fct} is the aggregation function to apply to collections on the specified {collect_field}.

{collect_fct} possible values are :

avg,cardinality,max,min,sum

- {order} is set to sort the aggregation buckets on the field name, on the count of the buckets or on the the result of a metric sub-aggregation. Its values are 'asc' or 'desc'.

- {on} is set to specify whether the {order} is on the field name, on the count of the aggregation or on the result of a metric sub-aggregation. Its values are 'field', 'count' or 'result'.

- If {on} is equal to result and two or more (collect_field,collect_fct) couples are specified, then the order is applied on the first collect_fct that is different from geobbox and geocentroid

- {size} Defines how many buckets should be returned.

- {include} Specifies the values for which buckets will be created. This values are comma separated. If one value is specified then regular expressions can be used (only in this case) and buckets matching them will be created. If more than one value are specified then only buckets matching the exact values will be created.

- fetch_geometry

> What it does: Specifies the strategy of fetching a geometry in each aggregation bucket.

> Syntax: fetch_geometry || fetch_geometry-{strategy} || fetch_geometry-{field}-(first\|\|last).

> fetch_geometry or fetch_geometry-byDefault: the fetched geometry is the centroid of the geohash for geohash aggregation or a random geometry for the rest of aggregation types.

> fetch_geometry-centroid: the fetched geometry is the centroid of data inside each bucket.

> fetch_geometry-bbox: the fetched geometry is the data extend (bbox) in each bucket.

> fetch_geometry-geohash: the fetched geometry is the 'geohash' extend of each bucket. This strategy is supported for geohash aggregation type only.

> fetch_geometry-first: the fetched geometry is the first hit's geometry fetched in each bucket (chronologically)

> fetch_geometry-last: the fetched geometry is the first hit's geometry fetched in each bucket (chronologically)

> fetch_geometry-{field}-first: the fetched geometry is the geometry of the first hit - ordered by the {field} - fetched in each bucket.

> fetch_geometry-{field}-last: the fetched geometry is the geometry of the first hit - ordered by the {field} - fetched in each bucket.

> Note 1: if fetch_geometry is specified, the returned geometry is set int the 'geometry' attribute of the json response.

> Note 2: If fetch_geometry-centroid and collect_fct=geocentroid are both set, the centroid of each bucket is only returned in 'geometry' attribute of the json response but not in the metrics. Same for fetch_geometry-bbox and collect_fct=geobbox

- fetchHits

> What it does: Specifies the number of hits to retrieve inside each aggregation bucket and which fields to include in the hits.

> Syntax: fetchHits-{sizeOfHitsToFetch}(+{field1}, {field2}, -{field3}, ...).

> Note 1: {sizeOfHitsToFetch} is optional, if not specified, 1 is considered as default.

> Note 2: {field} can be preceded by + or - for ascending or descending sort of the hits. Order matters.

> Example: fetchHits-3(-timestamp, geometry). Fetches the 3 last positions for each bucket.

agg parameter is multiple. Every agg parameter specified is a subaggregation of the previous one : order matters.

For more details, check https://gitlab.com/GISAIA.ARLAS/ARLAS-server/blob/master/doc/api/API-definition.md.
< string > array(multi)
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query flat
optional
Flats the property map: only key/value on one level boolean "false"
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation AggregationResponse
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Count

POST /explore/{collection}/_count
Description

Count the number of elements found in the collection(s), given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collections string
Query pretty
optional
Pretty print boolean "false"
Body body
optional
Count
Responses
HTTP Code Description Schema
200 Successful operation Hits
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Count

GET /explore/{collection}/_count
Description

Count the number of elements found in the collection(s), given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collections string
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation Hits
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Describe

GET /explore/{collection}/_describe
Description

Describe the structure and the content of the given collection.

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Responses
HTTP Code Description Schema
200 Successful operation CollectionReferenceDescription
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

GeoAggregate

POST /explore/{collection}/_geoaggregate
Description

Aggregate the elements in the collection(s) as features, given the filters and the aggregation parameters.

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Body body
optional
AggregationsRequest
Responses
HTTP Code Description Schema
200 Successful operation FeatureCollection
400 Bad request. Error
500 Arlas Server Error. Error
501 Not implemented functionality. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

GeoAggregate

GET /explore/{collection}/_geoaggregate
Description

Aggregate the elements in the collection(s) as features, given the filters and the aggregation parameters.

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query agg
required
- The agg parameter should be given in the following formats:

{type}:{field}:interval-{interval}:format-{format}:collect_field-{collect_field}:collect_fct-{function}:order-{order}:on-{on}:size-{size}:fetcbGeometry-{fetch_geometry values}

Where :

- {type}:{field} part is mandatory.

- interval must be specified only when aggregation type is datehistogram, histogram and geohash.

- format is optional for datehistogram, and must not be specified for the other types.

- (collect_field,collect_fct) couple is optional for all aggregation types.

- (order,on) couple is optional for all aggregation types.

- size is optional for term and geohash, and must not be specified for the other types.

- include is optional for term, and must not be specified for the other types.

- {type} possible values are :

geohash, datehistogram, histogram and term. geohash must be the main aggregation.

- {interval} possible values depends on {type}.

If {type} = datehistogram, then {interval} = {size}(year,quarter,month,week,day,hour,minute,second). Size value must be equal to 1 for year,quarter,month and week unities.

If {type} = histogram, then {interval} = {size}.

If {type} = geohash, then {interval} = {size}. It's an integer between 1 and 12. Lower the length, greater is the surface of aggregation.

If {type} = term, then interval-{interval} is not needed.

- format-{format} is the date format for key aggregation. The default value is yyyy-MM-dd-hh:mm:ss.

- {collect_fct} is the aggregation function to apply to collections on the specified {collect_field}.

{collect_fct} possible values are :

avg,cardinality,max,min,sum,geobbox,geocentroid

- (collect_field,collect_fct) should both be specified, except when collect_fct = geobbox or geocentroid, it could be specified alone. The metrics geobbox and geocentroid are returned as features collections.

- {order} is set to sort the aggregation buckets on the field name, on the count of the buckets or on the the result of a metric sub-aggregation. Its values are 'asc' or 'desc'.

- {on} is set to specify whether the {order} is on the field name, on the count of the aggregation or on the result of a metric sub-aggregation. Its values are 'field', 'count' or 'result'.

- When {on} = result, then (collect_field,collect_fct) should be specified. Except when {collect_fct} = geobbox or geocentroid, then {on}=result is prohibited

- {size} Defines how many buckets should be returned.

- {include} Specifies the values for which buckets will be created. This values are comma separated. If one value is specified then regular expressions can be used (only in this case) and buckets matching them will be created. If more than one value are specified then only buckets matching the exact values will be created.

- fetch_geometry

> What it does: Specifies the strategy of fetching a geometry in each aggregation bucket.

> Syntax: fetch_geometry || fetch_geometry-{strategy} || fetch_geometry-{field}-(first\|\|last).

> fetch_geometry or fetch_geometry-byDefault: the fetched geometry is the centroid of the geohash for geohash aggregation or a random geometry for the rest of aggregation types.

> fetch_geometry-centroid: the fetched geometry is the centroid of data inside each bucket.

> fetch_geometry-bbox: the fetched geometry is the data extend (bbox) in each bucket.

> fetch_geometry-geohash: the fetched geometry is the 'geohash' extend of each bucket. This strategy is supported for geohash aggregation type only.

> fetch_geometry-first: the fetched geometry is the first hit's geometry fetched in each bucket (chronologically)

> fetch_geometry-last: the fetched geometry is the first hit's geometry fetched in each bucket (chronologically)

> fetch_geometry-{field}-first: the fetched geometry is the geometry of the first hit - ordered by the {field} - fetched in each bucket.

> fetch_geometry-{field}-last: the fetched geometry is the geometry of the first hit - ordered by the {field} - fetched in each bucket.

> Note 1: if fetch_geometry is specified, the returned geometry is set int the 'geometry' attribute of the geojson.

> Note 2: If fetch_geometry-centroid and collect_fct=geocentroid are both set, the centroid of each bucket is only returned in the geojson 'geometry' attribute but not in the metrics. Same for fetch_geometry-bbox and collect_fct=geobbox

- fetch_hits

> What it does: Specifies the number of hits to retrieve inside each aggregation bucket and which fields to include in the hits.

> Syntax: fetch_hits-{sizeOfHitsToFetch}(+{field1}, {field2}, -{field3}, ...).

> Note 1: {sizeOfHitsToFetch} is optional, if not specified, 1 is considered as default.

> Note 2: {field} can be preceded by + or - for ascending or descending sort of the hits. Order matters.

> Example: fetch_hits-3(-timestamp, geometry). Fetches the 3 last positions for each bucket.

agg parameter is multiple. The first (main) aggregation must be geohash. Every agg parameter specified is a subaggregation of the previous one : order matters.

For more details, check https://github.com/gisaia/ARLAS-server/blob/master/docs/arlas-api-exploration.md
< string > array(multi)
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query flat
optional
Flats the property map: only key/value on one level boolean "false"
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation FeatureCollection
400 Bad request. Error
500 Arlas Server Error. Error
501 Not implemented functionality. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

GeoAggregate on a geohash

GET /explore/{collection}/_geoaggregate/{geohash}
Description

Aggregate the elements in the collection(s) and localized in the given geohash as features, given the filters and the aggregation parameters.

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Path geohash
required
geohash string
Query agg
optional
- The agg parameter should be given in the following formats:

{type}:{field}:interval-{interval}:format-{format}:collect_field-{collect_field}:collect_fct-{function}:order-{order}:on-{on}:size-{size}:fetcbGeometry-{fetch_geometry values}

Where :

- {type}:{field} part is mandatory.

- interval must be specified only when aggregation type is datehistogram, histogram and geohash.

- format is optional for datehistogram, and must not be specified for the other types.

- (collect_field,collect_fct) couple is optional for all aggregation types.

- (order,on) couple is optional for all aggregation types.

- size is optional for term and geohash, and must not be specified for the other types.

- include is optional for term, and must not be specified for the other types.

- {type} possible values are :

geohash, datehistogram, histogram and term. geohash must be the main aggregation.

- {interval} possible values depends on {type}.

If {type} = datehistogram, then {interval} = {size}(year,quarter,month,week,day,hour,minute,second). Size value must be equal to 1 for year,quarter,month and week unities.

If {type} = histogram, then {interval} = {size}.

If {type} = geohash, then {interval} = {size}. It's an integer between 1 and 12. Lower the length, greater is the surface of aggregation.

If {type} = term, then interval-{interval} is not needed.

- format-{format} is the date format for key aggregation. The default value is yyyy-MM-dd-hh:mm:ss.

- {collect_fct} is the aggregation function to apply to collections on the specified {collect_field}.

{collect_fct} possible values are :

avg,cardinality,max,min,sum,geobbox,geocentroid

- (collect_field,collect_fct) should both be specified, except when collect_fct = geobbox or geocentroid, it could be specified alone. The metrics geobbox and geocentroid are returned as features collections.

- {order} is set to sort the aggregation buckets on the field name, on the count of the buckets or on the the result of a metric sub-aggregation. Its values are 'asc' or 'desc'.

- {on} is set to specify whether the {order} is on the field name, on the count of the aggregation or on the result of a metric sub-aggregation. Its values are 'field', 'count' or 'result'.

- When {on} = result, then (collect_field,collect_fct) should be specified. Except when {collect_fct} = geobbox or geocentroid, then {on}=result is prohibited

- {size} Defines how many buckets should be returned.

- {include} Specifies the values for which buckets will be created. This values are comma separated. If one value is specified then regular expressions can be used (only in this case) and buckets matching them will be created. If more than one value are specified then only buckets matching the exact values will be created.

- fetch_geometry

> What it does: Specifies the strategy of fetching a geometry in each aggregation bucket.

> Syntax: fetch_geometry || fetch_geometry-{strategy} || fetch_geometry-{field}-(first\|\|last).

> fetch_geometry or fetch_geometry-byDefault: the fetched geometry is the centroid of the geohash for geohash aggregation or a random geometry for the rest of aggregation types.

> fetch_geometry-centroid: the fetched geometry is the centroid of data inside each bucket.

> fetch_geometry-bbox: the fetched geometry is the data extend (bbox) in each bucket.

> fetch_geometry-geohash: the fetched geometry is the 'geohash' extend of each bucket. This strategy is supported for geohash aggregation type only.

> fetch_geometry-first: the fetched geometry is the first hit's geometry fetched in each bucket (chronologically)

> fetch_geometry-last: the fetched geometry is the first hit's geometry fetched in each bucket (chronologically)

> fetch_geometry-{field}-first: the fetched geometry is the geometry of the first hit - ordered by the {field} - fetched in each bucket.

> fetch_geometry-{field}-last: the fetched geometry is the geometry of the first hit - ordered by the {field} - fetched in each bucket.

> Note 1: if fetch_geometry is specified, the returned geometry is set int the 'geometry' attribute of the geojson.

> Note 2: If fetch_geometry-centroid and collect_fct=geocentroid are both set, the centroid of each bucket is only returned in the geojson 'geometry' attribute but not in the metrics. Same for fetch_geometry-bbox and collect_fct=geobbox

- fetch_hits

> What it does: Specifies the number of hits to retrieve inside each aggregation bucket and which fields to include in the hits.

> Syntax: fetch_hits-{sizeOfHitsToFetch}(+{field1}, {field2}, -{field3}, ...).

> Note 1: {sizeOfHitsToFetch} is optional, if not specified, 1 is considered as default.

> Note 2: {field} can be preceded by + or - for ascending or descending sort of the hits. Order matters.

> Example: fetch_hits-3(-timestamp, geometry). Fetches the 3 last positions for each bucket.

agg parameter is multiple. The first (main) aggregation must be geohash. Every agg parameter specified is a subaggregation of the previous one : order matters.

For more details, check https://github.com/gisaia/ARLAS-server/blob/master/docs/arlas-api-exploration.md
< string > array(multi)
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query flat
optional
Flats the property map: only key/value on one level boolean "false"
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation FeatureCollection
400 Bad request. Error
500 Arlas Server Error. Error
501 Not implemented functionality. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

GeoSearch

POST /explore/{collection}/_geosearch
Description

Search and return the elements found in the collection(s) as features, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Body body
optional
Search
Responses
HTTP Code Description Schema
200 Successful operation FeatureCollection
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

GeoSearch

GET /explore/{collection}/_geosearch
Description

Search and return the elements found in the collection(s) as features, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query after
optional
List of values of fields present in sort param that are used to search after.

> What it does: Allows to get the following hits of a previous search.

> Restriction 1: after param works only combined with sort param.

> Syntax: after={value1},{value2},...,{valueN} & sort={field1},{field2},...,{fieldN}.

> Note 1: {value1}and{value2}are the values of{field1}and{field2}in the last hit returned in the previous search<br> <br>> **Note 2**: The order of fields and values matters. *{value1},{value2}* must be in the same order of *{field1},{field2}* in **sort** param<br> <br>> **Note 3**: The last field{fieldN}must be the id field specified in the collection **collection.params.idPath** (returned as **md.id**) and{valueN}its corresponding value.<br> <br>> __**Example**__: *sort=-date,id& **after**=01/02/2019,abcd1234`. Gets the following hits of the previous search that stopped at date 01/02/2019 and id abcd1234.

> Restriction 2: sort param cannot include geodistance sort.

> Restriction 3: from param must be set to 0 or kept unset
string
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query exclude
optional
List the name patterns of the field to be excluded in the result. Seperate patterns with a comma. < string > array(multi)
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query flat
optional
Flats the property map: only key/value on one level boolean "false"
Query from
optional
From index to start the search from. Defaults to 0. integer 0
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query include
optional
List the name patterns of the field to be included in the result. Seperate patterns with a comma. < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Query size
optional
The maximum number of entries or sub-entries to be returned. The default value is 10 integer 10
Query sort
optional
Sorts the resulted hits on the given fields and/or by distance to a given point :

> Syntax: {field1},{field2},-{field3},geodistance:{lat} {lon},{field4} ....

> Note 1: {field} can be preceded by '-' for descending sort. By default, sort is ascending.

> Note 2: The order of fields matters.

> Note 3 geodistance sort: Sorts the hits centroids by distance to the given {lat} {lon} (ascending distance sort). It can be specified at most 1 time.

> Example 1: sort=age,-timestamp. Resulted hits are sorted by age. For same age hits, they are decreasingly sorted in time.

> Example 2: sort=age,geodistance:89 179. Resulted hits are sorted by age. For same age hits, they are sorted by closest distance to the point(89°,179°)
< string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation FeatureCollection
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Tiled GeoSearch

GET /explore/{collection}/_geosearch/{z}/{x}/{y}
Description

Search and return the elements found in the collection(s) and localized in the given tile(x,y,z) as features, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Path x
required
x integer (int32)
Path y
required
y integer (int32)
Path z
required
z integer (int32)
Query after
optional
List of values of fields present in sort param that are used to search after.

> What it does: Allows to get the following hits of a previous search.

> Restriction 1: after param works only combined with sort param.

> Syntax: after={value1},{value2},...,{valueN} & sort={field1},{field2},...,{fieldN}.

> Note 1: {value1}and{value2}are the values of{field1}and{field2}in the last hit returned in the previous search<br> <br>> **Note 2**: The order of fields and values matters. *{value1},{value2}* must be in the same order of *{field1},{field2}* in **sort** param<br> <br>> **Note 3**: The last field{fieldN}must be the id field specified in the collection **collection.params.idPath** (returned as **md.id**) and{valueN}its corresponding value.<br> <br>> __**Example**__: *sort=-date,id& **after**=01/02/2019,abcd1234`. Gets the following hits of the previous search that stopped at date 01/02/2019 and id abcd1234.

> Restriction 2: sort param cannot include geodistance sort.

> Restriction 3: from param must be set to 0 or kept unset
string
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query exclude
optional
List the name patterns of the field to be excluded in the result. Seperate patterns with a comma. < string > array(multi)
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query flat
optional
Flats the property map: only key/value on one level boolean "false"
Query from
optional
From index to start the search from. Defaults to 0. integer 0
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query include
optional
List the name patterns of the field to be included in the result. Seperate patterns with a comma. < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Query size
optional
The maximum number of entries or sub-entries to be returned. The default value is 10 integer 10
Query sort
optional
Sorts the resulted hits on the given fields and/or by distance to a given point :

> Syntax: {field1},{field2},-{field3},geodistance:{lat} {lon},{field4} ....

> Note 1: {field} can be preceded by '-' for descending sort. By default, sort is ascending.

> Note 2: The order of fields matters.

> Note 3 geodistance sort: Sorts the hits centroids by distance to the given {lat} {lon} (ascending distance sort). It can be specified at most 1 time.

> Example 1: sort=age,-timestamp. Resulted hits are sorted by age. For same age hits, they are decreasingly sorted in time.

> Example 2: sort=age,geodistance:89 179. Resulted hits are sorted by age. For same age hits, they are sorted by closest distance to the point(89°,179°)
< string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation FeatureCollection
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Aggregate

POST /explore/{collection}/_range
Description

Calculates the min and max values of a field in the collection, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Body body
optional
RangeRequest
Responses
HTTP Code Description Schema
200 Successful operation RangeResponse
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

RangeRequest

GET /explore/{collection}/_range
Description

Calculates the min and max values of a field in the collection, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query field
required
The field whose range is calculated string
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation RangeResponse
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

POST /explore/{collection}/_search
Description

Search and return the elements found in the collection, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Body body
optional
Search
Responses
HTTP Code Description Schema
200 Successful operation Hits
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Search

GET /explore/{collection}/_search
Description

Search and return the elements found in the collection, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query after
optional
List of values of fields present in sort param that are used to search after.

> What it does: Allows to get the following hits of a previous search.

> Restriction 1: after param works only combined with sort param.

> Syntax: after={value1},{value2},...,{valueN} & sort={field1},{field2},...,{fieldN}.

> Note 1: {value1}and{value2}are the values of{field1}and{field2}in the last hit returned in the previous search<br> <br>> **Note 2**: The order of fields and values matters. *{value1},{value2}* must be in the same order of *{field1},{field2}* in **sort** param<br> <br>> **Note 3**: The last field{fieldN}must be the id field specified in the collection **collection.params.idPath** (returned as **md.id**) and{valueN}its corresponding value.<br> <br>> __**Example**__: *sort=-date,id& **after**=01/02/2019,abcd1234`. Gets the following hits of the previous search that stopped at date 01/02/2019 and id abcd1234.

> Restriction 2: sort param cannot include geodistance sort.

> Restriction 3: from param must be set to 0 or kept unset
string
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query exclude
optional
List the name patterns of the field to be excluded in the result. Seperate patterns with a comma. < string > array(multi)
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query flat
optional
Flats the property map: only key/value on one level boolean "false"
Query from
optional
From index to start the search from. Defaults to 0. integer 0
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query include
optional
List the name patterns of the field to be included in the result. Seperate patterns with a comma. < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pretty
optional
Pretty print boolean "false"
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Query size
optional
The maximum number of entries or sub-entries to be returned. The default value is 10 integer 10
Query sort
optional
Sorts the resulted hits on the given fields and/or by distance to a given point :

> Syntax: {field1},{field2},-{field3},geodistance:{lat} {lon},{field4} ....

> Note 1: {field} can be preceded by '-' for descending sort. By default, sort is ascending.

> Note 2: The order of fields matters.

> Note 3 geodistance sort: Sorts the hits centroids by distance to the given {lat} {lon} (ascending distance sort). It can be specified at most 1 time.

> Example 1: sort=age,-timestamp. Resulted hits are sorted by age. For same age hits, they are decreasingly sorted in time.

> Example 2: sort=age,geodistance:89 179. Resulted hits are sorted by age. For same age hits, they are sorted by closest distance to the point(89°,179°)
string
Responses
HTTP Code Description Schema
200 Successful operation Hits
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8
  • application/atom+xml

Tiled GeoSearch

GET /explore/{collection}/_tile/{z}/{x}/{y}.png
Description

Search and return the elements found in the collection(s) and localized in the given tile(x,y,z) as features, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Path x
required
x integer (int32)
Path y
required
y integer (int32)
Path z
required
z integer (int32)
Query after
optional
List of values of fields present in sort param that are used to search after.

> What it does: Allows to get the following hits of a previous search.

> Restriction 1: after param works only combined with sort param.

> Syntax: after={value1},{value2},...,{valueN} & sort={field1},{field2},...,{fieldN}.

> Note 1: {value1}and{value2}are the values of{field1}and{field2}in the last hit returned in the previous search<br> <br>> **Note 2**: The order of fields and values matters. *{value1},{value2}* must be in the same order of *{field1},{field2}* in **sort** param<br> <br>> **Note 3**: The last field{fieldN}must be the id field specified in the collection **collection.params.idPath** (returned as **md.id**) and{valueN}its corresponding value.<br> <br>> __**Example**__: *sort=-date,id& **after**=01/02/2019,abcd1234`. Gets the following hits of the previous search that stopped at date 01/02/2019 and id abcd1234.

> Restriction 2: sort param cannot include geodistance sort.

> Restriction 3: from param must be set to 0 or kept unset
string
Query coverage
optional
Percentage (]0-100]) of acceptable transparent pixels. Higher the percentage, more tiles could be used for filling the tile integer (int32) 70
Query dateformat
optional
The format of dates. This parameter should be set only if a date field is queried in f param; when using gt, lt, gte, lte and range operations string
Query f
optional
- A triplet for filtering the result. Multiple filter can be provided in distinct parameters (AND operator is applied) or in the same parameter separated by semi-colons (OR operator is applied). The order does not matter.

- A triplet is composed of a field name, a comparison operator and a value.

The possible values of the comparison operator are :

Operator | Description | value type

:eq: | {fieldName} equals {comma separated values}. OR operation is applied for the specified values | numeric or strings

:ne: | {fieldName} must not equal {comma separated values }. AND operation is applied for the specified values | numeric or strings

:like: | {fieldName} is like {value} | numeric or strings

:gte: | {fieldName} is greater than or equal to {value} | numeric

:gt: | {fieldName} is greater than {value} | numeric

:lte: | {fieldName} is less than or equal to {value} | numeric

:lt: | {fieldName} is less than {value} | numeric

:range: | {fieldName} is between {comma separated [min<max] values}. OR operation is applied for the specified ranges | numeric or strings. If the field's type is date, then min & max should be timestamps in millisecond or a Date expression
< string > array(multi)
Query from
optional
From index to start the search from. Defaults to 0. integer 0
Query gintersect
optional
Any element having its geometry intersecting the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query gwithin
optional
Any element having its geometry contained within the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query max-age-cache
optional
max-age-cache integer (int32)
Query notgintersect
optional
Any element having its geometry not intersecting the given geometry (WKT) nor the given BBOX : west, south, east, north < string > array(multi)
Query notgwithin
optional
Any element having its geometry outside the given geometry (WKT) or the given BBOX : west, south, east, north < string > array(multi)
Query notpwithin
optional
Any element having its centroid outside the given bbox : west, south, east, north. < string > array(multi)
Query pwithin
optional
Any element having its centroid contained within the given bbox : west, south, east, north. < string > array(multi)
Query q
optional
A full text search. Optionally, it's possible to search on a field using this syntax: {fieldname}:{text} < string > array(multi)
Query sampling
optional
Size of the sampling for testing transparency: 1: test every pixel, 10: test 1 pixel every 10 pixels, etc. integer (int32) 10
Query size
optional
The maximum number of entries or sub-entries to be returned. The default value is 10 integer 10
Query sort
optional
Sorts the resulted hits on the given fields and/or by distance to a given point :

> Syntax: {field1},{field2},-{field3},geodistance:{lat} {lon},{field4} ....

> Note 1: {field} can be preceded by '-' for descending sort. By default, sort is ascending.

> Note 2: The order of fields matters.

> Note 3 geodistance sort: Sorts the hits centroids by distance to the given {lat} {lon} (ascending distance sort). It can be specified at most 1 time.

> Example 1: sort=age,-timestamp. Resulted hits are sorted by age. For same age hits, they are decreasingly sorted in time.

> Example 2: sort=age,geodistance:89 179. Resulted hits are sorted by age. For same age hits, they are sorted by closest distance to the point(89°,179°)
< string > array(multi)
Responses
HTTP Code Description Schema
200 Successful operation No Content
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • image/png

Get an Arlas document

GET /explore/{collection}/{identifier}
Description

Returns a raw indexed document.

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Path identifier
required
identifier string
Query flat
optional
Flats the property map: only key/value on one level boolean "false"
Query max-age-cache
optional
max-age-cache integer (int32)
Query pretty
optional
Pretty print boolean "false"
Responses
HTTP Code Description Schema
200 Successful operation Hit
400 Bad request. Error
404 Not Found Error. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Write

Tag

POST /write/{collection}/_tag
Description

Search and tag the elements found in the collection, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query pretty
optional
Pretty print boolean "false"
Body body
optional
TagRequest
Responses
HTTP Code Description Schema
200 Successful operation UpdateResponse
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Untag

POST /write/{collection}/_untag
Description

Search and untag the elements found in the collection, given the filters

Parameters
Type Name Description Schema Default
Path collection
required
collection string
Query pretty
optional
Pretty print boolean "false"
Body body
optional
TagRequest
Responses
HTTP Code Description Schema
200 Successful operation UpdateResponse
400 Bad request. Error
500 Arlas Server Error. Error
Consumes
  • application/json;charset=utf-8
Produces
  • application/json;charset=utf-8

Definitions

AggregatedGeometry

Name Schema
field
optional
string
strategy
optional
enum (bbox, centroid, geohash, first, last, byDefault)

Aggregation

Name Schema
fetch_geometry
optional
AggregatedGeometry
fetch_hits
optional
HitsFetcher
field
optional
string
format
optional
string
include
optional
string
interval
optional
Interval
metrics
optional
< Metric > array
on
optional
enum (field, count, result)
order
optional
enum (asc, desc)
size
optional
string
type
optional
enum (datehistogram, geohash, histogram, term)

AggregationMetric

Name Schema
field
optional
string
type
optional
string
value
optional
object

AggregationResponse

Name Schema
count
optional
integer (int64)
elements
optional
< AggregationResponse > array
flattened_elements
optional
< string, object > map
geometry
optional
GeoJsonObject
hits
optional
< object > array
key
optional
object
key_as_string
optional
object
metrics
optional
< AggregationMetric > array
name
optional
string
query_time
optional
integer (int64)
sumotherdoccounts
optional
integer (int64)
total_time
optional
integer (int64)
totalnb
optional
integer (int64)

AggregationsRequest

Name Schema
aggregations
optional
< Aggregation > array
filter
optional
Filter
form
optional
Form

Bbox

Name Schema
east
required
number (double)
north
required
number (double)
south
required
number (double)
west
required
number (double)

CollectionReference

Name Schema
collection_name
required
string
params
required
CollectionReferenceParameters

CollectionReferenceDescription

Name Schema
collection_name
required
string
params
required
CollectionReferenceParameters
properties
optional
< string, CollectionReferenceDescriptionProperty > map

CollectionReferenceDescriptionProperty

Name Schema
format
optional
string
properties
optional
< string, CollectionReferenceDescriptionProperty > map
taggable
optional
boolean
type
optional
enum (TEXT, KEYWORD, LONG, INTEGER, SHORT, BYTE, DOUBLE, FLOAT, DATE, BOOLEAN, BINARY, INT_RANGE, FLOAT_RANGE, LONG_RANGE, DOUBLE_RANGE, DATE_RANGE, OBJECT, NESTED, GEO_POINT, GEO_SHAPE, IP, COMPLETION, TOKEN_COUNT, MAPPER_MURMUR3, UNKNOWN)

CollectionReferenceParameters

Name Schema
atom_feed
optional
Feed
centroid_path
required
string
custom_params
optional
< string, string > map
dublin_core_element_name
optional
DublinCoreElementName
exclude_fields
optional
string
exclude_wfs_fields
optional
string
filter
optional
Filter
geometry_path
required
string
id_path
required
string
index_name
required
string
inspire
optional
Inspire
open_search
optional
OpenSearch
raster_tile_height
optional
integer (int32)
raster_tile_url
optional
RasterTileURL
raster_tile_width
optional
integer (int32)
taggable_fields
optional
string
timestamp_path
required
string
type_name
required
string
update_max_hits
optional
integer (int32)

Count

Name Schema
filter
optional
Filter
form
optional
Form

Crs

Name Schema
properties
optional
< string, object > map
type
optional
enum (name, link)

DublinCoreElementName

Name Schema
bbox
optional
Bbox
contributor
optional
string
coverage
optional
< string, object > map
coverage_centroid
optional
string
creator
optional
string
date
optional
string
description
optional
string
format
optional
string
identifier
optional
string
language
optional
string
publisher
optional
string
source
optional
string
subject
optional
string
title
optional
string
type
optional
string

Error

Name Schema
error
optional
string
message
optional
string
status
optional
integer (int32)

Expression

Name Schema
field
optional
string
op
optional
enum (eq, gte, gt, lte, lt, like, ne, range)
value
optional
string

Failure

Name Schema
id
optional
string
message
optional
string
type
optional
string

Feature

Name Schema
bbox
optional
< number (double) > array
crs
optional
Crs
geometry
optional
GeoJsonObject
id
optional
string
properties
optional
< string, object > map

FeatureCollection

Name Schema
bbox
optional
< number (double) > array
crs
optional
Crs
features
optional
< Feature > array

Feed

Name Schema
author
optional
Person
contributor
optional
Person
generator
optional
Generator
icon
optional
string
logo
optional
string
rights
optional
string
subtitle
optional
string

Filter

Name Schema
dateformat
optional
string
f
optional
< < Expression > array > array
gintersect
optional
< < string > array > array
gwithin
optional
< < string > array > array
notgintersect
optional
< < string > array > array
notgwithin
optional
< < string > array > array
notpwithin
optional
< < string > array > array
pwithin
optional
< < string > array > array
q
optional
< < string > array > array

Form

Name Schema
flat
optional
boolean
pretty
optional
boolean

Generator

Name Schema
name
optional
string
uri
optional
string
version
optional
string

GeoJsonObject

Name Schema
bbox
optional
< number (double) > array
crs
optional
Crs

GeometryCollection

Polymorphism : Inheritance
Discriminator : type

Name Schema
bbox
optional
< number (double) > array
crs
optional
Crs
geometries
optional
< GeoJsonObject > array

Hit

Name Schema
data
optional
object
md
optional
MD

Hits

Name Schema
collection
optional
string
hits
optional
< Hit > array
links
optional
< string, Link > map
nbhits
optional
integer (int64)
totalnb
optional
integer (int64)

HitsFetcher

Name Schema
include
optional
< string > array
size
optional
integer (int32)

Inspire

Name Schema
inspire_limitation_access
optional
InspireLimitationAccess
inspire_uri
optional
InspireURI
inspire_use_conditions
optional
string
keywords
optional
< Keyword > array
languages
optional
< string > array
lineage
optional
string
spatial_resolution
optional
InspireSpatialResolution
topic_categories
optional
< string > array

InspireLimitationAccess

Name Schema
access_constraints
optional
string
classification
optional
string
other_constraints
optional
string

InspireSpatialResolution

Name Schema
unit_of_measure
optional
string
value
optional
Number

InspireURI

Name Schema
code
optional
string
namespace
optional
string

Interval

Name Schema
unit
optional
enum (year, quarter, month, week, day, hour, minute, second)
value
optional
Number

Keyword

Name Schema
date_of_publication
optional
string
value
optional
string
vocabulary
optional
string

LineString

Polymorphism : Inheritance
Discriminator : type

Name Schema
bbox
optional
< number (double) > array
coordinates
optional
< LngLatAlt > array
crs
optional
Crs

Name Schema
body
optional
Search
href
required
string
method
required
string

LngLatAlt

Type : object

MD

Name Schema
centroid
optional
GeoJsonObject
geometry
optional
GeoJsonObject
id
optional
string
timestamp
optional
integer (int64)

Metric

Name Schema
collect_fct
optional
enum (AVG, CARDINALITY, MAX, MIN, SUM, GEOCENTROID, GEOBBOX)
collect_field
optional
string

MultiLineString

Polymorphism : Inheritance
Discriminator : type

Name Schema
bbox
optional
< number (double) > array
coordinates
optional
< < LngLatAlt > array > array
crs
optional
Crs

MultiPoint

Polymorphism : Inheritance
Discriminator : type

Name Schema
bbox
optional
< number (double) > array
coordinates
optional
< LngLatAlt > array
crs
optional
Crs

MultiPolygon

Polymorphism : Inheritance
Discriminator : type

Name Schema
bbox
optional
< number (double) > array
coordinates
optional
< < < LngLatAlt > array > array > array
crs
optional
Crs

Number

Type : object

OpenSearch

Name Schema
adult_content
optional
string
attribution
optional
string
contact
optional
string
description
optional
string
developer
optional
string
image_height
optional
string
image_type
optional
string
image_url
optional
string
image_width
optional
string
input_encoding
optional
string
language
optional
string
long_name
optional
string
output_encoding
optional
string
short_name
optional
string
syndication_right
optional
string
tags
optional
string

Page

Name Schema
after
optional
string
from
optional
integer (int32)
size
optional
integer (int32)
sort
optional
string

Person

Name Schema
email
optional
string
name
optional
string
uri
optional
string

Point

Polymorphism : Inheritance
Discriminator : type

Name Schema
bbox
optional
< number (double) > array
coordinates
optional
LngLatAlt
crs
optional
Crs

Polygon

Polymorphism : Inheritance
Discriminator : type

Name Schema
bbox
optional
< number (double) > array
coordinates
optional
< < LngLatAlt > array > array
crs
optional
Crs

Projection

Name Schema
excludes
optional
string
includes
optional
string

RangeRequest

Name Schema
field
optional
string
filter
optional
Filter
form
optional
Form

RangeResponse

Name Schema
max
optional
object
min
optional
object
query_time
optional
integer (int64)
total_time
optional
integer (int64)
totalnb
optional
integer (int64)

RasterTileURL

Name Schema
check_geometry
optional
boolean
id_path
required
string
max_z
optional
integer (int32)
min_z
optional
integer (int32)
url
required
string

Search

Name Schema
filter
optional
Filter
form
optional
Form
page
optional
Page
projection
optional
Projection

Success

Name Schema
message
optional
string
status
optional
integer (int32)

Tag

Name Schema
path
optional
string
value
optional
object

TagRequest

Name Schema
search
optional
Search
tag
optional
Tag

UpdateResponse

Name Schema
action
optional
enum (ADD, REMOVE, REMOVEALL)
failed
optional
integer (int64)
failures
optional
< Failure > array
updated
optional
integer (int64)