OpenAPI Specification

{
	"openapi": "3.0.0",
	"info": {
		"title": "Noitification API",
		"version": "1.0.0",
		"description": "Notification API"
	},
	"servers": [{
		"url": "https://test.emr.com"
	}],
	"paths": {
		"/measures/notification": {
			"post": {
				"responses": {
					"200": {
						"description": "Successful processed request"
					},
					"400": {
						"description": "Invalid message"
					}
				},
				"tags": [
					"Notification"
				],
				"operationId": "sendNotification",
				"requestBody": {
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/NotificationMessageRequest"
							}
						}
					},
					"required": true
				},
				"parameters": [{
					"name": "Authorization",
					"in": "header",
					"required": true,
					"schema": {
						"type": "string"
					}
				}],
				"security": [{
					"map_auth": [
						"write:message",
						"read:message"
					]
				}],
				"summary": "Add a new mapping"
			}
		}
	},
	"components": {
		"schemas": {
			"NotificationMessageRequest": {
				"xml": {
					"name": "NotificationMessageRequest"
				},
				"type": "object",
				"properties": {
					"EmrOid": {
						"example": "2.16.724.4.2",
						"type": "string"
					},
					"MessageId": {
						"example": "5fea7756-0ea4-451a-a703-a558b933e274",
						"type": "string"
					},
					"MessageType": {
						"example": "Clinical report",
						"type": "string"
					},
					"MessageCreatedAt": {
						"example": "1606748230567",
						"type": "string"
					},
					"MessageReference": {
						"type": "object",
						"example": {
							"accesspoint": "arn:aws:s3:us-east-1:019364481091:accesspoint/2291405",
							"objectKey": "delivery/2291405/cda/xxx.xml"
						}
					},
					"MessageReceiptHandle": {
						"description": "Message receipt handle is required to be sent once notification is processed in order to remove message.",
						"example": "MbZj6wDWli%2BJvwwJaBV%2B3dcjk2YW2vA3%2BSTFFljTM8tJJg6HRG6PYSasuWXPJB%2BCw%0D%0A++++++++Lj1FjgXUv1uSj1gUPAWV66FU%2FWeR4mq2OKpEGYWbnLmpRCJVAyeMjeU5ZBdtcQ%2BQE%0D%0A++++++++auMZc8ZRv37sIW2iJKq3M9MFx1YvV11A2x%2FKSbkJ0%3D",
						"type": "string"
					}
				},
				"required": [
					"EmrOid",
					"MessageId",
					"MessageType",
					"MessageCreatedAt",
					"MessageReference",
					"MessageReceiptHandle"
				]
			},
			"ApiResponse": {
				"type": "object",
				"properties": {
					"Result": {
						"type": "string"
					},
					"Description": {
						"type": "string"
					}
				},
				"required": [
					"code",
					"type",
					"message"
				]
			}
		},
		"responses": {},
		"parameters": {},
		"examples": {},
		"requestBodies": {},
		"headers": {},
		"securitySchemes": {
			"map_auth": {
				"type": "oauth2",
				"flows": {
					"implicit": {
						"authorizationUrl": "http://notification.swagger.io/oauth/dialog",
						"scopes": {
							"write:message": "",
							"read:message": ""
						}
					}
				}
			},
			"api_key": {
				"type": "apiKey",
				"in": "header",
				"name": "api_key"
			}
		},
		"links": {},
		"callbacks": {}
	},
	"tags": [{
		"name": "Notification",
		"description": "Notify EMRs about new messages",
		"externalDocs": {
			"url": "https://confluence.rochedc.accentureanalytics.com",
			"description": "Find out more"
		}
	}]
}