Sync Groups - Create Or Update

Creates or updates a sync group.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/syncGroups/{syncGroupName}?api-version=2021-11-01

URI Parameters

Name In Required Type Description
databaseName
path True

string

The name of the database on which the sync group is hosted.

resourceGroupName
path True

string

The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.

serverName
path True

string

The name of the server.

subscriptionId
path True

string

The subscription ID that identifies an Azure subscription.

syncGroupName
path True

string

The name of the sync group.

api-version
query True

string

The API version to use for the request.

Request Body

Name Type Description
properties.conflictLoggingRetentionInDays

integer

Conflict logging retention period.

properties.conflictResolutionPolicy

SyncConflictResolutionPolicy

Conflict resolution policy of the sync group.

properties.enableConflictLogging

boolean

If conflict logging is enabled.

properties.hubDatabasePassword

string

Password for the sync group hub database credential.

properties.hubDatabaseUserName

string

User name for the sync group hub database credential.

properties.interval

integer

Sync interval of the sync group.

properties.schema

SyncGroupSchema

Sync schema of the sync group.

properties.syncDatabaseId

string

ARM resource id of the sync database in the sync group.

properties.usePrivateLinkConnection

boolean

If use private link connection is enabled.

sku

Sku

The name and capacity of the SKU.

Responses

Name Type Description
200 OK

SyncGroup

Successfully updated the sync group.

201 Created

SyncGroup

Successfully created the sync group.

202 Accepted

Creating or updating the sync group is in progress.

Other Status Codes

*** Error Responses: ***

  • 400 InvalidSyncGroupCreateOrUpdateRequest - The create or update sync group request body is empty.

  • 400 InvalidSyncMemberCreateOrUpdateRequest - The create or update sync member request body is empty.

  • 400 InvalidSyncAgentCreateOrUpdateRequest - The create or update sync agent request body is empty.

  • 400 InvalidDatabaseResourceId - Invalid database resource identifier.

  • 400 MismatchingSubscriptionWithUrl - The provided subscription did not match the subscription in the Url.

  • 400 InvalidSyncAgentResourceId - Invalid sync agent resource identifier.

  • 400 MismatchingResourceGroupNameWithUrl - The provided resource group name did not match the name in the Url.

  • 400 MismatchingServerNameWithUrl - The provided server name did not match the name in the Url.

  • 400 InvalidParameterValue - An invalid value was given to a parameter.

  • 400 MissingServerName - The Server name is missing

  • 400 MissingDatabaseName - The Database name is missing

  • 400 MissingSyncGroupName - The Sync Group name is missing

  • 400 MissingConflictResolutionPolicy - The Conflict Resolution Policy is missing

  • 400 MissingSyncAgentName - The Sync Agent name is missing

  • 400 SyncOperation_GenericFailure - Failed to perform data sync operation.

  • 400 InvalidSyncGroup - Sync group is invalid.

  • 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.

  • 400 CannotCreateSyncGroupDueToQuotaExceeded - Cannot create sync group due to quota exceeded.

  • 400 SyncOperation_DuplicateSyncGroupDrop - The sync group is already being dropped.

  • 400 SyncOperation_WrongSyncDatabase - The sync database specified does not match the existing one.

  • 400 SyncOperation_UpdateSyncGroupWhenDropping - Cannot update the sync group because it is currently being dropped.

  • 400 SyncOperation_DwInSyncGroup - Cannot use datawarehouse edition in data sync.

  • 400 SyncOperation_MasterDbInSyncGroup - Cannot use logical master in data sync.

  • 400 SyncOperation_InvalidCredential - Credential of database is invalid.

  • 400 InvalidSyncMetadataDatabase - Sync metadata database is invalid.

  • 400 SyncOperation_InvalidSyncInterval - Cannot create or update sync group because the sync interval is invalid.

  • 404 ResourceNotFound - The requested resource was not found.

  • 404 SubscriptionDoesNotHaveServer - The requested server was not found

  • 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.

  • 404 SyncOperation_HubServerNotFound - Hub logical server does not exist.

  • 404 SyncOperation_InvalidHubDatabase - Hub database is invalid.

  • 404 OperationIdNotFound - The operation with Id does not exist.

  • 409 SyncOperation_DuplicateSyncGroupName - Cannot create sync group because the sync group with the same name already exists.

  • 409 OperationCancelled - The operation has been cancelled by user.

  • 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.

  • 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.

  • 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.

  • 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.

  • 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.

Examples

Create a sync group
Update a sync group

Create a sync group

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187?api-version=2021-11-01

{
  "properties": {
    "interval": -1,
    "conflictResolutionPolicy": "HubWin",
    "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328",
    "hubDatabaseUserName": "hubUser",
    "usePrivateLinkConnection": true
  }
}

Sample Response

