Turvallinen API yhteys Willbaan
Tämä opas neuvoo sinua muodostamaan turvallisen kolmannen osapuolen integraation Willba API:iin. Käyttämällä Keycloak-todennusta, kolmannen osapuolen sovellukset voivat turvallisesti käyttää Willban rajapintoja.
🔒 Tärkeää: Tämä osio on kolmannen osapuolen kehittäjille ja tahoille, jotka pyrkivät integroitumaan Willba API:n kanssa
1. Pyydä JWT API-avaimet
Pyydä pääsyä Willba rajapintoihin sinun Willba-yhteyshenkilöltäsi. Saat seuraavat luottamukselliset integraatiokohtaiset avaimet:
client_id
client_secret
realm token URL
: https://auth.willba.app/realms/{realm-name}/protocol/openid-connect/token
Muista että {realm-name}
viittaa Willba ympäristön nimeen ja se toimitetaan myös yhteyshenkilön toimesta.
2. Hae uusi access token
Saadaksesi tarvittavan JWT access_token
-avaimen:
- Muodosta POST-pyyntö osoitteeseen
realm token URL
. - Syötä
client_id
,client_secret
jagrant_type
(jonka tulisi olla 'client_credentials') pyynnön runkoon.
Korvaa YOUR_CLIENT_ID
, YOUR_CLIENT_SECRET
, ja {realm-name}
niiden vastaavilla todellisilla arvoilla.
POST-pyyntö:
- Bash
- Javascript
curl -X POST \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "client_id=YOUR_CLIENT_ID" \
-d "client_secret=YOUR_CLIENT_SECRET" \
-d "grant_type=client_credentials" \
"https://auth.willba.app/realms/{realm-name}/protocol/openid-connect/token"
const axios = require('axios');
const qs = require('qs');
const credentials = {
client_id: 'YOUR_CLIENT_ID',
client_secret: 'YOUR_CLIENT_SECRET',
grant_type: 'client_credentials'
};
axios.post("https://auth.willba.app/realms/{realm-name}/protocol/openid-connect/token", qs.stringify(credentials), {
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error('Error obtaining token:', error);
});
Vastaus:
- Bash
- Javascript
{
"access_token": "eyJhbG...V82q3IQ",
"expires_in": 300,
"refresh_expires_in": 0,
"token_type": "Bearer",
"not-before-policy": 0,
"scope": "email profile"
}
{
"access_token": "eyJhbG...V82q3IQ",
"expires_in": 300,
"refresh_expires_in": 0,
"token_type": "Bearer",
"not-before-policy": 0,
"scope": "email profile"
}
Kun yllä oleva kutsu on onnistunut, saat access_token
-tunnuksen vastauksena. Tätä tunnusta tulisi sisällyttää kaikkiin pyyntöihin Willba's API:lle.
On olennaista kohdella access_token
-tunnusta äärimmäisen luottamuksellisesti. Estä sen paljastuminen luvattomille henkilöille tai sovelluksille. Valitse myös aina turvallinen yhteys tätä tunnusta siirrettäessä.
3. Liitä tunnus pyynnön otsakkeisiin
API-pyynnöissä Willbaan on oltava voimassa oleva access_token
-tunnuksen otsakkeessa muodossa:
Authorization: Bearer ${access_token}
. Kun access_token
vanhentuu, se pitää uusia kohdan 2. mukaan. Käytännössä access_token
on lyhytikäinen avain, ja se pitää uusia usein.
Seuraavat esimerkit näyttävät, miten liittää tunnus API-pyyntöösi:
- Bash
- Javascript
# Sample API call with cURL
curl -X GET \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
"https://api.willba.app/some-endpoint"
// Sample API call with JavaScript (axios)
const axios = require('axios');
const token = 'YOUR_ACCESS_TOKEN';
axios.get("https://api.willba.app/some-endpoint", {
headers: {
'Authorization': `Bearer ${token}`
}
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error('Error making API request:', error);
});
Muista korvata YOUR_ACCESS_TOKEN
todellisella access_token
-tunnuksellasi.