Strava · JSON Structure
Strava Activity Structure
A workout activity recorded on Strava. Activities are the core data object representing a single workout session.
Type:
Properties: 0
CyclingFitnessFitness TrackingRunningSports
Activity is a JSON Structure definition published by Strava.
Meta-schema:
JSON Structure
{
"name": "Activity",
"description": "A workout activity recorded on Strava. Activities are the core data object representing a single workout session.",
"fields": [
{"name": "id", "type": "integer", "required": true, "description": "Unique activity identifier"},
{"name": "name", "type": "string", "required": true, "description": "Activity name set by the athlete"},
{"name": "description", "type": "string", "required": false, "nullable": true, "description": "Activity description"},
{"name": "distance", "type": "number", "required": false, "description": "Total distance in meters"},
{"name": "moving_time", "type": "integer", "required": false, "description": "Moving time in seconds"},
{"name": "elapsed_time", "type": "integer", "required": false, "description": "Elapsed time in seconds"},
{"name": "total_elevation_gain", "type": "number", "required": false, "description": "Total elevation gain in meters"},
{"name": "type", "type": "string", "required": true, "description": "Sport type (Run, Ride, Swim, etc.)"},
{"name": "sport_type", "type": "string", "required": false, "description": "More specific sport type (v3.5+)"},
{"name": "start_date", "type": "string", "format": "date-time", "required": false, "description": "Start time in UTC"},
{"name": "start_date_local", "type": "string", "format": "date-time", "required": false, "description": "Start time in local timezone"},
{"name": "timezone", "type": "string", "required": false, "description": "Activity timezone"},
{"name": "start_latlng", "type": "array", "required": false, "description": "Start position [lat, lng]"},
{"name": "end_latlng", "type": "array", "required": false, "description": "End position [lat, lng]"},
{"name": "achievement_count", "type": "integer", "required": false, "description": "Number of achievements"},
{"name": "kudos_count", "type": "integer", "required": false, "description": "Number of kudos"},
{"name": "comment_count", "type": "integer", "required": false, "description": "Number of comments"},
{"name": "trainer", "type": "boolean", "required": false, "description": "Recorded on stationary trainer"},
{"name": "commute", "type": "boolean", "required": false, "description": "Marked as commute"},
{"name": "manual", "type": "boolean", "required": false, "description": "Manually entered (no GPS)"},
{"name": "private", "type": "boolean", "required": false, "description": "Private visibility"},
{"name": "average_speed", "type": "number", "required": false, "description": "Average speed in m/s"},
{"name": "max_speed", "type": "number", "required": false, "description": "Max speed in m/s"},
{"name": "average_cadence", "type": "number", "required": false, "description": "Average cadence in RPM"},
{"name": "average_watts", "type": "number", "required": false, "description": "Average power in watts"},
{"name": "weighted_average_watts", "type": "integer", "required": false, "description": "Normalized power in watts"},
{"name": "kilojoules", "type": "number", "required": false, "description": "Total work in kilojoules"},
{"name": "average_heartrate", "type": "number", "required": false, "description": "Average heart rate in BPM"},
{"name": "max_heartrate", "type": "number", "required": false, "description": "Max heart rate in BPM"},
{"name": "suffer_score", "type": "integer", "required": false, "nullable": true, "description": "Relative Effort score"},
{"name": "map", "type": "object", "required": false, "description": "Route polyline map data"},
{"name": "gear", "type": "object", "required": false, "description": "Gear used for the activity"},
{"name": "athlete", "type": "object", "required": false, "description": "Athlete who recorded the activity"}
],
"relationships": [
{"name": "laps", "type": "array", "target": "Lap", "description": "Lap splits for the activity"},
{"name": "segment_efforts", "type": "array", "target": "SegmentEffort", "description": "Efforts on Strava segments"},
{"name": "comments", "type": "array", "target": "Comment", "description": "Comments on the activity"},
{"name": "kudoers", "type": "array", "target": "SummaryAthlete", "description": "Athletes who gave kudos"}
]
}