Cognite Sources API

A hosted extractor **source** represents an external source system on the internet. The **source** resource in CDF contains all the information the extractor needs to connect to the external source system. A source can have many jobs, each streaming different data from the source system.

Operations 5

GET /hostedextractors/sources List Sources #
POST /hostedextractors/sources Create Sources #
POST /hostedextractors/sources/byIds Retrieve Sources #
POST /hostedextractors/sources/delete Delete Sources #
POST /hostedextractors/sources/update Update Sources #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cognite-sources-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

cognite-sources-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cognite 3D Asset Mapping Sources API
  description: "# Introduction\nThis is the reference documentation for the Cognite API with\nan overview of all the available methods.\n\n# Postman\nSelect the **Download** button to download our OpenAPI specification to get started.\n\nTo import your data into Postman, select **Import**, and the Import modal opens.\nYou can import items by dragging or dropping files or folders. You can choose how to import your API and manage the import settings in **View Import Settings**.\n\nIn the Import Settings, set the **Folder organization** to **Tags**, select\n**Enable optional parameters** to turn off the settings, and select **Always inherit authentication** to turn on the settings. Select **Import**.\n\nSet the Authorization to **Oauth2.0**. By default, the settings are for Open Industrial Data. Navigate to [Cognite Hub](https://hub.cognite.com/open-industrial-data-211) to understand how to get the credentials for use in Postman.\n\nFor more information, see [Getting Started with Postman](https://developer.cognite.com/dev/guides/postman/).\n\n# Pagination\nMost resource types can be paginated, indicated by the field `nextCursor` in the response.\nBy passing the value of `nextCursor` as the cursor you will get the next page of `limit` results.\nNote that all parameters except `cursor` has to stay the same.\n\n# Parallel retrieval\nAs general guidance, Parallel Retrieval is a technique that should be used when due to query complexity, retrieval of data in a single request is significantly slower than it would otherwise be for a simple request.  Parallel retrieval does not act as a speed multiplier on optimally running queries.  By parallelizing such requests, data retrieval performance can be tuned to meet the client application needs. \n\nCDF supports parallel retrieval through the `partition` parameter, which has the format `m/n` where `n` is the amount of partitions you would like to split the entire data set into.\nIf you want to download the entire data set by splitting it into 10 partitions, do the following in parallel with `m` running from 1 to 10:\n  - Make a request to `/events` with `partition=m/10`.\n  - Paginate through the response by following the cursor as explained above. Note that the `partition` parameter needs to be passed to all subqueries.\n\nProcessing of parallel retrieval requests is subject to concurrency quota availability. The request returns the `429` response upon exceeding concurrency limits. See the Request throttling chapter below.\n\nTo prevent unexpected problems and to maximize read throughput, you should at most use 10 partitions. \nSome CDF resources will automatically enforce a maximum of 10 partitions.\nFor more specific and detailed information, please read the ```partition``` attribute documentation for the CDF resource you're using.  \n\n# Requests throttling\nCognite Data Fusion (CDF) returns the HTTP `429` (too many requests) response status code when project capacity exceeds the limit.\n\nThe throttling can happen:\n  - If a user or a project sends too many (more than allocated) concurrent requests.\n  - If a user or a project sends a too high (more than allocated) rate of requests in a given amount of time.\n\nCognite recommends using a retry strategy based on truncated exponential backoff to handle sessions with HTTP response codes 429.\n\nCognite recommends using a reasonable number (up to 10) of  `Parallel retrieval` partitions.\n\nFollowing these strategies lets you slow down the request frequency to maximize productivity without having to re-submit/retry failing requests.\n\nSee more [here](https://docs.cognite.com/dev/concepts/resource_throttling).\n\n# API versions\n## Version headers\nThis API uses calendar versioning, and version names follow the `YYYYMMDD` format.\nYou can find the versions currently available by using the version selector at the top of this page.\n\nTo use a specific API version, you can pass the `cdf-version: $version` header along with your requests to the API.\n\n## Beta versions\nThe beta versions provide a preview of what the stable version will look like in the future.\nBeta versions contain functionality that is reasonably mature, and highly likely to become a part of the stable API.\n\nBeta versions are indicated by a `-beta` suffix after the version name. For example, the beta version header for the\n2023-01-01 version is then `cdf-version: 20230101-beta`.\n\n## Alpha versions\nAlpha versions contain functionality that is new and experimental, and not guaranteed to ever become a part of the stable API.\nThis functionality presents no guarantee of service, so its use is subject to caution.\n\nAlpha versions are indicated by an `-alpha` suffix after the version name. For example, the alpha version header for\nthe 2023-01-01 version is then `cdf-version: 20230101-alpha`."
  version: v1
  contact:
    name: Cognite Support
    url: https://support.cognite.com
    email: support@cognite.com
