Validate an Integration
POST/pim/v2/integrations:validate
Validate the provider integration configuration.
Request
Responses
- 204
- 400
- 401
- 403
- 404
- 429
- 500
The provider integration configuration is validated successfully.
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.
Not Found
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:
/pim/v2/integrations:validate:
post:
description: '[](#section/Versioning/API-Lifecycle-Policy)
[](mailto:ccloud-api-access+pim-v2-early-access@confluent.io?subject=Request%20to%20join%20pim/v2%20API%20Early%20Access&body=I%E2%80%99d%20like%20to%20join%20the%20Confluent%20Cloud%20API%20Early%20Access%20for%20pim/v2%20to%20provide%20early%20feedback%21%20My%20Cloud%20Organization%20ID%20is%20%3Cretrieve%20from%20https%3A//confluent.cloud/settings/billing/payment%3E.)
Validate the provider integration configuration.
'
requestBody:
content:
application/json:
schema:
allOf:
- type: object
description: Request to validate the provider integration configuration.
properties:
id:
type: string
description: The ID of the provider integration to validate.
example: cspi-00000
maxLength: 255
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/pim/v2/integration-validate-requests/ivr-12345
resource_name:
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/integration-validate-request=ivr-12345
config:
type: object
description: 'Cloud provider specific configuration for the provider integration.
Required only for integrations in `DRAFT` status.
'
discriminator:
propertyName: kind
mapping:
GcpIntegrationConfig:
type: object
description: 'config schema for GCP cloud service provider.
'
properties:
google_service_account:
type: string
description: 'The ID of the Google Service Account that Confluent Cloud
uses to impersonate
customer Google Service Account when it accesses resources in your GCP
project.
'
example: cspi-sa1@cflt-project.iam.gserviceaccount.com
readOnly: true
customer_google_service_account:
type: string
description: 'The ID of the Google Service Account that Confluent Cloud
impersonates
to access resources in your GCP Project.
'
example: customer-sa@customer-project.iam.gserviceaccount.com
kind:
type: string
description: Cloud provider specific config to which access is provided
through provider integration.
example: GcpIntegrationConfig
enum:
- GcpIntegrationConfig
required:
- kind
title: pim.v2.GcpIntegrationConfig
AzureIntegrationConfig:
type: object
description: 'config schema for Azure cloud service provider.
'
properties:
confluent_multi_tenant_app_id:
type: string
description: 'The ID of the Confluent Multi-Tenant App that Confluent Cloud
uses to impersonate
customer Azure App when it accesses resources in your Azure subscription.
'
example: 9bb441c4-edef-46ac-8a41-c49e44a3fd9a
readOnly: true
customer_azure_tenant_id:
type: string
description: 'The ID of the customer''s Azure Active Directory (Azure AD)
tenant
'
example: 12345678-1234-1234-1234-123456789abc
kind:
type: string
description: Cloud provider specific config to which access is provided
through provider integration.
example: AzureIntegrationConfig
enum:
- AzureIntegrationConfig
required:
- kind
title: pim.v2.AzureIntegrationConfig
AwsIntegrationConfig:
type: object
description: 'config schema for AWS cloud service provider.
'
properties:
iam_role_arn:
type: string
description: 'Amazon Resource Name (ARN) that identifies the Amazon Web
Services (AWS)
Identity and Access Management (IAM) role that Confluent Cloud uses to
assume
customer IAM role when it accesses resources in your AWS account.
'
example: arn:aws:iam::000000000000:role/my-test-aws-role
maxLength: 2048
minLength: 20
readOnly: true
external_id:
type: string
format: uuid
description: 'Unique external ID that Confluent Cloud uses when it assumes
the IAM role
in your Amazon Web Services (AWS) account.
'
readOnly: true
customer_iam_role_arn:
type: string
description: 'Amazon Resource Name (ARN) that identifies the Amazon Web
Services (AWS)
Identity and Access Management (IAM) role that Confluent Cloud assumes
when
it accesses resources in your AWS account.
'
example: arn:aws:iam::000000000000:role/my-test-aws-role
maxLength: 2048
minLength: 20
kind:
type: string
description: Cloud provider specific config to which access is provided
through provider integration.
example: AwsIntegrationConfig
enum:
- AwsIntegrationConfig
required:
- kind
title: pim.v2.AwsIntegrationConfig
oneOf:
- type: object
description: 'config schema for GCP cloud service provider.
'
properties:
customer_google_service_account:
type: string
description: 'The ID of the Google Service Account that Confluent Cloud impersonates
to access resources in your GCP Project.
'
example: customer-sa@customer-project.iam.gserviceaccount.com
kind:
type: string
description: Cloud provider specific config to which access is provided through
provider integration.
example: GcpIntegrationConfig
enum:
- GcpIntegrationConfig
required:
- kind
title: pim.v2.GcpIntegrationConfig
- type: object
description: 'config schema for Azure cloud service provider.
'
properties:
customer_azure_tenant_id:
type: string
description: 'The ID of the customer''s Azure Active Directory (Azure AD) tenant
'
example: 12345678-1234-1234-1234-123456789abc
kind:
type: string
description: Cloud provider specific config to which access is provided through
provider integration.
example: AzureIntegrationConfig
enum:
- AzureIntegrationConfig
required:
- kind
title: pim.v2.AzureIntegrationConfig
- type: object
description: 'config schema for AWS cloud service provider.
'
properties:
customer_iam_role_arn:
type: string
description: 'Amazon Resource Name (ARN) that identifies the Amazon Web Services
(AWS)
Identity and Access Management (IAM) role that Confluent Cloud assumes when
it accesses resources in your AWS account.
'
example: arn:aws:iam::000000000000:role/my-test-aws-role
maxLength: 2048
minLength: 20
kind:
type: string
description: Cloud provider specific config to which access is provided through
provider integration.
example: AwsIntegrationConfig
enum:
- AwsIntegrationConfig
required:
- kind
title: pim.v2.AwsIntegrationConfig
environment:
description: The environment to which this belongs.
allOf:
- type: object
description: ObjectReference provides information for you to locate the referred
object
required:
- id
properties:
id:
type: string
description: ID of the referred resource
minLength: 1
maxLength: 255
title: GlobalObjectReference
title: pim.v2.IntegrationValidateRequest
- type: object
required:
- id
- environment
x-lifecycle-stage: Early Access
x-self-access: false
x-request-access-name: Provider Integration
x-name: pim.v2.Integration
operationId: validatePimV2Integration
tags:
- Integrations (pim/v2)
security:
- cloud-api-key: []
- confluent-sts-access-token: []
responses:
'204':
description: The provider integration configuration is validated successfully.
'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.
'404':
description: Not Found
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: '404'
title: Not Found
'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:
id: cspi-00000
config:
customer_google_service_account: customer-sa@customer-project.iam.gserviceaccount.com
kind: GcpIntegrationConfig
environment:
id: string