Desbloqueio de Conta no AD
Este endpoint permite desbloquear uma conta de usuário que foi travada no AD (por exemplo, devido a muitas tentativas de senha incorretas).
Permissão Necessária
ManterAPISeguranca
Montando a requisição
Método da requisição
POSTEndereço da requisição
Desenvolvimento:
https://apidsv.unimedbh.io/security/ad/v1/unlockHomologação:
https://apihml.unimedbh.io/security/ad/v1/unlockProdução:
https://api.unimedbh.io/security/ad/v1/unlockCabeçalho da requisição
{
"Authorization": "Bearer XPTO",
"Content-Type": "application/json"
}Corpo da requisição
{
"username": "ciclano.silva" // sAMAccountName do usuário
}Respostas da requisição
200 - Sucesso
{
"message": "Conta do usuário DN: CN=Beltrano Gomes,... desbloqueada com sucesso."}
}400 - Requisição Inválida
{
"error": "Corpo da requisição JSON inválido"
}ou
{
"error": "Campos obrigatórios ausentes no corpo da requisição: username"
}404 - Não Encontrado
{
"message": "Usuário 'ciclano.silva' não encontrado"
}409 - Conflito
{
"error": "Múltiplos usuários encontrados para 'ciclano.silva'."
}500 - Erro Interno
{
"error": "Tentativa de desbloqueio falhou para o usuário DN: CN=Ciclano Silva,.... Verifique os logs do CloudWatch."
}Exemplos da requisição
HTTP
POST /security/ad/v1/unlock HTTP/1.1
Host: apihml.unimedbh.io
Content-Type: application/json
Authorization: Bearer XPTO
Content-Length: 83
{
"username": "ciclano.silva"
}cURL
curl --location 'https://apihml.unimedbh.io/security/ad/v1/unlock' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer XPTO' \
--data-raw '{
"username": "ciclano.silva",
"newPassword": "NovaSenhaSuperSegura@2025!",
"force": false
}'JavaScript
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Bearer XPTO");
const raw = JSON.stringify({
"username": "ciclano.silva"
});
const requestOptions = {
method: "POST",
headers: myHeaders,
body: raw,
redirect: "follow"
};
fetch("https://apihml.unimedbh.io/security/ad/v1/unlock", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));Node.js
const axios = require('axios');
const data = JSON.stringify({
"username": "ciclano.silva"
});
const config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://apihml.unimedbh.io/security/ad/v1/unlock',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer XPTO'
},
data : data
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://apihml.unimedbh.io/security/ad/v1/unlock',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"username": "ciclano.silva"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: Bearer XPTO'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;Java
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://apihml.unimedbh.io/security/ad/v1/unlock")
.header("Content-Type", "application/json")
.header("Authorization", "Bearer XPTO")
.body("{\r\n \"username\": \"ciclano.silva\"\r\n}")
.asString();C#
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://apihml.unimedbh.io/security/ad/v1/unlock");
request.Headers.Add("Authorization", "Bearer XPTO");
var content = new StringContent("{\r\n \"username\": \"ciclano.silva\"\r\n}", null, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());