{ "components": { "schemas": { "error": { "description": "A request semantic failure reason.", "properties": { "description": { "type": "string" } }, "required": [ "description" ], "type": "object" }, "hipchat_api_consumer": { "properties": { "scopes": { "items": { "$ref": "#/components/schemas/hipchat_scope" }, "type": "array", "description": "An array of scopes that are required to consume the HipChat API." }, "fromName": { "type": "string", "description": "The name that messages should be from when sent from the integration itself." } }, "required": [ "scopes" ], "type": "object" }, "hipchat_capabilities": { "properties": { "configurable": { "$ref": "#/components/schemas/hipchat_configuration_page", "description": "Most integrations will need to be configured in order to work correctly. For this purpose, an integration can expose a 'configurable' capability that provides an HTML page to be included as a panel in the configuration dialog." }, "hipchatApiConsumer": { "$ref": "#/components/schemas/hipchat_api_consumer", "description": "The ability to consume the HipChat API." }, "installable": { "$ref": "#/components/schemas/hipchat_installable", "description": "The capability of receiving a synchronous installation callback during integration installation." }, "oauth2Provider": { "$ref": "#/components/schemas/hipchat_oauth2_provider", "description": "The capability of providing and accepting OAuth 2 tokens for authentication." } }, "type": "object" }, "hipchat_capabilities_descriptor": { "properties": { "name": { "type": "string", "description": "The display name of this application." }, "description": { "type": "string", "description": "A short description of this application." }, "key": { "type": "string", "description": "The marketplace integration key that uniquely identifies the application, if registered." }, "apiVersion": { "type": "string", "description": "The HipChat Connect API version used by this integration. Defaults to 1:1." }, "capabilities": { "$ref": "#/components/schemas/hipchat_capabilities", "description": "The set of capabilities this application supports." }, "links": { "$ref": "#/components/schemas/hipchat_links", "description": "URLs to retrieve this and related integration information." }, "vendor": { "$ref": "#/components/schemas/hipchat_vendor", "description": "The vendor that maintains this application." } }, "required": [ "name", "description", "key", "links" ], "type": "object" }, "hipchat_configuration_page": { "properties": { "allowAccessToRoomAdmins": { "type": "string", "description": "If the add-on is installed globally, this property can allow the configuration page to be accessed in the room administration pages making it possible to have room specific configuration for the global add-on. This is only valid for globally installed add-ons." }, "url": { "type": "string", "description": "The URL to embed into a configure dialog via an iframe." } }, "required": [ "url" ], "type": "object" }, "hipchat_install_data": { "properties": { "capabilitiesUrl": { "type": "string" }, "oauthId": { "type": "string" }, "oauthSecret": { "type": "string" }, "groupId": { "type": "integer", "format": "int64" }, "roomId": { "type": "string" } }, "required": [ "capabilitiesUrl", "oauthId", "oauthSecret", "groupId" ], "type": "object" }, "hipchat_installable": { "properties": { "callbackUrl": { "type": "string", "description": "The URL to receive a confirmation of an integration installation." }, "installedUrl": { "type": "string", "description": "The URL HipChat will redirect to post-installation." }, "allowGlobal": { "type": "boolean", "description": "Whether the integration can be installed globally or not." }, "allowRoom": { "type": "boolean", "description": "Whether the integration can be installed in a room or not." } }, "type": "object" }, "hipchat_links": { "properties": { "homepage": { "type": "string", "description": "The URL to human-viewable home page of this integration." }, "api": { "type": "string", "description": "The URL to the REST API root." }, "self": { "type": "string", "description": "The URL to this descriptor." } }, "required": [ "self" ], "type": "object" }, "hipchat_oauth2_provider": { "properties": { "tokenUrl": { "type": "string", "description": "The OAuth 2 token endpoint for retrieving an access token." }, "authorizationUrl": { "type": "string", "description": "The OAuth 2 endpoint to direct browsers to in order to receive an authorization code that can be later exchanged using the token URL for an access token." } }, "type": "object" }, "hipchat_vendor": { "properties": { "name": { "type": "string", "description": "The vendor display name." }, "url": { "type": "string", "description": "The vendor's home page URL." } }, "required": [ "name", "url" ], "type": "object" }, "service_info": { "properties": { "name": { "type": "string", "description": "Name of this service." }, "version": { "type": "string", "description": "Version of this service." }, "scala_version": { "type": "string", "description": "Version of Scala this service is using." }, "sbt_version": { "type": "string", "description": "Version of SBT used to build this service." }, "build_time": { "type": "string", "format": "date-time", "description": "Time the service was built at." } }, "required": [ "name", "version", "scala_version", "sbt_version", "build_time" ], "type": "object" }, "sns_notification": { "properties": { "Type": { "type": "string", "description": "The type of message. For a unsubscribe confirmation, the type is UnsubscribeConfirmation." }, "MessageId": { "type": "string", "description": "A Universally Unique Identifier, unique for each message published. For a message that Amazon SNS resends during a retry, the message ID of the original message is used." }, "TopicArn": { "type": "string", "description": "The Amazon Resource Name (ARN) for the topic that this endpoint has been unsubscribed from." }, "Message": { "type": "string", "description": "A string that describes the message." }, "Timestamp": { "type": "string", "description": "The time (GMT) when the unsubscribe confirmation was sent." }, "SignatureVersion": { "type": "string", "description": "Version of the Amazon SNS signature used." }, "Signature": { "type": "string", "description": "Base64-encoded 'SHA1withRSA' signature of the Message, MessageId, Type, Timestamp, and TopicArn values." }, "SigningCertURL": { "type": "string", "description": "The URL to the certificate that was used to sign the message." }, "Token": { "type": "string", "description": "A value you can use with the ConfirmSubscription action to re-confirm the subscription. Alternatively, you can simply visit the SubscribeURL." }, "Subject": { "type": "string", "description": "The Subject parameter specified when the notification was published to the topic. Note that this is an optional parameter. If no Subject was specified, then this name/value pair does not appear in this JSON document." }, "SubscribeURL": { "type": "string", "description": "The URL that you must visit in order to re-confirm the subscription. Alternatively, you can instead use the Token with the ConfirmSubscription action to re-confirm the subscription." }, "UnsubscribeURL": { "type": "string", "description": "A URL that you can use to unsubscribe the endpoint from this topic. If you visit this URL, Amazon SNS unsubscribes the endpoint and stops sending notifications to this endpoint." } }, "required": [ "Type", "MessageId", "TopicArn", "Message", "Timestamp", "SignatureVersion", "Signature", "SigningCertURL" ], "type": "object" }, "hipchat_scope": { "description": "Your add-on must declare the scopes it requires based on which API endpoints it needs to use, via its descriptor. Possible values: send_message,send_notification.", "enum": [ "send_message", "send_notification" ], "type": "string" } } }, "info": { "contact": {}, "description": "Hipchat to Amazon SNS bridge.", "license": {}, "termsOfService": "", "title": "hipchat-sns-bridge", "version": "0.0.1-dev" }, "openapi": "3.0.2", "paths": { "/hipchat/capabilities": { "get": { "operationId": "get--hipchat-capabilities", "parameters": [ { "deprecated": false, "example": "false", "in": "query", "required": true, "schema": { "type": "boolean" }, "description": "Whether to redirect to Hipchat install with Base64 encoded data.", "name": "redirect_to_hipchat_install" } ], "responses": { "200": { "description": "com.teambytes.hipchat.sns.bridge.v0.models.hipchat_capabilities_descriptor", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/hipchat_capabilities_descriptor" } } }, "headers": {} } }, "tags": [ "hipchat_capabilities_descriptor" ] } }, "/hipchat/installable": { "get": { "operationId": "get--hipchat-installable", "parameters": [ { "deprecated": false, "in": "query", "required": true, "schema": { "type": "string" }, "name": "installable_url" }, { "deprecated": false, "in": "query", "required": true, "schema": { "type": "string" }, "name": "redirect_url" } ], "responses": { "200": { "description": "com.teambytes.hipchat.sns.bridge.v0.models.hipchat_capabilities_descriptor", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/hipchat_capabilities_descriptor" } } }, "headers": {} } }, "tags": [ "hipchat_install_data" ] }, "post": { "operationId": "post--hipchat-installable", "parameters": [], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/hipchat_install_data" } } } }, "responses": { "200": { "description": "unit", "content": { "application/json": { "schema": { "type": "integer", "nullable": true } } }, "headers": {} } }, "tags": [ "hipchat_install_data" ] } }, "/hipchat/installable/:oauthId": { "delete": { "operationId": "delete--hipchat-installable-oauthId", "parameters": [ { "deprecated": false, "in": "path", "required": true, "schema": { "type": "string" }, "name": "oauthId" } ], "responses": { "200": { "description": "unit", "content": { "application/json": { "schema": { "type": "integer", "nullable": true } } }, "headers": {} } }, "tags": [ "hipchat_install_data" ] } }, "/info": { "get": { "operationId": "get--info", "parameters": [], "responses": { "200": { "description": "com.teambytes.hipchat.sns.bridge.v0.models.service_info", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/service_info" } } }, "headers": {} } }, "tags": [ "service_info" ] } }, "/hipchat/room/:roomId/notification": { "post": { "operationId": "post--hipchat-room-roomId-notification", "parameters": [ { "deprecated": false, "in": "path", "required": true, "schema": { "type": "string" }, "name": "roomId" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/sns_notification" } } } }, "responses": { "200": { "description": "string", "content": { "application/json": { "schema": { "type": "string" } } }, "headers": {} } }, "tags": [ "sns_notification" ] } } }, "servers": [ { "url": "http://hipchat-sns-bridge.common.giltaws.com" } ] }