--- swagger: "2.0" info: version: "1.0.0" title: "Mockup API" description: "A simple API that exposes CRUD operations" contact: name: "Nicolas Masse" license: name: "MIT" host: "TODO" basePath: "/" schemes: - "https" consumes: - "application/json" produces: - "application/json" paths: '/things': get: description: "Returns all available things" produces: - "application/json" responses: "200": description: "A List of Things" schema: $ref: "#/definitions/ThingsList" parameters: - $ref: "#/parameters/user-key" post: description: "Create a thing" consumes: - "application/json" produces: - "application/json" responses: "200": description: "The created Thing" schema: $ref: "#/definitions/Thing" parameters: - $ref: "#/parameters/user-key" - $ref: "#/parameters/body" '/things/{id}': get: description: "Returns all available things" produces: - "application/json" responses: "200": description: "A List of Things" schema: $ref: "#/definitions/ThingsList" parameters: - $ref: "#/parameters/user-key" - $ref: "#/parameters/id" put: description: "Update a Thing" produces: - "application/json" responses: "200": description: "The updated Thing" schema: $ref: "#/definitions/Thing" parameters: - $ref: "#/parameters/user-key" - $ref: "#/parameters/id" - $ref: "#/parameters/body" delete: description: "Delete a Thing" produces: - "application/json" responses: "200": description: "The delete Thing" schema: $ref: "#/definitions/Thing" parameters: - $ref: "#/parameters/user-key" - $ref: "#/parameters/id" definitions: ThingsList: type: "array" items: $ref: "#/definitions/Thing" Thing: type: "object" properties: name: type: "string" id: type: "number" price: type: "number" parameters: user-key: name: "user-key" in: "header" required: true description: "The 3scale API Key" type: "string" x-data-threescale-name: "user_keys" id: name: "id" in: "path" required: true description: "The things id" type: "number" body: name: "body" in: "body" required: true description: "The Thing to create/update" schema: $ref: "#/definitions/Thing"