asyncapi: 2.4.0
info:
  title: API Document for Confluent Cluster
  version: 1.0.0
servers:
  confluentSchemaRegistry: []
channels:
  topic1:
    description: "topic1 description"
    subscribe:
      tags:
        - name: topic_tag
        - name: topic_tag_2
        - name: topic_tag_3
      operationId: Topic1Subscribe
      bindings:
        kafka:
          bindingVersion: 0.3.0
          groupId:
            type: string
          clientId:
            type: string
      message:
        $ref: '#/components/messages/Topic1Message'
    bindings:
      kafka:
        bindingVersion: 0.4.0
        partitions: 2
        topicConfiguration:
          cleanup.policy:
          - delete
          delete.retention.ms: 86400000
        x-configs:
          compression.type: producer
          file.delete.delay.ms: "60000"
    x-messageCompatibility: FORWARD
components:
  messages:
    Topic1Message:
      tags:
        - name: schema_tag
      payload:
        doc: Sample schema to help you get started.
        fields:
          - doc: The int type is a 32-bit signed integer.
            name: my_field1
            type: int
          - doc: The double type is a double precision(64-bit) IEEE754 floating-point
              number.
            name: my_field2
            type: double
          - doc: The string is a unicode character sequence.
            name: my_field3
            type: string
        name: sampleRecord
        namespace: com.mycorp.mynamespace
        type: AVRO
      name: Topic1Message
      bindings:
        kafka:
          bindingVersion: 0.3.0
          key:
            type: string
  securitySchemes:
    confluentBroker:
      type: userPassword
      x-configs:
        sasl.mechanisms: PLAIN
        sasl.password: '{{CLUSTER_API_SECRET}}'
        sasl.username: '{{CLUSTER_API_KEY}}'
        security.protocol: sasl_ssl
    confluentSchemaRegistry:
      type: userPassword
      x-configs:
        basic.auth.user.info: '{{SCHEMA_REGISTRY_API_KEY}}:{{SCHEMA_REGISTRY_API_SECRET}}'
