Overview

Fitbit API gives you access to health and fitness data collected by Fitbit devices, including steps, heart rate, sleep, and activity logs. It uses OAuth 2.0, so users must authorize your app before you can read their data. It is great for building personal health dashboards or wellness apps.

Beginner Tip

Use the special user ID "-" as a shortcut for the currently authenticated user so you do not need to look up their Fitbit user ID separately.

Available Data

Use case: Integrate fitbit information data into web and mobile applications
Fitbit data via REST API

Example Response

JSON Response
{
  "match_id": 4521,
  "home_team": "Team A",
  "away_team": "Team B",
  "score": {
    "home": 2,
    "away": 1
  },
  "status": "Full Time",
  "date": "2025-01-15",
  "league": "Premier League"
}

Field Reference

activities-steps List of daily step count entries for the requested date range
dateTime Date of the measurement in YYYY-MM-DD format
value Number of steps recorded for that day (returned as a string)
summary.steps Total steps for the day when querying a single-day endpoint
summary.caloriesOut Total calories burned during the day

Implementation Example

Request
const url = "https://dev.fitbit.com/";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "Authorization": "Bearer YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

401 Unauthorized The OAuth access token is missing, expired, or malformed
Refresh your access token using the refresh token from the OAuth flow before retrying
403 Forbidden The app does not have the required OAuth scope for the requested data type
Add the missing scope (e.g., activity, heartrate, sleep) when requesting user authorization
429 Too Many Requests You exceeded the 150 API calls per hour limit per user
Cache responses locally and space out requests; check the X-RateLimit-Remaining header

Metadata Score Breakdown

Estimated from metadata — endpoint not independently tested

This score is estimated from observable metadata — HTTPS support, authentication model, declared CORS, and documentation reachability — because the API requires authentication or exposes no publicly testable endpoint. The five-signal breakdown is only shown for live-tested APIs.

Metadata estimate · endpoint not independently tested

Technical Specifications

Auth OAuth
HTTPS REQUIRED
CORS UNKNOWN
Category Sports & Fitness
Difficulty Advanced
Verified: 2026-04-04

Similar APIs

View All →