From 7371f3ad7a5447e8fa2237cbb9fcf2759a1f1fde Mon Sep 17 00:00:00 2001 From: matthohn-msft <89162957+matthohn-msft@users.noreply.github.com> Date: Sun, 19 Mar 2023 18:42:51 -0700 Subject: [PATCH] [Hub Generated] Review request for Microsoft.Communication to add version preview/2023-03-01-preview (#22996) * Adds base for updating Microsoft.Communication from version preview/2021-10-01-preview to version 2023-03-01-preview * Updates readme * Updates API version in new specs and examples * Adding version 2023-03-01-preview changes. * Adding missing readme.md update * Addressing PR comments. * Updating to v5 common types * Incorporating comments from the stable version PR * Updating description for the provisioning state enum * Fixing model validation errors * Removing redundant systemData property. * Adding 201 response to indicate resource was create successfully --- .../CommunicationServices.json | 840 ++++++++++++++++++ .../preview/2023-03-01-preview/Domains.json | 732 +++++++++++++++ .../2023-03-01-preview/EmailServices.json | 502 +++++++++++ .../2023-03-01-preview/SenderUsernames.json | 339 +++++++ .../checkNameAvailabilityAvailable.json | 19 + .../checkNameAvailabilityUnavailable.json | 19 + .../communicationServices/createOrUpdate.json | 44 + .../communicationServices/delete.json | 17 + .../examples/communicationServices/get.json | 32 + .../linkNotificationHub.json | 27 + .../listByResourceGroup.json | 27 + .../listBySubscription.json | 26 + .../communicationServices/listKeys.json | 16 + .../communicationServices/operationsList.json | 24 + .../communicationServices/regenerateKey.json | 19 + .../communicationServices/update.json | 32 + .../examples/domains/cancelVerification.json | 20 + .../examples/domains/createOrUpdate.json | 80 ++ .../examples/domains/delete.json | 18 + .../examples/domains/get.json | 49 + .../domains/initiateVerification.json | 20 + .../examples/domains/listByEmailService.json | 53 ++ .../examples/domains/update.json | 99 +++ .../emailServices/createOrUpdate.json | 43 + .../examples/emailServices/delete.json | 17 + .../examples/emailServices/get.json | 30 + .../getVerifiedExchangeOnlineDomains.json | 14 + .../emailServices/listByResourceGroup.json | 25 + .../emailServices/listBySubscription.json | 24 + .../examples/emailServices/update.json | 48 + .../senderUsernames/createOrUpdate.json | 50 ++ .../examples/senderUsernames/delete.json | 14 + .../examples/senderUsernames/get.json | 32 + .../senderUsernames/listByDomain.json | 45 + .../communication/resource-manager/readme.md | 21 +- 35 files changed, 3412 insertions(+), 5 deletions(-) create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/CommunicationServices.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/Domains.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/EmailServices.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/SenderUsernames.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityAvailable.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityUnavailable.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/createOrUpdate.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/delete.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/get.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/linkNotificationHub.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listByResourceGroup.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listBySubscription.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listKeys.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/operationsList.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/regenerateKey.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/update.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/cancelVerification.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/createOrUpdate.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/delete.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/get.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/initiateVerification.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/listByEmailService.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/update.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/createOrUpdate.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/delete.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/get.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/getVerifiedExchangeOnlineDomains.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listByResourceGroup.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listBySubscription.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/update.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/createOrUpdate.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/delete.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/get.json create mode 100644 specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/listByDomain.json diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/CommunicationServices.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/CommunicationServices.json new file mode 100644 index 000000000000..c3014ffe68a4 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/CommunicationServices.json @@ -0,0 +1,840 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Services Management API", + "version": "2023-03-01-preview", + "description": "REST API for Azure Communication Services" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "schemes": [ + "https" + ], + "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": { + "/providers/Microsoft.Communication/operations": { + "get": { + "description": "Lists all of the available REST API operations of the Microsoft.Communication provider.", + "operationId": "Operations_List", + "summary": "List Operations", + "tags": [ + "Operations" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/communicationServices/operationsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Communication/checkNameAvailability": { + "post": { + "description": "Checks that the CommunicationService name is valid and is not already in use.", + "operationId": "CommunicationServices_CheckNameAvailability", + "summary": "Check Name Availability", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "name": "nameAvailabilityParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityParameters" + }, + "description": "Parameters supplied to the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success. The response describes the name availability.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Check name availability available": { + "$ref": "./examples/communicationServices/checkNameAvailabilityAvailable.json" + }, + "Check name availability unavailable": { + "$ref": "./examples/communicationServices/checkNameAvailabilityUnavailable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}/linkNotificationHub": { + "post": { + "description": "Links an Azure Notification Hub to this communication service.", + "operationId": "CommunicationServices_LinkNotificationHub", + "summary": "Link Notification Hub", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "name": "linkNotificationHubParameters", + "in": "body", + "schema": { + "$ref": "#/definitions/LinkNotificationHubParameters" + }, + "description": "Parameters supplied to the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "Success. The notification hub has been linked.", + "schema": { + "$ref": "#/definitions/LinkedNotificationHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Link notification hub": { + "$ref": "./examples/communicationServices/linkNotificationHub.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Communication/communicationServices": { + "get": { + "description": "Handles requests to list all resources in a subscription.", + "operationId": "CommunicationServices_ListBySubscription", + "summary": "List By Subscription", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of CommunicationServices in the subscription.", + "schema": { + "$ref": "#/definitions/CommunicationServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List by subscription": { + "$ref": "./examples/communicationServices/listBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices": { + "get": { + "description": "Handles requests to list all resources in a resource group.", + "operationId": "CommunicationServices_ListByResourceGroup", + "summary": "List By Resource Group", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of CommunicationServices in a resourceGroup.", + "schema": { + "$ref": "#/definitions/CommunicationServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List by resource group": { + "$ref": "./examples/communicationServices/listByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}": { + "patch": { + "description": "Operation to update an existing CommunicationService.", + "operationId": "CommunicationServices_Update", + "summary": "Update", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationServiceResourceUpdate" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "The update request was successful", + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update resource": { + "$ref": "./examples/communicationServices/update.json" + } + } + }, + "get": { + "description": "Get the CommunicationService and its properties.", + "operationId": "CommunicationServices_Get", + "summary": "Get", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the corresponding CommunicationService service.", + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get resource": { + "$ref": "./examples/communicationServices/get.json" + } + } + }, + "put": { + "description": "Create a new CommunicationService or update an existing CommunicationService.", + "operationId": "CommunicationServices_CreateOrUpdate", + "summary": "Create Or Update", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "The create or update request was completed successfully", + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "201": { + "description": "The create or update request was accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create or update resource": { + "$ref": "./examples/communicationServices/createOrUpdate.json" + } + } + }, + "delete": { + "description": "Operation to delete a CommunicationService.", + "operationId": "CommunicationServices_Delete", + "summary": "Delete", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "The delete operation was successful." + }, + "202": { + "description": "The delete operation is being performed in the background.", + "headers": { + "location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The resource did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete resource": { + "$ref": "./examples/communicationServices/delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}/listKeys": { + "post": { + "description": "Get the access keys of the CommunicationService resource.", + "operationId": "CommunicationServices_ListKeys", + "summary": "List Keys", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes CommunicationService access keys.", + "schema": { + "$ref": "#/definitions/CommunicationServiceKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List keys": { + "$ref": "./examples/communicationServices/listKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/communicationServices/{communicationServiceName}/regenerateKey": { + "post": { + "description": "Regenerate CommunicationService access key. PrimaryKey and SecondaryKey cannot be regenerated at the same time.", + "operationId": "CommunicationServices_RegenerateKey", + "summary": "Regenerate Key", + "tags": [ + "CommunicationServices" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameter that describes the Regenerate Key Operation.", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameters" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/CommunicationServiceName" + } + ], + "responses": { + "200": { + "description": "Regenerate key request was completed successfully. The response contains the new key.", + "schema": { + "$ref": "#/definitions/CommunicationServiceKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Regenerate key": { + "$ref": "./examples/communicationServices/regenerateKey.json" + } + } + } + } + }, + "definitions": { + "NameAvailabilityParameters": { + "description": "Data POST-ed to the nameAvailability action", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityRequest" + } + ], + "required": [ + "type", + "name" + ] + }, + "LinkNotificationHubParameters": { + "description": "Description of an Azure Notification Hub to link to the communication service", + "required": [ + "resourceId", + "connectionString" + ], + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the notification hub", + "type": "string" + }, + "connectionString": { + "description": "Connection string for the notification hub", + "type": "string" + } + } + }, + "LinkedNotificationHub": { + "description": "A notification hub that has been linked to the communication service", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the notification hub", + "type": "string" + } + } + }, + "CommunicationServiceResourceList": { + "description": "Object that includes an array of CommunicationServices and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of CommunicationService", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationServiceResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "CommunicationServiceResource": { + "description": "A class representing a CommunicationService resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CommunicationServiceProperties", + "description": "The properties of the service.", + "x-ms-client-flatten": true + } + } + }, + "DomainsResourceList": { + "description": "List of email Domain resource Ids.", + "type": "array", + "items": { + "type": "string", + "description": "Resource ID of an EmailService/Domain resource linked to this resource." + } + }, + "TaggedResource": { + "description": "An ARM resource with that can accept tags", + "type": "object", + "properties": { + "tags": { + "description": "Tags of the service which is a list of key value pairs that describe the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ] + } + } + }, + "CommunicationServiceProperties": { + "description": "A class that describes the properties of the CommunicationService.", + "required": [ + "dataLocation" + ], + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the resource.", + "enum": [ + "Unknown", + "Succeeded", + "Failed", + "Canceled", + "Running", + "Creating", + "Updating", + "Deleting", + "Moving" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CommunicationServices_ProvisioningState", + "modelAsString": true + } + }, + "hostName": { + "description": "FQDN of the CommunicationService instance.", + "type": "string", + "readOnly": true + }, + "dataLocation": { + "description": "The location where the communication service stores its data at rest.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "notificationHubId": { + "description": "Resource ID of an Azure Notification Hub linked to this resource.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the CommunicationService resource. Probably you need the same or higher version of client SDKs.", + "type": "string", + "readOnly": true + }, + "immutableResourceId": { + "description": "The immutable resource Id of the communication service.", + "type": "string", + "readOnly": true + }, + "linkedDomains": { + "$ref": "#/definitions/DomainsResourceList" + } + } + }, + "CommunicationServiceKeys": { + "description": "A class representing the access keys of a CommunicationService.", + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary access key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary access key.", + "type": "string" + }, + "primaryConnectionString": { + "description": "CommunicationService connection string constructed via the primaryKey", + "type": "string" + }, + "secondaryConnectionString": { + "description": "CommunicationService connection string constructed via the secondaryKey", + "type": "string" + } + } + }, + "RegenerateKeyParameters": { + "description": "Parameters describes the request to regenerate access keys", + "type": "object", + "properties": { + "keyType": { + "description": "The keyType to regenerate. Must be either 'primary' or 'secondary'(case-insensitive).", + "enum": [ + "Primary", + "Secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + } + } + }, + "CommunicationServiceUpdateProperties": { + "description": "A class that describes the properties that can be updated for CommunicationService resource.", + "type": "object", + "properties": { + "linkedDomains": { + "$ref": "#/definitions/DomainsResourceList" + } + } + }, + "CommunicationServiceResourceUpdate": { + "description": "A class representing update parameters for CommunicationService resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TaggedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CommunicationServiceUpdateProperties", + "description": "The properties of the service.", + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "CommunicationServiceName": { + "name": "communicationServiceName", + "in": "path", + "description": "The name of the CommunicationService resource.", + "pattern": "^[a-zA-Z0-9-]+$", + "minLength": 1, + "maxLength": 63, + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/Domains.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/Domains.json new file mode 100644 index 000000000000..9a2285fbe749 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/Domains.json @@ -0,0 +1,732 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Services Management API", + "version": "2023-03-01-preview", + "description": "REST API for Email Services/Domains" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "schemes": [ + "https" + ], + "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.Communication/emailServices/{emailServiceName}/domains/{domainName}": { + "get": { + "description": "Get the Domains resource and its properties.", + "operationId": "Domains_Get", + "summary": "Get", + "tags": [ + "Domains" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "#/parameters/DomainName" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the corresponding Domains resource.", + "schema": { + "$ref": "#/definitions/DomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get Domains resource": { + "$ref": "./examples/domains/get.json" + } + } + }, + "put": { + "description": "Add a new Domains resource under the parent EmailService resource or update an existing Domains resource.", + "operationId": "Domains_CreateOrUpdate", + "summary": "Create Or Update", + "tags": [ + "Domains" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/DomainResource" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "#/parameters/DomainName" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "The create or update request was completed successfully", + "schema": { + "$ref": "#/definitions/DomainResource" + } + }, + "201": { + "description": "The create or update request was accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/DomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create or update Domains resource": { + "$ref": "./examples/domains/createOrUpdate.json" + } + } + }, + "delete": { + "description": "Operation to delete a Domains resource.", + "operationId": "Domains_Delete", + "summary": "Delete", + "tags": [ + "Domains" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "#/parameters/DomainName" + } + ], + "responses": { + "200": { + "description": "The delete operation was successful." + }, + "202": { + "description": "The delete operation is being performed in the background.", + "headers": { + "location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The resource did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Domains resource": { + "$ref": "./examples/domains/delete.json" + } + } + }, + "patch": { + "description": "Operation to update an existing Domains resource.", + "operationId": "Domains_Update", + "summary": "Update", + "tags": [ + "Domains" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateDomainRequestParameters" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "#/parameters/DomainName" + } + ], + "responses": { + "200": { + "description": "The update request was successful", + "schema": { + "$ref": "#/definitions/DomainResource" + } + }, + "201": { + "description": "The update request was accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/DomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Update Domains resource": { + "$ref": "./examples/domains/update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/emailServices/{emailServiceName}/domains": { + "get": { + "description": "Handles requests to list all Domains resources under the parent EmailServices resource.", + "operationId": "Domains_ListByEmailServiceResource", + "summary": "List by EmailService", + "tags": [ + "Domains" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Domains resources under the parent EmailServices resource.", + "schema": { + "$ref": "#/definitions/DomainResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Domains resources by EmailServiceName": { + "$ref": "./examples/domains/listByEmailService.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/emailServices/{emailServiceName}/domains/{domainName}/initiateVerification": { + "post": { + "description": "Initiate verification of DNS record.", + "operationId": "Domains_InitiateVerification", + "summary": "Initiate Verification", + "tags": [ + "Domains" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/VerificationParameter" + }, + "description": "Type of verification to be initiated.", + "required": true + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "#/parameters/DomainName" + } + ], + "responses": { + "202": { + "description": "The initiateVerification operation is being performed in the background.", + "headers": { + "location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Initiate verification": { + "$ref": "./examples/domains/initiateVerification.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/emailServices/{emailServiceName}/domains/{domainName}/cancelVerification": { + "post": { + "description": "Cancel verification of DNS record.", + "operationId": "Domains_CancelVerification", + "summary": "Cancel Verification", + "tags": [ + "Domains" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/VerificationParameter" + }, + "description": "Type of verification to be canceled.", + "required": true + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "#/parameters/DomainName" + } + ], + "responses": { + "202": { + "description": "The cancelVerification operation is being performed in the background.", + "headers": { + "location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Cancel verification": { + "$ref": "./examples/domains/cancelVerification.json" + } + } + } + } + }, + "definitions": { + "VerificationParameter": { + "description": "Input parameter for verification APIs", + "type": "object", + "required": [ + "verificationType" + ], + "properties": { + "verificationType": { + "description": "Type of verification.", + "enum": [ + "Domain", + "SPF", + "DKIM", + "DKIM2", + "DMARC" + ], + "type": "string", + "x-ms-enum": { + "name": "VerificationType", + "modelAsString": true + } + } + } + }, + "VerificationStatusRecord": { + "description": "A class that represents a VerificationStatus record.", + "type": "object", + "properties": { + "status": { + "description": "Status of the verification operation.", + "enum": [ + "NotStarted", + "VerificationRequested", + "VerificationInProgress", + "VerificationFailed", + "Verified", + "CancellationRequested" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VerificationStatus", + "modelAsString": true + } + }, + "errorCode": { + "description": "Error code. This property will only be present if the status is UnableToVerify.", + "type": "string", + "readOnly": true + } + } + }, + "DnsRecord": { + "description": "A class that represents a VerificationStatus record.", + "type": "object", + "properties": { + "type": { + "description": "Type of the DNS record. Example: TXT", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the DNS record.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "Value of the DNS record.", + "type": "string", + "readOnly": true + }, + "ttl": { + "description": "Represents an expiry time in seconds to represent how long this entry can be cached by the resolver, default = 3600sec.", + "type": "integer", + "format": "int32", + "readOnly": true + } + } + }, + "DomainProperties": { + "description": "A class that describes the properties of a Domains resource.", + "type": "object", + "required": [ + "domainManagement" + ], + "properties": { + "provisioningState": { + "description": "Provisioning state of the resource.", + "enum": [ + "Unknown", + "Succeeded", + "Failed", + "Canceled", + "Running", + "Creating", + "Updating", + "Deleting", + "Moving" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "Domains_ProvisioningState", + "modelAsString": true + } + }, + "dataLocation": { + "description": "The location where the Domains resource data is stored at rest.", + "type": "string", + "readOnly": true + }, + "fromSenderDomain": { + "description": "P2 sender domain that is displayed to the email recipients [RFC 5322].", + "type": "string", + "readOnly": true + }, + "mailFromSenderDomain": { + "description": "P1 sender domain that is present on the email envelope [RFC 5321].", + "type": "string", + "readOnly": true + }, + "domainManagement": { + "$ref": "#/definitions/DomainManagement" + }, + "verificationStates": { + "description": "List of VerificationStatusRecord", + "type": "object", + "properties": { + "Domain": { + "$ref": "#/definitions/VerificationStatusRecord" + }, + "SPF": { + "$ref": "#/definitions/VerificationStatusRecord" + }, + "DKIM": { + "$ref": "#/definitions/VerificationStatusRecord" + }, + "DKIM2": { + "$ref": "#/definitions/VerificationStatusRecord" + }, + "DMARC": { + "$ref": "#/definitions/VerificationStatusRecord" + } + }, + "readOnly": true + }, + "verificationRecords": { + "description": "List of DnsRecord", + "type": "object", + "properties": { + "Domain": { + "$ref": "#/definitions/DnsRecord" + }, + "SPF": { + "$ref": "#/definitions/DnsRecord" + }, + "DKIM": { + "$ref": "#/definitions/DnsRecord" + }, + "DKIM2": { + "$ref": "#/definitions/DnsRecord" + }, + "DMARC": { + "$ref": "#/definitions/DnsRecord" + } + }, + "readOnly": true + }, + "userEngagementTracking": { + "$ref": "#/definitions/UserEngagementTracking" + } + } + }, + "DomainManagement": { + "description": "Describes how a Domains resource is being managed.", + "enum": [ + "AzureManaged", + "CustomerManaged", + "CustomerManagedInExchangeOnline" + ], + "type": "string", + "x-ms-enum": { + "name": "DomainManagement", + "modelAsString": true + } + }, + "UserEngagementTracking": { + "description": "Describes whether user engagement tracking is enabled or disabled.", + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string", + "x-ms-enum": { + "name": "UserEngagementTracking", + "modelAsString": true + } + }, + "DomainResource": { + "description": "A class representing a Domains resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DomainProperties", + "description": "The properties of a Domains resource.", + "x-ms-client-flatten": true + } + } + }, + "UpdateDomainProperties": { + "description": "A class that describes the updatable properties of a Domains resource.", + "type": "object", + "properties": { + "userEngagementTracking": { + "$ref": "#/definitions/UserEngagementTracking" + } + } + }, + "UpdateDomainRequestParameters": { + "description": "A class that describes the PATCH request parameters of a Domains resource.", + "type": "object", + "allOf": [ + { + "$ref": "CommunicationServices.json#/definitions/TaggedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/UpdateDomainProperties", + "x-ms-client-flatten": true + } + } + }, + "DomainResourceList": { + "description": "Object that includes an array of Domains resource and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of Domains resource", + "type": "array", + "items": { + "$ref": "#/definitions/DomainResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + } + }, + "parameters": { + "DomainName": { + "name": "domainName", + "in": "path", + "description": "The name of the Domains resource.", + "minLength": 1, + "maxLength": 253, + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/EmailServices.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/EmailServices.json new file mode 100644 index 000000000000..4d7c68baed6a --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/EmailServices.json @@ -0,0 +1,502 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Services Management API", + "version": "2023-03-01-preview", + "description": "REST API for Email Services" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "schemes": [ + "https" + ], + "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.Communication/emailServices/{emailServiceName}": { + "get": { + "description": "Get the EmailService and its properties.", + "operationId": "EmailServices_Get", + "summary": "Get", + "tags": [ + "EmailServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/EmailServiceName" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the corresponding EmailService resource.", + "schema": { + "$ref": "#/definitions/EmailServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get EmailService resource": { + "$ref": "./examples/emailServices/get.json" + } + } + }, + "put": { + "description": "Create a new EmailService or update an existing EmailService.", + "operationId": "EmailServices_CreateOrUpdate", + "summary": "Create Or Update", + "tags": [ + "EmailServices" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/EmailServiceResource" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/EmailServiceName" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "The create or update request was completed successfully", + "schema": { + "$ref": "#/definitions/EmailServiceResource" + } + }, + "201": { + "description": "The create or update request was accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/EmailServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create or update EmailService resource": { + "$ref": "./examples/emailServices/createOrUpdate.json" + } + } + }, + "delete": { + "description": "Operation to delete a EmailService.", + "operationId": "EmailServices_Delete", + "summary": "Delete", + "tags": [ + "EmailServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/EmailServiceName" + } + ], + "responses": { + "200": { + "description": "The delete operation was successful." + }, + "202": { + "description": "The delete operation is being performed in the background.", + "headers": { + "location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "The resource did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete EmailService resource": { + "$ref": "./examples/emailServices/delete.json" + } + } + }, + "patch": { + "description": "Operation to update an existing EmailService.", + "operationId": "EmailServices_Update", + "summary": "Update", + "tags": [ + "EmailServices" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/EmailServiceResourceUpdate" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/EmailServiceName" + } + ], + "responses": { + "200": { + "description": "The update request was successful", + "schema": { + "$ref": "#/definitions/EmailServiceResource" + } + }, + "201": { + "description": "The update request was accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/EmailServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Update EmailService resource": { + "$ref": "./examples/emailServices/update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Communication/emailServices": { + "get": { + "description": "Handles requests to list all resources in a subscription.", + "operationId": "EmailServices_ListBySubscription", + "summary": "List By Subscription", + "tags": [ + "EmailServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of EmailServices in the subscription.", + "schema": { + "$ref": "#/definitions/EmailServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List EmailService resources by subscription": { + "$ref": "./examples/emailServices/listBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/emailServices": { + "get": { + "description": "Handles requests to list all resources in a resource group.", + "operationId": "EmailServices_ListByResourceGroup", + "summary": "List By Resource Group", + "tags": [ + "EmailServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of EmailServices in a resourceGroup.", + "schema": { + "$ref": "#/definitions/EmailServiceResourceList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List EmailService resources by resource group": { + "$ref": "./examples/emailServices/listByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Communication/listVerifiedExchangeOnlineDomains": { + "post": { + "description": "Get a list of domains that are fully verified in Exchange Online.", + "operationId": "EmailServices_ListVerifiedExchangeOnlineDomains", + "summary": "List Verified Domains From Exchange Online", + "tags": [ + "EmailServices" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe a list of verified domains from Exchange Online.", + "schema": { + "$ref": "#/definitions/VerifiedExchangeOnlineDomainList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get verified Exchange Online domains": { + "$ref": "./examples/emailServices/getVerifiedExchangeOnlineDomains.json" + } + } + } + } + }, + "definitions": { + "EmailServiceProperties": { + "description": "A class that describes the properties of the EmailService.", + "required": [ + "dataLocation" + ], + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the resource.", + "enum": [ + "Unknown", + "Succeeded", + "Failed", + "Canceled", + "Running", + "Creating", + "Updating", + "Deleting", + "Moving" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EmailServices_ProvisioningState", + "modelAsString": true + } + }, + "dataLocation": { + "description": "The location where the email service stores its data at rest.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + } + } + }, + "EmailServiceResource": { + "description": "A class representing an EmailService resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EmailServiceProperties", + "description": "The properties of the service.", + "x-ms-client-flatten": true + } + } + }, + "EmailServiceResourceUpdate": { + "description": "A class representing update parameters for EmailService resource.", + "type": "object", + "allOf": [ + { + "$ref": "CommunicationServices.json#/definitions/TaggedResource" + } + ] + }, + "VerifiedExchangeOnlineDomainList": { + "description": "List of FQDNs of verified domains in Exchange Online.", + "type": "array", + "items": { + "type": "string" + } + }, + "EmailServiceResourceList": { + "description": "Object that includes an array of EmailServices and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of EmailService", + "type": "array", + "items": { + "$ref": "#/definitions/EmailServiceResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + } + }, + "parameters": { + "EmailServiceName": { + "name": "emailServiceName", + "in": "path", + "description": "The name of the EmailService resource.", + "pattern": "^[a-zA-Z0-9-]+$", + "minLength": 1, + "maxLength": 63, + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/SenderUsernames.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/SenderUsernames.json new file mode 100644 index 000000000000..cd8c7c3cc089 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/SenderUsernames.json @@ -0,0 +1,339 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Communication Services Management API", + "version": "2023-03-01-preview", + "description": "REST API for Email Services/Domains/SenderUsernames" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "host": "management.azure.com", + "schemes": [ + "https" + ], + "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.Communication/emailServices/{emailServiceName}/domains/{domainName}/senderUsernames": { + "get": { + "description": "List all valid sender usernames for a domains resource.", + "operationId": "SenderUsernames_ListByDomains", + "summary": "ListBy_Domains", + "tags": [ + "SenderUsernames" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "Domains.json#/parameters/DomainName" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the Domains SenderUsername collection.", + "schema": { + "$ref": "#/definitions/SenderUsernameResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get SenderUsernames resource": { + "$ref": "./examples/senderUsernames/listByDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Communication/emailServices/{emailServiceName}/domains/{domainName}/senderUsernames/{senderUsername}": { + "get": { + "description": "Get a valid sender username for a domains resource.", + "operationId": "SenderUsernames_Get", + "summary": "Get", + "tags": [ + "SenderUsernames" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "Domains.json#/parameters/DomainName" + }, + { + "$ref": "#/parameters/SenderUsername" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the corresponding SenderUsername resource.", + "schema": { + "$ref": "#/definitions/SenderUsernameResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get SenderUsernames resource": { + "$ref": "./examples/senderUsernames/get.json" + } + } + }, + "put": { + "description": "Add a new SenderUsername resource under the parent Domains resource or update an existing SenderUsername resource.", + "operationId": "SenderUsernames_CreateOrUpdate", + "summary": "Create Or Update", + "tags": [ + "SenderUsernames" + ], + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/SenderUsernameResource" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "Domains.json#/parameters/DomainName" + }, + { + "$ref": "#/parameters/SenderUsername" + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "200": { + "description": "The update request was completed successfully", + "schema": { + "$ref": "#/definitions/SenderUsernameResource" + } + }, + "201": { + "description": "The create request was completed successfully", + "schema": { + "$ref": "#/definitions/SenderUsernameResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update SenderUsernames resource": { + "$ref": "./examples/senderUsernames/createOrUpdate.json" + } + } + }, + "delete": { + "description": "Operation to delete a SenderUsernames resource.", + "operationId": "SenderUsernames_Delete", + "summary": "Delete", + "tags": [ + "SenderUsernames" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "EmailServices.json#/parameters/EmailServiceName" + }, + { + "$ref": "Domains.json#/parameters/DomainName" + }, + { + "$ref": "#/parameters/SenderUsername" + } + ], + "responses": { + "200": { + "description": "The delete operation was successful." + }, + "204": { + "description": "The resource did not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete SenderUsernames resource": { + "$ref": "./examples/senderUsernames/delete.json" + } + } + } + } + }, + "definitions": { + "SenderUsernameResource": { + "description": "A class representing a SenderUsername resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SenderUsernameProperties", + "description": "The properties of a SenderUsername resource.", + "x-ms-client-flatten": true + } + } + }, + "SenderUsernameResourceCollection": { + "description": "A class representing a Domains SenderUsernames collection.", + "type": "object", + "properties": { + "value": { + "description": "List of SenderUsernames", + "type": "array", + "items": { + "$ref": "#/definitions/SenderUsernameResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).", + "type": "string" + } + } + }, + "SenderUsernameProperties": { + "description": "A class that describes the properties of a SenderUsername resource.", + "type": "object", + "required": [ + "username" + ], + "properties": { + "dataLocation": { + "description": "The location where the SenderUsername resource data is stored at rest.", + "type": "string", + "readOnly": true + }, + "username": { + "description": "A sender senderUsername to be used when sending emails.", + "type": "string" + }, + "displayName": { + "description": "The display name for the senderUsername.", + "type": "string" + }, + "provisioningState": { + "description": "Provisioning state of the resource. Unknown is the default state for Communication Services.", + "enum": [ + "Unknown", + "Succeeded", + "Failed", + "Canceled", + "Running", + "Creating", + "Updating", + "Deleting", + "Moving" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "SenderUsername": { + "name": "senderUsername", + "in": "path", + "description": "The valid sender Username.", + "minLength": 1, + "maxLength": 253, + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityAvailable.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityAvailable.json new file mode 100644 index 000000000000..b25cba95c6c1 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityAvailable.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "api-version": "2023-03-01-preview", + "nameAvailabilityParameters": { + "type": "Microsoft.Communication/CommunicationServices", + "name": "MyCommunicationService" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "NameAvailable", + "message": "Requested name is available for the requested type" + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityUnavailable.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityUnavailable.json new file mode 100644 index 000000000000..d24ae7999228 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/checkNameAvailabilityUnavailable.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "api-version": "2023-03-01-preview", + "nameAvailabilityParameters": { + "type": "Microsoft.Communication/CommunicationServices", + "name": "MyCommunicationService" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Requested name is unavailable for the requested type" + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/createOrUpdate.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/createOrUpdate.json new file mode 100644 index 000000000000..8e2d287627eb --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/createOrUpdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2023-03-01-preview", + "parameters": { + "location": "Global", + "properties": { + "dataLocation": "United States" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Succeeded", + "hostName": "mycommunicationresource.communications.azure.com" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + }, + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/delete.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/delete.json new file mode 100644 index 000000000000..2da80a40b171 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + } + }, + "204": {} + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/get.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/get.json new file mode 100644 index 000000000000..9ed40c1c72ba --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running", + "hostName": "mycommunicationservice.comms.azure.net", + "version": "0.2.0" + } + } + }, + "default": { + "body": { + "error": { + "code": "ResourceNotFound", + "message": "The requested resource was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/linkNotificationHub.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/linkNotificationHub.json new file mode 100644 index 000000000000..b0c5fb7a4887 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/linkNotificationHub.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2023-03-01-preview", + "linkNotificationHubParameters": { + "resourceId": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyOtherResourceGroup/providers/Microsoft.NotificationHubs/namespaces/MyNamespace/notificationHubs/MyHub", + "connectionString": "Endpoint=sb://MyNamespace.servicebus.windows.net/;SharedAccessKey=abcd1234" + } + }, + "responses": { + "200": { + "body": { + "resourceId": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyOtherResourceGroup/providers/Microsoft.NotificationHubs/namespaces/MyNamespace/notificationHubs/MyHub" + } + }, + "default": { + "body": { + "error": { + "code": "WrongSubscription", + "message": "The notification hub must be in the same subscription as the communication service" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listByResourceGroup.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listByResourceGroup.json new file mode 100644 index 000000000000..05c612c87b26 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listByResourceGroup.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "provisioningState": "Running", + "dataLocation": "United States", + "hostName": "mycommunicationservice.comms.azure.net", + "version": "0.2.0" + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listBySubscription.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listBySubscription.json new file mode 100644 index 000000000000..1099e684942e --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listBySubscription.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "properties": { + "provisioningState": "Running", + "dataLocation": "United States", + "hostName": "mycommunicationservice.comms.azure.net", + "version": "0.2.0" + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listKeys.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listKeys.json new file mode 100644 index 000000000000..0832407a523f --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/listKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "" + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/operationsList.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/operationsList.json new file mode 100644 index 000000000000..0215ef518a92 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/operationsList.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "description": "The list of supported operations has been fetched successfully.", + "body": { + "value": [ + { + "name": "", + "isDataAction": false, + "display": { + "provider": "", + "resource": "", + "operation": "", + "description": "" + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/regenerateKey.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/regenerateKey.json new file mode 100644 index 000000000000..c44de371c5fb --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/regenerateKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2023-03-01-preview", + "parameters": { + "keyType": "Primary" + } + }, + "responses": { + "200": { + "body": { + "primaryKey": "1234", + "primaryConnectionString": "endpoint=http://example.com;accesskey=1234" + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/update.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/update.json new file mode 100644 index 000000000000..e01834c3b0c8 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/communicationServices/update.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "communicationServiceName": "MyCommunicationResource", + "api-version": "2023-03-01-preview", + "parameters": { + "tags": { + "newTag": "newVal" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/CommunicationServices/MyCommunicationResource", + "name": "MyCommunicationResource", + "type": "Microsoft.Communication/CommunicationServices", + "location": "Global", + "tags": { + "newTag": "newVal" + }, + "properties": { + "provisioningState": "Succeeded", + "dataLocation": "United States", + "hostName": "mycommunicationresource.communications.azure.com", + "version": "0.2.0" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/cancelVerification.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/cancelVerification.json new file mode 100644 index 000000000000..931e9265dbff --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/cancelVerification.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "domainName": "mydomain.com", + "api-version": "2023-03-01-preview", + "parameters": { + "verificationType": "SPF" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d", + "Retry-After": 60 + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/createOrUpdate.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/createOrUpdate.json new file mode 100644 index 000000000000..ef72dcc69771 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/createOrUpdate.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "domainName": "mydomain.com", + "api-version": "2023-03-01-preview", + "parameters": { + "location": "Global", + "properties": { + "domainManagement": "CustomerManaged" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource/Domains/mydomain.com", + "name": "mydomain.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running", + "fromSenderDomain": "mydomain.com", + "mailFromSenderDomain": "mydomain.com", + "domainManagement": "CustomerManaged", + "verificationStates": { + "Domain": { + "status": "NotStarted", + "errorCode": "" + } + }, + "verificationRecords": { + "Domain": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + } + }, + "userEngagementTracking": "Disabled" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + }, + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource/Domains/mydomain.com", + "name": "mydomain.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running", + "fromSenderDomain": "mydomain.com", + "mailFromSenderDomain": "mydomain.com", + "domainManagement": "CustomerManaged", + "verificationStates": { + "Domain": { + "status": "NotStarted", + "errorCode": "" + } + }, + "verificationRecords": { + "Domain": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + } + }, + "userEngagementTracking": "Disabled" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/delete.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/delete.json new file mode 100644 index 000000000000..c7b98d10d98c --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "domainName": "mydomain.com", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + } + }, + "204": {} + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/get.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/get.json new file mode 100644 index 000000000000..97a56df32778 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/get.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "domainName": "mydomain.com", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource/Domains/mydomain.com", + "name": "mydomain.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running", + "fromSenderDomain": "mydomain.com", + "mailFromSenderDomain": "mydomain.com", + "domainManagement": "CustomerManaged", + "verificationStates": { + "Domain": { + "status": "Verified", + "errorCode": "" + } + }, + "verificationRecords": { + "Domain": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + } + }, + "userEngagementTracking": "Disabled" + } + } + }, + "default": { + "body": { + "error": { + "code": "ResourceNotFound", + "message": "The requested resource was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/initiateVerification.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/initiateVerification.json new file mode 100644 index 000000000000..931e9265dbff --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/initiateVerification.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "domainName": "mydomain.com", + "api-version": "2023-03-01-preview", + "parameters": { + "verificationType": "SPF" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d", + "Retry-After": 60 + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/listByEmailService.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/listByEmailService.json new file mode 100644 index 000000000000..a7d3c556e290 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/listByEmailService.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource/Domains/mydomain.com", + "name": "mydomain.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "location": "Global", + "properties": { + "provisioningState": "Running", + "dataLocation": "United States", + "fromSenderDomain": "mydomain.com", + "mailFromSenderDomain": "mydomain.com", + "domainManagement": "CustomerManaged", + "verificationStates": { + "Domain": { + "status": "Verified", + "errorCode": "" + }, + "SPF": { + "status": "NotStarted", + "errorCode": "" + } + }, + "verificationRecords": { + "Domain": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + }, + "SPF": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + } + } + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/update.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/update.json new file mode 100644 index 000000000000..97ff6b0af120 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/domains/update.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "domainName": "mydomain.com", + "api-version": "2023-03-01-preview", + "parameters": { + "properties": { + "userEngagementTracking": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource/Domains/mydomain.com", + "name": "mydomain.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running", + "fromSenderDomain": "mydomain.com", + "mailFromSenderDomain": "mydomain.com", + "domainManagement": "CustomerManaged", + "verificationStates": { + "Domain": { + "status": "Verified", + "errorCode": "" + }, + "SPF": { + "status": "NotStarted", + "errorCode": "" + } + }, + "verificationRecords": { + "Domain": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + }, + "SPF": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + } + }, + "userEngagementTracking": "Enabled" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + }, + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource/Domains/mydomain.com", + "name": "mydomain.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running", + "fromSenderDomain": "mydomain.com", + "mailFromSenderDomain": "mydomain.com", + "domainManagement": "CustomerManaged", + "verificationStates": { + "Domain": { + "status": "Verified", + "errorCode": "" + }, + "SPF": { + "status": "NotStarted", + "errorCode": "" + } + }, + "verificationRecords": { + "Domain": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + }, + "SPF": { + "type": "TXT", + "name": "recordName", + "value": "recordValue", + "ttl": 3600 + } + }, + "userEngagementTracking": "Enabled" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/createOrUpdate.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/createOrUpdate.json new file mode 100644 index 000000000000..73473424d7e9 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/createOrUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "api-version": "2023-03-01-preview", + "parameters": { + "location": "Global", + "properties": { + "dataLocation": "United States" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource", + "name": "MyEmailServiceResource", + "type": "Microsoft.Communication/EmailServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + }, + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource", + "name": "MyEmailServiceResource", + "type": "Microsoft.Communication/EmailServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/delete.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/delete.json new file mode 100644 index 000000000000..deff6d000871 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + } + }, + "204": {} + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/get.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/get.json new file mode 100644 index 000000000000..e00f83557f9d --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/get.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource", + "name": "MyEmailServiceResource", + "type": "Microsoft.Communication/EmailServices", + "location": "Global", + "properties": { + "dataLocation": "United States", + "provisioningState": "Running" + } + } + }, + "default": { + "body": { + "error": { + "code": "ResourceNotFound", + "message": "The requested resource was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/getVerifiedExchangeOnlineDomains.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/getVerifiedExchangeOnlineDomains.json new file mode 100644 index 000000000000..a23b3bd0c183 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/getVerifiedExchangeOnlineDomains.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": [ + "example.com", + "contoso.com" + ] + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listByResourceGroup.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listByResourceGroup.json new file mode 100644 index 000000000000..a31ca778bcd7 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listByResourceGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource", + "name": "MyEmailServiceResource", + "type": "Microsoft.Communication/EmailServices", + "location": "Global", + "properties": { + "provisioningState": "Running", + "dataLocation": "United States" + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listBySubscription.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listBySubscription.json new file mode 100644 index 000000000000..118ee8c0ad11 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/listBySubscription.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource", + "name": "MyEmailServiceResource", + "type": "Microsoft.Communication/EmailServices", + "location": "Global", + "properties": { + "provisioningState": "Running", + "dataLocation": "United States" + } + } + ] + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/update.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/update.json new file mode 100644 index 000000000000..7f4e87b6402e --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/emailServices/update.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "api-version": "2023-03-01-preview", + "parameters": { + "tags": { + "newTag": "newVal" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource", + "name": "MyEmailServiceResource", + "type": "Microsoft.Communication/EmailServices", + "location": "Global", + "tags": { + "newTag": "newVal" + }, + "properties": { + "provisioningState": "Succeeded", + "dataLocation": "United States" + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.Communication/locations/westus/operationStatuses/ed5d502c-acaa-42ec-ad61-0d8488a9fd1d" + }, + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/MyResourceGroup/providers/Microsoft.Communication/EmailServices/MyEmailServiceResource", + "name": "MyEmailServiceResource", + "type": "Microsoft.Communication/EmailServices", + "location": "Global", + "tags": { + "newTag": "newVal" + }, + "properties": { + "provisioningState": "Succeeded", + "dataLocation": "United States" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/createOrUpdate.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/createOrUpdate.json new file mode 100644 index 000000000000..19b32c2853d3 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/createOrUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "contosoResourceGroup", + "emailServiceName": "contosoEmailService", + "domainName": "contoso.com", + "senderUsername": "contosoNewsAlerts", + "api-version": "2023-03-01-preview", + "parameters": { + "properties": { + "username": "contosoNewsAlerts", + "displayName": "Contoso News Alerts" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/contosoResourceGroup/providers/Microsoft.Communication/EmailServices/contosoEmailService/Domains/contoso.com/senderUsernames/contosoNewsAlerts", + "name": "contoso.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "properties": { + "dataLocation": "United States", + "username": "contosoNewsAlerts", + "displayName": "Contoso News Alerts" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/contosoResourceGroup/providers/Microsoft.Communication/EmailServices/contosoEmailService/Domains/contoso.com/senderUsernames/contosoNewsAlerts", + "name": "contoso.com", + "type": "Microsoft.Communication/EmailServices/Domains", + "properties": { + "dataLocation": "United States", + "username": "contosoNewsAlerts", + "displayName": "Contoso News Alerts" + } + } + }, + "default": { + "body": { + "error": { + "code": "ResourceNotFound", + "message": "The requested resource was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/delete.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/delete.json new file mode 100644 index 000000000000..30974350776b --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "MyResourceGroup", + "emailServiceName": "MyEmailServiceResource", + "domainName": "mydomain.com", + "senderUsername": "contosoNewsAlerts", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/get.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/get.json new file mode 100644 index 000000000000..6de0bc97d06c --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "contosoResourceGroup", + "emailServiceName": "contosoEmailService", + "domainName": "contoso.com", + "senderUsername": "contosoNewsAlerts", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/contosoResourceGroup/providers/Microsoft.Communication/EmailServices/contosoEmailService/Domains/contoso.com/senderUsernames", + "name": "contoso.com", + "type": "Microsoft.Communication/EmailServices/Domains/SenderUsernames", + "properties": { + "dataLocation": "United States", + "username": "contosoNewsAlerts", + "displayName": "Contoso News Alerts" + } + } + }, + "default": { + "body": { + "error": { + "code": "ResourceNotFound", + "message": "The requested resource was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/listByDomain.json b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/listByDomain.json new file mode 100644 index 000000000000..6f5f61f87266 --- /dev/null +++ b/specification/communication/resource-manager/Microsoft.Communication/preview/2023-03-01-preview/examples/senderUsernames/listByDomain.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "11112222-3333-4444-5555-666677778888", + "resourceGroupName": "contosoResourceGroup", + "emailServiceName": "contosoEmailService", + "domainName": "contoso.com", + "api-version": "2023-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/contosoResourceGroup/providers/Microsoft.Communication/EmailServices/contosoEmailService/Domains/contoso.com/senderUsernames/contosoNews", + "name": "contosoNews", + "type": "Microsoft.Communication/EmailServices/Domains/SenderUsernames", + "properties": { + "dataLocation": "United States", + "username": "contosoNews", + "displayName": "Contoso News" + } + }, + { + "id": "/subscriptions/11112222-3333-4444-5555-666677778888/resourceGroups/contosoResourceGroup/providers/Microsoft.Communication/EmailServices/contosoEmailService/Domains/contoso.com/senderUsernames/contosoAlerts", + "name": "contosoAlerts", + "type": "Microsoft.Communication/EmailServices/Domains/SenderUsernames", + "properties": { + "dataLocation": "United States", + "username": "contosoAlerts", + "displayName": "Contoso Alerts" + } + } + ] + } + }, + "default": { + "body": { + "error": { + "code": "ResourceNotFound", + "message": "The requested resource was not found" + } + } + } + } +} diff --git a/specification/communication/resource-manager/readme.md b/specification/communication/resource-manager/readme.md index 19d86324d7c1..dc5aedc79318 100644 --- a/specification/communication/resource-manager/readme.md +++ b/specification/communication/resource-manager/readme.md @@ -28,15 +28,26 @@ These are the global settings for the Azure Communication Services API. title: CommunicationServiceManagementClient openapi-type: arm openapi-subtype: rpaas -tag: package-preview-2022-07 +tag: package-preview-2023-03 ``` +### Tag: package-preview-2023-03 + +These settings apply only when `--tag=package-preview-2023-03` is specified on the command line. + +```yaml $(tag) == 'package-preview-2023-03' +input-file: + - Microsoft.Communication/preview/2023-03-01-preview/CommunicationServices.json + - Microsoft.Communication/preview/2023-03-01-preview/Domains.json + - Microsoft.Communication/preview/2023-03-01-preview/EmailServices.json + - Microsoft.Communication/preview/2023-03-01-preview/SenderUsernames.json +``` ### Tag: package-preview-2022-07 These settings apply only when `--tag=package-preview-2022-07` is specified on the command line. -```yaml $(tag) == 'package-preview-2022-07' +``` yaml $(tag) == 'package-preview-2022-07' input-file: - Microsoft.Communication/preview/2022-07-01-preview/CommunicationServices.json - Microsoft.Communication/preview/2022-07-01-preview/Domains.json @@ -47,7 +58,7 @@ input-file: These settings apply only when `--tag=package-2020-08-20` is specified on the command line. -```yaml $(tag) == 'package-2020-08-20' +``` yaml $(tag) == 'package-2020-08-20' input-file: - Microsoft.Communication/stable/2020-08-20/CommunicationService.json ``` @@ -56,7 +67,7 @@ input-file: These settings apply only when `--tag=package-2020-08-20-preview` is specified on the command line. -```yaml $(tag) == 'package-2020-08-20-preview' +``` yaml $(tag) == 'package-2020-08-20-preview' input-file: - Microsoft.Communication/preview/2020-08-20-preview/CommunicationService.json ``` @@ -65,7 +76,7 @@ input-file: These settings apply only when `--tag=package-2021-10-01-preview` is specified on the command line. -```yaml $(tag) == 'package-2021-10-01-preview' +``` yaml $(tag) == 'package-2021-10-01-preview' input-file: - Microsoft.Communication/preview/2021-10-01-preview/CommunicationServices.json - Microsoft.Communication/preview/2021-10-01-preview/Domains.json