> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Crear ClickPipe

> **Este endpoint está en beta.** El contrato de la API es estable y no se esperan cambios incompatibles en el futuro. <br /><br /> Crea un nuevo ClickPipe.



## OpenAPI

````yaml /es/_specs/cloud-openapi.json post /v1/organizations/{organizationId}/services/{serviceId}/clickpipes
openapi: 3.0.1
info:
  contact:
    email: support@clickhouse.com
    name: ClickHouse Support
    url: >-
      https://clickhouse.com/docs/en/cloud/manage/openapi?referrer=openapi-299828
  title: OpenAPI spec for ClickHouse Cloud
  version: '1.0'
servers:
  - url: https://api.clickhouse.cloud
security:
  - basicAuth: []
tags:
  - name: Organization
  - name: User management
  - name: Billing
  - name: Service
  - name: Backup
  - name: OpenAPI
  - name: Prometheus
  - name: ClickPipes
paths:
  /v1/organizations/{organizationId}/services/{serviceId}/clickpipes:
    post:
      tags:
        - ClickPipes
      summary: Crear ClickPipe
      description: >-
        **Este endpoint está en beta.** El contrato de la API es estable y no se
        esperan cambios incompatibles en el futuro. <br /><br /> Crea un nuevo
        ClickPipe.
      parameters:
        - description: ID de la organización propietaria del servicio.
          in: path
          name: organizationId
          required: true
          schema:
            format: uuid
            type: string
        - description: ID del servicio para el que se va a crear el ClickPipe.
          in: path
          name: serviceId
          required: true
          schema:
            format: uuid
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClickPipePostRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  requestId:
                    description: ID único asignado a cada solicitud. UUIDv4
                    format: uuid
                    type: string
                  result:
                    $ref: '#/components/schemas/ClickPipe'
                  status:
                    description: Código de estado HTTP.
                    example: 200
                    type: number
                type: object
          description: Respuesta correcta
        '400':
          content:
            application/json:
              schema:
                properties:
                  error:
                    description: Descripción detallada del error.
                    type: string
                  status:
                    description: Código de estado HTTP.
                    example: 400
                    type: number
                type: object
          description: >-
            El server no puede o no quiere procesar la solicitud debido a algo
            que se considera un error del client.
