---
title: "PUT /public/console/v2/partner-zone"
method: PUT
path: "/public/console/v2/partner-zone"
tags: ["cli_partner-zone_console_v2_17"]
---

# PUT /public/console/v2/partner-zone

`PUT /public/console/v2/partner-zone`

## Request

- Base URL: `https://developers.conduktor.io` (the document declares no server; this is the origin it was published from)
- URL: `https://developers.conduktor.io/public/console/v2/partner-zone`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/conduktor/apis/conduktor-console-api/docs/public/console/v2/partner-zone/put.ts> (a function with typed inputs; its response is checked against the schema)

Create or update a PartnerZone

## Query parameters

- `dryMode` boolean

## Request body

- PartnerZoneResourceV2
  - `apiVersion` string, required
  - `kind` 'PartnerZone', required
  - `metadata` PartnerZoneMetadata, required
    - `name` string, required
    - `labels` MapLabelKeyString
  - `spec` PartnerZoneSpec, required
    - `cluster` string, required: The gateway cluster to use for this Partner Zone
    - `underlyingCluster` string: The underlying cluster behind gateway to use for this Partner Zone. If not provided, defaults to the value of the `cluster` field
    - `displayName` string
    - `description` string
    - `url` string
    - `authenticationMode` AuthenticationMode, required
      - `serviceAccount` string, required
      - `type` 'MTLS' | 'OAUTHBEARER' | 'PLAIN', required
    - `topics` PartnerZoneTopic[], required
      - `name` string, required
      - `backingTopic` string, required
      - `permission` 'READ' | 'WRITE', required
    - `partner` Partner
      - `name` string, required
      - `role` string
      - `email` string
      - `phone` string
    - `trafficControlPolicies` TrafficControlPolicies
      - `maxProduceRate` integer: produce rate in bytes per second
      - `maxConsumeRate` integer: consume rate in bytes per second
      - `limitCommitOffset` integer: commit attempts per minute
    - `headers` Headers
      - `addOnProduce` ToAdd[]
        - `key` string, required
        - `value` string, required
        - `overrideIfExists` boolean, required
      - `removeOnConsume` ToRemove[]
        - `keyRegex` string, required: Must be a valid java regular expression
    - `vclusterName` string: Custom virtual cluster name. If not provided, it will be auto-generated
    - `skipInterceptorReconciliation` boolean: When enabled, interceptors are created once during partner zone creation but skipped on subsequent reconciliations. Use with caution as enabling this flag could lead to issues with upgrading to future versions of Console

## Response `200`

- PartnerZoneApplyResultV2
  - `resource` PartnerZoneResourceV2, required
    - `apiVersion` string, required
    - `kind` 'PartnerZone', required
    - `metadata` PartnerZoneMetadata, required
      - `name` string, required
      - `labels` MapLabelKeyString
    - `spec` PartnerZoneSpec, required
      - `cluster` string, required: The gateway cluster to use for this Partner Zone
      - `underlyingCluster` string: The underlying cluster behind gateway to use for this Partner Zone. If not provided, defaults to the value of the `cluster` field
      - `displayName` string
      - `description` string
      - `url` string
      - `authenticationMode` AuthenticationMode, required
        - `serviceAccount` string, required
        - `type` 'MTLS' | 'OAUTHBEARER' | 'PLAIN', required
      - `topics` PartnerZoneTopic[], required
        - `name` string, required
        - `backingTopic` string, required
        - `permission` 'READ' | 'WRITE', required
      - `partner` Partner
        - `name` string, required
        - `role` string
        - `email` string
        - `phone` string
      - `trafficControlPolicies` TrafficControlPolicies
        - `maxProduceRate` integer: produce rate in bytes per second
        - `maxConsumeRate` integer: consume rate in bytes per second
        - `limitCommitOffset` integer: commit attempts per minute
      - `headers` Headers
        - `addOnProduce` ToAdd[]
          - `key` string, required
          - `value` string, required
          - `overrideIfExists` boolean, required
        - `removeOnConsume` ToRemove[]
          - `keyRegex` string, required: Must be a valid java regular expression
      - `vclusterName` string: Custom virtual cluster name. If not provided, it will be auto-generated
      - `skipInterceptorReconciliation` boolean: When enabled, interceptors are created once during partner zone creation but skipped on subsequent reconciliations. Use with caution as enabling this flag could lead to issues with upgrading to future versions of Console
  - `upsertResult` 'Created' | 'Updated' | 'NotChanged', required

## Other responses

- `400`: The request is not valid
- `401`: The user is not authenticated
- `403`: The user doesn't have sufficient privilege to do this operation
- `404`: No partner-zone with this technical id exists
- `409`: The request does not match one of the business rules
- `500`: An unexpected error occurred in the server

---

[API](https://skmtc.dev/conduktor/apis/conduktor-console-api.md) - [All operations](https://skmtc.dev/conduktor/apis/conduktor-console-api/llms.txt) - [OpenAPI document](https://skmtc.dev/conduktor/apis/conduktor-console-api/revisions/24750c294805?raw)
