Autentikointi
Sovellus antaa sinulle Client ID-tunnuksen ja Secret Key-avaimen, joita tarvitset luodaksesi autentikoidun OAuth2-istunnon, jota voit käyttää kommunikoidessasi Wink- ja TripPay-rajapintojen kanssa.
Tässä ovat vaiheet autentikoidun istunnon luomiseksi.
Vaihe 1. Hanki käyttöoikeustunnus staging-ympäristössä tai tuotantoympäristössämme:
Todennäköisesti käytät kielen omaa vankkaa OAuth2-kirjastoa, joka hoitaa kaiken raskaan työn puolestasi.
Esimerkeissämme näytämme peruskäytön komentoriviltä käyttäen curl-komentoa.
Staging
Osio nimeltä “Staging”curl -X POST https://staging-iam.wink.travel/oauth2/token \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=client_credentials" \ -d "client_id=<YOUR_CLIENT_ID>" \ -d "client_secret=<YOUR_SECRET_KEY>"Tuotanto
Osio nimeltä “Tuotanto”curl -X POST https://iam.wink.travel/oauth2/token \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=client_credentials" \ -d "client_id=<YOUR_CLIENT_ID>" \ -d "client_secret=<YOUR_SECRET_KEY>"Tämä palauttaa käyttöoikeustunnuksen sekä muuta OAuth2-vastausdatan:
{ "access_token": "abc123"}Kun teet kutsun mihin tahansa päätepisteeseemme, sisällytä seuraavat otsikot:
Wink-Version=2.0Uusin - Katso API-dokumentaatiostamme muut saatavilla olevat versiot.Authorization=Bearer ${access_token}Lisää käyttöoikeustunnuksesi.
Oikeudet (Scopes)
Osio nimeltä “Oikeudet (Scopes)”Scope on lupa, jonka käyttöoikeustunnuksesi kantaa mukanaan. Kun pyydät tunnusta, annat
välilyönnillä erotellun listan scopeja scope-parametrissa, ja tunnus voi käyttää vain niitä alueita,
joita kyseiset scopet kattavat. client_credentials-grantilla asetat scopet tunnuspyyntöösi —
katso yllä olevat curl esimerkit ja Postman-käyttöohje.
Scopejen nimet ovat muodossa section.action, jossa toiminto on yksi seuraavista:
read— resurssien katselu (turvallisetGET-pyynnöt)write— resurssien luonti ja päivitys (POST/PUT/PATCH)remove— resurssien poisto (DELETE)
Wink ryhmittelee oikeudet toiminnallisen alueen mukaan. Pyydä vain ne scopet, joita integraatiosi tarvitsee:
| Scope-ryhmä | Scopet | Mitä ne avaavat | Riski |
|---|---|---|---|
| Tili | account.read account.write account.remove | Entiteettien, tiimin jäsenten, asetusten, sovellusten hallinta | Matala–Keskitaso |
| Varasto | inventory.read inventory.write inventory.remove | Kiinteistöt, huonetyypit, hintasuunnitelmat, hinnat, lisäpalvelut, saatavuus, aktiviteetit, nähtävyydet | Matala–Keskitaso |
| Varaus | booking.read booking.write booking.remove | Varausten haku, katselu, luonti, peruutus ja hyvitys; kassatoiminnot; peruutusehdot | Matala–Keskitaso |
| Markkinointi | marketing.read marketing.write marketing.remove | Kampanjat, edut, myyntikanavat, WinkLinks, hallinnoitu some, kanta-asiakkuus | Matala–Keskitaso |
| Sisältö | content.read content.write content.remove | Kiinteistökuvaukset, arvostelut, media, kartat, vihreä-indeksi | Matala–Keskitaso |
| Analytiikka | analytics.read analytics.write analytics.remove | Raportointi ja analytiikka — tulot, tulostaulut | Matala–Keskitaso |
| Integraatiot | integrations.read integrations.write integrations.remove | Kanavahallinnot, ulkoiset varausjärjestelmät, Google Hotel, ilmoituspäätepisteet, varaus-synkronointi | Matala–Keskitaso |
| Maksu | payment.read payment.write payment.remove | Maksujen käsittely, Stripe, Revolut, maksut, tilaukset | Keskitaso–Korkea |
| Kirjanpito | accounting.read accounting.write accounting.remove | Kirjanpito, nostokirjanpito, sovitus | Keskitaso–Korkea |
| MCP | mcp.read mcp.write mcp.remove | Avaaminen MCP-liikenteelle (/mcp) tekoälyagentteja varten | Matala–Keskitaso |
Muutama huomio:
- Pyydä vain välttämätön. Pyydä vain ne scopet, joita integraatiosi todella käyttää — laajemmat oikeudet sisältävä tunnus aiheuttaa suuremman vahingon, jos se vuotaa.
- Tuntemattomat scopet hylätään. Scopen pyytäminen, johon sovelluksesi ei ole rekisteröity tai joka ei ole olemassa, epäonnistuu tunnuksen myöntämisessä.
mcp.*on vain tekoälyagenttisovelluksille. Tarvitset sen MCP-liikenteen avaamiseen; tavallisiin REST API -kutsuihin sitä ei tarvita. Katso Model Context Protocol.