Livemap Search
Note: This documentation covers Livemap Search specific features. For common concepts like response format, pagination, and general query parameters, see the Getting Started Guide.
Overview
The Livemaps search endpoint provides a search interface for querying livemaps.
It supports the following types of filtering:
- Text search: Full-text search on livemap names
- Collection filtering: Filter by pinpoints (livemaps containing a specific pinpoint), portals, or users
- Tag filtering: Filter by tags (AND logic)
- Attribute filtering: Filter by contribution list and template status
Endpoint: GET /v3.0/livemaps/search
Response Format
Success Response
Status Code: 200 OK
Response Structure:
{
"count": 507,
"next": "https://api.getwemap.com/v3.0/livemaps/search?limit=20&offset=20&query=livemap",
"previous": null,
"results": [
{
"author": {
"name": "Livemap author name",
"photo_url": "https://api.getwemap.com/images/users/528251c270588692c1001a1a.87880647.png"
},
"contribution_list": null,
"count": 400,
"description": "Livemap description",
"external_id": "some-external-id",
"height": "100%",
"id": 1234567890,
"is_empty": false,
"is_template": false,
"introcard_background_url": "https://api.getwemap.com/images/default_background_image.jpg",
"introcard_avatar_url": "https://api.getwemap.com/images/users/52de51c279588692c1001a1a.87880647.png",
"landing_area": 3,
"language": "fr",
"latitude": 50.29433,
"latitude_delta": 1.50053,
"longitude": 2.63707,
"longitude_delta": 4.26043,
"preview_url": "https://api.getwemap.com/images/default-livemap-preview.png",
"name": "Livemap name",
"snippet": {
"layers": [
{
"url": "https://api.getwemap.com/assets/76b7d83ece8559c7b22cc2e4.52990132.json",
"name": "Some layer name",
"type": "geojson",
"maxzoom": 18,
"minzoom": 2,
"onclick": "zoom",
"onhover": "highlight",
"asset_id": 456,
"clustering": false
}
],
"maxzoom": 18,
"minzoom": 2,
"addcsize": [],
"aroundme": true,
"dragging": true,
"addctarget": [],
"clustering": true,
"markersize": 100,
"samewindow": false,
"showauthor": false,
"tilesstyle": null,
"homecontrol": true,
"routingmode": "driving",
"routingtype": "google",
"showaddress": true,
"usecalendar": true,
"zoomcontrol": true,
"enablepetals": true,
"howtocontrol": true,
"linksenabled": true,
"sharesnippet": true,
"clusterradius": 80,
"enablesidebar": true,
"featuredlists": false,
"searchcontrol": true,
"autoplaytimeout": 5000,
"canopenpinpoint": true,
"scrollwheelzoom": true,
"arnavigationdata": {
"default": "outdoor",
"arRadius": 1000
},
"enableembedshare": true,
"searchparameters": {
"region": "FR",
"geocoding": true
},
"showrelatedlists": false,
"showrelativedate": false,
"clicktofullscreen": true,
"disable_analytics": true,
"expanddescription": true,
"fullscreencontrol": true,
"showpinpointmedia": true,
"sidebarsforceopen": [
"navigation"
],
"calendarfiltermaxdate": "",
"calendarfiltermindate": "",
"showfinishedeventscontrol": true
},
"snippet_version": 1,
"tags": ["some-tag", "another-tag"],
"user": 4567,
"updated": "2023-04-18T14:51:56.766016Z",
"width": "100%"
},
// ... more livemaps
]
}
Note: For general response format details (count, next, previous, results fields), see the Getting Started Guide.
Error Responses
400 Bad Request
Returned when:
- No search criteria are provided (at least one criterion is required, except
sort_by_name) - Invalid tag format
Permissions
The endpoint respects livemap visibility permissions:
- Public livemaps: Visible to everyone
- Shared livemaps: Visible based on user permissions
- Private livemaps: Only visible to the livemap owner (authenticated users can see their own livemaps)
The permissions are automatically applied based on the authenticated user.
Query Parameters
Text Search
query (string, optional)
Full-text search on the livemap's name.
Searched Fields:
- Livemap name
Example:
GET /v3.0/livemaps/search?query=paris
Filtering by Collection
These parameters allow you to filter livemaps by the collections or objects they are linked to: pinpoints, portals, users. All of them are specified by their ID.
pinpoint (integer, optional)
Filter livemaps that include a specific pinpoint in their lists. Since livemaps contain lists, and lists contain pinpoints, this returns all livemaps that contain lists with the pinpoint specified by ID.
Example:
GET /v3.0/livemaps/search?pinpoint=789
portal (integer, optional)
Filter livemaps belonging to a specific portal.
Example:
GET /v3.0/livemaps/search?portal=10
user (integer, optional)
Filter livemaps created by a specific user.
Example:
GET /v3.0/livemaps/search?user=42
Attribute Filtering
contribution_list (integer, optional)
Filter livemaps that have a specific contribution list. The contribution list is a list that allows users to contribute pinpoints to the livemap.
Example:
GET /v3.0/livemaps/search?contribution_list=123
is_template (boolean, optional)
Filter livemaps that are templates. If true, returns only template livemaps. If false, returns only non-template livemaps.
Example:
GET /v3.0/livemaps/search?is_template=true
Tag Filtering
tags (comma-separated string, optional)
Filter livemaps that have all of the specified tags. Tags are combined with AND logic.
Format:
- Comma-separated tags:
tag1,tag2,tag3(means: tag1 AND tag2 AND tag3)
Example:
GET /v3.0/livemaps/search?tags=tourism,paris
Sorting
You can sort the results by relevance score (default sorting), by name, or by score and name combined.
Relevance sorting (default sorting)
Results are ranked by relevance, which considers:
- Recency: More recent livemaps (especially within the last 28 days) are ranked higher
- Text match quality: Better matches to your search query are ranked higher
sort_by_name (string, optional)
Sort results by livemap name. Values:
asc: Ascending orderdesc: Descending order
Example:
GET /v3.0/livemaps/search?sort_by_name=asc
sort_by_score_and_name (string, optional)
Sort results by score and then by name. Values:
asc: Ascending orderdesc: Descending order
Example:
GET /v3.0/livemaps/search?sort_by_score_and_name=desc
Pagination
For pagination parameters (limit and offset), see the Getting Started Guide.