UNPKG

resourcejs

Version:

A simple Express library to reflect Mongoose models to a REST interface.

194 lines (193 loc) 6.24 kB
{ "definitions": { "resource1": { "title": "resource1", "properties": { "title": { "type": "string" }, "name": { "type": "string" }, "age": { "type": "integer", "format": "int64" }, "description": { "type": "string" }, "list": { "type": "array", "title": "list", "items": { "$ref": "#/definitions/list" } }, "list2": { "type": "array", "items": { "type": "string" } }, "_id": { "type": "string", "description": "ObjectId" } } }, "list": { "title": "list", "properties": { "label": { "type": "string" }, "data": { "type": "array", "items": { "type": "string" } } } } }, "paths": { "/test/resource1": { "get": { "tags": ["resource1"], "summary": "List multiple resource1 resources.", "description": "This operation allows you to list and search for resource1 resources provided query arguments.", "operationId": "getresource1s", "responses": { "200": { "description": "Resource(s) found. Returned as array.", "schema": { "type": "array", "items": { "$ref": "#/definitions/resource1" } } }, "401": { "description": "Unauthorized." } }, "parameters": [ { "name": "skip", "in": "query", "description": "How many records to skip when listing. Used for pagination.", "required": false, "type": "integer", "default": 0 }, { "name": "limit", "in": "query", "description": "How many records to limit the output.", "required": false, "type": "integer", "default": 10 }, { "name": "sort", "in": "query", "description": "Which fields to sort the records on.", "type": "string", "required": false, "default": "" }, { "name": "select", "in": "query", "description": "Select which fields will be returned by the query.", "type": "string", "required": false, "default": "" }, { "name": "populate", "in": "query", "description": "Select which fields will be fully populated with the reference.", "type": "string", "required": false, "default": "" } ] }, "post": { "tags": ["resource1"], "summary": "Create a new resource1", "description": "Create a new resource1", "operationId": "createresource1", "responses": { "201": { "description": "The resource has been created." }, "400": { "description": "An error has occured trying to create the resource." }, "401": { "description": "Unauthorized. Note that anonymous submissions are *enabled* by default." } }, "parameters": [ { "in": "body", "name": "body", "description": "Data used to create a new resource1", "required": true, "schema": { "$ref": "#/definitions/resource1" } } ] } }, "/test/resource1/{resource1Id}": { "get": { "tags": ["resource1"], "summary": "Return a specific resource1 instance.", "description": "Return a specific resource1 instance.", "operationId": "getresource1", "responses": { "200": { "description": "Resource found", "schema": { "$ref": "#/definitions/resource1" } }, "401": { "description": "Unauthorized." }, "404": { "description": "Resource not found" }, "500": { "description": "An error has occurred." } }, "parameters": [ { "name": "resource1Id", "in": "path", "description": "The ID of the resource1 that will be retrieved.", "required": true, "type": "string" } ] }, "put": { "tags": ["resource1"], "summary": "Update a specific resource1 instance.", "description": "Update a specific resource1 instance.", "operationId": "updateresource1", "responses": { "200": { "description": "Resource updated", "schema": { "$ref": "#/definitions/resource1" } }, "400": { "description": "Resource could not be updated." }, "401": { "description": "Unauthorized." }, "404": { "description": "Resource not found" }, "500": { "description": "An error has occurred." } }, "parameters": [ { "name": "resource1Id", "in": "path", "description": "The ID of the resource1 that will be updated.", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "Data used to update resource1", "required": true, "schema": { "$ref": "#/definitions/resource1" } } ] }, "delete": { "tags": ["resource1"], "summary": "Delete a specific resource1", "description": "Delete a specific resource1", "operationId": "deleteresource1", "responses": { "204": { "description": "Resource was deleted" }, "400": { "description": "Resource could not be deleted." }, "401": { "description": "Unauthorized." }, "404": { "description": "Resource not found" }, "500": { "description": "An error has occurred." } }, "parameters": [ { "name": "resource1Id", "in": "path", "description": "The ID of the resource1 that will be deleted.", "required": true, "type": "string" } ] } } } }