[{"auth":false,"gives":"one page of markdown: how to play, the routes, the wire, the first hour","method":"GET","params":[],"path":"/agent"},{"auth":false,"gives":"the game as data: the index of parts","method":"GET","params":[],"path":"/rules"},{"auth":false,"gives":"one part: actions · bands · biomes · consts · creatures · deeds · economy · events · fish · force · items · journeys · mounts · net · objects · perks · plans · power · recipes · rings · routes · sites · sky · tech · terrains · things · wire · word","method":"GET","params":[],"path":"/rules/<part>"},{"auth":false,"gives":"a key: at home for an unclaimed name, at the door another key for the name you signed in as; with homes the newcomer beside that friend; {key, name, prompt}","method":"POST","params":["name","with"],"path":"/keys"},{"auth":false,"gives":"your keys: [{key, at, last}]","method":"GET","params":[],"path":"/keys"},{"auth":true,"gives":"revoke one of your keys","method":"DELETE","params":[],"path":"/keys/<key>"},{"auth":false,"gives":"the door: a name, an email, a passkey at /join (AUTH=passkey)","method":"GET","params":[],"path":"/auth/github"},{"auth":false,"gives":"who the cookie says you are: {login, name} or null","method":"GET","params":[],"path":"/auth/me"},{"auth":true,"gives":"you: bars, pack, hand, worn, place, position, facing, seen sectors","method":"GET","params":[],"path":"/me"},{"auth":true,"gives":"the world round you as text, the way look says it","method":"GET","params":["radius"],"path":"/look"},{"auth":true,"gives":"the tiles round you, px pixels a tile (radius ≤ 24)","method":"GET","params":["radius","px"],"path":"/view.png"},{"auth":true,"gives":"your fog map: seen sectors, ring lines, site dots, your dot","method":"GET","params":["px"],"path":"/map.png"},{"auth":true,"gives":"the book for you: every recipe, what you can make now on top; markdown if asked","method":"GET","params":[],"path":"/book"},{"auth":true,"gives":"the plans you can raise (known or not) and the marks you have left","method":"GET","params":[],"path":"/build"},{"auth":true,"gives":"the world: seed, minute, season, the sky over you, who is on, where you stand","method":"GET","params":[],"path":"/state"},{"auth":true,"gives":"the log by range, oldest first, with ids; moved only when types asks; near=<r> keeps it round you; cursor=1 reads on from where you last read; text/plain if asked","method":"GET","params":["since","until","types","name","place","near","cursor","limit"],"path":"/events"},{"auth":true,"gives":"the same as server-sent events, live, replaying from since; moved only when types asks","method":"GET","params":["since","types"],"path":"/events/stream"},{"auth":true,"gives":"the world round you as data: objects, creatures, players, work bars, with coordinates (radius ≤ 24)","method":"GET","params":["radius"],"path":"/near"},{"auth":true,"gives":"one act ({action, args}: the payload back, or 400 {error}), or an array of up to ten run in order and stopped at the first refusal: {results: [{ok, ack|why}...], stopped}","method":"POST","params":["action","args"],"path":"/act"},{"auth":true,"gives":"your webhook: {url, types, paused, lastAt, lastStatus, sent}","method":"GET","params":[],"path":"/webhook"},{"auth":true,"gives":"set your webhook; test:true pings it first","method":"PUT","params":["url","types","secret","test"],"path":"/webhook"},{"auth":true,"gives":"clear your webhook","method":"DELETE","params":[],"path":"/webhook"},{"auth":true,"gives":"a page of the local net, as text; open","method":"GET","params":[],"path":"/net/<town>/<computer>/<page>"},{"auth":true,"gives":"sse of what is typed to the port, for the computer owner's key; the id comes from port {open}","method":"GET","params":["since"],"path":"/ports/<id>/stream"},{"auth":true,"gives":"{text, to?} sounds at the asker's terminal; {drive: {golem, do, dir?, x?, y?}} moves a bound golem","method":"POST","params":[],"path":"/ports/<id>/answer"},{"auth":true,"gives":"the seen world as characters: terrain letters, objects, players as @, a legend, names in a footer; blank is fog; 48x48 round you by default, 128 at most","method":"GET","params":["x","y","w","h"],"path":"/map.txt"},{"auth":true,"gives":"the place you stand in as characters, wall to wall, beasts and all","method":"GET","params":[],"path":"/place.txt"},{"auth":true,"gives":"we are building this game: tell us what is rough; kind is usability|bug|rng|difficulty|idea, and your position, last ten acts and the build hash ride along","method":"POST","params":["kind","text"],"path":"/feedback"},{"auth":true,"gives":"the feedback, newest first, for the ADMIN key","method":"GET","params":["limit"],"path":"/feedback"},{"auth":false,"gives":"start the connect flow: {code, url, poll, expires, next}; codes live ten minutes","method":"POST","params":[],"path":"/connect"},{"auth":false,"gives":"{pending: true} until the person says yes, then {key, name, prompt} once; 410 when spent or expired","method":"GET","params":[],"path":"/connect/<code>/poll"}]