Maps API
Maps are the foundation of the Waygo system. Maps link Catalog contents and Datasets together to create interactive maps.
This API allows your to create and manage your maps.
ENDPOINTS
POST /maps/v1
GET /maps/v1/:map_id
PUT /maps/v1/:map_id
DELETE /maps/v1/:map_id
GET /maps/v1
The Map object
Properties
- Name
map_id- Type
- string
- Description
The unique ID for the map object.
- Name
account_id- Type
- string
- Description
Unique identifier for the account.
- Name
map_source_id- Type
- string
- Description
The ID of the map source that this map inherits.
- Name
name- Type
- string
- Description
The map name. This is the name that is shown in the search bar of each map, and the map URL:
https://maps.waygomaps.com/:map_id/:map_view_id
- Name
unit_type- Type
- string
- Description
Can be 'Meters' or 'Feet'.
- Name
default_map_view_id- Type
- string
- Description
The ID of the Map View that is the default Map View of this Map.
The reason to set a specific Map View as the defualt map_view_id is that it will be accessible from
https://maps.waygomaps.com/:map_id, where all other map views will be accessible athttps://maps.waygomaps.com/:map_id/:map_view_id
- Name
created_at- Type
- timestamp
- Description
Timestamp of when the account was created.
- Name
updated_at- Type
- timestamp
- Description
Timestamp of when the account was last updated.
The Dataset object
{
"map_id": "203h0hdfodjfbdaboajbpjcv",
"account_id": "ajnvaslidvawudfw9yg9gsga",
"map_source_id": "9h2f9h93h9n33f9h24hf9h439fh",
"name": "Expo Map 2025",
"unit_type": "Meters",
"default_map_view_id": "n39q9h0ph9324hf9h9h2f9h03hl",
"created_at": 692233200,
"updated_at": 705103200
}
Create a map
This endpoint allows you to create a new map.
Required attributes
- Name
map_source_id- Type
- string
- Description
The ID of the map source that this map will pull the datasets from.
- Name
unit_type- Type
- string
- Description
"Meters" or "Feet".
Optional attributes
- Name
map_id- Type
- string | null
- Description
Sets a custom ID for this map. If not included, a unique map_id will be generated.
- Name
name- Type
- string | 'null'
- Description
Sets a custom name for the map. If not included, the map will be named 'Untitled map' by default.
- Name
default_map_view_id- Type
- string | null
- Description
Defines the ID of the map_view that is the default map view for this map. If not set, then the first map view created for this map will automaticallly be set as the default map view for this map.
POST /maps/v1
curl https://api.waygomaps.com/maps/v1 \
-H "Waygo-API-Key: eyJhbGciOiJIU...sXSJE_1AJgMEnI_g-WTerk" \
-H "Waygo-Account: n33f9h0fh9324hf9h439fh9h2f9h93h9" \
-d '{"map_source_id": "custom-map-source-id", "unit_type": "Meters", "name": "Expo Map 2025", "map_id": "custom-map-id"}'
Response
{
"map_id": "custom-map-id",
"account_id": "ajnvaslidvawudfw9gfogsyg9gsga",
"map_source_id": "custom-map-source-id",
"name": "Expo Map 2025",
"unit_type": "Meters",
"default_map_view_id": null,
"updated_at": 705103200,
"created_at": 692233200
}
Retrieve map metadata
This endpoint allows you to retrieve the metadata for a map.
GET /maps/v1/:map_id
curl https://api.waygomaps.com/maps/v1/:map_id \
-H "Waygo-API-Key: eyJhbGciOiJIU...sXSJE_1AJgMEnI_g-WTerk" \
-H "Waygo-Account: n33f9h0fh9324hf9h439fh9h2f9h93h9"
Response
{
"map_id": "custom-map-id",
"account_id": "ajnvaslidvawudfw9gfogsyg9gsga",
"map_source_id": "custom-map-source-id",
"name": "Expo Map 2025",
"unit_type": "Meters",
"default_map_view_id": null,
"updated_at": 705103200,
"created_at": 692233200
}
Update map metadata
This endpoint allows you to update the metadata of an existing map.
Optional attributes
- Name
name- Type
- string
- Description
The name of the map.
- Name
unit_type- Type
- string
- Description
The unit type used for measurements in this map.
- Name
default_map_view_id- Type
- string | null
- Description
The ID of the default map view to show when opening this map.
- Name
map_id- Type
- string
- Description
A custom ID for this map.
PUT /maps/v1/:map_id
curl -X PUT https://api.waygomaps.com/maps/v1/:map_id \
-H "Waygo-API-Key: eyJhbGciOiJIU...sXSJE_1AJgMEnI_g-WTerk" \
-H "Waygo-Account: n39q9h0ph9324hf9h4vksh9h2f9h03hl" \
-d '{"unit_type": "Feet"}'
Response
{
"map_id": "custom-map-id",
"account_id": "ajnvaslidvawudfw9gfogsyg9gsga",
"map_source_id": "custom-map-source-id",
"name": "Expo Map 2025",
"unit_type": "Feet",
"default_map_view_id": null,
"updated_at": 705103200,
"created_at": 692233200
}
Delete a map
This endpoint allows you to delete a map.
Be cautious using this endpoint on maps that are currently active.
DELETE /maps/v1/:map_id
curl -X DELETE https://api.waygomaps.com/maps/v1/:map_id \
-H "Waygo-API-Key: eyJhbGciOiJIU...sXSJE_1AJgMEnI_g-WTerk" \
-H "Waygo-Account: n33f9h0fh9324hf9h439fh9h2f9h93h9"
Response
204 No Content
List maps
This endpoint allows you to list the maps for your account. By default, this endpoint returns 20 maps at a time.
Optional parameters
- Name
skip- Type
- integer
- Description
Number of records to skip. Defaults to 0 if not specified.
- Name
limit- Type
- integer
- Description
Maximum number of records to return. Defaults to 20 if not specified.
GET /maps/v1
curl -X GET https://api.waygomaps.com/maps/v1 \
-H "Waygo-API-Key: eyJhbGciOiJIU...sXSJE_1AJgMEnI_g-WTerk" \
-H "Waygo-Account: n39q9h0ph9324hf9h4vksh9h2f9h03hl" \
-d skip=20 \
-d limit=20
Response
{
"maps": [
{
"map_id": "custom-map-id",
"account_id": "ajnvaslidvawudfw9gfogsyg9gsga",
"map_source_id": "custom-map-source-id",
"name": "Expo Map 2025",
"unit_type": "Feet",
"default_map_view_id": null,
"updated_at": 705103200,
"created_at": 692233200
}
// ...
],
total: 38,
skip: 1,
limit: 20
}