---
title: "Read the login bindings of an integration"
method: GET
path: "/api/v1/observability/integrations/{integration}/login-map"
tags: ["Observability integrations"]
---

# Read the login bindings of an integration

`GET /api/v1/observability/integrations/{integration}/login-map`

## Request

- Base URL: `https://wardenpoint.com` (the document declares no server; this is the origin it was published from)
- URL: `https://wardenpoint.com/api/v1/observability/integrations/{integration}/login-map`
- Auth: API key in header `X-API-Key`

Returns every login this integration has seen, unbound ones first — those are the only rows waiting on a decision.

The map fills itself: a login is recorded the first time an event names it, so the list is empty until the first delivery arrives and grows on its own afterwards. Nothing has to be declared in advance, and a login you have never received cannot be read here — but it can be written, see the PUT.

Only sources that name people have a login map at all; every other type answers 404. Today that is `gitlab`, whose merge request events name reviewers.

## Path parameters

- `integration` string, uuid, required

## Response `200`

Bindings, unbound logins first.

- object
  - `data` LoginMapEntry[]
    - `username` string: The login as the source spells it, without a leading `@`.
    - `recipient_uuid` string, uuid, nullable: Recipient this login pages, or null when unbound.
    - `recipient_name` string, nullable: Display name of that recipient, or null when unbound.

## Other responses

- `401`: API key missing, invalid, revoked or expired.
- `403`: API key lacks config.read, or the integration belongs to another company.
- `404`: No integration with this UUID, or its type does not name people and therefore has no login map.

---

[API](https://skmtc.dev/wardenpoint/apis/wardenpoint-api.md) · [All operations](https://skmtc.dev/wardenpoint/apis/wardenpoint-api/llms.txt) · [OpenAPI document](https://skmtc.dev/wardenpoint/apis/wardenpoint-api/revisions/259ee445728e?raw)
