API ng Geotrackable
Available ang Geotrackable API sa parehong production domain para sa Android app at iba pang awtorisadong client.
Gamitin ang mga halimbawang ito para tiyakin ang live host, kumuha ng bearer token, basahin ang public map data, i-sync ang mga location na may sign-in, at gumamit ng mga trackable nang hindi hinuhulaan ang mga route name mula sa website UI.
Buksan ang live na status Mga error payload at paraan ng pag-recover Paghiling ng trackable secret code Bakit nagbalik ng 404 ang GET /api/account
Pag-setup ng Android app
Sa tab na Sync ng Android, ang origin lang ng site ang i-save bilang endpoint. Huwag idagdag ang /api.
https://Geotrackable.com
Mag-sign in sa pamamagitan ng pag-post ng local account credentials sa /api/auth/login?useCookies=false&useSessionCookies=false, pagkatapos ay ipadala ang ibinalik na bearer token sa Authorization header.
Mga inaasahang tugon
Nagbabalik ang mga protektadong route ng HTTP 401 hanggang magpadala ang client ng bearer token. Ang pagbukas ng POST-only route sa browser ay nagbabalik ng HTTP 405 dahil GET ang ipinapadala ng browser.
Sa bawat offline sync cycle, dapat mauna ang push at sumunod ang pull.
Nagbabalik ng HTTP 404 ang hindi kilalang API path. Karaniwang nagbabalik ng HTTP 405 ang kilalang path na tinawag gamit ang maling verb at maaari itong magkaroon ng Allow header. Sadyang walang GET endpoint ang delete-only na /api/account path, kaya nagbabalik ang GET /api/account ng 404 na may magagamit na tagubilin; gamitin ang /api/auth/manage/info para basahin ang account.
Suriin ang host, mag-sign in, at tiyakin ang token bago tumawag ng mga private route.
Ang route para sa kasalukuyang account information ay galing sa framework identity API. Ang hiwalay na account route ay para lang sa permanenteng pagbura.
Pagsuri ng status
Anonymous ang route na ito at ito ang pinakamabilis na paraan para tiyaking naaabot ang production API host.
curl "https://Geotrackable.com/api/system/status"
{
"status": "online",
"utcNow": "2026-06-20T12:00:00Z",
"androidBetaPageUrl": "https://Geotrackable.com/en-US/Account/Beta"
}
Pagpaparehistro
Gumawa ng lokal na account gamit ang email, password, at pampublikong profile user name bago humiling ng bearer token. Ang mga user name ay maaaring maglaman lamang ng maliliit na titik, numero, at underscore.
curl -X POST "https://Geotrackable.com/api/auth/register" \
-H "Content-Type: application/json" \
-d '{
"email": "tester@example.com",
"userName": "trail_tester",
"password": "StrongP@ssw0rd!"
}'
Pag-login gamit ang bearer token
Gumamit ng local account credentials na naka-disable ang cookies kapag kailangan ng script, app, o API client ng bearer token.
curl -X POST "https://Geotrackable.com/api/auth/login?useCookies=false&useSessionCookies=false" \
-H "Content-Type: application/json" \
-d '{
"email": "tester@example.com",
"password": "StrongP@ssw0rd!"
}'
{
"tokenType": "Bearer",
"accessToken": "eyJhbGciOi..."
}
Kasalukuyang account at profile
Walang GET /api/account profile endpoint. Gamitin ang identity manage-info endpoint para sa signed-in account metadata, at gamitin ang website profile pages para sa public profile display.
GET /api/account ay hindi published read route.
GET /api/auth/manage/info nagbabalik ng signed-in identity details.
DELETE /api/account permanenteng binubura ang kasalukuyang account.
curl "https://Geotrackable.com/api/auth/manage/info" \
-H "Authorization: Bearer <access token>"
Magsimula sa mga route na ito kapag sinusuri ang Android o API-client connection.
| Paraan | Ruta |
|---|---|
GET |
/api/system/status |
POST |
/api/auth/register |
POST |
/api/auth/login?useCookies=false&useSessionCookies=false |
GET |
/api/auth/manage/info |
POST |
/api/sync/push |
POST |
/api/sync/pull |
GET |
/api/notes/public/bounds |
GET |
/api/notes/public/nearby |
GET |
/api/categories/mine |
GET |
/api/notes/mine |
GET |
/api/trackables/public |
POST |
/api/trackables/lookup |
GET |
/api/trackables/active |
DELETE |
/api/account |
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
Gumagamit ang Geotrackable ng salitang Locations sa website, habang ginagamit pa rin ng mga API route name ang shared notes contracts sa ilalim.
Public locations sa loob ng map bounds
Gamitin ang bounds kapag mayroon nang map viewport ang client at kailangan nito ng nakikitang public location notes para sa lugar na iyon.
curl "https://Geotrackable.com/api/notes/public/bounds?minLatitude=41.78&minLongitude=-87.75&maxLatitude=41.96&maxLongitude=-87.54&contentLanguage=en-US"
[
{
"noteId": "4d6c5df3-3c53-4d0e-8e72-7d98a0f8a9f3",
"title": "Trailhead parking",
"body": "Small public lot near the north entrance.",
"contentLanguage": "en-US",
"latitude": 41.8818,
"longitude": -87.6231,
"visibility": "Public",
"updatedUtc": "2026-06-20T12:00:00Z"
}
]
Gumawa ng personal location
Makakagawa ng private o public locations ang caller na naka-sign in. Kailangan ng authenticated account ang public locations, hindi anonymous local-only storage.
curl -X POST "https://Geotrackable.com/api/notes/mine" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"categoryId": "4de6bb76-f25d-4c73-b8e3-81b9ca3bf08f",
"title": "Cache hide approach",
"body": "Use the east footpath after rain.",
"contentLanguage": "en-US",
"latitude": 41.8818,
"longitude": -87.6231,
"visibility": "Private",
"commentPolicy": "Disabled"
}'
curl -X POST "https://Geotrackable.com/api/categories/mine" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Weekend route checks",
"contentLanguage": "en-US",
"parentCategoryId": null
}'
I-push muna ang local changes, pagkatapos ay i-pull ang server view para sa user at kasalukuyang public area.
Kailangan ng bearer auth ang parehong sync route. Maaaring manatiling local sa device ang anonymous private locations, pero hindi tinatanggap ang mga ito ng server sync API.
Kahilingan sa push
curl -X POST "https://Geotrackable.com/api/sync/push" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"deviceId": "5dd06ca7-34a5-4f2e-812d-3f1ef3e48290",
"notes": [
{
"noteId": "ef90c4ca-88a9-4a9b-b3a8-36e2649c5dcb",
"ownerUserId": "a7cfd28f-c17f-4cf7-8913-47fa10fd0d1f",
"categoryId": "ca90c4ca-88a9-4a9b-b3a8-36e2649c5dcb",
"title": "Offline field stop",
"body": "Saved while disconnected.",
"contentLanguage": "en-US",
"latitude": 41.8818,
"longitude": -87.6231,
"visibility": 0,
"isDeleted": false,
"updatedUtc": "2026-06-20T12:05:00Z",
"clientMutationId": "android-offline-42",
"teamId": null
}
],
"categories": [
{
"categoryId": "ca90c4ca-88a9-4a9b-b3a8-36e2649c5dcb",
"ownerUserId": "a7cfd28f-c17f-4cf7-8913-47fa10fd0d1f",
"name": "Offline field notes",
"contentLanguage": "en-US",
"teamId": null,
"parentCategoryId": null,
"sortOrder": 0,
"isDeleted": false,
"updatedUtc": "2026-06-20T12:04:00Z"
}
]
}'
Dapat tumukoy ang bawat note sa category na nakikita na ng naka-sign-in na account o sa category na kasama sa parehong push. Panatilihing magkapareho ang categoryId sa dalawang record kapag magkasama silang ginagawa offline.
Kahilingan sa pull
curl -X POST "https://Geotrackable.com/api/sync/pull" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"lastSyncUtc": "2026-06-20T11:30:00Z",
"publicArea": {
"minLatitude": 41.78,
"minLongitude": -87.75,
"maxLatitude": 41.96,
"maxLongitude": -87.54
}
}'
{
"serverSyncUtc": "2026-06-20T12:06:00Z",
"userNotes": [],
"userCategories": [],
"teamCategories": [],
"publicNotes": [],
"teamNotes": []
}
Ayusin ang mga push conflict bago mag-pull
Maaaring magbalik ang valid na push ng HTTP 200 na may conflicts collection. Resulta ito ng synchronization para sa bawat entity, hindi transport failure. Kasama sa bawat conflict ang entityId, entityType, paliwanag na madaling basahin, stable na code, at kongkretong action.
{
"entityId": "ef90c4ca-88a9-4a9b-b3a8-36e2649c5dcb",
"entityType": "Note",
"reason": "Incoming note update is stale.",
"code": "stale_update",
"action": "Pull the current server copy, merge or discard the local edit, and then push a newer update."
}
Huwag tahimik na ulit-ulitin ang rejected entity. Nangangailangan ang stale_update ng pull at desisyon sa pag-merge; nangangailangan ang team_membership_required ng refreshed membership; inililipat ng online_team_management_required ang pagbabago sa online team APIs; nangangahulugan ang entity_ownership_conflict na ang server copy ang masusunod para sa account na ito.
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
Sensitive credentials ang secret codes at private QR payloads. Hindi na ibinabalik ng normal read routes ang mga ito pagkatapos ng paggawa.
Optional ang secretCode property sa POST /api/trackables. Alisin ito kapag gusto mong gumawa ang Geotrackable ng natatanging system secret code, o magpadala ng pinapayagang custom value kapag mayroon nang code ang pisikal na item na kailangan mong panatilihin.
Public browse at lookup
curl "https://Geotrackable.com/api/trackables/public?contentLanguage=en-US"
curl -X POST "https://Geotrackable.com/api/trackables/lookup" \
-c geotrackable.cookies \
-H "Content-Type: application/json" \
-d '{
"code": "GT7F3K9"
}'
Maaaring gumawa ng browser-style active session ang secret at QR lookup. Panatilihin ang cookie jar ng response para sa mga susunod na active-session call, protektahan ang file na iyon na parang credential, at burahin ito kapag hindi na kailangan ang session.
Gumawa ng trackable
Walang secretCode ang inirerekomendang request. Kapag inalis, null, empty, o puro whitespace ang value, hinihiling nito sa server na gumawa ng code. Kapag hindi empty ang value, kahilingan ito para sa eksaktong custom code na iyon pagkatapos ng normalization at availability checks.
curl -X POST "https://Geotrackable.com/api/trackables" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Scout trail coin",
"description": "Move this coin along family-friendly trails.",
"visibility": "AlwaysVisibleToEveryone",
"activateImmediately": true
}'
Humiling ng partikular na secret code
Ipadala lang ang secretCode kapag mayroon nang custom identifier ang item. Kung available ang normalized value, gagamitin ito ng server at magbabalik ng HTTP 201. Hiwalay ang generated public code at Geotrackable pa rin ang nagtatalaga nito.
curl -X POST "https://Geotrackable.com/api/trackables" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Existing event tag",
"description": "Uses the identifier already printed on the tag.",
"visibility": "VisibleOnceAccessed",
"activateImmediately": true,
"secretCode": "TAG42"
}'
Hindi dapat lumampas sa 32 character ang custom codes at dapat available ang mga ito sa buong namespace ng public at secret trackable codes. Ang mga code na nagsisimula sa GT, LN, TB, GK, o GC ay nakalaan para sa mga identifier na inilabas ng system o ng pinagmulang site at hindi maaaring gamitin bilang custom na Geotrackable secret codes.
Isang beses lang ipinapakita ang secrets sa creation response
I-save agad ang ibinalik na secretCode at scanUrl. Sadyang hindi na muling inilalantad ng mga susunod na list, detail, lookup, comment, at journey route ang credentials na iyon.
HTTP/1.1 201 Created
{
"trackableId": "13a2c0b1-582f-4a7b-92aa-16922f7bdb63",
"heading": "Scout trail coin",
"items": [
{
"trackableId": "13a2c0b1-582f-4a7b-92aa-16922f7bdb63",
"name": "Scout trail coin",
"publicCode": "GT-7F3K9Q",
"secretCode": "GT8M2Q7V",
"scanUrl": "https://geotrackable.com/trackable/<private-qr-token>",
"qrPayload": "<private-qr-token>"
}
]
}
Aktibong secret access
Pagkatapos magpasok ang browser ng valid secret code o scan payload, ipinapakita ng active-session routes kung ano ang kasalukuyang mabubuksan muli ng browser na iyon.
curl "https://Geotrackable.com/api/trackables/active" \
-b geotrackable.cookies
curl -X POST "https://Geotrackable.com/api/trackables/active/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/message" \
-b geotrackable.cookies \
-H "Content-Type: application/json" \
-d '{
"statusMessage": "Live hunt in progress"
}'
Kapag ginagamit na ang hiniling na code
Kapag ginagamit na ang custom code, nagbabalik ang server ng HTTP 409 na may code na trackable_secret_code_taken. Walang nalikhang trackable ang request. Huwag paulit-ulit na subukan ang parehong value: alisin ang secretCode para makatanggap ng generated code, o pumili ng ibang pinapayagang custom code.
{
"type": "/en-US/api-docs#errors-and-problem-details",
"title": "Requested secret code is unavailable.",
"status": 409,
"detail": "That secret code is already in use by another Geotrackable identifier. Supplying a secret code is optional: omit it to receive a unique system-generated code, or choose a different code.",
"instance": "/api/trackables",
"code": "trackable_secret_code_taken",
"field": "secretCode",
"action": "Omit secretCode to receive a unique system-generated code, or submit a different allowed secretCode.",
"requestId": "0HN7EXAMPLE:00000001",
"documentation": "/en-US/api-docs#errors-and-problem-details"
}
Pag-recover mula sa reserved prefix
GTay nakalaan para sa mga code na inilalabas ng Geotrackable system. Alisin ang secretCode at hayaan ang host na ito na magbigay ng code.LNay kabilang sa mga trackable ng LocationNotes; ayusin ang item sa pinagmulang site nito sa halip na gamitin dito ang code nito.TBay kabilang sa mga trackable ng Geocaching.com; gamitin ang tracking flow ng pinagmulan.GKay kabilang sa mga trackable ng GeoKrety.org; gamitin ang tracking flow ng pinagmulan.GCay Geocaching.com geocache identifier, hindi Geotrackable secret code.
Nagbabalik ang reserved o invalid na custom values ng problem response na may action at link sa dokumentasyon. Ang palaging ligtas na fallback ay alisin ang secretCode sa create request.
Mag-log ng journey stop
Ang direct journey stop ay magaan na route update kapag hindi kailangan ang buong location note.
curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/journey-stops" \
-H "Content-Type: application/json" \
-d '{
"latitude": 41.8818,
"longitude": -87.6231,
"accessCode": "GT-SECRET-OR-SCAN-PAYLOAD"
}'
Magkomento sa trackable
Maaaring mag-comment ang mga naka-sign-in na caller gamit ang kanilang bearer identity. Maaari ring mag-comment ang anonymous na caller sa activated trackable kapag may active secret-backed session ang client na ito o ipinapadala nito ang accessCode para sa eksaktong item na iyon.
curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments" \
-b geotrackable.cookies \
-H "Content-Type: application/json" \
-d '{
"body": "Found near the overlook and moved west.",
"accessCode": ""
}'
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
Lumikha ng isang koponan
curl -X POST "https://Geotrackable.com/api/teams" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"name": "trail-club",
"title": "Trail Club",
"description": "Weekend route and trackable group.",
"joinPolicy": "RequestsAllowed",
"pageVisibility": "Public",
"defaultNoteVisibility": "Public",
"contentLanguage": "en-US"
}'
Gumawa ng invite link
curl -X POST "https://Geotrackable.com/api/teams/73edb511-cd8c-4888-8c45-3a04b3d6da11/invite-links" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"isSingleUse": false
}'
curl -X POST "https://Geotrackable.com/api/teams/invite-links/trail-club/INVITE-CODE/join" \
-H "Authorization: Bearer <access token>"
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
Mga imahe
Maaaring anonymous ang list reads kapag public-safe ang parent page. Kailangan ng bearer auth para sa upload at delete routes.
curl "https://Geotrackable.com/api/images/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
curl -X POST "https://Geotrackable.com/api/images/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>" \
-F "files=@trail-coin.jpg"
Pag-verify ng external link
I-verify ang external link bago ito i-store sa location, team, trackable, o trackable group.
curl -X POST "https://Geotrackable.com/api/external-links/verify" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/trail-guide"
}'
Content at error reports
Gamitin ang reports para sa public-page content concerns at errors para sa client-side diagnostics na maaaring kailangang suriin ng support.
curl -X POST "https://Geotrackable.com/api/compliance/reports" \
-H "Content-Type: application/json" \
-d '{
"pageType": "Trackable",
"contentType": "Trackable",
"pageTitle": "Scout trail coin",
"pageUrl": "https://Geotrackable.com/trackable/GT7F3K9",
"pageReference": "GT7F3K9",
"contentLabel": "Trackable page",
"contentReference": "13a2c0b1-582f-4a7b-92aa-16922f7bdb63",
"contentPreview": "Move this coin along family-friendly trails.",
"reportTitle": "Outdated public link",
"reportExplanation": "The linked trail guide now points somewhere unexpected."
}'
Burahin ang account mula sa API
Maaaring permanenteng burahin ng authenticated clients ang kasalukuyang account at synced personal data sa pamamagitan ng API. Basahin muna ang Delete Data page kapag kailangan mo ng export steps o shared trackable retention rules.
curl -X DELETE "https://Geotrackable.com/api/account" \
-H "Authorization: Bearer <access token>"
{
"deletedAccount": true,
"notesDeleted": 14,
"categoriesDeleted": 6,
"linkedProvidersDeleted": 2
}
Kasama sa mga error ang susunod na kapaki-pakinabang na action
Tinutukoy ng mga API problem response ang failure gamit ang stable na code, ipinapaliwanag ang detail na partikular sa request, at nagbibigay ng action na maaaring ipakita o sundin ng mga client. Gamitin ang requestId kapag kailangang itugma ng support ang request sa server diagnostics.
Iproseso ang machine code, panatilihin ang request ID, at sundin ang action sa halip na suriin ang English na text.
Gumagamit ang mga API failure ng application/problem+json at RFC-style na problem-details object. Maaaring pagandahin o i-localize sa paglipas ng panahon ang title at detail na madaling basahin; ang code ang stable na value para sa program logic.
Anyo ng problem response
Content-Type: application/problem+json
{
"type": "/en-US/api-docs#errors-and-problem-details",
"title": "Trackable access is required.",
"status": 403,
"detail": "This request needs access to this specific trackable.",
"instance": "/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments",
"code": "trackable_access_code_required",
"action": "Sign in, keep this trackable active in this client, or provide its secret code or private QR access value.",
"requestId": "0HN7EXAMPLE:00000002",
"documentation": "/en-US/api-docs#errors-and-problem-details"
}
Gamit ng bawat field
type- Stable na URI para sa problem-details contract na ito. Gamitin ang code, hindi ang type o text na para sa tao, upang matukoy ang eksaktong failure sa client logic.
title- Maikling buod na madaling basahin at angkop na heading. Huwag ibatay ang client logic sa text na ito.
status- Ang HTTP status na inulit sa body upang manatiling nauunawaan ang nakuhang diagnostics.
detail- Paliwanag na partikular sa request na nagsasabi kung ano ang nabigo nang hindi inuulit ang credentials o private tokens.
instance- Ang request path na nauugnay sa pangyayaring ito. Maaaring i-redact ang mga website entry path na may secret.
code- Ang stable at machine-readable na identifier na dapat gamiting batayan ng mga client.
action- Ang kongkretong hakbang sa pag-recover: magtama ng field, mag-authenticate, maghintay, bawasan ang payload, o pumili ng ibang value.
requestId- Isang correlation value na ligtas isama sa kahilingan sa support. Panatilihin ito kasama ng status, code, method, at route template.
documentation- Lokasyon ng tulong para sa uri ng failure o sa eksaktong code.
Kasama sa validation errors ang mga field name
Nagdaragdag ng errors object ang mga HTTP 400 validation failure. Ang bawat key ay ang JSON property o bahagi ng request na kailangang itama, at array ang bawat value dahil maaaring lumabag ang isang field sa higit sa isang rule.
{
"type": "/en-US/api-docs#errors-and-problem-details",
"title": "Request validation failed.",
"status": 400,
"detail": "One or more request fields are invalid. Correct every field listed in errors and submit the request again.",
"instance": "/api/trackables",
"code": "validation_failed",
"action": "Correct every field listed in errors and submit the request again.",
"requestId": "0HN7EXAMPLE:00000003",
"documentation": "/en-US/api-docs#errors-and-problem-details",
"errors": {
"name": ["Name cannot be longer than 160 characters."],
"secretCode": ["Secret code cannot be longer than 32 characters."]
}
}
Maling JSON at content type
Request validation failure ang invalid na JSON. Panatilihin ang requestId, ayusin ang syntax, at ipadala muli ang body na may Content-Type: application/json. Sa halip, nangangailangan ang mga file-upload endpoint ng multipart/form-data at ng files o file part na may field name na partikular sa route.
Maaari pa ring lumabag sa business rule ang body na tama ang syntax. Gamitin ang errors para sa mga problema sa field, code para sa program logic, detail para sa konteksto, at action para sa susunod na hakbang. Huwag ipakita sa mga user ang raw server exception o stack trace.
| Katayuan | Ang ibig sabihin nito | Pag-recover | Gabay sa muling pagsubok |
|---|---|---|---|
400 Bad Request |
Tinanggihan ang request dahil sa JSON, query values, field constraints, o isang business rule. | Basahin ang errors kapag mayroon; kung wala, basahin ang code, detail, at action. Itama ang request bago ito ipadala muli. | Huwag subukang muli ang request na walang pagbabago. |
401 Unauthorized |
Hindi nakatanggap ang protected route ng magagamit na bearer token. Gumagamit din ng 401 ang mga pagkabigo sa pag-login nang hindi isinisiwalat kung may umiiral na email. | Kumuha o mag-refresh ng token, tiyakin ang Bearer scheme at host, at pagkatapos ay ulitin nang isang beses ang nilalayong call. | Subukan lang ulit pagkatapos magbago ang authentication; hindi makatutulong ang paulit-ulit na pagtatangka na walang pagbabago. |
403 Forbidden |
Kilala ang caller ngunit wala itong kinakailangang ownership, team role, active trackable session, o secret-backed access. | Sundin ang action: gumamit ng eligible na account, humiling ng access, i-activate ang item, o magbigay ng access para sa eksaktong trackable na iyon. | Huwag subukang muli hangga't hindi nagbabago ang access state. |
404 Not Found |
Hindi nakita ang route o resource. Maaaring sadyang magmukhang wala ang private resources kapag hindi dapat malaman ng caller na umiiral ang mga ito. | Tiyakin ang method, route, GUID, public code, at kasalukuyang state ng listahan. I-refresh ang lumang client data. | Huwag gumawa ng loop. Subukan lang ulit pagkatapos itama ang identifier o i-refresh ang state. |
405 Method Not Allowed |
Umiiral ang path ngunit mali ang HTTP verb, gaya ng pagbukas gamit ang browser GET sa route na POST lang. | Gamitin ang method na ipinapakita sa dokumentasyong ito at tingnan ang Allow response header kapag mayroon. | Subukan lang ulit gamit ang tamang method at anyo ng request. |
409 Conflict |
Valid ang request ngunit may conflict ito sa kasalukuyang server state, kabilang ang hiniling na trackable secret code na ginagamit na. | I-reload ang kasalukuyang state o baguhin ang value na may conflict. Para gumawa ng trackable, alisin ang secretCode upang mag-generate ng code o pumili ng ibang custom code. | Huwag subukang muli ang parehong create value; subukan lang ulit pagkatapos baguhin ang request o state. |
413 Content Too Large |
Lumampas sa tinatanggap na laki ang request body o set ng mga in-upload na file. | Bawasan ang dami o laki ng mga image, hatiin ang upload kapag pinapayagan ng workflow, at ihiwalay ang metadata requests sa media. | Subukan lang ulit gamit ang mas maliit na payload. |
415 Unsupported Media Type |
Hindi tumutugma sa endpoint ang body encoding. | Gamitin ang application/json para sa JSON endpoints at multipart/form-data para sa image o GPX upload endpoints. Hayaan ang HTTP library na gumawa ng multipart boundaries. | Subukan lang ulit pagkatapos itama ang Content-Type at body encoding. |
429 Too Many Requests |
Lumampas ang client sa request limit o napakabilis nitong nagpapadala nang maramihan. | Sundin ang Retry-After kapag mayroon, bawasan ang concurrency, i-cache ang public reads, at pagsamahin ang magkakaparehong requests. | Maghintay ayon sa Retry-After; kung wala ito, gumamit ng exponential backoff na may jitter at limitasyon sa muling pagsubok. |
500 Internal Server Error |
Naitala ng Geotrackable ang hindi inaasahang failure. Hindi inilalantad ng response ang stack traces o internal secrets. | Panatilihin ang requestId at ticketNumber kapag mayroon, pagkatapos ay makipag-ugnayan sa support kasama ang oras, method, route template, status, at code. | Subukang muli ang safe reads pagkatapos ng paghihintay. Huwag basta ulitin ang create o ibang non-idempotent write kapag hindi alam kung na-commit ito. |
Maingat na ulitin ang writes
Karaniwang ligtas subukang muli ang mga GET request. Maaaring lumikha ng data ang POST kahit mag-timeout ang client bago matanggap ang response. Bago ulitin ang paggawa ng trackable, i-refresh ang GET /api/trackables/mine at itugma ang resulta upang hindi lumikha ng magkaparehong pisikal na item ang network timeout.
Para sa 429 o pansamantalang 500, gumamit ng bounded exponential backoff na may jitter. Huminto kapag sinasabi ng action na kailangang baguhin ang mismong request. Huwag kailanman gawing automatic retry loop ang 400, 403, 404, 405, 409, 413, o 415.
Panatilihing kapaki-pakinabang ang diagnostics nang hindi naglalantad ng credentials
Huwag kailanman i-log ang Authorization headers, bearer o refresh tokens, passwords, cookies, secretCode, accessCode, QR payloads, private scan URLs, o raw na /trackable/{code} entry paths. I-redact ang mga ito bago ilagay sa telemetry, crash reports, screenshots, at support attachments.
Kabilang sa mga ligtas na diagnostic field ang requestId, ticketNumber, HTTP status, stable na code, method, route template, client version, at timestamp. Huwag kopyahin ang buong request body kapag maaari itong maglaman ng location text, eksaktong coordinates, contact details, o trackable credential.
POST /api/trackables -> 409
code=trackable_secret_code_taken
requestId=0HN7EXAMPLE:00000001
secretCode=[REDACTED]
Mga inilathalang Geotrackable API route
Ginagawa ang talahanayang ito mula sa tumatakbong endpoint table ng Geotrackable upang manatiling tugma sa host ang inilathalang dokumentasyon.
| Paraan | Ruta | Pag-access |
|---|---|---|
DELETE |
/api/account |
Kailangan ang awtorisasyon |
GET |
/api/auth/confirmEmail |
Hindi nakikilala |
POST |
/api/auth/forgotPassword |
Hindi nakikilala |
POST |
/api/auth/login |
Hindi nakikilala |
POST |
/api/auth/manage/2fa |
Kailangan ang awtorisasyon |
GET |
/api/auth/manage/info |
Kailangan ang awtorisasyon |
POST |
/api/auth/manage/info |
Kailangan ang awtorisasyon |
POST |
/api/auth/refresh |
Hindi nakikilala |
POST |
/api/auth/register |
Hindi nakikilala |
POST |
/api/auth/resendConfirmationEmail |
Hindi nakikilala |
POST |
/api/auth/resetPassword |
Hindi nakikilala |
GET |
/api/categories/mine |
Kailangan ang awtorisasyon |
POST |
/api/categories/mine |
Kailangan ang awtorisasyon |
GET |
/api/categories/mine/tree |
Kailangan ang awtorisasyon |
GET |
/api/categories/mine/tree/children |
Kailangan ang awtorisasyon |
GET |
/api/categories/mine/tree/sections |
Kailangan ang awtorisasyon |
DELETE |
/api/categories/mine/{categoryId} |
Kailangan ang awtorisasyon |
POST |
/api/categories/mine/{categoryId}/move |
Kailangan ang awtorisasyon |
POST |
/api/compliance/errors |
Hindi nakikilala |
GET |
/api/compliance/reports |
Kailangan ang awtorisasyon |
POST |
/api/compliance/reports |
Hindi nakikilala |
GET |
/api/compliance/reports/mine |
Kailangan ang awtorisasyon |
GET |
/api/compliance/reports/{contentReportId} |
Kailangan ang awtorisasyon |
PUT |
/api/compliance/reports/{contentReportId} |
Kailangan ang awtorisasyon |
POST |
/api/external-links/verify |
Kailangan ang awtorisasyon |
GET |
/api/images/notes/{noteId} |
Hindi nakikilala |
POST |
/api/images/notes/{noteId} |
Kailangan ang awtorisasyon |
POST |
/api/images/profiles |
Kailangan ang awtorisasyon |
GET |
/api/images/profiles/{userId} |
Hindi nakikilala |
GET |
/api/images/teams/{teamId} |
Hindi nakikilala |
POST |
/api/images/teams/{teamId} |
Kailangan ang awtorisasyon |
GET |
/api/images/trackable-groups/{trackableGroupId} |
Hindi nakikilala |
POST |
/api/images/trackable-groups/{trackableGroupId} |
Kailangan ang awtorisasyon |
GET |
/api/images/trackables/{trackableId} |
Hindi nakikilala |
POST |
/api/images/trackables/{trackableId} |
Kailangan ang awtorisasyon |
DELETE |
/api/images/{contentImageId} |
Kailangan ang awtorisasyon |
GET |
/api/images/{contentImageId}/{variant} |
Hindi nakikilala |
GET |
/api/locations/mine/gpx |
Kailangan ang awtorisasyon |
POST |
/api/locations/mine/gpx |
Kailangan ang awtorisasyon |
GET |
/api/notes/mine |
Kailangan ang awtorisasyon |
POST |
/api/notes/mine |
Kailangan ang awtorisasyon |
GET |
/api/notes/mine/gpx |
Kailangan ang awtorisasyon |
POST |
/api/notes/mine/gpx |
Kailangan ang awtorisasyon |
DELETE |
/api/notes/mine/{noteId} |
Kailangan ang awtorisasyon |
POST |
/api/notes/mine/{noteId}/move |
Kailangan ang awtorisasyon |
GET |
/api/notes/public/bounds |
Hindi nakikilala |
GET |
/api/notes/public/nearby |
Hindi nakikilala |
GET |
/api/public/notes/{noteId} |
Hindi nakikilala |
GET |
/api/public/notes/{noteId}/comments |
Hindi nakikilala |
POST |
/api/public/notes/{noteId}/comments |
Kailangan ang awtorisasyon |
GET |
/api/public/notes/{noteId}/trackables |
Hindi nakikilala |
POST |
/api/public/notes/{noteId}/trackables |
Kailangan ang awtorisasyon |
GET |
/api/public/profiles/{userName}/notes/nearby |
Hindi nakikilala |
GET |
/api/public/teams/{teamName}/notes/nearby |
Hindi nakikilala |
POST |
/api/sync/pull |
Kailangan ang awtorisasyon |
POST |
/api/sync/push |
Kailangan ang awtorisasyon |
GET |
/api/system/beta-android |
Hindi nakikilala |
GET |
/api/system/coordinate-locality |
Hindi nakikilala |
GET |
/api/system/ip-location |
Hindi nakikilala |
GET |
/api/system/status |
Hindi nakikilala |
GET |
/api/teams |
Kailangan ang awtorisasyon |
POST |
/api/teams |
Kailangan ang awtorisasyon |
POST |
/api/teams/invite-links/{teamSlug}/{inviteCode}/join |
Kailangan ang awtorisasyon |
DELETE |
/api/teams/{teamId} |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/categories |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/categories |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/categories/tree |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/categories/tree/children |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/categories/tree/sections |
Kailangan ang awtorisasyon |
DELETE |
/api/teams/{teamId}/categories/{categoryId} |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/categories/{categoryId}/move |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/invite-links |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/invite-links |
Kailangan ang awtorisasyon |
DELETE |
/api/teams/{teamId}/invite-links/{inviteLinkId} |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/locations/gpx |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/locations/gpx |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/memberships/invite |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/memberships/request |
Kailangan ang awtorisasyon |
DELETE |
/api/teams/{teamId}/memberships/{membershipId} |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/memberships/{membershipId}/accept |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/memberships/{membershipId}/approve |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/memberships/{membershipId}/deny |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/memberships/{membershipId}/promote-admin |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/memberships/{membershipId}/refuse |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/notes |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/notes |
Kailangan ang awtorisasyon |
GET |
/api/teams/{teamId}/notes/gpx |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/notes/gpx |
Kailangan ang awtorisasyon |
DELETE |
/api/teams/{teamId}/notes/{noteId} |
Kailangan ang awtorisasyon |
DELETE |
/api/teams/{teamId}/notes/{noteId}/delete |
Kailangan ang awtorisasyon |
POST |
/api/teams/{teamId}/notes/{noteId}/move |
Kailangan ang awtorisasyon |
PUT |
/api/teams/{teamId}/settings |
Kailangan ang awtorisasyon |
POST |
/api/trackables |
Kailangan ang awtorisasyon |
GET |
/api/trackables/active |
Hindi nakikilala |
GET |
/api/trackables/active-indicator |
Hindi nakikilala |
DELETE |
/api/trackables/active/{trackableId} |
Hindi nakikilala |
GET |
/api/trackables/active/{trackableId} |
Hindi nakikilala |
POST |
/api/trackables/active/{trackableId}/deactivate |
Hindi nakikilala |
POST |
/api/trackables/active/{trackableId}/message |
Hindi nakikilala |
POST |
/api/trackables/groups |
Kailangan ang awtorisasyon |
DELETE |
/api/trackables/groups/{trackableGroupId}/watch |
Kailangan ang awtorisasyon |
POST |
/api/trackables/groups/{trackableGroupId}/watch |
Kailangan ang awtorisasyon |
POST |
/api/trackables/legacy-lookup |
Hindi nakikilala |
GET |
/api/trackables/lookup |
Hindi nakikilala |
POST |
/api/trackables/lookup |
Hindi nakikilala |
GET |
/api/trackables/mine |
Kailangan ang awtorisasyon |
GET |
/api/trackables/public |
Hindi nakikilala |
GET |
/api/trackables/{trackableId} |
Hindi nakikilala |
POST |
/api/trackables/{trackableId}/activate |
Kailangan ang awtorisasyon |
GET |
/api/trackables/{trackableId}/comments |
Hindi nakikilala |
POST |
/api/trackables/{trackableId}/comments |
Hindi nakikilala |
DELETE |
/api/trackables/{trackableId}/comments/{commentId} |
Kailangan ang awtorisasyon |
PUT |
/api/trackables/{trackableId}/comments/{commentId} |
Kailangan ang awtorisasyon |
DELETE |
/api/trackables/{trackableId}/group |
Kailangan ang awtorisasyon |
POST |
/api/trackables/{trackableId}/group |
Kailangan ang awtorisasyon |
GET |
/api/trackables/{trackableId}/journey |
Hindi nakikilala |
POST |
/api/trackables/{trackableId}/journey-stops |
Hindi nakikilala |
DELETE |
/api/trackables/{trackableId}/journey-stops/{journeyStopId} |
Kailangan ang awtorisasyon |
DELETE |
/api/trackables/{trackableId}/watch |
Kailangan ang awtorisasyon |
POST |
/api/trackables/{trackableId}/watch |
Kailangan ang awtorisasyon |
DELETE /api/account
Maaaring permanenteng burahin ng authenticated clients ang kasalukuyang account at synced personal data sa pamamagitan ng API. Basahin muna ang Delete Data page kapag kailangan mo ng export steps o shared trackable retention rules.
curl -X DELETE "https://Geotrackable.com/api/account" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns deletion counts after the signed-in account and eligible personal data were permanently removed. A successful response signs the current session out.
Mga karaniwang failure at paraan ng pag-recover
401 requires a valid bearer token. 400 explains why deletion cannot complete. Account deletion is destructive: do not automatically retry after an unknown timeout; check sign-in state first.
GET /api/auth/confirmEmail
Complete email confirmation with the user ID and URL-encoded confirmation code from the confirmation link.
curl "https://Geotrackable.com/api/auth/confirmEmail?userId=13a2c0b1-582f-4a7b-92aa-16922f7bdb63&code=URL_ENCODED_CONFIRMATION_CODE"
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
POST /api/auth/forgotPassword
Start an email-based account recovery or confirmation workflow. The response deliberately does not reveal whether the email address exists.
curl -X POST "https://Geotrackable.com/api/auth/forgotPassword" \
-H "Content-Type: application/json" \
-d '{ "email": "api-user@example.com" }'
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
POST /api/auth/login
Exchange local account credentials, and a two-factor value when required, for bearer and refresh tokens. API clients must keep cookies disabled.
curl -X POST "https://Geotrackable.com/api/auth/login?useCookies=false&useSessionCookies=false" \
-H "Content-Type: application/json" \
-d '{ "email": "api-user@example.com", "password": "Use-a-strong-password-123!" }'
Matagumpay na response
HTTP 200 returns tokenType, accessToken, expiration data, and the signed-in user summary. Store credentials in platform-secure storage and never log them.
Mga karaniwang failure at paraan ng pag-recover
400 covers malformed JSON or missing fields. 401 authentication_failed deliberately does not reveal whether the email exists; verify credentials or use the password-reset flow before retrying. A 401 two_factor_required response keeps requiresTwoFactor true and tells the client to repeat login with either twoFactorCode or twoFactorRecoveryCode.
POST /api/auth/manage/2fa
Enable, disable, reset, or inspect two-factor authentication for the signed-in account. Authenticator and recovery values are sensitive credentials.
curl -X POST "https://Geotrackable.com/api/auth/manage/2fa" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "enable": true, "twoFactorCode": "123456", "resetSharedKey": false, "resetRecoveryCodes": false, "forgetMachine": false }'
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
GET /api/auth/manage/info
Read the signed-in account email and confirmation state, or update the email/password with the current password when required.
curl "https://Geotrackable.com/api/auth/manage/info" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
POST /api/auth/manage/info
Read the signed-in account email and confirmation state, or update the email/password with the current password when required.
curl -X POST "https://Geotrackable.com/api/auth/manage/info" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "newEmail": "new-api-user@example.com", "oldPassword": "Use-a-strong-password-123!" }'
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
POST /api/auth/refresh
Exchange a still-usable refresh token for a new access-token response without resending the account password.
curl -X POST "https://Geotrackable.com/api/auth/refresh" \
-H "Content-Type: application/json" \
-d '{ "refreshToken": "<refresh token from login>" }'
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
POST /api/auth/register
Create a local account with an email address, public user name, and strong password. Registration does not return a bearer token; sign in next.
curl -X POST "https://Geotrackable.com/api/auth/register" \
-H "Content-Type: application/json" \
-d '{ "email": "api-user@example.com", "userName": "api_trail_user", "password": "Use-a-strong-password-123!" }'
Matagumpay na response
HTTP 200 means the local account was created. The response has no bearer token; call the login route next.
Mga karaniwang failure at paraan ng pag-recover
400 validation_failed identifies malformed JSON or email, password, and userName field errors. Correct the listed errors; duplicate values require a different email or public user name.
POST /api/auth/resendConfirmationEmail
Start an email-based account recovery or confirmation workflow. The response deliberately does not reveal whether the email address exists.
curl -X POST "https://Geotrackable.com/api/auth/resendConfirmationEmail" \
-H "Content-Type: application/json" \
-d '{ "email": "api-user@example.com" }'
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
POST /api/auth/resetPassword
Complete password recovery with the exact reset code from email and a new strong password. Reset codes are credentials and must not be logged.
curl -X POST "https://Geotrackable.com/api/auth/resetPassword" \
-H "Content-Type: application/json" \
-d '{ "email": "api-user@example.com", "resetCode": "URL_ENCODED_RESET_CODE", "newPassword": "Use-a-new-strong-password-456!" }'
Matagumpay na response
HTTP 200 means the identity operation completed. Read the returned identity payload when the operation provides one; password and confirmation operations can intentionally return an empty success body.
Mga karaniwang failure at paraan ng pag-recover
400 includes field-level identity validation guidance; 401 means the bearer token or credentials are unusable. Follow action and do not retry unchanged credentials in a loop.
GET /api/categories/mine
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/categories/mine" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the personal category list, management tree, sections, or requested children. Empty branches are successful.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
POST /api/categories/mine
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X POST "https://Geotrackable.com/api/categories/mine" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "name": "Trail research", "contentLanguage": "en-US", "parentCategoryId": null }'
Matagumpay na response
HTTP 200 returns the created or moved category, or acknowledges deletion after descendant rules are satisfied.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
GET /api/categories/mine/tree
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/categories/mine/tree" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the personal category list, management tree, sections, or requested children. Empty branches are successful.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
GET /api/categories/mine/tree/children
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/categories/mine/tree/children" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the personal category list, management tree, sections, or requested children. Empty branches are successful.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
GET /api/categories/mine/tree/sections
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/categories/mine/tree/sections" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the personal category list, management tree, sections, or requested children. Empty branches are successful.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
DELETE /api/categories/mine/{categoryId}
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X DELETE "https://Geotrackable.com/api/categories/mine/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the created or moved category, or acknowledges deletion after descendant rules are satisfied.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
POST /api/categories/mine/{categoryId}/move
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X POST "https://Geotrackable.com/api/categories/mine/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/move" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "parentCategoryId": null }'
Matagumpay na response
HTTP 200 returns the created or moved category, or acknowledges deletion after descendant rules are satisfied.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
POST /api/compliance/errors
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/compliance/errors" \
-H "Content-Type: application/json" \
-d '{ "requestUrl": "/api/example", "httpMethod": "POST", "responseStatusCode": 500, "traceIdentifier": "0HN7EXAMPLE:00000004", "userExplanation": "The save failed after the map was updated." }'
Matagumpay na response
HTTP 200 or 201 returns an error ticket receipt. HTTP 200 means the request was attached to an existing ticket; HTTP 201 means a new ticket was created.
Mga karaniwang failure at paraan ng pag-recover
400 explains missing report context or invalid workflow state; 401 protects personal/admin lists; 403 requires the appropriate reporter or SuperAdmin role; 404 means preserve the ID but refresh the report list.
GET /api/compliance/reports
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/compliance/reports" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the report or report collection visible to the signed-in reporter or authorized administrator.
Mga karaniwang failure at paraan ng pag-recover
400 explains missing report context or invalid workflow state; 401 protects personal/admin lists; 403 requires the appropriate reporter or SuperAdmin role; 404 means preserve the ID but refresh the report list.
POST /api/compliance/reports
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/compliance/reports" \
-H "Content-Type: application/json" \
-d '{ "pageType": "Trackable", "contentType": "Trackable", "pageTitle": "Scout trail coin", "pageUrl": "/trackable/GT-EXAMPLE", "reportTitle": "Outdated public link", "reportExplanation": "The destination is no longer related to this trackable." }'
Matagumpay na response
HTTP 201 returns the content-report receipt and report identifier for later follow-up.
Mga karaniwang failure at paraan ng pag-recover
400 explains missing report context or invalid workflow state; 401 protects personal/admin lists; 403 requires the appropriate reporter or SuperAdmin role; 404 means preserve the ID but refresh the report list.
GET /api/compliance/reports/mine
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/compliance/reports/mine" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the report or report collection visible to the signed-in reporter or authorized administrator.
Mga karaniwang failure at paraan ng pag-recover
400 explains missing report context or invalid workflow state; 401 protects personal/admin lists; 403 requires the appropriate reporter or SuperAdmin role; 404 means preserve the ID but refresh the report list.
GET /api/compliance/reports/{contentReportId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/compliance/reports/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the report or report collection visible to the signed-in reporter or authorized administrator.
Mga karaniwang failure at paraan ng pag-recover
400 explains missing report context or invalid workflow state; 401 protects personal/admin lists; 403 requires the appropriate reporter or SuperAdmin role; 404 means preserve the ID but refresh the report list.
PUT /api/compliance/reports/{contentReportId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X PUT "https://Geotrackable.com/api/compliance/reports/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the report or report collection visible to the signed-in reporter or authorized administrator.
Mga karaniwang failure at paraan ng pag-recover
400 explains missing report context or invalid workflow state; 401 protects personal/admin lists; 403 requires the appropriate reporter or SuperAdmin role; 404 means preserve the ID but refresh the report list.
POST /api/external-links/verify
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/external-links/verify" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "url": "https://example.com/resource" }'
Matagumpay na response
HTTP 200 returns the normalized destination, verified page title, and safe metadata the editor can use before saving the link.
Mga karaniwang failure at paraan ng pag-recover
400 includes detail, action, supportUrl, and upstreamStatusCode when available. Correct blocked, private-network, malformed, unreachable, or unsupported destinations before retrying verification.
GET /api/images/notes/{noteId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/images/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the visible managed image metadata for that profile, note, team, trackable, or group; an empty array is valid.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
POST /api/images/notes/{noteId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/images/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>" \
-F "files=@example.jpg"
Matagumpay na response
HTTP 200 returns managed image metadata and URLs after screening and JPEG variant processing. Use the returned URLs instead of assuming the original filename survives.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
POST /api/images/profiles
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/images/profiles" \
-H "Authorization: Bearer <access token>" \
-F "files=@example.jpg"
Matagumpay na response
HTTP 200 returns managed image metadata and URLs after screening and JPEG variant processing. Use the returned URLs instead of assuming the original filename survives.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
GET /api/images/profiles/{userId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/images/profiles/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the visible managed image metadata for that profile, note, team, trackable, or group; an empty array is valid.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
GET /api/images/teams/{teamId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/images/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the visible managed image metadata for that profile, note, team, trackable, or group; an empty array is valid.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
POST /api/images/teams/{teamId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/images/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>" \
-F "files=@example.jpg"
Matagumpay na response
HTTP 200 returns managed image metadata and URLs after screening and JPEG variant processing. Use the returned URLs instead of assuming the original filename survives.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
GET /api/images/trackable-groups/{trackableGroupId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/images/trackable-groups/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the visible managed image metadata for that profile, note, team, trackable, or group; an empty array is valid.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
POST /api/images/trackable-groups/{trackableGroupId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/images/trackable-groups/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>" \
-F "files=@example.jpg"
Matagumpay na response
HTTP 200 returns managed image metadata and URLs after screening and JPEG variant processing. Use the returned URLs instead of assuming the original filename survives.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
GET /api/images/trackables/{trackableId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/images/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the visible managed image metadata for that profile, note, team, trackable, or group; an empty array is valid.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
POST /api/images/trackables/{trackableId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X POST "https://Geotrackable.com/api/images/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>" \
-F "files=@example.jpg"
Matagumpay na response
HTTP 200 returns managed image metadata and URLs after screening and JPEG variant processing. Use the returned URLs instead of assuming the original filename survives.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
DELETE /api/images/{contentImageId}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl -X DELETE "https://Geotrackable.com/api/images/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 204 confirms the image and its managed variants were deleted; there is no response body.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
GET /api/images/{contentImageId}/{variant}
Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.
curl "https://Geotrackable.com/api/images/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/thumbnail"
Matagumpay na response
HTTP 200 streams the requested visible JPEG variant with an image content type.
Mga karaniwang failure at paraan ng pag-recover
400 image_variant_invalid lists the supported download variants and other 400 responses explain screening constraints; 401/403 require a valid owner or team-admin context; 404 means the content is missing or not visible; 500 image_variant_unavailable means metadata exists but the stored variant could not be served. 413 requires fewer or smaller files; 415 requires multipart/form-data for uploads.
GET /api/locations/mine/gpx
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/locations/mine/gpx" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 downloads GPX containing the eligible mapped waypoints in this scope.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
POST /api/locations/mine/gpx
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X POST "https://Geotrackable.com/api/locations/mine/gpx" \
-H "Authorization: Bearer <access token>" \
-F "file=@waypoints.gpx"
Matagumpay na response
HTTP 200 returns import counts and item-level results after the GPX waypoint file is processed.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
GET /api/notes/mine
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/notes/mine" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the visible note, comment, attachment, or map result. Empty collections are successful; a missing single resource returns 404.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
POST /api/notes/mine
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X POST "https://Geotrackable.com/api/notes/mine" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "title": "Trailhead", "body": "Parking and route notes.", "contentLanguage": "en-US", "latitude": 41.8818, "longitude": -87.6231, "visibility": "Private" }'
Matagumpay na response
HTTP 200 returns the saved note, comment, attachment, move result, or deletion acknowledgement for the requested scope.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
GET /api/notes/mine/gpx
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/notes/mine/gpx" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 downloads GPX containing the eligible mapped waypoints in this scope.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
POST /api/notes/mine/gpx
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X POST "https://Geotrackable.com/api/notes/mine/gpx" \
-H "Authorization: Bearer <access token>" \
-F "file=@waypoints.gpx"
Matagumpay na response
HTTP 200 returns import counts and item-level results after the GPX waypoint file is processed.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
DELETE /api/notes/mine/{noteId}
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X DELETE "https://Geotrackable.com/api/notes/mine/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the saved note, comment, attachment, move result, or deletion acknowledgement for the requested scope.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
POST /api/notes/mine/{noteId}/move
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/notes/mine/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/move" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the saved note, comment, attachment, move result, or deletion acknowledgement for the requested scope.
Mga karaniwang failure at paraan ng pag-recover
400 identifies field, hierarchy, bounds, GPX, or move/delete rules; 401 requires a token; 403 requires ownership; 404 means refresh personal workspace state. Uploads can also return 413 or 415.
GET /api/notes/public/bounds
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/notes/public/bounds?minLatitude=41.78&minLongitude=-87.75&maxLatitude=41.96&maxLongitude=-87.54&contentLanguage=en-US"
Matagumpay na response
HTTP 200 returns the visible note, comment, attachment, or map result. Empty collections are successful; a missing single resource returns 404.
Mga karaniwang failure at paraan ng pag-recover
400 identifies incomplete bounds, invalid coordinate ranges, or invalid comment/attachment input; 403 protects restricted writes; 404 can hide a private or missing page. Correct the query as directed by errors and action.
GET /api/notes/public/nearby
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/notes/public/nearby?latitude=41.8818&longitude=-87.6231&radiusKm=8&contentLanguage=en-US"
Matagumpay na response
HTTP 200 returns the visible note, comment, attachment, or map result. Empty collections are successful; a missing single resource returns 404.
Mga karaniwang failure at paraan ng pag-recover
400 identifies incomplete bounds, invalid coordinate ranges, or invalid comment/attachment input; 403 protects restricted writes; 404 can hide a private or missing page. Correct the query as directed by errors and action.
GET /api/public/notes/{noteId}
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/public/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the visible note, comment, attachment, or map result. Empty collections are successful; a missing single resource returns 404.
Mga karaniwang failure at paraan ng pag-recover
400 identifies incomplete bounds, invalid coordinate ranges, or invalid comment/attachment input; 403 protects restricted writes; 404 can hide a private or missing page. Correct the query as directed by errors and action.
GET /api/public/notes/{noteId}/comments
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/public/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments"
Matagumpay na response
HTTP 200 returns the visible comment panel, policy, and current comments. An empty comment list is a successful result.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
POST /api/public/notes/{noteId}/comments
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X POST "https://Geotrackable.com/api/public/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "body": "Found near the overlook.", "accessCode": "" }'
Matagumpay na response
HTTP 200 returns the saved comment state. Anonymous writes require this client's active session or an accessCode for this exact activated trackable.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
GET /api/public/notes/{noteId}/trackables
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/public/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/trackables"
Matagumpay na response
HTTP 200 returns the visible note, comment, attachment, or map result. Empty collections are successful; a missing single resource returns 404.
Mga karaniwang failure at paraan ng pag-recover
400 identifies incomplete bounds, invalid coordinate ranges, or invalid comment/attachment input; 403 protects restricted writes; 404 can hide a private or missing page. Correct the query as directed by errors and action.
POST /api/public/notes/{noteId}/trackables
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl -X POST "https://Geotrackable.com/api/public/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/trackables" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "trackableSecretCodes": "TAG42", "selectedActiveTrackableIds": [] }'
Matagumpay na response
HTTP 200 returns the saved note, comment, attachment, move result, or deletion acknowledgement for the requested scope.
Mga karaniwang failure at paraan ng pag-recover
400 identifies incomplete bounds, invalid coordinate ranges, or invalid comment/attachment input; 403 protects restricted writes; 404 can hide a private or missing page. Correct the query as directed by errors and action.
GET /api/public/profiles/{userName}/notes/nearby
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/public/profiles/trail-guide/notes/nearby?latitude=41.8818&longitude=-87.6231&radiusKm=8&contentLanguage=en-US"
Matagumpay na response
HTTP 200 returns the visible note, comment, attachment, or map result. Empty collections are successful; a missing single resource returns 404.
Mga karaniwang failure at paraan ng pag-recover
400 identifies incomplete bounds, invalid coordinate ranges, or invalid comment/attachment input; 403 protects restricted writes; 404 can hide a private or missing page. Correct the query as directed by errors and action.
GET /api/public/teams/{teamName}/notes/nearby
Anonymous ang public map reads; kailangan ng bearer auth para magsulat ng personal location at category.
curl "https://Geotrackable.com/api/public/teams/trail-club/notes/nearby?latitude=41.8818&longitude=-87.6231&radiusKm=8&contentLanguage=en-US"
Matagumpay na response
HTTP 200 returns the visible note, comment, attachment, or map result. Empty collections are successful; a missing single resource returns 404.
Mga karaniwang failure at paraan ng pag-recover
400 identifies incomplete bounds, invalid coordinate ranges, or invalid comment/attachment input; 403 protects restricted writes; 404 can hide a private or missing page. Correct the query as directed by errors and action.
POST /api/sync/pull
I-push muna ang local changes, pagkatapos ay i-pull ang server view para sa user at kasalukuyang public area.
curl -X POST "https://Geotrackable.com/api/sync/pull" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "lastSyncUtc": "2026-06-20T11:30:00Z", "publicArea": { "minLatitude": 41.78, "minLongitude": -87.75, "maxLatitude": 41.96, "maxLongitude": -87.54 } }'
Matagumpay na response
HTTP 200 returns the current personal, public, and team synchronization view. Call this after push in each offline cycle.
Mga karaniwang failure at paraan ng pag-recover
400 identifies malformed sync envelopes or a request rejected before processing; 401 requires a new bearer token. Per-entity reconciliation problems return HTTP 200 inside conflicts with code and action. Never retry push blindly after an unknown timeout.
POST /api/sync/push
I-push muna ang local changes, pagkatapos ay i-pull ang server view para sa user at kasalukuyang public area.
curl -X POST "https://Geotrackable.com/api/sync/push" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "deviceId": "5dd06ca7-34a5-4f2e-812d-3f1ef3e48290", "notes": [], "categories": [] }'
Matagumpay na response
HTTP 200 acknowledges accepted client changes and reports synchronization results. Preserve client IDs so the following pull can reconcile the same records.
Mga karaniwang failure at paraan ng pag-recover
400 identifies malformed sync envelopes or a request rejected before processing; 401 requires a new bearer token. Per-entity reconciliation problems return HTTP 200 inside conflicts with code and action. Never retry push blindly after an unknown timeout.
GET /api/system/beta-android
Anonymous ang route na ito at ito ang pinakamabilis na paraan para tiyaking naaabot ang production API host.
curl "https://Geotrackable.com/api/system/beta-android"
Matagumpay na response
HTTP 200 returns current Android beta release metadata and download guidance when a beta package is published.
Mga karaniwang failure at paraan ng pag-recover
400 identifies missing or malformed query binding; 500 includes requestId for support. Optional Android beta data returns HTTP 200 with available:false. Coordinate range and location-provider failures return HTTP 200 with resolved:false plus failureMessage, action, and retryable.
GET /api/system/coordinate-locality
Anonymous ang route na ito at ito ang pinakamabilis na paraan para tiyaking naaabot ang production API host.
curl "https://Geotrackable.com/api/system/coordinate-locality?latitude=41.8818&longitude=-87.6231"
Matagumpay na response
HTTP 200 returns the best available locality facts. A successful response can contain partial or unavailable location fields when resolution is intentionally limited.
Mga karaniwang failure at paraan ng pag-recover
400 identifies missing or malformed query binding; 500 includes requestId for support. Optional Android beta data returns HTTP 200 with available:false. Coordinate range and location-provider failures return HTTP 200 with resolved:false plus failureMessage, action, and retryable.
GET /api/system/ip-location
Anonymous ang route na ito at ito ang pinakamabilis na paraan para tiyaking naaabot ang production API host.
curl "https://Geotrackable.com/api/system/ip-location"
Matagumpay na response
HTTP 200 returns the best available locality facts. A successful response can contain partial or unavailable location fields when resolution is intentionally limited.
Mga karaniwang failure at paraan ng pag-recover
400 identifies missing or malformed query binding; 500 includes requestId for support. Optional Android beta data returns HTTP 200 with available:false. Coordinate range and location-provider failures return HTTP 200 with resolved:false plus failureMessage, action, and retryable.
GET /api/system/status
Anonymous ang route na ito at ito ang pinakamabilis na paraan para tiyaking naaabot ang production API host.
curl "https://Geotrackable.com/api/system/status"
Matagumpay na response
HTTP 200 returns the service status, server UTC time, and Android beta-page URL. This confirms reachability, not authenticated access.
Mga karaniwang failure at paraan ng pag-recover
A network, DNS, TLS, or 500 failure means the host check did not complete. Preserve requestId when returned and use bounded backoff; status does not return 401.
GET /api/teams
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the team, workspace, membership, category, note, or invite-link data visible to the signed-in member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X POST "https://Geotrackable.com/api/teams" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "name": "Trail Club", "title": "Trail Club", "description": "Shared field work.", "joinPolicy": "InviteOnly", "pageVisibility": "Public", "defaultNoteVisibility": "Public", "contentLanguage": "en-US" }'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/invite-links/{teamSlug}/{inviteCode}/join
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/invite-links/trail-club/INVITE-CODE/join" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
DELETE /api/teams/{teamId}
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X DELETE "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/categories
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/categories" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the team, workspace, membership, category, note, or invite-link data visible to the signed-in member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/categories
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/categories" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "name": "Team trail research", "contentLanguage": "en-US", "parentCategoryId": null }'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/categories/tree
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/categories/tree" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the team, workspace, membership, category, note, or invite-link data visible to the signed-in member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/categories/tree/children
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/categories/tree/children" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the team, workspace, membership, category, note, or invite-link data visible to the signed-in member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/categories/tree/sections
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/categories/tree/sections" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the team, workspace, membership, category, note, or invite-link data visible to the signed-in member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
DELETE /api/teams/{teamId}/categories/{categoryId}
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X DELETE "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/categories/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/categories/{categoryId}/move
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/categories/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/move" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "parentCategoryId": null }'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/invite-links
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/invite-links" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the team, workspace, membership, category, note, or invite-link data visible to the signed-in member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/invite-links
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/invite-links" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "isSingleUse": true }'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
DELETE /api/teams/{teamId}/invite-links/{inviteLinkId}
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X DELETE "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/invite-links/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/locations/gpx
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/locations/gpx" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 downloads GPX for mapped team waypoints visible to the member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/locations/gpx
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/locations/gpx" \
-H "Authorization: Bearer <access token>" \
-F "file=@waypoints.gpx"
Matagumpay na response
HTTP 200 returns team GPX import counts and item-level results.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/memberships/invite
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/invite" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/memberships/request
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/request" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
DELETE /api/teams/{teamId}/memberships/{membershipId}
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X DELETE "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/memberships/{membershipId}/accept
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/accept" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/memberships/{membershipId}/approve
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/approve" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/memberships/{membershipId}/deny
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/deny" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/memberships/{membershipId}/promote-admin
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/promote-admin" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/memberships/{membershipId}/refuse
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/refuse" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/notes
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/notes" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the team, workspace, membership, category, note, or invite-link data visible to the signed-in member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/notes
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/notes" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "title": "Team trailhead", "body": "Shared route notes.", "contentLanguage": "en-US", "latitude": 41.8818, "longitude": -87.6231, "visibility": "Public" }'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
GET /api/teams/{teamId}/notes/gpx
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/notes/gpx" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 downloads GPX for mapped team waypoints visible to the member.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/notes/gpx
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/notes/gpx" \
-H "Authorization: Bearer <access token>" \
-F "file=@waypoints.gpx"
Matagumpay na response
HTTP 200 returns team GPX import counts and item-level results.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
DELETE /api/teams/{teamId}/notes/{noteId}
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X DELETE "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
DELETE /api/teams/{teamId}/notes/{noteId}/delete
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
curl -X DELETE "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/delete" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/teams/{teamId}/notes/{noteId}/move
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/move" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
PUT /api/teams/{teamId}/settings
Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X PUT "https://Geotrackable.com/api/teams/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/settings" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting team state or acknowledges the membership, workspace, invite, settings, or deletion operation.
Mga karaniwang failure at paraan ng pag-recover
400 explains membership, invite, hierarchy, GPX, move, or deletion rules; 401 requires login; 403 requires the stated member/admin role; 404 means refresh team state before submitting another change.
POST /api/trackables
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "name": "Scout trail coin", "description": "Move this coin along family-friendly trails.", "visibility": "AlwaysVisibleToEveryone", "activateImmediately": true }'
Matagumpay na response
HTTP 201 returns the one-time reveal. Omit secretCode for a generated GT code; an available allowed custom value is honored. Save secretCode and scanUrl now because read routes do not reveal them later.
Mga karaniwang failure at paraan ng pag-recover
400 validation_failed identifies invalid fields; 400 trackable_secret_code_reserved explains GT, LN, TB, GK, or GC prefixes; 409 trackable_secret_code_taken means omit secretCode for generation or choose another value; 401 requires login.
GET /api/trackables/active
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/active"
Matagumpay na response
HTTP 200 returns the active secret-backed trackables remembered by this client. An empty array is a successful result, not an authentication failure.
Mga karaniwang failure at paraan ng pag-recover
404 means this client no longer has the requested active trackable session; revisit the private code or scan route. 400 covers invalid status text. This session uses cookies, so preserve the cookie jar across calls.
GET /api/trackables/active-indicator
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/active-indicator"
Matagumpay na response
HTTP 200 returns the trackable data visible in the caller's public, signed-in, or active-session access context.
Mga karaniwang failure at paraan ng pag-recover
404 means this client no longer has the requested active trackable session; revisit the private code or scan route. 400 covers invalid status text. This session uses cookies, so preserve the cookie jar across calls.
DELETE /api/trackables/active/{trackableId}
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X DELETE "https://Geotrackable.com/api/trackables/active/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 ends this client's remembered secret-backed session for the item. It does not delete or deactivate the trackable.
Mga karaniwang failure at paraan ng pag-recover
404 means this client no longer has the requested active trackable session; revisit the private code or scan route. 400 covers invalid status text. This session uses cookies, so preserve the cookie jar across calls.
GET /api/trackables/active/{trackableId}
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/active/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the current active landing state or updated status message for the trackable while this client still has its secret-backed session.
Mga karaniwang failure at paraan ng pag-recover
404 means this client no longer has the requested active trackable session; revisit the private code or scan route. 400 covers invalid status text. This session uses cookies, so preserve the cookie jar across calls.
POST /api/trackables/active/{trackableId}/deactivate
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/trackables/active/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/deactivate" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the current active landing state or updated status message for the trackable while this client still has its secret-backed session.
Mga karaniwang failure at paraan ng pag-recover
404 means this client no longer has the requested active trackable session; revisit the private code or scan route. 400 covers invalid status text. This session uses cookies, so preserve the cookie jar across calls.
POST /api/trackables/active/{trackableId}/message
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables/active/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/message" \
-H "Content-Type: application/json" \
-d '{ "statusMessage": "Live hunt in progress" }'
Matagumpay na response
HTTP 200 returns the current active landing state or updated status message for the trackable while this client still has its secret-backed session.
Mga karaniwang failure at paraan ng pag-recover
404 means this client no longer has the requested active trackable session; revisit the private code or scan route. 400 covers invalid status text. This session uses cookies, so preserve the cookie jar across calls.
POST /api/trackables/groups
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables/groups" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "name": "Trail event set", "description": "Event inventory", "trackableCount": 12, "visibility": "AlwaysVisibleToEveryone", "activateImmediately": false, "watchGroupActivityWhenCreated": true }'
Matagumpay na response
HTTP 201 returns the new group plus the one-time public, secret, and scan credentials for every generated member. Persist the reveal before leaving the response.
Mga karaniwang failure at paraan ng pag-recover
400 explains invalid defaults, count, visibility, category, or team rules; 401 requires login; 403 means the caller cannot create in that team. Correct the request before retrying the batch.
DELETE /api/trackables/groups/{trackableGroupId}/watch
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X DELETE "https://Geotrackable.com/api/trackables/groups/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/watch" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting trackable or group state after the signed-in account's watch preference changes. Repeating the desired final state should not create duplicate watches.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
POST /api/trackables/groups/{trackableGroupId}/watch
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/trackables/groups/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/watch" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting trackable or group state after the signed-in account's watch preference changes. Repeating the desired final state should not create duplicate watches.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
POST /api/trackables/legacy-lookup
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/trackables/legacy-lookup" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting trackable state after the requested ownership, grouping, or monitoring operation completes.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
GET /api/trackables/lookup
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/lookup?code=GT-EXAMPLE"
Matagumpay na response
HTTP 200 returns found, the resolved trackable ID, match type, and redirect guidance. An ordinary mistyped or unknown code is also HTTP 200 with found false so lookup UI can remain in place.
Mga karaniwang failure at paraan ng pag-recover
An unknown or mistyped code is normally HTTP 200 with found false, not problem details. 400 is reserved for malformed input. Never log the submitted secret or QR value while diagnosing lookup.
POST /api/trackables/lookup
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables/lookup" \
-H "Content-Type: application/json" \
-d '{ "code": "GT-EXAMPLE" }'
Matagumpay na response
HTTP 200 returns found, the resolved trackable ID, match type, and redirect guidance. An ordinary mistyped or unknown code is also HTTP 200 with found false so lookup UI can remain in place.
Mga karaniwang failure at paraan ng pag-recover
An unknown or mistyped code is normally HTTP 200 with found false, not problem details. 400 is reserved for malformed input. Never log the submitted secret or QR value while diagnosing lookup.
GET /api/trackables/mine
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/mine" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the trackable data visible in the caller's public, signed-in, or active-session access context.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
GET /api/trackables/public
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/public?contentLanguage=en-US"
Matagumpay na response
HTTP 200 returns the trackable data visible in the caller's public, signed-in, or active-session access context.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
GET /api/trackables/{trackableId}
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63"
Matagumpay na response
HTTP 200 returns the trackable data visible in the caller's public, signed-in, or active-session access context.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
POST /api/trackables/{trackableId}/activate
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/activate" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "name": "Activated trail coin", "description": "Ready to travel", "teamId": null }'
Matagumpay na response
HTTP 200 returns the activated trackable details after personal or team ownership and item-level metadata are established.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
GET /api/trackables/{trackableId}/comments
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments"
Matagumpay na response
HTTP 200 returns the visible comment panel, policy, and current comments. An empty comment list is a successful result.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
POST /api/trackables/{trackableId}/comments
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments" \
-H "Content-Type: application/json" \
-d '{ "body": "Found near the overlook.", "accessCode": "" }'
Matagumpay na response
HTTP 200 returns the saved comment state. Anonymous writes require this client's active session or an accessCode for this exact activated trackable.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
DELETE /api/trackables/{trackableId}/comments/{commentId}
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X DELETE "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the saved comment state. Anonymous writes require this client's active session or an accessCode for this exact activated trackable.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
PUT /api/trackables/{trackableId}/comments/{commentId}
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X PUT "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "body": "Updated field note." }'
Matagumpay na response
HTTP 200 returns the saved comment state. Anonymous writes require this client's active session or an accessCode for this exact activated trackable.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
DELETE /api/trackables/{trackableId}/group
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X DELETE "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/group" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting trackable state after the requested ownership, grouping, or monitoring operation completes.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
POST /api/trackables/{trackableId}/group
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/group" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{ "trackableGroupId": "13a2c0b1-582f-4a7b-92aa-16922f7bdb63" }'
Matagumpay na response
HTTP 200 returns the resulting trackable state after the requested ownership, grouping, or monitoring operation completes.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
GET /api/trackables/{trackableId}/journey
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/journey"
Matagumpay na response
HTTP 200 returns the visible journey points in route order. An activated trackable with no reported stops returns an empty collection.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
POST /api/trackables/{trackableId}/journey-stops
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/journey-stops" \
-H "Content-Type: application/json" \
-d '{ "latitude": 41.8818, "longitude": -87.6231, "accessCode": "" }'
Matagumpay na response
HTTP 200 returns the saved direct journey stop. The latitude and longitude become an immutable route-history point for the activated trackable.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
DELETE /api/trackables/{trackableId}/journey-stops/{journeyStopId}
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X DELETE "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/journey-stops/13a2c0b1-582f-4a7b-92aa-16922f7bdb63" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 confirms the authorized direct journey stop was removed. Refresh the journey before offering another action on that stop.
Mga karaniwang failure at paraan ng pag-recover
400 trackable_activation_required means an eligible owner must activate first; 403 trackable_access_code_required or trackable_access_code_invalid requires this exact item's session or credential; 404 means refresh stale IDs.
DELETE /api/trackables/{trackableId}/watch
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
curl -X DELETE "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/watch" \
-H "Authorization: Bearer <access token>"
Matagumpay na response
HTTP 200 returns the resulting trackable or group state after the signed-in account's watch preference changes. Repeating the desired final state should not create duplicate watches.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.
POST /api/trackables/{trackableId}/watch
Saklaw ng trackable routes ang public browsing, private ownership, remembered secret access, comments, at journey stops.
# Request-body placeholder: replace {} with the fields required by this route before sending.
curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/watch" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{}'
Matagumpay na response
HTTP 200 returns the resulting trackable or group state after the signed-in account's watch preference changes. Repeating the desired final state should not create duplicate watches.
Mga karaniwang failure at paraan ng pag-recover
400 reports a trackable business rule; 401 applies to bearer-only management; 403 supplies the ownership, team-role, grouping, or access action; 404 means refresh the current trackable or group state.