Para llamar a una API con autenticación de tres patas, primero necesitamos el código que se usa para obtener un access_token y, posteriormente, se hace la llamada a la API con el access_token obtenido. Este código es válido para un usuario específico y por un tiempo limitado.
Recuerda que debes tener creada una aplicación en BBVA API_Market con una API que requiera autenticación de tres patas disponible, como por ejemplo, Customers.
Obtener código necesario para pedir access_token. BBVA Connect
Es necesario que a la hora de llamar a estas APIs previamente se invoque al Sandbox connect indicando el campo redirect_url. Es decir la dirección a la que vuelve el cliente después de la autenticación. Recuerda que necesitas tener configurada esa misma dirección en tu aplicación.
Puedes comprobarlo en las opciones avanzadas de configuración de tu aplicación.
Como ejemplo de redirect_url te sugerimos que uses la siguiente URL: https://static.bbvaapimarket.com/resources/retail/callback/index.html
En primer lugar llamamos desde el navegador a la siguiente URL: https://connect.bbva.com/sandboxconnect?client_id=APP_ID&response_type=code&redirect_uri=REDIRECT_URL
Donde APP_ID es el id de la app configurada (por ejemplo, app.bbva.Prod001) y REDIRECT_URL es el redirect_url configurado en las opciones avanzadas de tu aplicación.
El navegador cargará la pantalla de BBVA Connect donde mostrará usuario y contraseña de cualquiera de los usuarios del Sandbox. En la documentación de las APIs hay varios usuarios/contraseñas de prueba, por ejemplo:
· Usuario: 00000034B
· Contraseña: 123456
Tras introducir un usuario y contraseña correctos aparecerá la pantalla de aceptación de Scopes en la que se autoriza a la aplicación para los servicios requeridos.
La aceptación finaliza cargando una página en la que se muestra el código que puedes copiar directamente.
Ten en cuenta que este código expira a los 30 segundos, por lo que este es el tiempo disponible para obtener el access_token que se describe en el siguiente punto.
Obtener access_token con el código obtenido
Para obtener el access_token, debemos acceder a Postman y configurar la llamada siguiendo los mismos pasos que se describen en la sección Obtener access_token de esta guía.
Lo único que debemos cambiar es la URL:
URL: https://connect.bbva.com/token?grant_type=authorization_code&redirect_uri=REDIRECT_URL&code=CODIGO_OBTENIDO
Donde REDIRECT_URL es la que tenemos configurada en la aplicación y CODIGO_OBTENIDO es el código que hemos obtenido en el punto anterior.
Con el access_token obtenido en el punto anterior, configuramos una llamada en Postman con los siguientes parámetros:
· URL: https://apis.bbva.com/customers-sbx/v1/me-basic
· Método: GET
Cabeceras:
· Authorization: jwt ACCESS_TOKEN
· Accept: application/json
{ "access_token": "eyJhbGciOiJSU0EtT0FFUCIsInppcCI6IkRFRiIsImVuYyI6IkExMjhHQ00ifQ.TI2wrGU73CKqLpQv-reFkDBx_rhBlvJ_Mqe4D5TDqGetVvX-sXdL0ghj3USaEkgc880pWONDxI68inv89sMF6OOErs5Fj-xNwwyO5MR1l0nXG10Apsp7PXX34YFZU-QiqDZL9dbn6R0QJH7RSNY79LQhKFKJvBbacayiP-jYjug3hwyAj5jaAKMzx-yDCgIEVKTgbC9IiOrcnLFL3AWG6W_pzBdlfxtctKN6mJyJtuk5p30kbCJf6PBHbCdC7VFE67A8p-knw4w0x62Q6hgpX1AfTsAczhDU6oOGNr6xpnOiOVfQ3qHgv-RT9pkqswvhfoEJf_6Y6Oqjje3C0k3L0Q.3WYfyQs3oCRNdiaY.fpqF4GdlUkZdCTH0hNjhaV6pmo2xtalCYYg7CfG9cSq-HkZ0Eu9fd7CkFTS8zL9fZ1BJep_uBXEXpQGwNn0uTmgMIFMyTH71rChNdfvqx6IwhU3hQ8umnuSu0ITOYVndJBBTdzZC3mxfColvLwA7jZWd49VYzFDyVuZtRM2AMIk0TanitUJrAcn6ceSpt8FCuBA1Mdc5J21u3zxs8HcY_GgjZi5MDO0vn39aRIuM10AVyYuUyDy3P_Vqt9toSyBScidn225hXXcBSNmArWYR50Wmt9CtNW43IZGD33UzcUYM1sZrm8GxYhUt1baby0qWsybhnK3BMzPmK5GJlXNdjiVAMHkQi7275n4hVP7Z5k4Csz1Kc4owvRZlTLdoPYPQ0_5WbWgw1mk3oWb2nPt6JPUU-vT7m6tyONKf44CfNz_87wDhjadU5eg0MU1TrrSjq9JOxaxP.TqE_WnfFxn-bo_JOcJNSOw", "token_type": "jwt", "refresh_token": "eyJhbGciOiJSU0EtT0FFUCIsInppcCI6IkRFRiIsImVuYyI6IkExMjhHQ00ifQ.O3R95eVCoWe04xDeAKJj1EhBzTQoGeKGQRmlw4uJisKQDBjcPrIOEggMZYiqtORqFVLhwvsiZV2Mp229Rb1LwMVGt5DwEEtd94TISQ4toQfX30w8sPImgw_WarLAZ2_qh1Yie7JiDGSucIuV8yxixzYOOS8y_5chflD7URsSfyaMc4C2xvAH5wRP_n899btUbmd6gYwcx9bOTBk5vA5EQg8yTxBPaBbUrjkehbfN0P5v6RAkU8rRGYHAniKCKG2l3Dxt4q2lRvMJqLnHKorY0hB_aXP3S6ziwRpBqd2QqAlnBeHL5-8nMO1lN4r4lu-jY2ELhcGKvF-QkOBjc_TsJg.Mw6InT_Q126l61R3.mrPMmmKBLTLnkmx0BFl76ylzQ3rAf6nzRYdM3sBM-v_S-v2ZcC0yL0_fmM-u1GrQWp_5W0UA4EBSxo0mUMyM26OCqSfG96o5o31fVDErn7DdYMfPnFyXjLB8gBVcLoqxjDj0iJz0wnYe-PvmTLFKZGqGXn7G5wAK5D5ZoUrx9I5o1_LkGNTnL4ZUtrG76x1JfFPosER-Bku7Uoy84l_SjlB1KSOk93DPFBBSAv7cpLte06CiZ41KvgmM_nk950dLV7hsuFhy9w7AA7PKtfYfrGXjWnY1eHj7Eo0Uhb9ZUpcOnnZpZyRmBtmeIlcigCkC9CInnFSilOTO39cIhl-VGT4Jlymtf1yLCYVyDF6KXUCRoZMFeT_M_8K03GD6wJ0uj23kLK01yLxTuz9tm05p4wo8wjFtvs5y_J-ixdTaPC5ir-W-ZfGJ--RoY5zfKqSGzgG1mtYERK3DvVzM0wRYXqz1FhzpvnqBtp81rLaAmNDiVAGJq6t5jan3kPSftwuLfQFmwAGU-fttxmA1ALzPXyFFO1hmjdOayKVHSz2IUtVDoPN9YLJjf8j4LAUhI5ZSJEM.qNWCMNovgd0l_E1DmV3Jfw", "expires_in": 3599, "scope": "card-notifications-sbx_full paymentsTransfersList_sbx accounts_detail_full_sbx_1 paystats_sbx_test paymentsTransfer_execution_sbx_1 cardsV2_detail_full_sbx_1 loanpreapprovedsimulation_sbx card_transactions_sbx atms_sbx cards_detail_basic_sbx_2 data_manager_sbx loanpreapproved_sbx event-generator-sbx_full notifications-sbx_full paymentsTransferOrders_execution_sbx_1 paymentsTransfersMobileCash_sbx account_transactions_sbx customers_full_sbx_1", "refresh_expires_in": 43199 }
Revocación de Autorizaciones
Para revocar las autorizaciones (access_token) obtenidas en el punto anterior a través de BBVA connect mx, configuramos una llamada en Postman, utilizando el método DELETE, con los siguientes parámetros:
· URL: https://connect.bbvabancomer.com/authorizations
· Método: DELETE
Cabeceras:
· Authorization: jwt ACCESS_TOKEN
Este endpoint revoca autorizaciones(access_token) para los ambientes de sandbox y live.