{ "swagger": "2.0", "info": { "version": "2015-05-01-preview", "title": "SqlManagementClient", "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." }, "host": "management.azure.com", "schemes": [ "https" ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "paths": { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/syncMembers/{syncMemberName}": { "get": { "tags": [ "SyncMembers" ], "description": "Gets a sync member.", "operationId": "SyncMembers_Get", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { "name": "databaseName", "in": "path", "description": "The name of the database on which the sync group is hosted.", "required": true, "type": "string" }, { "name": "syncGroupName", "in": "path", "description": "The name of the sync group on which the sync member is hosted.", "required": true, "type": "string" }, { "name": "syncMemberName", "in": "path", "description": "The name of the sync member.", "required": true, "type": "string" }, { "$ref": "#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Successfully retrieved the specified sync member.", "schema": { "$ref": "#/definitions/SyncMember" } }, "default": { "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded." } }, "x-ms-examples": { "Get a sync member": { "$ref": "./examples/SyncMemberGet.json" } } }, "put": { "tags": [ "SyncMembers" ], "description": "Creates or updates a sync member.", "operationId": "SyncMembers_CreateOrUpdate", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { "name": "databaseName", "in": "path", "description": "The name of the database on which the sync group is hosted.", "required": true, "type": "string" }, { "name": "syncGroupName", "in": "path", "description": "The name of the sync group on which the sync member is hosted.", "required": true, "type": "string" }, { "name": "syncMemberName", "in": "path", "description": "The name of the sync member.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "The requested sync member resource state.", "required": true, "schema": { "$ref": "#/definitions/SyncMember" } }, { "$ref": "#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Successfully updated the sync member.", "schema": { "$ref": "#/definitions/SyncMember" } }, "default": { "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded." }, "202": { "description": "Creating or updating the sync member is in progress." }, "201": { "description": "Successfully created the sync member.", "schema": { "$ref": "#/definitions/SyncMember" } } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Create a new sync member": { "$ref": "./examples/SyncMemberCreate.json" }, "Update a sync member": { "$ref": "./examples/SyncMemberUpdate.json" } } }, "delete": { "tags": [ "SyncMembers" ], "description": "Deletes a sync member.", "operationId": "SyncMembers_Delete", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { "name": "databaseName", "in": "path", "description": "The name of the database on which the sync group is hosted.", "required": true, "type": "string" }, { "name": "syncGroupName", "in": "path", "description": "The name of the sync group on which the sync member is hosted.", "required": true, "type": "string" }, { "name": "syncMemberName", "in": "path", "description": "The name of the sync member.", "required": true, "type": "string" }, { "$ref": "#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Successfully deleted the sync member." }, "default": { "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded." }, "202": { "description": "Deleting the sync member is in progress." }, "204": { "description": "The specified sync member does not exist." } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Delete a sync member": { "$ref": "./examples/SyncMemberDelete.json" } } }, "patch": { "tags": [ "SyncMembers" ], "description": "Updates an existing sync member.", "operationId": "SyncMembers_Update", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { "name": "databaseName", "in": "path", "description": "The name of the database on which the sync group is hosted.", "required": true, "type": "string" }, { "name": "syncGroupName", "in": "path", "description": "The name of the sync group on which the sync member is hosted.", "required": true, "type": "string" }, { "name": "syncMemberName", "in": "path", "description": "The name of the sync member.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "The requested sync member resource state.", "required": true, "schema": { "$ref": "#/definitions/SyncMember" } }, { "$ref": "#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Successfully updated the sync member.", "schema": { "$ref": "#/definitions/SyncMember" } }, "default": { "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded." }, "202": { "description": "Updating the sync member is in progress." } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Update an existing sync member": { "$ref": "./examples/SyncMemberPatch.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/syncMembers": { "get": { "tags": [ "SyncMembers" ], "description": "Lists sync members in the given sync group.", "operationId": "SyncMembers_ListBySyncGroup", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { "name": "databaseName", "in": "path", "description": "The name of the database on which the sync group is hosted.", "required": true, "type": "string" }, { "name": "syncGroupName", "in": "path", "description": "The name of the sync group.", "required": true, "type": "string" }, { "$ref": "#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Successfully retrieved the list of sync members.", "schema": { "$ref": "#/definitions/SyncMemberListResult" } }, "default": { "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded." } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "List sync members under a sync group": { "$ref": "./examples/SyncMemberListBySyncGroup.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/syncMembers/{syncMemberName}/schemas": { "get": { "tags": [ "SyncMembers" ], "description": "Gets a sync member database schema.", "operationId": "SyncMembers_ListMemberSchemas", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { "name": "databaseName", "in": "path", "description": "The name of the database on which the sync group is hosted.", "required": true, "type": "string" }, { "name": "syncGroupName", "in": "path", "description": "The name of the sync group on which the sync member is hosted.", "required": true, "type": "string" }, { "name": "syncMemberName", "in": "path", "description": "The name of the sync member.", "required": true, "type": "string" }, { "$ref": "#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Successfully get a sync member schema.", "schema": { "$ref": "#/definitions/SyncFullSchemaPropertiesListResult" } }, "default": { "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded." } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Get a sync member schema": { "$ref": "./examples/SyncMemberGetSchema.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}/syncMembers/{syncMemberName}/refreshSchema": { "post": { "tags": [ "SyncMembers" ], "description": "Refreshes a sync member database schema.", "operationId": "SyncMembers_RefreshMemberSchema", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { "name": "databaseName", "in": "path", "description": "The name of the database on which the sync group is hosted.", "required": true, "type": "string" }, { "name": "syncGroupName", "in": "path", "description": "The name of the sync group on which the sync member is hosted.", "required": true, "type": "string" }, { "name": "syncMemberName", "in": "path", "description": "The name of the sync member.", "required": true, "type": "string" }, { "$ref": "#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Successfully refreshed a sync member schema." }, "default": { "description": "*** Error Responses: ***\n\n * 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.\n\n * 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.\n\n * 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.\n\n * 400 InvalidDatabaseResourceId - Invalid database resource identifier.\n\n * 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.\n\n * 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.\n\n * 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.\n\n * 400 InvalidSyncGroup - Sync group is invalid.\n\n * 400 InvalidSyncMember - Sync member is invalid.\n\n * 400 InvalidSyncAgent - Sync agent is invalid.\n\n * 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 CannotCreateSyncMemberDueToQuotaExceeded - Cannot create sync member due to quota exceeded." }, "202": { "description": "The sync member schema refresh operation is on going." } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Refresh a sync member database schema": { "$ref": "./examples/SyncMemberRefreshSchema.json" } } } } }, "definitions": { "SyncMemberProperties": { "description": "Properties of a sync member.", "type": "object", "properties": { "databaseType": { "description": "Database type of the sync member.", "enum": [ "AzureSqlDatabase", "SqlServerDatabase" ], "type": "string", "x-ms-enum": { "name": "SyncMemberDbType", "modelAsString": true } }, "syncAgentId": { "description": "ARM resource id of the sync agent in the sync member.", "type": "string" }, "sqlServerDatabaseId": { "format": "uuid", "description": "SQL Server database id of the sync member.", "type": "string" }, "serverName": { "description": "Server name of the member database in the sync member", "type": "string" }, "databaseName": { "description": "Database name of the member database in the sync member.", "type": "string" }, "userName": { "description": "User name of the member database in the sync member.", "type": "string" }, "password": { "description": "Password of the member database in the sync member.", "type": "string", "x-ms-mutability": [ "create", "update" ] }, "syncDirection": { "description": "Sync direction of the sync member.", "enum": [ "Bidirectional", "OneWayMemberToHub", "OneWayHubToMember" ], "type": "string", "x-ms-enum": { "name": "SyncDirection", "modelAsString": true } }, "syncState": { "description": "Sync state of the sync member.", "enum": [ "SyncInProgress", "SyncSucceeded", "SyncFailed", "DisabledTombstoneCleanup", "DisabledBackupRestore", "SyncSucceededWithWarnings", "SyncCancelling", "SyncCancelled", "UnProvisioned", "Provisioning", "Provisioned", "ProvisionFailed", "DeProvisioning", "DeProvisioned", "DeProvisionFailed", "Reprovisioning", "ReprovisionFailed", "UnReprovisioned" ], "type": "string", "readOnly": true, "x-ms-enum": { "name": "SyncMemberState", "modelAsString": true } } } }, "SyncMember": { "description": "An Azure SQL Database sync member.", "type": "object", "allOf": [ { "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" } ], "properties": { "properties": { "$ref": "#/definitions/SyncMemberProperties", "description": "Resource properties.", "x-ms-client-flatten": true } } }, "SyncMemberListResult": { "description": "A list of Azure SQL Database sync members.", "type": "object", "properties": { "value": { "description": "Array of results.", "type": "array", "items": { "$ref": "#/definitions/SyncMember" }, "readOnly": true }, "nextLink": { "description": "Link to retrieve next page of results.", "type": "string", "readOnly": true } } }, "SyncFullSchemaPropertiesListResult": { "description": "A list of sync schema properties.", "type": "object", "properties": { "value": { "description": "Array of results.", "type": "array", "items": { "$ref": "#/definitions/SyncFullSchemaProperties" }, "readOnly": true }, "nextLink": { "description": "Link to retrieve next page of results.", "type": "string", "readOnly": true } } }, "SyncFullSchemaProperties": { "description": "Properties of the database full schema.", "type": "object", "properties": { "tables": { "description": "List of tables in the database full schema.", "type": "array", "items": { "$ref": "#/definitions/SyncFullSchemaTable" }, "readOnly": true }, "lastUpdateTime": { "format": "date-time", "description": "Last update time of the database schema.", "type": "string", "readOnly": true } } }, "SyncFullSchemaTable": { "description": "Properties of the table in the database full schema.", "type": "object", "properties": { "columns": { "description": "List of columns in the table of database full schema.", "type": "array", "items": { "$ref": "#/definitions/SyncFullSchemaTableColumn" }, "readOnly": true }, "errorId": { "description": "Error id of the table.", "type": "string", "readOnly": true }, "hasError": { "description": "If there is error in the table.", "type": "boolean", "readOnly": true }, "name": { "description": "Name of the table.", "type": "string", "readOnly": true }, "quotedName": { "description": "Quoted name of the table.", "type": "string", "readOnly": true } } }, "SyncFullSchemaTableColumn": { "description": "Properties of the column in the table of database full schema.", "type": "object", "properties": { "dataSize": { "description": "Data size of the column.", "type": "string", "readOnly": true }, "dataType": { "description": "Data type of the column.", "type": "string", "readOnly": true }, "errorId": { "description": "Error id of the column.", "type": "string", "readOnly": true }, "hasError": { "description": "If there is error in the table.", "type": "boolean", "readOnly": true }, "isPrimaryKey": { "description": "If it is the primary key of the table.", "type": "boolean", "readOnly": true }, "name": { "description": "Name of the column.", "type": "string", "readOnly": true }, "quotedName": { "description": "Quoted name of the column.", "type": "string", "readOnly": true } } } }, "parameters": { "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", "description": "The subscription ID that identifies an Azure subscription.", "required": true, "type": "string", "x-ms-parameter-location": "client" }, "ApiVersionParameter": { "name": "api-version", "in": "query", "description": "The API version to use for the request.", "required": true, "type": "string", "x-ms-parameter-location": "client" }, "ResourceGroupParameter": { "name": "resourceGroupName", "in": "path", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", "required": true, "type": "string", "x-ms-parameter-location": "method" }, "ServerNameParameter": { "name": "serverName", "in": "path", "description": "The name of the server.", "required": true, "type": "string", "x-ms-parameter-location": "method" }, "DatabaseNameParameter": { "name": "databaseName", "in": "path", "description": "The name of the database.", "required": true, "type": "string", "x-ms-parameter-location": "method" } }, "securityDefinitions": { "azure_auth": { "type": "oauth2", "description": "Azure Active Directory OAuth2 Flow", "flow": "implicit", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "scopes": { "user_impersonation": "impersonate your user account" } } } }