Create a Switchover Endpoint
POST/switchover/v1/switchover-endpoints
Make a request to create a switchover endpoint.
Request
Responses
- 202
- 400
- 401
- 403
- 409
- 422
- 429
- 500
A Switchover Endpoint is being created.
Response Headers
The unique identifier for the API request.
The maximum number of requests you're permitted to make per time period.
The number of requests remaining in the current rate limit window.
The relative time in seconds until the current rate-limit window resets.
Important: This differs from Github and Twitter's same-named header which uses UTC epoch seconds. We use relative time to avoid client/server time synchronization issues.
SwitchoverEndpoint resource uri
Bad Request
Response Headers
The unique identifier for the API request.
The request lacks valid authentication credentials for this resource.
Response Headers
The unique identifier for the API request.
The unique identifier for the API request.
Basic error="invalid_key", error_description="The API Key is invalid"The access credentials were considered insufficient to grant access
Response Headers
The unique identifier for the API request.
The request is in conflict with the current server state
Response Headers
The unique identifier for the API request.
Resource URI of conflicting resource
Validation Failed
Response Headers
The unique identifier for the API request.
Rate Limit Exceeded
Response Headers
The unique identifier for the API request.
The maximum number of requests you're permitted to make per time period.
The number of requests remaining in the current rate limit window.
The relative time in seconds until the current rate-limit window resets.
Important: This differs from Github and Twitter's same-named header which uses UTC epoch seconds. We use relative time to avoid client/server time synchronization issues.
The number of seconds to wait until the rate limit window resets. Only sent when the rate limit is reached.
Oops, something went wrong!
Response Headers
The unique identifier for the API request.
OpenAPI definition (YAML)
paths:
/switchover/v1/switchover-endpoints:
post:
x-lifecycle-stage: Early Access
x-self-access: false
x-request-access-name: Switchover API (Kafka Disaster Recovery)
operationId: createSwitchoverV1SwitchoverEndpoint
description: '[](#section/Versioning/API-Lifecycle-Policy)
[](mailto:ccloud-api-access+switchover-v1-early-access@confluent.io?subject=Request%20to%20join%20switchover/v1%20API%20Early%20Access&body=I%E2%80%99d%20like%20to%20join%20the%20Confluent%20Cloud%20API%20Early%20Access%20for%20switchover/v1%20to%20provide%20early%20feedback%21%20My%20Cloud%20Organization%20ID%20is%20%3Cretrieve%20from%20https%3A//confluent.cloud/settings/billing/payment%3E.)
Make a request to create a switchover endpoint.'
tags:
- Switchover Endpoints (switchover/v1)
security:
- cloud-api-key: []
- global-api-key: []
requestBody:
content:
application/json:
schema:
allOf:
- type: object
description: '`SwitchoverEndpoint` represents the endpoint-level Disaster Recovery configuration
for a
`SwitchoverPair`. It exposes a sticky DR bootstrap endpoint that clients connect to
so they
never need to update their bootstrap endpoint after a failover; that bootstrap endpoint
is
not part of this resource''s API representation (ORC-10133) and is obtained separately.
For
stateful pairs, the active endpoint follows the pair''s active member.
The API allows you to list, create, read, update, and delete switchover endpoints.
Related guide: [Disaster Recovery for Kafka in Confluent Cloud](https://docs.confluent.io/cloud/current/clusters/cluster-linking/index.html).
'
properties:
metadata:
allOf:
- description: ObjectMeta is metadata that all persisted resources must have, which
includes all objects users must create.
properties: {}
readOnly: true
title: ObjectMeta
- properties:
self:
example: https://api.confluent.cloud/switchover/v1/switchover-endpoints/se-12345
resource_name:
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/switchover-endpoint=se-12345
spec:
type: object
description: The desired state of the Switchover Endpoint
properties:
parent_resource_crn:
type: string
format: uri
pattern: ^crn://confluent\.cloud/organization=[^/]+/environment=[^/]+/switchover-pair=.+$
description: 'The CRN of the switchover pair this endpoint is bound to. Must name
the same environment as
`environment_crn`: the pair is looked up in that scope, so a mismatch would
report a
confusing not-found rather than the inconsistency the caller introduced.
'
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/switchover-pair=sw-00000
display_name:
type: string
description: A human-readable name for the switchover endpoint.
example: prod-kafka-dr-endpoint
maxLength: 256
endpoints:
type: array
description: 'The endpoint definitions, one per side (e.g. west/east). Must contain
exactly 2 entries.
'
minItems: 2
maxItems: 2
items:
type: object
description: Configuration for a single endpoint side of a `SwitchoverEndpoint`.
required:
- name
- endpoint_filter
properties:
name:
type: string
description: A logical name for this endpoint side (e.g. "west-platt"),
unique within the resource.
example: west-platt
endpoint_filter:
allOf:
- type: object
description: 'The client-supplied criteria that select which network endpoint
to use for this side of the
switchover pair. This filter is the only part of an endpoint side the
caller provides; the
resolved endpoint details on the parent `EndpointConfig` — `hostname`,
`cloud`, `region`, and
`connection_type` — are derived server-side from the selected network
(or access point) and the
`SwitchoverPair` member, not supplied here (ORC-10125).
Set `type` to `public` or `private`. A `private` endpoint sets exactly
one of `network_crn` or
`access_point_crn`; each independently resolves a unique endpoint, so
a second selector is never
needed and could only disagree with the first. A `public` endpoint sets
neither.
There is deliberately no environment field: the environment is always
recoverable without one —
from `network_crn` or `access_point_crn` on a private entry, and from
the switchover endpoint''s
own `environment_crn` on a public entry. Carrying it here too would
only duplicate that fact and
let a caller name an environment that disagrees with the CRN beside
it.
'
required:
- type
properties:
type:
type: string
description: Whether the endpoint is private or public.
example: private
enum:
- private
- public
network_crn:
type: string
format: uri
pattern: ^crn://confluent\.cloud/organization=[^/]+/environment=[^/]+/network=.+$
description: 'CRN of the network to resolve this endpoint against.
A private endpoint sets exactly one
of this or `access_point_crn` — each independently resolves a unique
endpoint, so a
second selector is never needed and could only disagree with the
first. A public
endpoint sets neither.
'
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/network=n-abc123
access_point_crn:
type: string
format: uri
pattern: ^crn://confluent\.cloud/organization=[^/]+/environment=[^/]+/gateway=[^/]+/access-point=.+$
description: 'CRN of the network access point, for access-point (PNI)
endpoints — the alternative to
`network_crn`; a private endpoint sets exactly one of the two. The
`gateway` segment is
part of the registered canonical form and is required.
'
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/gateway=gw-456xyz/access-point=ap-west-xyz
title: switchover.v1.EndpointFilter
title: switchover.v1.EndpointConfig
x-enable-id: true
x-enable-listmeta: true
x-enable-objectmeta: true
title: switchover.v1.SwitchoverEndpointSpec
title: switchover.v1.SwitchoverEndpoint
- type: object
required:
- spec
properties:
spec:
type: object
required:
- parent_resource_crn
- display_name
- endpoints
responses:
'202':
description: A Switchover Endpoint is being created.
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
X-RateLimit-Limit:
schema:
type: integer
description: The maximum number of requests you're permitted to make per time period.
X-RateLimit-Remaining:
schema:
type: integer
description: The number of requests remaining in the current rate limit window.
X-RateLimit-Reset:
schema:
type: integer
description: "The relative time in seconds until the current rate-limit window resets. \
\ \n \n**Important:** This differs from Github and Twitter's same-named header which\
\ uses UTC epoch seconds. We use relative time to avoid client/server time synchronization\
\ issues."
Location:
schema:
type: string
format: uri
example: https://api.confluent.cloud/switchover/v1/switchover-endpoints/{id}
description: SwitchoverEndpoint resource uri
content:
application/json:
schema:
allOf:
- type: object
description: '`SwitchoverEndpoint` represents the endpoint-level Disaster Recovery configuration
for a
`SwitchoverPair`. It exposes a sticky DR bootstrap endpoint that clients connect to
so they
never need to update their bootstrap endpoint after a failover; that bootstrap endpoint
is
not part of this resource''s API representation (ORC-10133) and is obtained separately.
For
stateful pairs, the active endpoint follows the pair''s active member.
The API allows you to list, create, read, update, and delete switchover endpoints.
Related guide: [Disaster Recovery for Kafka in Confluent Cloud](https://docs.confluent.io/cloud/current/clusters/cluster-linking/index.html).
'
properties:
api_version:
type: string
enum:
- switchover/v1
description: APIVersion defines the schema version of this representation of a resource.
readOnly: true
kind:
type: string
description: Kind defines the object this REST resource represents.
readOnly: true
enum:
- SwitchoverEndpoint
id:
description: 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").
type: string
maxLength: 255
readOnly: true
example: dlz-f3a90de
metadata:
allOf:
- description: ObjectMeta is metadata that all persisted resources must have, which
includes all objects users must create.
required:
- self
properties:
self:
description: 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
type: string
format: uri
readOnly: true
example: https://api.confluent.cloud/v2/kafka-clusters/lkc-f3a90de
resource_name:
description: Resource Name is a Uniform Resource Identifier (URI) that is
globally unique across space and time. It is represented as a Confluent
Resource Name
type: string
format: uri
readOnly: true
example: crn://confluent.cloud/kafka=lkc-f3a90de
created_at:
type: string
format: date-time
example: '2006-01-02T15:04:05-07:00'
readOnly: true
description: The date and time at which this object was created. It is represented
in RFC3339 format and is in UTC.
updated_at:
type: string
format: date-time
example: '2006-01-02T15:04:05-07:00'
readOnly: true
description: The date and time at which this object was last updated. It is
represented in RFC3339 format and is in UTC.
deleted_at:
type: string
format: date-time
example: '2006-01-02T15:04:05-07:00'
readOnly: true
description: The date and time at which this object was (or will be) deleted.
It is represented in RFC3339 format and is in UTC.
readOnly: true
title: ObjectMeta
- properties:
self:
example: https://api.confluent.cloud/switchover/v1/switchover-endpoints/se-12345
resource_name:
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/switchover-endpoint=se-12345
spec:
type: object
description: The desired state of the Switchover Endpoint
properties:
environment_crn:
type: string
format: uri
description: 'The CRN of the environment this switchover endpoint belongs to
— always its parent pair''s
environment, derived from `parent_resource_crn` on create (ORC-9794 decision
log).
Read-only: accepting a second copy of the same scope would only create the
possibility of
the two disagreeing. It is also the value whose ID is passed as the `?environment=`
query
parameter on the other operations.
'
readOnly: true
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000
parent_resource_crn:
type: string
format: uri
pattern: ^crn://confluent\.cloud/organization=[^/]+/environment=[^/]+/switchover-pair=.+$
description: 'The CRN of the switchover pair this endpoint is bound to. Must
name the same environment as
`environment_crn`: the pair is looked up in that scope, so a mismatch would
report a
confusing not-found rather than the inconsistency the caller introduced.
'
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/switchover-pair=sw-00000
x-immutable: true
display_name:
type: string
description: A human-readable name for the switchover endpoint.
example: prod-kafka-dr-endpoint
maxLength: 256
target:
type: string
description: 'The name of the endpoint that is currently active; always one
of `endpoints[].name`.
Output-only: the Switchover service derives it from the pair''s active member
at create time
and moves it on every failover. A value supplied on create is ignored.
'
example: west-platt
readOnly: true
endpoints:
type: array
description: 'The endpoint definitions, one per side (e.g. west/east). Must
contain exactly 2 entries.
'
minItems: 2
maxItems: 2
items:
type: object
description: Configuration for a single endpoint side of a `SwitchoverEndpoint`.
required:
- name
- endpoint_filter
properties:
name:
type: string
description: A logical name for this endpoint side (e.g. "west-platt"),
unique within the resource.
example: west-platt
hostname:
type: string
description: The resolved hostname for this endpoint. Set by the Switchover
service.
readOnly: true
example: lkc-west-platt.us-west-2.aws.private.confluent.cloud
cloud:
type: string
description: The cloud provider this endpoint resolves in. Output-only,
derived server-side.
readOnly: true
example: aws
region:
type: string
description: The cloud region this endpoint resolves in. Output-only,
derived server-side.
readOnly: true
example: us-west-2
connection_type:
type: string
description: 'The connection type of the resolved endpoint (e.g. `PRIVATE_LINK`),
from
cc-endpoint-service''s vocabulary. Output-only; empty when the connection
type is
unspecified.
'
readOnly: true
example: PRIVATE_LINK
endpoint_filter:
allOf:
- type: object
description: 'The client-supplied criteria that select which network
endpoint to use for this side of the
switchover pair. This filter is the only part of an endpoint side
the caller provides; the
resolved endpoint details on the parent `EndpointConfig` — `hostname`,
`cloud`, `region`, and
`connection_type` — are derived server-side from the selected network
(or access point) and the
`SwitchoverPair` member, not supplied here (ORC-10125).
Set `type` to `public` or `private`. A `private` endpoint sets exactly
one of `network_crn` or
`access_point_crn`; each independently resolves a unique endpoint,
so a second selector is never
needed and could only disagree with the first. A `public` endpoint
sets neither.
There is deliberately no environment field: the environment is always
recoverable without one —
from `network_crn` or `access_point_crn` on a private entry, and from
the switchover endpoint''s
own `environment_crn` on a public entry. Carrying it here too would
only duplicate that fact and
let a caller name an environment that disagrees with the CRN beside
it.
'
required:
- type
properties:
type:
type: string
description: Whether the endpoint is private or public.
example: private
enum:
- private
- public
network_crn:
type: string
format: uri
pattern: ^crn://confluent\.cloud/organization=[^/]+/environment=[^/]+/network=.+$
description: 'CRN of the network to resolve this endpoint against.
A private endpoint sets exactly one
of this or `access_point_crn` — each independently resolves a
unique endpoint, so a
second selector is never needed and could only disagree with the
first. A public
endpoint sets neither.
'
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/network=n-abc123
access_point_crn:
type: string
format: uri
pattern: ^crn://confluent\.cloud/organization=[^/]+/environment=[^/]+/gateway=[^/]+/access-point=.+$
description: 'CRN of the network access point, for access-point
(PNI) endpoints — the alternative to
`network_crn`; a private endpoint sets exactly one of the two.
The `gateway` segment is
part of the registered canonical form and is required.
'
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/gateway=gw-456xyz/access-point=ap-west-xyz
title: switchover.v1.EndpointFilter
title: switchover.v1.EndpointConfig
x-immutable: true
x-enable-id: true
x-enable-listmeta: true
x-enable-objectmeta: true
title: switchover.v1.SwitchoverEndpointSpec
status:
type: object
required:
- phase
description: The status of the Switchover Endpoint
properties:
phase:
type: string
description: "The lifecycle phase of the switchover endpoint:\n PROVISIONING:\
\ the endpoint is being created and reconciled;\n READY: the\
\ endpoint is reconciled and serving traffic;\n FAILED: the endpoint\
\ encountered an error;\n DEPROVISIONING: the endpoint is being deleted.\n"
readOnly: true
example: READY
enum:
- PROVISIONING
- READY
- FAILED
- DEPROVISIONING
conditions:
type: array
description: Status conditions providing detailed information about the switchover
endpoint's current state.
items:
type: object
description: 'A single status condition on a `SwitchoverEndpoint`, following
the standard Kubernetes/Confluent
condition pattern. Unlike a `SwitchoverPair` (whose conditions are per-member),
an endpoint has
a single resource-level condition.
'
required:
- type
- status
properties:
type:
type: string
description: The condition type. A `SwitchoverEndpoint` reports the single
type `ResourceProvisioningComplete`.
example: ResourceProvisioningComplete
enum:
- ResourceProvisioningComplete
status:
type: string
description: The status of the condition.
example: 'True'
enum:
- 'True'
- 'False'
- Unknown
reason:
type: string
description: A machine-readable reason for the condition's current status.
example: Reconciled
message:
type: string
description: A human-readable message providing additional detail about
the condition.
example: The endpoint is ready.
title: switchover.v1.SwitchoverEndpointCondition
readOnly: true
readOnly: true
title: switchover.v1.SwitchoverEndpointStatus
title: switchover.v1.SwitchoverEndpoint
- type: object
required:
- spec
- status
properties:
spec:
type: object
required:
- parent_resource_crn
- display_name
- endpoints
'400':
description: Bad Request
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
content:
application/json:
schema:
type: object
description: Provides information about problems encountered while performing an operation.
required:
- errors
properties:
errors:
description: List of errors which caused this operation to fail
type: array
items:
type: object
description: Describes a particular error encountered while performing an operation.
properties:
id:
description: A unique identifier for this particular occurrence of the problem.
type: string
maxLength: 255
status:
description: The HTTP status code applicable to this problem, expressed as a
string value.
type: string
code:
description: An application-specific error code, expressed as a string value.
type: string
title:
description: A short, human-readable summary of the problem. It **SHOULD NOT**
change from occurrence to occurrence of the problem, except for purposes of
localization.
type: string
detail:
description: A human-readable explanation specific to this occurrence of the
problem.
type: string
source:
type: object
description: If this error was caused by a particular part of the API request,
the source will point to the query string parameter or request body property
that caused it.
properties:
pointer:
description: A JSON Pointer [RFC6901] to the associated entity in the request
document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
field].
type: string
parameter:
description: A string indicating which query parameter caused the error.
type: string
error_code:
type: integer
format: int32
message:
type: string
nullable: true
additionalProperties: false
title: Error
uniqueItems: true
title: Failure
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '400'
code: invalid_filter
title: Invalid Filter
detail: The 'delorean' resource can't be filtered by 'num_doors'
source:
parameter: num_doors
'401':
x-summary: Unauthorized
description: The request lacks valid authentication credentials for this resource.
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
WWW-Authenticate:
schema:
type: string
description: The unique identifier for the API request.
example: Basic error="invalid_key", error_description="The API Key is invalid"
content:
application/json:
schema:
type: object
description: Provides information about problems encountered while performing an operation.
required:
- errors
properties:
errors:
description: List of errors which caused this operation to fail
type: array
items:
type: object
description: Describes a particular error encountered while performing an operation.
properties:
id:
description: A unique identifier for this particular occurrence of the problem.
type: string
maxLength: 255
status:
description: The HTTP status code applicable to this problem, expressed as a
string value.
type: string
code:
description: An application-specific error code, expressed as a string value.
type: string
title:
description: A short, human-readable summary of the problem. It **SHOULD NOT**
change from occurrence to occurrence of the problem, except for purposes of
localization.
type: string
detail:
description: A human-readable explanation specific to this occurrence of the
problem.
type: string
source:
type: object
description: If this error was caused by a particular part of the API request,
the source will point to the query string parameter or request body property
that caused it.
properties:
pointer:
description: A JSON Pointer [RFC6901] to the associated entity in the request
document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
field].
type: string
parameter:
description: A string indicating which query parameter caused the error.
type: string
error_code:
type: integer
format: int32
message:
type: string
nullable: true
additionalProperties: false
title: Error
uniqueItems: true
title: Failure
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '401'
code: user_unauthenticated
title: Authentication Required
detail: Valid authentication credentials must be provided
'403':
x-summary: Forbidden
description: The access credentials were considered insufficient to grant access
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
content:
application/json:
schema:
type: object
description: Provides information about problems encountered while performing an operation.
required:
- errors
properties:
errors:
description: List of errors which caused this operation to fail
type: array
items:
type: object
description: Describes a particular error encountered while performing an operation.
properties:
id:
description: A unique identifier for this particular occurrence of the problem.
type: string
maxLength: 255
status:
description: The HTTP status code applicable to this problem, expressed as a
string value.
type: string
code:
description: An application-specific error code, expressed as a string value.
type: string
title:
description: A short, human-readable summary of the problem. It **SHOULD NOT**
change from occurrence to occurrence of the problem, except for purposes of
localization.
type: string
detail:
description: A human-readable explanation specific to this occurrence of the
problem.
type: string
source:
type: object
description: If this error was caused by a particular part of the API request,
the source will point to the query string parameter or request body property
that caused it.
properties:
pointer:
description: A JSON Pointer [RFC6901] to the associated entity in the request
document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
field].
type: string
parameter:
description: A string indicating which query parameter caused the error.
type: string
error_code:
type: integer
format: int32
message:
type: string
nullable: true
additionalProperties: false
title: Error
uniqueItems: true
title: Failure
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '403'
code: user_unauthorized
title: User Access Unauthorized
detail: The user 'mcfly' is not allowed to access the 'delorean' resource without the
'plutonium' role.
'409':
x-summary: Conflict
description: The request is in conflict with the current server state
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
Location:
schema:
type: string
format: uri
example: https://api.confluent.cloud/{object}/{id}
description: Resource URI of conflicting resource
content:
application/json:
schema:
type: object
description: Provides information about problems encountered while performing an operation.
required:
- errors
properties:
errors:
description: List of errors which caused this operation to fail
type: array
items:
type: object
description: Describes a particular error encountered while performing an operation.
properties:
id:
description: A unique identifier for this particular occurrence of the problem.
type: string
maxLength: 255
status:
description: The HTTP status code applicable to this problem, expressed as a
string value.
type: string
code:
description: An application-specific error code, expressed as a string value.
type: string
title:
description: A short, human-readable summary of the problem. It **SHOULD NOT**
change from occurrence to occurrence of the problem, except for purposes of
localization.
type: string
detail:
description: A human-readable explanation specific to this occurrence of the
problem.
type: string
source:
type: object
description: If this error was caused by a particular part of the API request,
the source will point to the query string parameter or request body property
that caused it.
properties:
pointer:
description: A JSON Pointer [RFC6901] to the associated entity in the request
document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
field].
type: string
parameter:
description: A string indicating which query parameter caused the error.
type: string
error_code:
type: integer
format: int32
message:
type: string
nullable: true
additionalProperties: false
title: Error
uniqueItems: true
title: Failure
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '409'
code: resource_already_exists
title: Resource Already exists
detail: The entitlement '91e3e86f-fca6-4f14-98f5-a48e64113ce2' already exists.
'422':
description: Validation Failed
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
content:
application/json:
schema:
type: object
description: Provides information about problems encountered while performing an operation.
required:
- errors
properties:
errors:
description: List of errors which caused this operation to fail
type: array
items:
type: object
description: Describes a particular error encountered while performing an operation.
properties:
id:
description: A unique identifier for this particular occurrence of the problem.
type: string
maxLength: 255
status:
description: The HTTP status code applicable to this problem, expressed as a
string value.
type: string
code:
description: An application-specific error code, expressed as a string value.
type: string
title:
description: A short, human-readable summary of the problem. It **SHOULD NOT**
change from occurrence to occurrence of the problem, except for purposes of
localization.
type: string
detail:
description: A human-readable explanation specific to this occurrence of the
problem.
type: string
source:
type: object
description: If this error was caused by a particular part of the API request,
the source will point to the query string parameter or request body property
that caused it.
properties:
pointer:
description: A JSON Pointer [RFC6901] to the associated entity in the request
document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
field].
type: string
parameter:
description: A string indicating which query parameter caused the error.
type: string
error_code:
type: integer
format: int32
message:
type: string
nullable: true
additionalProperties: false
title: Error
uniqueItems: true
title: Failure
example:
errors:
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
- status: '422'
code: invalid_configuration
id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
title: Validation Failed
detail: 'The property ''/cluster/storage_size'' of type string did not match the following
type: integer'
source:
pointer: /cluster/storage_size
'429':
description: Rate Limit Exceeded
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
X-RateLimit-Limit:
schema:
type: integer
description: The maximum number of requests you're permitted to make per time period.
X-RateLimit-Remaining:
schema:
type: integer
description: The number of requests remaining in the current rate limit window.
X-RateLimit-Reset:
schema:
type: integer
description: "The relative time in seconds until the current rate-limit window resets. \
\ \n \n**Important:** This differs from Github and Twitter's same-named header which\
\ uses UTC epoch seconds. We use relative time to avoid client/server time synchronization\
\ issues."
Retry-After:
schema:
type: integer
description: The number of seconds to wait until the rate limit window resets. Only sent
when the rate limit is reached.
'500':
description: Oops, something went wrong!
headers:
X-Request-Id:
schema:
type: string
description: The unique identifier for the API request.
content:
application/json:
schema:
type: object
description: Provides information about problems encountered while performing an operation.
required:
- errors
properties:
errors:
description: List of errors which caused this operation to fail
type: array
items:
type: object
description: Describes a particular error encountered while performing an operation.
properties:
id:
description: A unique identifier for this particular occurrence of the problem.
type: string
maxLength: 255
status:
description: The HTTP status code applicable to this problem, expressed as a
string value.
type: string
code:
description: An application-specific error code, expressed as a string value.
type: string
title:
description: A short, human-readable summary of the problem. It **SHOULD NOT**
change from occurrence to occurrence of the problem, except for purposes of
localization.
type: string
detail:
description: A human-readable explanation specific to this occurrence of the
problem.
type: string
source:
type: object
description: If this error was caused by a particular part of the API request,
the source will point to the query string parameter or request body property
that caused it.
properties:
pointer:
description: A JSON Pointer [RFC6901] to the associated entity in the request
document [e.g. "/spec" for a spec object, or "/spec/title" for a specific
field].
type: string
parameter:
description: A string indicating which query parameter caused the error.
type: string
error_code:
type: integer
format: int32
message:
type: string
nullable: true
additionalProperties: false
title: Error
uniqueItems: true
title: Failure
example:
errors:
- id: ed42afdc-f0d5-4c0d-b428-9fc6ed6e279d
status: '500'
code: out_of_gas
title: DeLorean Out Of Gas
detail: The DeLorean has run out of gas, but Doc Brown will fill 'er up for you asap
servers:
- url: https://api.confluent.cloud
description: Confluent Cloud API
jsonRequestBodyExample:
spec:
parent_resource_crn: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/switchover-pair=sw-00000
display_name: prod-kafka-dr-endpoint
endpoints:
- name: west-platt
endpoint_filter:
type: private
network_crn: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/network=n-abc123
access_point_crn: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000/gateway=gw-456xyz/access-point=ap-west-xyz