5 API to API Authentication
Generate OAuth Token
curl --location --request POST 'https://<IAM URL>/oauth2/v1/token'
--header 'Content-Type: application/x-www-form-urlencoded'
--header 'Authorization: Basic <Base64 encoded ClientID:ClientSecret>'
--data-urlencode 'grant_type=password' --data-urlencode 'username=<username>'
--data-urlencode 'password=<password>'
--data-urlencode 'scope=OAuth_Access/consumer::devtestbank1_non-prod_Access'
IAM will respond back with a JWT. A sample response would be as
follows:
{"access_token":"
<JWT_ACCESS_TOKEN>","token_type":"Bearer","expires_in":3600}
Use the JWT to access an OBCS protected resource. A sample request would look like the following:
curl --location --request GET 'https://<OBCS
URL>/non-prod/api-gateway/sms-core-services/sms-core-service/user/global?userLoginId=<SampleUser1>' --header 'Authorization: Bearer
<JWT_ACCESS_TOKEN>',
--header 'appId: sms' --header 'entityId: DEFAULTENTITY' --header 'env: cloud' --header 'multiEntityAdmin: N'
--header 'userId: <SampleUser1>' --header 'branchCode: <BranchCode>' --insecure}
Note:
userId is a case sensitive fieldA sample response would look like the
following:
{"data":{"userId":"<SampleUser1>","userName":"<SampleUser1>","recordStatus":"O","isSupervisor":false,"managerId":null,"currentBranch":"R01",
"homeBranch":"R01","locale":"en-US","bankCode":"0000","bankName":"HO Bank","hostCode":"HOST_US","countryCode":"US","hoBranch":"000","branchCurrency":
"USD","applicationDate":"2022-09-20","languageCode":"ENG"}}