Skip to main content

List of Connect Artifacts

GET 

/cam/v1/connect-artifacts

General Availability

Retrieve a sorted, filtered, paginated list of all connect artifacts.

Request

Responses

Connect Artifact.

Response Headers
    X-Request-Id

    The unique identifier for the API request.

    X-RateLimit-Limit

    The maximum number of requests you're permitted to make per time period.

    X-RateLimit-Remaining

    The number of requests remaining in the current rate limit window.

    X-RateLimit-Reset

    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.

OpenAPI definition (YAML)
paths:
  /cam/v1/connect-artifacts:
    get:
      x-lifecycle-stage: General Availability
      x-self-access: true
      operationId: listCamV1ConnectArtifacts
      description: '[![General Availability](https://img.shields.io/badge/Lifecycle%20Stage-General%20Availability-%2345c6e8)](#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