mirror of
https://github.com/sstent/FitTrack_GarminSync.git
synced 2026-01-25 16:41:41 +00:00
62 lines
1.6 KiB
Markdown
62 lines
1.6 KiB
Markdown
# FitTrack Garmin Sync Backend
|
|
|
|
This project provides a backend service for synchronizing fitness data from Garmin Connect.
|
|
|
|
## Getting Started
|
|
|
|
...
|
|
|
|
## Garmin Authentication
|
|
|
|
To enable Garmin synchronization, you need to link your Garmin Connect account with this service. This is done via a dedicated login endpoint.
|
|
|
|
### 1. Link your Garmin Account
|
|
|
|
Send a `POST` request to the `/api/garmin/login` endpoint with your Garmin Connect username (email) and password.
|
|
|
|
**Endpoint**: `POST /api/garmin/login`
|
|
|
|
**Request Body (JSON)**:
|
|
|
|
```json
|
|
{
|
|
"username": "your_garmin_email@example.com",
|
|
"password": "your_garmin_password"
|
|
}
|
|
```
|
|
|
|
**Example using `curl`**:
|
|
|
|
```bash
|
|
curl -X POST \
|
|
http://localhost:8000/api/garmin/login \
|
|
-H 'Content-Type: application/json' \
|
|
-d
|
|
{
|
|
"username": "your_garmin_email@example.com",
|
|
"password": "your_garmin_password"
|
|
}
|
|
```
|
|
|
|
**Success Response (200 OK)**:
|
|
|
|
```json
|
|
{
|
|
"message": "Garmin account linked successfully."
|
|
}
|
|
```
|
|
|
|
**Error Response (401 Unauthorized)**:
|
|
|
|
```json
|
|
{
|
|
"detail": "Invalid Garmin credentials provided."
|
|
}
|
|
```
|
|
|
|
Upon successful login, your Garmin credentials and authentication tokens will be stored in the system. The system will handle token refreshes automatically to maintain continuous synchronization.
|
|
|
|
### 2. Subsequent Synchronization
|
|
|
|
Once linked, other Garmin synchronization endpoints (e.g., for activities, health metrics) will automatically use the stored and refreshed credentials to access your Garmin data. **These subsequent synchronization calls do not require any additional authentication headers from the client.**
|