Quickstart prompt
Paste it into Claude Code, Codex, Cursor or any other coding agent. It points the agent at the docs, the SDKs and the key rules, then has it add a map to your project.
- Claude Code
- Codex
- Cursor
Wherebox turns a request into a locator map image. Name an area, add points or a route, and get a ready-to-use image with the area framed, surroundings faded, and points labelled. It’s a plain HTTP API, so an <img> tag is a valid client.

<img src="https://api.wherebox.dev/v1/map.png?area=Spain¢er=39.8,-3.6&zoom=4.4&neighbors=flag+code&neighborfit=shrink&poi=41.3874,2.1686|label:Barcelona&w=560&h=360&scale=2">See all options in a full playground
Also POST JSON for complex maps and signed URLs for public pages: Getting started, Authentication.
Every image below is rendered from the request in the docs, by the docs build.
GET /v1/map.png?area=Catalonia&poi=place:Montserrat|marker:triangle&w=468&h=280&neighbors=flag+codeGET /v1/map.png?area=Catalonia&poi=place:Barcelona&poi=place:Girona&poi=place:Lleida&w=468&h=280From Points and labels
GET /v1/map.png?polyline=inr%7BFupfLz_In_M%60%60%40vzA_GdvCdqAf%7DBz_CxsB~%7BBbiEd%7D%40fnC%7Cx%40luJby%40xyA%7B%40lcC~d%40r%60AyGvcGun%40tuCvcA~cDiUrdAeaAhpA%7DDf%7C%40zu%40vtElg%40xkA%7CnCdcAj_AjhBaAzeAsc%40%60%60Bl_%40hwDvKtyF%60wAfqDo%7D%40~sCtaCvmEzE~_G~cAhaA~a%40v_Apv%40xtGnqBpuDkpAheFfm%40xqGuM~zCrMvnFreBx%7CFnmCdtEl%60%40rbCxrA%60lD%60%5DlbFtxAvcFnkAxjBlxApvDzQniDd%5Dx_AdgA~i%40lsBgGtf%40%60N~hBfrCjgEdbDvqL%60gLrdEj~Fv%7BAnlA%60zCzuGvb%40dvB%7CtE~rGvpAxnDnpBhkA~%7D%40%7CaCthBraBdkBbjCdqBttAbpE%60zAdyCfgCltB%7C_Aj%7BAzdBp%7D%40%7CkBxwBjoAtgFjg%40~%7DFcQzlJnzGvhBvT~v%40nfCzjCr~Bx%7D%40zrAtvAt%60GtvEjmEtxBheA%7ClB_o%40bt%40tDvyAht%40luApyAh%60AzjChyA%7CgAbyB%7Ck%40xfLrlFrzBdTjnBddA%60oAoArQld%40yEvnAhl%40bfIzfAxz%40rqA%60zC%60cA%60xGbtB%60jCvfAp~CtmE%60dHlcFr%7C%40nwBoGduEimAdkDf%5BxcEttD%7CkDn%7CBr%60CfjD%60%60JxqFhpAhgF~cBd%7DBb~Bpd%40%7CrAm%60%40%7CjAfUv%7D%40us%40bqDaMhdH%60%60%40noDr%60CrqCxs%40ncBfaDlaAzf%40jZztA_Y%60O&routecolor=%231565c0&routewidth=4&fromlabel=Barcelona&tolabel=Valencia&bounds=-3,38.3,4.5,42.6&w=468&h=280From Routes
GET /v1/map.png?from=64.5011,-165.4064&to=52.52,13.405&via=47.6062,-122.3321&via=40.7128,-74.0060&profile=geodesic&fromlabel=Nome&tolabel=Berlin&poi=47.6062,-122.3321|label:Seattle|marker:dot&poi=40.7128,-74.0060|label:New+York|marker:dot&projection=globe&w=468&h=280From Routes
GET /v1/map.png?poi=30.0444,31.2357|label:القاهرة&poi=31.7683,35.2137|label:ירושלים&poi=28.6139,77.209|label:नई+दिल्ली&poi=13.7563,100.5018|label:กรุงเทพมหานคร&poi=41.7151,44.8271|label:თბილისი&w=468&h=280GET /v1/map.png?area=Catalonia&poi=place:Montserrat|marker:triangle&w=468&h=280&preset=darkFrom Locator maps
GET /v1/map.png?area=Spain&bounds=-9.6,35.8,3.6,44&subarea=Catalonia&subareacolor=%23c0392b&w=468&h=280From Locator maps
Typed clients that build and sign URLs, render to bytes, and turn every error into one class.
The snippets are the SDK READMEs' own examples, compiled (TypeScript) and run (Python) by the test suite.
npm install @wherebox/sdkimport { createClient } from '@wherebox/sdk';
const wherebox = createClient({ baseUrl: 'https://maps.example.com' });
const src = await wherebox.url(
{ area: 'Czechia', pois: [{ place: 'Chřiby', marker: { shape: 'triangle' } }], width: 468, height: 280 },
{ format: 'webp' },
);
// https://maps.example.com/v1/map.webp?area=Czechia&w=468&h=280&poi=place%3ACh%C5%99iby%7Cmarker%3Atriangle
console.log(`<img src="${src}" width="468" height="280" alt="Czechia, Chřiby highlighted">`);pip install whereboxfrom wherebox import Client
client = Client("https://maps.example.com", publishable_key="pk_…", signing_secret="<hex signing secret>")
src = client.url({"area": "Czechia", "pois": [{"place": "Chřiby"}], "width": 468, "height": 280}, expires_in=3600)
# <img src="{{ src }}">Coding agents that add maps to an app, and assistants that need a map for an answer, can install the plugin, read the OpenAPI document, or call the HTTP API directly.
Paste it into Claude Code, Codex, Cursor or any other coding agent. It points the agent at the docs, the SDKs and the key rules, then has it add a map to your project.
Teaches Claude Code to add Wherebox static locator-map images to apps: GET <img> URLs vs POST specs, signed URLs with publishable keys, the TypeScript and Python SDKs, and ambiguous-name handling.
claude plugin marketplace add wherebox/claude-plugin
claude plugin install wherebox@whereboxPublic repository: github.com/wherebox/claude-plugin. Other agents that read the Agent Skills format can use its skills/wherebox folder.
An assistant such as Claude can render a map, look at it, refine it until it is right, and hand back a permanent image URL. Connect the hosted server and approve it once in your browser, or run it locally.
claude mcp add --transport http wherebox https://api.wherebox.dev/mcpEvery endpoint, parameter and response as an OpenAPI document, generated from the same schema the server validates against.
Run the whole service on your own server. Wherebox is one Node 22 API process that reads its map data from an atlas: three files built from Overture Maps (OpenStreetMap boundaries and places) and Natural Earth.