# LitmusUNS (LUNS) - Product Router

> You are at https://api.litmus.io/luns/agents.md.
> Parent: https://api.litmus.io/agents.md
> Pick the component matching your task and fetch only that file.

---

## What LUNS is

Unified Namespace - MQTT-based data fabric for Industrial IoT. Manages MQTT broker accounts, topics, namespaces, and rules.

- Base URL variable: `{{uns_url}}`
- Endpoint style: predominantly GraphQL at `POST {{uns_url}}/mqtt/gql`
- Total endpoints in this product: 28

---

## Authentication

LUNS uses OAuth2 **password grant** (not client credentials like LE):

```
POST {{uns_url}}/auth/v3/oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=password
client_id={{uns_oauth_client_id}}
username={{uns_oauth_username}}
password={{uns_oauth_password}}
```

Use the returned `access_token` as `Authorization: Bearer <token>`.

---

## Components

| Section | Endpoints | Fetch |
|---|---|---|
| Dashboard | 4 | /luns/dashboard.md |
| UNS (namespaces, topics, rules) | 9 | /luns/uns.md |
| Security (MQTT accounts, ACLs) | 5 | /luns/security.md |
| MQTT (broker config) | 5 | /luns/mqtt.md |
| Integrations (data outflows) | 2 | /luns/integrations.md |
| Tools (server config) | 1 | /luns/tools.md |

---

## Quick path - LUNS-specific keywords

| Keywords | Fetch |
|---|---|
| "namespace", "topic tree", "UNS hierarchy" | /luns/uns.md |
| "MQTT account", "client_id", "provision broker user" | /luns/security.md (or /workflows/provision-mqtt-account.md) |
| "MQTT broker config", "listener", "TLS" | /luns/mqtt.md |
| "data egress from UNS", "integration" | /luns/integrations.md |
| "MQTT server config" (single endpoint) | /luns/tools.md |
| "namespace rule" | /luns/uns.md |
| "rename namespace" | /luns/uns.md |
| "online users", "broker stats" | /luns/dashboard.md |

---

## When to back out

If your task is actually about:

- A device feeding data INTO UNS (LE side) -> /le/integration/agents.md (UNS provider) or /le/devicehub/agents.md
- LEM admin operations -> /lem/agents.md
- Cross-product or unsure -> /agents.md
