Login
PermiteAntes realizarde que tus sistemas puedan comunicarse con nuestra API, necesitan identificarse. Este servicio es como la recepción de nuestro edificio digital: aquí entregas tus credenciales y, a cambio, recibes un "pase de invitado" temporal (llamado Token). Necesitarás presentar este pase para que el loginsistema ente lapermita API, para obtener el token necesarioacceder a usarcualquier enotra lossección demás(como servicios.contratos, facturas o propiedades).
Endpoint:¿Aún no tienes tus credenciales de acceso?
Para https://usar este servicio, primero necesitas un usuario y contraseña especiales para tu aplicación. Descubre cómo crear un nuevo cliente OAuth2 en nuby para consumo de la API paso a paso aquí.
1. El Endpoint (La dirección web)
Apunta tu sistema a la siguiente dirección. Recuerda reemplazar {{instancia}} por la dirección web completa que utilizas para ingresar a tu plataforma.
💡 ¿Qué debes colocar en {{instancia}}?
Es muy sencillo: corresponde a la dirección web principal que utilizas a diario para ingresar a tu plataforma (incluyendo la terminación.nuby.appo.arrendasoft.co).
Por ejemplo, si para entrar a tu sistema escribesinmobiliaria.nuby.appoinmobiliaria.arrendasoft.coen tu navegador, esa será exactamente tu instancia. Solo asegúrate de no incluir el "https://" ni barras diagonales ("/") al final.
POST https://{{instancia}}.arrendasoft.co/service/v2/public/auth/login
2. La Petición (¿Qué debes enviarnos?)
{{instancia}}:Tu Hacesistema referenciadebe aenviarnos laun instanciapaquete de cadadatos inmobiliaria.
Petición
formato application/json | . |||||
tu petición debe verse así:
|
3. La Respuesta (¿Qué te entregaremos?)
Si tus credenciales son correctas, el sistema te dará la bienvenida entregándote tu pase de acceso (Token). La respuesta se verá similar a esta:
{
"message": null,
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE2OTA0OTc1OTAsImV4cCI6MTY5MDU0MDc5MCwiZGF0YSI6eyJ0ZXJjZXJvX2lkIjoiNjQ4MiIsImRvY3VtZW50byI6InVzZXJfYXZhbnRvIn19.5OlAA_hg1NZ3xfjVqaDaf-j46JqiBcOUdHC1dwwUK38"..",
"expiration": 1690540790
}
| token | Tu llave de acceso. A partir de ahora, en todas tus siguientes consultas a nuestra plataforma, deberás incluir este código en los encabezados (Headers) de tu petición usando el formato: Authorization: Bearer TU_TOKEN_AQUI |
| expiration | La fecha y hora exacta (en formato timestamp) en la que este pase dejará de funcionar. |
| message | Mensaje de |
4. Seguridad y Posibles Errores
Importante:¡Tu pase tiene fecha de caducidad!
Por importantemedidas tenerde enseguridad, cuentael token que alte realizarentregamos solicitudessolo adura otros1 servicios,hora. esUna posiblevez quetranscurrido ese tiempo, el tokenpase expire.expirará Eny talesel casos,sistema seráte necesariobloqueará el acceso devolviéndote un error 401 Unauthorized. Cuando esto ocurra, tu sistema simplemente debe volver a autenticarseconsumir utilizando eleste servicio de login.Login para pedir un pase nuevo y continuar trabajando.
Así se ve el error que te devolverá el sistema cuando tu token se haya vencido o intentes usar un pase inválido:
{
"statusCode": 401,
"error": {
"type": "SERVER_ERROR",
"description": "JWT Token expired."
}
}
5. Ejemplos de integración
Aquí tienes ejemplos de código listos para que tus desarrolladores los adapten a tu plataforma:
CurlEjemplo usando cURL
curl -X POST "https://{{instancia}}.arrendasoft.co//service/v2/public/auth/login" \
-H "Content-Type: application/json" \
-d '{
"{\"username\"username": \"YOUR_USERNAME\"TU_CLIENT_ID",
\"password\"password": \"YOUR_PASSWORD\"TU_SECRET_KEY"
}"'
Ejemplo usando PHP Curl
<?php
$instance = 'tu_instancia'; // Reemplaza con tu instancia real
$username = 'TU_NOMBRE_DE_USUARIO'TU_CLIENT_ID'; // Reemplaza con el nombreID de usuariocliente proporcionado por la inmobiliaria
$password = 'TU_CONTRASEÑA'TU_SECRET_KEY'; // Reemplaza con la contraseñaclave secreta proporcionada por la inmobiliaria
$url = "https://{$instance}.arrendasoft.co//service/v2/public/auth/login";
$data = json_encode([
'username' => $username,
'password' => $password
]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'Content-Length: ' . strlen($data)
]);
$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
} else {
echo "Código de estado HTTP: " . $http_code . "\n";
echo "Respuesta: " . $response . "\n";
$responseData = json_decode($response, true);
if (isset($responseData['token'])) {
$tokenecho ="¡Éxito! Tu Token de Autenticación es: " . $responseData['token'];
echo "Token de Autenticación: " . $token . "\n";
} else {
echo "Autenticación fallida. No se recibió ningún token.\n";
}
}
curl_close($ch);
?>