swagger: '2.0' info: version: 2020-08-01-preview title: Microsoft Azure AccessControlClient AccessConnector KafkaConnector API schemes: - https tags: - name: KafkaConnector paths: ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTOperationsMQ/mq/{mqName}/kafkaConnector : get: operationId: microsoftAzureKafkaconnectorListbymqresource tags: - KafkaConnector description: List KafkaConnectorResource resources by MqResource parameters: - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter - name: mqName in: path description: Name of MQ resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ responses: '200': description: Azure operation completed successfully. schema: $ref: '#/definitions/KafkaConnectorResourceListResult' default: description: An unexpected error response. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-examples: KafkaConnector_ListByMqResource: $ref: ./examples/KafkaConnector_ListByMqResource_MaximumSet_Gen.json x-ms-pageable: nextLinkName: nextLink summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotoperationsmq Mq Mqname Kafkaconnector ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTOperationsMQ/mq/{mqName}/kafkaConnector/{kafkaConnectorName} : get: operationId: microsoftAzureKafkaconnectorGet tags: - KafkaConnector description: Get a KafkaConnectorResource parameters: - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter - name: mqName in: path description: Name of MQ resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ - name: kafkaConnectorName in: path description: Name of MQ kafkaConnector resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ responses: '200': description: Azure operation completed successfully. schema: $ref: '#/definitions/KafkaConnectorResource' default: description: An unexpected error response. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-examples: KafkaConnector_Get: $ref: ./examples/KafkaConnector_Get_MaximumSet_Gen.json summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotoperationsmq Mq Mqname Kafkaconnector Kafkaconnectorname put: operationId: microsoftAzureKafkaconnectorCreateorupdate tags: - KafkaConnector description: Create a KafkaConnectorResource parameters: - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter - name: mqName in: path description: Name of MQ resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ - name: kafkaConnectorName in: path description: Name of MQ kafkaConnector resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ - name: resource in: body description: Resource create parameters. required: true schema: $ref: '#/definitions/KafkaConnectorResource' responses: '200': description: Resource 'KafkaConnectorResource' update operation succeeded schema: $ref: '#/definitions/KafkaConnectorResource' '201': description: Resource 'KafkaConnectorResource' create operation succeeded schema: $ref: '#/definitions/KafkaConnectorResource' headers: Retry-After: type: integer format: int32 description: The Retry-After header can indicate how long the client should wait before polling the operation status. default: description: An unexpected error response. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-examples: KafkaConnector_CreateOrUpdate: $ref: ./examples/KafkaConnector_CreateOrUpdate_MaximumSet_Gen.json x-ms-long-running-operation-options: final-state-via: azure-async-operation x-ms-long-running-operation: true summary: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotoperationsmq Mq Mqname Kafkaconnector Kafkaconnectorname patch: operationId: microsoftAzureKafkaconnectorUpdate tags: - KafkaConnector description: Update a KafkaConnectorResource parameters: - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter - name: mqName in: path description: Name of MQ resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ - name: kafkaConnectorName in: path description: Name of MQ kafkaConnector resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ - name: properties in: body description: The resource properties to be updated. required: true schema: $ref: '#/definitions/KafkaConnectorResourceUpdate' responses: '200': description: Azure operation completed successfully. schema: $ref: '#/definitions/KafkaConnectorResource' default: description: An unexpected error response. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-examples: KafkaConnector_Update: $ref: ./examples/KafkaConnector_Update_MaximumSet_Gen.json summary: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotoperationsmq Mq Mqname Kafkaconnector Kafkaconnectorname delete: operationId: microsoftAzureKafkaconnectorDelete tags: - KafkaConnector description: Delete a KafkaConnectorResource parameters: - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter - name: mqName in: path description: Name of MQ resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ - name: kafkaConnectorName in: path description: Name of MQ kafkaConnector resource required: true type: string pattern: ^[a-zA-Z0-9-]{3,24}$ responses: '202': description: Resource deletion accepted. headers: Location: type: string description: The Location header contains the URL where the status of the long running operation can be checked. Retry-After: type: integer format: int32 description: The Retry-After header can indicate how long the client should wait before polling the operation status. '204': description: Resource does not exist. default: description: An unexpected error response. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-examples: KafkaConnector_Delete: $ref: ./examples/KafkaConnector_Delete_MaximumSet_Gen.json x-ms-long-running-operation-options: final-state-via: location x-ms-long-running-operation: true summary: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Iotoperationsmq Mq Mqname Kafkaconnector Kafkaconnectorname definitions: KeyVaultCredentialsPropertiesUpdate: type: object description: KeyVault credentials properties. NOTE - Future this will be ENUM. properties: servicePrincipalLocalSecretName: type: string description: KeyVault service principal local secret name. KafkaRemoteBrokerAuthenticationTypes: type: object description: Kafka RemoteBrokerConnection Authentication types. NOTE - Enum only one method is allowed to be passed. properties: sasl: $ref: '#/definitions/SaslRemoteBrokerBasicAuthentication' description: Sasl remote broker authentication method. systemAssignedManagedIdentity: $ref: '#/definitions/ManagedIdentityAuthentication' description: Managed identity remote broker authentication method. x509: $ref: '#/definitions/KafkaX509Authentication' description: X509 remote broker authentication method. KafkaSaslType: type: string description: Kafka Sasl Authentication types enum: - plain - scramSha256 - scramSha512 x-ms-enum: name: KafkaSaslType modelAsString: true values: - name: plain value: plain description: Sasl Plain authentication. - name: scramSha256 value: scramSha256 description: Sasl ScramSha256 authentication. - name: scramSha512 value: scramSha512 description: Sasl ScramSha512 authentication. KafkaRemoteBrokerConnectionTls: type: object description: Kafka RemoteBrokerConnection TLS details properties: tlsEnabled: type: boolean description: Tls Enabled on Remote Broker Connection. trustedCaCertificateConfigMap: type: string description: Trusted CA certificate name for Remote Broker. required: - tlsEnabled KeyVaultSecretObjectUpdate: type: object description: KeyVault secret object properties properties: name: type: string description: KeyVault secret name. version: type: string description: KeyVault secret version. KeyVaultCertificateProperties: type: object description: KeyVault certificate properties properties: vault: $ref: '#/definitions/KeyVaultConnectionProperties' description: KeyVault properties. vaultCaChainSecret: $ref: '#/definitions/KeyVaultSecretObject' description: KeyVault CA chain secret details. vaultCert: $ref: '#/definitions/KeyVaultSecretObject' description: KeyVault Cert secret details. required: - vault - vaultCert SaslRemoteBrokerBasicAuthentication: type: object description: Kafka RemoteBrokerConnection Sasl Authentication properties. properties: saslType: $ref: '#/definitions/KafkaSaslType' description: Sasl Mechanism for remote broker authentication. token: $ref: '#/definitions/SaslRemoteBrokerBasicAuthenticationToken' description: Sasl token for remote broker authentication. required: - saslType - token KafkaConnectorResourceListResult: type: object description: The response of a KafkaConnectorResource list operation. properties: value: type: array description: The KafkaConnectorResource items on this page items: $ref: '#/definitions/KafkaConnectorResource' nextLink: type: string format: uri description: The link to the next page of items required: - value KafkaConnectorResourceUpdateProperties: type: object description: The updatable properties of the KafkaConnectorResource. properties: clientIdPrefix: type: string description: The client id prefix of the dynamically generated client ids. image: $ref: '#/definitions/ContainerImageUpdate' description: The details of KafkaConnector Docker Image. instances: type: integer format: int32 description: The number of KafkaConnector pods to spin up. minimum: 0 maximum: 65535 kafkaConnection: $ref: '#/definitions/KafkaRemoteBrokerConnectionSpecUpdate' description: The details for connecting with Remote Kafka Broker. localBrokerConnection: $ref: '#/definitions/LocalBrokerConnectionSpecUpdate' description: The details for connecting with Local Broker. logLevel: type: string description: The log level of the Bridge Connector instances. default: info nodeTolerations: $ref: '#/definitions/NodeTolerationsUpdate' description: The Node Tolerations for the Bridge Connector pods. KafkaRemoteBrokerAuthenticationPropertiesUpdate: type: object description: Kafka RemoteBrokerConnection Authentication methods properties: authType: $ref: '#/definitions/KafkaRemoteBrokerAuthenticationTypesUpdate' description: The type of authentication to use for Kafka remote broker. enabled: type: boolean description: If authentication is enabled for Kafka remote broker. LocalBrokerConnectionSpec: type: object description: Mqtt Local Broker ConnectionSpec details properties: authentication: $ref: '#/definitions/LocalBrokerAuthenticationMethods' description: The authentication methods for LocalBroker connection. NOTE - Enum only one method at a time is supported. endpoint: type: string description: The endpoint of local broker to connect to. default: aio-mq-dmqtt-frontend:1883 tls: $ref: '#/definitions/LocalBrokerConnectionTls' description: TLS details for Local broker Connection. SaslRemoteBrokerBasicAuthenticationToken: type: object description: Kafka RemoteBrokerConnection Sasl Authentication token properties. NOTE - Enum only one method is allowed to be passed. properties: keyVault: $ref: '#/definitions/KafkaTokenKeyVaultProperties' description: Keyvault token keyvault secret properties. secretName: type: string description: Secret where cert details are stored. KafkaConnectorResource: type: object description: MQ kafkaConnector resource properties: properties: $ref: '#/definitions/KafkaConnectorProperties' description: The resource-specific properties for this resource. x-ms-client-flatten: true x-ms-mutability: - read - create extendedLocation: $ref: '#/definitions/ExtendedLocationProperty' description: Extended Location x-ms-mutability: - read - create required: - extendedLocation allOf: - $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource KafkaRemoteBrokerAuthenticationProperties: type: object description: Kafka RemoteBrokerConnection Authentication methods properties: authType: $ref: '#/definitions/KafkaRemoteBrokerAuthenticationTypes' description: The type of authentication to use for Kafka remote broker. enabled: type: boolean description: If authentication is enabled for Kafka remote broker. required: - enabled ExtendedLocationProperty: type: object description: ExtendedLocation properties properties: name: type: string description: The name of the extended location. type: $ref: '#/definitions/ExtendedLocationType' description: Type of ExtendedLocation. required: - name - type SaslRemoteBrokerBasicAuthenticationUpdate: type: object description: Kafka RemoteBrokerConnection Sasl Authentication properties. properties: saslType: $ref: '#/definitions/KafkaSaslType' description: Sasl Mechanism for remote broker authentication. token: $ref: '#/definitions/SaslRemoteBrokerBasicAuthenticationTokenUpdate' description: Sasl token for remote broker authentication. KeyVaultCredentialsProperties: type: object description: KeyVault credentials properties. NOTE - Future this will be ENUM. properties: servicePrincipalLocalSecretName: type: string description: KeyVault service principal local secret name. required: - servicePrincipalLocalSecretName LocalBrokerConnectionTls: type: object description: Mqtt Local Broker Connection TLS details properties: tlsEnabled: type: boolean description: Tls Enabled on Local Broker Connection. default: false trustedCaCertificateConfigMap: type: string description: Trusted CA certificate config map name for Local Broker. KafkaX509AuthenticationUpdate: type: object description: Kafka RemoteBrokerConnection X509 Authentication properties. properties: keyVault: $ref: '#/definitions/KeyVaultCertificatePropertiesUpdate' description: Keyvault X509 secret properties. secretName: type: string description: Secret where cert details are stored. LocalBrokerAuthenticationMethodsUpdate: type: object description: Mqtt Local Broker Authentication details. Only one method at a time is supported. Default - kubernetes authentication properties: kubernetes: $ref: '#/definitions/LocalBrokerKubernetesAuthentication' description: Kubernetes local broker authentication method. KafkaRemoteBrokerConnectionTlsUpdate: type: object description: Kafka RemoteBrokerConnection TLS details properties: tlsEnabled: type: boolean description: Tls Enabled on Remote Broker Connection. trustedCaCertificateConfigMap: type: string description: Trusted CA certificate name for Remote Broker. SaslRemoteBrokerBasicAuthenticationTokenUpdate: type: object description: Kafka RemoteBrokerConnection Sasl Authentication token properties. NOTE - Enum only one method is allowed to be passed. properties: keyVault: $ref: '#/definitions/KafkaTokenKeyVaultPropertiesUpdate' description: Keyvault token keyvault secret properties. secretName: type: string description: Secret where cert details are stored. KafkaConnectorResourceUpdate: type: object description: The type used for update operations of the KafkaConnectorResource. properties: tags: type: object description: Resource tags. additionalProperties: type: string properties: $ref: '#/definitions/KafkaConnectorResourceUpdateProperties' x-ms-client-flatten: true LocalBrokerConnectionSpecUpdate: type: object description: Mqtt Local Broker ConnectionSpec details properties: authentication: $ref: '#/definitions/LocalBrokerAuthenticationMethodsUpdate' description: The authentication methods for LocalBroker connection. NOTE - Enum only one method at a time is supported. endpoint: type: string description: The endpoint of local broker to connect to. default: aio-mq-dmqtt-frontend:1883 tls: $ref: '#/definitions/LocalBrokerConnectionTls' description: TLS details for Local broker Connection. KeyVaultConnectionProperties: type: object description: KeyVault properties properties: credentials: $ref: '#/definitions/KeyVaultCredentialsProperties' description: KeyVault credentials. directoryId: type: string description: KeyVault directoryId. name: type: string description: KeyVault name. required: - credentials - directoryId - name ManagedIdentityAuthenticationUpdate: type: object description: Managed identity authentication details. properties: audience: type: string description: Token audience. extensionName: type: string description: Arc Extension name. NodeTolerationsUpdate: type: object description: Defines the Node Tolerations details properties: effect: type: string description: Toleration effect. key: type: string description: Toleration key. operator: type: string description: Toleration operator like 'Exists', 'Equal' etc. value: type: string description: Toleration Value. ContainerImageUpdate: type: object description: Defines the Docker image details properties: pullPolicy: type: string description: Image pull policy. pullSecrets: type: string description: Image pull secrets. repository: type: string description: The Docker image name. tag: type: string description: The Docker image tag. KafkaX509Authentication: type: object description: Kafka RemoteBrokerConnection X509 Authentication properties. properties: keyVault: $ref: '#/definitions/KeyVaultCertificateProperties' description: Keyvault X509 secret properties. secretName: type: string description: Secret where cert details are stored. KafkaRemoteBrokerConnectionSpec: type: object description: Kafka RemoteBrokerConnectionSpec details properties: authentication: $ref: '#/definitions/KafkaRemoteBrokerAuthenticationProperties' description: The remote broker authentication methods. endpoint: type: string description: The endpoint of remote broker to connect to. tls: $ref: '#/definitions/KafkaRemoteBrokerConnectionTls' description: TLS details for Remote broker Connection. required: - authentication - endpoint - tls LocalBrokerAuthenticationMethods: type: object description: Mqtt Local Broker Authentication details. Only one method at a time is supported. Default - kubernetes authentication properties: kubernetes: $ref: '#/definitions/LocalBrokerKubernetesAuthentication' description: Kubernetes local broker authentication method. required: - kubernetes KafkaTokenKeyVaultProperties: type: object description: Kafka Token KeyVault properties. properties: username: type: string description: Username to connect with. vault: $ref: '#/definitions/KeyVaultConnectionProperties' description: KeyVault properties. vaultSecret: $ref: '#/definitions/KeyVaultSecretObject' description: KeyVault secret details. required: - vault - vaultSecret ContainerImage: type: object description: Defines the Docker image details properties: pullPolicy: type: string description: Image pull policy. pullSecrets: type: string description: Image pull secrets. repository: type: string description: The Docker image name. tag: type: string description: The Docker image tag. required: - repository - tag KeyVaultConnectionPropertiesUpdate: type: object description: KeyVault properties properties: credentials: $ref: '#/definitions/KeyVaultCredentialsPropertiesUpdate' description: KeyVault credentials. directoryId: type: string description: KeyVault directoryId. name: type: string description: KeyVault name. NodeTolerations: type: object description: Defines the Node Tolerations details properties: effect: type: string description: Toleration effect. key: type: string description: Toleration key. operator: type: string description: Toleration operator like 'Exists', 'Equal' etc. value: type: string description: Toleration Value. required: - effect - key - operator - value ManagedIdentityAuthentication: type: object description: Managed identity authentication details. properties: audience: type: string description: Token audience. extensionName: type: string description: Arc Extension name. required: - audience KeyVaultSecretObject: type: object description: KeyVault secret object properties properties: name: type: string description: KeyVault secret name. version: type: string description: KeyVault secret version. required: - name LocalBrokerKubernetesAuthentication: type: object description: Local Broker Kubernetes Authentication properties: secretPath: type: string description: Secret Path where SAT is mounted. default: /var/run/serviceaccount/localbroker serviceAccountTokenName: type: string description: Token name where SAT is mounted on secret path. default: sat KafkaRemoteBrokerAuthenticationTypesUpdate: type: object description: Kafka RemoteBrokerConnection Authentication types. NOTE - Enum only one method is allowed to be passed. properties: sasl: $ref: '#/definitions/SaslRemoteBrokerBasicAuthenticationUpdate' description: Sasl remote broker authentication method. systemAssignedManagedIdentity: $ref: '#/definitions/ManagedIdentityAuthenticationUpdate' description: Managed identity remote broker authentication method. x509: $ref: '#/definitions/KafkaX509AuthenticationUpdate' description: X509 remote broker authentication method. ProvisioningState: type: string description: The enum defining status of resource. enum: - Succeeded - Failed - Canceled - Provisioning - Updating - Deleting - Accepted x-ms-enum: name: ProvisioningState modelAsString: true values: - name: Succeeded value: Succeeded description: Resource has been created. - name: Failed value: Failed description: Resource creation failed. - name: Canceled value: Canceled description: Resource creation was canceled. - name: Provisioning value: Provisioning description: Resource is getting provisioned. - name: Updating value: Updating description: Resource is Updating. - name: Deleting value: Deleting description: Resource is Deleting. - name: Accepted value: Accepted description: Resource has been Accepted. ExtendedLocationType: type: string description: The enum defining type of ExtendedLocation accepted. enum: - CustomLocation x-ms-enum: name: ExtendedLocationType modelAsString: true values: - name: CustomLocation value: CustomLocation description: CustomLocation type KeyVaultCertificatePropertiesUpdate: type: object description: KeyVault certificate properties properties: vault: $ref: '#/definitions/KeyVaultConnectionPropertiesUpdate' description: KeyVault properties. vaultCaChainSecret: $ref: '#/definitions/KeyVaultSecretObjectUpdate' description: KeyVault CA chain secret details. vaultCert: $ref: '#/definitions/KeyVaultSecretObjectUpdate' description: KeyVault Cert secret details. KafkaRemoteBrokerConnectionSpecUpdate: type: object description: Kafka RemoteBrokerConnectionSpec details properties: authentication: $ref: '#/definitions/KafkaRemoteBrokerAuthenticationPropertiesUpdate' description: The remote broker authentication methods. endpoint: type: string description: The endpoint of remote broker to connect to. tls: $ref: '#/definitions/KafkaRemoteBrokerConnectionTlsUpdate' description: TLS details for Remote broker Connection. KafkaConnectorProperties: type: object description: KafkaConnector Properties properties: clientIdPrefix: type: string description: The client id prefix of the dynamically generated client ids. image: $ref: '#/definitions/ContainerImage' description: The details of KafkaConnector Docker Image. instances: type: integer format: int32 description: The number of KafkaConnector pods to spin up. minimum: 0 maximum: 65535 kafkaConnection: $ref: '#/definitions/KafkaRemoteBrokerConnectionSpec' description: The details for connecting with Remote Kafka Broker. localBrokerConnection: $ref: '#/definitions/LocalBrokerConnectionSpec' description: The details for connecting with Local Broker. logLevel: type: string description: The log level of the Bridge Connector instances. default: info nodeTolerations: $ref: '#/definitions/NodeTolerations' description: The Node Tolerations for the Bridge Connector pods. provisioningState: $ref: '#/definitions/ProvisioningState' description: The status of the last operation. readOnly: true required: - kafkaConnection KafkaTokenKeyVaultPropertiesUpdate: type: object description: Kafka Token KeyVault properties. properties: username: type: string description: Username to connect with. vault: $ref: '#/definitions/KeyVaultConnectionPropertiesUpdate' description: KeyVault properties. vaultSecret: $ref: '#/definitions/KeyVaultSecretObjectUpdate' description: KeyVault secret details. x-ms-parameterized-host: hostTemplate: '{endpoint}' useSchemePrefix: false parameters: - $ref: '#/parameters/Endpoint'