Skip to content

Autentifikacija

Aplikacija vam pruža Client ID i Secret Key koje trebate za kreiranje autentificirane OAuth2 sesije koju možete koristiti za komunikaciju s Wink i TripPay API-jima.

Evo koraka za kreiranje autentificirane sesije.

Korak 1. Dohvatite pristupni token na staging ili u našem produkcijskom okruženju:

Vjerojatno ćete koristiti robusnu OAuth2 biblioteku za vaš programski jezik, koja će obaviti sav težak posao za vas. Naši primjeri prikazuju najosnovniju upotrebu iz komandne linije koristeći 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>"

Ovo će vratiti pristupni token, zajedno s ostalim OAuth2 podacima u odgovoru:

{
"access_token": "abc123"
}

Kada pozivate bilo koju od naših krajnjih točaka, uključite sljedeće u zaglavlje:

  • Wink-Version = 2.0 Najnovije - Pogledajte naše API dokumente za druge dostupne verzije.
  • Authorization = Bearer ${access_token} Umetnite svoj pristupni token.

Opseg je dozvola koju vaš pristupni token nosi. Kada tražite token, prosljeđujete popis opsega odvojenih razmakom u parametru scope, a token može pristupiti samo područjima koja ti opsezi pokrivaju. Kod client_credentials grant tipa postavljate opsege u zahtjevu za token — pogledajte primjere curl gore i Postman vodič.

Opsezi su imenovani kao section.action, gdje je akcija jedna od:

  • read — pregled resursa (sigurni GET zahtjevi)
  • write — kreiranje i ažuriranje resursa (POST / PUT / PATCH)
  • remove — brisanje resursa (DELETE)

Wink grupira dozvole po funkcionalnim područjima. Zahtijevajte samo opsege koje vaša integracija treba:

Grupa opsegaOpseziŠto otključavajuRizik
Accountaccount.read account.write account.removeUpravljanje entitetima, članovima tima, postavkama, aplikacijamaNizak–Srednji
Inventoryinventory.read inventory.write inventory.removeNekretnine, tipovi soba, cjenovni planovi, cijene, dodaci, dostupnost, aktivnosti, atrakcijeNizak–Srednji
Bookingbooking.read booking.write booking.removePretraživanje, pregled, kreiranje, otkazivanje i povrat rezervacija; naplata; pravila otkazivanjaNizak–Srednji
Marketingmarketing.read marketing.write marketing.removeKampanje, pogodnosti, prodajni kanali, WinkLinks, upravljani društveni mediji, lojalnostNizak–Srednji
Contentcontent.read content.write content.removeOpisi nekretnina, recenzije, mediji, karte, zeleni indeksNizak–Srednji
Analyticsanalytics.read analytics.write analytics.removeIzvještavanje i analitika — prihodi, ljestviceNizak–Srednji
Integrationsintegrations.read integrations.write integrations.removeChannel manageri, vanjski sustavi za rezervacije, Google Hotel, krajnje točke za obavijesti, sinkronizacija rezervacijaNizak–Srednji
Paymentpayment.read payment.write payment.removeObrada plaćanja, Stripe, Revolut, isplate, pretplateSrednji–Visoki
Accountingaccounting.read accounting.write accounting.removeRačunovodstvo, evidencija isplata, usklađivanjeSrednji–Visoki
MCPmcp.read mcp.write mcp.removeOtvara MCP transport (/mcp) za AI agenteNizak–Srednji

Nekoliko stvari za imati na umu:

  • Zahtijevajte minimum. Tražite samo opsege koje vaša integracija stvarno koristi — token izdan s širim pristupom nego što je potrebno ima veći potencijal štete ako procuri.
  • Nepoznati opsezi se odbijaju. Zahtjev za opsegom za koji vaša aplikacija nije registrirana ili koji ne postoji, ne uspijeva pri izdavanju tokena.
  • mcp.* je samo za AI-agent klijente. Potreban je za otvaranje MCP transporta; nije potreban za uobičajene REST API pozive. Pogledajte Model Context Protocol.