Postgres Instances - Create
Creates or replaces a postgres Instance resource
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureArcData/postgresInstances/{postgresInstanceName}?api-version=2026-01-01
URI Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
|
postgres
|
path | True |
string |
Name of Postgres Instance |
|
resource
|
path | True |
string |
The name of the Azure resource group |
|
subscription
|
path | True |
string |
The ID of the Azure subscription |
|
api-version
|
query | True |
string |
The API version to use for the request |
Request Body
| Name | Required | Type | Description |
|---|---|---|---|
| location | True |
string |
The geo-location where the resource lives |
| properties | True |
null |
|
| extendedLocation |
The extendedLocation of the resource. |
||
| sku |
Resource sku. |
||
| tags |
object |
Resource tags. |
Responses
| Name | Type | Description |
|---|---|---|
| 200 OK |
OK |
|
| 201 Created |
Created |
|
| Other Status Codes |
*** Error Responses: *** |
Examples
Create or update a Postgres Instance.
Sample request
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.AzureArcData/postgresInstances/testpostgresInstance?api-version=2026-01-01
{
"location": "eastus",
"properties": {
"dataControllerId": "dataControllerId",
"admin": "admin",
"basicLoginInformation": {
"username": "username",
"password": "********"
},
"k8sRaw": {
"apiVersion": "apiVersion",
"kind": "postgresql-12",
"metadata": {
"creationTimestamp": "2020-08-25T14:55:10Z",
"generation": 1,
"name": "pg1",
"namespace": "test",
"resourceVersion": "527780",
"selfLink": "/apis/arcdata.microsoft.com/v1alpha1/namespaces/test/postgresql-12s/pg1",
"uid": "1111aaaa-ffff-ffff-ffff-99999aaaaaaa"
},
"spec": {
"backups": {
"deltaMinutes": 3,
"fullMinutes": 10,
"tiers": [
{
"retention": {
"maximums": [
"6",
"512MB"
],
"minimums": [
"3"
]
},
"storage": {
"volumeSize": "1Gi"
}
}
]
},
"engine": {
"extensions": [
{
"name": "citus"
}
]
},
"scale": {
"shards": 3
},
"scheduling": {
"default": {
"resources": {
"requests": {
"memory": "256Mi"
}
}
}
},
"service": {
"type": "NodePort"
},
"storage": {
"data": {
"className": "local-storage",
"size": "5Gi"
},
"logs": {
"className": "local-storage",
"size": "5Gi"
}
}
},
"status": {
"externalEndpoint": null,
"readyPods": "4/4",
"state": "Ready"
}
}
},
"extendedLocation": {
"type": "CustomLocation",
"name": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/arclocation"
},
"sku": {
"name": "default",
"tier": "Hyperscale",
"dev": true
}
}
Sample response
{
"properties": {
"basicLoginInformation": {
"username": "username"
}
},
"location": "northeurope",
"extendedLocation": {
"type": "CustomLocation",
"name": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/arclocation"
},
"systemData": {
"createdBy": "user1",
"createdByType": "User",
"createdAt": "2020-01-01T17:18:19.1234567Z",
"lastModifiedBy": "user2",
"lastModifiedByType": "User",
"lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
},
"tags": {
"mytag": "myval"
},
"sku": {
"name": "default",
"tier": "Hyperscale",
"dev": true
},
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.AzureArcData/PostgresInstance/testpostgresInstance",
"name": "testpostgresInstance",
"type": "Microsoft.AzureArcData/PostgresInstance"
}
{
"properties": {
"basicLoginInformation": {
"username": "username"
}
},
"location": "northeurope",
"extendedLocation": {
"type": "CustomLocation",
"name": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/arclocation"
},
"systemData": {
"createdBy": "user1",
"createdByType": "User",
"createdAt": "2020-01-01T17:18:19.1234567Z",
"lastModifiedBy": "user2",
"lastModifiedByType": "User",
"lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
},
"tags": {
"mytag": "myval"
},
"sku": {
"name": "default",
"tier": "Hyperscale",
"dev": true
},
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.AzureArcData/PostgresInstance/testpostgresInstance",
"name": "testsqlregistration",
"type": "Microsoft.AzureArcData/PostgresInstance"
}
Definitions
| Name | Description |
|---|---|
|
Basic |
Username and password for basic login authentication. |
|
created |
The type of identity that created the resource. |
|
Error |
The resource management error additional info. |
|
Error |
The error detail. |
|
Error |
Error response |
|
Extended |
The complex type of the extended location. |
|
Extended |
The type of the extended location. |
|
Postgres |
A Postgres Instance. |
|
Postgres |
Postgres Instance properties. |
|
Postgres |
The resource model definition representing SKU for Azure Database for PostgresSQL - Azure Arc |
|
Postgres |
This field is required to be implemented by the Resource Provider if the service has more than one tier. |
|
system |
Metadata pertaining to creation and last modification of the resource. |
BasicLoginInformation
Username and password for basic login authentication.
| Name | Type | Description |
|---|---|---|
| password |
string |
Login password. |
| username |
string |
Login username. |
createdByType
The type of identity that created the resource.
| Value | Description |
|---|---|
| User | |
| Application | |
| ManagedIdentity | |
| Key |
ErrorAdditionalInfo
The resource management error additional info.
| Name | Type | Description |
|---|---|---|
| info |
object |
The additional info. |
| type |
string |
The additional info type. |
ErrorDetail
The error detail.
| Name | Type | Description |
|---|---|---|
| additionalInfo |
The error additional info. |
|
| code |
string |
The error code. |
| details |
The error details. |
|
| message |
string |
The error message. |
| target |
string |
The error target. |
ErrorResponse
Error response
| Name | Type | Description |
|---|---|---|
| error |
The error object. |
ExtendedLocation
The complex type of the extended location.
| Name | Type | Description |
|---|---|---|
| name |
string |
The name of the extended location. |
| type |
The type of the extended location. |
ExtendedLocationTypes
The type of the extended location.
| Value | Description |
|---|---|
| CustomLocation |
PostgresInstance
A Postgres Instance.
| Name | Type | Description |
|---|---|---|
| extendedLocation |
The extendedLocation of the resource. |
|
| id |
string |
Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} |
| location |
string |
The geo-location where the resource lives |
| name |
string |
The name of the resource |
| properties |
null |
|
| sku |
Resource sku. |
|
| systemData |
Azure Resource Manager metadata containing createdBy and modifiedBy information. |
|
| tags |
object |
Resource tags. |
| type |
string |
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" |
PostgresInstanceProperties
Postgres Instance properties.
| Name | Type | Description |
|---|---|---|
| admin |
string |
The instance admin |
| basicLoginInformation |
Username and password for basic authentication. |
|
| dataControllerId |
string |
The data controller id |
| k8sRaw |
object |
The raw kubernetes information |
| lastUploadedDate |
string (date-time) |
Last uploaded date from Kubernetes cluster. Defaults to current date time |
| provisioningState |
string |
The provisioning state of the Azure Arc-enabled PostgreSQL instance. |
PostgresInstanceSku
The resource model definition representing SKU for Azure Database for PostgresSQL - Azure Arc
| Name | Type | Default value | Description |
|---|---|---|---|
| capacity |
integer (int32) |
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. |
|
| dev |
boolean |
True |
Whether dev/test is enabled. When the dev field is set to true, the resource is used for dev/test purpose. |
| 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. It is typically a letter+number code |
|
| size |
string |
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. |
|
| tier | Hyperscale |
This field is required to be implemented by the Resource Provider if the service has more than one tier. |
PostgresInstanceSkuTier
This field is required to be implemented by the Resource Provider if the service has more than one tier.
| Value | Description |
|---|---|
| Hyperscale |
systemData
Metadata pertaining to creation and last modification of the resource.
| Name | Type | Description |
|---|---|---|
| createdAt |
string (date-time) |
The timestamp of resource creation (UTC). |
| createdBy |
string |
The identity that created the resource. |
| createdByType |
The type of identity that created the resource. |
|
| lastModifiedAt |
string (date-time) |
The timestamp of resource last modification (UTC) |
| lastModifiedBy |
string |
The identity that last modified the resource. |
| lastModifiedByType |
The type of identity that last modified the resource. |