REST and gRPC
Wink exposes two transports. Which one you use depends on which API you are integrating with.
| Transport | Schema | Docs | |
|---|---|---|---|
| Most Wink APIs | REST over HTTPS | OpenAPI 3 | Any group under API in the sidebar |
| Partner Integrator API | gRPC over HTTP/2 | Protocol Buffers | Partner |
Generate a REST client
Section titled “Generate a REST client”Every API group publishes an OpenAPI 3 document. Point any OpenAPI generator at it and you get a typed client in your language.
# The spec for a group is served next to its reference page.curl -o wink-extranet.json https://api.wink.travel/v3/api-docs/extranet
npx @openapitools/openapi-generator-cli generate \ -i wink-extranet.json -g typescript-fetch -o ./wink-clientOpenAPI generators by language
Generate a gRPC client
Section titled “Generate a gRPC client”The Partner Integrator API is gRPC. You generate a client from the .proto schema, which Wink
publishes two ways:
- Server reflection — the server describes itself, so tools like
grpcurl, Postman and Insomnia can discover the schema at runtime with no files to download. Reflection requires the same bearer token as any other call. - The
.protofiles, if you would rather vendor the schema and generate ahead of time.
# Discover the schema from a running server (authenticated).grpcurl -H "authorization: Bearer $WINK_TOKEN" \ partner.wink.travel:443 list
# Then generate a client — here Go; every supported language works the same way.protoc --go_out=. --go-grpc_out=. partner_lookup.protoCalls carry your bearer token in the authorization metadata header, exactly as REST carries it in
the Authorization header. Errors arrive as a gRPC status code in the response trailers rather than
as an HTTP status code — the Partner reference lists the statuses you
should expect.
gRPC quick starts by language
What is gRPC?
Or let the MCP server write it
Section titled “Or let the MCP server write it”If you use an AI coding assistant, our MCP server is the fastest route. It exposes Wink’s APIs as tools your assistant can call and reason about, so instead of generating a whole client and finding the endpoints yourself, you describe what you are building and get integration code shaped around that.
Set up the Wink MCP server
Further reading
Section titled “Further reading”- Setup — accounts, environments and credentials
- Authentication — obtaining and refreshing tokens
- Webhook Integration — receiving events instead of polling
