Skip to content

Удостоверяване

Приложение ви предоставя Client ID и Secret Key, които са ви необходими, за да създадете удостоверена OAuth2 сесия, която можете да използвате за комуникация с API-тата на Wink и TripPay.

Ето стъпките за създаване на удостоверена сесия.

Стъпка 1. Вземете access token в staging или в нашата продукционна среда:

Вероятно ще работите с мощна OAuth2 библиотека за вашия език, която ще свърши цялата тежка работа вместо вас. Нашите примери ще покажат най-основното използване от командния ред с 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>"

Това ще върне access token заедно с други OAuth2 данни за отговор:

{
"access_token": "abc123"
}

Когато правите повикване към някоя от нашите крайни точки, включете следното в хедъра:

  • Wink-Version = 2.0 Най-ново - Вижте нашата API документация за други налични версии.
  • Authorization = Bearer ${access_token} Вмъкнете вашия access token.

Scope е разрешение, което носи вашият access token. Когато заявявате токен, подавате списък с области, разделени с интервал, в параметъра scope, и токенът може да достъпва само областите, които тези scopes покриват. С client_credentials grant задавате scopes при заявката за токен — вижте примерите с curl по-горе и Postman walkthrough.

Scopes се именуват като section.action, където действието е едно от:

  • read — преглед на ресурси (безопасни GET заявки)
  • write — създаване и обновяване на ресурси (POST / PUT / PATCH)
  • remove — изтриване на ресурси (DELETE)

Wink групира разрешенията по функционални области. Заявявайте само scopes, от които вашата интеграция се нуждае:

Група scopesScopesКакво отключватРиск
Accountaccount.read account.write account.removeУправление на обекти, членове на екипа, настройки, приложенияНисък–Среден
Inventoryinventory.read inventory.write inventory.removeИмоти, типове стаи, тарифни планове, цени, допълнения, наличности, активности, атракцииНисък–Среден
Bookingbooking.read booking.write booking.removeТърсене, преглед, създаване, анулиране и възстановяване на резервации; плащане; политики за анулиранеНисък–Среден
Marketingmarketing.read marketing.write marketing.removeКампании, предимства, канали за продажби, WinkLinks, управлявани социални, лоялностНисък–Среден
Contentcontent.read content.write content.removeОписания на имоти, ревюта, медия, карти, зелен индексНисък–Среден
Analyticsanalytics.read analytics.write analytics.removeОтчети и анализи — приходи, класацииНисък–Среден
Integrationsintegrations.read integrations.write integrations.removeМениджъри на канали, външни системи за резервации, Google Hotel, крайни точки за известия, синхронизация на резервацииНисък–Среден
Paymentpayment.read payment.write payment.removeОбработка на плащания, Stripe, Revolut, изплащания, абонаментиСреден–Висок
Accountingaccounting.read accounting.write accounting.removeСчетоводство, регистър на тегления, съгласуванеСреден–Висок
MCPmcp.read mcp.write mcp.removeОтваря MCP транспорта (/mcp) за AI агентиНисък–Среден

Няколко неща, които да имате предвид:

  • Заявявайте минималното. Искайте само scopes, които вашата интеграция наистина използва — токен с по-широк достъп от необходимото има по-голям радиус на поражение при изтичане.
  • Непознати scopes се отхвърлят. Заявяването на scope, за който вашето приложение не е регистрирано, или който не съществува, води до неуспех при издаване на токена.
  • mcp.* е само за AI агент клиенти. Необходим е за отваряне на MCP транспорта; не е задължителен за обикновени REST API повиквания. Вижте Model Context Protocol.