servers:
- url: https://{cluster}.cognitedata.com/api/v1/projects/{project}
  description: The URL for the CDF cluster to connect to
  variables:
    cluster:
      enum:
      - api
      - az-tyo-gp-001
      - az-eastus-1
      - az-power-no-northeurope
      - westeurope-1
      - asia-northeast1-1
      - gc-dsm-gp-001
      default: api
      description: The CDF cluster to connect to
    project:
      default: publicdata
      description: The CDF project name.
security:
- oidc-token:
  - https://{cluster}.cognitedata.com/.default
- oauth2-client-credentials:
  - https://{cluster}.cognitedata.com/.default
- oauth2-open-industrial-data:
  - https://api.cognitedata.com/.default
- oauth2-auth-code:
  - https://{cluster}.cognitedata.com/.default
tags:
- name: Sources
  description: 'A hosted extractor **source** represents an external source system on the internet. The **source** resource in CDF contains all the information the extractor needs to connect to the external source system.

    A source can have many jobs, each streaming different data from the source system.'
paths:
  /hostedextractors/sources:
    get:
      tags:
      - Sources
      operationId: list_sources
      x-capability:
      - hostedExtractors:READ
      description: '


        > **Required capabilities:** `hostedExtractors:READ`


        List all sources in a given project. If more than `limit` sources exist, a cursor for pagination will be returned with the response.'
      parameters:
      - $ref: '#/components/parameters/100Limit'
      - $ref: '#/components/parameters/Cursor'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemsWithCursor_Source_'
          description: List of sources and an optional cursor.
        '400':
          $ref: '#/components/responses/400ErrorResponse'
          description: Response for a failed request
        '422':
          $ref: '#/components/responses/ErrorResponse'
          description: Validation Error
      summary: List Sources
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: "source_list = client.hosted_extractors.sources.list(limit=5)\n\nfor source in client.hosted_extractors.sources:\n    source # do something with the source\n\nfor source_list in client.hosted_extractors.sources(chunk_size=25):\n    source_list # do something with the sources\n"
    post:
      tags:
      - Sources
      operationId: create_sources
      x-capability:
      - hostedExtractors:READ
      description: '


        > **Required capabilities:** `hostedExtractors:READ`


        Create up to 100 sources.'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Items_CreateSource_'
        required: true
        description: Sources to create.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Items_Source_'
          description: List of created sources.
        '400':
          $ref: '#/components/responses/400ErrorResponse'
        '422':
          $ref: '#/components/responses/ValidationError'
      summary: Create Sources
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: 'from cognite.client.data_classes.hosted_extractors import EventHubSourceWrite

          source = EventHubSourceWrite(''my_event_hub'', ''http://myeventhub.com'', "My EventHub", ''my_key'', ''my_value'')

          res = client.hosted_extractors.sources.create(source)

          '
  /hostedextractors/sources/byIds:
    post:
      tags:
      - Sources
      operationId: retrieve_sources
      x-capability:
      - hostedExtractors:READ
      description: '


        > **Required capabilities:** `hostedExtractors:READ`


        Retrieve a list of up to 100 sources by their external ID, optionally ignoring unknown IDs.'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemsWithIgnoreUnknownIds_ExternalId_'
        required: true
        description: List of external IDs of sources to retrieve.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Items_Source_'
          description: List of retrieved sources.
        '400':
          $ref: '#/components/responses/400ErrorResponse'
        '422':
          $ref: '#/components/responses/ValidationError'
      summary: Retrieve Sources
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: 'res = client.hosted_extractors.sources.retrieve(''myMQTTSource'')


          res = client.hosted_extractors.sources.retrieve(["myMQTTSource", "MyEventHubSource"], ignore_unknown_ids=True)

          '
  /hostedextractors/sources/delete:
    post:
      tags:
      - Sources
      operationId: delete_sources
      x-capability:
      - hostedExtractors:WRITE
      description: '


        > **Required capabilities:** `hostedExtractors:WRITE`


        Delete a list of sources by their external ID. This operation will fail if any destination in the request is associated with a job, unless the `force` query parameter is set to `true`.'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemsWithIgnoreUnknownIdsAndForce_ExternalId_'
        required: true
        description: List of external IDs of sources to delete.
      responses:
        '200':
          $ref: '#/components/responses/EmptyResponse'
          description: Empty response
        '400':
          $ref: '#/components/responses/400ErrorResponse'
        '422':
          $ref: '#/components/responses/ValidationError'
      summary: Delete Sources
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: 'client.hosted_extractors.sources.delete(["myMQTTSource", "MyEventHubSource"])

          '
  /hostedextractors/sources/update:
    post:
      tags:
      - Sources
      operationId: update_sources
      x-capability:
      - hostedExtractors:WRITE
      description: '


        > **Required capabilities:** `hostedExtractors:WRITE`


        Update up to 100 sources.'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Items_UpdateSource_'
        description: Sources to update.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Items_Source_'
          description: List of updated sources.
        '400':
          $ref: '#/components/responses/400ErrorResponse'
        '422':
          $ref: '#/components/responses/ValidationError'
      summary: Update Sources
      x-code-samples:
      - lang: Python
        label: Python SDK
        source: 'from cognite.client.data_classes.hosted_extractors import EventHubSourceUpdate

          source = EventHubSourceUpdate(''my_event_hub'').event_hub_name.set("My Updated EventHub")

          res = client.hosted_extractors.sources.update(source)

          '
components:
  schemas:
    UpdateEventHubSourceItem:
      additionalProperties: false
      properties:
        type:
          enum:
          - eventhub
          title: Type
          type: string
          description: Source type.
        externalId:
          $ref: '#/components/schemas/CogniteExternalId'
        update:
          $ref: '#/components/schemas/UpdateEventHubSource'
      required:
      - type
      - externalId
      - update
      title: UpdateEventHubSourceItem
      type: object
    UpdateKafkaSource:
      additionalProperties: false
      properties:
        bootstrapBrokers:
          $ref: '#/components/schemas/UpdateItem_KafkaBrokers_'
        authentication:
          anyOf:
          - $ref: '#/components/schemas/UpdateItem_KafkaAuthentication_'
          - $ref: '#/components/schemas/UpdateSetNull'
          title: Authentication
          description: Set or remove the credentials used for authentication.
        useTls:
          additionalProperties: false
          properties:
            set:
              title: Set
              type: boolean
          required:
          - set
          type: object
          description: Enable or disable TLS to the Kafka broker.
        caCertificate:
          anyOf:
          - $ref: '#/components/schemas/UpdateItem_CACertificate_'
          - $ref: '#/components/schemas/UpdateSetNull'
        authCertificate:
          anyOf:
          - $ref: '#/components/schemas/UpdateItem_AuthCertificate_'
          - $ref: '#/components/schemas/UpdateSetNull'
    UpdateItem_RestScheme_:
      additionalProperties: false
      properties:
        set:
          title: Set
          type: string
          enum:
          - http
          - https
      required:
      - set
      title: UpdateItem_RestScheme
      type: object
      description: Set a new scheme for this source to use
    CreateClientCredentialsAuthentication:
      additionalProperties: false
      properties:
        type:
          enum:
          - clientCredentials
          title: Type
          type: string
          description: Authentication type.
        clientId:
          title: Client ID
          description: Client ID for for the service principal used by the extractor
          type: string
        clientSecret:
          title: Client secret
          description: Client secret for for the service principal used by the extractor
          type: string
        tokenUrl:
          title: Token URL
          description: URL to fetch authentication tokens from
          type: string
        scopes:
          title: Scopes
          description: A space separated list of scopes
          type: string
        defaultExpiresIn:
          title: Default expires in
          description: Default value for the expires_in OAuth 2.0 parameter. If the identity provider does not return expires_in in token requests, this parameter must be set or the request will fail.
          type: string
      required:
      - clientId
      - clientSecret
      - tokenUrl
      - scopes
      - type
      title: CreateClientCredentialsAuthentication
      type: object
    UpdateItem_KafkaAuthentication_:
      additionalProperties: false
      properties:
        set:
          $ref: '#/components/schemas/KafkaAuthenticationWrite'
      required:
      - set
      title: UpdateItem_KafkaAuthentication
      type: object
      description: Set new credentials for authenticating with the broker.
    SimpleBasicAuthentication:
      additionalProperties: false
      type: object
      title: BasicAuthentication
      description: Username and password authentication.
      properties:
        type:
          enum:
          - basic
          title: Type
          type: string
          description: Authentication type
        username:
          type: string
          title: Username
          description: Username used for authenticating with the broker.
          maxLength: 200
      required:
      - username
      - type
    Items_CreateSource_:
      additionalProperties: false
      properties:
        items:
          items:
            discriminator:
              mapping:
                eventhub: '#/components/schemas/CreateEventHubSource'
                mqtt3: '#/components/schemas/CreateMqttV3Source'
                mqtt5: '#/components/schemas/CreateMqttV5Source'
                rest: '#/components/schemas/CreateRestSource'
                kafka: '#/components/schemas/CreateKafkaSource'
              propertyName: type
            oneOf:
            - $ref: '#/components/schemas/CreateMqttV3Source'
            - $ref: '#/components/schemas/CreateMqttV5Source'
            - $ref: '#/components/schemas/CreateEventHubSource'
            - $ref: '#/components/schemas/CreateRestSource'
            - $ref: '#/components/schemas/CreateKafkaSource'
          title: Items
          type: array
          minItems: 1
          maxItems: 10
      required:
      - items
      title: CreateSourceList
      type: object
    UpdateItem_CACertificate_:
      additionalProperties: false
      properties:
        set:
          $ref: '#/components/schemas/CACertificate'
      required:
      - set
      title: UpdateItem_CACertificate
      type: object
      description: Set a new certificate authority.
    CreateEventHubSource:
      additionalProperties: false
      properties:
        type:
          enum:
          - eventhub
          title: Type
          type: string
          description: Source type.
        externalId:
          $ref: '#/components/schemas/CogniteExternalId'
        host:
          title: Host
          type: string
          description: Host name or IP address of the event hub consumer endpoint.
          example: iothub-ns-myhub-12345678-12345abcde.servicebus.windows.net
          maxLength: 200
        eventHubName:
          title: Eventhubname
          type: string
          description: Name of the event hub
          example: myhub
          maxLength: 200
        keyName:
          title: KeyName
          type: string
          description: The name of the Event Hub key to use for authentication. This parameter is deprecated, use `username` under basic authentication instead.
          example: iothubowner
          maxLength: 200
          deprecated: true
        keyValue:
          title: KeyValue
          type: string
          description: Value of the Event Hub key to use for authentication. This parameter is deprecated, use `password` under basic authentication instead.
          maxLength: 200
          deprecated: true
        authentication:
          $ref: '#/components/schemas/EventhubAuthenticationWrite'
        consumerGroup:
          type: string
          title: ConsumerGroup
          description: The event hub consumer group to use. Microsoft recommends having a distinct consumer group for each application consuming data from event hub. If left out, this uses the default consumer group.
          maxLength: 200
      required:
      - type
      - externalId
      - host
      - eventHubName
      title: CreateEventHubSource
      type: object
    CreateHeaderValueAuthentication:
      additionalProperties: false
      properties:
        type:
          enum:
          - header
          title: Type
          type: string
          description: Authentication type.
        key:
          title: Header key
          description: Key for the header to place the authentication token in
          type: string
        value:
          title: Value
          description: Value of the authentication token
          type: string
      required:
      - key
      - value
      - type
      title: CreateHeaderValueAuthentication
      type: object
    CreateQueryParamAuthentication:
      additionalProperties: false
      properties:
        type:
          enum:
          - query
          title: Type
          type: string
          description: Authentication type.
        key:
          title: Query parameter key
          description: Key for the query parameter to place the authentication token in
          type: string
        value:
          title: Value
          description: Value of the authentication token
          type: string
      required:
      - key
      - value
      - type
      title: CreateQueryParamAuthentication
      type: object
    UpdateMqttV5Source:
      additionalProperties: false
      properties:
        host:
          $ref: '#/components/schemas/UpdateItem_Host_'
        port:
          anyOf:
          - $ref: '#/components/schemas/UpdateItem_Port_'
          - $ref: '#/components/schemas/UpdateSetNull'
          title: Port
          description: Set or remove the port on the MQTT broker.
        authentication:
          anyOf:
          - $ref: '#/components/schemas/UpdateItem_MqttAuthentication_'
          - $ref: '#/components/schemas/UpdateSetNull'
          title: Authentication
          description: Set or remove the credentials used for authentication.
        useTls:
          additionalProperties: false
          properties:
            set:
              title: Set
              type: boolean
          required:
          - set
          type: object
          description: Enable or disable TLS to the MQTT broker.
        caCertificate:
          anyOf:
          - $ref: '#/components/schemas/UpdateItem_CACertificate_'
          - $ref: '#/components/schemas/UpdateSetNull'
        authCertificate:
          anyOf:
          - $ref: '#/components/schemas/UpdateItem_AuthCertificate_'
          - $ref: '#/components/schemas/UpdateSetNull'
      title: UpdateMqttV5Source
      type: object
    CreateScramSha256:
      additionalProperties: false
      type: object
      title: CreateScramSha256
      properties:
        type:
          enum:
          - scramSha256
          title: Type
          type: string
          description: Authentication type
        username:
          type: string
          description: Username for authentication
          title: Username
          maxLength: 200
        password:
          type: string
          title: Password
          description: Password for authentication
          maxLength: 200
      required:
      - type
      - username
      - password
    KafkaBrokerList:
      type: array
      items:
        $ref: '#/components/schemas/KafkaBroker'
      description: List of redundant kafka brokers to connect to.
      minItems: 1
      maxItems: 8
    UpdateKafkaSourceItem:
      additionalProperties: false
      properties:
        type:
          enum:
          - kafka
          title: Type
          type: string
          description: Source type.
        externalId:
          $ref: '#/components/schemas/CogniteExternalId'
        update:
          $ref: '#/components/schemas/UpdateKafkaSource'
      required:
      - type
      - externalId
      - update
      title: UpdateKafkaSourceItem
      type: object
    CreateKafkaSource:
      type: object
      additionalProperties: false
      properties:
        type:
          enum:
          - kafka
          title: Type
          type: string
          description: Source type.
        externalId:
          $ref: '#/components/schemas/CogniteExternalId'
        bootstrapBrokers:
          $ref: '#/components/schemas/KafkaBrokerList'
        authentication:
          $ref: '#/components/schemas/KafkaAuthenticationWrite'
        useTls:
          type: boolean
          title: UseTLS
          description: If true, use TLS when connecting to the broker
        caCertificate:
          $ref: '#/components/schemas/CACertificate'
        authCertificate:
          $ref: '#/components/schemas/AuthCertificate'
      required:
      - bootstrapBrokers
      - externalId
      - type
    CreateRestSource:
      additionalProperties: false
      properties:
        type:
          enum:
          - rest
          title: Type
          type: string
          description: Source type.
        externalId:
          $ref: '#/components/schemas/CogniteExternalId'
        host:
          title: Host
          type: string
          description: Host or IP address to connect to.
          maxLength: 200
        scheme:
          title: Scheme
          type: string
          description: Type of connection to establish
          enum:
          - http
          - https
          default: https
        port:
          type: integer
          title: Port
          description: Port on server to connect to. Uses default ports based on the scheme if omitted.
          minimum: 1
          maximum: 65535
        caCertificate:
          $ref: '#/components/schemas/CACertificate'
        authCertificate:
          $ref: '#/components/schemas/AuthCertificate'
        authentication:
          discriminator:
            mapping:
              basic: '#/components/schemas/CreateBasicAuthentication'
              header: '#/components/schemas/CreateHeaderValueAuthentication'
              query: '#/components/schemas/CreateQueryParamAuthentication'
              clientCredentials: '#/components/schemas/CreateClientCredentialsAuthentication'
            propertyName: type
          oneOf:
          - $ref: '#/components/schemas/CreateBasicAuthentication'
          - $ref: '#/components/schemas/CreateHeaderValueAuthentication'
          - $ref: '#/components/schemas/CreateQueryParamAuthentication'
          - $ref: '#/components/schemas/CreateClientCredentialsAuthentication'
          title: Authentication
          description: Authentication details for source
      required:
      - type
      - externalId
      - host
      title: CreateRestSource
      type: object
    MqttV3Source:
      additionalProperties: false
      properties:
        type:
          enum:
          - mqtt3
          title: Type
          type: string
          description: Source type.
        externalId:
          $ref: '#/components/schemas/CogniteExternalId'
        host:
          title: Host
          type: string
          description: Host or IP address of the MQTT broker to connect to.
          maxLength: 200
        port:
          type: integer
          title: Port
          description: Port to connect to on the MQTT broker.
          default: 1883
          minimum: 1
          maximum: 65535
        authentication:
          $ref: '#/components/schemas/MqttAuthentication'
        useTls:
          type: boolean
          title: UseTls
          description: If true, use TLS when connecting to the broker.
        createdTime:
          $ref: '#/components/schemas/EpochTimestamp'
        lastUpdatedTime:
          $ref: '#/components/schemas/EpochTimestamp'
        caCertificate:
          $ref: '#/components/schemas/CertificateDetails'
        authCertificate:
          $ref: '#/components/schemas/CertificateDetails'
      required:
      - type
      - externalId
      - host
      - createdTime
      - lastUpdatedTime
      title: MqttV3Source
      type: object
    EpochTimestamp:
      description: The number of milliseconds since 00:00:00 Thursday, 1 January 1970, Coordinated Universal Time (UTC), minus leap seconds.
      type: integer
      minimum: 0
      format: int64
      example: 1730204346000
    CreateMqttV3Source:
      additionalProperties: false
      properties:
        type:
          enum:
          - mqtt3
          title: Type
          type: string
          description: Source type.
        externalId:
          $ref: '#/components/schemas/CogniteExternalId'
        host:
          title: Host
          type: string
          description: Host or IP address of the MQTT broker to connect to.
          maxLength: 200
        port:
          type: integer
          title: Port
          default: 1883
          description: Port on the MQTT broker to connect to.
          minimum: 1
          maximum: 65535
        authentication:
          $ref: '#/components/schemas/MqttAuthenticationWrite'
        useTls:
          type: boolean
          title: UseTls
          description: If true, use TLS when connecting to the broker.
        caCertificate:
          $ref: '#/components/schemas/CACertificate'
        authCertificate:
          $ref: '#/components/schemas/AuthCertificate'
      required:
      - type
      - externalId
      - host
      title: CreateMqttV3Source
      type: object
    CertificateType:
      enum:
      - der
      - pem
      title: CertificateType
      type: string
      description: Type of certificate in the `certificate` field.
    UpdateItem_AuthCertificate_:
      additionalProperties: false
      properties:
        set:
          $ref: '#/components/schemas/AuthCertificate'
      required:
      - set
      title: UpdateItem_AuthCertificate
      type: object
      description: Set a new authentication certificate.
    UpdateEventHubSource:
      additionalProperties: false
      properties:
        host:
          $ref: '#/components/schemas/UpdateItem_Host_'
        eventHubName:
          additionalProperties: false
          properties:
            set:
              title: Set
              type: string
              maxLength: 200
          required:
          - set
          type: object
          description: Set a new value for the event hub name.
        keyName:
          additionalProperties: false
          properties:
            set:
              title: Set
              type: string
              maxLength: 200
          required:
          - set
          type: object
          deprecated: true
          description: Set a new value for the key name. This parameter is deprecated, use `username` under basic authentication instead.
        keyValue:
          additionalProperties: false
          properties:
            set:
              title: Set
              type: string
              maxLength: 200
          required:
          - set
          type: object
          deprecated: true
          description: Set a new value for the key value. This parameter is deprecated, use `password` under basic authentication instead.
        authentication:
          description: Update authentication details for the eventhub source.
          type: object
          properties:
            set:
              $ref: '#/components/schemas/EventhubAuthenticationWrite'
          title: Authentication
          required:
          - set
        consumerGroup:
          anyOf:
          - type: object
            required:
            - set
            properties:
              set:
                title: Set
                type: string
                maxLength: 200
          - $ref: '#/components/schemas/UpdateSetNull'
          title: ConsumerGroup
          description: Set a new value for the consumer group, or remove the value.
      title: UpdateEventHubSource
      type: object
    ClientCredentialsAuthentication:
      additionalProperties: false
      properties:
        type:
          enum:
          - clientCredentials
          title: Type
          type: string
          description: Authentication type.
        clientId:
          title: Client ID
          description: Client ID for for the service principal used by the extractor
          type: string
        tokenUrl:
          title: Token URL
          description: URL to fetch authentication tokens from
          type: string
        scopes:
          title: Scopes
          description: A space separated list of scopes
          type: string
        defaultExpiresIn:
          title: Default expires in
          description: Default value for the expires_in OAuth 2.0 parameter. If the identity provider does not return expires_in in token requests, this parameter must be set or the request will fail.
          type: string
      required:
      - type
      - clientId
      - tokenUrl
      - scopes
      title: ClientCredentialsAuthentication
      type: object
    EventhubAuthentication:
      type: object
      discriminator:
        mapping:
          basic: '#/components/schemas/SimpleBasicAuthentication'
          clientCredentials: '#/components/schemas/ClientCredentialsAuthentication'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/SimpleBasicAuthentication'
      - $ref: '#/components/schemas/ClientCredentialsAuthentication'
      title: EventhubAuthentication
      description: Authentication details

# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cognite/refs/heads/main/openapi/cognite-sources-api-openapi.yml