{ "components": { "schemas": { "audit": { "description": "Basic audit information for a resource.", "properties": { "created_at": { "type": "string", "format": "date-time" }, "created_by": { "type": "string", "format": "uuid" }, "updated_at": { "type": "string", "format": "date-time" }, "updated_by": { "type": "string", "format": "uuid" } }, "required": [ "created_at", "created_by", "updated_at", "updated_by" ], "type": "object" }, "error_links": { "description": "Links to further information about the occurred error.", "properties": { "about": { "$ref": "#/components/schemas/link", "description": "A link that leads to further details about this particular occurrence of the problem." }, "type": { "$ref": "#/components/schemas/link", "description": "A link that identifies the type of the error that this particular error is an instance of." } }, "type": "object" }, "error_source": { "description": "Reference to the primary source of an error.", "properties": { "type": { "$ref": "#/components/schemas/error_source_type" }, "source": { "type": "string", "description": "The source of the problem in the form specified by `type`." } }, "required": [ "type", "source" ], "type": "object" }, "generic_error": { "description": "An error returned on failed API requests.", "properties": { "links": { "$ref": "#/components/schemas/error_links" }, "code": { "type": "string", "description": "An app specific error code." }, "title": { "type": "string", "description": "A short human readable summary of the problem." }, "detail": { "type": "string", "description": "A human readable explanation of the problem." }, "source": { "$ref": "#/components/schemas/error_source" }, "meta": { "type": "object", "description": "Non-standard meta-information about the error." } }, "required": [ "code", "title", "detail" ], "type": "object" }, "health_check": { "description": "Indicating the health of a service.", "properties": { "status": { "$ref": "#/components/schemas/health_status" }, "message": { "type": "string", "description": "An optional message giving more detailed information about the current health." } }, "required": [ "status" ], "type": "object" }, "link_object": { "description": "Represents a link with some meta information.", "properties": { "href": { "type": "string", "description": "An URI-reference pointing to the links target." }, "title": { "type": "string", "description": "A human-readable label for the link." }, "type": { "type": "string", "description": "Optional media type of the link's target." } }, "required": [ "href" ], "type": "object" }, "page_response": { "description": "Paging information returned from a paged request.", "properties": { "offset": { "type": "integer" }, "limit": { "type": "integer" }, "sort": { "items": { "$ref": "#/components/schemas/sort" }, "type": "array" }, "total_results": { "type": "integer", "format": "int64", "description": "Total number of results that can potentially be returned." }, "total_pages": { "type": "integer", "format": "int64", "description": "Total number of pages that can potentially be returned." } }, "required": [ "offset", "limit", "sort", "total_results", "total_pages" ], "type": "object" }, "paging_form": { "description": "Form containing paging information.", "properties": { "offset": { "type": "integer", "description": "Offset of the current page. The pages are 0-indexed, meaning the first page starts at 0.", "default": "0" }, "limit": { "type": "integer", "description": "The number of results to be returned by the api.", "default": "25" }, "sort": { "items": { "$ref": "#/components/schemas/sort" }, "type": "array", "description": "Defines multiple properties for the results to be sorted by. The order of the definition defines the priority. If omitted, the service will use an implementation dependent default sort." } }, "required": [ "offset", "limit" ], "type": "object" }, "service_info": { "description": "Information about a deployed service.", "properties": { "name": { "type": "string" }, "version": { "type": "string" }, "uri": { "type": "string", "description": "URI under which this service is deployed." }, "title": { "type": "string", "description": "A human-readable title of the service." }, "description": { "type": "string", "description": "A human-readable description of the service." } }, "required": [ "name", "version", "uri" ], "type": "object" }, "sort": { "description": "Single property to sort by.", "properties": { "property": { "type": "string", "description": "The property by which the results should be sorted." }, "direction": { "$ref": "#/components/schemas/sort_direction", "description": "The direction in which the results should be sorted." } }, "required": [ "property", "direction" ], "type": "object" }, "error_source_type": { "description": "Type of an error source. Possible values: pointer,parameter,header.", "enum": [ "pointer", "parameter", "header" ], "type": "string" }, "health_status": { "description": "The status of a service. Possible values: running,starting,unhealthy.", "enum": [ "running", "starting", "unhealthy" ], "type": "string" }, "sort_direction": { "description": "The direction in which to sort by a property. Possible values: asc,desc.", "enum": [ "asc", "desc" ], "type": "string" }, "link": { "description": "Represents a link to a resource.", "oneOf": [ { "type": "string" }, { "$ref": "#/components/schemas/link_object" } ], "discriminator": { "mapping": { "link_object": "#/components/schemas/link_object" }, "propertyName": "discriminator" } } } }, "info": { "contact": {}, "description": "Common models and resources used by all services.", "license": { "name": "MIT", "url": "http://opensource.org/licenses/MIT" }, "termsOfService": "", "title": "common", "version": "0.0.1" }, "openapi": "3.0.2", "paths": { "/_internal_/healthcheck": { "get": { "description": "Get the current health of the service.", "operationId": "get--_internal_-healthcheck", "parameters": [], "responses": { "200": { "description": "de.nccloud.common.v0.models.health_check", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/health_check" } } }, "headers": {} } }, "tags": [ "health_check" ] } }, "/_internal_/probe/ready": { "get": { "description": "Endpoint for readiness probe.", "operationId": "get--_internal_-probe-ready", "parameters": [], "responses": { "200": { "description": "Service is ready and can receive traffic.", "content": { "application/json": { "schema": { "type": "integer", "nullable": true } } }, "headers": {} }, "400": { "description": "Service is not ready for receiving traffic.", "content": { "application/json": { "schema": { "type": "integer", "nullable": true } } }, "headers": {} } }, "tags": [ "health_check" ] } }, "/_internal_/probe/live": { "get": { "description": "Endpoint for liveliness probe.", "operationId": "get--_internal_-probe-live", "parameters": [], "responses": { "200": { "description": "Service is live.", "content": { "application/json": { "schema": { "type": "integer", "nullable": true } } }, "headers": {} } }, "tags": [ "health_check" ] } }, "/_internal_/service": { "get": { "description": "Get information about the deployed service.", "operationId": "get--_internal_-service", "parameters": [], "responses": { "200": { "description": "de.nccloud.common.v0.models.service_info", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/service_info" } } }, "headers": {} } }, "tags": [ "service_info" ] } } }, "servers": [ {} ] }