{ "GET": { "info": "redirects to given tiny url", "scope": [[]], "in": { "URL#0": { "info": "tiny url to redirect to", "name": "url", "type": "varchar(1,30)" } }, "out": {} }, "POST": { "info": "creates a new tiny url", "scope": [["admin"]], "in": { "URL#0": { "info": "preferred tiny url", "type": "varchar(1,30)", "name": "url" }, "target": { "info": "url to shorten", "type": "varchar(5,300)" } }, "out": {} }, "PUT": { "info": "overrides an existing tiny url", "scope": [["admin"]], "in": { "URL#0": { "info": "preferred tiny url", "type": "varchar(1,30)", "name": "url" }, "target": { "info": "url to shorten", "type": "varchar(5,300)" } }, "out": {} }, "DELETE": { "info": "removes an existing tiny url", "scope": [["admin"]], "in": { "URL#0": { "info": "preferred tiny url", "type": "varchar(1,30)", "name": "url" } }, "out": {} }, "/": { "token": { "POST": { "info": "creates a 1-minute access token", "scope": [[]], "in": { "URL#0": { "info": "wanted role", "type": "varchar(3,10)", "name": "role" } }, "out": { "token": { "info": "access token", "type": "varchar(128,128)" } } } } } }