Author
Full name
Job title, Company name
-min.jpg)
The wearable technology market reached $84.2 billion in 2024 and is expected to continue growing as specialized devices gain popularity. Health-conscious users are also increasingly adopting multiple wearables for different purposes, such as a smart ring for sleep tracking alongside an Apple Watch for daytime activity, or a Fitbit that syncs to an iPhone to independently track steps and metrics. This multi-device approach creates a hidden technical challenge for fitness apps: duplicate wearable data that makes accurate health insights nearly impossible.
This isn't just a hypothetical scenario. As Spike's engineering team explains, when working with developers on Spike Wearables API integration, duplicate data occurs whenever wearable device APIs sync to aggregator platforms like Apple Health or Android HealthConnect. Bundle ID filtering solves this by identifying the true source of each data point.
Apple Health and Android HealthConnect serve as powerful aggregators. However, they create a specific technical challenge that the Spike engineering team regularly helps developers solve: they accept data from multiple sources without automatic deduplication.
Here's a common scenario from wearables implementations:
A user has both an Oura Ring and an Apple Watch. Smart rings are specifically designed for comfortable sleep tracking and are popular for female health insights, while users prefer smartwatches during the day for accurate fitness tracking. Both devices track the same sleep session. The Oura app syncs its data to Apple Health. The Apple Watch writes directly to Apple Health. When your fitness tracker API pulls sleep data, you receive two complete sessions for the same night.
The pattern repeats with heart rate data, step counts, and workout sessions, leaving you with overlapping measurements sampled at different frequencies from both activity tracker APIs.
Kestutis Dalinkevicius, Head of Engineering at Spike, explains: "When the provider's data is synced to Apple Health or HealthConnect, then on top of that, some original data is recorded, all of it is returned as one huge bucket. It might be hard to decipher what's what."
This creates three problems for your wearable integration:
Inflated metrics: Steps and calories get double-counted when multiple devices track the same activity.
Conflicting insights: Two sleep sessions with different durations for the same night make accurate analysis impossible.
User confusion: Duplicate data damages trust in your app's accuracy.
A bundle ID is the unique identifier assigned to every app in the Apple App Store or Google Play Store. It's cryptographically signed and cannot be changed, making it reliable for wearables data attribution.
When Spike Wearables API pulls data from HealthConnect or Apple HealthKit, responses include three key identifiers that solve the duplicate data problem: provider_slug (where Spike retrieved data), source_bundle_identifier (the app that originally wrote it), and source_device_manufacturer (the hardware brand).
This distinction is critical. A workout might show provider_slug: "health_connect" but source_bundle_identifier: "com.fitbit.fitbitmobile", revealing it is Garmin writing data to Health Connect, not Google's native tracking.
Bundle ID filtering in your wearable API integration provides strategic capabilities:
Data deduplication across multiple wearables: If you offer both direct Fitbit or any other wearable integration, and HealthConnect access, some users enable both. Bundle ID filtering identifies when HealthConnect data originated from Fitbit, letting you filter duplicates.
Data quality: Direct wearable device API integrations provide better data quality than aggregators. Bundle ID filtering lets you prioritize direct integration data and assess quality by identifying aggregator data sources.
Data validation: Knowing the source bundle ID helps validate whether wearable data makes sense, catching quality issues before they influence analytics.
Spike engineering team consistently recommends prioritizing direct wearable integration over aggregator platforms for three technical reasons:
However, not all wearables offer direct integration. Smaller manufacturers often only sync through HealthConnect or Apple Health, making bundle ID filtering essential for supporting these devices without sacrificing data quality.
Spike API exposes bundle ID information in every data response from HealthConnect and Apple Health integrations. You don't need to parse proprietary formats. Spike handles extracting and normalizing bundle IDs across both Android and iOS wearable integrations. The filtering logic runs on your backend, where you compare bundle IDs against your supported sources and apply deduplication before storing wearables data.
Build a bundle ID map of known identifiers, set up a priority hierarchy favoring direct integrations, deduplicate by timestamp, and monitor for unexpected identifiers.
Spike Wearables API provides access to 500+ devices. Where direct integrations are impossible, we provide bundle ID information for all HealthConnect and Apple Health; no special configuration is needed on your end. All clients also receive help from a dedicated implementation engineer to set everything up.
If you're building a health, fitness, sleep, or wellness app that needs to handle multiple wearables without duplicate data issues, Spike Wearables API makes it straightforward.
Book a demo to discuss your needs or explore our documentation to start your wearables API integration today.
A wearables API is an interface that enables applications to connect with and retrieve data from wearable devices like fitness trackers and smartwatches. These APIs facilitate wearable data integration, allowing apps to access information such as heart rate, steps, and sleep patterns from multiple devices.
Bundle ID filtering reveals which app created the wearables data. If you receive the same workout through both a direct integration and through HealthConnect, where the wearable also syncs, the bundle identifier lets you identify and remove the duplicate from your wearable API.
Provider_slug shows where Spike Wearables API retrieved the data from (e.g., "health_connect"), while bundle ID shows which app originally wrote the wearable data (e.g., "com.fitbit.fitbitmobile"). This distinction helps identify data that came through aggregators in your wearable device API.
Direct wearable device API integrations provide faster data, better quality, and simpler deduplication. Use aggregator platforms as a fallback for wearables without direct APIs or when users prefer syncing through native health apps for their fitness tracker API.
Spike API provides bundle ID information with every data response from HealthConnect and Apple Health through our wearables integration. You implement the filtering logic on your backend based on your app's requirements for wearable data deduplication.