{ "swagger": "2.0", "info": { "description": "Pomme is a service that parses zonefiles", "title": "Pomme", "termsOfService": "http://freecumextremist.com/", "contact": {}, "version": "0.0.1" }, "paths": { "/api/login": { "post": { "description": "login", "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ "accounts" ], "summary": "auth a regular user", "parameters": [ { "type": "string", "description": "Username", "name": "username", "in": "query", "required": true }, { "type": "string", "description": "Password", "name": "password", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.httpSuccess" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/api.httpError" } } } } }, "/api/parse": { "post": { "security": [ { "Bearer": [] } ], "description": "parse your zonefile -- you must specify \"Bearer\" before entering your token", "consumes": [ "multipart/form-data" ], "produces": [ "application/json" ], "tags": [ "DNS" ], "summary": "parse your zonefile", "parameters": [ { "type": "string", "description": "Zonefile name", "name": "filename", "in": "query", "required": true }, { "type": "string", "description": "Bearer Token", "name": "Authorization", "in": "header", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.httpSuccess" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/api.httpInternalServerError" } } } } }, "/api/upload": { "post": { "security": [ { "Bearer": [] } ], "description": "upload a file -- you must specify \"Bearer\" before entering your token", "consumes": [ "multipart/form-data" ], "produces": [ "application/json" ], "tags": [ "DNS" ], "summary": "upload a zonefile", "parameters": [ { "type": "file", "description": "Zonefile to upload", "name": "file", "in": "formData", "required": true }, { "type": "string", "description": "Bearer Token", "name": "Authorization", "in": "header", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/api.httpSuccess" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/api.httpInternalServerError" } } } } } }, "definitions": { "api.httpError": { "type": "object", "properties": { "code": { "type": "integer", "example": 401 }, "message": { "type": "string", "example": "Status bad request" } } }, "api.httpInternalServerError": { "type": "object", "properties": { "code": { "type": "integer", "example": 500 }, "message": { "type": "string", "example": "Internal Server Error" } } }, "api.httpSuccess": { "type": "object", "properties": { "code": { "type": "integer", "example": 200 }, "message": { "type": "string", "example": "Success" } } } }, "securityDefinitions": { "Bearer": { "description": "Type \"Bearer\" followed by a space and JWT token.", "type": "apiKey", "name": "Authorization", "in": "header" } } }