diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/CheckNameAvailabilityPost.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/CheckNameAvailabilityPost.json new file mode 100644 index 000000000000..4bcf5e0ea023 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/CheckNameAvailabilityPost.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-03-15", + "subscriptionId": "subid", + "checkNameAvailabilityInputs": { + "type": "Microsoft.HealthcareApis/services", + "name": "serviceName" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Service name is not available." + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/OperationResultsGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/OperationResultsGet.json new file mode 100644 index 000000000000..fc456dd9cd27 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/OperationResultsGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-15", + "subscriptionId": "subid", + "locationName": "westus", + "operationResultId": "exampleid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HealthcareApis/locations/westus/operationresults/exampleid", + "name": "servicename", + "status": "Requested", + "startTime": "2019-01-21T06:03:30.2716301Z", + "properties": {} + } + }, + "404": { + "body": { + "error": { + "code": "OperationResultNotFound", + "message": "The operation result was not found." + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/OperationsList.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/OperationsList.json new file mode 100644 index 000000000000..fb6ef411d36a --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/OperationsList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-03-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.HealthcareApis/services/read", + "display": {}, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/services/write", + "display": {}, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/services/delete", + "display": {}, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/locations/operationresults/read", + "display": { + "provider": "Microsoft.HealthcareApis", + "resource": "operationresults", + "operation": "read", + "description": "Get the status of an asynchronous operation" + }, + "origin": "user,system" + }, + { + "name": "Microsoft.HealthcareApis/checkNameAvailability/post", + "display": {}, + "origin": "user" + }, + { + "name": "Microsoft.HealthcareApis/Operations/read", + "display": { + "provider": "Microsoft.HealthcareApis", + "resource": "operations", + "operation": "read", + "description": "Get the list of operations supported by this Resource Provider." + }, + "origin": "user,system" + } + ] + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceCreate.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceCreate.json new file mode 100644 index 000000000000..0913fe446c46 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceCreate.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2020-03-15", + "subscriptionId": "subid", + "serviceDescription": { + "location": "westus2", + "tags": {}, + "kind": "fhir-R4", + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000, + "keyVaultKeyUri": "https://my-vault.vault.azure.net/keys/my-key" + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + }, + "exportConfiguration": { + "storageAccountName": "existingStorageAccount" + } + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US 2", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000, + "keyVaultKeyUri": "https://my-vault.vault.azure.net/keys/my-key" + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + }, + "exportConfiguration": { + "storageAccountName": "existingStorageAccount" + } + }, + "identity": { + "principalId": "03fe6ae0-952c-4e4b-954b-cc0364dd252e", + "tenantId": "72f988bf-86f1-41af-91ab-2d8cd011db47", + "type": "SystemAssigned" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US 2", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + }, + "exportConfiguration": { + "storageAccountName": "existingStorageAccount" + } + }, + "identity": { + "principalId": "03fe6ae0-952c-4e4b-954b-cc0364dd252e", + "tenantId": "72f988bf-86f1-41af-91ab-2d8cd011db47", + "type": "SystemAssigned" + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceCreateMinimum.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceCreateMinimum.json new file mode 100644 index 000000000000..5623735dcb6d --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceCreateMinimum.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceName": "service2", + "resourceGroupName": "rg1", + "api-version": "2020-03-15", + "subscriptionId": "subid", + "serviceDescription": { + "location": "westus2", + "tags": {}, + "kind": "fhir-R4", + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service2", + "name": "service2", + "type": "Microsoft.HealthcareApis/services", + "etag": "etagvalue", + "location": "westus2", + "kind": "fhir-R4", + "tags": {}, + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000 + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": false + }, + "corsConfiguration": { + "origins": [], + "headers": [], + "methods": [], + "maxAge": null, + "allowCredentials": false + }, + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service2", + "name": "service2", + "type": "Microsoft.HealthcareApis/services", + "etag": "etagvalue", + "location": "westus2", + "kind": "fhir-R4", + "tags": {}, + "properties": { + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000, + "keyVaultKeyUri": null + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": false + }, + "corsConfiguration": { + "origins": [], + "headers": [], + "methods": [], + "maxAge": null, + "allowCredentials": false + }, + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceDelete.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceDelete.json new file mode 100644 index 000000000000..6f463e67ae50 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2020-03-15", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceGet.json new file mode 100644 index 000000000000..ca5cf7e079ad --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceGet.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2020-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000, + "keyVaultKeyUri": "https://my-vault.vault.azure.net/keys/my-key" + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceList.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceList.json new file mode 100644 index 000000000000..a390808e92b9 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceList.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-03-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etag", + "tags": {}, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000, + "keyVaultKeyUri": "https://my-vault.vault.azure.net/keys/my-key" + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + ], + "nextLink": "https://host/subscriptions/subid/providers/Microsoft.HealthcareApis/services?api-version=2018-08-20-preview&%24skipToken=e30%3d" + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceListByResourceGroup.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceListByResourceGroup.json new file mode 100644 index 000000000000..18c57575d8f0 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServiceListByResourceGroup.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-03-15", + "subscriptionId": "subid", + "resourceGroupName": "rgname" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/dddb8dcb-effb-4290-bb47-ce1e8440c729", + "name": "service1", + "location": "westus", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "tags": {}, + "etag": "etagvalue", + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000, + "keyVaultKeyUri": "https://my-vault.vault.azure.net/keys/my-key" + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + ], + "nextLink": "https://host/subscriptions/subid/resourceGroups/rgname/providers/Microsoft.HealthcareApis/services?api-version=2018-08-20-preview&%24skipToken=e30%3d" + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServicePatch.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServicePatch.json new file mode 100644 index 000000000000..f039be7c4ac7 --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/examples/ServicePatch.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "resourceName": "service1", + "resourceGroupName": "rg1", + "api-version": "2020-03-15", + "subscriptionId": "subid", + "servicePatchDescription": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", + "name": "service1", + "location": "West US", + "type": "Microsoft.HealthcareApis/services", + "kind": "fhir-R4", + "etag": "etagvalue", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Creating", + "accessPolicies": [ + { + "objectId": "c487e7d1-3210-41a3-8ccc-e9372b78da47" + }, + { + "objectId": "5b307da8-43d4-492b-8b66-b0294ade872f" + } + ], + "cosmosDbConfiguration": { + "offerThroughput": 1000, + "keyVaultKeyUri": "https://my-vault.vault.azure.net/keys/my-key" + }, + "authenticationConfiguration": { + "authority": "https://login.microsoftonline.com/abfde7b2-df0f-47e6-aabf-2462b07508dc", + "audience": "https://azurehealthcareapis.com", + "smartProxyEnabled": true + }, + "corsConfiguration": { + "origins": [ + "*" + ], + "headers": [ + "*" + ], + "methods": [ + "DELETE", + "GET", + "OPTIONS", + "PATCH", + "POST", + "PUT" + ], + "maxAge": 1440, + "allowCredentials": false + } + } + } + } + } +} diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/healthcare-apis.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/healthcare-apis.json new file mode 100644 index 000000000000..8f52e2e545cf --- /dev/null +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2020-03-15/healthcare-apis.json @@ -0,0 +1,989 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-15", + "title": "HealthcareApisClient", + "description": "Use this API to manage Microsoft HealthcareApis services in your Azure subscription." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services/{resourceName}": { + "get": { + "tags": [ + "Resource" + ], + "description": "Get the metadata of a service instance.", + "operationId": "Services_Get", + "x-ms-examples": { + "Get metadata": { + "$ref": "./examples/ServiceGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all of the properties of the service instance.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "default": { + "description": "Default error response", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Resource" + ], + "description": "Create or update the metadata of a service instance.", + "operationId": "Services_CreateOrUpdate", + "x-ms-examples": { + "Create or Update a service with all parameters": { + "$ref": "./examples/ServiceCreate.json" + }, + "Create or Update a service with minimum parameters": { + "$ref": "./examples/ServiceCreateMinimum.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "serviceDescription", + "in": "body", + "description": "The service instance metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + } + ], + "responses": { + "200": { + "description": "Updated - Put request accepted and an existing resource is being updated; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "201": { + "description": "Created - Put request accepted and a new resource was created; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "Resource" + ], + "description": "Update the metadata of a service instance.", + "operationId": "Services_Update", + "x-ms-examples": { + "Patch service": { + "$ref": "./examples/ServicePatch.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "servicePatchDescription", + "in": "body", + "description": "The service instance metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/ServicesPatchDescription" + } + } + ], + "responses": { + "200": { + "description": "The tags for the resource were updated successfully.", + "schema": { + "$ref": "#/definitions/ServicesDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Resource" + ], + "description": "Delete a service instance.", + "operationId": "Services_Delete", + "x-ms-examples": { + "Delete service": { + "$ref": "./examples/ServiceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "Accepted - Delete request accepted; the operation will complete asynchronously." + }, + "204": { + "description": "The resource does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/services": { + "get": { + "tags": [ + "Collection" + ], + "description": "Get all the service instances in a subscription.", + "operationId": "Services_List", + "x-ms-examples": { + "List all services in subscription": { + "$ref": "./examples/ServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the service instances in the subscription.", + "schema": { + "$ref": "#/definitions/ServicesDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services": { + "get": { + "tags": [ + "Collection" + ], + "description": "Get all the service instances in a resource group.", + "operationId": "Services_ListByResourceGroup", + "x-ms-examples": { + "List all services in resource group": { + "$ref": "./examples/ServiceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the service instances in the resource group.", + "schema": { + "$ref": "#/definitions/ServicesDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/providers/Microsoft.HealthcareApis/operations": { + "get": { + "tags": [ + "Proxy" + ], + "description": "Lists all of the available Healthcare service REST API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "List operations": { + "$ref": "./examples/OperationsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/checkNameAvailability": { + "post": { + "tags": [ + "Proxy" + ], + "description": "Check if a service instance name is available.", + "operationId": "Services_CheckNameAvailability", + "x-ms-examples": { + "Check name availability": { + "$ref": "./examples/CheckNameAvailabilityPost.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "checkNameAvailabilityInputs", + "in": "body", + "description": "Set the name parameter in the CheckNameAvailabilityParameters structure to the name of the service instance to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the service name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/ServicesNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/locations/{locationName}/operationresults/{operationResultId}": { + "get": { + "tags": [ + "Resource" + ], + "description": "Get the operation result for a long running operation.", + "operationId": "OperationResults_Get", + "x-ms-examples": { + "Get operation result": { + "$ref": "./examples/OperationResultsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/locationName" + }, + { + "$ref": "#/parameters/operationResultId" + } + ], + "responses": { + "200": { + "description": "The body contains all of the properties of the operation result.", + "schema": { + "$ref": "#/definitions/OperationResultsDescription" + } + }, + "404": { + "description": "No operation result was found matching operationResultId.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "Default error response", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + } + }, + "definitions": { + "ServicesProperties": { + "description": "The properties of a service instance.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state.", + "enum": [ + "Deleting", + "Succeeded", + "Creating", + "Accepted", + "Verifying", + "Updating", + "Failed", + "Canceled", + "Deprovisioned" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + }, + "accessPolicies": { + "$ref": "#/definitions/ServiceAccessPoliciesInfo", + "description": "The access policies of the service instance." + }, + "cosmosDbConfiguration": { + "$ref": "#/definitions/ServiceCosmosDbConfigurationInfo", + "description": "The settings for the Cosmos DB database backing the service." + }, + "authenticationConfiguration": { + "$ref": "#/definitions/ServiceAuthenticationConfigurationInfo", + "description": "The authentication configuration for the service instance." + }, + "corsConfiguration": { + "$ref": "#/definitions/ServiceCorsConfigurationInfo", + "description": "The settings for the CORS configuration of the service instance." + }, + "exportConfiguration": { + "$ref": "#/definitions/ServiceExportConfigurationInfo", + "description": "The settings for the export operation of the service instance." + } + } + }, + "ServiceAccessPoliciesInfo": { + "description": "The access policies of the service instance.", + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAccessPolicyEntry" + } + }, + "ServiceAccessPolicyEntry": { + "description": "An access policy entry.", + "properties": { + "objectId": { + "description": "An Azure AD object ID (User or Apps) that is allowed access to the FHIR service.", + "type": "string", + "pattern": "^(([0-9A-Fa-f]{8}[-]?(?:[0-9A-Fa-f]{4}[-]?){3}[0-9A-Fa-f]{12}){1})+$" + } + }, + "required": [ + "objectId" + ] + }, + "ServiceCosmosDbConfigurationInfo": { + "description": "The settings for the Cosmos DB database backing the service.", + "type": "object", + "properties": { + "offerThroughput": { + "type": "integer", + "description": "The provisioned throughput for the backing database.", + "readOnly": false, + "minimum": 400, + "maximum": 10000 + }, + "keyVaultKeyUri": { + "type": "string", + "description": "The URI of the customer-managed key for the backing database.", + "readOnly": false + } + } + }, + "ServiceAuthenticationConfigurationInfo": { + "description": "Authentication configuration information", + "type": "object", + "properties": { + "authority": { + "type": "string", + "description": "The authority url for the service", + "readOnly": false + }, + "audience": { + "type": "string", + "description": "The audience url for the service", + "readOnly": false + }, + "smartProxyEnabled": { + "type": "boolean", + "description": "If the SMART on FHIR proxy is enabled", + "readOnly": false + } + } + }, + "ServiceCorsConfigurationInfo": { + "description": "The settings for the CORS configuration of the service instance.", + "type": "object", + "properties": { + "origins": { + "type": "array", + "description": "The origins to be allowed via CORS.", + "readOnly": false, + "items": { + "$ref": "#/definitions/ServiceCorsConfigurationOriginEntry" + } + }, + "headers": { + "type": "array", + "description": "The headers to be allowed via CORS.", + "readOnly": false, + "items": { + "$ref": "#/definitions/ServiceCorsConfigurationHeaderEntry" + } + }, + "methods": { + "type": "array", + "description": "The methods to be allowed via CORS.", + "readOnly": false, + "items": { + "$ref": "#/definitions/ServiceCorsConfigurationMethodEntry" + } + }, + "maxAge": { + "type": "integer", + "description": "The max age to be allowed via CORS.", + "readOnly": false, + "minimum": 0, + "maximum": 99999 + }, + "allowCredentials": { + "type": "boolean", + "description": "If credentials are allowed via CORS.", + "readOnly": false + } + } + }, + "ServiceExportConfigurationInfo": { + "description": "Export operation configuration information", + "type": "object", + "properties": { + "storageAccountName": { + "type": "string", + "description": "The name of the default export storage account.", + "readOnly": false + } + } + }, + "ServiceCorsConfigurationOriginEntry": { + "description": "An origin for CORS.", + "type": "string", + "pattern": "^(?:(?:(?:[hH][tT][tT][pP](?:[sS]|))\\:\\/\\/(?:[a-zA-Z0-9-]+[.]?)+(?:\\:[0-9]{1,5})?|[*]))$" + }, + "ServiceCorsConfigurationHeaderEntry": { + "description": "A header for CORS.", + "type": "string" + }, + "ServiceCorsConfigurationMethodEntry": { + "description": "A method for CORS.", + "type": "string" + }, + "ServicesDescription": { + "description": "The description of the service.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": false, + "description": "The common properties of a service.", + "$ref": "#/definitions/ServicesProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ServicesPatchDescription": { + "description": "The description of the service.", + "type": "object", + "properties": { + "tags": { + "description": "Instance tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Resource": { + "description": "The common properties of a service.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^[a-z0-9][a-z0-9-]{1,21}[a-z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "kind": { + "readOnly": false, + "type": "string", + "description": "The kind of the service.", + "enum": [ + "fhir", + "fhir-Stu3", + "fhir-R4" + ], + "x-ms-enum": { + "name": "kind", + "modelAsString": false + } + }, + "location": { + "type": "string", + "description": "The resource location.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + }, + "etag": { + "description": "An etag associated with the resource, used for optimistic concurrency when editing it.", + "type": "string" + }, + "identity": { + "type": "object", + "description": "Setting indicating whether the service has a managed identity associated with it.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of the resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the resource." + }, + "type": { + "description": "Type of identity being specified, currently SystemAssigned and None are allowed.", + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": true + } + } + } + } + }, + "x-ms-azure-resource": true, + "required": [ + "location", + "kind" + ] + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "error": { + "description": "Object containing error details.", + "$ref": "#/definitions/ErrorDetailsInternal" + } + } + }, + "ErrorDetailsInternal": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + }, + "ServicesDescriptionListResult": { + "description": "A list of service description objects with a next link.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of service description objects.", + "type": "string" + }, + "value": { + "description": "A list of service description objects.", + "type": "array", + "items": { + "$ref": "#/definitions/ServicesDescription" + } + } + } + }, + "OperationListResult": { + "description": "A list of service operations. It contains a list of operations and a URL link to get the next set of results.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of service description objects.", + "type": "string" + }, + "value": { + "description": "A list of service operations supported by the Microsoft.HealthcareApis resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Service REST API operation.", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "origin": { + "readOnly": true, + "type": "string", + "description": "Default value is 'user,system'." + }, + "display": { + "description": "The information displayed about the operation.", + "$ref": "#/definitions/OperationDisplay" + } + } + }, + "OperationDisplay": { + "description": "The object that represents the operation.", + "type": "object", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft.HealthcareApis" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: Services" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Friendly description for the operation," + } + } + }, + "CheckNameAvailabilityParameters": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the service instance to check.", + "type": "string" + }, + "type": { + "description": "The fully qualified resource type which includes provider namespace.", + "type": "string" + } + }, + "required": [ + "name", + "type" + ] + }, + "ServicesNameAvailabilityInfo": { + "description": "The properties indicating whether a given service name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ServiceNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "OperationResultsDescription": { + "description": "The properties indicating the operation result of an operation on a service.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the operation returned.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the operation result.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "The status of the operation being performed.", + "enum": [ + "Canceled", + "Succeeded", + "Failed", + "Requested", + "Running" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "OperationResultStatus", + "modelAsString": true + } + }, + "startTime": { + "description": "The time that the operation was started.", + "readOnly": true, + "type": "string" + }, + "properties": { + "x-ms-client-flatten": false, + "description": "Additional properties of the operation result." + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the service instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the service instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "minLength": 3, + "maxLength": 24 + }, + "locationName": { + "name": "locationName", + "in": "path", + "description": "The location of the operation.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "operationResultId": { + "name": "operationResultId", + "in": "path", + "description": "The ID of the operation result to get.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/healthcareapis/resource-manager/readme.md b/specification/healthcareapis/resource-manager/readme.md index f236f6dfd961..6b873de67d45 100644 --- a/specification/healthcareapis/resource-manager/readme.md +++ b/specification/healthcareapis/resource-manager/readme.md @@ -4,10 +4,10 @@ This is the AutoRest configuration file for HealthcareApis. - - --- + ## Getting Started + To build the SDK for HealthcareApis, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,23 +15,32 @@ To build the SDK for HealthcareApis, simply [Install AutoRest](https://aka.ms/au To see additional help and options, run: > `autorest --help` + --- ## Configuration - - ### Basic Information + These are the global settings for HealthcareApis service. ``` yaml title: HealthcareApisManagementClient description: Azure Healthcare APIs Client openapi-type: arm -tag: package-2019-09 +tag: package-2020-03 azure-arm: true ``` + +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.HealthcareApis/stable/2020-03-15/healthcare-apis.json +``` ### Tag: package-2019-09 These settings apply only when `--tag=package-2019-09` is specified on the command line. @@ -52,7 +61,6 @@ input-file: # Code Generation - ## Swagger to SDK This section describes what SDK should be generated by the automatic system. @@ -69,6 +77,7 @@ swagger-to-sdk: after_scripts: - node sdkauto_afterscript.js healthcareapis/resource-manager ``` + ## C# These settings apply only when `--csharp` is specified on the command line. @@ -83,6 +92,7 @@ csharp: output-folder: $(csharp-sdks-folder)/healthcareapis/Microsoft.Azure.Management.HealthcareApis/src/Generated clear-output-folder: true ``` + ## Python See configuration in [readme.python.md](./readme.python.md) @@ -166,11 +176,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +If there are files that should not be in the `all-api-versions` set, uncomment the `exclude-file` section below and add the file paths. ``` yaml $(tag) == 'all-api-versions' #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` -