Authenticatie
Een applicatie verstrekt je een Client ID en Secret Key die je nodig hebt om een geauthenticeerde OAuth2-sessie te creëren waarmee je kunt communiceren met de Wink- en TripPay-API’s.
Hier zijn de stappen om een geauthenticeerde sessie te creëren.
Stap 1. Verkrijg een access token op staging of in onze productieomgeving:
Je zult waarschijnlijk werken met een robuuste OAuth2-bibliotheek voor jouw programmeertaal, die al het zware werk voor je doet.
Onze voorbeelden tonen het meest basale gebruik vanaf de commandoregel met curl.
Staging
Section titled “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>"Productie
Section titled “Productie”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>"Dit retourneert een access token, samen met andere OAuth2-responsgegevens:
{ "access_token": "abc123"}Wanneer je een oproep doet naar een van onze eindpunten, voeg dan het volgende toe in de header:
Wink-Version=2.0Laatste - Zie onze API-documentatie voor andere beschikbare versies.Authorization=Bearer ${access_token}Voeg je access token in.
Scopes
Section titled “Scopes”Een scope is een toestemming die je access token draagt. Wanneer je een token aanvraagt, geef je een
door spaties gescheiden lijst van scopes mee in de scope parameter, en het token kan alleen de gebieden bereiken
die door die scopes worden gedekt. Bij de client_credentials grant stel je de scopes in op je tokenaanvraag —
zie de curl voorbeelden hierboven en de Postman walkthrough.
Scopes zijn benoemd als section.action, waarbij de actie een van de volgende is:
read— resources bekijken (veiligeGET-verzoeken)write— resources aanmaken en bijwerken (POST/PUT/PATCH)remove— resources verwijderen (DELETE)
Wink groepeert permissies per functioneel gebied. Vraag alleen de scopes aan die jouw integratie nodig heeft:
| Scopegroep | Scopes | Wat ze ontgrendelen | Risico |
|---|---|---|---|
| Account | account.read account.write account.remove | Beheren van entiteiten, teamleden, instellingen, applicaties | Laag–Middel |
| Inventory | inventory.read inventory.write inventory.remove | Eigendommen, kamertypes, tariefplannen, tarieven, extra’s, beschikbaarheid, activiteiten, attracties | Laag–Middel |
| Booking | booking.read booking.write booking.remove | Zoeken, bekijken, aanmaken, annuleren en terugbetalen van boekingen; afrekenen; annuleringsvoorwaarden | Laag–Middel |
| Marketing | marketing.read marketing.write marketing.remove | Campagnes, voordelen, verkoopkanalen, WinkLinks, beheerde social media, loyaliteit | Laag–Middel |
| Content | content.read content.write content.remove | Eigenschapsbeschrijvingen, beoordelingen, media, kaarten, groene index | Laag–Middel |
| Analytics | analytics.read analytics.write analytics.remove | Rapportage en analyse — omzet, ranglijsten | Laag–Middel |
| Integrations | integrations.read integrations.write integrations.remove | Channel managers, externe boekingssystemen, Google Hotel, notificatie-eindpunten, boekingssync | Laag–Middel |
| Payment | payment.read payment.write payment.remove | Betalingsverwerking, Stripe, Revolut, uitbetalingen, abonnementen | Middel–Hoog |
| Accounting | accounting.read accounting.write accounting.remove | Boekhouding, uitbetalingsboek, reconciliatie | Middel–Hoog |
| MCP | mcp.read mcp.write mcp.remove | Opent de MCP transport (/mcp) voor AI-agents | Laag–Middel |
Een paar dingen om in gedachten te houden:
- Vraag het minimum aan. Vraag alleen de scopes aan die jouw integratie daadwerkelijk gebruikt — een token met bredere toegang dan nodig is, vergroot de impact bij een lek.
- Onbekende scopes worden geweigerd. Het aanvragen van een scope waarvoor je applicatie niet geregistreerd is, of die niet bestaat, mislukt bij het uitgeven van het token.
mcp.*is alleen voor AI-agent clients. Je hebt het nodig om de MCP transport te openen; het is niet vereist voor reguliere REST API-aanroepen. Zie Model Context Protocol.