# zwift-api: mapping Zwift's private data endpoints

> zwift-api maps selected private Zwift HTTP data interfaces and implements a read-only Node client for profile, achievements, events, quests and catalogue data. Its documentation records proxy-captured endpoints and protobuf wire decoding without schemas. The author reports that epic-challenge progress travels over a realtime UDP path rather than the mapped HTTP endpoints.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-08
- Added to the catalog: 2026-11-08
- Original resource: <https://github.com/noerdk/zwift-api>
- Primary source: <https://github.com/noerdk/zwift-api/blob/ebd4869b617e1eaf7d023a6366fef2d06cc3bda1/README.md>
- Catalog page: <https://awesomerea.org/resources/zwift-api-case/>
- Record JSON: <https://awesomerea.org/resources/zwift-api-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/zwift-api-case/index.md)

## Requirements & limits

- **Prerequisites:** Node.js 18 or later; account endpoints require the user's Zwift credentials.
- **Limits:** The client is read-only; epic-challenge progress is outside its HTTP endpoint coverage.
- **License:** MIT license.

## Primary sources

1. <https://github.com/noerdk/zwift-api/blob/ebd4869b617e1eaf7d023a6366fef2d06cc3bda1/README.md>
2. <https://github.com/noerdk/zwift-api/blob/ebd4869b617e1eaf7d023a6366fef2d06cc3bda1/CONTRIBUTING.md>

## More in Protocols

- [Gear VR Controller: decoding Samsung's BLE remote protocol](https://awesomerea.org/resources/gear-vr-controller-ble-case/index.md) · Case study
- [Acer Predator Helios 16: reconstructing Linux lighting control](https://awesomerea.org/resources/acer-predator-helios-16-rgb-case/index.md) · Case study
- [Powerology AM8268N: reconstructing a USB display protocol for Linux](https://awesomerea.org/resources/powerology-am8268n-usb-display-case/index.md) · Case study
- [SuperCam Thermal Viewer: reconstructing QuanLi camera streaming](https://awesomerea.org/resources/quanli-supercam-case/index.md) · Case study
- [ktctl: reconstructing FiiO JA11 USB equalizer control](https://awesomerea.org/resources/ktctl-ja11-case/index.md) · Case study
- [AppleAVE2: reconstructing the IOKit wire format and driver validation path](https://awesomerea.org/resources/appleave2-wire-format-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
