Geotrackable.com

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.

Maaari ring magbalik ng HTTP 404 ang route kapag wala ang HTTP method para sa path na iyon. Delete-only ang account route, kaya hindi pagbabasa ng profile ang GET request sa URL na iyon.

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": null,
        "title": "Offline field stop",
        "body": "Saved while disconnected.",
        "contentLanguage": "en-US",
        "latitude": 41.8818,
        "longitude": -87.6231,
        "visibility": "Private",
        "isDeleted": false,
        "updatedUtc": "2026-06-20T12:05:00Z",
        "clientMutationId": "android-offline-42",
        "teamId": null
      }
    ],
    "categories": []
  }'

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": []
}

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.

Public browse at lookup

curl "https://Geotrackable.com/api/trackables/public?contentLanguage=en-US"
curl -X POST "https://Geotrackable.com/api/trackables/lookup" \
  -H "Content-Type: application/json" \
  -d '{
    "code": "GT7F3K9"
  }'

Gumawa ng trackable

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,
    "secretCode": ""
  }'

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"
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"
  }'

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

Kailangan ang logged-in status para magkomento, kahit pinapayagan ng public page ang malawak na pakikilahok. Maaari pa ring kailanganin ang secret access para sa restricted items.

curl -X POST "https://Geotrackable.com/api/trackables/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/comments" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{
    "body": "Found near the overlook and moved west.",
    "accessCode": ""
  }'

Tungkol sa Trackables

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>"

Tungkol sa Mga Koponan

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
}

Tanggalin ang data

Karaniwang status codes

Mag-sign in

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>"

GET /api/auth/confirmEmail

Gumamit ng local account credentials na naka-disable ang cookies kapag kailangan ng script, app, o API client ng bearer token.

curl "https://Geotrackable.com/api/auth/confirmEmail"

POST /api/auth/forgotPassword

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/forgotPassword" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/auth/login

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": "api-user@example.com", "password": "Use-a-strong-password-123!" }'

POST /api/auth/manage/2fa

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/manage/2fa" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

GET /api/auth/manage/info

Gumamit ng local account credentials na naka-disable ang cookies kapag kailangan ng script, app, o API client ng bearer token.

curl "https://Geotrackable.com/api/auth/manage/info" \
  -H "Authorization: Bearer <access token>"

POST /api/auth/manage/info

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/manage/info" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/auth/refresh

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/refresh" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/auth/register

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/register" \
  -H "Content-Type: application/json" \
  -d '{ "email": "api-user@example.com", "password": "Use-a-strong-password-123!" }'

POST /api/auth/resendConfirmationEmail

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/resendConfirmationEmail" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/auth/resetPassword

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/resetPassword" \
  -H "Content-Type: application/json" \
  -d '{}'

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>"

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 '{}'

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>"

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>"

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>"

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>"

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 '{}'

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 '{ "message": "Client error detail", "url": "/api/example" }'

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>"

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 '{}'

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>"

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>"

PUT /api/compliance/reports/{contentReportId}

Sinusunod ng media at support routes ang visibility ng page o content na pinagkakabitan ng mga ito.

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 '{}'

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" }'

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"

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"

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"

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"

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"

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"

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"

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"

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"

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"

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>"

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"

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>"

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"

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>"

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 '{}'

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>"

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"

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>"

POST /api/notes/mine/{noteId}/move

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/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/move" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

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"

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"

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"

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"

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 '{}'

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"

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 '{}'

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"

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"

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 '{}'

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 '{}'

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"

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"

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"

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"

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>"

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 '{}'

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.

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 '{}'

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>"

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>"

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 '{}'

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>"

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>"

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>"

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>"

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 '{}'

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>"

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 '{}'

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>"

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>"

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"

POST /api/teams/{teamId}/memberships/invite

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/memberships/invite" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/teams/{teamId}/memberships/request

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/memberships/request" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

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>"

POST /api/teams/{teamId}/memberships/{membershipId}/accept

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/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/accept" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/teams/{teamId}/memberships/{membershipId}/approve

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/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/approve" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/teams/{teamId}/memberships/{membershipId}/deny

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/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/deny" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

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.

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 '{}'

POST /api/teams/{teamId}/memberships/{membershipId}/refuse

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/memberships/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/refuse" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

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>"

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 '{}'

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>"

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"

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>"

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>"

POST /api/teams/{teamId}/notes/{noteId}/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/notes/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/move" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

PUT /api/teams/{teamId}/settings

Pinamamahalaan ng Team APIs ang shared locations, categories, invite links, membership decisions, at team-owned trackable scope.

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 '{}'

POST /api/trackables

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.

curl -X POST "https://Geotrackable.com/api/trackables" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

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"

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"

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"

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"

POST /api/trackables/active/{trackableId}/deactivate

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/deactivate" \
  -H "Content-Type: application/json" \
  -d '{}'

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 '{}'

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 '{}'

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>"

POST /api/trackables/groups/{trackableGroupId}/watch

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/13a2c0b1-582f-4a7b-92aa-16922f7bdb63/watch" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

POST /api/trackables/legacy-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/legacy-lookup" \
  -H "Content-Type: application/json" \
  -d '{}'

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"

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 '{}'

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>"

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"

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"

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 '{}'

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"

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 '{}'

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>"

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 '{}'

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>"

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 '{}'

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"

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 '{}'

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>"

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>"

POST /api/trackables/{trackableId}/watch

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/watch" \
  -H "Authorization: Bearer <access token>" \
  -H "Content-Type: application/json" \
  -d '{}'

Suporta