API and agentsAPI reference
Published
1 operation on 1 path.
/api/published/{token}/extent/{layerId}
POSTA published layer's current data extent
Sign-in No sign-inMCP tool published_layer_extent
Verified ingress source is charged before token resolution, including unknown tokens. The five view operations, the satellite style among them, share one source budget across tokens (default 60 per ten seconds); tiles, the satellite tiles among them, have a separate budget (default 600). Missing or forged provenance answers 503 ingress_unavailable. The combined state holds at most 10,000 entries, expired on traffic then evicted least recently used; eviction grants a fresh window. Untrusted proxies share their socket budget. Every address of one IPv6 /64 is charged to one budget; an IPv4 source is charged alone, whether mapped, reaching the instance through the NAT64 prefix 64:ff9b::/96, or neither. The token evaluates the map's SQL in its SQL home with the map owner's current reach, independently of visitor credentials, including while the owner is deactivated, restricted to the datasets the map's own layers name: nothing else of the owner's space is mounted for the link. A layer or widget that reads the instance's catalogue fails with catalogue_not_published while the owner holds datasets the map does not name, and one naming a dataset the owner can no longer reach fails with sql_error. Before first-account setup, a legacy token has only its pending-adoption publication scope; setup retires that scope atomically. Revocation is checked after asynchronous work before returning results. The projection never exposes account identity, private SQL, dataset paths or connection credentials. At most 65,536 wire bytes. Excess answers 413 request_body_too_large before JSON parsing. Empty bodies keep their default selections. The published half of the extent capability: the bounding box of what the reader's current state leaves drawn. The reader never names a field โ widget selections are keyed by widget id and resolve through the publication's stored widgets, and the timeline window's field comes from the map's own dock. A hidden layer or widget answers exactly as an unknown one does. Same shared reader rate limit as the other published lanes; kind: "empty" when nothing survives.
Parameters
tokenPathrequiredPublish token.
string
layerIdPathrequiredLayer id within the publication.
string
Request body (optional)
At most 65,536 bytes (64 KiB); a larger body is refused with request_body_too_large.
application/json
object
selectionsarray of objectWidget selections, keyed by widget id โ the same shape the widget-values lane accepts.
timelineobjectThe reader's timeline window:
minandmaxtime values, either nullable for an open end. The field is the map's docked one, never stated here.
Responses
200
The extent.
application/json405
method_not_allowed: the method is unsupported for this path.
application/jsonAllowHeaderExactly the documented methods for this path.
stringalways
OPTIONS, POST
413default
Error with a machine-readable code and human message.
application/json429
rate_limited: Too many requests. Please slow down.
application/json503
ingress_unavailable: The instance cannot serve published maps yet. Private, no-store; refused before body work or publication resolution.
application/json
Also on this path: OPTIONS under System.
7439201b