cam.v1.ConnectArtifactList
`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
Properties
| Name | Type | Description |
|---|---|---|
| api_version | string | APIVersion defines the schema version of this representation of a resource. |
| kind | string | Kind defines the object this REST resource represents. |
| metadata | object | |
| data | array | A data property that contains an array of resource items. Each entry in the array is a separate resource. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/confluent/main/json-schema/confluent-cam-v1-connect-artifact-list-schema.json",
"title": "cam.v1.ConnectArtifactList",
"description": "`Connect Artifact` objects represent collection of Custom SMTs, user-defined message\ntransformations that can be applied to Kafka connectors.\n\nThe API allows you to upload, retrieve, and delete Connect Artifact, as well as list all\navailable Connect Artifact for use in your connectors.\nCurrently, Connect Artifacts can only be used by connectors running on\nEnterprise, Freight, or Dedicated Kafka Connect clusters on AWS,\nconfigured with one of the following network types: PrivateLink, Peering/Transit Gateway, or PNI.\n\n\n## The Connect Artifacts Model\n<SchemaDefinition schemaRef=\"#/components/schemas/cam.v1.ConnectArtifact\" />",
"x-generated": "2026-10-04",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/confluent-connect-artifacts-cam-v1-api-openapi.yml#/components/schemas/cam.v1.ConnectArtifactList",
"type": "object",
"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": [
{
"$ref": "#/$defs/ListMeta"
},
{
"properties": {
"first": {},
"last": {},
"prev": {},
"next": {}
}
}
]
},
"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": [
{
"$ref": "#/$defs/cam.v1.ConnectArtifact"
},
{
"type": "object",
"required": [
"id",
"metadata",
"spec",
"status"
]
}
]
},
"uniqueItems": true
}
},
"$defs": {
"ListMeta": {
"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",
"null"
],
"format": "uri"
},
"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",
"null"
],
"format": "uri"
},
"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",
"null"
],
"format": "uri"
},
"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",
"null"
],
"format": "uri"
},
"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
}
}
},
"ObjectMeta": {
"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
},
"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
},
"created_at": {
"type": "string",
"format": "date-time",
"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",
"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",
"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
},
"cam.v1.ConnectArtifact": {
"type": "object",
"description": "`Connect Artifact` objects represent collection of Custom SMTs, user-defined message\ntransformations that can be applied to Kafka connectors.\n\nThe API allows you to upload, retrieve, and delete Connect Artifact, as well as list all\navailable Connect Artifact for use in your connectors.\nCurrently, Connect Artifacts can only be used by connectors running on\nEnterprise, Freight, or Dedicated Kafka Connect clusters on AWS,\nconfigured with one of the following network types: PrivateLink, Peering/Transit Gateway, or PNI.\n\n\n## The Connect Artifacts Model\n<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
},
"metadata": {
"allOf": [
{
"$ref": "#/$defs/ObjectMeta"
},
{
"properties": {
"self": {},
"resource_name": {}
}
}
]
},
"spec": {
"allOf": [
{
"$ref": "#/$defs/cam.v1.ConnectArtifactSpec"
}
]
},
"status": {
"$ref": "#/$defs/cam.v1.ConnectArtifactStatus"
}
}
},
"cam.v1.ConnectArtifactSpec": {
"type": "object",
"description": "Connect Artifact objects represent Custom SMTs on Confluent Cloud.\n",
"properties": {
"cloud": {
"type": "string",
"description": "Cloud provider where the Connect Artifact archive is uploaded.",
"maxLength": 60,
"x-extensible-enum": [
"AWS"
]
},
"environment": {
"type": "string",
"description": "Environment the Connect Artifact belongs to.",
"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.",
"x-extensible-enum": [
"ZIP",
"JAR"
],
"readOnly": true
},
"upload_source": {
"type": "object",
"oneOf": [
{
"$ref": "#/$defs/cam.v1.UploadSource.PresignedUrl"
}
],
"description": "Upload source of the Connect Artifact."
},
"plugins": {
"type": "array",
"description": "List of classes present in the Connect Artifact uploaded",
"minItems": 0,
"items": {
"$ref": "#/$defs/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": {
"$ref": "#/$defs/cam.v1.Usages"
},
"readOnly": true
}
},
"required": [
"cloud",
"environment",
"display_name"
]
},
"cam.v1.ConnectArtifactStatus": {
"type": "object",
"required": [
"phase"
],
"description": "The status of the Connect Artifact",
"properties": {
"phase": {
"type": "string",
"x-extensible-enum": [
"WAITING_FOR_PROCESSING",
"PROCESSING",
"FAILED",
"READY"
],
"description": "Specifies the current processing state of a CloudConnectArtifact.",
"readOnly": true
}
},
"readOnly": true
},
"cam.v1.Plugins": {
"type": "object",
"description": "Metadata of the classes present in a Connect Artifact.\n",
"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]*)$"
}
}
},
"cam.v1.UploadSource.PresignedUrl": {
"type": "object",
"description": "Presigned URL of the uploaded Connect Artifact archive.",
"properties": {
"location": {
"type": "string",
"description": "Location of the Connect Artifact source.\n",
"x-extensible-enum": [
"PRESIGNED_URL_LOCATION"
]
},
"upload_id": {
"type": "string",
"description": "Upload ID returned by the `/presigned-upload-url` API. This field returns an empty string in all responses."
}
},
"required": [
"location",
"upload_id"
]
},
"cam.v1.Usages": {
"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.\nThis is typically the CRN of a specific connector.\n",
"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\\-_]+$"
},
"connector_type": {
"type": "string",
"description": "The type of the connector using the artifact, indicating if it's a source or a sink.",
"x-extensible-enum": [
"SINK",
"SOURCE",
"UNKNOWN"
]
}
},
"required": [
"connector_crn",
"connector_type"
]
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/confluent-cam-v1-connect-artifact-list"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.