Maps

Map management, pin ordering, sharing, and visit tracking

List all maps

get

Fetches all maps accessible to the authenticated user, including their pins, visit counts, and GCP details.

Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Query parameters
isPublicstring · enumOptional

Filter for public maps only

Possible values:
friendsstring · enumOptional

Filter for friends' public maps

Possible values:
Responses
chevron-right
200

List of maps

application/json
idintegerOptional
titlestringOptional
descriptionstring · nullableOptional
isPublicbooleanOptional
coverImagestring · nullableOptional
latitudenumber · nullableOptional
longitudenumber · nullableOptional
userIdstringOptional
createdAtstring · date-timeOptional
updatedAtstring · date-timeOptional
deletedAtstring · date-time · nullableOptional
get
/maps

Create a new map

post
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Body
titlestring · min: 1Required
descriptionstringOptional
isPublicbooleanOptionalDefault: false
coverImagestring · uriOptional
latitudenumber · min: -90 · max: 90Optional
longitudenumber · min: -180 · max: 180Optional
Responses
post
/maps

Get a map by ID

get
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired

Map ID

Responses
chevron-right
200

Map details

application/json
idintegerOptional
titlestringOptional
descriptionstring · nullableOptional
isPublicbooleanOptional
coverImagestring · nullableOptional
latitudenumber · nullableOptional
longitudenumber · nullableOptional
userIdstringOptional
createdAtstring · date-timeOptional
updatedAtstring · date-timeOptional
deletedAtstring · date-time · nullableOptional
get
/maps/{id}

Delete a map

delete
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Responses
chevron-right
200

Map deleted

application/json
messagestringOptional
deletedPinsintegerOptional
delete
/maps/{id}

Update a map

patch
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Body
titlestring · min: 1Optional
descriptionstring · nullableOptional
isPublicbooleanOptional
coverImagestring · uri · nullableOptional
latitudenumber · min: -90 · max: 90 · nullableOptional
longitudenumber · min: -180 · max: 180 · nullableOptional
Responses
chevron-right
200

Map updated

application/json
idintegerOptional
titlestringOptional
descriptionstring · nullableOptional
isPublicbooleanOptional
coverImagestring · nullableOptional
latitudenumber · nullableOptional
longitudenumber · nullableOptional
userIdstringOptional
createdAtstring · date-timeOptional
updatedAtstring · date-timeOptional
deletedAtstring · date-time · nullableOptional
patch
/maps/{id}

Get map completion progress

get

Gets the authenticated user's completion progress for a map, including which pins have been visited.

Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired

Map ID

Responses
chevron-right
200

Map progress

application/json
mapIdintegerOptional
mapTitlestringOptional
totalPinsintegerOptional
visitedPinsintegerOptional
completionPercentagenumberOptional
visitedPinIdsinteger[]Optional
get
/maps/{id}/progress

Reset map visit progress

post

Resets all visit records for a map. WARNING: This affects all users' progress for this map.

Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Responses
chevron-right
200

Progress reset successfully

application/json
successbooleanOptional
deletedVisitsintegerOptional
messagestringOptional
post
/maps/{id}/reset

Add pin to map

post
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Body
pinIdinteger · min: 1Required
orderintegerOptionalDefault: 0
Responses
post
/maps/{id}/pins

Remove pin from map

delete
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Query parameters
pinIdintegerRequired
Responses
chevron-right
200

Pin removed from map

application/json
messagestringOptional
delete
/maps/{id}/pins

Update pin order in map

patch
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Body
pinIdinteger · min: 1Required
orderintegerRequired
Responses
chevron-right
200

Pin order updated

application/json
mapIdintegerOptional
pinIdintegerOptional
orderintegerOptional
patch
/maps/{id}/pins

Get users a map is shared with

get
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Responses
chevron-right
200

List of share records

application/json
idintegerOptional
mapIdintegerOptional
userIdstringOptional
canEditbooleanOptional
sharedAtstring · date-timeOptional
get
/maps/{id}/share

Share map with a user

post
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Body
userIdstring · min: 1Required
canEditbooleanOptionalDefault: false
Responses
post
/maps/{id}/share

Unshare map with a user

delete
Authorizations
AuthorizationstringRequired

Bearer token authentication. Pass the session token obtained from /auth/sync.

Path parameters
idintegerRequired
Query parameters
userIdstringRequired
Responses
chevron-right
200

Map unshared

application/json
messagestringOptional
delete
/maps/{id}/share

Last updated