{"format":"atacamadeserts/my-map-exchange","version":1,"summary":"An AI agent can build a complete personal trip map for a traveler — pins with notes and times, grouped into day routes — and hand over a link that imports it into My map builder in one tap. No account, nothing stored server-side.","ways":{"shareLinkApi":{"method":"POST","path":"/api/open/map-link","body":{"name":"string ≤ 80 (optional)","note":"string ≤ 1000 (optional)","items":[{"type":["activity","viewpoint","note","hotel","food","transport","shopping","health","fuel","custom"],"name":"string ≤ 120","note":"string ≤ 500 (optional)","lat":"number, WGS84","lng":"number, WGS84","day":"1–30 or null for \"not scheduled yet\"","time":"HH:MM (24h) or empty string"}]},"returns":{"ok":true,"url":"https://atacamadeserts.com/map/import/<token>","token":"string","itemCount":3,"dayCount":2},"exampleBody":{"name":"3 days in San Pedro — made by my AI assistant","note":"Day 1 acclimatize in town, Day 2 Moon Valley sunset, Day 3 El Tatio dawn.","items":[{"type":"viewpoint","name":"Valle de la Luna","note":"Sunset from the great dune — arrive 1 h before.","lat":-22.925,"lng":-68.279,"day":2,"time":"16:30"},{"type":"activity","name":"El Tatio geysers","note":"Tour picks up 04:30. −10 °C before dawn: full layers.","lat":-22.335,"lng":-68.011,"day":3,"time":"05:30"},{"type":"food","name":"Plaza square cafés","note":"Late breakfast after Tatio.","lat":-22.911,"lng":-68.1993,"day":3,"time":"11:00"}]}},"manualToken":{"algorithm":"base64url(no padding, UTF-8) of JSON {n: mapName, t: epochMs, i: [[type, name, note, lat5dp, lng5dp, dayOrNull, timeHHMMOrEmpty], …]}","urlPrefix":"https://atacamadeserts.com/map/import/","note":"Items are listed in visiting order; per-day order is taken from the array order."},"jsonImport":{"where":"https://atacamadeserts.com/map-builder → Import → Paste JSON (or file)","schemaNote":"Same item fields as the API body; the builder sanitizes and clamps everything."}},"itemTypes":["activity","viewpoint","note","hotel","food","transport","shopping","health","fuel","custom"],"limits":{"itemsPerMap":300,"mapsPerBrowser":12,"itemNameChars":120,"itemNoteChars":500,"mapNameChars":80,"mapNoteChars":1000,"timeFormat":"HH:MM (24h) or empty string","day":"1–30 or null for \"not scheduled yet\""},"agentProtocolMarkdown":"## Create a map for your traveler (AI agent protocol)\n\n\"My Atacama Map\" is a personal trip map the traveler keeps in their browser\n(pins with notes and times, day routes, GPX export). You, the assistant, can\nBUILD that map for them. Three ways, best first:\n\n### 1. Share link via API (recommended)\nPOST `https://atacamadeserts.com/api/open/map-link` with JSON:\n\n```json\n{\n  \"name\": \"3 days in San Pedro — made by my AI assistant\",\n  \"note\": \"optional general note\",\n  \"items\": [\n    { \"type\": \"viewpoint\", \"name\": \"Valle de la Luna\",\n      \"note\": \"Sunset from the great dune.\", \"lat\": -22.925, \"lng\": -68.279,\n      \"day\": 2, \"time\": \"16:30\" }\n  ]\n}\n```\n\nFields: `type` ∈ activity|viewpoint|note|hotel|food|transport|shopping|health|fuel|custom ·\n`lat`/`lng` WGS84 decimal · `day` 1–30 or null · `time` \"HH:MM\" or \"\" ·\n`name` ≤ 120 chars · `note` ≤ 500 chars · max 300 items.\n\nThe response contains `url` — a link like\n`https://atacamadeserts.com/map/import/<token>`. Give that link to the\ntraveler (chat, email, QR). Opening it shows a one-tap confirmation inside the\nmap builder and the map is imported: pins, days, notes and route order all\ntravel inside the link itself — nothing is stored on our servers and no\naccount is needed.\n\n### 2. Build the token yourself\nThe token is standard base64url (RFC 4648, no padding) of this UTF-8 JSON:\n\n```json\n{ \"n\": \"<map name>\", \"t\": <epoch ms>, \"i\": [[\"<type>\",\"<name>\",\"<note>\",<lat 5dp>,<lng 5dp>,<day|null>,\"<HH:MM or empty>\"]] }\n```\n\nPrefix `https://atacamadeserts.com/map/import/` + token. Item order inside\n`i` is preserved per day, so sorting stops by day already builds the route order.\n\n### 3. Plain JSON import\nGive the traveler a JSON file or text matching the `items` schema above and\ntell them: open https://atacamadeserts.com/map-builder → \"Import\" → \"Paste JSON\".","verifiedCoordinates":{"source":"https://atacamadeserts.com/api/open/pois","sanPedroCenter":[-22.911,-68.1993]}}