Update Activity

strava.update_activity
ActionBusiness appsconnection required

Calls the Strava API with the connection's credentials.

Change the title, description, sport, gear or flags of an activity.

Connection

Required
Yes — the node will not save without one
Auth type
OAuth 2.0
Providers
Strava
Secret shape
{"client_id": "…", "client_secret": "…", "refresh_token": "…"}
Resolved by
config.connection_id, else node.connection_id

Configuration

8 fields, 1 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
activity_id
Numeric id of the activity, as returned in the 'id' of a strava.list_activities row.
stringYes——12345678987654321
name
New title for the activity. Left blank, the title is unchanged.
stringNo——Evening Ride
description
New description for the activity. Left blank, it is unchanged.
stringNo———
sport_type
Reclassify the activity as another of Strava's sports.
stringNo—one of "AlpineSki", "BackcountrySki", "Badminton", "Basketball", "Canoeing", "Cricket", "Crossfit", "Dance", "EBikeRide", "Elliptical", "EMountainBikeRide", "Golf", "GravelRide", "Handcycle", "HighIntensityIntervalTraining", "Hike", "IceSkate", "InlineSkate", "Kayaking", "Kitesurf", "MountainBikeRide", "NordicSki", "Padel", "PhysicalTherapy", "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", "Volleyball", "Walk", "WeightTraining", "Wheelchair", "Windsurf", "Workout", "Yoga"—
gear_id
Id of the bike or pair of shoes to attach. The literal 'none' clears whatever gear is attached.
stringNo——b1234567
commute
Whether the activity is a commute.
booleanNo———
trainer
Whether the activity was recorded on a training machine.
booleanNo———
hide_from_home
Whether the activity is muted, meaning it stays off followers' feeds.
booleanNo———
  • At least one of name, description, sport_type, gear_id, commute, trainer, hide_from_home must be set.

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "activity_id": "12345678987654321",
  "gear_id": "b1234567",
  "name": "Evening Ride"
}

Output

One shape.

result

FieldTypeExample
id
The activity's Strava id.
number—
name
The activity's title.
string—
sport_type
The sport Strava recorded it under, such as 'Run'.
string—
distance
Distance covered, in metres.
number—
moving_time
Time spent moving, in seconds.
number—
elapsed_time
Wall-clock duration, in seconds.
number—
total_elevation_gain
Elevation gained, in metres.
number—
start_date
When the activity started, in UTC ISO 8601.
string—
start_date_local
The same instant in the athlete's local time.
string—
average_speed
Average speed, in metres per second.
number—
kudos_count
How many kudos the activity has.
number—
athlete.id
Strava id of the athlete the activity belongs to.
number—
{
  "athlete": {
    "id": 0
  },
  "average_speed": 0,
  "distance": 0,
  "elapsed_time": 0,
  "id": 0,
  "kudos_count": 0,
  "moving_time": 0,
  "name": "",
  "sport_type": "",
  "start_date": "",
  "start_date_local": "",
  "total_elevation_gain": 0
}

See Update Activity run in a workflow.

In a technical demo we add the Strava connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.