ARLAS Exploration API
Overview
Explore the content of ARLAS collections
Version information
Version : 23.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, HTTPS
Tags
- collections
- explore
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 | checkfields optional |
boolean | "true" |
|
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 > array |
400 | Bad request. | Error |
403 | Collection not authorized. | Error |
500 | Arlas Server Error. | Error |
Consumes
application/json;charset=utf-8
Produces
application/json;charset=utf-8
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 | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | pretty optional |
Pretty print | boolean | "false" |
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}:fetch_hits-{fetch_hits values} Where : - {type}:{field} part is mandatory. - interval must be specified only when aggregation type is datehistogram, histogram, geotile 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/geotile, 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, geotile 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} = geotile, then {interval} = {size}. It's an integer corresponding to zoom level of the aggregation, that should be larger than or equal to {z} in the path param, and no bigger than {z}+6. 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. - aggregated_geometries > What it does: Allows to specify a list of aggregated forms of geometries that represent the bucket. > Syntax: aggregated_geometries-{COMMA_SEPARATED_AGGREGATED_GEOMETRIES} .> Available aggregated geometries: centroid, bbox, cell, cell_center .- centroid: returns the centroid of data inside the bucket. - bbox: returns the data extent (bbox) in each bucket. - cell: returns the cell extent (zxy or geohash) of each bucket. This form is supported for geohash and geotile aggregation type only. - cell_center: returns the cell center of each bucket. This form is supported for geohash and geotile aggregation type only. > Response: the aggregated geometries are returned in geometries list in the json response. Each object inside this list has : the reference to the aggregated form, the geojson geometry and an attribute is_raw set to false> Example: aggregated_geometries-bbox,cell - raw_geometries > What it does: Allows to specify a list of raw geometries provided by hits that represent the bucket and that are elected by a sort > Syntax: raw_geometries-{GEOMETRY_FIELD}({COMMA_SEPERATED_SORT_FIELDS});{GEOMETRY_FIELD2}({COMMA_SEPERATED_SORT_FIELDS2}) .> Available raw geometries: any field of the collection whose type is geo-point or geo-shape. - sort fields are optional. If no sort is specified, an ascending sort on collection.params.timestamp_path is applied- a sort field can be preceded by '-' for descending sort. Otherwise the sort is ascending > Response: the aggregated geometries are returned in geometries list in the json response. Each object inside this list has : the reference to the geometry path, the used sort, the geojson geometry and an attribute is_raw set to true> Example: raw_geometries-geo_field1,geo_field2 \|\| raw_geometries-geo_field(-field1,field2) || raw_geometries-geo_field1(field1);geo_field2(field2,field3)- 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. 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
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" |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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
Compute
POST /explore/{collection}/_compute
Description
Computes the given metric on 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 |
ComputationRequest |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful operation | ComputationResponse |
400 | Bad request. | Error |
500 | Arlas Server Error. | Error |
Consumes
application/json;charset=utf-8
Produces
application/json;charset=utf-8
Compute
GET /explore/{collection}/_compute
Description
Computes the given metric on 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
Query | field required |
The field on which the metric is calculated. | string | |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | metric required |
The metric to compute : max, min, avg, sum, cardinality, spanning, geobbox, geocentroid . |
string | |
Query | pretty optional |
Pretty print | boolean | "false" |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful operation | ComputationResponse |
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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | pretty optional |
Pretty print | boolean | "false" |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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 |
403 | Collection not authorized. | 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}:raw_geometries-{raw_geometries values}:aggregated_geometries-{aggregated_geometries values}:fetch_hits-{fetch_hits values} Where : - {type}:{field} part is mandatory. - interval must be specified only when aggregation type is datehistogram, histogram, geotile 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/geotile, 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, geotile, datehistogram, histogram and term. geohash or geotile 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} = geotile, then {interval} = {size}. It's an integer corresponding to zoom level of the aggregation, that should be larger than or equal to {z} in the path param, and no bigger than {z}+6 (max 29). 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. - aggregated_geometries > What it does: Allows to specify a list of aggregated forms of geometries that represent the bucket. > Syntax: aggregated_geometries-{COMMA_SEPARATED_AGGREGATED_GEOMETRIES} .> Available aggregated geometries: centroid, bbox, cell, cell_center .- centroid: returns the centroid of data inside the bucket. - bbox: returns the data extent (bbox) in each bucket. - cell: returns the cell (zxy or geohash) extent of each bucket. This form is supported for geohash and geotile aggregation type only. - cell_center: returns the cell center of each bucket. This form is supported for geohash and geotile aggregation type only. > Response: Each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified aggregated geometries. The properties of each feature has : - geometry_ref attribute that informs which aggregated form is returned - geometry_type attribute set to aggregated > Example: aggregated_geometries-bbox,geohash - raw_geometries > What it does: Allows to specify a list of raw geometries provided by hits that represent the bucket and that are elected by a sort > Syntax: raw_geometries-{GEOMETRY_FIELD}({COMMA_SEPERATED_SORT_FIELDS});{GEOMETRY_FIELD2}({COMMA_SEPERATED_SORT_FIELDS2}) .> Available raw geometries: any field of the collection whose type is geo-point or geo-shape. - sort fields are optional. If no sort is specified, an ascending sort on collection.params.timestamp_path is applied- a sort field can be preceded by '-' for descending sort. Otherwise the sort is ascending > Response: each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified raw geometries. The properties of each feature has : - geometry_ref attribute that informs which geometry path is returned - geometry_type attribute set to raw - geometry_sort attribute that informs how the geometry path is fetched (with what sort) > Example: raw_geometries-geo_field1,geo_field2 \|\| raw_geometries-geo_field(-field1,field2) || raw_geometries-geo_field1(field1);geo_field2(field2,field3)- 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 or geotile. 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
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" |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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}:raw_geometries-{raw_geometries values}:aggregated_geometries-{aggregated_geometries values}:fetch_hits-{fetch_hits values} Where : - {type}:{field} part is mandatory. - interval must be specified only when aggregation type is datehistogram, histogram, geotile 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/geotile, 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, geotile, datehistogram, histogram and term. geohash or geotile 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} = geotile, then {interval} = {size}. It's an integer corresponding to zoom level of the aggregation, that should be larger than or equal to {z} in the path param, and no bigger than {z}+6 (max 29). 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. - aggregated_geometries > What it does: Allows to specify a list of aggregated forms of geometries that represent the bucket. > Syntax: aggregated_geometries-{COMMA_SEPARATED_AGGREGATED_GEOMETRIES} .> Available aggregated geometries: centroid, bbox, cell, cell_center .- centroid: returns the centroid of data inside the bucket. - bbox: returns the data extent (bbox) in each bucket. - cell: returns the cell (zxy or geohash) extent of each bucket. This form is supported for geohash and geotile aggregation type only. - cell_center: returns the cell center of each bucket. This form is supported for geohash and geotile aggregation type only. > Response: Each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified aggregated geometries. The properties of each feature has : - geometry_ref attribute that informs which aggregated form is returned - geometry_type attribute set to aggregated > Example: aggregated_geometries-bbox,geohash - raw_geometries > What it does: Allows to specify a list of raw geometries provided by hits that represent the bucket and that are elected by a sort > Syntax: raw_geometries-{GEOMETRY_FIELD}({COMMA_SEPERATED_SORT_FIELDS});{GEOMETRY_FIELD2}({COMMA_SEPERATED_SORT_FIELDS2}) .> Available raw geometries: any field of the collection whose type is geo-point or geo-shape. - sort fields are optional. If no sort is specified, an ascending sort on collection.params.timestamp_path is applied- a sort field can be preceded by '-' for descending sort. Otherwise the sort is ascending > Response: each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified raw geometries. The properties of each feature has : - geometry_ref attribute that informs which geometry path is returned - geometry_type attribute set to raw - geometry_sort attribute that informs how the geometry path is fetched (with what sort) > Example: raw_geometries-geo_field1,geo_field2 \|\| raw_geometries-geo_field(-field1,field2) || raw_geometries-geo_field1(field1);geo_field2(field2,field3)- 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 or geotile. 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
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" |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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 geotile
GET /explore/{collection}/_geoaggregate/{z}/{x}/{y}
Description
Aggregate the elements in the collection(s) and localized in the given tile as features, given the filters and the aggregation parameters.
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 | 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}:raw_geometries-{raw_geometries values}:aggregated_geometries-{aggregated_geometries values}:fetch_hits-{fetch_hits values} Where : - {type}:{field} part is mandatory. - interval must be specified only when aggregation type is datehistogram, histogram, geotile 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/geotile, 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, geotile, datehistogram, histogram and term. geohash or geotile 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} = geotile, then {interval} = {size}. It's an integer corresponding to zoom level of the aggregation, that should be larger than or equal to {z} in the path param, and no bigger than {z}+6 (max 29). 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. - aggregated_geometries > What it does: Allows to specify a list of aggregated forms of geometries that represent the bucket. > Syntax: aggregated_geometries-{COMMA_SEPARATED_AGGREGATED_GEOMETRIES} .> Available aggregated geometries: centroid, bbox, cell, cell_center .- centroid: returns the centroid of data inside the bucket. - bbox: returns the data extent (bbox) in each bucket. - cell: returns the cell (zxy or geohash) extent of each bucket. This form is supported for geohash and geotile aggregation type only. - cell_center: returns the cell center of each bucket. This form is supported for geohash and geotile aggregation type only. > Response: Each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified aggregated geometries. The properties of each feature has : - geometry_ref attribute that informs which aggregated form is returned - geometry_type attribute set to aggregated > Example: aggregated_geometries-bbox,geohash - raw_geometries > What it does: Allows to specify a list of raw geometries provided by hits that represent the bucket and that are elected by a sort > Syntax: raw_geometries-{GEOMETRY_FIELD}({COMMA_SEPERATED_SORT_FIELDS});{GEOMETRY_FIELD2}({COMMA_SEPERATED_SORT_FIELDS2}) .> Available raw geometries: any field of the collection whose type is geo-point or geo-shape. - sort fields are optional. If no sort is specified, an ascending sort on collection.params.timestamp_path is applied- a sort field can be preceded by '-' for descending sort. Otherwise the sort is ascending > Response: each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified raw geometries. The properties of each feature has : - geometry_ref attribute that informs which geometry path is returned - geometry_type attribute set to raw - geometry_sort attribute that informs how the geometry path is fetched (with what sort) > Example: raw_geometries-geo_field1,geo_field2 \|\| raw_geometries-geo_field(-field1,field2) || raw_geometries-geo_field1(field1);geo_field2(field2,field3)- 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 or geotile. 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
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" |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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: Retrieve the data placed after the pointed element, given the provided order (sort). > 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: from param must be set to 0 or kept unset |
string | |
Query | before optional |
Same idea that after param, but to retrieve the data placed before the pointed element, given the provided order (sort). | 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. Separate 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< 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 | include optional |
List the name patterns of the field to be included in the result. Separate patterns with a comma. | < string > array(multi) | |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | pretty optional |
Pretty print | boolean | "false" |
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 | returned_geometries optional |
Comma separated geometry field_paths to be included in the result. If not specified, only geometry_path is returned. If geometry_path is null, then centroid_path is returned | string | |
Query | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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: Retrieve the data placed after the pointed element, given the provided order (sort). > 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: from param must be set to 0 or kept unset |
string | |
Query | before optional |
Same idea that after param, but to retrieve the data placed before the pointed element, given the provided order (sort). | 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. Separate 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< 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 | include optional |
List the name patterns of the field to be included in the result. Separate patterns with a comma. | < string > array(multi) | |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | pretty optional |
Pretty print | boolean | "false" |
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 | returned_geometries optional |
Comma separated geometry field_paths to be included in the result. If not specified, only geometry_path is returned. If geometry_path is null, then centroid_path is returned | string | |
Query | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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
Search
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: Retrieve the data placed after the pointed element, given the provided order (sort). > 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: from param must be set to 0 or kept unset |
string | |
Query | before optional |
Same idea that after param, but to retrieve the data placed before the pointed element, given the provided order (sort). | 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. Separate 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< 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 | include optional |
List the name patterns of the field to be included in the result. Separate patterns with a comma. | < string > array(multi) | |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | pretty optional |
Pretty print | boolean | "false" |
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 | returned_geometries optional |
Comma separated geometry field_paths to be included in the result. If not specified, only geometry_path is returned. If geometry_path is null, then centroid_path is returned | string | |
Query | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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
ShapeAggregate
POST /explore/{collection}/_shapeaggregate
Description
Aggregate the elements in the collection(s) as features, given the filters and the aggregation parameters, and returns a shapefile of it.
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 | No Content |
400 | Bad request. | Error |
500 | Arlas Server Error. | Error |
501 | Not implemented functionality. | Error |
Consumes
application/json;charset=utf-8
Produces
application/zip
ShapeAggregate
GET /explore/{collection}/_shapeaggregate
Description
Aggregate the elements in the collection(s) as features, given the filters and the aggregation parameters, and returns a shapefile of it.
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}:raw_geometries-{raw_geometries values}:aggregated_geometries-{aggregated_geometries values}:fetch_hits-{fetch_hits values} Where : - {type}:{field} part is mandatory. - interval must be specified only when aggregation type is datehistogram, histogram, geotile 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/geotile, 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, geotile, datehistogram, histogram and term. geohash or geotile 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} = geotile, then {interval} = {size}. It's an integer corresponding to zoom level of the aggregation, that should be larger than or equal to {z} in the path param, and no bigger than {z}+6 (max 29). 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. - aggregated_geometries > What it does: Allows to specify a list of aggregated forms of geometries that represent the bucket. > Syntax: aggregated_geometries-{COMMA_SEPARATED_AGGREGATED_GEOMETRIES} .> Available aggregated geometries: centroid, bbox, cell, cell_center .- centroid: returns the centroid of data inside the bucket. - bbox: returns the data extent (bbox) in each bucket. - cell: returns the cell (zxy or geohash) extent of each bucket. This form is supported for geohash and geotile aggregation type only. - cell_center: returns the cell center of each bucket. This form is supported for geohash and geotile aggregation type only. > Response: Each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified aggregated geometries. The properties of each feature has : - geometry_ref attribute that informs which aggregated form is returned - geometry_type attribute set to aggregated > Example: aggregated_geometries-bbox,geohash - raw_geometries > What it does: Allows to specify a list of raw geometries provided by hits that represent the bucket and that are elected by a sort > Syntax: raw_geometries-{GEOMETRY_FIELD}({COMMA_SEPERATED_SORT_FIELDS});{GEOMETRY_FIELD2}({COMMA_SEPERATED_SORT_FIELDS2}) .> Available raw geometries: any field of the collection whose type is geo-point or geo-shape. - sort fields are optional. If no sort is specified, an ascending sort on collection.params.timestamp_path is applied- a sort field can be preceded by '-' for descending sort. Otherwise the sort is ascending > Response: each bucket of the aggregation will be represented with as many features (in a feature collection) as there are specified raw geometries. The properties of each feature has : - geometry_ref attribute that informs which geometry path is returned - geometry_type attribute set to raw - geometry_sort attribute that informs how the geometry path is fetched (with what sort) > Example: raw_geometries-geo_field1,geo_field2 \|\| raw_geometries-geo_field(-field1,field2) || raw_geometries-geo_field1(field1);geo_field2(field2,field3)- 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 or geotile. 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | pretty optional |
Pretty print | boolean | "false" |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 | Successful operation | No Content |
400 | Bad request. | Error |
500 | Arlas Server Error. | Error |
501 | Not implemented functionality. | Error |
Consumes
application/json;charset=utf-8
Produces
application/zip
ShapeSearch
POST /explore/{collection}/_shapesearch
Description
Search and return the elements found in the collection(s) as features, given the filters, exported as a Shapefile
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 | No Content |
400 | Bad request. | Error |
500 | Arlas Server Error. | Error |
Consumes
application/json;charset=utf-8
Produces
application/zip
ShapeSearch
GET /explore/{collection}/_shapesearch
Description
Search and return the elements found in the collection(s) as features, given the filters, exported as a Shapefile
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: Retrieve the data placed after the pointed element, given the provided order (sort). > 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: from param must be set to 0 or kept unset |
string | |
Query | before optional |
Same idea that after param, but to retrieve the data placed before the pointed element, given the provided order (sort). | 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. Separate 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
Query | from optional |
From index to start the search from. Defaults to 0. | integer | 0 |
Query | include optional |
List the name patterns of the field to be included in the result. Separate patterns with a comma. | < string > array(multi) | |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
Query | pretty optional |
Pretty print | boolean | "false" |
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 | returned_geometries optional |
Comma separated geometry field_paths to be included in the result. If not specified, only geometry_path is returned. If geometry_path is null, then centroid_path is returned | string | |
Query | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | "true" |
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
application/zip
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: Retrieve the data placed after the pointed element, given the provided order (sort). > 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: from param must be set to 0 or kept unset |
string | |
Query | before optional |
Same idea that after param, but to retrieve the data placed before the pointed element, given the provided order (sort). | 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:within: -- {GeofieldName} is within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notwithin: -- {GeofieldName} is not within the {given WKT string or the given BBOX }-- a WKT string or the BBOX string : "west, south, east, north"<br> <br> :intersects: -- {GeofieldName} intersects the {given WKT string or the given BBOX }\| a WKT string or the BBOX string : "west, south, east, north"<br> <br> :notintersects: -- {GeofieldName} does not intersect the {given WKT string or the given }-- a WKT string or the BBOX string : "west, south, east, north"` |
< string > array(multi) | |
Query | from optional |
From index to start the search from. Defaults to 0. | integer | 0 |
Query | max-age-cache optional |
max-age-cache | integer (int32) | |
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 | righthand optional |
If righthand = true, the passed WKT should be counter clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. Inversely, If righthand = false, the passed WKT should be clock-wise; otherwise, ARLAS-server will attempt to parse it as the "Complementary" Polygon on the other facet of the planet. |
boolean | |
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 | ArlasHit |
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
Definitions
Aggregation
Name | Schema |
---|---|
aggregated_geometries optional |
< enum (BBOX, CENTROID, CELL, CELLCENTER, GEOHASH, GEOHASH_CENTER) > array |
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) |
raw_geometries optional |
< RawGeometry > array |
size optional |
string |
type optional |
enum (datehistogram, geohash, geotile, histogram, term, geohex) |
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 |
geometries optional |
< ReturnedGeometry > array |
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 |
ArlasHit
Name | Schema |
---|---|
data optional |
object |
md optional |
MD |
Bbox
Name | Schema |
---|---|
east required |
number (double) |
north required |
number (double) |
south required |
number (double) |
west required |
number (double) |
CollectionDisplayNames
Name | Schema |
---|---|
collection optional |
string |
fields optional |
< string, string > map |
shape_columns optional |
< string, string > map |
CollectionOrganisations
Name | Schema |
---|---|
owner optional |
string |
public optional |
boolean |
shared optional |
< string > array |
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 |
hash_field optional |
string |
indexed optional |
boolean |
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, VARCHAR, CHAR, CHARACTER, BIT, TINYINT, SMALLINT, INT, BIGINT, DECIMAL, NUMERIC, REAL, DOUBLEPRECISION, TIMESTAMP, TIME, INTERVAL, GEOMETRY, GEOGRAPHY, POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, GEOMETRYCOLLECTION, MURMUR3) |
CollectionReferenceParameters
Name | Schema |
---|---|
atom_feed optional |
Feed |
centroid_path required |
string |
custom_params optional |
< string, string > map |
display_names optional |
CollectionDisplayNames |
dublin_core_element_name optional |
DublinCoreElementName |
exclude_fields optional |
string |
exclude_wfs_fields optional |
string |
filter optional |
Filter |
geometry_path required |
string |
h3_path optional |
string |
id_path required |
string |
index_name required |
string |
inspire optional |
Inspire |
license_name optional |
string |
license_urls optional |
< string > array |
open_search optional |
OpenSearch |
organisations optional |
CollectionOrganisations |
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 |
update_max_hits optional |
integer (int32) |
ComputationRequest
Name | Schema |
---|---|
field optional |
string |
filter optional |
Filter |
form optional |
Form |
metric optional |
enum (AVG, MAX, MIN, SUM, CARDINALITY, SPANNING, GEOBBOX, GEOCENTROID) |
ComputationResponse
Name | Schema |
---|---|
field optional |
string |
geometry optional |
GeoJsonObject |
metric optional |
enum (AVG, MAX, MIN, SUM, CARDINALITY, SPANNING, GEOBBOX, GEOCENTROID) |
query_time optional |
integer (int64) |
total_time optional |
integer (int64) |
totalnb optional |
integer (int64) |
value optional |
number (double) |
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, within, notwithin, intersects, notintersects) |
value 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 |
q optional |
< < string > array > array |
righthand optional |
boolean |
Form
Name | Schema |
---|---|
flat optional |
boolean |
pretty optional |
boolean |
Generator
Name | Schema |
---|---|
name optional |
string |
uri optional |
string |
version optional |
string |
Geo
Name | Schema |
---|---|
geometry optional |
GeoJsonObject |
path 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 |
Hits
Name | Schema |
---|---|
collection optional |
string |
hits optional |
< ArlasHit > 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 |
Link
Name | Schema |
---|---|
body optional |
object |
href required |
string |
method required |
string |
LngLatAlt
Name | Schema |
---|---|
additionalElements optional |
< number (double) > array |
altitude optional |
number (double) |
latitude optional |
number (double) |
longitude optional |
number (double) |
MD
Name | Schema |
---|---|
centroid optional |
GeoJsonObject |
geometry optional |
GeoJsonObject |
id optional |
string |
returned_geometries optional |
< Geo > array |
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 |
before 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 |
RasterTileURL
Name | Schema |
---|---|
check_geometry optional |
boolean |
id_path required |
string |
max_z optional |
integer (int32) |
min_z optional |
integer (int32) |
url required |
string |
RawGeometry
Name | Schema |
---|---|
geometry optional |
string |
include optional |
< string > array |
signedSort optional |
string |
sort optional |
string |
ReturnedGeometry
Name | Schema |
---|---|
geometry optional |
GeoJsonObject |
is_raw optional |
boolean |
reference optional |
string |
sort optional |
string |
Search
Name | Schema |
---|---|
filter optional |
Filter |
form optional |
Form |
page optional |
Page |
projection optional |
Projection |
returned_geometries optional |
string |
Success
Name | Schema |
---|---|
message optional |
string |
status optional |
integer (int32) |