Skip to content

Autentisering

En applikasjon gir deg en Client ID og Secret Key som du trenger for å opprette en autentisert OAuth2-økt som du kan bruke til å kommunisere med Wink og TripPay API-er.

Her er stegene for å opprette en autentisert økt.

Steg 1. Hent en tilgangstoken på staging eller i vårt produksjonsmiljø:

Du vil mest sannsynlig bruke et robust OAuth2-bibliotek for ditt programmeringsspråk, som vil gjøre alt det tunge arbeidet for deg. Våre eksempler viser den mest grunnleggende bruken 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 vil returnere en tilgangstoken, sammen med annen OAuth2-responsdata:

{
"access_token": "abc123"
}

Når du gjør et kall til noen av våre endepunkter, inkluder følgende i headeren:

  • Wink-Version = 2.0 Nyeste - Se våre API-dokumenter for andre tilgjengelige versjoner.
  • Authorization = Bearer ${access_token} Sett inn din tilgangstoken.

En scope er en tillatelse som din tilgangstoken bærer. Når du ber om en token, sender du en mellomromsseparert liste med scopes i scope-parameteren, og tokenen kan kun nå områdene disse scopes dekker. Med client_credentials-grant setter du scopes på token-forespørselen — se curl eksemplene over og Postman-gjennomgangen.

Scopes er navngitt section.action, hvor action er en av:

  • read — se ressurser (sikre GET-forespørsler)
  • write — opprette og oppdatere ressurser (POST / PUT / PATCH)
  • remove — slette ressurser (DELETE)

Wink grupperer tillatelser etter funksjonelt område. Be kun om de scopes integrasjonen din trenger:

Scope-gruppeScopesHva de åpner forRisiko
Accountaccount.read account.write account.removeHåndtering av enheter, teammedlemmer, innstillinger, applikasjonerLav–Middels
Inventoryinventory.read inventory.write inventory.removeEiendommer, romtyper, prisplaner, priser, tillegg, tilgjengelighet, aktiviteter, attraksjonerLav–Middels
Bookingbooking.read booking.write booking.removeSøk, visning, opprettelse, avbestilling og refusjon av bestillinger; utsjekk; avbestillingsreglerLav–Middels
Marketingmarketing.read marketing.write marketing.removeKampanjer, fordeler, salgskanaler, WinkLinks, administrert sosiale medier, lojalitetLav–Middels
Contentcontent.read content.write content.removeEiendomsbeskrivelser, anmeldelser, media, kart, grønn-indeksLav–Middels
Analyticsanalytics.read analytics.write analytics.removeRapportering og analyse — inntekter, topplisterLav–Middels
Integrationsintegrations.read integrations.write integrations.removeKanaladministratorer, eksterne bookingsystemer, Google Hotel, varslingsendepunkter, booking-synkroniseringLav–Middels
Paymentpayment.read payment.write payment.removeBetalingsbehandling, Stripe, Revolut, utbetalinger, abonnementerMiddels–Høy
Accountingaccounting.read accounting.write accounting.removeRegnskap, uttaksbokføring, avstemmingMiddels–Høy
MCPmcp.read mcp.write mcp.removeÅpner MCP transport (/mcp) for AI-agenterLav–Middels

Noen ting å huske på:

  • Be om minimum. Be kun om de scopes integrasjonen din faktisk bruker — en token utstedt med bredere tilgang enn nødvendig har større skadepotensial hvis den lekkes.
  • Ukjente scopes avvises. Å be om en scope applikasjonen din ikke er registrert for, eller en som ikke finnes, feiler ved token-utstedelse.
  • mcp.* er kun for AI-agent-klienter. Du trenger det for å åpne MCP-transporten; det er ikke nødvendig for vanlige REST API-kall. Se Model Context Protocol.