Skip to main content
POST
/
organizations
/
{organizationId}
/
clusters
Create a cluster
curl --request POST \
  --url https://api.astronomer.io/platform/v1beta1/organizations/{organizationId}/clusters \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "cloudProvider": "AZURE",
  "name": "My cluster",
  "region": "us-east-1",
  "type": "DEDICATED",
  "vpcSubnetRange": "172.20.0.0/22",
  "dbInstanceType": "Small General Purpose",
  "drRegion": "us-west-2",
  "drSecondaryVpcCidr": "100.64.0.0/19",
  "drVpcSubnetRange": "172.20.0.0/22",
  "enableReplicationTimeControl": true,
  "k8sTags": [
    {
      "key": "key1",
      "value": "value1"
    }
  ],
  "nodePools": [
    {
      "maxNodeCount": 10,
      "name": "my-nodepool",
      "nodeInstanceType": "t3.medium",
      "isDefault": true
    }
  ],
  "providerAccount": "provider-account",
  "secondaryVpcCidr": "100.64.0.0/19",
  "workspaceIds": [
    "<string>"
  ]
}
'
{
  "cloudProvider": "AWS",
  "createdAt": "2022-11-22T04:37:12Z",
  "dbInstanceType": "db.t3.medium",
  "drRegion": "us-east-1",
  "id": "clm7k8tgw000008jz97i37y81",
  "isDrEnabled": true,
  "name": "my cluster",
  "organizationId": "clm88r8hi000008jwhzxu5crg",
  "region": "us-east-1",
  "status": "CREATED",
  "type": "DEDICATED",
  "updatedAt": "2022-11-22T04:37:12Z",
  "vpcSubnetRange": "172.20.0.0/22",
  "drPodSubnetRange": "172.21.0.0/19",
  "drSecondaryVpcCidr": "<string>",
  "drServicePeeringRange": "172.23.0.0/20",
  "drServiceSubnetRange": "172.22.0.0/22",
  "drVpcSubnetRange": "<string>",
  "enableReplicationTimeControl": true,
  "failoverInProgress": true,
  "healthStatus": {
    "value": "HEALTHY",
    "details": [
      {
        "code": "<string>",
        "description": "<string>",
        "severity": "<string>",
        "component": "<string>"
      }
    ]
  },
  "isFailedOver": true,
  "isLimited": false,
  "metadata": {
    "externalIPs": [
      "35.100.100.1"
    ],
    "kubeDnsIp": "10.100.100.0",
    "oidcIssuerUrl": "https://westus2.oic.prod-aks.azure.com/b84efac8-cfae-467a-b223-23b9aea1486d/3075f79e-abc2-4602-a691-28117197e83d/"
  },
  "nodePools": [
    {
      "cloudProvider": "AWS",
      "clusterId": "clm891jb6000308jrc3vjdtde",
      "createdAt": "2022-11-22T04:37:12Z",
      "id": "clm890zhe000208jr39dd0ubs",
      "isDefault": true,
      "maxNodeCount": 1,
      "name": "default",
      "nodeInstanceType": "t3.medium",
      "updatedAt": "2022-11-22T04:37:12Z",
      "supportedAstroMachines": [
        "A5",
        "A10"
      ]
    }
  ],
  "podSubnetRange": "172.21.0.0/19",
  "providerAccount": "provider-account",
  "secondaryVpcCidr": "<string>",
  "servicePeeringRange": "172.23.0.0/20",
  "serviceSubnetRange": "172.22.0.0/22",
  "tags": [
    {
      "key": "key1",
      "value": "value1"
    }
  ],
  "tenantId": "your-tenant-id",
  "workspaceIds": [
    "clm88rddl000108jwgeka2div"
  ]
}

Documentation Index

Fetch the complete documentation index at: https://astronomer-preview.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

organizationId
string
required

The ID of the Organization to create the cluster in.

Body

application/json

The request body for creating a cluster

cloudProvider
enum<string>
required

The cluster's cloud provider.

Available options:
AWS,
AZURE,
GCP
Example:

"AZURE"

name
string
required

The cluster's name.

Example:

"My cluster"

region
string
required

The cluster's region.

Example:

"us-east-1"

type
enum<string>
required

The cluster's type.

Available options:
DEDICATED,
HYBRID
Example:

"DEDICATED"

vpcSubnetRange
string
required

The VPC subnet range.

Example:

"172.20.0.0/22"

dbInstanceType
string

The type of database instance that is used for the cluster. Required for Hybrid clusters.

Example:

"Small General Purpose"

drRegion
string

The secondary region for Disaster Recovery.

Example:

"us-west-2"

