List of Connect Artifacts
GET/cam/v1/connect-artifacts
Retrieve a sorted, filtered, paginated list of all connect artifacts.
Request
Responses
- 200
- 400
- 401
- 403
- 429
- 500
Connect Artifact.
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.
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.
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:
/cam/v1/connect-artifacts:
get:
x-lifecycle-stage: General Availability
x-self-access: true
operationId: listCamV1ConnectArtifacts
description: '[](#section/Versioning/API-Lifecycle-Policy)
Retrieve a sorted, filtered, paginated list of all connect artifacts.'
parameters:
- name: spec.cloud
in: query
required: true
schema:
description: Filter a collection by a string search
type: string
title: SearchFilter
example: AWS
description: Filter the results by exact match for spec.cloud.
- name: environment
in: query
required: true
schema:
description: Filter a collection by a string search
type: string
title: SearchFilter
example: env-00000
description: Filter the results by exact match for environment.
- name: page_size
in: query
required: false
schema:
type: integer
default: 10
maximum: 100
x-max-page-items: 500
description: A pagination size for collection requests.
- name: page_token
in: query
required: false
schema:
type: string
maxLength: 255
description: An opaque pagination token for collection requests.
tags:
- Connect Artifacts (cam/v1)
security:
- cloud-api-key: []
- confluent-sts-access-token: []
responses:
'200':
description: Connect Artifact.
content:
application/json:
schema:
allOf:
- type: object
description: '`Connect Artifact` objects represent collection of Custom SMTs, user-defined
message
transformations that can be applied to Kafka connectors.
The API allows you to upload, retrieve, and delete Connect Artifact, as well as list
all
available Connect Artifact for use in your connectors.
Currently, Connect Artifacts can only be used by connectors running on
Enterprise, Freight, or Dedicated Kafka Connect clusters on AWS,
configured with one of the following network types: PrivateLink, Peering/Transit Gateway,
or PNI.
## The Connect Artifacts Model
<SchemaDefinition schemaRef="#/components/schemas/cam.v1.ConnectArtifact" />'
required:
- api_version
- kind
- metadata
- data
properties:
api_version:
type: string
enum:
- cam/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:
- ConnectArtifactList
metadata:
allOf:
- type: object
description: ListMeta describes metadata that resource collections may have
properties:
first:
description: A link to the first page of results. If a response does not contain
a first link, then direct navigation to the first page is not supported.
type: string
format: uri
nullable: true
example: https://api.confluent.cloud/v2/resourcekinds
last:
description: A link to the last page of results. If a response does not contain
a last link, then direct navigation to the last page is not supported.
type: string
format: uri
nullable: true
example: https://api.confluent.cloud/v2/resourcekinds?page_token=bcAOehAY8F16YD84Z1wT
prev:
description: A link to the previous page of results. If a response does not
contain a prev link, then either there is no previous data or backwards
traversal through the result set is not supported.
type: string
format: uri
nullable: true
example: https://api.confluent.cloud/v2/resourcekinds?page_token=YIXRY97wWYmwzrax4dld
next:
description: A link to the next page of results. If a response does not contain
a next link, then there is no more data available.
type: string
format: uri
nullable: true
example: https://api.confluent.cloud/v2/resourcekinds?page_token=UvmDWOB1iwfAIBPj6EYb
total_size:
description: Number of records in the full result set. This response may be
paginated and have a smaller number of records.
type: integer
format: int32
minimum: 0
example: 123
title: ListMeta
- properties:
first:
example: https://api.confluent.cloud/cam/v1/connect-artifacts
last:
example: https://api.confluent.cloud/cam/v1/connect-artifacts?page_token=bcAOehAY8F16YD84Z1wT
prev:
example: https://api.confluent.cloud/cam/v1/connect-artifacts?page_token=YIXRY97wWYmwzrax4dld
next:
example: https://api.confluent.cloud/cam/v1/connect-artifacts?page_token=UvmDWOB1iwfAIBPj6EYb
data:
type: array
description: A data property that contains an array of resource items. Each entry
in the array is a separate resource.
items:
allOf:
- type: object
description: '`Connect Artifact` objects represent collection of Custom SMTs,
user-defined message
transformations that can be applied to Kafka connectors.
The API allows you to upload, retrieve, and delete Connect Artifact, as well
as list all
available Connect Artifact for use in your connectors.
Currently, Connect Artifacts can only be used by connectors running on
Enterprise, Freight, or Dedicated Kafka Connect clusters on AWS,
configured with one of the following network types: PrivateLink, Peering/Transit
Gateway, or PNI.
## The Connect Artifacts Model
<SchemaDefinition schemaRef="#/components/schemas/cam.v1.ConnectArtifact"
/>'
properties:
api_version:
type: string
enum:
- cam/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:
- ConnectArtifact
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/cam/v1/connect-artifacts/ca-12345
resource_name:
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/connect-artifact=ca-12345
spec:
allOf:
- type: object
description: 'Connect Artifact objects represent Custom SMTs on Confluent
Cloud.
'
properties:
cloud:
type: string
description: Cloud provider where the Connect Artifact archive is
uploaded.
example: AWS
maxLength: 60
enum:
- AWS
environment:
type: string
description: Environment the Connect Artifact belongs to.
example: env-00000
maxLength: 255
display_name:
type: string
description: Unique name of the Connect Artifact archive per cloud,
environment scope.
maxLength: 60
description:
type: string
description: Description of the Connect Artifact.
maxLength: 256
content_format:
type: string
description: Archive format of the Connect Artifact.
example: JAR
readOnly: true
enum:
- ZIP
- JAR
upload_source:
type: object
oneOf:
- type: object
description: Presigned URL of the uploaded Connect Artifact archive.
properties:
location:
type: string
description: 'Location of the Connect Artifact source.
'
example: PRESIGNED_URL_LOCATION
enum:
- PRESIGNED_URL_LOCATION
upload_id:
type: string
example: e53bb2e8-8de3-49fa-9fb1-4e3fd9a16b66
description: Upload ID returned by the `/presigned-upload-url`
API. This field returns an empty string in all responses.
required:
- location
- upload_id
title: cam.v1.UploadSource.PresignedUrl
description: Upload source of the Connect Artifact.
discriminator:
propertyName: location
mapping:
PRESIGNED_URL_LOCATION:
type: object
description: Presigned URL of the uploaded Connect Artifact
archive.
properties:
location:
type: string
description: 'Location of the Connect Artifact source.
'
example: PRESIGNED_URL_LOCATION
enum:
- PRESIGNED_URL_LOCATION
upload_id:
type: string
example: e53bb2e8-8de3-49fa-9fb1-4e3fd9a16b66
description: Upload ID returned by the `/presigned-upload-url`
API. This field returns an empty string in all responses.
required:
- location
- upload_id
title: cam.v1.UploadSource.PresignedUrl
plugins:
type: array
description: List of classes present in the Connect Artifact uploaded
minItems: 0
items:
type: object
description: 'Metadata of the classes present in a Connect Artifact.
'
properties:
class:
type: string
description: Java class or alias for the artifact as provided
by developer.
maxLength: 150
pattern: ^(([a-zA-Z][a-zA-Z_$0-9]*(\.[a-zA-Z][a-zA-Z_$0-9]*)*)\.)?([a-zA-Z][a-zA-Z_$0-9]*)$
example: io.confluent.example.CustomSMTExample
title: cam.v1.Plugins
readOnly: true
usages:
type: array
description: List of resources using this Connect artifact, identified
by CRN and connector type.
minItems: 0
items:
type: object
description: Specifies a resource CRN and connector type where this
Connect artifact is being used.
properties:
connector_crn:
type: string
description: 'The Confluent Resource Name (CRN) of the resource
that is using the artifact.
This is typically the CRN of a specific connector.
'
format: uri
pattern: ^crn://confluent\.cloud/organization=[a-f0-9\-]{36}/environment=[a-zA-Z0-9\-]+/cloud-cluster=[a-zA-Z0-9\-]+/connector=[a-zA-Z0-9\-_]+$
example: crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-456xy/cloud-cluster=lkc-123abc/connector=my_datagen_connector
connector_type:
type: string
description: The type of the connector using the artifact, indicating
if it's a source or a sink.
example: SINK
enum:
- SINK
- SOURCE
- UNKNOWN
required:
- connector_crn
- connector_type
title: cam.v1.Usages
readOnly: true
required:
- cloud
- environment
- display_name
title: cam.v1.ConnectArtifactSpec
status:
type: object
required:
- phase
description: The status of the Connect Artifact
properties:
phase:
type: string
description: Specifies the current processing state of a CloudConnectArtifact.
example: WAITING_FOR_PROCESSING
readOnly: true
enum:
- WAITING_FOR_PROCESSING
- PROCESSING
- FAILED
- READY
readOnly: true
title: cam.v1.ConnectArtifactStatus
title: cam.v1.ConnectArtifact
- type: object
required:
- id
- metadata
- spec
- status
uniqueItems: true
title: cam.v1.ConnectArtifactList
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."
'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.
'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