Godkendelse
En applikation giver dig et Client ID og en Secret Key, som du skal bruge for at oprette en autentificeret OAuth2-session, som du kan bruge til at kommunikere med Wink og TripPay API’er.
Her er trinnene til at oprette en autentificeret session.
Trin 1. Hent et adgangstoken på staging eller i vores produktionsmiljø:
Du vil sandsynligvis arbejde med et robust OAuth2-bibliotek til dit sprog, som klarer det meste for dig.
Vores eksempler viser den mest grundlæggende brug fra kommandolinjen med curl.
Staging
Sektion kaldt “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>"Produktion
Sektion kaldt “Produktion”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>"Dette returnerer et adgangstoken sammen med andre OAuth2-responsdata:
{ "access_token": "abc123"}Når du foretager et kald til et af vores endpoints, skal du inkludere følgende i headeren:
Wink-Version=2.0Seneste - Se vores API-dokumentation for andre tilgængelige versioner.Authorization=Bearer ${access_token}Indsæt dit adgangstoken.
Scopes
Sektion kaldt “Scopes”Et scope er en tilladelse, som dit adgangstoken bærer. Når du anmoder om et token, sender du en
mellemrum-adskilt liste af scopes i scope-parameteren, og tokenet kan kun tilgå de områder,
som disse scopes dækker. Med client_credentials grant sætter du scopes på din token-anmodning —
se curl eksemplerne ovenfor og Postman walkthrough.
Scopes navngives section.action, hvor handlingen er en af:
read— se ressourcer (sikreGET-forespørgsler)write— oprette og opdatere ressourcer (POST/PUT/PATCH)remove— slette ressourcer (DELETE)
Wink grupperer tilladelser efter funktionelt område. Anmod kun om de scopes, din integration har brug for:
| Scope-gruppe | Scopes | Hvad de åbner for | Risiko |
|---|---|---|---|
| Account | account.read account.write account.remove | Håndtering af enheder, teammedlemmer, indstillinger, applikationer | Lav–Mellem |
| Inventory | inventory.read inventory.write inventory.remove | Ejendomme, værelsestyper, rateplaner, priser, tillæg, tilgængelighed, aktiviteter, attraktioner | Lav–Mellem |
| Booking | booking.read booking.write booking.remove | Søg, vis, opret, annuller og refunder bookinger; checkout; annulleringspolitikker | Lav–Mellem |
| Marketing | marketing.read marketing.write marketing.remove | Kampagner, fordele, salgskanaler, WinkLinks, administreret social, loyalitet | Lav–Mellem |
| Content | content.read content.write content.remove | Ejendomsbeskrivelser, anmeldelser, medier, kort, grøn-indeks | Lav–Mellem |
| Analytics | analytics.read analytics.write analytics.remove | Rapportering og analyse — omsætning, top-lister | Lav–Mellem |
| Integrations | integrations.read integrations.write integrations.remove | Channel managers, eksterne bookingsystemer, Google Hotel, notifikationsendpoints, booking-synk | Lav–Mellem |
| Payment | payment.read payment.write payment.remove | Betalingsbehandling, Stripe, Revolut, udbetalinger, abonnementer | Mellem–Høj |
| Accounting | accounting.read accounting.write accounting.remove | Regnskab, udbetalingsbog, afstemning | Mellem–Høj |
| MCP | mcp.read mcp.write mcp.remove | Åbner MCP transporten (/mcp) for AI-agenter | Lav–Mellem |
Et par ting at huske på:
- Anmod om det minimale. Bed kun om de scopes, din integration faktisk bruger — et token udstedt med bredere adgang end nødvendigt har større skadepotentiale, hvis det lækkes.
- Ukendte scopes afvises. At anmode om et scope, som din applikation ikke er registreret til, eller som ikke findes, fejler ved token-udstedelse.
mcp.*er kun for AI-agent klienter. Du har brug for det for at åbne MCP transporten; det er ikke nødvendigt for almindelige REST API-kald. Se Model Context Protocol.