Job Agents - Create Or Update

Creates or updates a job agent.

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

URI Parameters

Name In Required Type Description
jobAgentName
path True

string

The name of the job agent to be created or updated.

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.

api-version
query True

string

The API version to use for the request.

Request Body

Name Required Type Description
location True

string

Resource location.

properties.databaseId True

string

Resource ID of the database to store job metadata in.

sku

Sku

The name and tier of the SKU.

tags

object

Resource tags.

Responses

Name Type Description
200 OK

JobAgent

Successfully updated the job agent.

201 Created

JobAgent

Successfully created the job agent.

202 Accepted

Accepted

Other Status Codes

*** Error Responses: ***

  • 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.

  • 400 MissingSkuName - Sku name is required.

  • 400 InvalidDatabaseResourceId - Invalid database resource identifier.

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

  • 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 JobAgentDatabaseEditionUnsupported - The specified database's service level objective is not supported for use as a job agent database.

  • 400 JobAgentDatabaseSecondary - A job agent cannot be linked to a geo-secondary database.

  • 400 JobAgentDatabaseAlreadyLinked - The specified database is already linked to another job agent.

  • 400 DatabaseDoesNotExist - The requested database was not found

  • 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.

  • 400 JobAgentExceededQuota - Could not create job agent because it would exceed the quota.

  • 400 JobAgentAlreadyExists - The job agent already exists on the server.

  • 404 SubscriptionDoesNotHaveServer - The requested server was not found

  • 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.

  • 404 PropertyChangeUnsupported - Property cannot be modified.

  • 404 SubscriptionNotFound - The requested subscription was not found.

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

  • 409 ServerDisabled - Server is disabled.

  • 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 or update a job agent

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1?api-version=2021-11-01

{
  "location": "southeastasia",
  "properties": {
    "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1",
  "name": "agent1",
  "type": "Microsoft.Sql/servers/jobAgents",
  "location": "southeastasia",
  "sku": {
    "name": "Agent",
    "capacity": 100
  },
  "properties": {
    "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1"
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1",
  "name": "agent1",
  "type": "Microsoft.Sql/servers/jobAgents",
  "location": "southeastasia",
  "sku": {
    "name": "Agent",
    "capacity": 100
  },
  "properties": {
    "databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1"
  }
}

Definitions

Name Description
JobAgent

An Azure SQL job agent.

JobAgentState

The state of the job agent.

Sku

An ARM Resource SKU.

JobAgent

An Azure SQL job agent.

Name Type Description
id

string

Resource ID.

location

string

Resource location.

name

string

Resource name.

properties.databaseId

string

Resource ID of the database to store job metadata in.

properties.state

JobAgentState

The state of the job agent.

sku

Sku

The name and tier of the SKU.

tags

object

Resource tags.

type

string

Resource type.

JobAgentState

The state of the job agent.

Name Type Description
Creating

string

Deleting

string

Disabled

string

Ready

string

Updating

string

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.