Pagpapatunay ng Pagkakakilanlan
Magbibigay ang isang application sa iyo ng Client ID at Secret Key na kailangan mo upang makalikha ng isang authenticated OAuth2 session na maaari mong gamitin upang makipag-ugnayan sa Wink at TripPay APIs.
Narito ang mga hakbang upang makalikha ng isang authenticated session.
Hakbang 1. Kunin ang access token sa staging o sa aming production environment:
Malamang na gagamit ka ng isang matibay na OAuth2 library para sa iyong wika, na gagawa ng lahat ng mabibigat na gawain para sa iyo.
Ipakikita ng aming mga halimbawa ang pinaka-basic na paggamit mula sa command line gamit ang 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>"Production
Section titled “Production”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>"Ibabalik nito ang isang access token, kasama ang iba pang OAuth2 response data:
{ "access_token": "abc123"}Kapag tumawag ka sa alinman sa aming mga endpoint, isama ang mga sumusunod sa header:
Wink-Version=2.0Pinakabago - Tingnan ang aming API docs para sa iba pang magagamit na mga bersyon.Authorization=Bearer ${access_token}Ipasok ang iyong access token.
Mga Saklaw
Section titled “Mga Saklaw”Ang scope ay isang pahintulot na dala ng iyong access token. Kapag humiling ka ng token, ipinapasa mo ang
isang space-delimited na listahan ng mga scope sa scope parameter, at ang token ay maaari lamang ma-access ang mga lugar
na sakop ng mga scope na iyon. Sa client_credentials grant, itinatakda mo ang mga scope sa iyong kahilingan ng token —
tingnan ang mga halimbawa ng curl sa itaas at ang Postman walkthrough.
Ang mga scope ay pinangalanang section.action, kung saan ang action ay isa sa mga sumusunod:
read— tingnan ang mga resources (ligtas na mgaGETrequest)write— lumikha at mag-update ng mga resources (POST/PUT/PATCH)remove— tanggalin ang mga resources (DELETE)
Pinagsasama-sama ng Wink ang mga pahintulot ayon sa functional area. Humiling lamang ng mga scope na kailangan ng iyong integration:
| Pangkat ng Scope | Mga Scope | Ano ang kanilang binubuksan | Panganib |
|---|---|---|---|
| Account | account.read account.write account.remove | Pamamahala ng mga entity, miyembro ng team, mga setting, mga application | Mababang–Katamtaman |
| Inventory | inventory.read inventory.write inventory.remove | Mga property, uri ng kuwarto, rate-plan, mga rate, add-on, availability, mga aktibidad, atraksyon | Mababang–Katamtaman |
| Booking | booking.read booking.write booking.remove | Paghahanap, pagtingin, paglikha, pagkansela, at pag-refund ng mga booking; pag-checkout; mga patakaran sa pagkansela | Mababang–Katamtaman |
| Marketing | marketing.read marketing.write marketing.remove | Mga kampanya, perks, sales channels, WinkLinks, managed social, loyalty | Mababang–Katamtaman |
| Content | content.read content.write content.remove | Mga paglalarawan ng property, mga review, media, mapa, green-index | Mababang–Katamtaman |
| Analytics | analytics.read analytics.write analytics.remove | Pag-uulat at analytics — kita, leaderboards | Mababang–Katamtaman |
| Integrations | integrations.read integrations.write integrations.remove | Channel managers, external booking systems, Google Hotel, notification endpoints, booking sync | Mababang–Katamtaman |
| Payment | payment.read payment.write payment.remove | Pagproseso ng bayad, Stripe, Revolut, payouts, subscriptions | Katamtaman–Mataas |
| Accounting | accounting.read accounting.write accounting.remove | Accounting, withdrawal ledger, reconciliation | Katamtaman–Mataas |
| MCP | mcp.read mcp.write mcp.remove | Binubuksan ang MCP transport (/mcp) para sa mga AI agent | Mababang–Katamtaman |
Ilang bagay na dapat tandaan:
- Humiling ng pinakamababa. Humiling lamang ng mga scope na talagang ginagamit ng iyong integration — ang token na ibinigay na may mas malawak na access kaysa kinakailangan ay may mas malaking saklaw ng pinsala kung ito ay malantad.
- Tinanggihan ang mga hindi kilalang scope. Ang paghingi ng scope na hindi nakarehistro para sa iyong application, o isang hindi umiiral, ay mabibigo sa pag-isyu ng token.
- Ang
mcp.*ay para lamang sa mga AI-agent client. Kailangan mo ito upang buksan ang MCP transport; hindi ito kinakailangan para sa mga regular na REST API call. Tingnan ang Model Context Protocol.
