-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathwahoo-webhooks-asyncapi.yml
More file actions
66 lines (66 loc) · 2.19 KB
/
Copy pathwahoo-webhooks-asyncapi.yml
File metadata and controls
66 lines (66 loc) · 2.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
asyncapi: 2.6.0
info:
title: Wahoo Cloud Webhooks
version: v1
description: >-
Wahoo Cloud delivers `workout_summary` webhook events to a callback URL
registered against a developer application. Webhooks require the
`offline_data` OAuth scope. Failed deliveries (non-200) are retried at
30 minutes, 4 hours, 24 hours, and 72 hours before being dropped.
contact:
name: Wahoo Developer Support
email: wahooapi@wahoofitness.com
url: https://developers.wahooligan.com
externalDocs:
description: Wahoo Cloud API Reference — Webhooks
url: https://cloud-api.wahooligan.com/#webhooks
defaultContentType: application/json
channels:
workout_summary:
description: >-
Delivered when a workout summary is created or updated for a user that
authorized the registered application with the `offline_data` scope.
subscribe:
operationId: receiveWorkoutSummary
summary: Receive Workout Summary Webhook
message:
$ref: '#/components/messages/WorkoutSummaryEvent'
components:
messages:
WorkoutSummaryEvent:
name: WorkoutSummaryEvent
title: Workout Summary Event
contentType: application/json
payload:
type: object
properties:
event:
type: string
enum: [workout_summary]
user:
type: object
properties:
id: { type: integer, format: int64 }
webhook_token: { type: string }
workout_summary:
$ref: '#/components/schemas/WorkoutSummary'
schemas:
WorkoutSummary:
type: object
properties:
id: { type: integer, format: int64 }
workout_id: { type: integer, format: int64 }
ascent_accum: { type: string }
calories_accum: { type: string }
distance_accum: { type: string }
duration_active_accum: { type: string }
duration_total_accum: { type: string }
cadence_avg: { type: string }
heart_rate_avg: { type: string }
power_bike_avg: { type: string }
speed_avg: { type: string }
work_accum: { type: string }
file:
type: object
properties:
url: { type: string, format: uri }