drSecondaryVpcCidr
string

The secondary CIDR for the DR region. Defaults to the primary secondary CIDR if not specified. For AWS clusters only.

Example:

"100.64.0.0/19"

drVpcSubnetRange
string

The VPC subnet range for the DR region. Defaults to the primary VPC subnet range if not specified.

Example:

"172.20.0.0/22"

enableReplicationTimeControl
boolean

Whether Bucket Storage Replication Time Control should be enabled for DR on task logs.

k8sTags
object[]

The Kubernetes tags in the cluster.

nodePools
object[]

The list of node pools to create in the cluster.

providerAccount
string

The provider account ID. Required for Hybrid clusters.

Example:

"provider-account"

secondaryVpcCidr
string

Secondary CIDR for pod networking (size: /16 to /20). Recommended: use a /19 within the CGNAT range, eg 100.64.0.0/19. Must not overlap with existing or future VPC CIDRs for peering. For AWS clusters only.

Example:

"100.64.0.0/19"

workspaceIds
string[]

The list of Workspaces that are authorized to the cluster.

Response

OK

cloudProvider
enum<string>
required

The name of the cluster's cloud provider.

Available options:
AWS,
AZURE,
GCP
Example:

"AWS"

createdAt
string<date-time>
required

The time when the cluster was created in UTC. formatted as YYYY-MM-DDTHH:MM:SSZ.

Example:

"2022-11-22T04:37:12Z"

dbInstanceType
string
required

The type of database instance that is used for the cluster.

Example:

"db.t3.medium"

drRegion
string
required

The secondary region for Disaster Recovery for the cluster.

Example:

"us-east-1"

id
string
required

The cluster's ID.

Example:

"clm7k8tgw000008jz97i37y81"

isDrEnabled
boolean
required

Whether Disaster Recovery is enabled on the cluster

name
string
required

The cluster's name.

Example:

"my cluster"

organizationId
string
required

The ID of the Organization that the cluster belongs to.

Example:

"clm88r8hi000008jwhzxu5crg"

region
string
required

The region in which the cluster is created.

Example:

"us-east-1"

status
enum<string>
required

The status of the cluster.

Available options:
CREATING,
CREATED,
CREATE_FAILED,
UPDATE_FAILED,
UPDATING,
ACCESS_DENIED,
UPGRADE_PENDING,
FAILING_OVER,
FAILOVER_FAILED
Example:

"CREATED"

type
enum<string>
required

The type of the cluster.

Available options:
DEDICATED,
HYBRID
Example:

"DEDICATED"

updatedAt
string<date-time>
required

The time when the cluster was last updated in UTC. formatted as YYYY-MM-DDTHH:MM:SSZ.

Example:

"2022-11-22T04:37:12Z"

vpcSubnetRange
string
required

The VPC subnet range.

Example:

"172.20.0.0/22"

drPodSubnetRange
string

The disaster recovery subnet range for Pods. For GCP clusters only.

Example:

"172.21.0.0/19"

drSecondaryVpcCidr
string

The secondary CIDR for the DR region. For AWS clusters only.

drServicePeeringRange
string

The disaster recovery service peering range. For GCP clusters only.

Example:

"172.23.0.0/20"

drServiceSubnetRange
string

The disaster recovery service subnet range. For GCP clusters only.

Example:

"172.22.0.0/22"

drVpcSubnetRange
string

The VPC subnet range for the DR region.

enableReplicationTimeControl
boolean

Whether Bucket Storage Replication Time Control is enabled for DR.

failoverInProgress
boolean

Whether a failover is currently in progress.

healthStatus
object
isFailedOver
boolean

Whether the cluster is currently failed over to the DR region.

isLimited
boolean

Whether the cluster is limited.

Example:

false

metadata
object
nodePools
object[]

The list of node pools that are created in the cluster.

podSubnetRange
string

The subnet range for Pods. For GCP clusters only.

Example:

"172.21.0.0/19"

providerAccount
string

The provider account ID. For GCP clusters only.

Example:

"provider-account"

secondaryVpcCidr
string

The secondary VPC CIDR. For AWS clusters only.

servicePeeringRange
string

The service peering range. For GCP clusters only.

Example:

"172.23.0.0/20"

serviceSubnetRange
string

The service subnet range. For GCP clusters only.

Example:

"172.22.0.0/22"

tags
object[]

The Kubernetes tags in the cluster. For AWS Hybrid clusters only.

tenantId
string

The tenant ID. For Azure clusters only.

Example:

"your-tenant-id"

workspaceIds
string[]

The list of Workspaces that are authorized to the cluster.

Example:
["clm88rddl000108jwgeka2div"]