Strava Model Module#
The strava-model module contains the officially documented Strava API entities. This module is generated by a bot and should not be edited manually.
- pydantic model stravalib.strava_model.ActivityTotal[source]#
A roll-up of metrics pertaining to a set of activities. Values are in seconds and meters.
Show JSON schema
{ "title": "ActivityTotal", "description": "A roll-up of metrics pertaining to a set of activities. Values are in seconds and meters.", "type": "object", "properties": { "achievement_count": { "title": "Achievement Count", "type": "integer" }, "count": { "title": "Count", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "elevation_gain": { "title": "Elevation Gain", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" } } }
- Fields:
- field achievement_count: int | None = None#
The total number of achievements of the considered activities.
- field count: int | None = None#
The number of activities considered in this total.
- field distance: float | None = None#
The total distance covered by the considered activities.
- field elapsed_time: int | None = None#
The total elapsed time of the considered activities.
- field elevation_gain: float | None = None#
The total elevation gain of the considered activities.
- field moving_time: int | None = None#
The total moving time of the considered activities.
- pydantic model stravalib.strava_model.ActivityType[source]#
Show JSON schema
{ "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }
- Fields:
__root__ (Literal['AlpineSki', 'BackcountrySki', 'Canoeing', 'Crossfit', 'EBikeRide', 'Elliptical', 'Golf', 'Handcycle', 'Hike', 'IceSkate', 'InlineSkate', 'Kayaking', 'Kitesurf', 'NordicSki', 'Ride', 'RockClimbing', 'RollerSki', 'Rowing', 'Run', 'Sail', 'Skateboard', 'Snowboard', 'Snowshoe', 'Soccer', 'StairStepper', 'StandUpPaddling', 'Surfing', 'Swim', 'Velomobile', 'VirtualRide', 'VirtualRun', 'Walk', 'WeightTraining', 'Wheelchair', 'Windsurf', 'Workout', 'Yoga'])
- pydantic model stravalib.strava_model.BaseStream[source]#
Show JSON schema
{ "title": "BaseStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" } } }
- Fields:
- field original_size: int | None = None#
The number of data points in this stream
- field resolution: Literal['low', 'medium', 'high'] | None = None#
The level of detail (sampling) in which this stream was returned
- field series_type: Literal['distance', 'time'] | None = None#
The base series used in the case the stream was downsampled
- pydantic model stravalib.strava_model.CadenceStream[source]#
Show JSON schema
{ "title": "CadenceStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }
- Fields:
- field data: list[int] | None = None#
The sequence of cadence values for this stream, in rotations per minute
- pydantic model stravalib.strava_model.ClubAthlete[source]#
Show JSON schema
{ "title": "ClubAthlete", "type": "object", "properties": { "admin": { "title": "Admin", "type": "boolean" }, "firstname": { "title": "Firstname", "type": "string" }, "lastname": { "title": "Lastname", "type": "string" }, "member": { "title": "Member", "type": "string" }, "owner": { "title": "Owner", "type": "boolean" }, "resource_state": { "title": "Resource State", "type": "integer" } } }
- Fields:
- field admin: bool | None = None#
Whether the athlete is a club admin.
- field firstname: str | None = None#
The athlete’s first name.
- field lastname: str | None = None#
The athlete’s last initial.
- field member: str | None = None#
The athlete’s member status.
- field owner: bool | None = None#
Whether the athlete is club owner.
- field resource_state: int | None = None#
Resource state, indicates level of detail. Possible values: 1 -> “meta”, 2 -> “summary”, 3 -> “detail”
- pydantic model stravalib.strava_model.DistanceStream[source]#
Show JSON schema
{ "title": "DistanceStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }
- Fields:
- field data: list[float] | None = None#
The sequence of distance values for this stream, in meters
- pydantic model stravalib.strava_model.Error[source]#
Show JSON schema
{ "title": "Error", "type": "object", "properties": { "code": { "title": "Code", "type": "string" }, "field": { "title": "Field", "type": "string" }, "resource": { "title": "Resource", "type": "string" } } }
- field code: str | None = None#
The code associated with this error.
- field field: str | None = None#
The specific field or aspect of the resource associated with this error.
- field resource: str | None = None#
The type of resource associated with this error.
- pydantic model stravalib.strava_model.Fault[source]#
Encapsulates the errors that may be returned from the API.
Show JSON schema
{ "title": "Fault", "description": "Encapsulates the errors that may be returned from the API.", "type": "object", "properties": { "errors": { "title": "Errors", "type": "array", "items": { "$ref": "#/definitions/Error" } }, "message": { "title": "Message", "type": "string" } }, "definitions": { "Error": { "title": "Error", "type": "object", "properties": { "code": { "title": "Code", "type": "string" }, "field": { "title": "Field", "type": "string" }, "resource": { "title": "Resource", "type": "string" } } } } }
- field errors: list[Error] | None = None#
The set of specific errors associated with this fault, if any.
- field message: str | None = None#
The message of the fault.
- pydantic model stravalib.strava_model.HeartrateStream[source]#
Show JSON schema
{ "title": "HeartrateStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }
- Fields:
- field data: list[int] | None = None#
The sequence of heart rate values for this stream, in beats per minute
- pydantic model stravalib.strava_model.LatLng[source]#
A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.
Show JSON schema
{ "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }
- Fields:
__root__ (list[float])
- pydantic model stravalib.strava_model.LatLngStream[source]#
Show JSON schema
{ "title": "LatLngStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "$ref": "#/definitions/LatLng" } } }, "definitions": { "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } } } }
- pydantic model stravalib.strava_model.MembershipApplication[source]#
Show JSON schema
{ "title": "MembershipApplication", "type": "object", "properties": { "active": { "title": "Active", "type": "boolean" }, "membership": { "title": "Membership", "enum": [ "member", "pending" ], "type": "string" }, "success": { "title": "Success", "type": "boolean" } } }
- field active: bool | None = None#
Whether the membership is currently active
- field membership: Literal['member', 'pending'] | None = None#
The membership status of this application
- field success: bool | None = None#
Whether the application for membership was successfully submitted
- pydantic model stravalib.strava_model.MetaActivity[source]#
Show JSON schema
{ "title": "MetaActivity", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }
- Fields:
- field id: int | None = None#
The unique identifier of the activity
- pydantic model stravalib.strava_model.MetaAthlete[source]#
Show JSON schema
{ "title": "MetaAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }
- Fields:
- field id: int | None = None#
The unique identifier of the athlete
- pydantic model stravalib.strava_model.MetaClub[source]#
Show JSON schema
{ "title": "MetaClub", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" } } }
- field id: int | None = None#
The club’s unique identifier.
- field name: str | None = None#
The club’s name.
- field resource_state: int | None = None#
Resource state, indicates level of detail. Possible values: 1 -> “meta”, 2 -> “summary”, 3 -> “detail”
- pydantic model stravalib.strava_model.MovingStream[source]#
Show JSON schema
{ "title": "MovingStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "boolean" } } } }
- Fields:
- field data: list[bool] | None = None#
The sequence of moving values for this stream, as boolean values
- pydantic model stravalib.strava_model.Primary[source]#
Show JSON schema
{ "title": "Primary", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "source": { "title": "Source", "type": "integer" }, "unique_id": { "title": "Unique Id", "type": "string" }, "urls": { "title": "Urls", "type": "object", "additionalProperties": { "type": "string" } } } }
- field id: int | None = None#
- field source: int | None = None#
- field unique_id: str | None = None#
- field urls: dict[str, str] | None = None#
- pydantic model stravalib.strava_model.PhotosSummary[source]#
Show JSON schema
{ "title": "PhotosSummary", "type": "object", "properties": { "count": { "title": "Count", "type": "integer" }, "primary": { "$ref": "#/definitions/Primary" } }, "definitions": { "Primary": { "title": "Primary", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "source": { "title": "Source", "type": "integer" }, "unique_id": { "title": "Unique Id", "type": "string" }, "urls": { "title": "Urls", "type": "object", "additionalProperties": { "type": "string" } } } } } }
- field count: int | None = None#
The number of photos
- pydantic model stravalib.strava_model.PolylineMap[source]#
Show JSON schema
{ "title": "PolylineMap", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "polyline": { "title": "Polyline", "type": "string" }, "summary_polyline": { "title": "Summary Polyline", "type": "string" } } }
- field id: str | None = None#
The identifier of the map
- field polyline: str | None = None#
The polyline of the map, only returned on detailed representation of an object
- field summary_polyline: str | None = None#
The summary polyline of the map
- pydantic model stravalib.strava_model.PowerStream[source]#
Show JSON schema
{ "title": "PowerStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }
- Fields:
- field data: list[int] | None = None#
The sequence of power values for this stream, in watts
- pydantic model stravalib.strava_model.SmoothGradeStream[source]#
Show JSON schema
{ "title": "SmoothGradeStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }
- Fields:
- field data: list[float] | None = None#
The sequence of grade values for this stream, as percents of a grade
- pydantic model stravalib.strava_model.SmoothVelocityStream[source]#
Show JSON schema
{ "title": "SmoothVelocityStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }
- Fields:
- field data: list[float] | None = None#
The sequence of velocity values for this stream, in meters per second
- pydantic model stravalib.strava_model.Split[source]#
Show JSON schema
{ "title": "Split", "type": "object", "properties": { "average_speed": { "title": "Average Speed", "type": "number" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "elevation_difference": { "title": "Elevation Difference", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "pace_zone": { "title": "Pace Zone", "type": "integer" }, "split": { "title": "Split", "type": "integer" } } }
- Fields:
- field average_speed: float | None = None#
The average speed of this split, in meters per second
- field distance: float | None = None#
The distance of this split, in meters
- field elapsed_time: int | None = None#
The elapsed time of this split, in seconds
- field elevation_difference: float | None = None#
The elevation difference of this split, in meters
- field moving_time: int | None = None#
The moving time of this split, in seconds
- field pace_zone: int | None = None#
The pacing zone of this split
- field split: int | None = None#
N/A
- pydantic model stravalib.strava_model.SportType[source]#
Show JSON schema
{ "title": "SportType", "enum": [ "AlpineSki", "BackcountrySki", "Badminton", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "EMountainBikeRide", "Golf", "GravelRide", "Handcycle", "HighIntensityIntervalTraining", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "MountainBikeRide", "NordicSki", "Pickleball", "Pilates", "Racquetball", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "Squash", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "TableTennis", "Tennis", "TrailRun", "Velomobile", "VirtualRide", "VirtualRow", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }
- Fields:
__root__ (Literal['AlpineSki', 'BackcountrySki', 'Badminton', 'Canoeing', 'Crossfit', 'EBikeRide', 'Elliptical', 'EMountainBikeRide', 'Golf', 'GravelRide', 'Handcycle', 'HighIntensityIntervalTraining', 'Hike', 'IceSkate', 'InlineSkate', 'Kayaking', 'Kitesurf', 'MountainBikeRide', 'NordicSki', 'Pickleball', 'Pilates', 'Racquetball', 'Ride', 'RockClimbing', 'RollerSki', 'Rowing', 'Run', 'Sail', 'Skateboard', 'Snowboard', 'Snowshoe', 'Soccer', 'Squash', 'StairStepper', 'StandUpPaddling', 'Surfing', 'Swim', 'TableTennis', 'Tennis', 'TrailRun', 'Velomobile', 'VirtualRide', 'VirtualRow', 'VirtualRun', 'Walk', 'WeightTraining', 'Wheelchair', 'Windsurf', 'Workout', 'Yoga'])
- pydantic model stravalib.strava_model.StreamType[source]#
Show JSON schema
{ "title": "StreamType", "enum": [ "time", "distance", "latlng", "altitude", "velocity_smooth", "heartrate", "cadence", "watts", "temp", "moving", "grade_smooth" ], "type": "string" }
- Fields:
__root__ (Literal['time', 'distance', 'latlng', 'altitude', 'velocity_smooth', 'heartrate', 'cadence', 'watts', 'temp', 'moving', 'grade_smooth'])
- pydantic model stravalib.strava_model.SummaryActivity[source]#
Show JSON schema
{ "title": "SummaryActivity", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "achievement_count": { "title": "Achievement Count", "type": "integer" }, "athlete": { "$ref": "#/definitions/MetaAthlete" }, "athlete_count": { "title": "Athlete Count", "minimum": 1, "type": "integer" }, "average_speed": { "title": "Average Speed", "type": "number" }, "average_watts": { "title": "Average Watts", "type": "number" }, "comment_count": { "title": "Comment Count", "type": "integer" }, "commute": { "title": "Commute", "type": "boolean" }, "device_watts": { "title": "Device Watts", "type": "boolean" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "elev_high": { "title": "Elev High", "type": "number" }, "elev_low": { "title": "Elev Low", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "external_id": { "title": "External Id", "type": "string" }, "flagged": { "title": "Flagged", "type": "boolean" }, "gear_id": { "title": "Gear Id", "type": "string" }, "has_kudoed": { "title": "Has Kudoed", "type": "boolean" }, "hide_from_home": { "title": "Hide From Home", "type": "boolean" }, "kilojoules": { "title": "Kilojoules", "type": "number" }, "kudos_count": { "title": "Kudos Count", "type": "integer" }, "manual": { "title": "Manual", "type": "boolean" }, "map": { "$ref": "#/definitions/PolylineMap" }, "max_speed": { "title": "Max Speed", "type": "number" }, "max_watts": { "title": "Max Watts", "type": "integer" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "photo_count": { "title": "Photo Count", "type": "integer" }, "private": { "title": "Private", "type": "boolean" }, "sport_type": { "$ref": "#/definitions/SportType" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" }, "start_latlng": { "$ref": "#/definitions/LatLng" }, "timezone": { "title": "Timezone", "type": "string" }, "total_elevation_gain": { "title": "Total Elevation Gain", "type": "number" }, "total_photo_count": { "title": "Total Photo Count", "type": "integer" }, "trainer": { "title": "Trainer", "type": "boolean" }, "type": { "$ref": "#/definitions/ActivityType" }, "upload_id": { "title": "Upload Id", "type": "integer" }, "upload_id_str": { "title": "Upload Id Str", "type": "string" }, "weighted_average_watts": { "title": "Weighted Average Watts", "type": "integer" }, "workout_type": { "title": "Workout Type", "type": "integer" } }, "definitions": { "MetaAthlete": { "title": "MetaAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }, "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }, "PolylineMap": { "title": "PolylineMap", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "polyline": { "title": "Polyline", "type": "string" }, "summary_polyline": { "title": "Summary Polyline", "type": "string" } } }, "SportType": { "title": "SportType", "enum": [ "AlpineSki", "BackcountrySki", "Badminton", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "EMountainBikeRide", "Golf", "GravelRide", "Handcycle", "HighIntensityIntervalTraining", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "MountainBikeRide", "NordicSki", "Pickleball", "Pilates", "Racquetball", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "Squash", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "TableTennis", "Tennis", "TrailRun", "Velomobile", "VirtualRide", "VirtualRow", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }, "ActivityType": { "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" } } }
- Fields:
- field achievement_count: int | None = None#
The number of achievements gained during this activity
- field athlete: MetaAthlete | None = None#
- field athlete_count: int | None = None#
The number of athletes for taking part in a group activity
- Constraints:
minimum = 1
- field average_speed: float | None = None#
The activity’s average speed, in meters per second
- field average_watts: float | None = None#
Average power output in watts during this activity. Rides only
- field comment_count: int | None = None#
The number of comments for this activity
- field commute: bool | None = None#
Whether this activity is a commute
- field device_watts: bool | None = None#
Whether the watts are from a power meter, false if estimated
- field distance: float | None = None#
The activity’s distance, in meters
- field elapsed_time: int | None = None#
The activity’s elapsed time, in seconds
- field elev_high: float | None = None#
The activity’s highest elevation, in meters
- field elev_low: float | None = None#
The activity’s lowest elevation, in meters
- field external_id: str | None = None#
The identifier provided at upload time
- field flagged: bool | None = None#
Whether this activity is flagged
- field gear_id: str | None = None#
The id of the gear for the activity
- field has_kudoed: bool | None = None#
Whether the logged-in athlete has kudoed this activity
- field hide_from_home: bool | None = None#
Whether the activity is muted
- field kilojoules: float | None = None#
The total work done in kilojoules during this activity. Rides only
- field kudos_count: int | None = None#
The number of kudos given for this activity
- field manual: bool | None = None#
Whether this activity was created manually
- field map: PolylineMap | None = None#
- field max_speed: float | None = None#
The activity’s max speed, in meters per second
- field max_watts: int | None = None#
Rides with power meter data only
- field moving_time: int | None = None#
The activity’s moving time, in seconds
- field name: str | None = None#
The name of the activity
- field photo_count: int | None = None#
The number of Instagram photos for this activity
- field private: bool | None = None#
Whether this activity is private
- field start_date: datetime | None = None#
The time at which the activity was started.
- field start_date_local: datetime | None = None#
The time at which the activity was started in the local timezone.
- field timezone: str | None = None#
The timezone of the activity
- field total_elevation_gain: float | None = None#
The activity’s total elevation gain.
- field total_photo_count: int | None = None#
The number of Instagram and Strava photos for this activity
- field trainer: bool | None = None#
Whether this activity was recorded on a training machine
- field type: ActivityType | None = None#
Deprecated. Prefer to use sport_type
- field upload_id: int | None = None#
The identifier of the upload that resulted in this activity
- field upload_id_str: str | None = None#
The unique identifier of the upload in string format
- field weighted_average_watts: int | None = None#
Similar to Normalized Power. Rides with power meter data only
- field workout_type: int | None = None#
The activity’s workout type
- pydantic model stravalib.strava_model.SummaryAthlete[source]#
Show JSON schema
{ "title": "SummaryAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "firstname": { "title": "Firstname", "type": "string" }, "lastname": { "title": "Lastname", "type": "string" }, "premium": { "title": "Premium", "type": "boolean" }, "profile": { "title": "Profile", "type": "string" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "sex": { "title": "Sex", "enum": [ "M", "F" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "summit": { "title": "Summit", "type": "boolean" }, "updated_at": { "title": "Updated At", "type": "string", "format": "date-time" } } }
- Fields:
- field city: str | None = None#
The athlete’s city.
- field country: str | None = None#
The athlete’s country.
- field created_at: datetime | None = None#
The time at which the athlete was created.
- field firstname: str | None = None#
The athlete’s first name.
- field lastname: str | None = None#
The athlete’s last name.
Deprecated. Use summit field instead. Whether the athlete has any Summit subscription.
- field profile: str | None = None#
URL to a 124x124 pixel profile picture.
- field profile_medium: str | None = None#
URL to a 62x62 pixel profile picture.
- field resource_state: int | None = None#
Resource state, indicates level of detail. Possible values: 1 -> “meta”, 2 -> “summary”, 3 -> “detail”
- field sex: Literal['M', 'F'] | None = None#
The athlete’s sex.
- field state: str | None = None#
The athlete’s state or geographical region.
- field summit: bool | None = None#
Whether the athlete has any Summit subscription.
- field updated_at: datetime | None = None#
The time at which the athlete was last updated.
- pydantic model stravalib.strava_model.SummaryClub[source]#
Show JSON schema
{ "title": "SummaryClub", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "activity_types": { "title": "Activity Types", "type": "array", "items": { "$ref": "#/definitions/ActivityType" } }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "cover_photo": { "title": "Cover Photo", "type": "string" }, "cover_photo_small": { "title": "Cover Photo Small", "type": "string" }, "featured": { "title": "Featured", "type": "boolean" }, "member_count": { "title": "Member Count", "type": "integer" }, "private": { "title": "Private", "type": "boolean" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "sport_type": { "title": "Sport Type", "enum": [ "cycling", "running", "triathlon", "other" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "url": { "title": "Url", "type": "string" }, "verified": { "title": "Verified", "type": "boolean" } }, "definitions": { "ActivityType": { "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" } } }
- Fields:
- field activity_types: list[ActivityType] | None = None#
The activity types that count for a club. This takes precedence over sport_type.
- field city: str | None = None#
The club’s city.
- field country: str | None = None#
The club’s country.
- field cover_photo: str | None = None#
URL to a ~1185x580 pixel cover photo.
- field cover_photo_small: str | None = None#
URL to a ~360x176 pixel cover photo.
- field featured: bool | None = None#
Whether the club is featured or not.
- field member_count: int | None = None#
The club’s member count.
- field private: bool | None = None#
Whether the club is private.
- field profile_medium: str | None = None#
URL to a 60x60 pixel profile picture.
- field sport_type: Literal['cycling', 'running', 'triathlon', 'other'] | None = None#
Deprecated. Prefer to use activity_types.
- field state: str | None = None#
The club’s state or geographical region.
- field url: str | None = None#
The club’s vanity URL.
- field verified: bool | None = None#
Whether the club is verified or not.
- pydantic model stravalib.strava_model.SummaryGear[source]#
Show JSON schema
{ "title": "SummaryGear", "type": "object", "properties": { "distance": { "title": "Distance", "type": "number" }, "id": { "title": "Id", "type": "string" }, "name": { "title": "Name", "type": "string" }, "primary": { "title": "Primary", "type": "boolean" }, "resource_state": { "title": "Resource State", "type": "integer" } } }
- Fields:
- field distance: float | None = None#
The distance logged with this gear.
- field id: str | None = None#
The gear’s unique identifier.
- field name: str | None = None#
The gear’s name.
- field primary: bool | None = None#
Whether this gear’s is the owner’s default one.
- field resource_state: int | None = None#
Resource state, indicates level of detail. Possible values: 2 -> “summary”, 3 -> “detail”
- pydantic model stravalib.strava_model.SummaryPRSegmentEffort[source]#
Show JSON schema
{ "title": "SummaryPRSegmentEffort", "type": "object", "properties": { "effort_count": { "title": "Effort Count", "type": "integer" }, "pr_activity_id": { "title": "Pr Activity Id", "type": "integer" }, "pr_date": { "title": "Pr Date", "type": "string", "format": "date-time" }, "pr_elapsed_time": { "title": "Pr Elapsed Time", "type": "integer" } } }
- Fields:
- field effort_count: int | None = None#
Number of efforts by the authenticated athlete on this segment.
- field pr_activity_id: int | None = None#
The unique identifier of the activity related to the PR effort.
- field pr_date: datetime | None = None#
The time at which the PR effort was started.
- field pr_elapsed_time: int | None = None#
The elapsed time ot the PR effort.
- pydantic model stravalib.strava_model.SummarySegmentEffort[source]#
Show JSON schema
{ "title": "SummarySegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" } } }
- Fields:
- field activity_id: int | None = None#
The unique identifier of the activity related to this effort
- field distance: float | None = None#
The effort’s distance in meters
- field elapsed_time: int | None = None#
The effort’s elapsed time
- field id: int | None = None#
The unique identifier of this effort
- field is_kom: bool | None = None#
Whether this effort is the current best on the leaderboard
- field start_date: datetime | None = None#
The time at which the effort was started.
- field start_date_local: datetime | None = None#
The time at which the effort was started in the local timezone.
- pydantic model stravalib.strava_model.TemperatureStream[source]#
Show JSON schema
{ "title": "TemperatureStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }
- Fields:
- field data: list[int] | None = None#
The sequence of temperature values for this stream, in celsius degrees
- pydantic model stravalib.strava_model.TimeStream[source]#
Show JSON schema
{ "title": "TimeStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }
- Fields:
- field data: list[int] | None = None#
The sequence of time values for this stream, in seconds
- pydantic model stravalib.strava_model.UpdatableActivity[source]#
Show JSON schema
{ "title": "UpdatableActivity", "type": "object", "properties": { "commute": { "title": "Commute", "type": "boolean" }, "description": { "title": "Description", "type": "string" }, "gear_id": { "title": "Gear Id", "type": "string" }, "hide_from_home": { "title": "Hide From Home", "type": "boolean" }, "name": { "title": "Name", "type": "string" }, "sport_type": { "$ref": "#/definitions/SportType" }, "trainer": { "title": "Trainer", "type": "boolean" }, "type": { "$ref": "#/definitions/ActivityType" } }, "definitions": { "SportType": { "title": "SportType", "enum": [ "AlpineSki", "BackcountrySki", "Badminton", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "EMountainBikeRide", "Golf", "GravelRide", "Handcycle", "HighIntensityIntervalTraining", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "MountainBikeRide", "NordicSki", "Pickleball", "Pilates", "Racquetball", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "Squash", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "TableTennis", "Tennis", "TrailRun", "Velomobile", "VirtualRide", "VirtualRow", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }, "ActivityType": { "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" } } }
- Fields:
- field commute: bool | None = None#
Whether this activity is a commute
- field description: str | None = None#
The description of the activity
- field gear_id: str | None = None#
Identifier for the gear associated with the activity. ‘none’ clears gear from activity
- field hide_from_home: bool | None = None#
Whether this activity is muted
- field name: str | None = None#
The name of the activity
- field trainer: bool | None = None#
Whether this activity was recorded on a training machine
- field type: ActivityType | None = None#
Deprecated. Prefer to use sport_type. In a request where both type and sport_type are present, this field will be ignored
- pydantic model stravalib.strava_model.Upload[source]#
Show JSON schema
{ "title": "Upload", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "error": { "title": "Error", "type": "string" }, "external_id": { "title": "External Id", "type": "string" }, "id": { "title": "Id", "type": "integer" }, "id_str": { "title": "Id Str", "type": "string" }, "status": { "title": "Status", "type": "string" } } }
- Fields:
- field activity_id: int | None = None#
The identifier of the activity this upload resulted into
- field error: str | None = None#
The error associated with this upload
- field external_id: str | None = None#
The external identifier of the upload
- field id: int | None = None#
The unique identifier of the upload
- field id_str: str | None = None#
The unique identifier of the upload in string format
- field status: str | None = None#
The status of this upload
- pydantic model stravalib.strava_model.Waypoint[source]#
Show JSON schema
{ "title": "Waypoint", "type": "object", "properties": { "categories": { "title": "Categories", "minItems": 0, "type": "array", "items": { "type": "string" } }, "description": { "title": "Description", "type": "string" }, "distance_into_route": { "title": "Distance Into Route", "type": "integer" }, "latlng": { "$ref": "#/definitions/LatLng" }, "target_latlng": { "$ref": "#/definitions/LatLng" }, "title": { "title": "Title", "type": "string" } }, "definitions": { "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } } } }
- Fields:
- field categories: list[str] | None = None#
Categories that the waypoint belongs to
- Constraints:
minItems = 0
- field description: str | None = None#
A description of the waypoint (optional)
- field distance_into_route: int | None = None#
The number meters along the route that the waypoint is located
- field target_latlng: LatLng | None = None#
A location off of the route that the waypoint is (optional)
- field title: str | None = None#
A title for the waypoint
- pydantic model stravalib.strava_model.ZoneRange[source]#
Show JSON schema
{ "title": "ZoneRange", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" } } }
- Fields:
- field max: int | None = None#
The maximum value in the range.
- field min: int | None = None#
The minimum value in the range.
- pydantic model stravalib.strava_model.ZoneRanges[source]#
Show JSON schema
{ "title": "ZoneRanges", "type": "array", "items": { "$ref": "#/definitions/ZoneRange" }, "definitions": { "ZoneRange": { "title": "ZoneRange", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" } } } } }
- Fields:
__root__ (list[stravalib.strava_model.ZoneRange])
- pydantic model stravalib.strava_model.ActivityStats[source]#
A set of rolled-up statistics and totals for an athlete
Show JSON schema
{ "title": "ActivityStats", "description": "A set of rolled-up statistics and totals for an athlete", "type": "object", "properties": { "all_ride_totals": { "$ref": "#/definitions/ActivityTotal" }, "all_run_totals": { "$ref": "#/definitions/ActivityTotal" }, "all_swim_totals": { "$ref": "#/definitions/ActivityTotal" }, "biggest_climb_elevation_gain": { "title": "Biggest Climb Elevation Gain", "type": "number" }, "biggest_ride_distance": { "title": "Biggest Ride Distance", "type": "number" }, "recent_ride_totals": { "$ref": "#/definitions/ActivityTotal" }, "recent_run_totals": { "$ref": "#/definitions/ActivityTotal" }, "recent_swim_totals": { "$ref": "#/definitions/ActivityTotal" }, "ytd_ride_totals": { "$ref": "#/definitions/ActivityTotal" }, "ytd_run_totals": { "$ref": "#/definitions/ActivityTotal" }, "ytd_swim_totals": { "$ref": "#/definitions/ActivityTotal" } }, "definitions": { "ActivityTotal": { "title": "ActivityTotal", "description": "A roll-up of metrics pertaining to a set of activities. Values are in seconds and meters.", "type": "object", "properties": { "achievement_count": { "title": "Achievement Count", "type": "integer" }, "count": { "title": "Count", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "elevation_gain": { "title": "Elevation Gain", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" } } } } }
- Fields:
all_ride_totals (stravalib.strava_model.ActivityTotal | None)
all_run_totals (stravalib.strava_model.ActivityTotal | None)
all_swim_totals (stravalib.strava_model.ActivityTotal | None)
recent_ride_totals (stravalib.strava_model.ActivityTotal | None)
recent_run_totals (stravalib.strava_model.ActivityTotal | None)
recent_swim_totals (stravalib.strava_model.ActivityTotal | None)
ytd_ride_totals (stravalib.strava_model.ActivityTotal | None)
ytd_run_totals (stravalib.strava_model.ActivityTotal | None)
ytd_swim_totals (stravalib.strava_model.ActivityTotal | None)
- field all_ride_totals: ActivityTotal | None = None#
The all time ride stats for the athlete.
- field all_run_totals: ActivityTotal | None = None#
The all time run stats for the athlete.
- field all_swim_totals: ActivityTotal | None = None#
The all time swim stats for the athlete.
- field biggest_climb_elevation_gain: float | None = None#
The highest climb ridden by the athlete.
- field biggest_ride_distance: float | None = None#
The longest distance ridden by the athlete.
- field recent_ride_totals: ActivityTotal | None = None#
The recent (last 4 weeks) ride stats for the athlete.
- field recent_run_totals: ActivityTotal | None = None#
The recent (last 4 weeks) run stats for the athlete.
- field recent_swim_totals: ActivityTotal | None = None#
The recent (last 4 weeks) swim stats for the athlete.
- field ytd_ride_totals: ActivityTotal | None = None#
The year to date ride stats for the athlete.
- field ytd_run_totals: ActivityTotal | None = None#
The year to date run stats for the athlete.
- field ytd_swim_totals: ActivityTotal | None = None#
The year to date swim stats for the athlete.
- pydantic model stravalib.strava_model.AltitudeStream[source]#
Show JSON schema
{ "title": "AltitudeStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }
- Fields:
- field data: list[float] | None = None#
The sequence of altitude values for this stream, in meters
- pydantic model stravalib.strava_model.ClubActivity[source]#
Show JSON schema
{ "title": "ClubActivity", "type": "object", "properties": { "athlete": { "$ref": "#/definitions/MetaAthlete" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "sport_type": { "$ref": "#/definitions/SportType" }, "total_elevation_gain": { "title": "Total Elevation Gain", "type": "number" }, "type": { "$ref": "#/definitions/ActivityType" }, "workout_type": { "title": "Workout Type", "type": "integer" } }, "definitions": { "MetaAthlete": { "title": "MetaAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }, "SportType": { "title": "SportType", "enum": [ "AlpineSki", "BackcountrySki", "Badminton", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "EMountainBikeRide", "Golf", "GravelRide", "Handcycle", "HighIntensityIntervalTraining", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "MountainBikeRide", "NordicSki", "Pickleball", "Pilates", "Racquetball", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "Squash", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "TableTennis", "Tennis", "TrailRun", "Velomobile", "VirtualRide", "VirtualRow", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }, "ActivityType": { "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" } } }
- Fields:
- field athlete: MetaAthlete | None = None#
- field distance: float | None = None#
The activity’s distance, in meters
- field elapsed_time: int | None = None#
The activity’s elapsed time, in seconds
- field moving_time: int | None = None#
The activity’s moving time, in seconds
- field name: str | None = None#
The name of the activity
- field total_elevation_gain: float | None = None#
The activity’s total elevation gain.
- field type: ActivityType | None = None#
Deprecated. Prefer to use sport_type
- field workout_type: int | None = None#
The activity’s workout type
- pydantic model stravalib.strava_model.ClubAnnouncement[source]#
Show JSON schema
{ "title": "ClubAnnouncement", "type": "object", "properties": { "athlete": { "$ref": "#/definitions/SummaryAthlete" }, "club_id": { "title": "Club Id", "type": "integer" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "id": { "title": "Id", "type": "integer" }, "message": { "title": "Message", "type": "string" } }, "definitions": { "SummaryAthlete": { "title": "SummaryAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "firstname": { "title": "Firstname", "type": "string" }, "lastname": { "title": "Lastname", "type": "string" }, "premium": { "title": "Premium", "type": "boolean" }, "profile": { "title": "Profile", "type": "string" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "sex": { "title": "Sex", "enum": [ "M", "F" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "summit": { "title": "Summit", "type": "boolean" }, "updated_at": { "title": "Updated At", "type": "string", "format": "date-time" } } } } }
- Fields:
- field athlete: SummaryAthlete | None = None#
- field club_id: int | None = None#
The unique identifier of the club this announcements was made in.
- field created_at: datetime | None = None#
The time at which this announcement was created.
- field id: int | None = None#
The unique identifier of this announcement.
- field message: str | None = None#
The content of this announcement
- pydantic model stravalib.strava_model.Comment[source]#
Show JSON schema
{ "title": "Comment", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "athlete": { "$ref": "#/definitions/SummaryAthlete" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "id": { "title": "Id", "type": "integer" }, "text": { "title": "Text", "type": "string" } }, "definitions": { "SummaryAthlete": { "title": "SummaryAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "firstname": { "title": "Firstname", "type": "string" }, "lastname": { "title": "Lastname", "type": "string" }, "premium": { "title": "Premium", "type": "boolean" }, "profile": { "title": "Profile", "type": "string" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "sex": { "title": "Sex", "enum": [ "M", "F" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "summit": { "title": "Summit", "type": "boolean" }, "updated_at": { "title": "Updated At", "type": "string", "format": "date-time" } } } } }
- Fields:
- field activity_id: int | None = None#
The identifier of the activity this comment is related to
- field athlete: SummaryAthlete | None = None#
- field created_at: datetime | None = None#
The time at which this comment was created.
- field id: int | None = None#
The unique identifier of this comment
- field text: str | None = None#
The content of the comment
- pydantic model stravalib.strava_model.DetailedAthlete[source]#
Show JSON schema
{ "title": "DetailedAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "firstname": { "title": "Firstname", "type": "string" }, "lastname": { "title": "Lastname", "type": "string" }, "premium": { "title": "Premium", "type": "boolean" }, "profile": { "title": "Profile", "type": "string" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "sex": { "title": "Sex", "enum": [ "M", "F" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "summit": { "title": "Summit", "type": "boolean" }, "updated_at": { "title": "Updated At", "type": "string", "format": "date-time" }, "bikes": { "title": "Bikes", "type": "array", "items": { "$ref": "#/definitions/SummaryGear" } }, "clubs": { "title": "Clubs", "type": "array", "items": { "$ref": "#/definitions/SummaryClub" } }, "follower_count": { "title": "Follower Count", "type": "integer" }, "friend_count": { "title": "Friend Count", "type": "integer" }, "ftp": { "title": "Ftp", "type": "integer" }, "measurement_preference": { "title": "Measurement Preference", "enum": [ "feet", "meters" ], "type": "string" }, "shoes": { "title": "Shoes", "type": "array", "items": { "$ref": "#/definitions/SummaryGear" } }, "weight": { "title": "Weight", "type": "number" } }, "definitions": { "SummaryGear": { "title": "SummaryGear", "type": "object", "properties": { "distance": { "title": "Distance", "type": "number" }, "id": { "title": "Id", "type": "string" }, "name": { "title": "Name", "type": "string" }, "primary": { "title": "Primary", "type": "boolean" }, "resource_state": { "title": "Resource State", "type": "integer" } } }, "ActivityType": { "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }, "SummaryClub": { "title": "SummaryClub", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "activity_types": { "title": "Activity Types", "type": "array", "items": { "$ref": "#/definitions/ActivityType" } }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "cover_photo": { "title": "Cover Photo", "type": "string" }, "cover_photo_small": { "title": "Cover Photo Small", "type": "string" }, "featured": { "title": "Featured", "type": "boolean" }, "member_count": { "title": "Member Count", "type": "integer" }, "private": { "title": "Private", "type": "boolean" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "sport_type": { "title": "Sport Type", "enum": [ "cycling", "running", "triathlon", "other" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "url": { "title": "Url", "type": "string" }, "verified": { "title": "Verified", "type": "boolean" } } } } }
- Fields:
- field bikes: list[SummaryGear] | None = None#
The athlete’s bikes.
- field clubs: list[SummaryClub] | None = None#
The athlete’s clubs.
- field follower_count: int | None = None#
The athlete’s follower count.
- field friend_count: int | None = None#
The athlete’s friend count.
- field ftp: int | None = None#
The athlete’s FTP (Functional Threshold Power).
- field measurement_preference: Literal['feet', 'meters'] | None = None#
The athlete’s preferred unit system.
- field shoes: list[SummaryGear] | None = None#
The athlete’s shoes.
- field weight: float | None = None#
The athlete’s weight.
- pydantic model stravalib.strava_model.DetailedClub[source]#
Show JSON schema
{ "title": "DetailedClub", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "activity_types": { "title": "Activity Types", "type": "array", "items": { "$ref": "#/definitions/ActivityType" } }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "cover_photo": { "title": "Cover Photo", "type": "string" }, "cover_photo_small": { "title": "Cover Photo Small", "type": "string" }, "featured": { "title": "Featured", "type": "boolean" }, "member_count": { "title": "Member Count", "type": "integer" }, "private": { "title": "Private", "type": "boolean" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "sport_type": { "title": "Sport Type", "enum": [ "cycling", "running", "triathlon", "other" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "url": { "title": "Url", "type": "string" }, "verified": { "title": "Verified", "type": "boolean" }, "admin": { "title": "Admin", "type": "boolean" }, "following_count": { "title": "Following Count", "type": "integer" }, "membership": { "title": "Membership", "enum": [ "member", "pending" ], "type": "string" }, "owner": { "title": "Owner", "type": "boolean" } }, "definitions": { "ActivityType": { "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" } } }
- Fields:
- field admin: bool | None = None#
Whether the currently logged-in athlete is an administrator of this club.
- field following_count: int | None = None#
The number of athletes in the club that the logged-in athlete follows.
- field membership: Literal['member', 'pending'] | None = None#
The membership status of the logged-in athlete.
- field owner: bool | None = None#
Whether the currently logged-in athlete is the owner of this club.
- pydantic model stravalib.strava_model.DetailedGear[source]#
Show JSON schema
{ "title": "DetailedGear", "type": "object", "properties": { "distance": { "title": "Distance", "type": "number" }, "id": { "title": "Id", "type": "string" }, "name": { "title": "Name", "type": "string" }, "primary": { "title": "Primary", "type": "boolean" }, "resource_state": { "title": "Resource State", "type": "integer" }, "brand_name": { "title": "Brand Name", "type": "string" }, "description": { "title": "Description", "type": "string" }, "frame_type": { "title": "Frame Type", "type": "integer" }, "model_name": { "title": "Model Name", "type": "string" } } }
- Fields:
- field brand_name: str | None = None#
The gear’s brand name.
- field description: str | None = None#
The gear’s description.
- field frame_type: int | None = None#
The gear’s frame type (bike only).
- field model_name: str | None = None#
The gear’s model name.
- pydantic model stravalib.strava_model.ExplorerSegment[source]#
Show JSON schema
{ "title": "ExplorerSegment", "type": "object", "properties": { "avg_grade": { "title": "Avg Grade", "type": "number" }, "climb_category": { "title": "Climb Category", "minimum": 0, "maximum": 5, "type": "integer" }, "climb_category_desc": { "title": "Climb Category Desc", "enum": [ "NC", "4", "3", "2", "1", "HC" ], "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elev_difference": { "title": "Elev Difference", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "id": { "title": "Id", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "points": { "title": "Points", "type": "string" }, "start_latlng": { "$ref": "#/definitions/LatLng" } }, "definitions": { "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } } } }
- field avg_grade: float | None = None#
The segment’s average grade, in percents
- field climb_category: int | None = None#
The category of the climb [0, 5]. Higher is harder ie. 5 is Hors catégorie, 0 is uncategorized in climb_category. If climb_category = 5, climb_category_desc = HC. If climb_category = 2, climb_category_desc = 3.
- Constraints:
minimum = 0
maximum = 5
- field climb_category_desc: Literal['NC', '4', '3', '2', '1', 'HC'] | None = None#
The description for the category of the climb
- field distance: float | None = None#
The segment’s distance, in meters
- field elev_difference: float | None = None#
The segments’s evelation difference, in meters
- field id: int | None = None#
The unique identifier of this segment
- field name: str | None = None#
The name of this segment
- field points: str | None = None#
The polyline of the segment
- pydantic model stravalib.strava_model.HeartRateZoneRanges[source]#
Show JSON schema
{ "title": "HeartRateZoneRanges", "type": "object", "properties": { "custom_zones": { "title": "Custom Zones", "type": "boolean" }, "zones": { "$ref": "#/definitions/ZoneRanges" } }, "definitions": { "ZoneRange": { "title": "ZoneRange", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" } } }, "ZoneRanges": { "title": "ZoneRanges", "type": "array", "items": { "$ref": "#/definitions/ZoneRange" } } } }
- field custom_zones: bool | None = None#
Whether the athlete has set their own custom heart rate zones
- field zones: ZoneRanges | None = None#
- pydantic model stravalib.strava_model.Lap[source]#
Show JSON schema
{ "title": "Lap", "type": "object", "properties": { "activity": { "$ref": "#/definitions/MetaActivity" }, "athlete": { "$ref": "#/definitions/MetaAthlete" }, "average_cadence": { "title": "Average Cadence", "type": "number" }, "average_speed": { "title": "Average Speed", "type": "number" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "end_index": { "title": "End Index", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "lap_index": { "title": "Lap Index", "type": "integer" }, "max_speed": { "title": "Max Speed", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "pace_zone": { "title": "Pace Zone", "type": "integer" }, "split": { "title": "Split", "type": "integer" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" }, "start_index": { "title": "Start Index", "type": "integer" }, "total_elevation_gain": { "title": "Total Elevation Gain", "type": "number" } }, "definitions": { "MetaActivity": { "title": "MetaActivity", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }, "MetaAthlete": { "title": "MetaAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } } } }
- Fields:
- field activity: MetaActivity | None = None#
- field athlete: MetaAthlete | None = None#
- field average_cadence: float | None = None#
The lap’s average cadence
- field average_speed: float | None = None#
The lap’s average speed
- field distance: float | None = None#
The lap’s distance, in meters
- field elapsed_time: int | None = None#
The lap’s elapsed time, in seconds
- field end_index: int | None = None#
The end index of this effort in its activity’s stream
- field id: int | None = None#
The unique identifier of this lap
- field lap_index: int | None = None#
The index of this lap in the activity it belongs to
- field max_speed: float | None = None#
The maximum speed of this lat, in meters per second
- field moving_time: int | None = None#
The lap’s moving time, in seconds
- field name: str | None = None#
The name of the lap
- field pace_zone: int | None = None#
The athlete’s pace zone during this lap
- field split: int | None = None#
- field start_date: datetime | None = None#
The time at which the lap was started.
- field start_date_local: datetime | None = None#
The time at which the lap was started in the local timezone.
- field start_index: int | None = None#
The start index of this effort in its activity’s stream
- field total_elevation_gain: float | None = None#
The elevation gain of this lap, in meters
- pydantic model stravalib.strava_model.PowerZoneRanges[source]#
Show JSON schema
{ "title": "PowerZoneRanges", "type": "object", "properties": { "zones": { "$ref": "#/definitions/ZoneRanges" } }, "definitions": { "ZoneRange": { "title": "ZoneRange", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" } } }, "ZoneRanges": { "title": "ZoneRanges", "type": "array", "items": { "$ref": "#/definitions/ZoneRange" } } } }
- field zones: ZoneRanges | None = None#
- pydantic model stravalib.strava_model.StreamSet[source]#
Show JSON schema
{ "title": "StreamSet", "type": "object", "properties": { "altitude": { "$ref": "#/definitions/AltitudeStream" }, "cadence": { "$ref": "#/definitions/CadenceStream" }, "distance": { "$ref": "#/definitions/DistanceStream" }, "grade_smooth": { "$ref": "#/definitions/SmoothGradeStream" }, "heartrate": { "$ref": "#/definitions/HeartrateStream" }, "latlng": { "$ref": "#/definitions/LatLngStream" }, "moving": { "$ref": "#/definitions/MovingStream" }, "temp": { "$ref": "#/definitions/TemperatureStream" }, "time": { "$ref": "#/definitions/TimeStream" }, "velocity_smooth": { "$ref": "#/definitions/SmoothVelocityStream" }, "watts": { "$ref": "#/definitions/PowerStream" } }, "definitions": { "AltitudeStream": { "title": "AltitudeStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }, "CadenceStream": { "title": "CadenceStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }, "DistanceStream": { "title": "DistanceStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }, "SmoothGradeStream": { "title": "SmoothGradeStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }, "HeartrateStream": { "title": "HeartrateStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }, "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }, "LatLngStream": { "title": "LatLngStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "$ref": "#/definitions/LatLng" } } } }, "MovingStream": { "title": "MovingStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "boolean" } } } }, "TemperatureStream": { "title": "TemperatureStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }, "TimeStream": { "title": "TimeStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } }, "SmoothVelocityStream": { "title": "SmoothVelocityStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "number" } } } }, "PowerStream": { "title": "PowerStream", "type": "object", "properties": { "original_size": { "title": "Original Size", "type": "integer" }, "resolution": { "title": "Resolution", "enum": [ "low", "medium", "high" ], "type": "string" }, "series_type": { "title": "Series Type", "enum": [ "distance", "time" ], "type": "string" }, "data": { "title": "Data", "type": "array", "items": { "type": "integer" } } } } } }
- Fields:
- field altitude: AltitudeStream | None = None#
- field cadence: CadenceStream | None = None#
- field distance: DistanceStream | None = None#
- field grade_smooth: SmoothGradeStream | None = None#
- field heartrate: HeartrateStream | None = None#
- field latlng: LatLngStream | None = None#
- field moving: MovingStream | None = None#
- field temp: TemperatureStream | None = None#
- field time: TimeStream | None = None#
- field velocity_smooth: SmoothVelocityStream | None = None#
- field watts: PowerStream | None = None#
- pydantic model stravalib.strava_model.SummarySegment[source]#
Show JSON schema
{ "title": "SummarySegment", "type": "object", "properties": { "activity_type": { "title": "Activity Type", "enum": [ "Ride", "Run" ], "type": "string" }, "athlete_pr_effort": { "$ref": "#/definitions/SummaryPRSegmentEffort" }, "athlete_segment_stats": { "$ref": "#/definitions/SummarySegmentEffort" }, "average_grade": { "title": "Average Grade", "type": "number" }, "city": { "title": "City", "type": "string" }, "climb_category": { "title": "Climb Category", "type": "integer" }, "country": { "title": "Country", "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elevation_high": { "title": "Elevation High", "type": "number" }, "elevation_low": { "title": "Elevation Low", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "id": { "title": "Id", "type": "integer" }, "maximum_grade": { "title": "Maximum Grade", "type": "number" }, "name": { "title": "Name", "type": "string" }, "private": { "title": "Private", "type": "boolean" }, "start_latlng": { "$ref": "#/definitions/LatLng" }, "state": { "title": "State", "type": "string" } }, "definitions": { "SummaryPRSegmentEffort": { "title": "SummaryPRSegmentEffort", "type": "object", "properties": { "effort_count": { "title": "Effort Count", "type": "integer" }, "pr_activity_id": { "title": "Pr Activity Id", "type": "integer" }, "pr_date": { "title": "Pr Date", "type": "string", "format": "date-time" }, "pr_elapsed_time": { "title": "Pr Elapsed Time", "type": "integer" } } }, "SummarySegmentEffort": { "title": "SummarySegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" } } }, "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } } } }
- Fields:
- field activity_type: Literal['Ride', 'Run'] | None = None#
- field athlete_pr_effort: SummaryPRSegmentEffort | None = None#
- field athlete_segment_stats: SummarySegmentEffort | None = None#
- field average_grade: float | None = None#
The segment’s average grade, in percents
- field city: str | None = None#
The segments’s city.
- field climb_category: int | None = None#
The category of the climb [0, 5]. Higher is harder ie. 5 is Hors catégorie, 0 is uncategorized in climb_category.
- field country: str | None = None#
The segment’s country.
- field distance: float | None = None#
The segment’s distance, in meters
- field elevation_high: float | None = None#
The segments’s highest elevation, in meters
- field elevation_low: float | None = None#
The segments’s lowest elevation, in meters
- field id: int | None = None#
The unique identifier of this segment
- field maximum_grade: float | None = None#
The segments’s maximum grade, in percents
- field name: str | None = None#
The name of this segment
- field private: bool | None = None#
Whether this segment is private.
- field state: str | None = None#
The segments’s state or geographical region.
- pydantic model stravalib.strava_model.TimedZoneRange[source]#
A union type representing the time spent in a given zone.
Show JSON schema
{ "title": "TimedZoneRange", "description": "A union type representing the time spent in a given zone.", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" }, "time": { "title": "Time", "type": "integer" } } }
- Fields:
- field time: int | None = None#
The number of seconds spent in this zone
- pydantic model stravalib.strava_model.Zones[source]#
Show JSON schema
{ "title": "Zones", "type": "object", "properties": { "heart_rate": { "$ref": "#/definitions/HeartRateZoneRanges" }, "power": { "$ref": "#/definitions/PowerZoneRanges" } }, "definitions": { "ZoneRange": { "title": "ZoneRange", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" } } }, "ZoneRanges": { "title": "ZoneRanges", "type": "array", "items": { "$ref": "#/definitions/ZoneRange" } }, "HeartRateZoneRanges": { "title": "HeartRateZoneRanges", "type": "object", "properties": { "custom_zones": { "title": "Custom Zones", "type": "boolean" }, "zones": { "$ref": "#/definitions/ZoneRanges" } } }, "PowerZoneRanges": { "title": "PowerZoneRanges", "type": "object", "properties": { "zones": { "$ref": "#/definitions/ZoneRanges" } } } } }
- Fields:
- field heart_rate: HeartRateZoneRanges | None = None#
- field power: PowerZoneRanges | None = None#
- pydantic model stravalib.strava_model.DetailedSegment[source]#
Show JSON schema
{ "title": "DetailedSegment", "type": "object", "properties": { "activity_type": { "title": "Activity Type", "enum": [ "Ride", "Run" ], "type": "string" }, "athlete_pr_effort": { "$ref": "#/definitions/SummaryPRSegmentEffort" }, "athlete_segment_stats": { "$ref": "#/definitions/SummarySegmentEffort" }, "average_grade": { "title": "Average Grade", "type": "number" }, "city": { "title": "City", "type": "string" }, "climb_category": { "title": "Climb Category", "type": "integer" }, "country": { "title": "Country", "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elevation_high": { "title": "Elevation High", "type": "number" }, "elevation_low": { "title": "Elevation Low", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "id": { "title": "Id", "type": "integer" }, "maximum_grade": { "title": "Maximum Grade", "type": "number" }, "name": { "title": "Name", "type": "string" }, "private": { "title": "Private", "type": "boolean" }, "start_latlng": { "$ref": "#/definitions/LatLng" }, "state": { "title": "State", "type": "string" }, "athlete_count": { "title": "Athlete Count", "type": "integer" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "effort_count": { "title": "Effort Count", "type": "integer" }, "hazardous": { "title": "Hazardous", "type": "boolean" }, "map": { "$ref": "#/definitions/PolylineMap" }, "star_count": { "title": "Star Count", "type": "integer" }, "total_elevation_gain": { "title": "Total Elevation Gain", "type": "number" }, "updated_at": { "title": "Updated At", "type": "string", "format": "date-time" } }, "definitions": { "SummaryPRSegmentEffort": { "title": "SummaryPRSegmentEffort", "type": "object", "properties": { "effort_count": { "title": "Effort Count", "type": "integer" }, "pr_activity_id": { "title": "Pr Activity Id", "type": "integer" }, "pr_date": { "title": "Pr Date", "type": "string", "format": "date-time" }, "pr_elapsed_time": { "title": "Pr Elapsed Time", "type": "integer" } } }, "SummarySegmentEffort": { "title": "SummarySegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" } } }, "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }, "PolylineMap": { "title": "PolylineMap", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "polyline": { "title": "Polyline", "type": "string" }, "summary_polyline": { "title": "Summary Polyline", "type": "string" } } } } }
- Fields:
- field athlete_count: int | None = None#
The number of unique athletes who have an effort for this segment
- field created_at: datetime | None = None#
The time at which the segment was created.
- field effort_count: int | None = None#
The total number of efforts for this segment
- field hazardous: bool | None = None#
Whether this segment is considered hazardous
- field map: PolylineMap | None = None#
- field star_count: int | None = None#
The number of stars for this segment
- field total_elevation_gain: float | None = None#
The segment’s total elevation gain.
- field updated_at: datetime | None = None#
The time at which the segment was last updated.
- pydantic model stravalib.strava_model.DetailedSegmentEffort[source]#
Show JSON schema
{ "title": "DetailedSegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" }, "activity": { "$ref": "#/definitions/MetaActivity" }, "athlete": { "$ref": "#/definitions/MetaAthlete" }, "average_cadence": { "title": "Average Cadence", "type": "number" }, "average_heartrate": { "title": "Average Heartrate", "type": "number" }, "average_watts": { "title": "Average Watts", "type": "number" }, "device_watts": { "title": "Device Watts", "type": "boolean" }, "end_index": { "title": "End Index", "type": "integer" }, "hidden": { "title": "Hidden", "type": "boolean" }, "kom_rank": { "title": "Kom Rank", "minimum": 1, "maximum": 10, "type": "integer" }, "max_heartrate": { "title": "Max Heartrate", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "pr_rank": { "title": "Pr Rank", "minimum": 1, "maximum": 3, "type": "integer" }, "segment": { "$ref": "#/definitions/SummarySegment" }, "start_index": { "title": "Start Index", "type": "integer" } }, "definitions": { "MetaActivity": { "title": "MetaActivity", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }, "MetaAthlete": { "title": "MetaAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }, "SummaryPRSegmentEffort": { "title": "SummaryPRSegmentEffort", "type": "object", "properties": { "effort_count": { "title": "Effort Count", "type": "integer" }, "pr_activity_id": { "title": "Pr Activity Id", "type": "integer" }, "pr_date": { "title": "Pr Date", "type": "string", "format": "date-time" }, "pr_elapsed_time": { "title": "Pr Elapsed Time", "type": "integer" } } }, "SummarySegmentEffort": { "title": "SummarySegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" } } }, "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }, "SummarySegment": { "title": "SummarySegment", "type": "object", "properties": { "activity_type": { "title": "Activity Type", "enum": [ "Ride", "Run" ], "type": "string" }, "athlete_pr_effort": { "$ref": "#/definitions/SummaryPRSegmentEffort" }, "athlete_segment_stats": { "$ref": "#/definitions/SummarySegmentEffort" }, "average_grade": { "title": "Average Grade", "type": "number" }, "city": { "title": "City", "type": "string" }, "climb_category": { "title": "Climb Category", "type": "integer" }, "country": { "title": "Country", "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elevation_high": { "title": "Elevation High", "type": "number" }, "elevation_low": { "title": "Elevation Low", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "id": { "title": "Id", "type": "integer" }, "maximum_grade": { "title": "Maximum Grade", "type": "number" }, "name": { "title": "Name", "type": "string" }, "private": { "title": "Private", "type": "boolean" }, "start_latlng": { "$ref": "#/definitions/LatLng" }, "state": { "title": "State", "type": "string" } } } } }
- Fields:
- field activity: MetaActivity | None = None#
- field athlete: MetaAthlete | None = None#
- field average_cadence: float | None = None#
The effort’s average cadence
- field average_heartrate: float | None = None#
The heart heart rate of the athlete during this effort
- field average_watts: float | None = None#
The average wattage of this effort
- field device_watts: bool | None = None#
For riding efforts, whether the wattage was reported by a dedicated recording device
- field end_index: int | None = None#
The end index of this effort in its activity’s stream
Whether this effort should be hidden when viewed within an activity
- field kom_rank: int | None = None#
The rank of the effort on the global leaderboard if it belongs in the top 10 at the time of upload
- Constraints:
minimum = 1
maximum = 10
- field max_heartrate: float | None = None#
The maximum heart rate of the athlete during this effort
- field moving_time: int | None = None#
The effort’s moving time
- field name: str | None = None#
The name of the segment on which this effort was performed
- field pr_rank: int | None = None#
The rank of the effort on the athlete’s leaderboard if it belongs in the top 3 at the time of upload
- Constraints:
minimum = 1
maximum = 3
- field segment: SummarySegment | None = None#
- field start_index: int | None = None#
The start index of this effort in its activity’s stream
- pydantic model stravalib.strava_model.ExplorerResponse[source]#
Show JSON schema
{ "title": "ExplorerResponse", "type": "object", "properties": { "segments": { "title": "Segments", "type": "array", "items": { "$ref": "#/definitions/ExplorerSegment" } } }, "definitions": { "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }, "ExplorerSegment": { "title": "ExplorerSegment", "type": "object", "properties": { "avg_grade": { "title": "Avg Grade", "type": "number" }, "climb_category": { "title": "Climb Category", "minimum": 0, "maximum": 5, "type": "integer" }, "climb_category_desc": { "title": "Climb Category Desc", "enum": [ "NC", "4", "3", "2", "1", "HC" ], "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elev_difference": { "title": "Elev Difference", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "id": { "title": "Id", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "points": { "title": "Points", "type": "string" }, "start_latlng": { "$ref": "#/definitions/LatLng" } } } } }
- field segments: list[ExplorerSegment] | None = None#
The set of segments matching an explorer request
- pydantic model stravalib.strava_model.Route[source]#
Show JSON schema
{ "title": "Route", "type": "object", "properties": { "athlete": { "$ref": "#/definitions/SummaryAthlete" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "description": { "title": "Description", "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elevation_gain": { "title": "Elevation Gain", "type": "number" }, "estimated_moving_time": { "title": "Estimated Moving Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "id_str": { "title": "Id Str", "type": "string" }, "map": { "$ref": "#/definitions/PolylineMap" }, "name": { "title": "Name", "type": "string" }, "private": { "title": "Private", "type": "boolean" }, "segments": { "title": "Segments", "type": "array", "items": { "$ref": "#/definitions/SummarySegment" } }, "starred": { "title": "Starred", "type": "boolean" }, "sub_type": { "title": "Sub Type", "type": "integer" }, "timestamp": { "title": "Timestamp", "type": "integer" }, "type": { "title": "Type", "type": "integer" }, "updated_at": { "title": "Updated At", "type": "string", "format": "date-time" }, "waypoints": { "title": "Waypoints", "minItems": 0, "type": "array", "items": { "$ref": "#/definitions/Waypoint" } } }, "definitions": { "SummaryAthlete": { "title": "SummaryAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "city": { "title": "City", "type": "string" }, "country": { "title": "Country", "type": "string" }, "created_at": { "title": "Created At", "type": "string", "format": "date-time" }, "firstname": { "title": "Firstname", "type": "string" }, "lastname": { "title": "Lastname", "type": "string" }, "premium": { "title": "Premium", "type": "boolean" }, "profile": { "title": "Profile", "type": "string" }, "profile_medium": { "title": "Profile Medium", "type": "string" }, "resource_state": { "title": "Resource State", "type": "integer" }, "sex": { "title": "Sex", "enum": [ "M", "F" ], "type": "string" }, "state": { "title": "State", "type": "string" }, "summit": { "title": "Summit", "type": "boolean" }, "updated_at": { "title": "Updated At", "type": "string", "format": "date-time" } } }, "PolylineMap": { "title": "PolylineMap", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "polyline": { "title": "Polyline", "type": "string" }, "summary_polyline": { "title": "Summary Polyline", "type": "string" } } }, "SummaryPRSegmentEffort": { "title": "SummaryPRSegmentEffort", "type": "object", "properties": { "effort_count": { "title": "Effort Count", "type": "integer" }, "pr_activity_id": { "title": "Pr Activity Id", "type": "integer" }, "pr_date": { "title": "Pr Date", "type": "string", "format": "date-time" }, "pr_elapsed_time": { "title": "Pr Elapsed Time", "type": "integer" } } }, "SummarySegmentEffort": { "title": "SummarySegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" } } }, "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }, "SummarySegment": { "title": "SummarySegment", "type": "object", "properties": { "activity_type": { "title": "Activity Type", "enum": [ "Ride", "Run" ], "type": "string" }, "athlete_pr_effort": { "$ref": "#/definitions/SummaryPRSegmentEffort" }, "athlete_segment_stats": { "$ref": "#/definitions/SummarySegmentEffort" }, "average_grade": { "title": "Average Grade", "type": "number" }, "city": { "title": "City", "type": "string" }, "climb_category": { "title": "Climb Category", "type": "integer" }, "country": { "title": "Country", "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elevation_high": { "title": "Elevation High", "type": "number" }, "elevation_low": { "title": "Elevation Low", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "id": { "title": "Id", "type": "integer" }, "maximum_grade": { "title": "Maximum Grade", "type": "number" }, "name": { "title": "Name", "type": "string" }, "private": { "title": "Private", "type": "boolean" }, "start_latlng": { "$ref": "#/definitions/LatLng" }, "state": { "title": "State", "type": "string" } } }, "Waypoint": { "title": "Waypoint", "type": "object", "properties": { "categories": { "title": "Categories", "minItems": 0, "type": "array", "items": { "type": "string" } }, "description": { "title": "Description", "type": "string" }, "distance_into_route": { "title": "Distance Into Route", "type": "integer" }, "latlng": { "$ref": "#/definitions/LatLng" }, "target_latlng": { "$ref": "#/definitions/LatLng" }, "title": { "title": "Title", "type": "string" } } } } }
- field athlete: SummaryAthlete | None = None#
- field created_at: datetime | None = None#
The time at which the route was created
- field description: str | None = None#
The description of the route
- field distance: float | None = None#
The route’s distance, in meters
- field elevation_gain: float | None = None#
The route’s elevation gain.
- field estimated_moving_time: int | None = None#
Estimated time in seconds for the authenticated athlete to complete route
- field id: int | None = None#
The unique identifier of this route
- field id_str: str | None = None#
The unique identifier of the route in string format
- field map: PolylineMap | None = None#
- field name: str | None = None#
The name of this route
- field private: bool | None = None#
Whether this route is private
- field segments: list[SummarySegment] | None = None#
The segments traversed by this route
- field starred: bool | None = None#
Whether this route is starred by the logged-in athlete
- field sub_type: int | None = None#
This route’s sub-type (1 for road, 2 for mountain bike, 3 for cross, 4 for trail, 5 for mixed)
- field timestamp: int | None = None#
An epoch timestamp of when the route was created
- field type: int | None = None#
This route’s type (1 for ride, 2 for runs)
- field updated_at: datetime | None = None#
The time at which the route was last updated
- pydantic model stravalib.strava_model.TimedZoneDistribution[source]#
Stores the exclusive ranges representing zones and the time spent in each.
Show JSON schema
{ "title": "TimedZoneDistribution", "description": "Stores the exclusive ranges representing zones and the time spent in each.", "type": "array", "items": { "$ref": "#/definitions/TimedZoneRange" }, "definitions": { "TimedZoneRange": { "title": "TimedZoneRange", "description": "A union type representing the time spent in a given zone.", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" }, "time": { "title": "Time", "type": "integer" } } } } }
- Fields:
__root__ (list[stravalib.strava_model.TimedZoneRange])
- pydantic model stravalib.strava_model.ActivityZone[source]#
Show JSON schema
{ "title": "ActivityZone", "type": "object", "properties": { "custom_zones": { "title": "Custom Zones", "type": "boolean" }, "distribution_buckets": { "$ref": "#/definitions/TimedZoneDistribution" }, "max": { "title": "Max", "type": "integer" }, "points": { "title": "Points", "type": "integer" }, "score": { "title": "Score", "type": "integer" }, "sensor_based": { "title": "Sensor Based", "type": "boolean" }, "type": { "title": "Type", "enum": [ "heartrate", "power" ], "type": "string" } }, "definitions": { "TimedZoneRange": { "title": "TimedZoneRange", "description": "A union type representing the time spent in a given zone.", "type": "object", "properties": { "max": { "title": "Max", "type": "integer" }, "min": { "title": "Min", "type": "integer" }, "time": { "title": "Time", "type": "integer" } } }, "TimedZoneDistribution": { "title": "TimedZoneDistribution", "description": "Stores the exclusive ranges representing zones and the time spent in each.", "type": "array", "items": { "$ref": "#/definitions/TimedZoneRange" } } } }
- Fields:
- field custom_zones: bool | None = None#
- field distribution_buckets: TimedZoneDistribution | None = None#
- field max: int | None = None#
- field points: int | None = None#
- field score: int | None = None#
- field sensor_based: bool | None = None#
- field type: Literal['heartrate', 'power'] | None = None#
- pydantic model stravalib.strava_model.DetailedActivity[source]#
Show JSON schema
{ "title": "DetailedActivity", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "achievement_count": { "title": "Achievement Count", "type": "integer" }, "athlete": { "$ref": "#/definitions/MetaAthlete" }, "athlete_count": { "title": "Athlete Count", "minimum": 1, "type": "integer" }, "average_speed": { "title": "Average Speed", "type": "number" }, "average_watts": { "title": "Average Watts", "type": "number" }, "comment_count": { "title": "Comment Count", "type": "integer" }, "commute": { "title": "Commute", "type": "boolean" }, "device_watts": { "title": "Device Watts", "type": "boolean" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "elev_high": { "title": "Elev High", "type": "number" }, "elev_low": { "title": "Elev Low", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "external_id": { "title": "External Id", "type": "string" }, "flagged": { "title": "Flagged", "type": "boolean" }, "gear_id": { "title": "Gear Id", "type": "string" }, "has_kudoed": { "title": "Has Kudoed", "type": "boolean" }, "hide_from_home": { "title": "Hide From Home", "type": "boolean" }, "kilojoules": { "title": "Kilojoules", "type": "number" }, "kudos_count": { "title": "Kudos Count", "type": "integer" }, "manual": { "title": "Manual", "type": "boolean" }, "map": { "$ref": "#/definitions/PolylineMap" }, "max_speed": { "title": "Max Speed", "type": "number" }, "max_watts": { "title": "Max Watts", "type": "integer" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "photo_count": { "title": "Photo Count", "type": "integer" }, "private": { "title": "Private", "type": "boolean" }, "sport_type": { "$ref": "#/definitions/SportType" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" }, "start_latlng": { "$ref": "#/definitions/LatLng" }, "timezone": { "title": "Timezone", "type": "string" }, "total_elevation_gain": { "title": "Total Elevation Gain", "type": "number" }, "total_photo_count": { "title": "Total Photo Count", "type": "integer" }, "trainer": { "title": "Trainer", "type": "boolean" }, "type": { "$ref": "#/definitions/ActivityType" }, "upload_id": { "title": "Upload Id", "type": "integer" }, "upload_id_str": { "title": "Upload Id Str", "type": "string" }, "weighted_average_watts": { "title": "Weighted Average Watts", "type": "integer" }, "workout_type": { "title": "Workout Type", "type": "integer" }, "best_efforts": { "title": "Best Efforts", "type": "array", "items": { "$ref": "#/definitions/DetailedSegmentEffort" } }, "calories": { "title": "Calories", "type": "number" }, "description": { "title": "Description", "type": "string" }, "device_name": { "title": "Device Name", "type": "string" }, "embed_token": { "title": "Embed Token", "type": "string" }, "gear": { "$ref": "#/definitions/SummaryGear" }, "laps": { "title": "Laps", "type": "array", "items": { "$ref": "#/definitions/Lap" } }, "photos": { "$ref": "#/definitions/PhotosSummary" }, "segment_efforts": { "title": "Segment Efforts", "type": "array", "items": { "$ref": "#/definitions/DetailedSegmentEffort" } }, "splits_metric": { "title": "Splits Metric", "type": "array", "items": { "$ref": "#/definitions/Split" } }, "splits_standard": { "title": "Splits Standard", "type": "array", "items": { "$ref": "#/definitions/Split" } } }, "definitions": { "MetaAthlete": { "title": "MetaAthlete", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }, "LatLng": { "title": "LatLng", "description": "A pair of latitude/longitude coordinates, represented as an array of 2 floating point numbers.", "minItems": 2, "maxItems": 2, "type": "array", "items": { "type": "number" } }, "PolylineMap": { "title": "PolylineMap", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "polyline": { "title": "Polyline", "type": "string" }, "summary_polyline": { "title": "Summary Polyline", "type": "string" } } }, "SportType": { "title": "SportType", "enum": [ "AlpineSki", "BackcountrySki", "Badminton", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "EMountainBikeRide", "Golf", "GravelRide", "Handcycle", "HighIntensityIntervalTraining", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "MountainBikeRide", "NordicSki", "Pickleball", "Pilates", "Racquetball", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "Squash", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "TableTennis", "Tennis", "TrailRun", "Velomobile", "VirtualRide", "VirtualRow", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }, "ActivityType": { "title": "ActivityType", "enum": [ "AlpineSki", "BackcountrySki", "Canoeing", "Crossfit", "EBikeRide", "Elliptical", "Golf", "Handcycle", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "NordicSki", "Ride", "RockClimbing", "RollerSki", "Rowing", "Run", "Sail", "Skateboard", "Snowboard", "Snowshoe", "Soccer", "StairStepper", "StandUpPaddling", "Surfing", "Swim", "Velomobile", "VirtualRide", "VirtualRun", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga" ], "type": "string" }, "MetaActivity": { "title": "MetaActivity", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" } } }, "SummaryPRSegmentEffort": { "title": "SummaryPRSegmentEffort", "type": "object", "properties": { "effort_count": { "title": "Effort Count", "type": "integer" }, "pr_activity_id": { "title": "Pr Activity Id", "type": "integer" }, "pr_date": { "title": "Pr Date", "type": "string", "format": "date-time" }, "pr_elapsed_time": { "title": "Pr Elapsed Time", "type": "integer" } } }, "SummarySegmentEffort": { "title": "SummarySegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" } } }, "SummarySegment": { "title": "SummarySegment", "type": "object", "properties": { "activity_type": { "title": "Activity Type", "enum": [ "Ride", "Run" ], "type": "string" }, "athlete_pr_effort": { "$ref": "#/definitions/SummaryPRSegmentEffort" }, "athlete_segment_stats": { "$ref": "#/definitions/SummarySegmentEffort" }, "average_grade": { "title": "Average Grade", "type": "number" }, "city": { "title": "City", "type": "string" }, "climb_category": { "title": "Climb Category", "type": "integer" }, "country": { "title": "Country", "type": "string" }, "distance": { "title": "Distance", "type": "number" }, "elevation_high": { "title": "Elevation High", "type": "number" }, "elevation_low": { "title": "Elevation Low", "type": "number" }, "end_latlng": { "$ref": "#/definitions/LatLng" }, "id": { "title": "Id", "type": "integer" }, "maximum_grade": { "title": "Maximum Grade", "type": "number" }, "name": { "title": "Name", "type": "string" }, "private": { "title": "Private", "type": "boolean" }, "start_latlng": { "$ref": "#/definitions/LatLng" }, "state": { "title": "State", "type": "string" } } }, "DetailedSegmentEffort": { "title": "DetailedSegmentEffort", "type": "object", "properties": { "activity_id": { "title": "Activity Id", "type": "integer" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "is_kom": { "title": "Is Kom", "type": "boolean" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" }, "activity": { "$ref": "#/definitions/MetaActivity" }, "athlete": { "$ref": "#/definitions/MetaAthlete" }, "average_cadence": { "title": "Average Cadence", "type": "number" }, "average_heartrate": { "title": "Average Heartrate", "type": "number" }, "average_watts": { "title": "Average Watts", "type": "number" }, "device_watts": { "title": "Device Watts", "type": "boolean" }, "end_index": { "title": "End Index", "type": "integer" }, "hidden": { "title": "Hidden", "type": "boolean" }, "kom_rank": { "title": "Kom Rank", "minimum": 1, "maximum": 10, "type": "integer" }, "max_heartrate": { "title": "Max Heartrate", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "pr_rank": { "title": "Pr Rank", "minimum": 1, "maximum": 3, "type": "integer" }, "segment": { "$ref": "#/definitions/SummarySegment" }, "start_index": { "title": "Start Index", "type": "integer" } } }, "SummaryGear": { "title": "SummaryGear", "type": "object", "properties": { "distance": { "title": "Distance", "type": "number" }, "id": { "title": "Id", "type": "string" }, "name": { "title": "Name", "type": "string" }, "primary": { "title": "Primary", "type": "boolean" }, "resource_state": { "title": "Resource State", "type": "integer" } } }, "Lap": { "title": "Lap", "type": "object", "properties": { "activity": { "$ref": "#/definitions/MetaActivity" }, "athlete": { "$ref": "#/definitions/MetaAthlete" }, "average_cadence": { "title": "Average Cadence", "type": "number" }, "average_speed": { "title": "Average Speed", "type": "number" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "end_index": { "title": "End Index", "type": "integer" }, "id": { "title": "Id", "type": "integer" }, "lap_index": { "title": "Lap Index", "type": "integer" }, "max_speed": { "title": "Max Speed", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "pace_zone": { "title": "Pace Zone", "type": "integer" }, "split": { "title": "Split", "type": "integer" }, "start_date": { "title": "Start Date", "type": "string", "format": "date-time" }, "start_date_local": { "title": "Start Date Local", "type": "string", "format": "date-time" }, "start_index": { "title": "Start Index", "type": "integer" }, "total_elevation_gain": { "title": "Total Elevation Gain", "type": "number" } } }, "Primary": { "title": "Primary", "type": "object", "properties": { "id": { "title": "Id", "type": "integer" }, "source": { "title": "Source", "type": "integer" }, "unique_id": { "title": "Unique Id", "type": "string" }, "urls": { "title": "Urls", "type": "object", "additionalProperties": { "type": "string" } } } }, "PhotosSummary": { "title": "PhotosSummary", "type": "object", "properties": { "count": { "title": "Count", "type": "integer" }, "primary": { "$ref": "#/definitions/Primary" } } }, "Split": { "title": "Split", "type": "object", "properties": { "average_speed": { "title": "Average Speed", "type": "number" }, "distance": { "title": "Distance", "type": "number" }, "elapsed_time": { "title": "Elapsed Time", "type": "integer" }, "elevation_difference": { "title": "Elevation Difference", "type": "number" }, "moving_time": { "title": "Moving Time", "type": "integer" }, "pace_zone": { "title": "Pace Zone", "type": "integer" }, "split": { "title": "Split", "type": "integer" } } } } }
- Fields:
- field best_efforts: list[DetailedSegmentEffort] | None = None#
- field calories: float | None = None#
The number of kilocalories consumed during this activity
- field description: str | None = None#
The description of the activity
- field device_name: str | None = None#
The name of the device used to record the activity
- field embed_token: str | None = None#
The token used to embed a Strava activity
- field gear: SummaryGear | None = None#
- field photos: PhotosSummary | None = None#
- field segment_efforts: list[DetailedSegmentEffort] | None = None#