--- title: "GET | List an LDAP server by [id]" slug: "api-v2-get-list-an-ldap-server" updated: 2026-11-03T14:57:57Z published: 2026-11-03T14:57:57Z canonical: "docs.senhasegura.io/api-v2-get-list-an-ldap-server" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.senhasegura.io/llms.txt > Use this file to discover all available pages before exploring further. # GET | List an LDAP server by [id] ## Description Access every attribute of one LDAP/AD server connection profile in the Segura™ platform. The response carries the server's current version in the `ETag` header, which the update endpoints require, and the actions available for the server in its current state. --- ## Prerequisites - An application with the **Users** authorization granted by the administrator in A2A. For more information, access [How to manage authorizations in A2A](/v4-2/docs/how-to-manage-authorizations-in-a2a). - A valid OAuth 2.0 access token. For more information, access [How to authenticate an application in A2A](/v4-2/docs/how-to-authenticate-an-application-in-a2a). --- ## Request `GET` `/api/v2/iam/ldap-servers/{id}` ### Path parameters | Field | Type | Required | Description | | --- | --- | --- | --- | | `id` | integer | Yes | Unique identification code of the LDAP server. **Note:** this value is assigned by Segura™ in [POST \| Create LDAP server](/v4-2/docs/api-v2-post-create-ldap-server). | ### Query parameters | Field | Type | Required | Description | | --- | --- | --- | --- | | `fields` | string | No | Comma-separated list of fields to return, such as `id,ldap_server.host,ldap_server.active`. | ### Headers | Header | Required | Description | | --- | --- | --- | | `If-None-Match` | No | Version the client already holds. When it matches the server's current version, the response is `304 Not Modified` with no body. | --- ### Example request `GET` `{{url}}/api/v2/iam/ldap-servers/7` --- ## Response ``` HTTP/1.1 200 OK ETag: "a3f8c2e1d9b04567" ``` The `ETag` header holds the server's current version. Keep the value: [PUT | Update LDAP server by [id]](/v4-2/docs/api-v2-put-update-ldap-server) and [PATCH | Partially update LDAP server by [id]](/v4-2/docs/api-v2-patch-update-ldap-server) require it in the `If-Match` header to detect concurrent changes. ### Example response body ``` { "data": { "id": 7, "ldap_server": { "host": "ad.example.com", "port": 389, "dn_base": "CN=Users,DC=example,DC=com", "active": true, "use_ssl": false, "member_is_dn": false, "bind_requires_dn": false, "account_form": "principal", "order": 1, "domain": { "id": 5, "name": "EXAMPLE.COM" }, "bind_credential": { "id": 102, "username": "svc-ldap@example.com", "domain": { "id": 5, "name": "EXAMPLE.COM" } }, "network_connector": null, "account_filter_format": null, "use_credential_domain": false, "ignore_disabled_expired": false, "username_attribute": null, "dn_bind": null, "account_domain_name": "EXAMPLE.COM", "account_domain_name_short": "EXAMPLE", "group": null, "group_dn": null, "group_attribute": null, "group_scope": null, "group_filter": null, "member_attribute": null, "created_at": "2026-05-08T22:42:34+00:00", "updated_at": "2026-05-08T22:42:34+00:00" } }, "meta": { "links": { "self": "/api/v2/iam/ldap-servers/7" }, "actions": { "test-connection": "/api/v2/iam/ldap-servers/7/test-connection", "deactivate": "/api/v2/iam/ldap-servers/7/deactivate" } } } ``` --- ## Response body fields Info From version 4.2.10, the response returns `id` and the `id` of each nested object as strings, for example `"7"`. Request bodies still take these values as integers. | Field | Type | Description | | --- | --- | --- | | `data` | object | The LDAP server. | | `data.id` | integer | Unique identification code of the server, assigned by Segura™. | | `data.ldap_server` | object | Attributes of the server. | | `data.ldap_server.host` | string | Hostname or IP address of the directory server. | | `data.ldap_server.port` | integer | Port the directory listens on. | | `data.ldap_server.dn_base` | string | Base distinguished name for user searches. | | `data.ldap_server.active` | boolean | Indicates whether the server is active. | | `data.ldap_server.use_ssl` | boolean | Indicates whether LDAPS is enabled. | | `data.ldap_server.member_is_dn` | boolean | Indicates that the member attribute returns a full distinguished name. | | `data.ldap_server.bind_requires_dn` | boolean | Indicates that the directory requires a distinguished name to bind. | | `data.ldap_server.account_form` | string | Username format the directory expects. Returns `dn`, `username`, `backslash`, `principal`, or `null`. | | `data.ldap_server.order` | integer | Evaluation order in the authentication chain. | | `data.ldap_server.domain` | object | Domain the server belongs to. Returns `null` when the stored domain name matches no registered domain. | | `data.ldap_server.domain.id` | integer | Identification code of the domain. | | `data.ldap_server.domain.name` | string | Name of the domain. | | `data.ldap_server.bind_credential` | object | PAM credential used for the bind. | | `data.ldap_server.bind_credential.id` | integer | Identification code of the credential. | | `data.ldap_server.bind_credential.username` | string | Username of the credential. | | `data.ldap_server.bind_credential.domain` | object | Domain of the credential. | | `data.ldap_server.network_connector` | object | Network connector agent used to reach the server. Returns `null` when the server is reached directly. | | `data.ldap_server.network_connector.id` | integer | Identification code of the network connector agent. | | `data.ldap_server.network_connector.name` | string | Name of the network connector agent. | | `data.ldap_server.account_filter_format` | string | Custom LDAP filter used to locate an account. | | `data.ldap_server.use_credential_domain` | boolean | Indicates whether the domain of the bind credential is used. | | `data.ldap_server.ignore_disabled_expired` | boolean | Indicates whether expired accounts are skipped during group synchronization. | | `data.ldap_server.username_attribute` | string | Directory attribute holding the username. | | `data.ldap_server.dn_bind` | string | Base path used for the bind operation. | | `data.ldap_server.account_domain_name` | string | Domain name applied to accounts. Derived from the referenced domain and read-only. | | `data.ldap_server.account_domain_name_short` | string | Short domain name applied to accounts. Derived from the referenced domain and read-only. | | `data.ldap_server.group` | string | Group whose members are allowed to authenticate. | | `data.ldap_server.group_dn` | string | Base distinguished name for group searches. | | `data.ldap_server.group_attribute` | string | Directory attribute holding the group name. | | `data.ldap_server.group_scope` | string | Scope of the group search. Returns `subtree`, `onelevel`, `base`, or `null`. | | `data.ldap_server.group_filter` | string | LDAP filter applied when searching for groups. | | `data.ldap_server.member_attribute` | string | Group attribute listing its members. | | `data.ldap_server.created_at` | datetime | Date and time the server was created, in ISO 8601 format. | | `data.ldap_server.updated_at` | datetime | Date and time the server was last changed, in ISO 8601 format. | | `meta` | object | Resource metadata. | | `meta.links` | object | Navigation links for the resource. | | `meta.links.self` | string | Path of the server. | | `meta.actions` | object | Actions available for the server in its current state. | Attention `meta.actions` follows the server's state. An active server offers `test-connection` and `deactivate`; an inactive one offers `test-connection` and `activate`. A server disabled through [DELETE | Disable LDAP server by [id]](/v4-2/docs/api-v2-delete-ldap-server) is still readable. The request returns `200 OK` with `active` set to `false`, not `404 Not Found`. --- ## Errors | HTTP code | Message | Possible cause | Solution | | --- | --- | --- | --- | | `401` | `api.auth.unauthorized` | The access token is missing or has expired. | Request a new access token. | | `403` | `api.auth.forbidden` | The authorization does not have permission to read LDAP servers. | Ask the administrator to check the **Users** authorization in A2A, then generate a new token. | | `404` | `api.resource.not_found` | The server does not exist. | Check the identification code sent in the path. | | `422` | `api.validation.invalid_field` | `fields` names a field that does not exist. | Check the field names and resend the request. | | `429` | `api.rate_limit.exceeded` | The request rate limit was exceeded. | Reduce the request rate and try again. | For authentication error messages and the `403` versus `404` policy, access [API v2 - Conventions and shared behaviors](/v4-2/docs/api-v2-conventions-and-shared-behaviors).