n8n

n8n Settings Ldap API

Operations about LDAP settings

Operations 4

GET /settings/ldap Retrieve the LDAP configuration #
PUT /settings/ldap Set the LDAP configuration #
GET /settings/ldap/sync Retrieve LDAP synchronization history #
POST /settings/ldap/sync Trigger an LDAP synchronization #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/n8n-settingsldap-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

n8n-settingsldap-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: n8n Public Settings Ldap API
  description: n8n Public API
  termsOfService: https://n8n.io/legal/#terms
  contact:
    email: hello@n8n.io
  license:
    name: Sustainable Use License
    url: https://github.com/n8n-io/n8n/blob/master/LICENSE.md
  version: 1.1.1
servers:
- url: /api/v1
  description: Current n8n instance (self-hosted built-in playground)
- url: '{url}/api/v1'
  description: Self-hosted n8n instance
  variables:
    url:
      default: https://example.com
security:
- ApiKeyAuth: []
- BearerAuth: []
- CookieAuth: []
tags:
- name: SettingsLdap
  description: Operations about LDAP settings
paths:
  /settings/ldap:
    get:
      x-eov-operation-id: getLdapConfiguration
      x-required-scope: ldap:manage
      x-eov-operation-handler: v1/handlers/ldap/ldap.handler
      tags:
      - SettingsLdap
      summary: Retrieve the LDAP configuration
      description: Retrieve the current LDAP configuration, including every field exposed in the UI. The binding admin password is redacted on read. Requires the `ldap:manage` scope and the LDAP feature to be licensed.
      responses:
        '200':
          description: Operation successful.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                description: 'Full LDAP configuration. Every field is returned by GET; send the full object back as PUT body.

                  '
                required:
                - loginEnabled
                - loginLabel
                - connectionUrl
                - allowUnauthorizedCerts
                - connectionSecurity
                - connectionPort
                - baseDn
                - bindingAdminDn
                - bindingAdminPassword
                - firstNameAttribute
                - lastNameAttribute
                - emailAttribute
                - loginIdAttribute
                - ldapIdAttribute
                - userFilter
                - synchronizationEnabled
                - synchronizationInterval
                - searchPageSize
                - searchTimeout
                - enforceEmailUniqueness
                properties:
                  loginEnabled:
                    type: boolean
                    description: Whether LDAP login is enabled.
                    example: false
                  loginLabel:
                    type: string
                    description: Label shown on the LDAP login button.
                    example: LDAP
                  connectionUrl:
                    type: string
                    description: LDAP server URL.
                    example: ldap://ldap.example.com
                  allowUnauthorizedCerts:
                    type: boolean
                    description: Whether to allow unauthorized (self-signed) certificates.
                    example: false
                  connectionSecurity:
                    type: string
                    enum:
                    - none
                    - tls
                    - startTls
                    description: TLS/SSL security mode for the LDAP connection.
                    example: none
                  connectionPort:
                    type: integer
                    description: LDAP server port.
                    example: 389
                  baseDn:
                    type: string
                    description: Base DN for LDAP search queries.
                    example: dc=example,dc=com
                  bindingAdminDn:
                    type: string
                    description: DN of the LDAP admin user for binding.
                    example: cn=admin,dc=example,dc=com
                  bindingAdminPassword:
                    type: string
                    description: 'Password for the LDAP admin user. Redacted on GET; returns the blanking placeholder when a password is stored, empty string when unset. Send the blanking placeholder from a prior GET to keep the stored password unchanged.

                      '
                  firstNameAttribute:
                    type: string
                    description: LDAP attribute mapped to the user's first name.
                    example: givenName
                  lastNameAttribute:
                    type: string
                    description: LDAP attribute mapped to the user's last name.
                    example: sn
                  emailAttribute:
                    type: string
                    description: LDAP attribute mapped to the user's email.
                    example: mail
                  loginIdAttribute:
                    type: string
                    description: LDAP attribute used for login (usually the same as emailAttribute).
                    example: mail
                  ldapIdAttribute:
                    type: string
                    description: LDAP attribute that uniquely identifies a user.
                    example: uid
                  userFilter:
                    type: string
                    description: 'Additional LDAP filter to apply when searching for users. Use an empty string for no additional filter.

                      '
                    example: (objectClass=inetOrgPerson)
                  synchronizationEnabled:
                    type: boolean
                    description: Whether automatic LDAP synchronization is enabled.
                    example: false
                  synchronizationInterval:
                    type: integer
                    description: Interval in minutes between automatic synchronizations. Ignored if synchronizationEnabled is false.
                    example: 60
                  searchPageSize:
                    type: integer
                    description: Number of LDAP entries to fetch per search page.
                    example: 1000
                  searchTimeout:
                    type: integer
                    description: LDAP search timeout in seconds.
                    example: 60
                  enforceEmailUniqueness:
                    type: boolean
                    description: 'Whether to enforce that email addresses are unique across LDAP users. When true, if two users have the same email, only the first will be imported.

                      '
                    example: true
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      operationId: getSettingsLdap
      x-operation-id-source: derived
    put:
      x-eov-operation-id: updateLdapConfiguration
      x-required-scope: ldap:manage
      x-eov-operation-handler: v1/handlers/ldap/ldap.handler
      tags:
      - SettingsLdap
      summary: Set the LDAP configuration
      description: Replace the LDAP configuration with the provided full object (partial updates are not supported). For bindingAdminPassword, submit the blanking placeholder from a prior GET to keep the stored password unchanged. Requires the `ldap:manage` scope and the LDAP feature to be licensed. Setting loginEnabled to false is destructive and it deletes all stored LDAP user identities and disables synchronization.
      requestBody:
        description: The full LDAP configuration to set.
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              description: Full LDAP configuration. Use empty strings for unset fields.
              required:
              - loginEnabled
              - loginLabel
              - connectionUrl
              - allowUnauthorizedCerts
              - connectionSecurity
              - connectionPort
              - baseDn
              - bindingAdminDn
              - bindingAdminPassword
              - firstNameAttribute
              - lastNameAttribute
              - emailAttribute
              - loginIdAttribute
              - ldapIdAttribute
              - userFilter
              - synchronizationEnabled
              - synchronizationInterval
              - searchPageSize
              - searchTimeout
              - enforceEmailUniqueness
              properties:
                loginEnabled:
                  type: boolean
                  description: 'Whether LDAP login is enabled. Setting this to false is destructive — it deletes all stored LDAP user identities and disables synchronization.

                    '
                  example: false
                loginLabel:
                  type: string
                  description: Label shown on the LDAP login button.
                  example: LDAP
                connectionUrl:
                  type: string
                  description: LDAP server URL.
                  example: ldap://ldap.example.com
                allowUnauthorizedCerts:
                  type: boolean
                  description: Whether to allow unauthorized (self-signed) certificates.
                  example: false
                connectionSecurity:
                  type: string
                  enum:
                  - none
                  - tls
                  - startTls
                  description: TLS/SSL security mode for the LDAP connection.
                  example: none
                connectionPort:
                  type: integer
                  description: LDAP server port.
                  example: 389
                baseDn:
                  type: string
                  description: Base DN for LDAP search queries.
                  example: dc=example,dc=com
                bindingAdminDn:
                  type: string
                  description: DN of the LDAP admin user for binding.
                  example: cn=admin,dc=example,dc=com
                bindingAdminPassword:
                  type: string
                  description: 'Password for the LDAP admin user. To keep an existing password unchanged, submit the blanking placeholder from a prior GET response. Use an empty string to clear the password.

                    '
                firstNameAttribute:
                  type: string
                  description: LDAP attribute mapped to the user's first name.
                  example: givenName
                lastNameAttribute:
                  type: string
                  description: LDAP attribute mapped to the user's last name.
                  example: sn
                emailAttribute:
                  type: string
                  description: LDAP attribute mapped to the user's email.
                  example: mail
                loginIdAttribute:
                  type: string
                  description: LDAP attribute used for login (usually the same as emailAttribute).
                  example: mail
                ldapIdAttribute:
                  type: string
                  description: LDAP attribute that uniquely identifies a user.
                  example: uid
                userFilter:
                  type: string
                  description: 'Additional LDAP filter to apply when searching for users. Use an empty string for no additional filter.

                    '
                  example: (objectClass=inetOrgPerson)
                synchronizationEnabled:
                  type: boolean
                  description: Whether automatic LDAP synchronization is enabled.
                  example: false
                synchronizationInterval:
                  type: integer
                  description: Interval in minutes between automatic synchronizations. Ignored if synchronizationEnabled is false.
                  example: 60
                searchPageSize:
                  type: integer
                  description: Number of LDAP entries to fetch per search page.
                  example: 1000
                searchTimeout:
                  type: integer
                  description: LDAP search timeout in seconds.
                  example: 60
                enforceEmailUniqueness:
                  type: boolean
                  description: 'Whether to enforce that email addresses are unique across LDAP users. When true, if two users have the same email, only the first will be imported.

                    '
                  example: true
      responses:
        '200':
          description: Operation successful.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                description: 'Full LDAP configuration. Every field is returned by GET; send the full object back as PUT body.

                  '
                required:
                - loginEnabled
                - loginLabel
                - connectionUrl
                - allowUnauthorizedCerts
                - connectionSecurity
                - connectionPort
                - baseDn
                - bindingAdminDn
                - bindingAdminPassword
                - firstNameAttribute
                - lastNameAttribute
                - emailAttribute
                - loginIdAttribute
                - ldapIdAttribute
                - userFilter
                - synchronizationEnabled
                - synchronizationInterval
                - searchPageSize
                - searchTimeout
                - enforceEmailUniqueness
                properties:
                  loginEnabled:
                    type: boolean
                    description: Whether LDAP login is enabled.
                    example: false
                  loginLabel:
                    type: string
                    description: Label shown on the LDAP login button.
                    example: LDAP
                  connectionUrl:
                    type: string
                    description: LDAP server URL.
                    example: ldap://ldap.example.com
                  allowUnauthorizedCerts:
                    type: boolean
                    description: Whether to allow unauthorized (self-signed) certificates.
                    example: false
                  connectionSecurity:
                    type: string
                    enum:
                    - none
                    - tls
                    - startTls
                    description: TLS/SSL security mode for the LDAP connection.
                    example: none
                  connectionPort:
                    type: integer
                    description: LDAP server port.
                    example: 389
                  baseDn:
                    type: string
                    description: Base DN for LDAP search queries.
                    example: dc=example,dc=com
                  bindingAdminDn:
                    type: string
                    description: DN of the LDAP admin user for binding.
                    example: cn=admin,dc=example,dc=com
                  bindingAdminPassword:
                    type: string
                    description: 'Password for the LDAP admin user. Redacted on GET; returns the blanking placeholder when a password is stored, empty string when unset. Send the blanking placeholder from a prior GET to keep the stored password unchanged.

                      '
                  firstNameAttribute:
                    type: string
                    description: LDAP attribute mapped to the user's first name.
                    example: givenName
                  lastNameAttribute:
                    type: string
                    description: LDAP attribute mapped to the user's last name.
                    example: sn
                  emailAttribute:
                    type: string
                    description: LDAP attribute mapped to the user's email.
                    example: mail
                  loginIdAttribute:
                    type: string
                    description: LDAP attribute used for login (usually the same as emailAttribute).
                    example: mail
                  ldapIdAttribute:
                    type: string
                    description: LDAP attribute that uniquely identifies a user.
                    example: uid
                  userFilter:
                    type: string
                    description: 'Additional LDAP filter to apply when searching for users. Use an empty string for no additional filter.

                      '
                    example: (objectClass=inetOrgPerson)
                  synchronizationEnabled:
                    type: boolean
                    description: Whether automatic LDAP synchronization is enabled.
                    example: false
                  synchronizationInterval:
                    type: integer
                    description: Interval in minutes between automatic synchronizations. Ignored if synchronizationEnabled is false.
                    example: 60
                  searchPageSize:
                    type: integer
                    description: Number of LDAP entries to fetch per search page.
                    example: 1000
                  searchTimeout:
                    type: integer
                    description: LDAP search timeout in seconds.
                    example: 60
                  enforceEmailUniqueness:
                    type: boolean
                    description: 'Whether to enforce that email addresses are unique across LDAP users. When true, if two users have the same email, only the first will be imported.

                      '
                    example: true
        '400':
          description: The request is invalid or provides malformed data.
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      operationId: putSettingsLdap
      x-operation-id-source: derived
  /settings/ldap/sync:
    get:
      x-eov-operation-id: getLdapSync
      x-required-scope: ldap:sync
      x-eov-operation-handler: v1/handlers/ldap/ldap.handler
      tags:
      - SettingsLdap
      summary: Retrieve LDAP synchronization history
      description: Retrieve the history of LDAP synchronizations, most recent first. Requires the `ldap:sync` scope and the LDAP feature to be licensed.
      parameters:
      - name: limit
        in: query
        description: The maximum number of items to return.
        required: false
        schema:
          type: number
          example: 100
          default: 100
          maximum: 250
      - name: cursor
        in: query
        description: Paginate by setting the cursor parameter to the nextCursor attribute returned by the previous request's response. Default value fetches the first "page" of the collection. See pagination for more detail.
        required: false
        style: form
        schema:
          type: string
      responses:
        '200':
          description: Operation successful.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      additionalProperties: false
                      description: LDAP synchronization history record.
                      required:
                      - id
                      - runMode
                      - status
                      - startedAt
                      - endedAt
                      - scanned
                      - created
                      - updated
                      - disabled
                      - error
                      properties:
                        id:
                          type: integer
                          description: Unique identifier for this sync run.
                          example: 1
                        runMode:
                          type: string
                          enum:
                          - dry
                          - live
                          description: Whether the sync was a dry run or applied live.
                          example: live
                        status:
                          type: string
                          description: Status of the synchronization (e.g., success, error).
                          example: success
                        startedAt:
                          type: string
                          format: date-time
                          description: Timestamp when the synchronization started.
                          example: 2025-07-21 10:30:00+00:00
                        endedAt:
                          type: string
                          format: date-time
                          description: Timestamp when the synchronization completed.
                          example: 2025-07-21 10:35:00+00:00
                        scanned:
                          type: integer
                          description: Number of LDAP entries scanned during synchronization.
                          example: 42
                        created:
                          type: integer
                          description: Number of new users created during synchronization.
                          example: 5
                        updated:
                          type: integer
                          description: Number of existing users updated during synchronization.
                          example: 3
                        disabled:
                          type: integer
                          description: Number of users disabled during synchronization.
                          example: 0
                        error:
                          type: string
                          description: Error message if the synchronization failed. Empty string if successful.
                          example: ''
                  nextCursor:
                    type:
                    - string
                    - 'null'
                    description: 'Paginate through the synchronization history by setting the cursor parameter to the nextCursor attribute returned by the previous request. A null value means there are no more records.

                      '
                    example: MTIzZTQ1NjctZTg5Yi0xMmQzLWE0NTYtNDI2NjE0MTc0MDA
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      operationId: getSettingsLdapSync
      x-operation-id-source: derived
    post:
      x-eov-operation-id: runLdapSync
      x-required-scope: ldap:sync
      x-eov-operation-handler: v1/handlers/ldap/ldap.handler
      tags:
      - SettingsLdap
      summary: Trigger an LDAP synchronization
      description: Manually trigger an LDAP synchronization. The response returns the new sync history record. Requires the `ldap:sync` scope and the LDAP feature to be licensed.
      requestBody:
        description: Synchronization parameters.
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              description: Request body for triggering an LDAP synchronization.
              required:
              - type
              properties:
                type:
                  type: string
                  enum:
                  - live
                  - dry
                  description: 'Type of synchronization. ''live'' applies changes to the database, ''dry'' performs a test run without persisting changes.

                    '
                  example: live
      responses:
        '200':
          description: Operation successful.
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                description: LDAP synchronization history record.
                required:
                - id
                - runMode
                - status
                - startedAt
                - endedAt
                - scanned
                - created
                - updated
                - disabled
                - error
                properties:
                  id:
                    type: integer
                    description: Unique identifier for this sync run.
                    example: 1
                  runMode:
                    type: string
                    enum:
                    - dry
                    - live
                    description: Whether the sync was a dry run or applied live.
                    example: live
                  status:
                    type: string
                    description: Status of the synchronization (e.g., success, error).
                    example: success
                  startedAt:
                    type: string
                    format: date-time
                    description: Timestamp when the synchronization started.
                    example: 2025-07-21 10:30:00+00:00
                  endedAt:
                    type: string
                    format: date-time
                    description: Timestamp when the synchronization completed.
                    example: 2025-07-21 10:35:00+00:00
                  scanned:
                    type: integer
                    description: Number of LDAP entries scanned during synchronization.
                    example: 42
                  created:
                    type: integer
                    description: Number of new users created during synchronization.
                    example: 5
                  updated:
                    type: integer
                    description: Number of existing users updated during synchronization.
                    example: 3
                  disabled:
                    type: integer
                    description: Number of users disabled during synchronization.
                    example: 0
                  error:
                    type: string
                    description: Error message if the synchronization failed. Empty string if successful.
                    example: ''
        '400':
          description: The request is invalid or provides malformed data.
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      operationId: postSettingsLdapSync
      x-operation-id-source: derived
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-N8N-API-KEY
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    CookieAuth:
      type: apiKey
      in: cookie
      name: n8n-auth
externalDocs:
  description: n8n API documentation
  url: https://docs.n8n.io/api/
x-enable-proxy: false