Skip to main content

Welcome to Cyclemate API

Cyclemate provides 2 public APIs for bike routing. These APIs are designed to help developers build cycling-focused applications with rich routing capabilities and bike-share integration.

Authentication

An API key is required. All API requests must include your key as a bearer token in the Authorization header:

Getting an API key

API access is granted per application — signing up for a Cyclemate account on its own doesn’t provision a key for third-party use. For third-party developers:
  1. Contact our team to request API access
  2. We’ll issue you an API key
  3. Include the key in the Authorization header on every request

Example request

Rate Limiting

Requests are rate-limited to keep the service fast and fair for everyone. Authenticated requests are allowed a higher rate than anonymous ones. If you need higher limits for your application, contact us. Each response includes an X-RateLimit-Remaining header so you can track your remaining budget for the current window.

Exceeding Rate Limits

If you exceed your rate limit, you’ll receive a 429 Too Many Requests response:
The retry_after field indicates how many seconds to wait before making another request.

Best Practices

  • Cache responses when possible to reduce API calls
  • Implement exponential backoff when receiving 429 responses
  • Batch requests when feasible
  • Contact us if you need higher rate limits for your application

Public APIs

Directions

Turn-by-turn directions with super-safe bike routing

Multi-Modal Routing

Multi-modal routing with bike-share integration

Response Format

All API endpoints return JSON responses with the following general structure: Success Response:
Error Response:

Coordinate Format

All coordinates in the API use the standard [longitude, latitude] format (GeoJSON standard), unless otherwise specified.
  • Longitude: -180 to 180 (East-West position)
  • Latitude: -90 to 90 (North-South position)

API Overview

Support

For questions, issues, or feature requests, please contact our team.