Add New Password
Este endpoint permite añadir una contraseña como sistema de autenticación a un perfil de un usuario. Esto permite al usuario acceder al servicio de autenticación y recuperar su información mediante el endpoint de login.
Cabe señalar, que si el usuario ya tiene credenciales registradas para todos los login disponibles, no se realizará operación alguna. Para cambiar la contraseña del usuario, revisar endpoint de solicitar cambio de contraseña.
Endpoint
Headers
Key | Value | Description |
---|---|---|
Content-Type | application/json | |
Authorization | Bearer {{access_token}} | access_token obtained in Atenea |
Method: PATCH
URL: https://api.trust.lat/trust-idp/v1/companies/:company_id/profiles/:uuid
Path Variables:
Key | Value Example | Description |
---|---|---|
company_id | -1 | Identificador de la compañia, provisto por la empresa Trust. Obligatorio |
uuid | ffffffff-ffff-ffff-ffff-ffffffffffff | Identificador único del perfil de usuario. Obligatorio. |
caution
Recuerda que para utilizar este endpoint es necesario un access token obtenido en el servicio Atenea.
Body
Fields
- operation: Parámetro utilizado para específicar la operación a ejecutar. Debe tener por valor credentials para este endpoint. Obligatorio.
- credentials: Llave utilizada para contener la autenticación a generar para el perfil. Seleccionar los atributos indicados a continuación basándose en la lista de autenticadores permitidos por los formularios de login de la compañia. De momento, el único parámetro admitido es el campo password.
- password: String de carácteres únicos creados por el usuario como medio de autenticación.
Example
{
"operation": "credentials",
"credentials": {
"password": "*******"
}
}
Code Examples
- Curl
- JavaScript
- Python
curl --location --request PATCH 'https://api.trust.lat/trust-idp/v1/companies/:company_id/profiles/:uuid' \
--header 'Authorization: Bearer `{{access_token}}`' \
--header 'Content-Type: application/json' \
--data-raw '{
"operation": "credentials",
"credentials": {
"password": "*******"
}
}'
import requests
import json
url = "https://api.trust.lat/trust-idp/v1/companies/:company_id/profiles/:uuid"
payload = json.dumps({
"operation": "credentials",
"credentials": {
"password": "*******"
}
})
headers = {
'Authorization': 'Bearer `{{access_token}}`',
'Content-Type': 'application/json'
}
response = requests.request("PATCH", url, headers=headers, data=payload)
print(response.text)
var axios = require('axios');
var data = JSON.stringify({
"operation": "credentials",
"credentials": {
"password": "*******"
}
});
var config = {
method: 'patch',
url: 'https://api.trust.lat/trust-idp/v1/companies/:company_id/profiles/:uuid',
headers: {
'Authorization': 'Bearer `{{access_token}}`',
'Content-Type': 'application/json'
},
data : data
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
Responses
HTTP Code: 201 Created
Credential Created Successfully
{
"code": 201,
"resource": "Profile Credential",
"message": "1 new credentials created"
}
HTTP Code: 400 Bad Request
Company Not Configured
{
"code": 400,
"resource": "Profile Credentials",
"message": "Bad request",
"errors": "Request does not have the required fields to generate a Profile Credential"
}
HTTP Code: 401 Unauthorized
Missing Access Token
{
"status": 401,
"error": "Invalid or expired token"
}
HTTP Code: 403 Forbidden
Forbidden
{
"code": 403,
"message": "Forbidden"
}
HTTP Code: 404 Not Found
Profile Not Found
{
"code": 404,
"resource": "Profile",
"message": "Not found"
}
HTTP Code: 409 Conflict
Profile Not Active
{
"code": 409,
"resource": "Profile",
"message": "Conflict",
"errors": "Profile is not active"
}
HTTP Code: 422 Unprocessable Entity
Wrong Credential Name
{
"code": 422,
"resource": "Profile Credentials",
"message": "Fail",
"errors": "Profile Credentials must be formatted as a Map<String:String> and contain at least one valid value"
}
No New Credentials Were Created
{
"code": 422,
"resource": "Profile Credential",
"message": "Fail",
"errors": "No new credentials were created"
}
HTTP Code: 501 Not Implemented
Wrong Operation
{
"code": 501,
"resource": "Profile",
"message": "Not Implemented"
}