# Litmus UNS/Integrations - LE, LEM, LUNS API Docs

## Get Kafka Integrations

**POST** `{{uns_url}}/mqtt/gql`

### Request Body

**GraphQL Query**

```graphql
query Kafka {
    kafka {
        pubFilters
        currentCfg {
            Name
            Enabled
            Brokers
            Balancer
            Topic
            Username
            Password
            AuthMethod
            RequireSsl
            TrustedCaChain
            Compression
            RequiredAcks
            WriteTimeoutSec
        }
        status {
            active
        }
    }
}
```

### Response

**Status**: 200 OK

```json
{
    "data": {
        "kafka": {
            "pubFilters": [
                "abc-corp/site1/area1/cell1",
                "abc-corp/santaclara/rack/pump",
                "root",
                "abccorp/#",
                "abccorp/site1/#"
            ],
            "currentCfg": {
                "Name": "",
                "Enabled": false,
                "Brokers": [
                    "pkc-7xoy1.eu-central-1.aws.confluent.cloud:9092"
                ],
                "Balancer": "RoundRobin",
                "Topic": "litmus",
                "Username": "KZKKPV4SCCFQHCK5",
                "Password": "ZoQ2IugjnybF4LvAiYo+eBJ/GQE/hxOnUAKuXoek0pk2/ItGGwExkhqVWcRvAR/M",
                "AuthMethod": "Plain",
                "RequireSsl": true,
                "TrustedCaChain": null,
                "Compression": "Zstd",
                "RequiredAcks": "None",
                "WriteTimeoutSec": 10,
                "__typename": "KafkaCfg"
            },
            "status": {
                "active": false,
                "__typename": "KafkaStatus"
            },
            "__typename": "Kafka"
        }
    }
}
```

---

## Kafka Update and (re)Connect

**POST** `{{uns_url}}/mqtt/gql`

### Request Body

**GraphQL Query**

```graphql
mutation KafkaUpdateAndReconnect($input: kafkaUpdateAndReconnectInput!) {
    kafkaUpdateAndReconnect(input: $input) {
        cfg {
            Name
            Enabled
            Brokers
            Balancer
            Topic
            Username
            Password
            AuthMethod
            RequireSsl
            TrustedCaChain
            Compression
            RequiredAcks
            WriteTimeoutSec
        }
    }
}
```

**Variables**

```json
{
    "input": {
        "Enabled": true,
        "Brokers": [
            "kafka.kafka.svc.cluster.local:9092"
        ],
        "Balancer": "RoundRobin",
        "Topic": null,
        "Username": "user1",
        "Password": "r9UgUturmG",
        "AuthMethod": "Plain",
        "RequireSsl": false,
        "TrustedCaChain": null,
        "Compression": "Zstd",
        "RequiredAcks": "All",
        "WriteTimeoutSec": 10
    }
}
```

### Response

**Status**: 200 OK

```json
{
    "data": {
        "kafkaUpdateAndReconnect": {
            "cfg": {
                "Name": "",
                "Enabled": true,
                "Brokers": [
                    "kafka.kafka.svc.cluster.local:9092"
                ],
                "Balancer": "RoundRobin",
                "Topic": null,
                "Username": "user1",
                "Password": "r9UgUturmG",
                "AuthMethod": "Plain",
                "RequireSsl": false,
                "TrustedCaChain": null,
                "Compression": "Zstd",
                "RequiredAcks": "All",
                "WriteTimeoutSec": 10
            }
        }
    }
}
```

---

