{"openapi":"3.1.0","info":{"title":"Mapbox via Locus x402","version":"1.0.0","description":"Location and mapping APIs — geocoding, directions, isochrones, matrix routing, map matching, static maps, and spatial queries.","contact":{"email":"api@paywithlocus.com"},"x-guidance":"Use the documented POST operations for Mapbox. Send JSON matching each requestBody schema. Unpaid public x402 requests return an x402 v2 payment challenge; retry the same body with PAYMENT-SIGNATURE and the returned x-locus-request-id."},"servers":[{"url":"https://mapbox.x402.paywithlocus.com"}],"x-agentcash-guidance":{"llmsTxtUrl":"https://paywithlocus.com/x402/mapbox.md"},"x-service-info":{"categories":["data"],"docs":{"homepage":"https://www.mapbox.com","apiReference":"https://docs.mapbox.com/api/","llms":"https://paywithlocus.com/x402/mapbox.md"}},"paths":{"/mapbox/geocode-forward":{"post":{"operationId":"mapbox_geocode_forward","summary":"Forward Geocode","description":"Convert an address or place name to geographic coordinates (longitude, latitude).","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.003750"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.004"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"q":{"type":"string","description":"Search text (address, place name, etc.)"},"proximity":{"type":"string","description":"Bias results near a coordinate: \"lon,lat\" or \"ip\""},"bbox":{"type":"string","description":"Bounding box to limit results: \"minLon,minLat,maxLon,maxLat\""},"country":{"type":"string","description":"Comma-separated ISO 3166-1 alpha-2 country codes"},"language":{"type":"string","description":"IETF language tag for results (e.g. \"en\", \"fr\")"},"limit":{"type":"number","description":"Maximum number of results (1-10, default 5)"},"types":{"type":"string","description":"Filter by feature type: country, region, postcode, district, place, locality, neighborhood, address, street, block"},"autocomplete":{"type":"boolean","description":"Enable autocomplete for partial queries (default true)"},"worldview":{"type":"string","description":"Worldview code (e.g. \"us\", \"cn\", \"jp\")"}},"required":["q"],"additionalProperties":true},"example":{"q":"San Francisco, California","limit":1}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"features":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"geometry":{"type":"object","additionalProperties":true,"properties":{"coordinates":{"type":"array","items":{"type":"number"}}}}}}}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}},"/mapbox/geocode-reverse":{"post":{"operationId":"mapbox_geocode_reverse","summary":"Reverse Geocode","description":"Convert geographic coordinates (longitude, latitude) to an address or place name.","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.003750"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.004"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"longitude":{"type":"number","description":"Longitude (-180 to 180)"},"latitude":{"type":"number","description":"Latitude (-90 to 90)"},"country":{"type":"string","description":"Comma-separated ISO 3166-1 alpha-2 country codes"},"language":{"type":"string","description":"IETF language tag for results"},"limit":{"type":"number","description":"Maximum number of results (1-5, default 1)"},"types":{"type":"string","description":"Filter by feature type"},"worldview":{"type":"string","description":"Worldview code"}},"required":["longitude","latitude"],"additionalProperties":true},"example":{"longitude":-122.4194,"latitude":37.7749}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"features":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"geometry":{"type":"object","additionalProperties":true,"properties":{"coordinates":{"type":"array","items":{"type":"number"}}}}}}}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}},"/mapbox/directions":{"post":{"operationId":"mapbox_directions","summary":"Directions","description":"Get driving, walking, cycling, or traffic-aware routes between 2-25 coordinates.","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.005"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"profile":{"type":"string","description":"Routing profile: mapbox/driving, mapbox/driving-traffic, mapbox/walking, mapbox/cycling"},"coordinates":{"type":"string","description":"Semicolon-separated lon,lat pairs (e.g. \"-73.99,40.73;-77.03,38.90\")"},"alternatives":{"type":"boolean","description":"Return up to 2 alternative routes"},"steps":{"type":"boolean","description":"Include turn-by-turn instructions"},"annotations":{"type":"string","description":"Comma-separated: distance, duration, speed, congestion, maxspeed, closure"},"geometries":{"type":"string","description":"Response geometry format: geojson, polyline, polyline6"},"overview":{"type":"string","description":"Route geometry detail: full, simplified, false"},"language":{"type":"string","description":"Language for turn instructions (e.g. \"en\")"},"exclude":{"type":"string","description":"Road types to exclude: motorway, toll, ferry, unpaved, cash_only_tolls"}},"required":["profile","coordinates"],"additionalProperties":true},"example":{"profile":"mapbox/driving","coordinates":"-73.99,40.73;-77.03,38.90"}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"routes":{"type":"array","items":{"type":"object","additionalProperties":true}}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}},"/mapbox/matrix":{"post":{"operationId":"mapbox_matrix","summary":"Matrix","description":"Calculate travel time and distance between many origins and destinations. Billed per element (sources × destinations).","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.001000"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.002/element"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"profile":{"type":"string","description":"Routing profile: mapbox/driving, mapbox/driving-traffic, mapbox/walking, mapbox/cycling"},"coordinates":{"type":"string","description":"Semicolon-separated lon,lat pairs (2-25, max 10 for traffic)"},"sources":{"type":"string","description":"Semicolon-separated indices for source coordinates (for asymmetric matrices)"},"destinations":{"type":"string","description":"Semicolon-separated indices for destination coordinates"},"annotations":{"type":"string","description":"Comma-separated: duration, distance (or both)"},"approaches":{"type":"string","description":"Semicolon-separated approach per coordinate: unrestricted or curb"}},"required":["profile","coordinates"],"additionalProperties":true},"example":{"profile":"mapbox/driving","coordinates":"-122.4194,37.7749;-122.4180,37.7755","annotations":"duration,distance"}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"durations":{"type":"array","items":{"type":"array","items":{"type":"number"}}},"distances":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}},"/mapbox/isochrone":{"post":{"operationId":"mapbox_isochrone","summary":"Isochrone","description":"Get travel-time or travel-distance polygons showing areas reachable from a point.","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.005"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"profile":{"type":"string","description":"Routing profile: mapbox/driving, mapbox/driving-traffic, mapbox/walking, mapbox/cycling"},"coordinates":{"type":"string","description":"Single coordinate: \"lon,lat\""},"contours_minutes":{"type":"string","description":"Comma-separated travel times in minutes (1-60, up to 4 contours)"},"contours_meters":{"type":"string","description":"Comma-separated distances in meters (1-100000, up to 4 contours)"},"polygons":{"type":"boolean","description":"Return polygons instead of linestrings (default false)"},"denoise":{"type":"number","description":"Noise filter (0.0-1.0)"},"generalize":{"type":"number","description":"Douglas-Peucker simplification tolerance in meters"},"exclude":{"type":"string","description":"Road types to exclude: motorway, toll, ferry, unpaved"}},"required":["profile","coordinates"],"allOf":[{"description":"contours_minutes or contours_meters is required","anyOf":[{"required":["contours_minutes"]},{"required":["contours_meters"]}]}],"additionalProperties":true},"example":{"profile":"mapbox/driving","coordinates":"-122.4194,37.7749","contours_minutes":"10","polygons":true}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"features":{"type":"array","items":{"type":"object","additionalProperties":true}}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}},"/mapbox/map-matching":{"post":{"operationId":"mapbox_map_matching","summary":"Map Matching","description":"Snap GPS traces to the road network. Corrects noisy GPS data into clean routes.","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.005"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"profile":{"type":"string","description":"Routing profile: mapbox/driving, mapbox/driving-traffic, mapbox/walking, mapbox/cycling"},"coordinates":{"type":"string","description":"Semicolon-separated lon,lat pairs (2-100 coordinates)"},"annotations":{"type":"string","description":"Comma-separated: distance, duration, speed, congestion, maxspeed"},"geometries":{"type":"string","description":"Response format: geojson, polyline, polyline6"},"overview":{"type":"string","description":"Geometry detail: full, simplified, false"},"radiuses":{"type":"string","description":"Semicolon-separated search radius per coordinate (0-50 meters)"},"steps":{"type":"boolean","description":"Include turn-by-turn instructions"},"timestamps":{"type":"string","description":"Semicolon-separated Unix timestamps per coordinate"},"tidy":{"type":"boolean","description":"Clean up coordinate clusters for better matching"}},"required":["profile","coordinates"],"additionalProperties":true},"example":{"profile":"mapbox/driving","coordinates":"-117.17282,32.71204;-117.17288,32.71225;-117.17293,32.71244;-117.17292,32.71256;-117.17298,32.712603;-117.17314,32.71259;-117.17334,32.71254","geometries":"geojson","overview":"simplified"}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"matchings":{"type":"array","items":{"type":"object","additionalProperties":true}}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}},"/mapbox/static-image":{"post":{"operationId":"mapbox_static_image","summary":"Static Image","description":"Generate a static map image (PNG/JPEG) with optional markers, lines, and polygons. Returns base64-encoded image data.","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.004000"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.004"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"style":{"type":"string","description":"Map style (default \"mapbox/streets-v12\"). Options: mapbox/streets-v12, mapbox/outdoors-v12, mapbox/light-v11, mapbox/dark-v11, mapbox/satellite-v9, mapbox/satellite-streets-v12"},"position":{"type":"string","description":"Map center and zoom: \"lon,lat,zoom\" or \"auto\" to fit overlay bounds (default \"auto\")"},"size":{"type":"string","description":"Image dimensions: \"widthxheight\" in pixels, max 1280x1280 (default \"600x400\")"},"overlay":{"type":"string","description":"Markers, paths, or GeoJSON overlay. E.g. \"pin-s+ff0000(-73.99,40.73)\" for a red marker"},"retina":{"type":"boolean","description":"Generate @2x high-DPI image"},"attribution":{"type":"boolean","description":"Show attribution (default true)"},"logo":{"type":"boolean","description":"Show Mapbox logo (default true)"},"padding":{"type":"string","description":"Padding around auto-fit overlay (CSS shorthand: \"top,right,bottom,left\")"}},"allOf":[{"description":"position or overlay is required","anyOf":[{"required":["position"]},{"required":["overlay"]}]}],"additionalProperties":true},"example":{"style":"mapbox/streets-v12","position":"-122.4194,37.7749,12","size":"400x300","retina":false}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"data":{"type":"string"},"content_type":{"type":"string"}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}},"/mapbox/tilequery":{"post":{"operationId":"mapbox_tilequery","summary":"Tilequery","description":"Query vector tileset features near a geographic point. Useful for spatial lookups (e.g. \"what features are within 100m of this point?\").","tags":["Geospatial"],"security":[],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"protocols":[{"x402":{}}],"x-locus":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","estimatedCost":"$0.005"}},"parameters":[{"name":"x-locus-request-id","in":"header","required":false,"description":"UUID returned by the initial 402. Echo it on the paid retry and later recovery attempts.","schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"tileset_id":{"type":"string","description":"Tileset ID to query (e.g. \"mapbox.mapbox-streets-v8\"). Comma-separate up to 25."},"longitude":{"type":"number","description":"Longitude (-180 to 180)"},"latitude":{"type":"number","description":"Latitude (-85 to 85)"},"radius":{"type":"number","description":"Search radius in meters (default 0 for point-in-polygon)"},"limit":{"type":"number","description":"Max features to return (1-50, default 5)"},"dedupe":{"type":"boolean","description":"Remove duplicate features (default true)"},"geometry":{"type":"string","description":"Filter by geometry type: polygon, linestring, point"},"layers":{"type":"string","description":"Comma-separated layer names to query"}},"required":["tileset_id","longitude","latitude"],"additionalProperties":true},"example":{"tileset_id":"mapbox.mapbox-streets-v8","longitude":-122.4194,"latitude":37.7749,"radius":100,"limit":5}}}},"responses":{"200":{"description":"Successful response with PAYMENT-RESPONSE and durable request receipt","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","const":true},"data":{"type":"object","additionalProperties":true,"properties":{"features":{"type":"array","items":{"type":"object","additionalProperties":true}}},"description":"Partial response schema observed in an authenticated, semantically verified customer call. Only observed field types are described; optionality, other inputs and error states are not inferred."},"request":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"},"statusUrl":{"type":"string"}},"required":["id","statusUrl"],"additionalProperties":false},"payment":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact","upto"]},"authorizedMaxUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"settledUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"capExhausted":{"type":"boolean"},"calculatedActualUsdc":{"type":"string","pattern":"^\\d+\\.\\d{6}$"},"usage":{}},"required":["scheme","authorizedMaxUsdc","settledUsdc"],"additionalProperties":false}},"required":["success","data","request","payment"],"additionalProperties":false}}}},"202":{"description":"The supplied request ID is already in progress"},"400":{"description":"Invalid request"},"402":{"description":"Payment Required"},"409":{"description":"Request ID conflict or terminal failed request"}}}}}}