components:
  schemas:
    ClickPipePostRequest:
      properties:
        destination:
          $ref: '#/components/schemas/ClickPipeMutateDestination'
        fieldMappings:
          description: >-
            Correspondencias de campos del ClickPipe. Ten en cuenta que todas
            las columnas de destino deben incluirse en las correspondencias.
          items:
            $ref: '#/components/schemas/ClickPipeFieldMapping'
          type: array
        name:
          description: Nombre del ClickPipe.
          type: string
        scaling:
          $ref: '#/components/schemas/ClickPipeScaling'
        settings:
          $ref: '#/components/schemas/ClickPipeSettings'
        source:
          $ref: '#/components/schemas/ClickPipePostSource'
    ClickPipe:
      properties:
        createdAt:
          description: Fecha de creación del ClickPipe.
          type: string
        destination:
          $ref: '#/components/schemas/ClickPipeDestination'
        fieldMappings:
          description: >-
            Correspondencias de campos del ClickPipe. Tenga en cuenta que todas
            las columnas de destino deben incluirse en las correspondencias.
          items:
            $ref: '#/components/schemas/ClickPipeFieldMapping'
          type: array
        id:
          description: ID único de ClickPipe.
          format: uuid
          type: string
        name:
          description: Nombre del ClickPipe.
          type: string
        scaling:
          $ref: '#/components/schemas/ClickPipeScaling'
        serviceId:
          description: ID del servicio al que pertenece este ClickPipe.
          format: uuid
          type: string
        settings:
          $ref: '#/components/schemas/ClickPipeSettings'
        source:
          $ref: '#/components/schemas/ClickPipeSource'
        state:
          description: Estado actual del ClickPipe.
          type: string
        updatedAt:
          description: Fecha de la última actualización del ClickPipe.
          type: string
    ClickPipeMutateDestination:
      properties:
        columns:
          description: >-
            Columnas de la tabla de destino. Campo obligatorio para todos los
            tipos de pipe excepto Postgres.
          items:
            $ref: '#/components/schemas/ClickPipeDestinationColumn'
          type: array
        database:
          description: Base de datos de destino.
          type: string
        managedTable:
          description: >-
            ¿La tabla está gestionada por ClickPipes? Campo obligatorio para
            todos los tipos de pipe excepto Postgres.
          type: boolean
        roles:
          description: >-
            ClickPipe creará un usuario de ClickHouse con estos roles. Agregue
            aquí sus roles personalizados si es necesario.
          items:
            type: string
          type: array
        table:
          description: >-
            Tabla de destino. Campo obligatorio para todos los tipos de pipe
            excepto Postgres.
          type: string
        tableDefinition:
          $ref: '#/components/schemas/ClickPipeDestinationTableDefinition'
    ClickPipeFieldMapping:
      properties:
        destinationField:
          description: Nombre del campo de destino.
          type: string
        sourceField:
          description: Nombre del campo de origen.
          type: string
    ClickPipeScaling:
      properties:
        concurrency:
          deprecated: true
          description: >-
            Nivel deseado de concurrencia. Solo para pipes de S3. Si se
            establece en 0, la concurrencia se ajusta automáticamente en función
            de la memoria del clúster.
          type: integer
        replicaCpuMillicores:
          description: CPU en milicores para cada réplica. Solo para pipes de streaming.
          maximum: 2000
          minimum: 125
          type: integer
        replicaMemoryGb:
          description: Memoria en GB para cada réplica. Solo para pipes de streaming.
          maximum: 8
          minimum: 0.5
          type: number
        replicas:
          description: Número deseado de réplicas. Solo para pipes escalables.
          type: integer
    ClickPipeSettings:
      properties:
        clickhouse_max_download_threads:
          description: >-
            Máximo de hilos de descarga. Número máximo de hilos de descarga
            concurrentes
          example: 4
          maximum: 32
          minimum: 0
          nullable: true
          type: integer
        clickhouse_max_insert_threads:
          description: >-
            Máximo de hilos de inserción. Número máximo de hilos de inserción
            concurrentes
          example: 1
          maximum: 16
          minimum: 0
          nullable: true
          type: integer
        clickhouse_max_threads:
          description: >-
            Máximo de hilos. Número máximo de hilos concurrentes para el
            procesamiento de archivos
          example: 8
          maximum: 64
          minimum: 0
          nullable: true
          type: integer
        clickhouse_min_insert_block_size_bytes:
          description: >-
            Tamaño mínimo en bytes del bloque de inserción. Tamaño mínimo del
            bloque de datos para la inserción (en bytes)
          example: 1073741824
          maximum: 10737418240
          minimum: 0
          nullable: true
          type: integer
        clickhouse_parallel_distributed_insert_select:
          description: >-
            Inserción SELECT distribuida en paralelo. Configuración de inserción
            SELECT distribuida en paralelo
          example: 2
          maximum: 2
          minimum: 0
          nullable: true
          type: integer
        clickhouse_parallel_view_processing:
          description: >-
            Procesamiento paralelo de vistas. Si se debe habilitar el envío
            concurrente a las vistas adjuntas en lugar de secuencial
          example: false
          nullable: true
          type: boolean
        object_storage_concurrency:
          description: >-
            Concurrencia del almacenamiento de objetos. Número de hilos
            concurrentes para el procesamiento de archivos
          example: 1
          maximum: 35
          minimum: 1
          nullable: true
          type: integer
        object_storage_max_file_count:
          description: >-
            Cantidad máxima de archivos. Número máximo de archivos que se
            procesarán en un único lote de inserción
          example: 100
          maximum: 10000
          minimum: 1
          nullable: true
          type: integer
        object_storage_max_insert_bytes:
          description: >-
            Máximo de bytes por inserción. Número de bytes que se procesarán en
            un único lote de inserción
          example: 10737418240
          maximum: 53687091200
          minimum: 10485760
          nullable: true
          type: integer
        object_storage_polling_interval_ms:
          description: >-
            Intervalo de sondeo del almacenamiento de objetos. Configura el
            intervalo de actualización para consultar la ingesta continua de
            nuevos datos desde el almacenamiento de objetos
          example: 30000
          maximum: 3600000
          minimum: 100
          nullable: true
          type: integer
        object_storage_use_cluster_function:
          description: >-
            Usar la función cluster. Si se debe usar la función cluster de
            ClickHouse para el procesamiento distribuido
          example: true
          nullable: true
          type: boolean
        streaming_max_insert_wait_ms:
          description: >-
            Tiempo máximo de espera para inserciones de streaming. Configura el
            tiempo máximo de espera antes de insertar datos en ClickHouse.
          example: 5000
          maximum: 60000
          minimum: 500
          nullable: true
          type: integer
    ClickPipePostSource:
      properties:
        kafka:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipePostKafkaSource'
        kinesis:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipePostKinesisSource'
        objectStorage:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipePostObjectStorageSource'
        postgres:
          $ref: '#/components/schemas/ClickPipeMutatePostgresSource'
        validateSamples:
          description: >-
            Valida las muestras de datos recibidas del origen de datos. Validará
            la conexión, así como la disponibilidad y la corrección de los
            datos. Si no está habilitado, solo se validará la conexión. Esto no
            tiene efecto en los pipes de Postgres; siempre validan únicamente la
            conexión y las definiciones de tabla. Esto es experimental y podría
            eliminarse en el futuro.
          type: boolean
    ClickPipeDestination:
      properties:
        columns:
          description: >-
            Columnas de la tabla de destino. Campo obligatorio para todos los
            tipos de pipe excepto Postgres.
          items:
            $ref: '#/components/schemas/ClickPipeDestinationColumn'
          type: array
        database:
          description: Base de datos de destino.
          type: string
        managedTable:
          description: >-
            ¿La tabla está gestionada por ClickPipes? Campo obligatorio para
            todos los tipos de pipe excepto Postgres.
          type: boolean
        table:
          description: >-
            Tabla de destino. Campo obligatorio para todos los tipos de pipe
            excepto Postgres.
          type: string
        tableDefinition:
          $ref: '#/components/schemas/ClickPipeDestinationTableDefinition'
    ClickPipeSource:
      properties:
        kafka:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipeKafkaSource'
        kinesis:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipeKinesisSource'
        objectStorage:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipeObjectStorageSource'
        postgres:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipePostgresSource'
    ClickPipeDestinationColumn:
      properties:
        name:
          description: Nombre de la columna.
          type: string
        type:
          description: Tipo de la columna.
          type: string
    ClickPipeDestinationTableDefinition:
      properties:
        engine:
          $ref: '#/components/schemas/ClickPipeDestinationTableEngine'
        partitionBy:
          description: Expresión SQL de la clave de partición.
          type: string
        primaryKey:
          description: Clave primaria de la expresión SQL.
          type: string
        sortingKey:
          description: Clave de ordenación de la tabla de destino. Lista de columnas.
          items:
            type: string
          type: array
    ClickPipePostKafkaSource:
      properties:
        authentication:
          description: >-
            Método de autenticación del source de Kafka. Métodos de
            autenticación compatibles: kafka: PLAIN, SCRAM-SHA-256,
            SCRAM-SHA-512, MUTUAL_TLS, msk: SCRAM-SHA-512, IAM_ROLE, IAM_USER,
            MUTUAL_TLS, confluent: PLAIN, MUTUAL_TLS, warpstream: PLAIN,
            azureeventhub: PLAIN, redpanda: SCRAM-SHA-256, SCRAM-SHA-512,
            MUTUAL_TLS, dokafka: SCRAM-SHA-256, MUTUAL_TLS
          enum:
            - PLAIN
            - SCRAM-SHA-256
            - SCRAM-SHA-512
            - IAM_ROLE
            - IAM_USER
            - MUTUAL_TLS
          type: string
        brokers:
          description: Brókeres del source de Kafka.
          type: string
        caCertificate:
          description: >-
            Certificados de CA codificados en PEM para validar el certificado
            del broker.
          nullable: true
          type: string
        consumerGroup:
          description: >-
            Consumer group del source de Kafka. Si no se proporciona, se usará
            "clickpipes-<<ID>>".
          example: my-clickpipe-consumer-group
          nullable: true
          type: string
        credentials:
          description: >-
            Credenciales para el source de Kafka. Elija una de las compatibles
            con el método de autenticación.
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/PLAIN'
            - $ref: '#/components/schemas/MskIamUser'
            - $ref: '#/components/schemas/AzureEventHub'
        format:
          description: Formato del source de Kafka.
          enum:
            - JSONEachRow
            - Avro
            - AvroConfluent
          type: string
        iamRole:
          description: >-
            IAM role para el source de Kafka. Úselo con autenticación de IAM
            role. Lea más en la documentación de ClickPipes:
            https://clickhouse.com/docs/en/integrations/clickpipes/kafka#iam
          example: arn:aws:iam::123456789012:role/MyRole
          nullable: true
          type: string
        offset:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipeKafkaOffset'
        reversePrivateEndpointIds:
          description: >-
            UUIDs de Reverse Private Endpoint usados para una conexión privada
            segura al source de Kafka.
          items:
            type: string
          type: array
        schemaRegistry:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipeMutateKafkaSchemaRegistry'
        topics:
          description: Topics del source de Kafka.
          type: string
        type:
          description: Tipo del source de Kafka.
          enum:
            - kafka
            - redpanda
            - msk
            - confluent
            - warpstream
            - azureeventhub
            - dokafka
          type: string
    ClickPipePostKinesisSource:
      properties:
        accessKey:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/MskIamUser'
        authentication:
          description: Método de autenticación que se usará con el Kinesis Stream.
          enum:
            - IAM_ROLE
            - IAM_USER
          type: string
        format:
          description: Formato del Kinesis Stream.
          enum:
            - JSONEachRow
            - Avro
            - AvroConfluent
          type: string
        iamRole:
          description: >-
            Rol de IAM que se usará para la autenticación. Obligatorio si se usa
            IAM_ROLE.
          example: arn:aws:iam::123456789012:role/MyRole
          nullable: true
          type: string
        iteratorType:
          description: >-
            Tipo de iterador que se usará al leer desde el Kinesis Stream. Si se
            usa AT_TIMESTAMP, se debe proporcionar el campo timestamp.
          enum:
            - TRIM_HORIZON
            - LATEST
            - AT_TIMESTAMP
          type: string
        region:
          description: Región de AWS del Kinesis Stream.
          example: us-east-1
          type: string
        streamName:
          description: Nombre del Kinesis Stream.
          example: my-stream
          type: string
        timestamp:
          description: >-
            Unix timestamp para empezar a leer desde el Kinesis Stream.
            Obligatorio si iteratorType es AT_TIMESTAMP.
          example: 1615766400
          nullable: true
          type: integer
        useEnhancedFanOut:
          description: Use fan-out mejorado para el Kinesis Stream.
          nullable: true
          type: boolean
    ClickPipePostObjectStorageSource:
      properties:
        accessKey:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/MskIamUser'
        authentication:
          description: >-
            Método de autenticación. CONNECTION_STRING es para Azure Blob
            Storage. IAM_ROLE e IAM_USER son para AWS S3/GCS/DigitalOcean. Si no
            se proporciona, no se usa autenticación.
          enum:
            - IAM_ROLE
            - IAM_USER
            - CONNECTION_STRING
          nullable: true
          type: string
        azureContainerName:
          description: >-
            Nombre del contenedor de Azure Blob Storage. Obligatorio cuando type
            es azureblobstorage.
          example: mycontainer
          nullable: true
          type: string
        compression:
          description: Algoritmo de compresión usado para los archivos.
          enum:
            - gzip
            - gz
            - brotli
            - br
            - xz
            - LZMA
            - zstd
            - auto
          example: auto
          nullable: true
          type: string
        connectionString:
          description: >-
            Connection string para la autenticación de Azure Blob Storage.
            Obligatoria cuando authentication es CONNECTION_STRING.
          example: >-
            DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net
          nullable: true
          type: string
        delimiter:
          description: Delimitador usado en los archivos.
          example: ','
          nullable: true
          type: string
        format:
          description: Formato de los archivos.
          enum:
            - JSONEachRow
            - JSONAsObject
            - CSV
            - CSVWithNames
            - Parquet
            - Avro
          type: string
        iamRole:
          description: >-
            IAM role que se utilizará con la autenticación mediante IAM role.
            Más información en la documentación de ClickPipes:
            https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#authentication
          example: arn:aws:iam::123456789012:role/MyRole
          nullable: true
          type: string
        isContinuous:
          description: >-
            Si se establece en true, el pipe leerá continuamente los archivos
            nuevos del origen. Si se establece en false, el pipe leerá los
            archivos solo una vez. Los archivos nuevos deben cargarse en orden
            lexicográfico.
          nullable: true
          type: boolean
        path:
          description: >-
            Ruta a los archivos dentro del contenedor de Azure. Se usa para
            Sources de Azure Blob Storage. Puede especificar varios archivos
            mediante comodines de estilo bash. Para obtener más información,
            consulte la documentación sobre el uso de comodines en la ruta:
            https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#limitations
          example: data/logs/*.json
          nullable: true
          type: string
        queueUrl:
          description: >-
            URL de la cola SQS para la ingestión continua basada en eventos.
            Cuando se proporciona, los archivos se ingestan según las
            notificaciones de eventos de S3 en lugar de seguir un orden
            lexicográfico. Solo se aplica cuando isContinuous es true y la
            autenticación no es pública.
          example: https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue
          nullable: true
          type: string
        type:
          description: Tipo de la fuente de ObjectStorage.
          enum:
            - s3
            - gcs
            - dospaces
            - azureblobstorage
          type: string
        url:
          description: >-
            Proporcione la ruta de los archivos que desea ingestar. Puede
            especificar varios archivos mediante comodines de estilo bash. Para
            obtener más información, consulte la documentación sobre el uso de
            comodines en la ruta:
            https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#limitations
          example: >-
            https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz
          type: string
    ClickPipeMutatePostgresSource:
      properties:
        credentials:
          $ref: '#/components/schemas/PLAIN'
        database:
          description: Base de datos de la instancia de Postgres a la que se conectará.
          type: string
        host:
          description: Host de la instancia de Postgres a la que se conectará.
          type: string
        port:
          description: Puerto de la instancia de Postgres a la que se conectará.
          type: number
        settings:
          $ref: '#/components/schemas/ClickPipePostgresPipeSettings'
        tableMappings:
          description: Correspondencias de tablas para el pipe de Postgres.
          items:
            $ref: '#/components/schemas/ClickPipePostgresPipeTableMapping'
          type: array
    ClickPipeKafkaSource:
      properties:
        authentication:
          description: >-
            Método de autenticación del source de Kafka. Métodos de
            autenticación compatibles: kafka: PLAIN, SCRAM-SHA-256,
            SCRAM-SHA-512, MUTUAL_TLS, msk: SCRAM-SHA-512, IAM_ROLE, IAM_USER,
            MUTUAL_TLS, confluent: PLAIN, MUTUAL_TLS, warpstream: PLAIN,
            azureeventhub: PLAIN, redpanda: SCRAM-SHA-256, SCRAM-SHA-512,
            MUTUAL_TLS, dokafka: SCRAM-SHA-256, MUTUAL_TLS
          enum:
            - PLAIN
            - SCRAM-SHA-256
            - SCRAM-SHA-512
            - IAM_ROLE
            - IAM_USER
            - MUTUAL_TLS
          type: string
        brokers:
          description: Brókeres del source de Kafka.
          type: string
        caCertificate:
          description: >-
            Certificados de CA codificados en PEM para validar el certificado
            del broker.
          nullable: true
          type: string
        consumerGroup:
          description: >-
            Consumer group del source de Kafka. Si no se proporciona, se usará
            "clickpipes-<<ID>>".
          example: my-clickpipe-consumer-group
          nullable: true
          type: string
        format:
          description: Formato del source de Kafka.
          enum:
            - JSONEachRow
            - Avro
            - AvroConfluent
          type: string
        iamRole:
          description: >-
            IAM role para el source de Kafka. Úselo con autenticación de IAM
            role. Lea más en la documentación de ClickPipes:
            https://clickhouse.com/docs/en/integrations/clickpipes/kafka#iam
          example: arn:aws:iam::123456789012:role/MyRole
          nullable: true
          type: string
        offset:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipeKafkaOffset'
        reversePrivateEndpointIds:
          description: >-
            UUIDs de Reverse Private Endpoint usados para una conexión privada
            segura al source de Kafka.
          items:
            type: string
          type: array
        schemaRegistry:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ClickPipeKafkaSchemaRegistry'
        topics:
          description: Topics del source de Kafka.
          type: string
        type:
          description: Tipo del source de Kafka.
          enum:
            - kafka
            - redpanda
            - msk
            - confluent
            - warpstream
            - azureeventhub
            - dokafka
          type: string
    ClickPipeKinesisSource:
      properties:
        authentication:
          description: Método de autenticación que se usará con el Kinesis Stream.
          enum:
            - IAM_ROLE
            - IAM_USER
          type: string
        format:
          description: Formato del Kinesis Stream.
          enum:
            - JSONEachRow
            - Avro
            - AvroConfluent
          type: string
        iamRole:
          description: >-
            Rol de IAM que se usará para la autenticación. Obligatorio si se usa
            IAM_ROLE.
          example: arn:aws:iam::123456789012:role/MyRole
          nullable: true
          type: string
        iteratorType:
          description: >-
            Tipo de iterador que se usará al leer desde el Kinesis Stream. Si se
            usa AT_TIMESTAMP, se debe proporcionar el campo timestamp.
          enum:
            - TRIM_HORIZON
            - LATEST
            - AT_TIMESTAMP
          type: string
        region:
          description: Región de AWS del Kinesis Stream.
          example: us-east-1
          type: string
        streamName:
          description: Nombre del Kinesis Stream.
          example: my-stream
          type: string
        timestamp:
          description: >-
            Unix timestamp para empezar a leer desde el Kinesis Stream.
            Obligatorio si iteratorType es AT_TIMESTAMP.
          example: 1615766400
          nullable: true
          type: integer
        useEnhancedFanOut:
          description: Use fan-out mejorado para el Kinesis Stream.
          nullable: true
          type: boolean
    ClickPipeObjectStorageSource:
      properties:
        authentication:
          description: >-
            Método de autenticación. CONNECTION_STRING es para Azure Blob
            Storage. IAM_ROLE e IAM_USER son para AWS S3/GCS/DigitalOcean. Si no
            se proporciona, no se usa autenticación.
          enum:
            - IAM_ROLE
            - IAM_USER
            - CONNECTION_STRING
          nullable: true
          type: string
        azureContainerName:
          description: >-
            Nombre del contenedor para Azure Blob Storage. Obligatorio cuando
            type es azureblobstorage.
          example: mycontainer
          nullable: true
          type: string
        compression:
          description: Algoritmo de compresión usado para los archivos.
          enum:
            - gzip
            - gz
            - brotli
            - br
            - xz
            - LZMA
            - zstd
            - auto
          example: auto
          nullable: true
          type: string
        connectionString:
          description: >-
            Cadena de conexión para la autenticación de Azure Blob Storage.
            Obligatorio cuando authentication es CONNECTION_STRING.
          example: >-
            DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net
          nullable: true
          type: string
        delimiter:
          description: Delimitador usado en los archivos.
          example: ','
          nullable: true
          type: string
        format:
          description: Formato de los archivos.
          enum:
            - JSONEachRow
            - JSONAsObject
            - CSV
            - CSVWithNames
            - Parquet
            - Avro
          type: string
        iamRole:
          description: >-
            Rol de IAM que se usará con la autenticación mediante rol de IAM.
            Lea más en la documentación de ClickPipes:
            https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#authentication
          example: arn:aws:iam::123456789012:role/MyRole
          nullable: true
          type: string
        isContinuous:
          description: >-
            Si se establece en true, el pipe leerá continuamente archivos nuevos
            de la fuente. Si se establece en false, el pipe leerá los archivos
            solo una vez. Los archivos nuevos deben cargarse en orden
            lexicográfico.
          nullable: true
          type: boolean
        path:
          description: >-
            Ruta a los archivos dentro del contenedor de Azure. Se usa para
            fuentes de Azure Blob Storage. Puede especificar varios archivos
            mediante comodines de estilo bash. Para obtener más información,
            consulte la documentación sobre el uso de comodines en rutas:
            https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#limitations
          example: data/logs/*.json
          nullable: true
          type: string
        queueUrl:
          description: >-
            URL de la cola de SQS para la ingestión continua basada en eventos.
            Cuando se proporciona, los archivos se ingestan según las
            notificaciones de eventos de S3 en lugar de por orden lexicográfico.
            Solo se aplica cuando isContinuous es true y la autenticación no es
            public.
          example: https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue
          nullable: true
          type: string
        type:
          description: Tipo de la fuente de ObjectStorage.
          enum:
            - s3
            - gcs
            - dospaces
            - azureblobstorage
          type: string
        url:
          description: >-
            Proporcione una ruta a los archivos que desea ingestar. Puede
            especificar varios archivos mediante comodines de estilo bash. Para
            obtener más información, consulte la documentación sobre el uso de
            comodines en rutas:
            https://clickhouse.com/docs/en/integrations/clickpipes/object-storage#limitations
          example: >-
            https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz
          type: string
    ClickPipePostgresSource:
      properties:
        database:
          description: Base de datos de la instancia de Postgres a la que se conectará.
          type: string
        host:
          description: Host de la instancia de Postgres a la que se conectará.
          type: string
        port:
          description: Puerto de la instancia de Postgres a la que se conectará.
          type: number
        settings:
          $ref: '#/components/schemas/ClickPipePostgresPipeSettings'
        tableMappings:
          description: Correspondencias de tablas para el pipe de Postgres.
          items:
            $ref: '#/components/schemas/ClickPipePostgresPipeTableMapping'
          type: array
    ClickPipeDestinationTableEngine:
      properties:
        columnIds:
          description: >-
            Nombres de las columnas que se sumarán para el motor
            SummingMergeTree.
          items:
            type: string
          type: array
        type:
          description: Tipo de motor de la tabla de destino.
          enum:
            - MergeTree
            - ReplacingMergeTree
            - SummingMergeTree
            - 'Null'
          type: string
        versionColumnId:
          description: >-
            Nombre de la columna que se usará como versión para el motor
            ReplacingMergeTree.
          nullable: true
          type: string
    PLAIN:
      properties:
        password:
          description: Contraseña.
          type: string
        username:
          description: Nombre de usuario.
          type: string
    MskIamUser:
      properties:
        accessKeyId:
          description: ID de la clave de acceso de IAM.
          type: string
        secretKey:
          description: Clave secreta de IAM.
          type: string
    AzureEventHub:
      properties:
        connectionString:
          description: Cadena de conexión para el source de Azure EventHub.
          type: string
    ClickPipeKafkaOffset:
      properties:
        strategy:
          description: Estrategia de offset.
          enum:
            - from_beginning
            - from_latest
            - from_timestamp
          type: string
        timestamp:
          description: >-
            Timestamp UTC con precisión de minuto desde el que se debe empezar.
            Obligatorio para la estrategia "from_timestamp".
          example: 2021-01-01T00:00
          nullable: true
          type: string
    ClickPipeMutateKafkaSchemaRegistry:
      properties:
        authentication:
          description: Tipo de autenticación del schema registry.
          enum:
            - PLAIN
          type: string
        caCertificate:
          description: >-
            Certificados de CA codificados en PEM para validar el certificado
            del schema registry.
          nullable: true
          type: string
        credentials:
          $ref: '#/components/schemas/ClickPipeKafkaSchemaRegistryCredentials'
        url:
          description: URL del esquema. Se requiere HTTPS.
          example: https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004
          type: string
    ClickPipePostgresPipeSettings:
      properties:
        allowNullableColumns:
          description: Permitir columnas Nullable en la tabla de destino.
          type: boolean
        enableFailoverSlots:
          description: >-
            Habilita la conmutación por error para el replication slot creado.
            Requiere que NO se configure un replication slot.
          type: boolean
        initialLoadParallelism:
          description: >-
            Número de tablas paralelas que se sincronizarán durante la carga
            inicial.
          type: number
        publicationName:
          description: Nombre de la publicación que se usará para la replicación.
          type: string
        pullBatchSize:
          description: Número de filas que se extraerán en cada lote.
          type: number
        replicationMode:
          description: Modo de replicación que se usará para el pipe.
          enum:
            - cdc
            - snapshot
            - cdc_only
          type: string
        replicationSlotName:
          description: Nombre del replication slot que se usará para la replicación.
          type: string
        snapshotNumRowsPerPartition:
          description: Número de filas para generar un snapshot por partición.
          type: number
        snapshotNumberOfParallelTables:
          description: Número de tablas paralelas para generar snapshots.
          type: number
        syncIntervalSeconds:
          description: Intervalo, en segundos, para sincronizar datos desde Postgres.
          type: number
    ClickPipePostgresPipeTableMapping:
      properties:
        excludedColumns:
          description: Columnas que se excluirán de la tabla de destino.
          items:
            type: string
          type: array
        sortingKeys:
          description: >-
            Lista ordenada de columnas que se usarán como clave de ordenación de
            la tabla de destino.
          items:
            type: string
          type: array
        sourceSchemaName:
          description: Nombre del esquema de origen.
          type: string
        sourceTable:
          description: Nombre de la tabla de origen.
          type: string
        tableEngine:
          description: Motor de tabla que se usará para la tabla de destino.
          enum:
            - MergeTree
            - ReplacingMergeTree
            - 'Null'
          type: string
        targetTable:
          description: Nombre de la tabla de destino.
          type: string
        useCustomSortingKey:
          description: >-
            Indica si se debe usar una clave de ordenación personalizada para la
            tabla de destino.
          type: boolean
    ClickPipeKafkaSchemaRegistry:
      properties:
        authentication:
          description: Tipo de autenticación del schema registry.
          enum:
            - PLAIN
          type: string
        caCertificate:
          description: >-
            Certificados de CA codificados en PEM para validar el certificado
            del schema registry.
          nullable: true
          type: string
        url:
          description: URL del esquema. Se requiere HTTPS.
          example: https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004
          type: string
    ClickPipeKafkaSchemaRegistryCredentials:
      properties:
        password:
          description: Contraseña del schema registry.
          type: string
        username:
          description: Nombre de usuario del schema registry.
          type: string
  securitySchemes:
    basicAuth:
      description: >-
        Usa el ID de la clave y el secreto de la clave obtenidos en la consola
        de ClickHouse Cloud: https://clickhouse.com/docs/cloud/manage/openapi
      scheme: basic
      type: http

````