LDAP
Configuration
curl
curl -X GET "https://appliance.example.com/api/v1/ldap/config" \
-H "Authorization: Bearer $TOKEN"
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/config';
$headers = [
'Authorization: Bearer ' . $token,
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
response = requests.get("https://appliance.example.com/api/v1/ldap/config", headers=headers)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/config', {
method: 'GET',
headers: {
Authorization: `Bearer ${token}`,
},
});
const data = await response.json();
Bruno
meta {
name: Get the LDAP settings
type: http
seq: 1
}
get {
url: https://{{node-0}}:{{port}}/api/v1/ldap/config
body: none
auth: bearer
}
auth:bearer {
token: {{token}}
}
Response
{
"status": "success",
"message": "LDAP configuration",
"data": [
{
"bindPassword": "********",
"bindDn": "cn=svc,dc=example,dc=com",
"baseDn": "dc=example,dc=com",
"encryption": "none"
}
]
}
curl
curl -X PUT "https://appliance.example.com/api/v1/ldap/config" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"enabled": true,
"hosts": [
"<hosts>"
],
"port": 0,
"encryption": "none",
"caCertificate": "<caCertificate>",
"bindDn": "<bindDn>",
"bindPassword": "<bindPassword>",
"baseDn": "<baseDn>",
"userSearchFilter": "<userSearchFilter>",
"uniqueIdAttribute": "<uniqueIdAttribute>",
"emailAttribute": "<emailAttribute>",
"firstNameAttribute": "<firstNameAttribute>",
"lastNameAttribute": "<lastNameAttribute>",
"groupMembershipMode": "memberOf",
"groupSearchFilter": "<groupSearchFilter>",
"fallbackGroupId": "<fallbackGroupId>",
"mappings": [
{
"groupDn": "<groupDn>",
"groupIds": [
"<groupIds>"
]
}
]
}'
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/config';
$headers = [
'Authorization: Bearer ' . $token,
'Content-Type: application/json',
];
$payload = [
'enabled' => true,
'hosts' => [
'<hosts>',
],
'port' => 0,
'encryption' => 'none',
'caCertificate' => '<caCertificate>',
'bindDn' => '<bindDn>',
'bindPassword' => '<bindPassword>',
'baseDn' => '<baseDn>',
'userSearchFilter' => '<userSearchFilter>',
'uniqueIdAttribute' => '<uniqueIdAttribute>',
'emailAttribute' => '<emailAttribute>',
'firstNameAttribute' => '<firstNameAttribute>',
'lastNameAttribute' => '<lastNameAttribute>',
'groupMembershipMode' => 'memberOf',
'groupSearchFilter' => '<groupSearchFilter>',
'fallbackGroupId' => '<fallbackGroupId>',
'mappings' => [
[
'groupDn' => '<groupDn>',
'groupIds' => [
'<groupIds>',
],
],
],
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => json_encode($payload),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
payload = {
"enabled": true,
"hosts": [
"<hosts>"
],
"port": 0,
"encryption": "none",
"caCertificate": "<caCertificate>",
"bindDn": "<bindDn>",
"bindPassword": "<bindPassword>",
"baseDn": "<baseDn>",
"userSearchFilter": "<userSearchFilter>",
"uniqueIdAttribute": "<uniqueIdAttribute>",
"emailAttribute": "<emailAttribute>",
"firstNameAttribute": "<firstNameAttribute>",
"lastNameAttribute": "<lastNameAttribute>",
"groupMembershipMode": "memberOf",
"groupSearchFilter": "<groupSearchFilter>",
"fallbackGroupId": "<fallbackGroupId>",
"mappings": [
{
"groupDn": "<groupDn>",
"groupIds": [
"<groupIds>"
]
}
]
}
response = requests.put("https://appliance.example.com/api/v1/ldap/config", headers=headers, json=payload)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/config', {
method: 'PUT',
headers: {
Authorization: `Bearer ${token}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"enabled": true,
"hosts": [
"<hosts>"
],
"port": 0,
"encryption": "none",
"caCertificate": "<caCertificate>",
"bindDn": "<bindDn>",
"bindPassword": "<bindPassword>",
"baseDn": "<baseDn>",
"userSearchFilter": "<userSearchFilter>",
"uniqueIdAttribute": "<uniqueIdAttribute>",
"emailAttribute": "<emailAttribute>",
"firstNameAttribute": "<firstNameAttribute>",
"lastNameAttribute": "<lastNameAttribute>",
"groupMembershipMode": "memberOf",
"groupSearchFilter": "<groupSearchFilter>",
"fallbackGroupId": "<fallbackGroupId>",
"mappings": [
{
"groupDn": "<groupDn>",
"groupIds": [
"<groupIds>"
]
}
]
}),
});
const data = await response.json();
Bruno
meta {
name: Update the LDAP settings
type: http
seq: 1
}
put {
url: https://{{node-0}}:{{port}}/api/v1/ldap/config
body: json
auth: bearer
}
headers {
Content-Type: application/json
}
auth:bearer {
token: {{token}}
}
body:json {
{
"enabled": true,
"hosts": [
"<hosts>"
],
"port": 0,
"encryption": "none",
"caCertificate": "<caCertificate>",
"bindDn": "<bindDn>",
"bindPassword": "<bindPassword>",
"baseDn": "<baseDn>",
"userSearchFilter": "<userSearchFilter>",
"uniqueIdAttribute": "<uniqueIdAttribute>",
"emailAttribute": "<emailAttribute>",
"firstNameAttribute": "<firstNameAttribute>",
"lastNameAttribute": "<lastNameAttribute>",
"groupMembershipMode": "memberOf",
"groupSearchFilter": "<groupSearchFilter>",
"fallbackGroupId": "<fallbackGroupId>",
"mappings": [
{
"groupDn": "<groupDn>",
"groupIds": [
"<groupIds>"
]
}
]
}
}
Response
{
"status": "success",
"message": "LDAP configuration updated",
"data": []
}
curl
curl -X DELETE "https://appliance.example.com/api/v1/ldap/config" \
-H "Authorization: Bearer $TOKEN"
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/config';
$headers = [
'Authorization: Bearer ' . $token,
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
response = requests.delete("https://appliance.example.com/api/v1/ldap/config", headers=headers)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/config', {
method: 'DELETE',
headers: {
Authorization: `Bearer ${token}`,
},
});
const data = await response.json();
Bruno
meta {
name: Clear the LDAP settings
type: http
seq: 1
}
delete {
url: https://{{node-0}}:{{port}}/api/v1/ldap/config
body: none
auth: bearer
}
auth:bearer {
token: {{token}}
}
Response
{
"status": "success",
"message": "LDAP configuration cleared",
"data": []
}
Test the LDAP connection
curl
curl -X POST "https://appliance.example.com/api/v1/ldap/config/test" \
-H "Authorization: Bearer $TOKEN"
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/config/test';
$headers = [
'Authorization: Bearer ' . $token,
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
response = requests.post("https://appliance.example.com/api/v1/ldap/config/test", headers=headers)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/config/test', {
method: 'POST',
headers: {
Authorization: `Bearer ${token}`,
},
});
const data = await response.json();
Bruno
meta {
name: Test the LDAP connection
type: http
seq: 1
}
post {
url: https://{{node-0}}:{{port}}/api/v1/ldap/config/test
body: none
auth: bearer
}
auth:bearer {
token: {{token}}
}
Response
{
"status": "success",
"message": "Connection test complete",
"data": {
"stage": "bind",
"ok": false
}
}
List the LDAP users
curl
curl -X GET "https://appliance.example.com/api/v1/ldap/users" \
-H "Authorization: Bearer $TOKEN"
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/users';
$headers = [
'Authorization: Bearer ' . $token,
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
response = requests.get("https://appliance.example.com/api/v1/ldap/users", headers=headers)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/users', {
method: 'GET',
headers: {
Authorization: `Bearer ${token}`,
},
});
const data = await response.json();
Bruno
meta {
name: List the LDAP users
type: http
seq: 1
}
get {
url: https://{{node-0}}:{{port}}/api/v1/ldap/users
body: none
auth: bearer
}
auth:bearer {
token: {{token}}
}
Response
{
"status": "success",
"message": "All LDAP users",
"data": []
}
Users by ID
curl
curl -X GET "https://appliance.example.com/api/v1/ldap/users/{id}" \
-H "Authorization: Bearer $TOKEN"
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/users/{id}';
$headers = [
'Authorization: Bearer ' . $token,
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
response = requests.get("https://appliance.example.com/api/v1/ldap/users/{id}", headers=headers)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/users/{id}', {
method: 'GET',
headers: {
Authorization: `Bearer ${token}`,
},
});
const data = await response.json();
Bruno
meta {
name: Get an LDAP user
type: http
seq: 1
}
get {
url: https://{{node-0}}:{{port}}/api/v1/ldap/users/{id}
body: none
auth: bearer
}
auth:bearer {
token: {{token}}
}
Response
{
"status": "success",
"message": "Get LDAP user",
"data": []
}
curl
curl -X PUT "https://appliance.example.com/api/v1/ldap/users/{id}" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"disabled": true
}'
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/users/{id}';
$headers = [
'Authorization: Bearer ' . $token,
'Content-Type: application/json',
];
$payload = [
'disabled' => true,
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => json_encode($payload),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
payload = {
"disabled": true
}
response = requests.put("https://appliance.example.com/api/v1/ldap/users/{id}", headers=headers, json=payload)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/users/{id}', {
method: 'PUT',
headers: {
Authorization: `Bearer ${token}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"disabled": true
}),
});
const data = await response.json();
Bruno
meta {
name: Enable or disable an LDAP user
type: http
seq: 1
}
put {
url: https://{{node-0}}:{{port}}/api/v1/ldap/users/{id}
body: json
auth: bearer
}
headers {
Content-Type: application/json
}
auth:bearer {
token: {{token}}
}
body:json {
{
"disabled": true
}
}
Response
{
"status": "success",
"message": "LDAP user updated",
"data": []
}
curl
curl -X DELETE "https://appliance.example.com/api/v1/ldap/users/{id}" \
-H "Authorization: Bearer $TOKEN"
PHP
<?php
$url = 'https://appliance.example.com/api/v1/ldap/users/{id}';
$headers = [
'Authorization: Bearer ' . $token,
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests
headers = {"Authorization": f"Bearer {token}"}
response = requests.delete("https://appliance.example.com/api/v1/ldap/users/{id}", headers=headers)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/ldap/users/{id}', {
method: 'DELETE',
headers: {
Authorization: `Bearer ${token}`,
},
});
const data = await response.json();
Bruno
meta {
name: Delete an LDAP user
type: http
seq: 1
}
delete {
url: https://{{node-0}}:{{port}}/api/v1/ldap/users/{id}
body: none
auth: bearer
}
auth:bearer {
token: {{token}}
}
Response
{
"status": "success",
"message": "LDAP user deleted",
"data": []
}