Para hacer una llamada a una API con autenticación de dos patas, primero hay que obtener un access_token y posteriormente se hace la llamada a la API con el access_token obtenido.
Recuerda que debes tener creada una aplicación en BBVA API_Market con una API que requiera autenticación de dos patas, como por ejemplo, Loans Auto.
Obtener access_token
Una vez dentro de Postman, debemos introducir los siguientes parámetros:
· URL: https://connect.bbva.com/token?grant_type=client_credentials
· Método: POST
Cabeceras:
· Authorization: Basic CREDENCIALES
· Content-Type: application/json
Para obtener el valor del campo CREDENCIALES debemos convertir a base64 (www.base64encode.org) la concatenación de: appID, “:” y Secret OAuth, es decir: appID:Secret_OAuth.
Para obtener appID y Secret OAuth, entra en el detalle de tu aplicación.
Ejemplo:
· appID = app.mx.pProd001
· Secret OAuth = R*$Xm@…j6f1x@3
Si convertimos a base64 la cadena app.mx.pProd001: R*$Xm@…j6f1x@3, el resultado es este: YXBwLm14LnBQcm9kMDAxOlJA4oCmajZmMXhAMw==
Con lo que los parámetros de cabecera son los siguientes:
· Authorization: Basic YXBwLmJid…mYxeEAz.
· Content-Type: application/json.
Esta llamada nos devuelve un json de como este:
{
"access_token": "eyJhbGciOiJSU0EtT0FFUCIsInppcCI6IkRFRiIsImVuYyI6IkExMjhHQ00ifQ.fjdmI--zqhzDOyAGCDLivxhgdBZ2UqpvYetUch4qZ7H8k4ipm9bNcsXarvNGMlcX7TSCtnNd9r9yDmGdWyqZC-5Ymox-HWGuuZgtzG8k0Z9Gw6b1S5SbnXgH2zDiUMTVR6afBE7xpX0pII6D0IOfhzoCZ4g1iBbJ6ypkKJFw1f8IOY6ds4U6J4Kcq23KemjI0R5NNxRxP6X7cTDy9eQWkgh97iKKdJaBAgxf7MXfSEKpBabw9Ag5jHNDRF7KCjkCgmZoqjnfxuaJj5y_MdwR2SuuWj572KPME-OymiLAdza_Ul-zLjt8mnWnWSxFoMiMzk2pAio25pkwje5em6B1BA.XsvVLUkjhZQNAFCU.pMiWtSb1FO1rtQowW8G5iZ6jEMe2op-GZ2IuLDOrvj4bzqwnoo6hJB9FMLrZqEn9PCKlFUeZsspbNtrsUZqetO8F05Aw8vtQV_zEzf4ZACBLZ1kqQ5H2SG3YrKtYtobJDjvS2_08UWpflKjjAJhfUSkYndPBpc1fCeDsQoxSyVUc28ExMQXqh6QNuWaADmuvNgdyLvTGys5jUPw44mlegmDihIn3Hbx1ZgRk7zbzsB6qkY18jm44_cE2OgvPx3dcmk7UQkj-spSuxcYna3h80zSnZkjqdeQJ0NiKxA.zfgdS3NuvAHa9TUivYuAbA",
"token_type": "jwt",
"expires_in": 3599,
"scope": "Accounts_SBX Customers_SBX Loans_SBX Locations_SBX"
}
El access_token que nos devuelve el servicio lo usaremos en la llamada a la API.
Llamada a una API con el access_token obtenido
Por ejemplo, llamamos al servicio merchant de la API Auto Loan:
· URL: https://apis.bbvabancomer.com/loans-auto-sbx/v1/
· Método: GET
Cabeceras:
· Authorization: jwt access_token (el access_token obtenido en la llamada anterior)
· Content-Type: application/json
Ejemplo:
· Authorization: jwt eyJhbG……..UivYuAbA
· Accept: application/json
Esta llamada nos devuelve un json de como este:
{"result": {"code": 200,"info": "OK"},"data": {"merchant": {"id": "10444","name": "GENERICA","addresses": [{"streetName": "OLMO 117 ","interiorNumber": "1","exteriorNumber": "117","state": {"id": "DF","name": "CIUDAD DE MEXICO"},"zipCode": "04030","neighborhood": "BARRIO SAN LUCAS","municipality": "COYOACAN","country": "MX"}],"manager": {"firstName": "virtual72","middleName": "F&I","lastName": "F&I"},"brands": [{"id": "78","name": "GENERICA"}]}}}