Skip to content

Autentifikacija

Aplikacija vam obezbeđuje Client ID i Secret Key koje su vam potrebni da kreirate autentifikovanu OAuth2 sesiju koju možete koristiti za komunikaciju sa Wink i TripPay API-jima.

Evo koraka za kreiranje autentifikovane sesije.

Korak 1. Preuzmite pristupni token na staging ili u našem produkcionom okruženju:

Verovatno ćete koristiti robusnu OAuth2 biblioteku za vaš programski jezik, koja će obaviti sav težak posao za vas. Naši primeri će pokazati 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 sa ostalim OAuth2 podacima u odgovoru:

{
"access_token": "abc123"
}

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

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

Opseg je dozvola koju vaš pristupni token nosi. Kada tražite token, prosleđujete listu opsega razdvojenih razmakom u parametru scope, i token može pristupiti samo oblastima koje ti opsezi pokrivaju. Sa client_credentials grantom postavljate opsege u zahtevu za token — pogledajte curl primere iznad i Postman vodič.

Opsezi se nazivaju section.action, gde je akcija jedna od:

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

Wink grupiše dozvole po funkcionalnim oblastima. Zahtevajte samo opsege koje vaša integracija treba:

Grupa opsegaOpseziŠta otključavajuRizik
Accountaccount.read account.write account.removeUpravljanje entitetima, članovima tima, podešavanjima, aplikacijamaNizak–Srednji
Inventoryinventory.read inventory.write inventory.removeNekretnine, tipovi soba, cenovnici, cene, dodaci, dostupnost, aktivnosti, atrakcijeNizak–Srednji
Bookingbooking.read booking.write booking.removePretraga, pregled, kreiranje, otkazivanje i povraćaj rezervacija; naplata; politike otkazivanjaNizak–Srednji
Marketingmarketing.read marketing.write marketing.removeKampanje, beneficije, prodajni kanali, WinkLinks, upravljani društveni mediji, lojalnostNizak–Srednji
Contentcontent.read content.write content.removeOpisi nekretnina, recenzije, mediji, mape, zeleni indeksNizak–Srednji
Analyticsanalytics.read analytics.write analytics.removeIzveštaji i analitika — prihodi, tabele lideraNizak–Srednji
Integrationsintegrations.read integrations.write integrations.removeChannel manageri, eksterni sistemi za rezervacije, Google Hotel, krajnje tačke za notifikacije, sinhronizacija rezervacijaNizak–Srednji
Paymentpayment.read payment.write payment.removeObrada plaćanja, Stripe, Revolut, isplate, pretplateSrednji–Visok
Accountingaccounting.read accounting.write accounting.removeKnjigovodstvo, evidencija isplata, usklađivanjeSrednji–Visok
MCPmcp.read mcp.write mcp.removeOtvara MCP transport (/mcp) za AI agenteNizak–Srednji

Nekoliko stvari koje treba imati na umu:

  • Zahtevajte minimum. Tražite samo opsege koje vaša integracija zaista koristi — token izdat sa širim pristupom nego što je potrebno ima veći potencijal štete ako procuri.
  • Nepoznati opsezi se odbijaju. Zahtev za opsegom za koji vaša aplikacija nije registrovana, ili koji ne postoji, neće biti odobren prilikom izdavanja 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.