Before You Start
You need:- A bucket you control
- A signing region
- An access key ID
- The matching secret access key
- Optionally, a custom endpoint for MinIO or another S3-compatible service
Add The Destination In HealthPush
- Open
Destinations. - Add
S3-Compatible Storage. - Enter a display name.
- Enter the bucket name.
- Leave the endpoint blank for AWS S3, or enter a custom endpoint such as
https://s3.example.comorhttp://192.168.1.10:9000. - Choose or enter the signing region.
- Enter the access key ID and secret key.
- Optionally set a path prefix such as
health/data. - Choose
JSONorCSV. - Choose how often this destination should sync.
- Choose how far back the first full sync should start.
- Choose the health metrics you want to export.
- Tap
Test Connection. - Save the destination.
Sync Window Behavior
S3 has two phases:- First sync: HealthPush can backfill from the start date you choose.
- Later syncs: HealthPush re-checks the last 3 days to catch delayed HealthKit data and merge it safely.
File Layout
The app stores files under the path prefix you choose, or at the bucket root if you leave it blank. Example shape:Security Notes
- Credentials are stored on-device in Keychain.
- HealthPush does not proxy or retain your exported files.
- Bucket permissions are your responsibility. Use the narrowest permissions that still allow read and upload.
Troubleshooting
- If the test fails, confirm bucket name, region, credentials, and custom endpoint if you entered one.
- If sync succeeds but files are not where you expect, check the configured path prefix.
- If you expected near-real-time uploads, review How Sync Really Works because iOS may delay unattended runs.