movepacketDocs
Docs / Technical reference

Start with your athletes’ data.

MovePacket is being built for independent coaches and small coaching businesses that want reliable access to the data of the athletes they actually coach. The goal is athlete-authorised connections, supported history and dependable delivery of new activities.

Data Connect currently accepts authorised FIT uploads, including batch FIT/FIT.GZ imports in enabled workspaces. It does not connect provider accounts, invite athletes, import a coaching roster or automatically synchronise activity history. These data tools are not enabled by default in the customer trial. For broader service connections, see Integrations.

One data layer for your software#

Your dashboard's default source is MovePacket Data Connect. Uploads and future supported provider adapters feed this layer; applications consume authorised MovePacket APIs. A provider is an intake source, not a separate database connection each dashboard should build. SEMIPRO.coach is a reference application, not a default customer data source.

A project builder connection is separate from athlete-data access. It does not automatically authorise the shared athlete library. Inspect the project's capabilities and confirm the appropriate data grant and server-side access before showing real athlete data. Start by choosing athletes and a date range, or importing authorised files, rather than selecting a direct provider integration. See Build with AI.

Bring an activity today#

  1. Obtain an original FIT activity file through an export you are authorised to use. Available exports depend on the device or platform.
  2. Import it with Data → Import rides, or upload it through the API quickstart.
  3. Follow its processing status, then retrieve the decoded data and unchanged original.
  4. Once it is ready, open the activity from Data. Source and parser details shows its decoder details and recording checksum, and Original file downloads the unchanged original.

Only supported FIT activity files are accepted, up to 4 MiB each. A source brand being listed on the website does not mean its account is connected or that every export it produces is supported. See activity limits.

Upload only files you have permission to process. The legacy single-file activity API is workspace-scoped. The bulk-import recording API supports explicit athlete assignment and athlete-specific read grants, described below. Assignment does not verify the athlete's identity or create an athlete login; your application's end-user permissions remain a separate requirement.

Existing coaching platforms#

You can test MovePacket with an authorised original FIT export while retaining your existing coaching workflow. There is no TrainingPeaks account connection, coaching-roster import or historical sync in this release.

Do not share athlete passwords or use a coaching relationship as a substitute for permission to access another service. Any future platform adapter will require an authorised integration route. MovePacket is being designed to support multiple intake routes rather than depend on one coaching platform.

The connection experience we are building toward#

Step Required outcome Current status
Link an athlete Verify the athlete identity and the coaching relationship Planned
Authorise a source Athlete sees and grants the access being requested Planned
Bring history Import what the source supports; report coverage and gaps Manual FIT/FIT.GZ batches available in enabled workspaces; provider history sync planned
Receive new activities Track delivery, retry failures and surface reconnect needs Planned
Preserve the record Keep originals, identifiers, provenance and processing details Original FIT, checksum, receipt time, status and decoder metadata available; richer provenance planned
Control access Scope app permissions, revoke access and support retention/deletion Workspace authentication and athlete-scoped recording reads available; project builder keys do not automatically grant athlete-library access

Garmin, Wahoo, Karoo and COROS are initial candidate sources. Supported routes, historical coverage and launch order depend on authorised provider access and pilot needs. No launch date or universal compatibility is promised.

What a healthy connection should show#

A future connection should make the athlete and source clear, show when data last arrived, distinguish imported history from ongoing sync, and report missing periods or required action. A connected badge alone is not enough.

The beta’s activity status describes processing of an uploaded file. It is not a device-sync or source-freshness indicator.

Import a batch for an athlete#

In a workspace with data imports enabled, open Data → Import rides, choose an active athlete, record the permission context, and select FIT or FIT.GZ files. Each batch accepts up to 200 files (200 MiB total), with a 4 MiB limit for each source and expanded FIT file.

Uploads run three at a time. Files already uploaded keep processing if you leave. To resume files still on your computer, reopen the import and select them again. Results show each file separately, including duplicate recordings and failures. Originals remain available even when parsing fails.

Bulk recordings appear on the athlete profile and in the combined activity library, alongside legacy single-file activities. Download their original files or full decoded data from the record. Archiving preserves imported files; profile-only deletion is blocked while an import history exists.

For a builder, GET /v1/recordings?athlete_id=ath_… returns up to 50 records and a has_more flag; use offset for subsequent pages. GET /v1/recordings/rec_… returns summary metadata, /original returns the first uploaded source (FIT or FIT.GZ), and /data returns full decoded messages. Use your existing server-side API credential. Workspace access and athlete-specific read grants apply; bulk import writes require the signed-in workspace.

Import files into MovePacket#

Open Data → Import rides to choose or create an athlete and drop FIT or FIT.GZ files. Record the permission and purpose for keeping them. Processing and file-level results remain available after you leave; reselect waiting files to resume an interrupted upload. This uses an active paid workspace and the existing source/recording pipeline. ZIP archives and provider-account sync are separate, unavailable paths.

An owner-approved workspace connection can do the same through documented athlete/import commands, with separately enabled athlete creation, import permission and selected athletes. The per-Project Data Connect connection remains responsible for dashboard data access.

Your software. A managed foundation. MovePacket · Private beta
Search across the MovePacket guides · Esc to close