---
title: "Create a Peering"
method: POST
path: "/networking/v1/peerings"
tags: ["Peerings (networking/v1)"]
---

# Create a Peering

`POST /networking/v1/peerings`

[![General Availability](https://img.shields.io/badge/Lifecycle%20Stage-General%20Availability-%2345c6e8)](#section/Versioning/API-Lifecycle-Policy)

Make a request to create a peering.

## Request body

- object — Add or remove VPC/VNet peering connections between your VPC/VNet and Confluent Cloud. Related guides: * [Use VPC peering connections with Confluent Cloud on AWS](https://docs.confluent.io/cloud/current/networking/peering/aws-peering.html). * [Use VNet peering connections with Confluent Cloud on Azure](https://docs.confluent.io/cloud/current/networking/peering/azure-peering.html). * [Use VPC peering connections with Confluent Cloud on Google Cloud](https://docs.confluent.io/cloud/current/networking/peering/gcp-peering.html). ## The Peerings Model <SchemaDefinition schemaRef="#/components/schemas/networking.v1.Peering" /> ## Quotas and Limits This resource is subject to the [following quotas](https://docs.confluent.io/cloud/current/quotas/overview.html): | Quota | Description | | --- | --- | | `peerings_per_network` | Number of peerings per network |
  - `api_version` 'networking/v1' — APIVersion defines the schema version of this representation of a resource.
  - `kind` 'Peering' — Kind defines the object this REST resource represents.
  - `id` string — ID is the "natural identifier" for an object within its scope/namespace; it is normally unique across time but not space. That is, you can assume that the ID will not be reclaimed and reused after an object is deleted ("time"); however, it may collide with IDs for other object `kinds` or objects of the same `kind` within a different scope/namespace ("space").
  - `metadata` object — ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
    - `self` string, uri, required — Self is a Uniform Resource Locator (URL) at which an object can be addressed. This URL encodes the service location, API version, and other particulars necessary to locate the resource at a point in time
    - `resource_name` string, uri — Resource Name is a Uniform Resource Identifier (URI) that is globally unique across space and time. It is represented as a Confluent Resource Name
    - `created_at` string, date-time — The date and time at which this object was created. It is represented in RFC3339 format and is in UTC.
    - `updated_at` string, date-time — The date and time at which this object was last updated. It is represented in RFC3339 format and is in UTC.
    - `deleted_at` string, date-time — The date and time at which this object was (or will be) deleted. It is represented in RFC3339 format and is in UTC.
  - `spec` object, required — The desired state of the Peering
    - `display_name` string — The name of the peering
    - `cloud` union, required — The cloud-specific peering details.
      - object — AWS VPC Peering.
        - `kind` 'AwsPeering', required — Peering kind type.
        - `account` string, required — The AWS account ID associated with the VPC you are peering with Confluent Cloud network.
        - `vpc` string, required — The VPC ID you are peering with Confluent Cloud network.
        - `routes` NetworkingV1Cidr[], required — The [CIDR blocks](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) of the VPC you are peering with Confluent Cloud network. This is used by Confluent Cloud network to route traffic back to your network. The CIDR block must be a private range and cannot overlap with the Confluent Cloud CIDR block.
        - `customer_region` string, required — The region of the VPC you are peering with Confluent Cloud network.
      - object — GCP VPC Peering.
        - `kind` 'GcpPeering', required — Peering kind type.
        - `project` string, required — The Google Cloud project ID associated with the VPC that you are peering with Confluent Cloud network.
        - `vpc_network` string, required — The name of the VPC that you are peering with Confluent Cloud network.
        - `import_custom_routes` boolean — Enable customer route import. For more information, see [Importing custom routes](https://cloud.google.com/vpc/docs/vpc-peering#importing-exporting-routes).
      - object — Azure VNet Peering.
        - `kind` 'AzurePeering', required — Peering kind type.
        - `tenant` string, required — The Azure Tenant ID in which your Azure Subscription exists. Represents an organization in Azure Active Directory. You can find your Azure Tenant ID in the Azure Portal under [Azure Active Directory](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview). Must be a valid **32 character UUID string**.
        - `vnet` string, required — The resource ID of the VNet that you are peering with Confluent Cloud. You can find the name of your Azure VNet in the [Azure Portal on the Overview tab of your Azure Virtual Network](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Network%2FvirtualNetworks).
        - `customer_region` string, required — The region of the VNet you are peering with Confluent Cloud network.
    - `environment` object, required — The environment to which this belongs.
      - `id` string, required — ID of the referred resource
      - `environment` string — Environment of the referred resource, if env-scoped
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
      - `api_version` string — API group and version of the referred resource
      - `kind` string — Kind of the referred resource
    - `network` object, required — The network to which this belongs.
      - `id` string, required — ID of the referred resource
      - `environment` string — Environment of the referred resource, if env-scoped
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
      - `api_version` string — API group and version of the referred resource
      - `kind` string — Kind of the referred resource
  - `status` NetworkingV1PeeringStatus — The status of the Peering
    - `phase` string, required — The lifecycle phase of the peering: PROVISIONING: peering provisioning is in progress; PENDING_ACCEPT: peering connection request is pending acceptance by the customer; READY: peering is ready; FAILED: peering is in a failed state; DEPROVISIONING: peering deprovisioning is in progress; DISCONNECTED: peering has been disconnected in the cloud provider by the customer;
    - `error_code` string — Error code if peering is in a failed state. May be used for programmatic error checking.
    - `error_message` string — Displayable error message if peering is in a failed state

## Response `202`

A Peering is being created.

- object — Add or remove VPC/VNet peering connections between your VPC/VNet and Confluent Cloud. Related guides: * [Use VPC peering connections with Confluent Cloud on AWS](https://docs.confluent.io/cloud/current/networking/peering/aws-peering.html). * [Use VNet peering connections with Confluent Cloud on Azure](https://docs.confluent.io/cloud/current/networking/peering/azure-peering.html). * [Use VPC peering connections with Confluent Cloud on Google Cloud](https://docs.confluent.io/cloud/current/networking/peering/gcp-peering.html). ## The Peerings Model <SchemaDefinition schemaRef="#/components/schemas/networking.v1.Peering" /> ## Quotas and Limits This resource is subject to the [following quotas](https://docs.confluent.io/cloud/current/quotas/overview.html): | Quota | Description | | --- | --- | | `peerings_per_network` | Number of peerings per network |
  - `api_version` 'networking/v1' — APIVersion defines the schema version of this representation of a resource.
  - `kind` 'Peering' — Kind defines the object this REST resource represents.
  - `id` string — ID is the "natural identifier" for an object within its scope/namespace; it is normally unique across time but not space. That is, you can assume that the ID will not be reclaimed and reused after an object is deleted ("time"); however, it may collide with IDs for other object `kinds` or objects of the same `kind` within a different scope/namespace ("space").
  - `metadata` object — ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
    - `self` string, uri, required — Self is a Uniform Resource Locator (URL) at which an object can be addressed. This URL encodes the service location, API version, and other particulars necessary to locate the resource at a point in time
    - `resource_name` string, uri — Resource Name is a Uniform Resource Identifier (URI) that is globally unique across space and time. It is represented as a Confluent Resource Name
    - `created_at` string, date-time — The date and time at which this object was created. It is represented in RFC3339 format and is in UTC.
    - `updated_at` string, date-time — The date and time at which this object was last updated. It is represented in RFC3339 format and is in UTC.
    - `deleted_at` string, date-time — The date and time at which this object was (or will be) deleted. It is represented in RFC3339 format and is in UTC.
  - `spec` object, required — The desired state of the Peering
    - `display_name` string — The name of the peering
    - `cloud` union, required — The cloud-specific peering details.
      - object — AWS VPC Peering.
        - `kind` 'AwsPeering', required — Peering kind type.
        - `account` string, required — The AWS account ID associated with the VPC you are peering with Confluent Cloud network.
        - `vpc` string, required — The VPC ID you are peering with Confluent Cloud network.
        - `routes` NetworkingV1Cidr[], required — The [CIDR blocks](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) of the VPC you are peering with Confluent Cloud network. This is used by Confluent Cloud network to route traffic back to your network. The CIDR block must be a private range and cannot overlap with the Confluent Cloud CIDR block.
        - `customer_region` string, required — The region of the VPC you are peering with Confluent Cloud network.
      - object — GCP VPC Peering.
        - `kind` 'GcpPeering', required — Peering kind type.
        - `project` string, required — The Google Cloud project ID associated with the VPC that you are peering with Confluent Cloud network.
        - `vpc_network` string, required — The name of the VPC that you are peering with Confluent Cloud network.
        - `import_custom_routes` boolean — Enable customer route import. For more information, see [Importing custom routes](https://cloud.google.com/vpc/docs/vpc-peering#importing-exporting-routes).
      - object — Azure VNet Peering.
        - `kind` 'AzurePeering', required — Peering kind type.
        - `tenant` string, required — The Azure Tenant ID in which your Azure Subscription exists. Represents an organization in Azure Active Directory. You can find your Azure Tenant ID in the Azure Portal under [Azure Active Directory](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview). Must be a valid **32 character UUID string**.
        - `vnet` string, required — The resource ID of the VNet that you are peering with Confluent Cloud. You can find the name of your Azure VNet in the [Azure Portal on the Overview tab of your Azure Virtual Network](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Network%2FvirtualNetworks).
        - `customer_region` string, required — The region of the VNet you are peering with Confluent Cloud network.
    - `environment` object, required — The environment to which this belongs.
      - `id` string, required — ID of the referred resource
      - `environment` string — Environment of the referred resource, if env-scoped
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
      - `api_version` string — API group and version of the referred resource
      - `kind` string — Kind of the referred resource
    - `network` object, required — The network to which this belongs.
      - `id` string, required — ID of the referred resource
      - `environment` string — Environment of the referred resource, if env-scoped
      - `related` string, uri, required — API URL for accessing or modifying the referred object
      - `resource_name` string, uri, required — CRN reference to the referred resource
      - `api_version` string — API group and version of the referred resource
      - `kind` string — Kind of the referred resource
  - `status` NetworkingV1PeeringStatus, required — The status of the Peering
    - `phase` string, required — The lifecycle phase of the peering: PROVISIONING: peering provisioning is in progress; PENDING_ACCEPT: peering connection request is pending acceptance by the customer; READY: peering is ready; FAILED: peering is in a failed state; DEPROVISIONING: peering deprovisioning is in progress; DISCONNECTED: peering has been disconnected in the cloud provider by the customer;
    - `error_code` string — Error code if peering is in a failed state. May be used for programmatic error checking.
    - `error_message` string — Displayable error message if peering is in a failed state

## Other responses

- `400` — Bad Request
- `401` — The request lacks valid authentication credentials for this resource.
- `402` — The request would exceed one or more quotas.
- `403` — The access credentials were considered insufficient to grant access
- `409` — The request is in conflict with the current server state
- `422` — Validation Failed
- `429` — Rate Limit Exceeded
- `500` — Oops, something went wrong!

---

[API](https://skmtc.dev/confluent/apis/confluent-cloud-apis.md) · [All operations](https://skmtc.dev/confluent/apis/confluent-cloud-apis/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/confluent/confluent-cloud-apis/revisions/a6a73f98a698/schema)
