Delinea DirectoryServices API
View and maintain Directory Services integrations
View and maintain Directory Services integrations
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/delinea-directoryservices-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Secret Server Rest Activations Directory Services API
description: REST API documentation for Secret Server. This document describes how to use the REST API. All requests require an authentication token; please see the <a href="../OAuth/">authentication document</a> for more information. The <a href="swagger.json">Swagger specification</a> for this API is also available.
termsOfService: https://delinea.com/eula
contact:
name: Support
url: https://delinea.com
version: 11.7.2
servers:
- url: /SecretServer/api
security:
- BearerToken: []
tags:
- name: DirectoryServices
description: View and maintain Directory Services integrations
paths:
/v1/directory-services/domains/{domainId}/group/{groupId}:
delete:
tags:
- DirectoryServices
summary: Unlink a group from domain
description: Unlinking a group from a domain will disable future synchronization updates. The group will also be disabled.
operationId: DirectoryServicesService_UnlinkDomainGroup
parameters:
- name: domainId
in: path
description: domainId
required: true
schema:
type: integer
format: int32
- name: groupId
in: path
description: groupId
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Success status
content:
application/json:
schema:
description: Boolean
type: boolean
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/synchronization/logs:
get:
tags:
- DirectoryServices
summary: Get Synchronization Log
description: Get Synchronization Log
operationId: DirectoryServicesService_GetSynchronizationLog
parameters:
- name: filter.endDate
in: query
description: EndDate
required: false
x-nullable: true
schema:
type: string
format: date-time
- name: filter.searchText
in: query
description: SearchText
required: false
schema:
type: string
- name: filter.startDate
in: query
description: StartDate
required: false
x-nullable: true
schema:
type: string
format: date-time
- name: skip
in: query
description: Number of records to skip before taking results
required: false
schema:
type: integer
format: int32
- name: sortBy[0].direction
in: query
description: Sort direction
required: false
schema:
type: string
- name: sortBy[0].name
in: query
description: Sort field name
required: false
schema:
type: string
- name: sortBy[0].priority
in: query
description: Priority index. Sorts with lower values are executed earlier
required: false
schema:
type: integer
format: int32
- name: take
in: query
description: Maximum number of records to include in results
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Synchronization log entries
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfDirectoryServicesSynchronizationLogEntry'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/synchronization:
get:
tags:
- DirectoryServices
summary: Directory Services Sync Status
description: Return status of directory services synchronization
operationId: DirectoryServicesService_GetSynchronizationStatus
responses:
'200':
description: Whether or not the sync has started
content:
application/json:
schema:
$ref: '#/components/schemas/DirectoryServicesSynchronizationStatus'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains:
get:
tags:
- DirectoryServices
summary: Search Domains
description: Search Domains
operationId: DirectoryServicesService_SearchDomains
parameters:
- name: filter.domainName
in: query
description: DomainName
required: false
schema:
type: string
- name: filter.includeInactive
in: query
description: IncludeInactive
required: false
schema:
type: boolean
- name: skip
in: query
description: Number of records to skip before taking results
required: false
schema:
type: integer
format: int32
- name: sortBy[0].direction
in: query
description: Sort direction
required: false
schema:
type: string
- name: sortBy[0].name
in: query
description: Sort field name
required: false
schema:
type: string
- name: sortBy[0].priority
in: query
description: Priority index. Sorts with lower values are executed earlier
required: false
schema:
type: integer
format: int32
- name: take
in: query
description: Maximum number of records to include in results
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Domains that matched
content:
application/json:
schema:
$ref: '#/components/schemas/IPagingOfDomainSummaryModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
post:
tags:
- DirectoryServices
summary: Create Domain
description: Create a new domain to be used for directory services synchronization / integration
operationId: DirectoryServicesService_CreateDomain
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DomainCreateArgs'
description: args
responses:
'200':
description: Domain that was just created
content:
application/json:
schema:
$ref: '#/components/schemas/DomainModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/{id}:
get:
tags:
- DirectoryServices
summary: Get a Domain
description: Get a Domain
operationId: DirectoryServicesService_GetDomain
parameters:
- name: id
in: path
description: id
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Domain that was found
content:
application/json:
schema:
$ref: '#/components/schemas/DomainModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/ldap-settings/{id}:
get:
tags:
- DirectoryServices
summary: Get Ldap synchronization settings for a domain
description: Get Ldap synchronization settings for a domain
operationId: DirectoryServicesService_GetLdapSyncSettings
parameters:
- name: id
in: path
description: id
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Ldap synchronization settings for the domain
content:
application/json:
schema:
$ref: '#/components/schemas/LdapSyncSettingsViewModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/stub:
get:
tags:
- DirectoryServices
summary: Get a Domain Stub
description: Get a Domain Stub
operationId: DirectoryServicesService_GetDomainStub
parameters:
- name: domainType
in: query
description: domainType
required: false
schema:
type: string
responses:
'200':
description: Domain Stub
content:
application/json:
schema:
$ref: '#/components/schemas/DomainModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/{domainId}/groups/search-directory:
get:
tags:
- DirectoryServices
summary: Search in the directory for groups
description: Using the credentials defined on the domain search within the directory for groups
operationId: DirectoryServicesService_SearchDirectoryForGroups
parameters:
- name: domainId
in: path
description: domainId
required: true
schema:
type: integer
format: int32
- name: searchText
in: query
description: 'Search text. Use * for wildcards, ex: Admin*. Leave empty to return all.'
required: false
schema:
type: string
responses:
'200':
description: Array of groups matching search criteria
content:
application/json:
schema:
$ref: '#/components/schemas/ExternalGroupViewModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/{domainId}/members:
get:
tags:
- DirectoryServices
summary: Search in the directory for members of a group
description: Using the credentials defined on the domain find members of a group within the directory
operationId: DirectoryServicesService_GetDirectoryGroupMembers
parameters:
- name: domainId
in: path
description: domainId
required: true
schema:
type: integer
format: int32
- name: domainIdentifier
in: query
description: The unique directory identifier for the group to be linked. For example, this is ADGuid in Active Directory
required: false
schema:
type: string
- name: groupName
in: query
description: Name of the Group
required: false
schema:
type: string
responses:
'200':
description: Array of users in the passed in group
content:
application/json:
schema:
$ref: '#/components/schemas/DirectoryServicesGroupMemberResponse'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/configuration:
get:
tags:
- DirectoryServices
summary: Directory Services Configuration
description: Retrieve the current settings for Directory Services configuration
operationId: DirectoryServicesService_GetDirectoryServicesConfiguration
responses:
'200':
description: Directory Services Configuration
content:
application/json:
schema:
$ref: '#/components/schemas/DirectoryServicesConfigurationModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
patch:
tags:
- DirectoryServices
summary: Update Directory Services Configuration
description: Update the current settings for Directory Services configuration
operationId: DirectoryServicesService_PatchDirectoryServicesConfiguration
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DirectoryServicesConfigurationUpdateArgs'
description: args
responses:
'200':
description: Updated Directory Services Configuration
content:
application/json:
schema:
$ref: '#/components/schemas/DirectoryServicesConfigurationModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/ldap-settings/{domainId}:
patch:
tags:
- DirectoryServices
summary: Patch Ldap Sync Settings for a domain
description: Patch Ldap Sync Settings for a domain
operationId: DirectoryServicesService_PatchLdapSyncSettings
parameters:
- name: domainId
in: path
description: domainId
required: true
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/LdapSyncSettingsPatchArgs'
description: args
responses:
'200':
description: Domain that was just updated
content:
application/json:
schema:
$ref: '#/components/schemas/LdapSyncSettingsViewModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/{domainId}:
patch:
tags:
- DirectoryServices
summary: Patch a domain
description: Patch a domain
operationId: DirectoryServicesService_PatchDomain
parameters:
- name: domainId
in: path
description: domainId
required: true
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DomainPatchArgs'
description: args
responses:
'200':
description: Domain that was just updated
content:
application/json:
schema:
$ref: '#/components/schemas/DomainModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/synchronization-now:
post:
tags:
- DirectoryServices
summary: Synchronize all directory services
description: Run synchronize to update users and groups for all configurated and enabled domains in all directories and domains
operationId: DirectoryServicesService_SynchronizeNow
responses:
'200':
description: True if the command was initiated successfully
content:
application/json:
schema:
description: Boolean
type: boolean
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/directory-services/domains/{domainId}/group:
post:
tags:
- DirectoryServices
summary: Link a group from the directory
description: Linking or adding a group to a domain will synchronize all users from the directory to SS that are members of this group.
operationId: DirectoryServicesService_LinkDomainGroup
parameters:
- name: domainId
in: path
description: domainId
required: true
schema:
type: integer
format: int32
requestBody:
$ref: '#/components/requestBodies/LinkExternalGroupArgs'
responses:
'200':
description: Success status
content:
application/json:
schema:
description: Boolean
type: boolean
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
components:
schemas:
ViewFieldDropDownValueOfString:
description: Base Distinguished Name Code
properties:
additionalLinks:
description: AdditionalLinks
items:
$ref: '#/components/schemas/ViewFieldLink'
type: array
description:
description: Description
type: string
dropDownOptions:
description: DropDownOptions
items:
$ref: '#/components/schemas/ViewFieldDropDownOption'
type: array
fieldInputType:
description: FieldInputType
type:
- string
- 'null'
hasHistory:
description: HasHistory
type:
- boolean
- 'null'
helpLink:
description: HelpLink
type: string
helpLinkText:
description: HelpLinkText
type: string
hidden:
description: Hidden
type:
- boolean
- 'null'
hideOnView:
description: HideOnView
type:
- boolean
- 'null'
isRequired:
description: IsRequired
type:
- boolean
- 'null'
label:
description: Label
type: string
maxLength:
description: MaxLength
type:
- integer
- 'null'
format: int32
name:
description: Name
type: string
placeholder:
description: Placeholder
type: string
readOnly:
description: ReadOnly
type:
- boolean
- 'null'
readOnlyReason:
description: ReadOnlyReason
type: string
sortOrder:
description: SortOrder
type:
- integer
- 'null'
format: int32
value:
description: Value
type: string
type: object
MultifactorAuthenticationProviderTypes:
description: Domain multifactor authentication providers.
properties: {}
type: string
enum:
- None
- Radius
- TOTPAuthenticator
- Duo
- Fido2
- Email
DomainSynchronizationStatus:
description: Results of the last synchronization for this domain
properties:
disabledUsers:
description: Number of users that were disabled
type: integer
format: int32
domainId:
description: Which domain is this status for
type: integer
format: int32
domainUsersUpdatedSinceLastSynchronization:
description: Obsolete - Not populated.
type: integer
format: int32
lastLogEntry:
description: Log Entry used for parsing
type: string
newUsersCreated:
description: Total new users that were created
type: integer
format: int32
newUsersCreatedAsDisabled:
description: Total new users that were created and then set as disabled due to either license limits or other settings
type: integer
format: int32
usersRemovedFromGroups:
description: Total users removed from groups
type: integer
format: int32
usersWithGroupMembershipChanges:
description: Total number of users that were added or removed from any group in this domain
type: integer
format: int32
type: object
UpdateFieldValueOfMultifactorAuthenticationProviderTypes:
description: Domain multifactor authentication provider.
properties:
dirty:
description: Dirty
type: boolean
value:
$ref: '#/components/schemas/MultifactorAuthenticationProviderTypes'
type: object
DomainPatchModel:
description: Patch update data for the domain.
properties:
active:
$ref: '#/components/schemas/UpdateFieldValueOfBoolean'
authType:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalAuthType'
clientId:
$ref: '#/components/schemas/UpdateFieldValueOfString'
clientSecret:
$ref: '#/components/schemas/UpdateFieldValueOfString'
distinguishedName:
$ref: '#/components/schemas/UpdateFieldValueOfString'
domainName:
$ref: '#/components/schemas/UpdateFieldValueOfString'
friendlyName:
$ref: '#/components/schemas/UpdateFieldValueOfString'
multifactorAuthenticationProvider:
$ref: '#/components/schemas/UpdateFieldValueOfMultifactorAuthenticationProviderTypes'
siteId:
$ref: '#/components/schemas/UpdateFieldValueOfInt32'
synchronizationSecretId:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalInt32'
tenantId:
$ref: '#/components/schemas/UpdateFieldValueOfString'
userAuthType:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalAuthType'
useSecureLDAP:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalBoolean'
type: object
Severity:
description: Error severity level
properties: {}
type: string
enum:
- None
- Retry
- Warn
- Critical
- Fatal
UpdateFieldValueOfDirectoryServicesSynchronizationUserOption:
description: Indicates how to synchronize the enabled status for new and existing users
properties:
dirty:
description: Dirty
type: boolean
value:
$ref: '#/components/schemas/DirectoryServicesSynchronizationUserOption'
type: object
LinkExternalGroupArgs:
description: LinkExternalGroupArgs
properties:
data:
$ref: '#/components/schemas/LinkExternalGroupSettings'
type: object
BadRequestResponse:
description: Response object for invalid requests
required:
- message
properties:
message:
description: Error message
type: string
messageDetail:
description: Error message detail
type: string
errorCode:
description: Error message code
type: string
modelState:
description: An object describing validation errors
type: object
type: object
DomainActionType:
description: Valid Actions
properties: {}
type: string
enum:
- EditDomain
- EditGroups
DirectoryServicesSynchronizationUserOption:
description: Indicates how to synchronize the enabled status for new and existing users
properties: {}
type: string
enum:
- ImportEnabled
- ImportDisabled
- MirrorDirectory
UpdateFieldValueOfInt32:
description: How many days until the password expires.
properties:
dirty:
description: Dirty
type: boolean
value:
description: Value
type: integer
format: int32
type: object
DomainModel:
description: Domain
properties:
active:
description: Active
type: boolean
domainId:
description: Domain Id
type:
- integer
- 'null'
format: int32
domainName:
description: Domain Name
type: string
friendlyName:
description: Friendly Name
type: string
multifactorAuthenticationProvider:
$ref: '#/components/schemas/MultifactorAuthenticationProviderTypes'
siteId:
description: Site Id
type: integer
format: int32
synchronizationSecretId:
description: Synchronization Secret
type:
- integer
- 'null'
format: int32
useSecureLDAP:
description: Use Secure LDAP
type: boolean
type: object
DirectoryServicesGroupMemberResponse:
description: Group Member Response
properties:
errorMessage:
description: Indicates if an error message occurred
type: string
members:
description: Members of the group
items:
$ref: '#/components/schemas/DirectoryGroupUserViewModel'
type: array
# --- truncated at 32 KB (51 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/delinea/refs/heads/main/openapi/delinea-directoryservices-api-openapi.yml