Dropmap

The dropmap lets each team claim a landing spot before the tournament. Read the live state, control the open/lock lifecycle, and manage claims on teams' behalf.

All paths are relative to https://api.zyron.pro/api/v1/guilds/:guildId/sessions/:tournamentId/dropmap. Dropmap display settings live in the tournament's PATCH /sessions/:tournamentId dropmap block.

Get dropmap state

GET/guilds/:guildId/sessions/:tournamentId/dropmap

Returns the zones, all current claims, and claimsVersion — a counter that increments on every claim change, so pollers can cheaply detect updates.

json
{
  "status": "open",
  "lockAt": "2026-07-19T17:45:00.000Z",
  "claimsVersion": 14,
  "zones": [
    { "index": 0, "name": "Pleasant Park", "polygon": [[0.31, 0.22], [0.36, 0.22], [0.36, 0.27], [0.31, 0.27]] }
  ],
  "claims": [
    {
      "claimId": "dc_02af61",
      "teamId": "tm_51fe09c2",
      "zoneIndex": 0,
      "polygon": null,
      "claimedAt": "2026-07-18T20:12:44.000Z"
    }
  ]
}

Open, lock, unlock

POST/guilds/:guildId/sessions/:tournamentId/dropmap/open

Opens the dropmap so teams can claim spots.

POST/guilds/:guildId/sessions/:tournamentId/dropmap/lock
FieldTypeDescription
lockAtstring | nullOptional ISO 8601 time to lock automatically. Omit to lock immediately; send null to clear a scheduled lock.

Locking freezes all claims and fires the dropmap.locked webhook.

POST/guilds/:guildId/sessions/:tournamentId/dropmap/unlock

Reopens a locked dropmap.

Create a claim

POST/guilds/:guildId/sessions/:tournamentId/dropmap/claims

Claims a spot for a team. Provide either a zoneIndex (predefined POI) or a custom polygon — not both. Returns 201 Created.

FieldTypeDescription
teamIdrequiredstringThe claiming team — see Teams.
zoneIndexnumberIndex into the zones array from GET /dropmap.
polygonnumber[][]Custom claim area as [x, y] pairs in normalized 0–1 map coordinates.
curl -X POST https://api.zyron.pro/api/v1/guilds/123456789012345678/sessions/t_7d31e0aa9c/dropmap/claims \
  -H "Authorization: Bearer zyr_your_guild_key" \
  -H "Content-Type: application/json" \
  -d '{ "teamId": "tm_51fe09c2", "zoneIndex": 0 }'

One spot per team, no overlaps

Reassign a claim

PATCH/guilds/:guildId/sessions/:tournamentId/dropmap/claims/:claimId
FieldTypeDescription
newTeamIdrequiredstringThe team that takes over the claim.

Remove a claim

DELETE/guilds/:guildId/sessions/:tournamentId/dropmap/claims/:claimId

Frees the spot for other teams.

Errors

400 invalid_request when both or neither of zoneIndex / polygon are sent, or the polygon is malformed; 404 not_found for unknown tournaments, teams, or claims; 409 conflict for overlaps, duplicate team claims, or a locked map. See Errors.