@globalscoutme/api-client 1.1.12 → 1.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +297 -297
- package/dist/index.d.ts +1 -1
- package/dist/types.gen.d.ts +155 -9
- package/index.ts +11 -0
- package/package.json +1 -1
- package/types.gen.ts +166 -9
package/README.md
CHANGED
|
@@ -1,297 +1,297 @@
|
|
|
1
|
-
# @globalscoutme/api-client
|
|
2
|
-
|
|
3
|
-
Auto-generated TypeScript HTTP client for the GlobalScoutMe API, built with [`@hey-api/openapi-ts`](https://heyapi.dev/) and axios.
|
|
4
|
-
|
|
5
|
-
## Install
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install @globalscoutme/api-client
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Setup
|
|
12
|
-
|
|
13
|
-
Configure the client once at app startup with your API base URL and auth token:
|
|
14
|
-
|
|
15
|
-
```ts
|
|
16
|
-
import { client } from '@globalscoutme/api-client';
|
|
17
|
-
|
|
18
|
-
client.setConfig({
|
|
19
|
-
baseURL: 'https://your-api-url.com',
|
|
20
|
-
headers: {
|
|
21
|
-
Authorization: `Bearer ${yourSupabaseAccessToken}`,
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## Usage
|
|
27
|
-
|
|
28
|
-
All endpoints are grouped by controller and fully typed:
|
|
29
|
-
|
|
30
|
-
```ts
|
|
31
|
-
import {
|
|
32
|
-
Auth,
|
|
33
|
-
Dashboard,
|
|
34
|
-
Players,
|
|
35
|
-
Profile,
|
|
36
|
-
Documents,
|
|
37
|
-
Videos,
|
|
38
|
-
Achievements,
|
|
39
|
-
Body,
|
|
40
|
-
Index,
|
|
41
|
-
Kyc,
|
|
42
|
-
Offers,
|
|
43
|
-
Organizations,
|
|
44
|
-
Clubs,
|
|
45
|
-
Challenges,
|
|
46
|
-
Training,
|
|
47
|
-
Invitations,
|
|
48
|
-
Storage,
|
|
49
|
-
Subscriptions,
|
|
50
|
-
} from '@globalscoutme/api-client';
|
|
51
|
-
|
|
52
|
-
// Auth
|
|
53
|
-
const authMe = await Auth.getAuthMe();
|
|
54
|
-
// Returns { id: string, userType: string | null }
|
|
55
|
-
|
|
56
|
-
// Players
|
|
57
|
-
const player = await Players.getMe();
|
|
58
|
-
await Players.patchMe({ body: { fullName: 'John Doe' } });
|
|
59
|
-
await Players.deleteMe();
|
|
60
|
-
const dashboard = await Players.getMyDashboard();
|
|
61
|
-
await Players.heartbeat({ body: { timezone: 'Europe/Bucharest' } });
|
|
62
|
-
const results = await Players.searchPlayers({
|
|
63
|
-
body: {
|
|
64
|
-
search: 'John',
|
|
65
|
-
page: 1,
|
|
66
|
-
pageSize: 20,
|
|
67
|
-
sortBy: 'age_asc',
|
|
68
|
-
nationalities: ['EG', 'MA'],
|
|
69
|
-
positions: ['CM', 'CB'],
|
|
70
|
-
baseFoot: 'right',
|
|
71
|
-
isFreeAgent: true,
|
|
72
|
-
hasVideo: true,
|
|
73
|
-
heightOperator: 'gte',
|
|
74
|
-
heightCm: 180,
|
|
75
|
-
},
|
|
76
|
-
});
|
|
77
|
-
const playerProfile = await Players.getPlayerById({
|
|
78
|
-
path: { id: 'player-uuid' },
|
|
79
|
-
});
|
|
80
|
-
const playerMeasurements = await Players.getPlayerMeasurementProfile({
|
|
81
|
-
path: { id: 'player-uuid' },
|
|
82
|
-
});
|
|
83
|
-
// Returns { status, body, cmj, session, updatedAt } — accessible to all roles (no player-only restriction)
|
|
84
|
-
// status: 'missing' | 'partial' | 'ready' | 'needs_update'
|
|
85
|
-
const playerVideoMetrics = await Players.getPlayerVideoMetrics({
|
|
86
|
-
path: { id: 'player-uuid' },
|
|
87
|
-
});
|
|
88
|
-
// Returns { id, createdAt, videoDurationS, physicalMetrics, trackingQuality, trackedFrames, totalFrames }
|
|
89
|
-
// physicalMetrics: { totalDistance, sprintDistance, maxSpeed, averageSpeed, highIntensityRuns, sprints }
|
|
90
|
-
// Speed/distance values are strings with units already included (e.g. "31.0 km/h", "21.4 m")
|
|
91
|
-
// trackingQuality: confidence label from the analysis service (e.g. "High Confidence") — null if unavailable
|
|
92
|
-
// Returns 404 if the player has no completed video analysis yet
|
|
93
|
-
const playerReport = await Players.getPlayerReport({
|
|
94
|
-
path: { id: 'player-uuid' },
|
|
95
|
-
});
|
|
96
|
-
// Returns { reportReferenceId, generatedAt, scouterView: { technicalPillar, physicalPillar, tacticalPillar, mentalPillar } }
|
|
97
|
-
// Returns 404 if the player has no completed AI report yet
|
|
98
|
-
|
|
99
|
-
// Profile
|
|
100
|
-
const profile = await Profile.getProfileMe();
|
|
101
|
-
await Profile.updateProfileMe({ body: { dominantFoot: 'Right' } });
|
|
102
|
-
|
|
103
|
-
// Documents
|
|
104
|
-
const docs = await Documents.getMyDocuments();
|
|
105
|
-
await Documents.createDocument({ body: { type: 'license' } });
|
|
106
|
-
|
|
107
|
-
// Videos
|
|
108
|
-
const videos = await Videos.getMyVideos();
|
|
109
|
-
await Videos.createVideo({
|
|
110
|
-
body: { type: 'cmj', storagePath: 'path/to/video' },
|
|
111
|
-
});
|
|
112
|
-
const playUrl = await Videos.getVideoPlayUrl({ path: { id: 'video-uuid' } });
|
|
113
|
-
await Videos.deleteVideo({ path: { id: 'video-uuid' } });
|
|
114
|
-
|
|
115
|
-
// Achievements
|
|
116
|
-
const catalog = await Achievements.getAchievementsCatalog();
|
|
117
|
-
const myAchievements = await Achievements.getMyAchievements();
|
|
118
|
-
|
|
119
|
-
// Body measurements
|
|
120
|
-
const measurement = await Body.getMyMeasurements();
|
|
121
|
-
await Body.createMeasurement({ body: { heightCm: 180 } });
|
|
122
|
-
|
|
123
|
-
// Index (lookup tables)
|
|
124
|
-
const positions = await Index.getIndexItems({
|
|
125
|
-
path: { tableName: 'positions' },
|
|
126
|
-
});
|
|
127
|
-
const countries = await Index.getCountries();
|
|
128
|
-
// Returns [{ code: 'BR', name: 'Brazil', nationalityName: 'Brazilian', flagEmoji: '🇧🇷' }, ...]
|
|
129
|
-
|
|
130
|
-
// Dashboard (scout/club portal — single aggregated call)
|
|
131
|
-
const dashboard = await Dashboard.getScoutDashboard();
|
|
132
|
-
// Returns: stats (watchlisted, offersSent, playersViewed, videosWatched),
|
|
133
|
-
// lastPlayersViewed (last 6 distinct players),
|
|
134
|
-
// lastVideosWatched (last 6 distinct videos with player info)
|
|
135
|
-
|
|
136
|
-
const videoUrl = await Dashboard.getScoutVideoPlayUrl({
|
|
137
|
-
path: { id: 'video-uuid' },
|
|
138
|
-
});
|
|
139
|
-
// Returns signed play URL + records the view in video_views
|
|
140
|
-
|
|
141
|
-
// Offers (conversations between scouts and players)
|
|
142
|
-
const conversations = await Offers.listConversations({
|
|
143
|
-
query: { filter: 'all', page: 1, pageSize: 20 },
|
|
144
|
-
});
|
|
145
|
-
const conversation = await Offers.createConversation({
|
|
146
|
-
body: { playerId: 'player-uuid', initialMessage: 'Hi!' },
|
|
147
|
-
});
|
|
148
|
-
const messages = await Offers.listMessages({
|
|
149
|
-
path: { id: 'conversation-uuid' },
|
|
150
|
-
query: { page: 1, pageSize: 20 },
|
|
151
|
-
});
|
|
152
|
-
await Offers.sendMessage({
|
|
153
|
-
path: { id: 'conversation-uuid' },
|
|
154
|
-
body: { body: 'Looking forward to it!' },
|
|
155
|
-
});
|
|
156
|
-
await Offers.markConversationRead({ path: { id: 'conversation-uuid' } });
|
|
157
|
-
|
|
158
|
-
// Organizations
|
|
159
|
-
const org = await Organizations.getMyOrganization();
|
|
160
|
-
await Organizations.updateMyOrganization({ body: { name: 'FC Example' } });
|
|
161
|
-
await Organizations.registerClub({
|
|
162
|
-
body: { name: 'FC Example', email: 'admin@example.com' },
|
|
163
|
-
});
|
|
164
|
-
|
|
165
|
-
// Clubs (coach/admin club entries within an organization)
|
|
166
|
-
const clubs = await Clubs.getMyClubs();
|
|
167
|
-
const club = await Clubs.createMyClub({ body: { name: 'U19 Team' } });
|
|
168
|
-
await Clubs.updateMyClub({
|
|
169
|
-
path: { id: 'club-uuid' },
|
|
170
|
-
body: { name: 'U21 Team' },
|
|
171
|
-
});
|
|
172
|
-
await Clubs.deleteMyClub({ path: { id: 'club-uuid' } });
|
|
173
|
-
|
|
174
|
-
// Challenges
|
|
175
|
-
const challengeCatalog = await Challenges.getChallengesCatalog();
|
|
176
|
-
const myChallenges = await Challenges.getMyChallenges();
|
|
177
|
-
|
|
178
|
-
// Training
|
|
179
|
-
const grouped = await Training.getTrainingGrouped();
|
|
180
|
-
const trainingList = await Training.getTrainingList({
|
|
181
|
-
query: { categoryCode: 'fitness', page: 1, pageSize: 20 },
|
|
182
|
-
});
|
|
183
|
-
const trainingItem = await Training.getTrainingById({
|
|
184
|
-
path: { id: 'training-uuid' },
|
|
185
|
-
});
|
|
186
|
-
|
|
187
|
-
// Invitations (org admin invites members)
|
|
188
|
-
await Invitations.sendInvitation({
|
|
189
|
-
body: { email: 'coach@example.com', role: 'coach' },
|
|
190
|
-
});
|
|
191
|
-
const invitations = await Invitations.listInvitations();
|
|
192
|
-
await Invitations.resendInvitation({ path: { id: 'invitation-uuid' } });
|
|
193
|
-
await Invitations.deleteInvitation({ path: { id: 'invitation-uuid' } });
|
|
194
|
-
await Invitations.acceptInvitation(); // called after Supabase auth callback
|
|
195
|
-
|
|
196
|
-
// KYC — SmileID Enhanced Document Verification
|
|
197
|
-
//
|
|
198
|
-
// Two integration options:
|
|
199
|
-
|
|
200
|
-
// Option A — Smile Links (recommended for web)
|
|
201
|
-
// Backend returns a hosted SmileID URL; redirect the user to it.
|
|
202
|
-
// SmileID handles the full capture UI and fires the webhook when done.
|
|
203
|
-
const linkResult = await Kyc.startSmileLink({
|
|
204
|
-
body: {
|
|
205
|
-
country: 'gh', // stored on the verification record; does NOT filter the SmileID dropdown
|
|
206
|
-
channel: 'web',
|
|
207
|
-
returnUrl: 'https://yourapp.com/onboarding/kyc/callback',
|
|
208
|
-
},
|
|
209
|
-
});
|
|
210
|
-
// linkResult: { url, jobId, status, retriesRemaining }
|
|
211
|
-
// url is null when no redirect is needed (approved / blocked / processing).
|
|
212
|
-
if (linkResult.data.url) {
|
|
213
|
-
window.location.href = linkResult.data.url; // redirect user to SmileID
|
|
214
|
-
}
|
|
215
|
-
// The SmileID hosted page shows all countries configured in index.kyc_supported_id_types.
|
|
216
|
-
// The user selects their country and document type on that page.
|
|
217
|
-
// After the user returns to returnUrl, poll getKycStatus to confirm the result.
|
|
218
|
-
// markSubmittedKyc is NOT needed for Smile Links — SmileID fires the webhook directly.
|
|
219
|
-
|
|
220
|
-
// Option B — SDK widget (embedded, for mobile / advanced web)
|
|
221
|
-
const kycResult = await Kyc.startKyc({
|
|
222
|
-
body: { country: 'gh', channel: 'web' },
|
|
223
|
-
});
|
|
224
|
-
// kycResult: { token, partnerId, jobId, status, retriesRemaining }
|
|
225
|
-
// Pass token + partnerId to the SmileID web SDK widget to start document capture.
|
|
226
|
-
// After the SDK reports successful submission, call markSubmittedKyc with jobId.
|
|
227
|
-
await Kyc.markSubmittedKyc({ body: { jobId: kycResult.data.jobId! } });
|
|
228
|
-
// SmileID also calls POST /kyc/webhook under the configured API base/prefix
|
|
229
|
-
// (for staging: https://staging.globalscoutme.com/api/kyc/webhook).
|
|
230
|
-
|
|
231
|
-
const kycStatus = await Kyc.getKycStatus({
|
|
232
|
-
path: { userId: supabaseAuthUuid },
|
|
233
|
-
});
|
|
234
|
-
// kycStatus: { status, retryCount, retriesRemaining }
|
|
235
|
-
// status: 'pending' | 'capture_started' | 'processing' | 'approved' | 'rejected' | 'blocked'
|
|
236
|
-
// Older API clients may still see legacy 'in_progress', which maps to 'capture_started'.
|
|
237
|
-
|
|
238
|
-
// Subscriptions (Stripe recurring billing)
|
|
239
|
-
const plans = await Subscriptions.getSubscriptionPlans();
|
|
240
|
-
// Returns: { plans: [{ id, code, name, price, currency, billingInterval, trialDays, features, displayOrder }] }
|
|
241
|
-
|
|
242
|
-
const mySubscription = await Subscriptions.getMySubscription();
|
|
243
|
-
// Returns: { status, isActive, planId, planName, billingInterval,
|
|
244
|
-
// currentPeriodStart, currentPeriodEnd, cancelAtPeriodEnd, canceledAt, gracePeriodUntil }
|
|
245
|
-
// status: 'inactive' when the user has never subscribed
|
|
246
|
-
|
|
247
|
-
// Start a subscription — redirect the user to the returned URL
|
|
248
|
-
const checkout = await Subscriptions.createCheckout({
|
|
249
|
-
body: {
|
|
250
|
-
providerProductId: 'billing-provider-products-uuid', // pick from billing_provider_products table
|
|
251
|
-
successUrl: 'https://yourapp.com/subscription/success', // or a mobile deep-link
|
|
252
|
-
cancelUrl: 'https://yourapp.com/subscription/cancel',
|
|
253
|
-
},
|
|
254
|
-
});
|
|
255
|
-
// redirect user to checkout.url
|
|
256
|
-
|
|
257
|
-
// Open the Stripe Billing Portal (manage / cancel subscription)
|
|
258
|
-
const portal = await Subscriptions.createPortal({
|
|
259
|
-
body: { returnUrl: 'https://yourapp.com/account' },
|
|
260
|
-
});
|
|
261
|
-
// redirect user to portal.url
|
|
262
|
-
|
|
263
|
-
// Storage — get a signed upload URL, then PUT the file directly to Supabase Storage
|
|
264
|
-
const { uploadUrl, token, path, bucket, expiresIn } = await Storage.createUploadUrl({
|
|
265
|
-
body: { bucket: 'avatars', contentType: 'image/jpeg', sizeBytes: 204800 },
|
|
266
|
-
});
|
|
267
|
-
await fetch(uploadUrl, {
|
|
268
|
-
method: 'PUT',
|
|
269
|
-
body: fileBlob,
|
|
270
|
-
headers: { 'Content-Type': 'image/jpeg' },
|
|
271
|
-
});
|
|
272
|
-
// persist `path` on the player record (e.g. patchMe with avatarPath: path)
|
|
273
|
-
```
|
|
274
|
-
|
|
275
|
-
## Updating auth token
|
|
276
|
-
|
|
277
|
-
Update the Bearer token after sign-in or token refresh:
|
|
278
|
-
|
|
279
|
-
```ts
|
|
280
|
-
client.setConfig({
|
|
281
|
-
headers: {
|
|
282
|
-
Authorization: `Bearer ${newAccessToken}`,
|
|
283
|
-
},
|
|
284
|
-
});
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
## Versioning
|
|
288
|
-
|
|
289
|
-
This package is auto-generated from the backend OpenAPI spec. Version increments follow semver:
|
|
290
|
-
|
|
291
|
-
- **patch** — no API shape changes
|
|
292
|
-
- **minor** — new endpoints added
|
|
293
|
-
- **major** — breaking changes (renamed/removed endpoints or fields)
|
|
294
|
-
|
|
295
|
-
## Package format
|
|
296
|
-
|
|
297
|
-
The published package ships compiled JavaScript (`dist/`) alongside the raw TypeScript source. `main` points to `dist/index.js` so all bundlers work without extra configuration.
|
|
1
|
+
# @globalscoutme/api-client
|
|
2
|
+
|
|
3
|
+
Auto-generated TypeScript HTTP client for the GlobalScoutMe API, built with [`@hey-api/openapi-ts`](https://heyapi.dev/) and axios.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @globalscoutme/api-client
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Setup
|
|
12
|
+
|
|
13
|
+
Configure the client once at app startup with your API base URL and auth token:
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
import { client } from '@globalscoutme/api-client';
|
|
17
|
+
|
|
18
|
+
client.setConfig({
|
|
19
|
+
baseURL: 'https://your-api-url.com',
|
|
20
|
+
headers: {
|
|
21
|
+
Authorization: `Bearer ${yourSupabaseAccessToken}`,
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
All endpoints are grouped by controller and fully typed:
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
import {
|
|
32
|
+
Auth,
|
|
33
|
+
Dashboard,
|
|
34
|
+
Players,
|
|
35
|
+
Profile,
|
|
36
|
+
Documents,
|
|
37
|
+
Videos,
|
|
38
|
+
Achievements,
|
|
39
|
+
Body,
|
|
40
|
+
Index,
|
|
41
|
+
Kyc,
|
|
42
|
+
Offers,
|
|
43
|
+
Organizations,
|
|
44
|
+
Clubs,
|
|
45
|
+
Challenges,
|
|
46
|
+
Training,
|
|
47
|
+
Invitations,
|
|
48
|
+
Storage,
|
|
49
|
+
Subscriptions,
|
|
50
|
+
} from '@globalscoutme/api-client';
|
|
51
|
+
|
|
52
|
+
// Auth
|
|
53
|
+
const authMe = await Auth.getAuthMe();
|
|
54
|
+
// Returns { id: string, userType: string | null }
|
|
55
|
+
|
|
56
|
+
// Players
|
|
57
|
+
const player = await Players.getMe();
|
|
58
|
+
await Players.patchMe({ body: { fullName: 'John Doe' } });
|
|
59
|
+
await Players.deleteMe();
|
|
60
|
+
const dashboard = await Players.getMyDashboard();
|
|
61
|
+
await Players.heartbeat({ body: { timezone: 'Europe/Bucharest' } });
|
|
62
|
+
const results = await Players.searchPlayers({
|
|
63
|
+
body: {
|
|
64
|
+
search: 'John',
|
|
65
|
+
page: 1,
|
|
66
|
+
pageSize: 20,
|
|
67
|
+
sortBy: 'age_asc',
|
|
68
|
+
nationalities: ['EG', 'MA'],
|
|
69
|
+
positions: ['CM', 'CB'],
|
|
70
|
+
baseFoot: 'right',
|
|
71
|
+
isFreeAgent: true,
|
|
72
|
+
hasVideo: true,
|
|
73
|
+
heightOperator: 'gte',
|
|
74
|
+
heightCm: 180,
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
const playerProfile = await Players.getPlayerById({
|
|
78
|
+
path: { id: 'player-uuid' },
|
|
79
|
+
});
|
|
80
|
+
const playerMeasurements = await Players.getPlayerMeasurementProfile({
|
|
81
|
+
path: { id: 'player-uuid' },
|
|
82
|
+
});
|
|
83
|
+
// Returns { status, body, cmj, session, updatedAt } — accessible to all roles (no player-only restriction)
|
|
84
|
+
// status: 'missing' | 'partial' | 'ready' | 'needs_update'
|
|
85
|
+
const playerVideoMetrics = await Players.getPlayerVideoMetrics({
|
|
86
|
+
path: { id: 'player-uuid' },
|
|
87
|
+
});
|
|
88
|
+
// Returns { id, createdAt, videoDurationS, physicalMetrics, trackingQuality, trackedFrames, totalFrames }
|
|
89
|
+
// physicalMetrics: { totalDistance, sprintDistance, maxSpeed, averageSpeed, highIntensityRuns, sprints }
|
|
90
|
+
// Speed/distance values are strings with units already included (e.g. "31.0 km/h", "21.4 m")
|
|
91
|
+
// trackingQuality: confidence label from the analysis service (e.g. "High Confidence") — null if unavailable
|
|
92
|
+
// Returns 404 if the player has no completed video analysis yet
|
|
93
|
+
const playerReport = await Players.getPlayerReport({
|
|
94
|
+
path: { id: 'player-uuid' },
|
|
95
|
+
});
|
|
96
|
+
// Returns { reportReferenceId, generatedAt, scouterView: { technicalPillar, physicalPillar, tacticalPillar, mentalPillar } }
|
|
97
|
+
// Returns 404 if the player has no completed AI report yet
|
|
98
|
+
|
|
99
|
+
// Profile
|
|
100
|
+
const profile = await Profile.getProfileMe();
|
|
101
|
+
await Profile.updateProfileMe({ body: { dominantFoot: 'Right' } });
|
|
102
|
+
|
|
103
|
+
// Documents
|
|
104
|
+
const docs = await Documents.getMyDocuments();
|
|
105
|
+
await Documents.createDocument({ body: { type: 'license' } });
|
|
106
|
+
|
|
107
|
+
// Videos
|
|
108
|
+
const videos = await Videos.getMyVideos();
|
|
109
|
+
await Videos.createVideo({
|
|
110
|
+
body: { type: 'cmj', storagePath: 'path/to/video' },
|
|
111
|
+
});
|
|
112
|
+
const playUrl = await Videos.getVideoPlayUrl({ path: { id: 'video-uuid' } });
|
|
113
|
+
await Videos.deleteVideo({ path: { id: 'video-uuid' } });
|
|
114
|
+
|
|
115
|
+
// Achievements
|
|
116
|
+
const catalog = await Achievements.getAchievementsCatalog();
|
|
117
|
+
const myAchievements = await Achievements.getMyAchievements();
|
|
118
|
+
|
|
119
|
+
// Body measurements
|
|
120
|
+
const measurement = await Body.getMyMeasurements();
|
|
121
|
+
await Body.createMeasurement({ body: { heightCm: 180 } });
|
|
122
|
+
|
|
123
|
+
// Index (lookup tables)
|
|
124
|
+
const positions = await Index.getIndexItems({
|
|
125
|
+
path: { tableName: 'positions' },
|
|
126
|
+
});
|
|
127
|
+
const countries = await Index.getCountries();
|
|
128
|
+
// Returns [{ code: 'BR', name: 'Brazil', nationalityName: 'Brazilian', flagEmoji: '🇧🇷' }, ...]
|
|
129
|
+
|
|
130
|
+
// Dashboard (scout/club portal — single aggregated call)
|
|
131
|
+
const dashboard = await Dashboard.getScoutDashboard();
|
|
132
|
+
// Returns: stats (watchlisted, offersSent, playersViewed, videosWatched),
|
|
133
|
+
// lastPlayersViewed (last 6 distinct players),
|
|
134
|
+
// lastVideosWatched (last 6 distinct videos with player info)
|
|
135
|
+
|
|
136
|
+
const videoUrl = await Dashboard.getScoutVideoPlayUrl({
|
|
137
|
+
path: { id: 'video-uuid' },
|
|
138
|
+
});
|
|
139
|
+
// Returns signed play URL + records the view in video_views
|
|
140
|
+
|
|
141
|
+
// Offers (conversations between scouts and players)
|
|
142
|
+
const conversations = await Offers.listConversations({
|
|
143
|
+
query: { filter: 'all', page: 1, pageSize: 20 },
|
|
144
|
+
});
|
|
145
|
+
const conversation = await Offers.createConversation({
|
|
146
|
+
body: { playerId: 'player-uuid', initialMessage: 'Hi!' },
|
|
147
|
+
});
|
|
148
|
+
const messages = await Offers.listMessages({
|
|
149
|
+
path: { id: 'conversation-uuid' },
|
|
150
|
+
query: { page: 1, pageSize: 20 },
|
|
151
|
+
});
|
|
152
|
+
await Offers.sendMessage({
|
|
153
|
+
path: { id: 'conversation-uuid' },
|
|
154
|
+
body: { body: 'Looking forward to it!' },
|
|
155
|
+
});
|
|
156
|
+
await Offers.markConversationRead({ path: { id: 'conversation-uuid' } });
|
|
157
|
+
|
|
158
|
+
// Organizations
|
|
159
|
+
const org = await Organizations.getMyOrganization();
|
|
160
|
+
await Organizations.updateMyOrganization({ body: { name: 'FC Example' } });
|
|
161
|
+
await Organizations.registerClub({
|
|
162
|
+
body: { name: 'FC Example', email: 'admin@example.com' },
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
// Clubs (coach/admin club entries within an organization)
|
|
166
|
+
const clubs = await Clubs.getMyClubs();
|
|
167
|
+
const club = await Clubs.createMyClub({ body: { name: 'U19 Team' } });
|
|
168
|
+
await Clubs.updateMyClub({
|
|
169
|
+
path: { id: 'club-uuid' },
|
|
170
|
+
body: { name: 'U21 Team' },
|
|
171
|
+
});
|
|
172
|
+
await Clubs.deleteMyClub({ path: { id: 'club-uuid' } });
|
|
173
|
+
|
|
174
|
+
// Challenges
|
|
175
|
+
const challengeCatalog = await Challenges.getChallengesCatalog();
|
|
176
|
+
const myChallenges = await Challenges.getMyChallenges();
|
|
177
|
+
|
|
178
|
+
// Training
|
|
179
|
+
const grouped = await Training.getTrainingGrouped();
|
|
180
|
+
const trainingList = await Training.getTrainingList({
|
|
181
|
+
query: { categoryCode: 'fitness', page: 1, pageSize: 20 },
|
|
182
|
+
});
|
|
183
|
+
const trainingItem = await Training.getTrainingById({
|
|
184
|
+
path: { id: 'training-uuid' },
|
|
185
|
+
});
|
|
186
|
+
|
|
187
|
+
// Invitations (org admin invites members)
|
|
188
|
+
await Invitations.sendInvitation({
|
|
189
|
+
body: { email: 'coach@example.com', role: 'coach' },
|
|
190
|
+
});
|
|
191
|
+
const invitations = await Invitations.listInvitations();
|
|
192
|
+
await Invitations.resendInvitation({ path: { id: 'invitation-uuid' } });
|
|
193
|
+
await Invitations.deleteInvitation({ path: { id: 'invitation-uuid' } });
|
|
194
|
+
await Invitations.acceptInvitation(); // called after Supabase auth callback
|
|
195
|
+
|
|
196
|
+
// KYC — SmileID Enhanced Document Verification
|
|
197
|
+
//
|
|
198
|
+
// Two integration options:
|
|
199
|
+
|
|
200
|
+
// Option A — Smile Links (recommended for web)
|
|
201
|
+
// Backend returns a hosted SmileID URL; redirect the user to it.
|
|
202
|
+
// SmileID handles the full capture UI and fires the webhook when done.
|
|
203
|
+
const linkResult = await Kyc.startSmileLink({
|
|
204
|
+
body: {
|
|
205
|
+
country: 'gh', // stored on the verification record; does NOT filter the SmileID dropdown
|
|
206
|
+
channel: 'web',
|
|
207
|
+
returnUrl: 'https://yourapp.com/onboarding/kyc/callback',
|
|
208
|
+
},
|
|
209
|
+
});
|
|
210
|
+
// linkResult: { url, jobId, status, retriesRemaining }
|
|
211
|
+
// url is null when no redirect is needed (approved / blocked / processing).
|
|
212
|
+
if (linkResult.data.url) {
|
|
213
|
+
window.location.href = linkResult.data.url; // redirect user to SmileID
|
|
214
|
+
}
|
|
215
|
+
// The SmileID hosted page shows all countries configured in index.kyc_supported_id_types.
|
|
216
|
+
// The user selects their country and document type on that page.
|
|
217
|
+
// After the user returns to returnUrl, poll getKycStatus to confirm the result.
|
|
218
|
+
// markSubmittedKyc is NOT needed for Smile Links — SmileID fires the webhook directly.
|
|
219
|
+
|
|
220
|
+
// Option B — SDK widget (embedded, for mobile / advanced web)
|
|
221
|
+
const kycResult = await Kyc.startKyc({
|
|
222
|
+
body: { country: 'gh', channel: 'web' },
|
|
223
|
+
});
|
|
224
|
+
// kycResult: { token, partnerId, jobId, status, retriesRemaining }
|
|
225
|
+
// Pass token + partnerId to the SmileID web SDK widget to start document capture.
|
|
226
|
+
// After the SDK reports successful submission, call markSubmittedKyc with jobId.
|
|
227
|
+
await Kyc.markSubmittedKyc({ body: { jobId: kycResult.data.jobId! } });
|
|
228
|
+
// SmileID also calls POST /kyc/webhook under the configured API base/prefix
|
|
229
|
+
// (for staging: https://staging.globalscoutme.com/api/kyc/webhook).
|
|
230
|
+
|
|
231
|
+
const kycStatus = await Kyc.getKycStatus({
|
|
232
|
+
path: { userId: supabaseAuthUuid },
|
|
233
|
+
});
|
|
234
|
+
// kycStatus: { status, retryCount, retriesRemaining }
|
|
235
|
+
// status: 'pending' | 'capture_started' | 'processing' | 'approved' | 'rejected' | 'blocked'
|
|
236
|
+
// Older API clients may still see legacy 'in_progress', which maps to 'capture_started'.
|
|
237
|
+
|
|
238
|
+
// Subscriptions (Stripe recurring billing)
|
|
239
|
+
const plans = await Subscriptions.getSubscriptionPlans();
|
|
240
|
+
// Returns: { plans: [{ id, code, name, price, currency, billingInterval, trialDays, features, displayOrder }] }
|
|
241
|
+
|
|
242
|
+
const mySubscription = await Subscriptions.getMySubscription();
|
|
243
|
+
// Returns: { status, isActive, planId, planName, billingInterval,
|
|
244
|
+
// currentPeriodStart, currentPeriodEnd, cancelAtPeriodEnd, canceledAt, gracePeriodUntil }
|
|
245
|
+
// status: 'inactive' when the user has never subscribed
|
|
246
|
+
|
|
247
|
+
// Start a subscription — redirect the user to the returned URL
|
|
248
|
+
const checkout = await Subscriptions.createCheckout({
|
|
249
|
+
body: {
|
|
250
|
+
providerProductId: 'billing-provider-products-uuid', // pick from billing_provider_products table
|
|
251
|
+
successUrl: 'https://yourapp.com/subscription/success', // or a mobile deep-link
|
|
252
|
+
cancelUrl: 'https://yourapp.com/subscription/cancel',
|
|
253
|
+
},
|
|
254
|
+
});
|
|
255
|
+
// redirect user to checkout.url
|
|
256
|
+
|
|
257
|
+
// Open the Stripe Billing Portal (manage / cancel subscription)
|
|
258
|
+
const portal = await Subscriptions.createPortal({
|
|
259
|
+
body: { returnUrl: 'https://yourapp.com/account' },
|
|
260
|
+
});
|
|
261
|
+
// redirect user to portal.url
|
|
262
|
+
|
|
263
|
+
// Storage — get a signed upload URL, then PUT the file directly to Supabase Storage
|
|
264
|
+
const { uploadUrl, token, path, bucket, expiresIn } = await Storage.createUploadUrl({
|
|
265
|
+
body: { bucket: 'avatars', contentType: 'image/jpeg', sizeBytes: 204800 },
|
|
266
|
+
});
|
|
267
|
+
await fetch(uploadUrl, {
|
|
268
|
+
method: 'PUT',
|
|
269
|
+
body: fileBlob,
|
|
270
|
+
headers: { 'Content-Type': 'image/jpeg' },
|
|
271
|
+
});
|
|
272
|
+
// persist `path` on the player record (e.g. patchMe with avatarPath: path)
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
## Updating auth token
|
|
276
|
+
|
|
277
|
+
Update the Bearer token after sign-in or token refresh:
|
|
278
|
+
|
|
279
|
+
```ts
|
|
280
|
+
client.setConfig({
|
|
281
|
+
headers: {
|
|
282
|
+
Authorization: `Bearer ${newAccessToken}`,
|
|
283
|
+
},
|
|
284
|
+
});
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
## Versioning
|
|
288
|
+
|
|
289
|
+
This package is auto-generated from the backend OpenAPI spec. Version increments follow semver:
|
|
290
|
+
|
|
291
|
+
- **patch** — no API shape changes
|
|
292
|
+
- **minor** — new endpoints added
|
|
293
|
+
- **major** — breaking changes (renamed/removed endpoints or fields)
|
|
294
|
+
|
|
295
|
+
## Package format
|
|
296
|
+
|
|
297
|
+
The published package ships compiled JavaScript (`dist/`) alongside the raw TypeScript source. `main` points to `dist/index.js` so all bundlers work without extra configuration.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { Achievements, Auth, Billing, Body, Challenges, Clubs, Cmj, Dashboard, Documents, GlobalScoutMeClient, Index, Invitations, Kyc, Measurements, Notifications, Offers, type Options, Organizations, Players, Profile, Storage, Subscriptions, Training, Trainingadmin, VideoLinks, VideoMetrics, Videos, } from './sdk.gen.js';
|
|
2
|
-
export type { AchievementCatalogDto, AiReportClipDto, AiReportClipTargetDto, AiReportGsiBodySourceInputDto, AiReportGsiComponentDto, AiReportGsiJumpSourceInputDto, AiReportGsiMeasurementsSourceInputsDto, AiReportGsiReasonDto, AiReportGsiRepairMetadataDto, AiReportGsiSnapshotDto, AiReportGsiSourceInputsDto, AiReportGsiSpeedSourceInputDto, AiReportGsiSubcomponentDto, AiReportGsiVideoSourceInputDto, AiReportImprovementAreaDto, AiReportMetaDto, AiReportPillarDetailDto, AiReportResultResponseDto, AiReportSubcategoryDto, AiReportVideoAttributeScoresDto, AiReportViewDto, AuthMeResponseDto, BillingEntitlementResponseDto, BillingManageActionDto, BillingPlanDto, BillingPlansResponseDto, BillingProductDto, BillingProductsResponseDto, BillingProviderProductDto, BodyMeasurementProfileDto, BodyMeasurementResponseDto, CancelKycRequestDto, CareerAchievementDto, ChallengeCatalogDto, CheckoutResultDto, ClientOptions, ClubResponseDto, CmjMeasurementProfileDto, CmjMeasurementResponseDto, ConversationDetailDto, ConversationItemDto, ConversationListResultDto, ConversationOrganizationDto, ConversationParticipantDto, CountryDto, CreateBodyMeasurementDto, CreateCheckoutDto, CreateClubDto, CreateConversationDto, CreateDocumentDto, CreateMeasurementPlayerSessionDto, CreatePortalDto, CreateUploadUrlDto, CreateVideoDto, CreateVideoLinkDto, DashboardResponseDto, DashboardStatsDto, DashboardVideoCardDto, DeactivatePushDeviceDto, DeleteApiClubsMeByIdData, DeleteApiClubsMeByIdErrors, DeleteApiClubsMeByIdResponse, DeleteApiClubsMeByIdResponses, DeleteApiDocumentsByIdData, DeleteApiDocumentsByIdErrors, DeleteApiDocumentsByIdResponse, DeleteApiDocumentsByIdResponses, DeleteApiInvitationsByIdData, DeleteApiInvitationsByIdErrors, DeleteApiInvitationsByIdResponse, DeleteApiInvitationsByIdResponses, DeleteApiNotificationsDevicesCurrentData, DeleteApiNotificationsDevicesCurrentResponse, DeleteApiNotificationsDevicesCurrentResponses, DeleteApiPlayersMeData, DeleteApiPlayersMeErrors, DeleteApiPlayersMeResponse, DeleteApiPlayersMeResponses, DeleteApiTrainingAdminContentByIdData, DeleteApiTrainingAdminContentByIdErrors, DeleteApiTrainingAdminContentByIdResponse, DeleteApiTrainingAdminContentByIdResponses, DeleteApiVideoLinksByIdData, DeleteApiVideoLinksByIdErrors, DeleteApiVideoLinksByIdResponse, DeleteApiVideoLinksByIdResponses, DeleteApiVideosByIdData, DeleteApiVideosByIdErrors, DeleteApiVideosByIdResponse, DeleteApiVideosByIdResponses, DivisionDto, DocumentResponseDto, GetApiAchievementsData, GetApiAchievementsMeData, GetApiAchievementsMeErrors, GetApiAchievementsMeResponse, GetApiAchievementsMeResponses, GetApiAchievementsResponse, GetApiAchievementsResponses, GetApiAuthMeData, GetApiAuthMeErrors, GetApiAuthMeResponse, GetApiAuthMeResponses, GetApiBillingMeData, GetApiBillingMeResponse, GetApiBillingMeResponses, GetApiBillingPlansData, GetApiBillingPlansResponse, GetApiBillingPlansResponses, GetApiBillingProductsData, GetApiBillingProductsResponse, GetApiBillingProductsResponses, GetApiBillingReportPurchasesByIdReportData, GetApiBillingReportPurchasesByIdReportResponse, GetApiBillingReportPurchasesByIdReportResponses, GetApiBillingReportPurchasesCurrentData, GetApiBillingReportPurchasesCurrentResponse, GetApiBillingReportPurchasesCurrentResponses, GetApiBillingReportPurchasesHistoryData, GetApiBillingReportPurchasesHistoryResponse, GetApiBillingReportPurchasesHistoryResponses, GetApiBodyMeasurementsMeData, GetApiBodyMeasurementsMeErrors, GetApiBodyMeasurementsMeResponse, GetApiBodyMeasurementsMeResponses, GetApiChallengesData, GetApiChallengesErrors, GetApiChallengesMeData, GetApiChallengesMeErrors, GetApiChallengesMeResponse, GetApiChallengesMeResponses, GetApiChallengesResponse, GetApiChallengesResponses, GetApiClubsMeData, GetApiClubsMeErrors, GetApiClubsMeResponse, GetApiClubsMeResponses, GetApiCmjMeasurementsMeData, GetApiCmjMeasurementsMeErrors, GetApiCmjMeasurementsMeResponse, GetApiCmjMeasurementsMeResponses, GetApiDashboardMeData, GetApiDashboardMeErrors, GetApiDashboardMeResponse, GetApiDashboardMeResponses, GetApiDashboardVideosByIdPlayUrlData, GetApiDashboardVideosByIdPlayUrlErrors, GetApiDashboardVideosByIdPlayUrlResponse, GetApiDashboardVideosByIdPlayUrlResponses, GetApiDocumentsMeData, GetApiDocumentsMeErrors, GetApiDocumentsMeResponse, GetApiDocumentsMeResponses, GetApiIndexByTableNameData, GetApiIndexByTableNameErrors, GetApiIndexByTableNameResponse, GetApiIndexByTableNameResponses, GetApiIndexCountriesData, GetApiIndexCountriesErrors, GetApiIndexCountriesResponse, GetApiIndexCountriesResponses, GetApiInvitationsData, GetApiInvitationsResponse, GetApiInvitationsResponses, GetApiKycStatusByUserIdData, GetApiKycStatusByUserIdErrors, GetApiKycStatusByUserIdResponse, GetApiKycStatusByUserIdResponses, GetApiMeasurementsProfileMeData, GetApiMeasurementsProfileMeErrors, GetApiMeasurementsProfileMeResponse, GetApiMeasurementsProfileMeResponses, GetApiNotificationsPreferencesData, GetApiNotificationsPreferencesResponse, GetApiNotificationsPreferencesResponses, GetApiOffersConversationsByIdMessagesData, GetApiOffersConversationsByIdMessagesErrors, GetApiOffersConversationsByIdMessagesResponse, GetApiOffersConversationsByIdMessagesResponses, GetApiOffersConversationsData, GetApiOffersConversationsErrors, GetApiOffersConversationsResponse, GetApiOffersConversationsResponses, GetApiOrganizationsMeData, GetApiOrganizationsMeErrors, GetApiOrganizationsMeResponse, GetApiOrganizationsMeResponses, GetApiPlayersByIdData, GetApiPlayersByIdErrors, GetApiPlayersByIdMeasurementsData, GetApiPlayersByIdMeasurementsErrors, GetApiPlayersByIdMeasurementsResponse, GetApiPlayersByIdMeasurementsResponses, GetApiPlayersByIdReportData, GetApiPlayersByIdReportErrors, GetApiPlayersByIdReportResponse, GetApiPlayersByIdReportResponses, GetApiPlayersByIdResponse, GetApiPlayersByIdResponses, GetApiPlayersByIdVideoMetricsData, GetApiPlayersByIdVideoMetricsErrors, GetApiPlayersByIdVideoMetricsResponse, GetApiPlayersByIdVideoMetricsResponses, GetApiPlayersMeDashboardData, GetApiPlayersMeDashboardErrors, GetApiPlayersMeDashboardResponse, GetApiPlayersMeDashboardResponses, GetApiPlayersMeData, GetApiPlayersMeErrors, GetApiPlayersMeResponse, GetApiPlayersMeResponses, GetApiProfileMeData, GetApiProfileMeErrors, GetApiProfileMeResponse, GetApiProfileMeResponses, GetApiSubscriptionsMeData, GetApiSubscriptionsMeResponse, GetApiSubscriptionsMeResponses, GetApiSubscriptionsPlansData, GetApiSubscriptionsPlansResponse, GetApiSubscriptionsPlansResponses, GetApiTrainingAdminContentByIdData, GetApiTrainingAdminContentByIdErrors, GetApiTrainingAdminContentByIdResponse, GetApiTrainingAdminContentByIdResponses, GetApiTrainingAdminContentData, GetApiTrainingAdminContentErrors, GetApiTrainingAdminContentResponse, GetApiTrainingAdminContentResponses, GetApiTrainingAdminLookupsData, GetApiTrainingAdminLookupsErrors, GetApiTrainingAdminLookupsResponse, GetApiTrainingAdminLookupsResponses, GetApiTrainingByIdData, GetApiTrainingByIdErrors, GetApiTrainingByIdResponse, GetApiTrainingByIdResponses, GetApiTrainingData, GetApiTrainingErrors, GetApiTrainingGroupedData, GetApiTrainingGroupedErrors, GetApiTrainingGroupedResponse, GetApiTrainingGroupedResponses, GetApiTrainingResponse, GetApiTrainingResponses, GetApiVideoLinksMeData, GetApiVideoLinksMeErrors, GetApiVideoLinksMeResponse, GetApiVideoLinksMeResponses, GetApiVideoMetricsMeData, GetApiVideoMetricsMeErrors, GetApiVideoMetricsMeResponse, GetApiVideoMetricsMeResponses, GetApiVideosByIdPlayUrlData, GetApiVideosByIdPlayUrlErrors, GetApiVideosByIdPlayUrlResponse, GetApiVideosByIdPlayUrlResponses, GetApiVideosMeData, GetApiVideosMeErrors, GetApiVideosMeResponse, GetApiVideosMeResponses, HeartbeatDto, HeartbeatResponseDto, IndexItemDto, InvitationResponseDto, KycStatusDto, KycWebhookDto, MarkSubmittedKycRequestDto, MeasurementProfileResponseDto, MeasurementSessionDto, MeasurementSessionMetricsDto, MeasurementTagEvaluationDto, MessageItemDto, MessageListResultDto, MessageSenderDto, MyChallengeDto, MySubscriptionDto, NotificationPreferencesDto, OkDto, OrganizationResponseDto, PaginatedTrainingContentDto, PatchApiClubsMeByIdData, PatchApiClubsMeByIdErrors, PatchApiClubsMeByIdResponse, PatchApiClubsMeByIdResponses, PatchApiNotificationsPreferencesData, PatchApiNotificationsPreferencesResponse, PatchApiNotificationsPreferencesResponses, PatchApiOffersConversationsByIdReadData, PatchApiOffersConversationsByIdReadErrors, PatchApiOffersConversationsByIdReadResponses, PatchApiPlayersMeData, PatchApiPlayersMeErrors, PatchApiPlayersMeResponse, PatchApiPlayersMeResponses, PatchApiTrainingAdminContentByIdData, PatchApiTrainingAdminContentByIdErrors, PatchApiTrainingAdminContentByIdResponse, PatchApiTrainingAdminContentByIdResponses, PlansListDto, PlayerAchievementDto, PlayerByIdDto, PlayerClubDto, PlayerReportResponseDto, PlayerReportViewDto, PlayerResponseDto, PlayerSearchItemDto, PlayerSearchRequestDto, PlayerSearchResultDto, PlayerVideoDto, PlayUrlResponseDto, PortalResultDto, PostApiBillingAccessCodesRedeemData, PostApiBillingAccessCodesRedeemResponse, PostApiBillingAccessCodesRedeemResponses, PostApiBillingAppleSyncPurchaseData, PostApiBillingAppleSyncPurchaseResponses, PostApiBillingGoogleSyncPurchaseData, PostApiBillingGoogleSyncPurchaseResponses, PostApiBillingReportPurchasesByIdStartGenerationData, PostApiBillingReportPurchasesByIdStartGenerationResponse, PostApiBillingReportPurchasesByIdStartGenerationResponses, PostApiBillingReportPurchasesPlayerCandidatesData, PostApiBillingReportPurchasesPlayerCandidatesResponse, PostApiBillingReportPurchasesPlayerCandidatesResponses, PostApiBillingStripeCheckoutSessionData, PostApiBillingStripeCheckoutSessionResponses, PostApiBillingStripePortalSessionData, PostApiBillingStripePortalSessionResponses, PostApiBodyMeasurementsData, PostApiBodyMeasurementsErrors, PostApiBodyMeasurementsResponse, PostApiBodyMeasurementsResponses, PostApiClubsMeData, PostApiClubsMeErrors, PostApiClubsMeResponse, PostApiClubsMeResponses, PostApiDocumentsData, PostApiDocumentsErrors, PostApiDocumentsResponse, PostApiDocumentsResponses, PostApiInvitationsAcceptData, PostApiInvitationsAcceptResponse, PostApiInvitationsAcceptResponses, PostApiInvitationsByIdResendData, PostApiInvitationsByIdResendErrors, PostApiInvitationsByIdResendResponse, PostApiInvitationsByIdResendResponses, PostApiInvitationsData, PostApiInvitationsErrors, PostApiInvitationsResponse, PostApiInvitationsResponses, PostApiKycCancelData, PostApiKycCancelErrors, PostApiKycCancelResponse, PostApiKycCancelResponses, PostApiKycMarkSubmittedData, PostApiKycMarkSubmittedErrors, PostApiKycMarkSubmittedResponse, PostApiKycMarkSubmittedResponses, PostApiKycSmileLinkData, PostApiKycSmileLinkErrors, PostApiKycSmileLinkResponse, PostApiKycSmileLinkResponses, PostApiKycStartData, PostApiKycStartErrors, PostApiKycStartResponse, PostApiKycStartResponses, PostApiKycWebhookData, PostApiKycWebhookErrors, PostApiKycWebhookResponses, PostApiMeasurementsPlayerSessionMeData, PostApiMeasurementsPlayerSessionMeErrors, PostApiMeasurementsPlayerSessionMeResponse, PostApiMeasurementsPlayerSessionMeResponses, PostApiNotificationsDevicesData, PostApiNotificationsDevicesResponse, PostApiNotificationsDevicesResponses, PostApiOffersConversationsByIdMessagesData, PostApiOffersConversationsByIdMessagesErrors, PostApiOffersConversationsByIdMessagesResponse, PostApiOffersConversationsByIdMessagesResponses, PostApiOffersConversationsData, PostApiOffersConversationsErrors, PostApiOffersConversationsResponse, PostApiOffersConversationsResponses, PostApiOrganizationsRegisterAgentData, PostApiOrganizationsRegisterAgentErrors, PostApiOrganizationsRegisterAgentResponse, PostApiOrganizationsRegisterAgentResponses, PostApiOrganizationsRegisterClubData, PostApiOrganizationsRegisterClubErrors, PostApiOrganizationsRegisterClubResponse, PostApiOrganizationsRegisterClubResponses, PostApiPlayersMeHeartbeatData, PostApiPlayersMeHeartbeatErrors, PostApiPlayersMeHeartbeatResponse, PostApiPlayersMeHeartbeatResponses, PostApiPlayersSearchData, PostApiPlayersSearchErrors, PostApiPlayersSearchResponse, PostApiPlayersSearchResponses, PostApiStorageUploadUrlData, PostApiStorageUploadUrlErrors, PostApiStorageUploadUrlResponse, PostApiStorageUploadUrlResponses, PostApiSubscriptionsCheckoutData, PostApiSubscriptionsCheckoutErrors, PostApiSubscriptionsCheckoutResponse, PostApiSubscriptionsCheckoutResponses, PostApiSubscriptionsPortalData, PostApiSubscriptionsPortalErrors, PostApiSubscriptionsPortalResponse, PostApiSubscriptionsPortalResponses, PostApiSubscriptionsWebhookData, PostApiSubscriptionsWebhookErrors, PostApiSubscriptionsWebhookResponses, PostApiTrainingAdminContentData, PostApiTrainingAdminContentErrors, PostApiTrainingAdminContentResponse, PostApiTrainingAdminContentResponses, PostApiVideoLinksData, PostApiVideoLinksErrors, PostApiVideoLinksResponse, PostApiVideoLinksResponses, PostApiVideosData, PostApiVideosErrors, PostApiVideosResponse, PostApiVideosResponses, PreviousClubDto, ProfileResponseDto, ProviderCheckoutRequestDto, PushDeviceRegistrationResultDto, PutApiOrganizationsMeData, PutApiOrganizationsMeErrors, PutApiOrganizationsMeResponse, PutApiOrganizationsMeResponses, PutApiProfileMeData, PutApiProfileMeErrors, PutApiProfileMeResponse, PutApiProfileMeResponses, RedeemAccessCodeDto, RegisterAgentDto, RegisterAgentResponseDto, RegisterClubDto, RegisterClubResponseDto, RegisterPushDeviceDto, ReportGenerationStartResponseDto, ReportPlayerCandidateBboxDto, ReportPlayerCandidateDto, ReportPlayerCandidatesRequestDto, ReportPlayerCandidatesResponseDto, ReportPlayerCandidateTargetDto, ReportPrerequisiteDto, ReportPurchaseDto, ReportPurchaseHistoryItemDto, ReportPurchaseHistoryResponseDto, ReportPurchaseStatusResponseDto, ReportVideoCandidatesDto, ScoutDashboardResponseDto, SendInvitationRequestDto, SendMessageDto, SmileLinkRequestDto, SmileLinkResponseDto, StartKycRequestDto, StartKycResponseDto, StartReportGenerationClipDto, StartReportGenerationRequestDto, StorePurchaseSyncRequestDto, SubscriptionPlanDto, TrainingAdminContentDto, TrainingAdminContentStatusDto, TrainingAdminCreateContentInputDto, TrainingAdminLookupItemDto, TrainingAdminLookupsDto, TrainingAdminUpdateContentInputDto, TrainingCategoryGroupDto, TrainingContentDetailDto, TrainingContentListItemDto, TrainingMediaTypeDto, UpdateClubDto, UpdateNotificationPreferencesDto, UpdateOrganizationDto, UpdatePlayerDto, UpdateProfileDto, UploadUrlResponseDto, UserAchievementResponseDto, VideoLinkResponseDto, VideoMetricsMeResponseDto, VideoMetricsPhysicalMetricsDto, VideoResponseDto, WatchingOrgDto, WebhookPartnerParamsDto, } from './types.gen.js';
|
|
2
|
+
export type { AchievementCatalogDto, AiReportClipDto, AiReportClipTargetDto, AiReportGsiBodySourceInputDto, AiReportGsiComponentDto, AiReportGsiJumpSourceInputDto, AiReportGsiMeasurementsSourceInputsDto, AiReportGsiReasonDto, AiReportGsiRepairMetadataDto, AiReportGsiSnapshotDto, AiReportGsiSourceInputsDto, AiReportGsiSpeedSourceInputDto, AiReportGsiSubcomponentDto, AiReportGsiVideoSourceInputDto, AiReportImprovementAreaDto, AiReportMetaDto, AiReportPillarDetailDto, AiReportResultResponseDto, AiReportSubcategoryDto, AiReportVideoAttributeScoresDto, AiReportViewDto, AuthMeResponseDto, BillingEntitlementResponseDto, BillingManageActionDto, BillingPlanDto, BillingPlansResponseDto, BillingProductDto, BillingProductsResponseDto, BillingProviderProductDto, BiomechanicalAlignmentDto, BiomechanicalPositionDto, BodyMeasurementProfileDto, BodyMeasurementResponseDto, CancelKycRequestDto, CareerAchievementDto, ChallengeCatalogDto, CheckoutResultDto, ClientOptions, ClubResponseDto, CmjMeasurementProfileDto, CmjMeasurementResponseDto, ConversationDetailDto, ConversationItemDto, ConversationListResultDto, ConversationOrganizationDto, ConversationParticipantDto, CountryDto, CreateBodyMeasurementDto, CreateCheckoutDto, CreateClubDto, CreateConversationDto, CreateDocumentDto, CreateMeasurementPlayerSessionDto, CreatePortalDto, CreateUploadUrlDto, CreateVideoDto, CreateVideoLinkDto, DashboardResponseDto, DashboardStatsDto, DashboardVideoCardDto, DeactivatePushDeviceDto, DeclaredPositionDto, DeleteApiClubsMeByIdData, DeleteApiClubsMeByIdErrors, DeleteApiClubsMeByIdResponse, DeleteApiClubsMeByIdResponses, DeleteApiDocumentsByIdData, DeleteApiDocumentsByIdErrors, DeleteApiDocumentsByIdResponse, DeleteApiDocumentsByIdResponses, DeleteApiInvitationsByIdData, DeleteApiInvitationsByIdErrors, DeleteApiInvitationsByIdResponse, DeleteApiInvitationsByIdResponses, DeleteApiNotificationsDevicesCurrentData, DeleteApiNotificationsDevicesCurrentResponse, DeleteApiNotificationsDevicesCurrentResponses, DeleteApiPlayersMeData, DeleteApiPlayersMeErrors, DeleteApiPlayersMeResponse, DeleteApiPlayersMeResponses, DeleteApiTrainingAdminContentByIdData, DeleteApiTrainingAdminContentByIdErrors, DeleteApiTrainingAdminContentByIdResponse, DeleteApiTrainingAdminContentByIdResponses, DeleteApiVideoLinksByIdData, DeleteApiVideoLinksByIdErrors, DeleteApiVideoLinksByIdResponse, DeleteApiVideoLinksByIdResponses, DeleteApiVideosByIdData, DeleteApiVideosByIdErrors, DeleteApiVideosByIdResponse, DeleteApiVideosByIdResponses, DivisionDto, DocumentResponseDto, GetApiAchievementsData, GetApiAchievementsMeData, GetApiAchievementsMeErrors, GetApiAchievementsMeResponse, GetApiAchievementsMeResponses, GetApiAchievementsResponse, GetApiAchievementsResponses, GetApiAuthMeData, GetApiAuthMeErrors, GetApiAuthMeResponse, GetApiAuthMeResponses, GetApiBillingMeData, GetApiBillingMeResponse, GetApiBillingMeResponses, GetApiBillingPlansData, GetApiBillingPlansResponse, GetApiBillingPlansResponses, GetApiBillingProductsData, GetApiBillingProductsResponse, GetApiBillingProductsResponses, GetApiBillingReportPurchasesByIdReportData, GetApiBillingReportPurchasesByIdReportResponse, GetApiBillingReportPurchasesByIdReportResponses, GetApiBillingReportPurchasesCurrentData, GetApiBillingReportPurchasesCurrentResponse, GetApiBillingReportPurchasesCurrentResponses, GetApiBillingReportPurchasesHistoryData, GetApiBillingReportPurchasesHistoryResponse, GetApiBillingReportPurchasesHistoryResponses, GetApiBodyMeasurementsMeData, GetApiBodyMeasurementsMeErrors, GetApiBodyMeasurementsMeResponse, GetApiBodyMeasurementsMeResponses, GetApiChallengesData, GetApiChallengesErrors, GetApiChallengesMeData, GetApiChallengesMeErrors, GetApiChallengesMeResponse, GetApiChallengesMeResponses, GetApiChallengesResponse, GetApiChallengesResponses, GetApiClubsMeData, GetApiClubsMeErrors, GetApiClubsMeResponse, GetApiClubsMeResponses, GetApiCmjMeasurementsMeData, GetApiCmjMeasurementsMeErrors, GetApiCmjMeasurementsMeResponse, GetApiCmjMeasurementsMeResponses, GetApiDashboardMeData, GetApiDashboardMeErrors, GetApiDashboardMeResponse, GetApiDashboardMeResponses, GetApiDashboardVideosByIdPlayUrlData, GetApiDashboardVideosByIdPlayUrlErrors, GetApiDashboardVideosByIdPlayUrlResponse, GetApiDashboardVideosByIdPlayUrlResponses, GetApiDocumentsMeData, GetApiDocumentsMeErrors, GetApiDocumentsMeResponse, GetApiDocumentsMeResponses, GetApiIndexByTableNameData, GetApiIndexByTableNameErrors, GetApiIndexByTableNameResponse, GetApiIndexByTableNameResponses, GetApiIndexCountriesData, GetApiIndexCountriesErrors, GetApiIndexCountriesResponse, GetApiIndexCountriesResponses, GetApiInvitationsData, GetApiInvitationsResponse, GetApiInvitationsResponses, GetApiKycStatusByUserIdData, GetApiKycStatusByUserIdErrors, GetApiKycStatusByUserIdResponse, GetApiKycStatusByUserIdResponses, GetApiMeasurementsProfileMeData, GetApiMeasurementsProfileMeErrors, GetApiMeasurementsProfileMeResponse, GetApiMeasurementsProfileMeResponses, GetApiNotificationsPreferencesData, GetApiNotificationsPreferencesResponse, GetApiNotificationsPreferencesResponses, GetApiOffersConversationsByIdMessagesData, GetApiOffersConversationsByIdMessagesErrors, GetApiOffersConversationsByIdMessagesResponse, GetApiOffersConversationsByIdMessagesResponses, GetApiOffersConversationsData, GetApiOffersConversationsErrors, GetApiOffersConversationsResponse, GetApiOffersConversationsResponses, GetApiOrganizationsMeData, GetApiOrganizationsMeErrors, GetApiOrganizationsMeResponse, GetApiOrganizationsMeResponses, GetApiPlayersByIdData, GetApiPlayersByIdErrors, GetApiPlayersByIdMeasurementsData, GetApiPlayersByIdMeasurementsErrors, GetApiPlayersByIdMeasurementsResponse, GetApiPlayersByIdMeasurementsResponses, GetApiPlayersByIdReportData, GetApiPlayersByIdReportErrors, GetApiPlayersByIdReportResponse, GetApiPlayersByIdReportResponses, GetApiPlayersByIdResponse, GetApiPlayersByIdResponses, GetApiPlayersByIdVideoMetricsData, GetApiPlayersByIdVideoMetricsErrors, GetApiPlayersByIdVideoMetricsResponse, GetApiPlayersByIdVideoMetricsResponses, GetApiPlayersMeDashboardData, GetApiPlayersMeDashboardErrors, GetApiPlayersMeDashboardResponse, GetApiPlayersMeDashboardResponses, GetApiPlayersMeData, GetApiPlayersMeErrors, GetApiPlayersMeResponse, GetApiPlayersMeResponses, GetApiProfileMeData, GetApiProfileMeErrors, GetApiProfileMeResponse, GetApiProfileMeResponses, GetApiSubscriptionsMeData, GetApiSubscriptionsMeResponse, GetApiSubscriptionsMeResponses, GetApiSubscriptionsPlansData, GetApiSubscriptionsPlansResponse, GetApiSubscriptionsPlansResponses, GetApiTrainingAdminContentByIdData, GetApiTrainingAdminContentByIdErrors, GetApiTrainingAdminContentByIdResponse, GetApiTrainingAdminContentByIdResponses, GetApiTrainingAdminContentData, GetApiTrainingAdminContentErrors, GetApiTrainingAdminContentResponse, GetApiTrainingAdminContentResponses, GetApiTrainingAdminLookupsData, GetApiTrainingAdminLookupsErrors, GetApiTrainingAdminLookupsResponse, GetApiTrainingAdminLookupsResponses, GetApiTrainingByIdData, GetApiTrainingByIdErrors, GetApiTrainingByIdResponse, GetApiTrainingByIdResponses, GetApiTrainingData, GetApiTrainingErrors, GetApiTrainingGroupedData, GetApiTrainingGroupedErrors, GetApiTrainingGroupedResponse, GetApiTrainingGroupedResponses, GetApiTrainingResponse, GetApiTrainingResponses, GetApiVideoLinksMeData, GetApiVideoLinksMeErrors, GetApiVideoLinksMeResponse, GetApiVideoLinksMeResponses, GetApiVideoMetricsMeData, GetApiVideoMetricsMeErrors, GetApiVideoMetricsMeResponse, GetApiVideoMetricsMeResponses, GetApiVideosByIdPlayUrlData, GetApiVideosByIdPlayUrlErrors, GetApiVideosByIdPlayUrlResponse, GetApiVideosByIdPlayUrlResponses, GetApiVideosMeData, GetApiVideosMeErrors, GetApiVideosMeResponse, GetApiVideosMeResponses, HeartbeatDto, HeartbeatResponseDto, ImprovementAreaDto, IndexItemDto, InvitationResponseDto, KycStatusDto, KycWebhookDto, MarkSubmittedKycRequestDto, MeasurementProfileResponseDto, MeasurementSessionDto, MeasurementSessionMetricsDto, MeasurementTagEvaluationDto, MessageItemDto, MessageListResultDto, MessageSenderDto, MyChallengeDto, MySubscriptionDto, NotificationPreferencesDto, OkDto, OrganizationResponseDto, PaginatedTrainingContentDto, PatchApiClubsMeByIdData, PatchApiClubsMeByIdErrors, PatchApiClubsMeByIdResponse, PatchApiClubsMeByIdResponses, PatchApiNotificationsPreferencesData, PatchApiNotificationsPreferencesResponse, PatchApiNotificationsPreferencesResponses, PatchApiOffersConversationsByIdReadData, PatchApiOffersConversationsByIdReadErrors, PatchApiOffersConversationsByIdReadResponses, PatchApiPlayersMeData, PatchApiPlayersMeErrors, PatchApiPlayersMeResponse, PatchApiPlayersMeResponses, PatchApiTrainingAdminContentByIdData, PatchApiTrainingAdminContentByIdErrors, PatchApiTrainingAdminContentByIdResponse, PatchApiTrainingAdminContentByIdResponses, PlansListDto, PlayerAchievementDto, PlayerByIdDto, PlayerClubDto, PlayerDisplayBiomechanicalAlignmentDto, PlayerDisplayDto, PlayerDisplayPositionDto, PlayerDisplayTagDto, PlayerReportResponseDto, PlayerReportViewDto, PlayerResponseDto, PlayerSearchItemDto, PlayerSearchRequestDto, PlayerSearchResultDto, PlayerVideoDto, PlayUrlResponseDto, PortalResultDto, PostApiBillingAccessCodesRedeemData, PostApiBillingAccessCodesRedeemResponse, PostApiBillingAccessCodesRedeemResponses, PostApiBillingAppleSyncPurchaseData, PostApiBillingAppleSyncPurchaseResponses, PostApiBillingGoogleSyncPurchaseData, PostApiBillingGoogleSyncPurchaseResponses, PostApiBillingReportPurchasesByIdStartGenerationData, PostApiBillingReportPurchasesByIdStartGenerationResponse, PostApiBillingReportPurchasesByIdStartGenerationResponses, PostApiBillingReportPurchasesPlayerCandidatesData, PostApiBillingReportPurchasesPlayerCandidatesResponse, PostApiBillingReportPurchasesPlayerCandidatesResponses, PostApiBillingStripeCheckoutSessionData, PostApiBillingStripeCheckoutSessionResponses, PostApiBillingStripePortalSessionData, PostApiBillingStripePortalSessionResponses, PostApiBodyMeasurementsData, PostApiBodyMeasurementsErrors, PostApiBodyMeasurementsResponse, PostApiBodyMeasurementsResponses, PostApiClubsMeData, PostApiClubsMeErrors, PostApiClubsMeResponse, PostApiClubsMeResponses, PostApiDocumentsData, PostApiDocumentsErrors, PostApiDocumentsResponse, PostApiDocumentsResponses, PostApiInvitationsAcceptData, PostApiInvitationsAcceptResponse, PostApiInvitationsAcceptResponses, PostApiInvitationsByIdResendData, PostApiInvitationsByIdResendErrors, PostApiInvitationsByIdResendResponse, PostApiInvitationsByIdResendResponses, PostApiInvitationsData, PostApiInvitationsErrors, PostApiInvitationsResponse, PostApiInvitationsResponses, PostApiKycCancelData, PostApiKycCancelErrors, PostApiKycCancelResponse, PostApiKycCancelResponses, PostApiKycMarkSubmittedData, PostApiKycMarkSubmittedErrors, PostApiKycMarkSubmittedResponse, PostApiKycMarkSubmittedResponses, PostApiKycSmileLinkData, PostApiKycSmileLinkErrors, PostApiKycSmileLinkResponse, PostApiKycSmileLinkResponses, PostApiKycStartData, PostApiKycStartErrors, PostApiKycStartResponse, PostApiKycStartResponses, PostApiKycWebhookData, PostApiKycWebhookErrors, PostApiKycWebhookResponses, PostApiMeasurementsPlayerSessionMeData, PostApiMeasurementsPlayerSessionMeErrors, PostApiMeasurementsPlayerSessionMeResponse, PostApiMeasurementsPlayerSessionMeResponses, PostApiNotificationsDevicesData, PostApiNotificationsDevicesResponse, PostApiNotificationsDevicesResponses, PostApiOffersConversationsByIdMessagesData, PostApiOffersConversationsByIdMessagesErrors, PostApiOffersConversationsByIdMessagesResponse, PostApiOffersConversationsByIdMessagesResponses, PostApiOffersConversationsData, PostApiOffersConversationsErrors, PostApiOffersConversationsResponse, PostApiOffersConversationsResponses, PostApiOrganizationsRegisterAgentData, PostApiOrganizationsRegisterAgentErrors, PostApiOrganizationsRegisterAgentResponse, PostApiOrganizationsRegisterAgentResponses, PostApiOrganizationsRegisterClubData, PostApiOrganizationsRegisterClubErrors, PostApiOrganizationsRegisterClubResponse, PostApiOrganizationsRegisterClubResponses, PostApiPlayersMeHeartbeatData, PostApiPlayersMeHeartbeatErrors, PostApiPlayersMeHeartbeatResponse, PostApiPlayersMeHeartbeatResponses, PostApiPlayersSearchData, PostApiPlayersSearchErrors, PostApiPlayersSearchResponse, PostApiPlayersSearchResponses, PostApiStorageUploadUrlData, PostApiStorageUploadUrlErrors, PostApiStorageUploadUrlResponse, PostApiStorageUploadUrlResponses, PostApiSubscriptionsCheckoutData, PostApiSubscriptionsCheckoutErrors, PostApiSubscriptionsCheckoutResponse, PostApiSubscriptionsCheckoutResponses, PostApiSubscriptionsPortalData, PostApiSubscriptionsPortalErrors, PostApiSubscriptionsPortalResponse, PostApiSubscriptionsPortalResponses, PostApiSubscriptionsWebhookData, PostApiSubscriptionsWebhookErrors, PostApiSubscriptionsWebhookResponses, PostApiTrainingAdminContentData, PostApiTrainingAdminContentErrors, PostApiTrainingAdminContentResponse, PostApiTrainingAdminContentResponses, PostApiVideoLinksData, PostApiVideoLinksErrors, PostApiVideoLinksResponse, PostApiVideoLinksResponses, PostApiVideosData, PostApiVideosErrors, PostApiVideosResponse, PostApiVideosResponses, PreviousClubDto, ProfileResponseDto, ProviderCheckoutRequestDto, PushDeviceRegistrationResultDto, PutApiOrganizationsMeData, PutApiOrganizationsMeErrors, PutApiOrganizationsMeResponse, PutApiOrganizationsMeResponses, PutApiProfileMeData, PutApiProfileMeErrors, PutApiProfileMeResponse, PutApiProfileMeResponses, QualitySummaryDto, RedeemAccessCodeDto, RegisterAgentDto, RegisterAgentResponseDto, RegisterClubDto, RegisterClubResponseDto, RegisterPushDeviceDto, ReportGenerationStartResponseDto, ReportPlayerCandidateBboxDto, ReportPlayerCandidateDto, ReportPlayerCandidatesRequestDto, ReportPlayerCandidatesResponseDto, ReportPlayerCandidateTargetDto, ReportPrerequisiteDto, ReportPurchaseDto, ReportPurchaseHistoryItemDto, ReportPurchaseHistoryResponseDto, ReportPurchaseStatusResponseDto, ReportVideoCandidatesDto, ScoutDashboardResponseDto, SendInvitationRequestDto, SendMessageDto, SmileLinkRequestDto, SmileLinkResponseDto, StartKycRequestDto, StartKycResponseDto, StartReportGenerationClipDto, StartReportGenerationRequestDto, StorePurchaseSyncRequestDto, SubscriptionPlanDto, TacticalReasonDto, TrainingAdminContentDto, TrainingAdminContentStatusDto, TrainingAdminCreateContentInputDto, TrainingAdminLookupItemDto, TrainingAdminLookupsDto, TrainingAdminUpdateContentInputDto, TrainingCategoryGroupDto, TrainingContentDetailDto, TrainingContentListItemDto, TrainingMediaTypeDto, UpdateClubDto, UpdateNotificationPreferencesDto, UpdateOrganizationDto, UpdatePlayerDto, UpdateProfileDto, UploadUrlResponseDto, UserAchievementResponseDto, VideoAttributeScoresDto, VideoLinkResponseDto, VideoMetricsMeResponseDto, VideoMetricsPhysicalMetricsDto, VideoResponseDto, WatchingOrgDto, WebhookPartnerParamsDto, } from './types.gen.js';
|
|
3
3
|
export { client, type CreateClientConfig } from './client.gen.js';
|
|
4
4
|
export type { GetApiOffersConversationsData as GetOffersConversationsData } from './types.gen.js';
|
package/dist/types.gen.d.ts
CHANGED
|
@@ -388,11 +388,125 @@ export type MeasurementSessionMetricsDto = {
|
|
|
388
388
|
femurToTibiaRatio?: number | null;
|
|
389
389
|
shoulderToHipRatio?: number | null;
|
|
390
390
|
};
|
|
391
|
+
export type DeclaredPositionDto = {
|
|
392
|
+
code: string;
|
|
393
|
+
name: string;
|
|
394
|
+
category?: string | null;
|
|
395
|
+
positionTypeCode?: string | null;
|
|
396
|
+
};
|
|
397
|
+
export type BiomechanicalPositionDto = {
|
|
398
|
+
code: string;
|
|
399
|
+
name: string;
|
|
400
|
+
category?: string | null;
|
|
401
|
+
voteWeight?: number | null;
|
|
402
|
+
triggeredTagKeys?: Array<string>;
|
|
403
|
+
};
|
|
404
|
+
export type TacticalReasonDto = {
|
|
405
|
+
tagKey: string;
|
|
406
|
+
positionCode: string;
|
|
407
|
+
tacticalReasoning: string;
|
|
408
|
+
};
|
|
409
|
+
export type BiomechanicalAlignmentDto = {
|
|
410
|
+
/**
|
|
411
|
+
* Scenario key: match | wildcard | partial_match
|
|
412
|
+
*/
|
|
413
|
+
scenario?: string | null;
|
|
414
|
+
tone?: string | null;
|
|
415
|
+
/**
|
|
416
|
+
* Display label, e.g. "Unorthodox Matchup"
|
|
417
|
+
*/
|
|
418
|
+
statusLabel?: string | null;
|
|
419
|
+
declaredPrimary?: DeclaredPositionDto | null;
|
|
420
|
+
declaredSecondary?: Array<DeclaredPositionDto>;
|
|
421
|
+
/**
|
|
422
|
+
* Tag keys that fired for this player
|
|
423
|
+
*/
|
|
424
|
+
triggeredTagKeys?: Array<string>;
|
|
425
|
+
/**
|
|
426
|
+
* Positions that match the declared primary position
|
|
427
|
+
*/
|
|
428
|
+
matchedPositions?: Array<BiomechanicalPositionDto>;
|
|
429
|
+
/**
|
|
430
|
+
* Alternative positions when declared position has no match
|
|
431
|
+
*/
|
|
432
|
+
alternativePositions?: Array<BiomechanicalPositionDto>;
|
|
433
|
+
/**
|
|
434
|
+
* Full ranked list of recommended positions
|
|
435
|
+
*/
|
|
436
|
+
recommendedPositions?: Array<BiomechanicalPositionDto>;
|
|
437
|
+
tacticalReasons?: Array<TacticalReasonDto>;
|
|
438
|
+
};
|
|
391
439
|
export type MeasurementTagEvaluationDto = {
|
|
392
440
|
key?: string;
|
|
393
441
|
status?: string;
|
|
394
442
|
label?: string;
|
|
395
443
|
};
|
|
444
|
+
export type QualitySummaryDto = {
|
|
445
|
+
/**
|
|
446
|
+
* Body quality: usable | limited | unusable
|
|
447
|
+
*/
|
|
448
|
+
bodyOverallStatus?: string | null;
|
|
449
|
+
missingMetrics?: Array<string>;
|
|
450
|
+
/**
|
|
451
|
+
* CMJ quality tier: good | acceptable | poor
|
|
452
|
+
*/
|
|
453
|
+
jumpQualityTier?: string | null;
|
|
454
|
+
};
|
|
455
|
+
export type PlayerDisplayTagDto = {
|
|
456
|
+
/**
|
|
457
|
+
* Unique tag key, e.g. low_center_of_gravity_agile_core
|
|
458
|
+
*/
|
|
459
|
+
tagKey: string;
|
|
460
|
+
/**
|
|
461
|
+
* Human-readable label
|
|
462
|
+
*/
|
|
463
|
+
label: string;
|
|
464
|
+
/**
|
|
465
|
+
* Full descriptive copy for the trait
|
|
466
|
+
*/
|
|
467
|
+
copy: string;
|
|
468
|
+
/**
|
|
469
|
+
* Trait category group
|
|
470
|
+
*/
|
|
471
|
+
category?: string | null;
|
|
472
|
+
/**
|
|
473
|
+
* Whether this tag was triggered for the player
|
|
474
|
+
*/
|
|
475
|
+
checked: boolean;
|
|
476
|
+
};
|
|
477
|
+
export type PlayerDisplayPositionDto = {
|
|
478
|
+
code: string;
|
|
479
|
+
name: string;
|
|
480
|
+
category?: string | null;
|
|
481
|
+
positionTypeCode?: string | null;
|
|
482
|
+
voteWeight?: number | null;
|
|
483
|
+
triggeredTagKeys?: Array<string>;
|
|
484
|
+
};
|
|
485
|
+
export type PlayerDisplayBiomechanicalAlignmentDto = {
|
|
486
|
+
/**
|
|
487
|
+
* Narrative description paragraph
|
|
488
|
+
*/
|
|
489
|
+
body?: string | null;
|
|
490
|
+
tone?: string | null;
|
|
491
|
+
/**
|
|
492
|
+
* Short headline, e.g. "Unique edge for your role"
|
|
493
|
+
*/
|
|
494
|
+
headline?: string | null;
|
|
495
|
+
/**
|
|
496
|
+
* Status label, e.g. "Unorthodox Matchup"
|
|
497
|
+
*/
|
|
498
|
+
statusLabel?: string | null;
|
|
499
|
+
/**
|
|
500
|
+
* Label for the supporting positions list
|
|
501
|
+
*/
|
|
502
|
+
supportingLabel?: string | null;
|
|
503
|
+
primaryPosition?: PlayerDisplayPositionDto | null;
|
|
504
|
+
supportingPositions?: Array<PlayerDisplayPositionDto>;
|
|
505
|
+
};
|
|
506
|
+
export type PlayerDisplayDto = {
|
|
507
|
+
tags?: Array<PlayerDisplayTagDto>;
|
|
508
|
+
biomechanicalAlignment?: PlayerDisplayBiomechanicalAlignmentDto | null;
|
|
509
|
+
};
|
|
396
510
|
export type MeasurementSessionDto = {
|
|
397
511
|
id: string;
|
|
398
512
|
bodyMeasurementId: string;
|
|
@@ -405,18 +519,12 @@ export type MeasurementSessionDto = {
|
|
|
405
519
|
declaredPositions?: {
|
|
406
520
|
[key: string]: unknown;
|
|
407
521
|
};
|
|
408
|
-
biomechanicalAlignment?:
|
|
409
|
-
[key: string]: unknown;
|
|
410
|
-
};
|
|
522
|
+
biomechanicalAlignment?: BiomechanicalAlignmentDto | null;
|
|
411
523
|
biomechanicalAlignmentCopyKeys?: Array<string>;
|
|
412
524
|
checkedTagKeys?: Array<string>;
|
|
413
525
|
tagEvaluations?: Array<MeasurementTagEvaluationDto>;
|
|
414
|
-
qualitySummary?:
|
|
415
|
-
|
|
416
|
-
};
|
|
417
|
-
playerDisplay?: {
|
|
418
|
-
[key: string]: unknown;
|
|
419
|
-
};
|
|
526
|
+
qualitySummary?: QualitySummaryDto | null;
|
|
527
|
+
playerDisplay?: PlayerDisplayDto | null;
|
|
420
528
|
scoutDisplay?: {
|
|
421
529
|
[key: string]: unknown;
|
|
422
530
|
};
|
|
@@ -462,10 +570,48 @@ export type PlayerReportViewDto = {
|
|
|
462
570
|
tacticalPillar: string;
|
|
463
571
|
mentalPillar: string;
|
|
464
572
|
};
|
|
573
|
+
export type VideoAttributeScoresDto = {
|
|
574
|
+
/**
|
|
575
|
+
* Technical score 0–10
|
|
576
|
+
*/
|
|
577
|
+
technical: number;
|
|
578
|
+
/**
|
|
579
|
+
* Tactical score 0–10
|
|
580
|
+
*/
|
|
581
|
+
tactical: number;
|
|
582
|
+
/**
|
|
583
|
+
* Physical score 0–10
|
|
584
|
+
*/
|
|
585
|
+
physical: number;
|
|
586
|
+
/**
|
|
587
|
+
* Mental score 0–10
|
|
588
|
+
*/
|
|
589
|
+
mental: number;
|
|
590
|
+
/**
|
|
591
|
+
* Creative score 0–10
|
|
592
|
+
*/
|
|
593
|
+
creative: number;
|
|
594
|
+
};
|
|
595
|
+
export type ImprovementAreaDto = {
|
|
596
|
+
/**
|
|
597
|
+
* Short label for the focus area
|
|
598
|
+
*/
|
|
599
|
+
label: string;
|
|
600
|
+
/**
|
|
601
|
+
* Detailed observation and recommendation
|
|
602
|
+
*/
|
|
603
|
+
observation: string;
|
|
604
|
+
};
|
|
465
605
|
export type PlayerReportResponseDto = {
|
|
466
606
|
reportReferenceId: string;
|
|
467
607
|
generatedAt?: string | null;
|
|
468
608
|
scouterView: PlayerReportViewDto;
|
|
609
|
+
attributeScores?: VideoAttributeScoresDto | null;
|
|
610
|
+
/**
|
|
611
|
+
* Overall video score 0–10
|
|
612
|
+
*/
|
|
613
|
+
gsiScore?: number | null;
|
|
614
|
+
improvementAreas?: Array<ImprovementAreaDto>;
|
|
469
615
|
};
|
|
470
616
|
export type PlayerClubDto = {
|
|
471
617
|
clubName: string;
|
package/index.ts
CHANGED
|
@@ -59,6 +59,8 @@ export type {
|
|
|
59
59
|
BillingProductDto,
|
|
60
60
|
BillingProductsResponseDto,
|
|
61
61
|
BillingProviderProductDto,
|
|
62
|
+
BiomechanicalAlignmentDto,
|
|
63
|
+
BiomechanicalPositionDto,
|
|
62
64
|
BodyMeasurementProfileDto,
|
|
63
65
|
BodyMeasurementResponseDto,
|
|
64
66
|
CancelKycRequestDto,
|
|
@@ -89,6 +91,7 @@ export type {
|
|
|
89
91
|
DashboardStatsDto,
|
|
90
92
|
DashboardVideoCardDto,
|
|
91
93
|
DeactivatePushDeviceDto,
|
|
94
|
+
DeclaredPositionDto,
|
|
92
95
|
DeleteApiClubsMeByIdData,
|
|
93
96
|
DeleteApiClubsMeByIdErrors,
|
|
94
97
|
DeleteApiClubsMeByIdResponse,
|
|
@@ -293,6 +296,7 @@ export type {
|
|
|
293
296
|
GetApiVideosMeResponses,
|
|
294
297
|
HeartbeatDto,
|
|
295
298
|
HeartbeatResponseDto,
|
|
299
|
+
ImprovementAreaDto,
|
|
296
300
|
IndexItemDto,
|
|
297
301
|
InvitationResponseDto,
|
|
298
302
|
KycStatusDto,
|
|
@@ -333,6 +337,10 @@ export type {
|
|
|
333
337
|
PlayerAchievementDto,
|
|
334
338
|
PlayerByIdDto,
|
|
335
339
|
PlayerClubDto,
|
|
340
|
+
PlayerDisplayBiomechanicalAlignmentDto,
|
|
341
|
+
PlayerDisplayDto,
|
|
342
|
+
PlayerDisplayPositionDto,
|
|
343
|
+
PlayerDisplayTagDto,
|
|
336
344
|
PlayerReportResponseDto,
|
|
337
345
|
PlayerReportViewDto,
|
|
338
346
|
PlayerResponseDto,
|
|
@@ -471,6 +479,7 @@ export type {
|
|
|
471
479
|
PutApiProfileMeErrors,
|
|
472
480
|
PutApiProfileMeResponse,
|
|
473
481
|
PutApiProfileMeResponses,
|
|
482
|
+
QualitySummaryDto,
|
|
474
483
|
RedeemAccessCodeDto,
|
|
475
484
|
RegisterAgentDto,
|
|
476
485
|
RegisterAgentResponseDto,
|
|
@@ -500,6 +509,7 @@ export type {
|
|
|
500
509
|
StartReportGenerationRequestDto,
|
|
501
510
|
StorePurchaseSyncRequestDto,
|
|
502
511
|
SubscriptionPlanDto,
|
|
512
|
+
TacticalReasonDto,
|
|
503
513
|
TrainingAdminContentDto,
|
|
504
514
|
TrainingAdminContentStatusDto,
|
|
505
515
|
TrainingAdminCreateContentInputDto,
|
|
@@ -517,6 +527,7 @@ export type {
|
|
|
517
527
|
UpdateProfileDto,
|
|
518
528
|
UploadUrlResponseDto,
|
|
519
529
|
UserAchievementResponseDto,
|
|
530
|
+
VideoAttributeScoresDto,
|
|
520
531
|
VideoLinkResponseDto,
|
|
521
532
|
VideoMetricsMeResponseDto,
|
|
522
533
|
VideoMetricsPhysicalMetricsDto,
|
package/package.json
CHANGED
package/types.gen.ts
CHANGED
|
@@ -417,12 +417,135 @@ export type MeasurementSessionMetricsDto = {
|
|
|
417
417
|
shoulderToHipRatio?: number | null;
|
|
418
418
|
};
|
|
419
419
|
|
|
420
|
+
export type DeclaredPositionDto = {
|
|
421
|
+
code: string;
|
|
422
|
+
name: string;
|
|
423
|
+
category?: string | null;
|
|
424
|
+
positionTypeCode?: string | null;
|
|
425
|
+
};
|
|
426
|
+
|
|
427
|
+
export type BiomechanicalPositionDto = {
|
|
428
|
+
code: string;
|
|
429
|
+
name: string;
|
|
430
|
+
category?: string | null;
|
|
431
|
+
voteWeight?: number | null;
|
|
432
|
+
triggeredTagKeys?: Array<string>;
|
|
433
|
+
};
|
|
434
|
+
|
|
435
|
+
export type TacticalReasonDto = {
|
|
436
|
+
tagKey: string;
|
|
437
|
+
positionCode: string;
|
|
438
|
+
tacticalReasoning: string;
|
|
439
|
+
};
|
|
440
|
+
|
|
441
|
+
export type BiomechanicalAlignmentDto = {
|
|
442
|
+
/**
|
|
443
|
+
* Scenario key: match | wildcard | partial_match
|
|
444
|
+
*/
|
|
445
|
+
scenario?: string | null;
|
|
446
|
+
tone?: string | null;
|
|
447
|
+
/**
|
|
448
|
+
* Display label, e.g. "Unorthodox Matchup"
|
|
449
|
+
*/
|
|
450
|
+
statusLabel?: string | null;
|
|
451
|
+
declaredPrimary?: DeclaredPositionDto | null;
|
|
452
|
+
declaredSecondary?: Array<DeclaredPositionDto>;
|
|
453
|
+
/**
|
|
454
|
+
* Tag keys that fired for this player
|
|
455
|
+
*/
|
|
456
|
+
triggeredTagKeys?: Array<string>;
|
|
457
|
+
/**
|
|
458
|
+
* Positions that match the declared primary position
|
|
459
|
+
*/
|
|
460
|
+
matchedPositions?: Array<BiomechanicalPositionDto>;
|
|
461
|
+
/**
|
|
462
|
+
* Alternative positions when declared position has no match
|
|
463
|
+
*/
|
|
464
|
+
alternativePositions?: Array<BiomechanicalPositionDto>;
|
|
465
|
+
/**
|
|
466
|
+
* Full ranked list of recommended positions
|
|
467
|
+
*/
|
|
468
|
+
recommendedPositions?: Array<BiomechanicalPositionDto>;
|
|
469
|
+
tacticalReasons?: Array<TacticalReasonDto>;
|
|
470
|
+
};
|
|
471
|
+
|
|
420
472
|
export type MeasurementTagEvaluationDto = {
|
|
421
473
|
key?: string;
|
|
422
474
|
status?: string;
|
|
423
475
|
label?: string;
|
|
424
476
|
};
|
|
425
477
|
|
|
478
|
+
export type QualitySummaryDto = {
|
|
479
|
+
/**
|
|
480
|
+
* Body quality: usable | limited | unusable
|
|
481
|
+
*/
|
|
482
|
+
bodyOverallStatus?: string | null;
|
|
483
|
+
missingMetrics?: Array<string>;
|
|
484
|
+
/**
|
|
485
|
+
* CMJ quality tier: good | acceptable | poor
|
|
486
|
+
*/
|
|
487
|
+
jumpQualityTier?: string | null;
|
|
488
|
+
};
|
|
489
|
+
|
|
490
|
+
export type PlayerDisplayTagDto = {
|
|
491
|
+
/**
|
|
492
|
+
* Unique tag key, e.g. low_center_of_gravity_agile_core
|
|
493
|
+
*/
|
|
494
|
+
tagKey: string;
|
|
495
|
+
/**
|
|
496
|
+
* Human-readable label
|
|
497
|
+
*/
|
|
498
|
+
label: string;
|
|
499
|
+
/**
|
|
500
|
+
* Full descriptive copy for the trait
|
|
501
|
+
*/
|
|
502
|
+
copy: string;
|
|
503
|
+
/**
|
|
504
|
+
* Trait category group
|
|
505
|
+
*/
|
|
506
|
+
category?: string | null;
|
|
507
|
+
/**
|
|
508
|
+
* Whether this tag was triggered for the player
|
|
509
|
+
*/
|
|
510
|
+
checked: boolean;
|
|
511
|
+
};
|
|
512
|
+
|
|
513
|
+
export type PlayerDisplayPositionDto = {
|
|
514
|
+
code: string;
|
|
515
|
+
name: string;
|
|
516
|
+
category?: string | null;
|
|
517
|
+
positionTypeCode?: string | null;
|
|
518
|
+
voteWeight?: number | null;
|
|
519
|
+
triggeredTagKeys?: Array<string>;
|
|
520
|
+
};
|
|
521
|
+
|
|
522
|
+
export type PlayerDisplayBiomechanicalAlignmentDto = {
|
|
523
|
+
/**
|
|
524
|
+
* Narrative description paragraph
|
|
525
|
+
*/
|
|
526
|
+
body?: string | null;
|
|
527
|
+
tone?: string | null;
|
|
528
|
+
/**
|
|
529
|
+
* Short headline, e.g. "Unique edge for your role"
|
|
530
|
+
*/
|
|
531
|
+
headline?: string | null;
|
|
532
|
+
/**
|
|
533
|
+
* Status label, e.g. "Unorthodox Matchup"
|
|
534
|
+
*/
|
|
535
|
+
statusLabel?: string | null;
|
|
536
|
+
/**
|
|
537
|
+
* Label for the supporting positions list
|
|
538
|
+
*/
|
|
539
|
+
supportingLabel?: string | null;
|
|
540
|
+
primaryPosition?: PlayerDisplayPositionDto | null;
|
|
541
|
+
supportingPositions?: Array<PlayerDisplayPositionDto>;
|
|
542
|
+
};
|
|
543
|
+
|
|
544
|
+
export type PlayerDisplayDto = {
|
|
545
|
+
tags?: Array<PlayerDisplayTagDto>;
|
|
546
|
+
biomechanicalAlignment?: PlayerDisplayBiomechanicalAlignmentDto | null;
|
|
547
|
+
};
|
|
548
|
+
|
|
426
549
|
export type MeasurementSessionDto = {
|
|
427
550
|
id: string;
|
|
428
551
|
bodyMeasurementId: string;
|
|
@@ -435,18 +558,12 @@ export type MeasurementSessionDto = {
|
|
|
435
558
|
declaredPositions?: {
|
|
436
559
|
[key: string]: unknown;
|
|
437
560
|
};
|
|
438
|
-
biomechanicalAlignment?:
|
|
439
|
-
[key: string]: unknown;
|
|
440
|
-
};
|
|
561
|
+
biomechanicalAlignment?: BiomechanicalAlignmentDto | null;
|
|
441
562
|
biomechanicalAlignmentCopyKeys?: Array<string>;
|
|
442
563
|
checkedTagKeys?: Array<string>;
|
|
443
564
|
tagEvaluations?: Array<MeasurementTagEvaluationDto>;
|
|
444
|
-
qualitySummary?:
|
|
445
|
-
|
|
446
|
-
};
|
|
447
|
-
playerDisplay?: {
|
|
448
|
-
[key: string]: unknown;
|
|
449
|
-
};
|
|
565
|
+
qualitySummary?: QualitySummaryDto | null;
|
|
566
|
+
playerDisplay?: PlayerDisplayDto | null;
|
|
450
567
|
scoutDisplay?: {
|
|
451
568
|
[key: string]: unknown;
|
|
452
569
|
};
|
|
@@ -497,10 +614,50 @@ export type PlayerReportViewDto = {
|
|
|
497
614
|
mentalPillar: string;
|
|
498
615
|
};
|
|
499
616
|
|
|
617
|
+
export type VideoAttributeScoresDto = {
|
|
618
|
+
/**
|
|
619
|
+
* Technical score 0–10
|
|
620
|
+
*/
|
|
621
|
+
technical: number;
|
|
622
|
+
/**
|
|
623
|
+
* Tactical score 0–10
|
|
624
|
+
*/
|
|
625
|
+
tactical: number;
|
|
626
|
+
/**
|
|
627
|
+
* Physical score 0–10
|
|
628
|
+
*/
|
|
629
|
+
physical: number;
|
|
630
|
+
/**
|
|
631
|
+
* Mental score 0–10
|
|
632
|
+
*/
|
|
633
|
+
mental: number;
|
|
634
|
+
/**
|
|
635
|
+
* Creative score 0–10
|
|
636
|
+
*/
|
|
637
|
+
creative: number;
|
|
638
|
+
};
|
|
639
|
+
|
|
640
|
+
export type ImprovementAreaDto = {
|
|
641
|
+
/**
|
|
642
|
+
* Short label for the focus area
|
|
643
|
+
*/
|
|
644
|
+
label: string;
|
|
645
|
+
/**
|
|
646
|
+
* Detailed observation and recommendation
|
|
647
|
+
*/
|
|
648
|
+
observation: string;
|
|
649
|
+
};
|
|
650
|
+
|
|
500
651
|
export type PlayerReportResponseDto = {
|
|
501
652
|
reportReferenceId: string;
|
|
502
653
|
generatedAt?: string | null;
|
|
503
654
|
scouterView: PlayerReportViewDto;
|
|
655
|
+
attributeScores?: VideoAttributeScoresDto | null;
|
|
656
|
+
/**
|
|
657
|
+
* Overall video score 0–10
|
|
658
|
+
*/
|
|
659
|
+
gsiScore?: number | null;
|
|
660
|
+
improvementAreas?: Array<ImprovementAreaDto>;
|
|
504
661
|
};
|
|
505
662
|
|
|
506
663
|
export type PlayerClubDto = {
|