API reference
Workouts
{ "name" "get user workout records", "method" "get", "url" "https //app api spikeapi com/v3/queries/workouts", "description" "retrieve user workouts", "tab" "examples", "examples" { "languages" \[ { "id" "co nququth xyjnpwxess", "language" "curl", "code" "curl request get \\\\\n url https //app api spikeapi com/v3/queries/workouts \\\\\n header 'accept application/json, application/problem+json' \\\\\n header 'authorization bearer eyjhbgcioijiuzi1niisinr5cci6ikpxvcj9 eyjpc3mioii5otk5osisinn1yii6ime5zju3odazmgixythkywuifq djhtpuc7gakk03rtfqxufjzrbnpfwjgvjnfu7yuy4a4'", "customlabel" "" } ], "selectedlanguageid" "co nququth xyjnpwxess" }, "results" { "languages" \[ { "id" "qfu6epz 8pp15gg8ebsdx", "language" "200", "code" "{\n \\"record id\\" \\"0134fece 6679 83a0 bf53 b509a3a93a70\\",\n \\"modified at\\" \\"2025 03 18t06 03 38z\\",\n \\"start at timestamp\\" \\"2025 03 18t05 27 46z\\",\n \\"end at timestamp\\" \\"2025 03 18t06 03 38z\\",\n \\"duration\\" 2152000,\n \\"user time offset minutes\\" 120,\n \\"input method\\" \\"device\\",\n \\"metrics\\" {\n \\"heartrate max\\" 170,\n \\"heartrate avg\\" 139,\n \\"heartrate min\\" 83,\n \\"calories burned active\\" 357 0000,\n \\"distance\\" 1625 0000,\n \\"speed max\\" 1 4080,\n \\"speed avg\\" 0 7550,\n \\"duration active\\" 2152,\n \\"cadence avg\\" 24 0000,\n \\"pace avg\\" 22 08\n },\n \\"provider source\\" \\"garmin wellness activity details\\",\n \\"provider source type\\" \\"activity\\",\n \\"provider slug\\" \\"garmin\\",\n \\"source\\" {\n \\"device manufacturer\\" \\"garmin\\",\n \\"device product\\" \\"venu sq\\"\n },\n \\"workout id\\" \\"49ba509e 2bef 55e1 9323 64835b6fd538\\",\n \\"workout type\\" \\"swimming\\",\n \\"workout tags\\" \[\n \\"swimming\\",\n \\"workout\\"\n ],\n \\"laps\\" \[\n {\n \\"start at\\" \\"2025 03 18t05 27 46z\\",\n \\"end at\\" \\"2025 03 18t05 38 09z\\",\n \\"duration\\" 623000,\n \\"lap\\" 1,\n \\"samples\\" {}\n },\n {\n \\"start at\\" \\"2025 03 18t05 38 09z\\",\n \\"end at\\" \\"2025 03 18t05 45 53z\\",\n \\"duration\\" 464000,\n \\"lap\\" 2,\n \\"samples\\" {}\n },\n {\n \\"start at\\" \\"2025 03 18t05 45 53z\\",\n \\"end at\\" \\"2025 03 18t05 53 34z\\",\n \\"duration\\" 461000,\n \\"lap\\" 3,\n \\"samples\\" {}\n },\n {\n \\"start at\\" \\"2025 03 18t05 53 34z\\",\n \\"end at\\" \\"2025 03 18t06 01 11z\\",\n \\"duration\\" 457000,\n \\"lap\\" 4,\n \\"samples\\" {}\n },\n {\n \\"start at\\" \\"2025 03 18t06 01 11z\\",\n \\"end at\\" \\"2025 03 18t06 03 38z\\",\n \\"duration\\" 147000,\n \\"lap\\" 5,\n \\"samples\\" {}\n }\n ],\n \\"samples\\" \[\n {\n \\"start at\\" \\"2025 03 18t05 27 46z\\",\n \\"end at\\" \\"2025 03 18t05 27 46z\\",\n \\"metrics\\" {\n \\"heartrate max\\" 170,\n \\"heartrate avg\\" 139,\n \\"heartrate min\\" 83\n }\n }\n ]\n },", "customlabel" "" } ], "selectedlanguageid" "qfu6epz 8pp15gg8ebsdx" }, "request" { "pathparameters" \[], "queryparameters" \[ { "name" "from", "kind" "required", "type" "string", "description" "the start date of the query based on the user timezone; inclusive\n", "" "required" }, { "name" "to", "kind" "required", "type" "string", "description" "the end date of the query based on the user timezone; non inclusive\n", "" "required" }, { "name" "providers", "kind" "optional", "type" "string", "description" "allowed values\ health connect; fitbit; garmin; huawei; whoop; suunto; apple; oura; polar; withings", "" "allowed values\ health connect; fitbit; garmin; huawei; whoop; suunto; apple; oura; polar; withings" }, { "name" "timezone", "kind" "optional", "type" "string", "description" "the timezone to use for responses, it would convert the internal timestamp from utc to this timezone; if you leave empty it would use the user's timezone\nexample america/new york", "" "the timezone to use for responses, it would convert the internal timestamp from utc to this timezone; if you leave empty it would use the user's timezone\nexample america/new york" }, { "name" "activity tags", "kind" "optional", "type" "array", "description" "on foot,on bicycle,running,cycling,walking,gym,swimming,winter sports,water sports,team sports,racket sports,individual sports,outdoor recreation,dancing,martial arts,wheelchair,climbing,workout,sleep", "" "on foot,on bicycle,running,cycling,walking,gym,swimming,winter sports,water sports,team sports,racket sports,individual sports,outdoor recreation,dancing,martial arts,wheelchair,climbing,workout,sleep" }, { "name" "activity type", "kind" "optional", "type" "array", "description" "aerobics, play, house work, gardening, workout, running, indoor running, obstacle run, street running, track running, trail running, treadmill running, ultra running, virtual running, triathlon, biathlon, duathlon, cycling, bmx cycling, cyclocross cycling, downhill biking, e bike fitness, e bike mountain, gravel cycling, indoor cycling, mountain biking, recumbent cycling, road biking, track cycling, virtual ride, hand cycling, indoor hand cycling, rollerblading, skateboarding, skating, gym, bouldering, elliptical, indoor cardio, hiit, indoor climbing, indoor rowing, pilates, stair climbing, strength training, yoga, meditation, rope skipping, gymnastics, core training, mixed training, crossfit, calisthenics, warm up, cool down, flexibility training, weight lifting, swimming, open water swimming, walking, casual walking, speed walking, hiking, winter sports, backcountry snowboarding, backcountry skiing, cross country classic skiing, skiing, snowboarding, skiing snowboarding, cross country skate skiing, skating skiing, snow shoeing, snowmobiling, curling, water sports, boating, kayaking, kiteboarding, offshore grinding, onshore grinding, paddling, rowing, sailing, snorkeling, stand up paddleboarding, surfing, wakeboarding, waterskiing, whitewater rafting, windsurfing, canoeeing, team sports, american football, baseball, basketball, cricket, field hockey, ice hockey, lacrosse, rugby, soccer, softball, disc, volleyball, australian football, handball, water polo, floorball, racket sports, badminton, padel, pickleball, platform tennis, racquetball, squash, table tennis, tennis, paddle ball, martial arts, boxing, mixed martial arts, kickboxing, muay thai, wrestling, judo, karate, taekwondo, aikido, capoeira, kung fu, tai chi, jiu jitsu, dancing, barre, climbing, wheelchair push run, wheelchair push walk, archery, bowling, fencing, golf, equestrian, hunting, fishing, diving, outdoor recreation, geocaching, orienteering, bootcamp, motorsports, horseriding, paragliading, multisport", "" "aerobics, play, house work, gardening, workout, running, indoor running, obstacle run, street running, track running, trail running, treadmill running, ultra running, virtual running, triathlon, biathlon, duathlon, cycling, bmx cycling, cyclocross cycling, downhill biking, e bike fitness, e bike mountain, gravel cycling, indoor cycling, mountain biking, recumbent cycling, road biking, track cycling, virtual ride, hand cycling, indoor hand cycling, rollerblading, skateboarding, skating, gym, bouldering, elliptical, indoor cardio, hiit, indoor climbing, indoor rowing, pilates, stair climbing, strength training, yoga, meditation, rope skipping, gymnastics, core training, mixed training, crossfit, calisthenics, warm up, cool down, flexibility training, weight lifting, swimming, open water swimming, walking, casual walking, speed walking, hiking, winter sports, backcountry snowboarding, backcountry skiing, cross country classic skiing, skiing, snowboarding, skiing snowboarding, cross country skate skiing, skating skiing, snow shoeing, snowmobiling, curling, water sports, boating, kayaking, kiteboarding, offshore grinding, onshore grinding, paddling, rowing, sailing, snorkeling, stand up paddleboarding, surfing, wakeboarding, waterskiing, whitewater rafting, windsurfing, canoeeing, team sports, american football, baseball, basketball, cricket, field hockey, ice hockey, lacrosse, rugby, soccer, softball, disc, volleyball, australian football, handball, water polo, floorball, racket sports, badminton, padel, pickleball, platform tennis, racquetball, squash, table tennis, tennis, paddle ball, martial arts, boxing, mixed martial arts, kickboxing, muay thai, wrestling, judo, karate, taekwondo, aikido, capoeira, kung fu, tai chi, jiu jitsu, dancing, barre, climbing, wheelchair push run, wheelchair push walk, archery, bowling, fencing, golf, equestrian, hunting, fishing, diving, outdoor recreation, geocaching, orienteering, bootcamp, motorsports, horseriding, paragliading, multisport" } ], "headerparameters" \[ { "name" "authorization", "kind" "required", "type" "string", "description" "provide your bearer token in the authorization header when making requests to protected resources ", "" "authorization" } ], "bodydataparameters" \[], "formdataparameters" \[] }, "currentnewparameter" { "label" "query parameter", "value" "queryparameters" }, "hastryitout" false, "response" \[ { "name" "from", "kind" "optional", "type" "string", "description" "", "children" \[] }, { "name" "timezone", "kind" "optional", "type" "string", "description" "", "children" \[] }, { "name" "to", "kind" "optional", "type" "string", "description" "", "children" \[] }, { "name" "workouts", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "duration", "kind" "optional", "type" "integer", "description" "" }, { "name" "end at timestamp", "kind" "optional", "type" "string", "description" "" }, { "name" "input method", "kind" "optional", "type" "string", "description" "" }, { "name" "is source aggregated", "kind" "optional", "type" "boolean", "description" "" }, { "name" "laps", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "duration", "kind" "optional", "type" "integer", "description" "" }, { "name" "end at", "kind" "optional", "type" "string", "description" "" }, { "name" "lap", "kind" "optional", "type" "integer", "description" "" }, { "name" "start at", "kind" "optional", "type" "string", "description" "" }, { "name" "metrics", "kind" "optional", "type" "object", "description" "" } ] }, { "name" "metrics", "kind" "optional", "type" "object", "description" "" }, { "name" "modified at", "kind" "optional", "type" "string", "description" "" }, { "name" "provider slug", "kind" "optional", "type" "string", "description" "" }, { "name" "provider source", "kind" "optional", "type" "string", "description" "" }, { "name" "provider source type", "kind" "optional", "type" "string", "description" "" }, { "name" "record id", "kind" "optional", "type" "string", "description" "" }, { "name" "route points", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "duration", "kind" "optional", "type" "integer", "description" "" }, { "name" "elevation", "kind" "optional", "type" "number", "description" "" }, { "name" "end at", "kind" "optional", "type" "string", "description" "" }, { "name" "latitude", "kind" "optional", "type" "number", "description" "" }, { "name" "longitude", "kind" "optional", "type" "number", "description" "" }, { "name" "metrics", "kind" "optional", "type" "object", "description" "" }, { "name" "speed", "kind" "optional", "type" "number", "description" "" }, { "name" "start at", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "samples", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "divisionref", "kind" "optional", "type" "array", "description" "" }, { "name" "divisiontype", "kind" "optional", "type" "array", "description" "" }, { "name" "durations", "kind" "optional", "type" "array", "description" "" }, { "name" "offsets", "kind" "optional", "type" "array", "description" "" }, { "name" "values", "kind" "optional", "type" "object", "description" "" } ] }, { "name" "segments", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "duration", "kind" "optional", "type" "integer", "description" "" }, { "name" "end at", "kind" "optional", "type" "string", "description" "" }, { "name" "metrics", "kind" "optional", "type" "object", "description" "" }, { "name" "start at", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "sessions", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "duration", "kind" "optional", "type" "integer", "description" "" }, { "name" "end at", "kind" "optional", "type" "string", "description" "" }, { "name" "metrics", "kind" "optional", "type" "object", "description" "" }, { "name" "start at", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "source", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "device manufacturer", "kind" "optional", "type" "string", "description" "" }, { "name" "device model", "kind" "optional", "type" "string", "description" "" }, { "name" "device product", "kind" "optional", "type" "string", "description" "" }, { "name" "device version", "kind" "optional", "type" "string", "description" "" }, { "name" "source bundle identifier", "kind" "optional", "type" "string", "description" "" }, { "name" "source os version", "kind" "optional", "type" "string", "description" "" }, { "name" "source product", "kind" "optional", "type" "string", "description" "" }, { "name" "source version", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "splits", "kind" "optional", "type" "object", "description" "", "children" \[ { "name" "duration", "kind" "optional", "type" "integer", "description" "" }, { "name" "end at", "kind" "optional", "type" "string", "description" "" }, { "name" "metrics", "kind" "optional", "type" "object", "description" "" }, { "name" "start at", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "start at timestamp", "kind" "optional", "type" "string", "description" "" }, { "name" "user time offset minutes", "kind" "optional", "type" "integer", "description" "" }, { "name" "workout id", "kind" "optional", "type" "string", "description" "" } ] } ] }