Gå til indhold

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.

Terminal window
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>"
Terminal window
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.0 Seneste - Se vores API-dokumentation for andre tilgængelige versioner.
  • Authorization = Bearer ${access_token} Indsæt dit adgangstoken.

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 (sikre GET-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-gruppeScopesHvad de åbner forRisiko
Accountaccount.read account.write account.removeHåndtering af enheder, teammedlemmer, indstillinger, applikationerLav–Mellem
Inventoryinventory.read inventory.write inventory.removeEjendomme, værelsestyper, rateplaner, priser, tillæg, tilgængelighed, aktiviteter, attraktionerLav–Mellem
Bookingbooking.read booking.write booking.removeSøg, vis, opret, annuller og refunder bookinger; checkout; annulleringspolitikkerLav–Mellem
Marketingmarketing.read marketing.write marketing.removeKampagner, fordele, salgskanaler, WinkLinks, administreret social, loyalitetLav–Mellem
Contentcontent.read content.write content.removeEjendomsbeskrivelser, anmeldelser, medier, kort, grøn-indeksLav–Mellem
Analyticsanalytics.read analytics.write analytics.removeRapportering og analyse — omsætning, top-listerLav–Mellem
Integrationsintegrations.read integrations.write integrations.removeChannel managers, eksterne bookingsystemer, Google Hotel, notifikationsendpoints, booking-synkLav–Mellem
Paymentpayment.read payment.write payment.removeBetalingsbehandling, Stripe, Revolut, udbetalinger, abonnementerMellem–Høj
Accountingaccounting.read accounting.write accounting.removeRegnskab, udbetalingsbog, afstemningMellem–Høj
MCPmcp.read mcp.write mcp.removeÅbner MCP transporten (/mcp) for AI-agenterLav–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.