{
  "properties": {
    "interval": -1,
    "lastSyncTime": "0001-01-01T08:00:00Z",
    "conflictResolutionPolicy": "HubWin",
    "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328",
    "hubDatabaseUserName": "hubUser",
    "syncState": "NotReady",
    "usePrivateLinkConnection": true,
    "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-8475"
  },
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187",
  "name": "syncgroupcrud-3187",
  "type": "Microsoft.Sql/servers/databases/syncGroups"
}
{
  "properties": {
    "interval": -1,
    "lastSyncTime": "0001-01-01T08:00:00Z",
    "conflictResolutionPolicy": "HubWin",
    "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328",
    "hubDatabaseUserName": "hubUser",
    "syncState": "NotReady",
    "usePrivateLinkConnection": true,
    "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-8475"
  },
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187",
  "name": "syncgroupcrud-3187",
  "type": "Microsoft.Sql/servers/databases/syncGroups"
}

Update a sync group

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-65440/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187?api-version=2021-11-01

{
  "properties": {
    "interval": -1,
    "conflictResolutionPolicy": "HubWin",
    "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328",
    "hubDatabaseUserName": "hubUser",
    "usePrivateLinkConnection": true
  }
}

Sample Response

{
  "properties": {
    "interval": -1,
    "lastSyncTime": "0001-01-01T08:00:00Z",
    "conflictResolutionPolicy": "HubWin",
    "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328",
    "hubDatabaseUserName": "hubUser",
    "syncState": "NotReady",
    "usePrivateLinkConnection": true,
    "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187"
  },
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187",
  "name": "syncgroupcrud-3187",
  "type": "Microsoft.Sql/servers/databases/syncGroups"
}
{
  "properties": {
    "interval": -1,
    "lastSyncTime": "0001-01-01T08:00:00Z",
    "conflictResolutionPolicy": "HubWin",
    "syncDatabaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328",
    "hubDatabaseUserName": "hubUser",
    "syncState": "NotReady",
    "usePrivateLinkConnection": true,
    "privateEndpointName": "PE_67FDBBD6-B2D8-4014-9CC6-C68ABBCFD481_syncgroupcrud-3187"
  },
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/syncgroupcrud-3521/providers/Microsoft.Sql/servers/syncgroupcrud-8475/databases/syncgroupcrud-4328/syncGroups/syncgroupcrud-3187",
  "name": "syncgroupcrud-3187",
  "type": "Microsoft.Sql/servers/databases/syncGroups"
}

Definitions

Name Description
Sku

An ARM Resource SKU.

SyncConflictResolutionPolicy

Conflict resolution policy of the sync group.

SyncGroup

An Azure SQL Database sync group.

SyncGroupSchema

Properties of sync group schema.

SyncGroupSchemaTable

Properties of table in sync group schema.

SyncGroupSchemaTableColumn

Properties of column in sync group table.

SyncGroupState

Sync state of the sync group.

Sku

An ARM Resource SKU.

Name Type Description
capacity

integer

Capacity of the particular SKU.

family

string

If the service has different generations of hardware, for the same SKU, then that can be captured here.

name

string

The name of the SKU, typically, a letter + Number code, e.g. P3.

size

string

Size of the particular SKU

tier

string

The tier or edition of the particular SKU, e.g. Basic, Premium.

SyncConflictResolutionPolicy

Conflict resolution policy of the sync group.

Name Type Description
HubWin

string

MemberWin

string

SyncGroup

An Azure SQL Database sync group.

Name Type Description
id

string

Resource ID.

name

string

Resource name.

properties.conflictLoggingRetentionInDays

integer

Conflict logging retention period.

properties.conflictResolutionPolicy

SyncConflictResolutionPolicy

Conflict resolution policy of the sync group.

properties.enableConflictLogging

boolean

If conflict logging is enabled.

properties.hubDatabasePassword

string

Password for the sync group hub database credential.

properties.hubDatabaseUserName

string

User name for the sync group hub database credential.

properties.interval

integer

Sync interval of the sync group.

properties.lastSyncTime

string

Last sync time of the sync group.

properties.privateEndpointName

string

Private endpoint name of the sync group if use private link connection is enabled.

properties.schema

SyncGroupSchema

Sync schema of the sync group.

properties.syncDatabaseId

string

ARM resource id of the sync database in the sync group.

properties.syncState

SyncGroupState

Sync state of the sync group.

properties.usePrivateLinkConnection

boolean

If use private link connection is enabled.

sku

Sku

The name and capacity of the SKU.

type

string

Resource type.

SyncGroupSchema

Properties of sync group schema.

Name Type Description
masterSyncMemberName

string

Name of master sync member where the schema is from.

tables

SyncGroupSchemaTable[]

List of tables in sync group schema.

SyncGroupSchemaTable

Properties of table in sync group schema.

Name Type Description
columns

SyncGroupSchemaTableColumn[]

List of columns in sync group schema.

quotedName

string

Quoted name of sync group schema table.

SyncGroupSchemaTableColumn

Properties of column in sync group table.

Name Type Description
dataSize

string

Data size of the column.

dataType

string

Data type of the column.

quotedName

string

Quoted name of sync group table column.

SyncGroupState

Sync state of the sync group.

Name Type Description
Error

string

Good

string

NotReady

string

Progressing

string

Warning

string