Changelog
Follow up on the latest improvements and updates.
RSS
ROOK is developing an optimization for Granular Data a new feature designed to provide clients with more detailed and standardized information.
Many companies working with health data require precise and consistent information. Until now, Granular Data from different sources arrived at varying times, leading to inconsistencies in analysis and making data-driven decision-making more challenging.
Greater control and standardization
Granular Data allows clients to customize the reception of information
- Temporal Standardization: Data from multiple sources is unified within the same time frame, preventing inconsistencies in user graphs and analyses.
- Personalized Management: Clients can choose to receive data as delivered by original sources or apply intelligent adjustments filling in missing data using averaging algorithms and AI for greater accuracy.
- Duplicate Elimination: When duplicate data is detected from different sources, the system prioritizes the most reliable and relevant information.
Impact on our Clients
With Granular Data, clients and their users will access more reliable health information, facilitating the development of innovative products and insights.
Our goal is to deliver more useful and accurate data, allowing clients to focus on what truly matters: Innovation and strategic decision-maker.
Frequently Asked Questions
What is Granular Data Standardization?
Granular Data Standardization is a ROOK feature that ensures data from various health sources (Such as Garmin, Apple Health, Health Connect) is aligned within a unified time frame, reducing empty values and duplicates for more consistent and reliable insights.
Why is Granular Data Standardization important?
Health data is received at different intervals and formats depending on the sources, leading to inconsistencies in analysis. Standardization ensures greater accuracy, making data easier to interpret and enhancing the end-user experience.
What are the Benefits of Granular Data Standardization for Clients?
- Temporal unification: Ensures data consistency for more reliable analysis.
- Duplicate Elimination: Removes redundant data from multiple sources.
- Customization Options: Allows clients to receive raw data or apply intelligent algorithms for enhanced accuracy.
How Does Temporal Standardization Work?
Temporal standardization adjusts data to arrive at a consistent interval. For instance, if one source sends data every 5 seconds and another every 20 seconds, intermediate values can be estimated using averaging or artificial intelligence algorithms.
Can Clients Choose How to Receive the Data?
Yes, Each client can choose whether to receive data as delivered by the original source or prefer it to be adjusted using standardization mechanisms and missing data filling techniques.
What Happens with Duplicate Data?
If a metric is received from multiple sources (E.g., Garmin And Apple Health), a priority criterion will be applied to select the most reliable one, preventing duplicates in the analysis.
What Types of Data Are Being Standardized?
Some of the data that has already been standardized includes:
- Physical Activity: Steps, distance traveled, activity level, cadence.
- Heart Rate and Variability: HR, HRV, RMSSD, HRV SDNN
- Oxygenation and Breathing: Oxygen saturation, VO2
- Other Metrics: Elevation, torque, speed and power.
What Happens If a Source Does Not Provide Data at the Same Interval as Others?
If a source sends data less frequently, imputation methods can be applied to fill based on averages and predictive algorithms.
How Is Granular Data Configured?
Clients interested in this solution should contact their Customer Success representative to request this feature. Please note that this feature comes with an additional cost beyond the client´s existing plan.
Does Granular Data Affect Data Processing Performance?
No, We have implemented optimizations to ensure that standardization does not slow down data processing, seamlessly integrating into existing pipelines.
What Happens with Null/Empty Information?
When searching for a consistent period in granular data, there may be cases where no data source contains the value corresponding to the generated timestamp.
In these cases, the client has 4 options:
- Mark the missing data as empty
- Fill the missing data using the last available
- Fill the missing data using the average of the neighborhood.
- Fill the missing data using the median of the neighborhood.
How Can I Get More Information About This Feature?
For more details, you can contact our support team.
ROOK takes a step forward in the accuracy and accessibility of physical activity data with the launch of Steps Event in API Based Data Sources, a new feature that enables hourly step event extraction directly from the API Based Data Sources. Until now, this capability was only available through SDK integration, leading to inconsistencies in data collection for clients relying exclusively on the API Based Data Sources.
Enhanced Accuracy and Smart Synchronization
This new functionality implements an advanced polling mechanism that queries each data source every hour, ensuring real-time data updates. Additionally, the system is optimized to respect each provider’s API rate limits, ensuring smooth and efficient integration.
Key Benefits of the New Steps Event API Based Data Sources:
- Real-time data: Step events are now recorded hourly, providing a more accurate view of physical activity.
- Smart synchronization: Avoids duplicate entries by consolidating data from multiple sources and always delivering the most precise value.
- Efficient querying strategy: Optimizes the frequency of requests to prevent service restrictions or API rate limitations from third-party platforms.
- Advanced error handling: Detects and manages failures in data extraction, ensuring uninterrupted service.
- Security and scalability: Built on a microservices-based infrastructure with secure protocols for credential and data management.
Receiving JSON only via Data Webhook
Below is a sample JSON payload delivered when receiving step event data through our Data Webhook:{
"version":2,
"data_structure":"steps_event",
"client_uuid":"client_uuid",
"user_id":"10053949724",
"document_version":1,
"auto_detected":false,
"physical_health":{
"events":{
"steps_event":[
{
"metadata":{
"datetime_string":"2025-02-27T21:29:26.747000+05:00",
"user_id_string":"10053949724",
"sources_of_data_array":[
"Apple Health"
],
"was_the_user_under_physical_activity_bool":false
},
"steps":{
"accumulated_steps_int":8546
},
"non_structured_data_array":[]
}
]
}
}
}
A Solution Designed to Scale
This enhancement not only improves data accuracy but also prepares ROOK’s infrastructure to support a growing user base without compromising performance. The microservices-based architecture and use of scalable technologies ensure that Steps Event in API Based Data Sources remains a robust and future-ready solution.
Frequently Asked Questions
What is Steps Event in API Based Data Sources?
Steps Event in API is a new feature that enables hourly step event extraction directly through the ROOK API, providing real-time access to users’ physical activity data.
Why is this functionality important?
Previously, step event data was only available via SDKs, leading to inconsistencies in data retrieval. With this update, the API now offers synchronized and precise information.
What is the difference between step extraction via API and via SDK?
SDKs: ROOK already extracts step data every hour from SDKs integrated with devices such as Apple Health and Health Connect.
API: With this new feature, the API can now extract step data hourly, aligning with the information obtained from SDKs.
How does the API collect step data?
ROOK’s API uses a polling mechanism that queries each data source every hour while ensuring API rate limits from each provider are not exceeded.
What happens if no data is available for a user at a given time?
If no step data is found in a query, the API will return the following structure with accumulated_steps_int set to 0:
{
"sources_of_data": "Apple Health",
"user_id": "pacoTestDev-000000ca",
"client_uuid": "000000ca-e4fe-47af-8ff6-187bca92f3f9",
"datetime": "2025-03-05T13:41:52.087-06:00",
"was_the_user_under_physical_activity": false,
"accumulated_steps_int": 0,
"data_type": "physical_steps_event",
"data_structure_version": "2",
"created_at": "2025-03-05T19:41:56.100339Z"
}
How does the API handle data duplication?
To prevent duplicate records, the following rules apply:
- If a user has multiple data sources, the highest step count value is sent.
- If the user has a null or zero value for the day, the last valid record is sent.
- If a new value is lower than the previous one, it is not sent, ensuring a continuous upward progression.
What data providers are compatible with Steps Event in API Based Data Sources?
ROOK currently supports integration with the following APIs:
- Garmin
- Oura
- Polar
- Withings
How are pre-existing step data handled?
Currently, the API only allows real-time step data extraction on an hourly basis. pre-existing data retrieval is not supported through this method, but users can access physical summaries for past data.
How can I start using Steps Event in API Based Data Sources?
To enable this feature, clients must validate their access with ROOK. For more details on integration, technical documentation, or support, please contact the ROOK support team.
This mobile application is designed to simplify user data extraction, primarily to facilitate SDK integration, optimizing the process for both users and clients. The application offers an automated way to collect health data and send it to the appropriate clients, who can then use the collected data, ensuring a quick and seamless integration.
How it works
The ROOK Extraction App works by scanning QR codes or using universal links provided by ROOK to authenticate their session, where users can easily connect their health kits (SDKs) and data sources to the app. Once connected, the app securely sends the extracted data to ROOK, allowing clients to enhance their digital platforms with health data from their own users. This minimizes the need for direct user interaction while ensuring that all relevant data is transmitted and processed in real-time.

Key Features of the ROOK Extraction App
- Seamless Health Data Extraction: The app captures health data from sources like Apple Health and Health Connect, transmitting it directly to client systems through ROOK webhooks.
- Health Score: ROOK Extraction App provides a simple health score to users who link to its data sources, which will be available upon receiving their first health summaries, whether current or past.
- Simple Interface: Users can easily connect their health kits using a QR code or a universal link and manage their connections through an intuitive interface.
- Multiplatform Availability: Available for both iOS and Android, accessible to users worldwide.
- Privacy: The app is developed with a focus on data security, allowing users to review and accept terms and conditions before proceeding with extraction.
- Background Data Extraction: The app operates in the background, ensuring a continuous data flow even when the app is not actively in use.
Availability
The ROOK Extraction App will be available on both the Google Play Store and Apple App Store. Users can also download the app by scanning a QR code or clicking a universal link provided by the client. During initial setup, users will be prompted to link their health data sources and start the extraction process with ease.
Learn more about ROOK Extraction App in our documentation.
Frequently Asked Questions
What does ROOK Extraction App do?
ROOK Extraction App is a mobile application that acts as an intermediary between the user and the client to facilitate the integration, especially of SDKs, of ROOKConnect. It allows users' health data to be extracted and delivered to clients so that they can quickly and easily use it for the benefit of their users. This app also provides a simple health score to users who link their data sources as they receive their health summaries.

Is there a cost for ROOK Extraction App?
ROOK Extraction App is an add-on product to ROOKConnect and is available for select ROOK plans. For more information, please contact the ROOK team.
How can I integrate ROOK Extraction App?
You will need to integrate the Binding endpoint to create access for your users. Visit our documentation for more details.
How do I enable ROOK Extraction App for my ROOK account?
The application does not require prior activation. You only need to integrate the endpoint and make the query.
How do I receive the data extracted from my users via ROOK Extraction App?
You will need to provide a URL in the Data Webhook through the ROOK Portal. The delivery of user data will then occur via the webhook, ensuring timely data delivery as it becomes available.
How can our users access ROOK Extraction App?
They can download it from the App Store or Play Store.
How do I link a user to my integration?
Using the Endpoint, you must generate a link or QR code to provide to the user for access. Each link and QR code is unique and must only be used by one user. You will need to request a separate link or QR code for each user.
We are working on a new feature in our API with the Data Source Endpoint Separation functionality. This enhancement allows applications to obtain data from each source individually, optimizing the efficiency, scalability, and security of the system.
Until now, developers accessed all data sources configured for a user through a single endpoint. With this update, each request can be directed to a specific source, such as Dexcom, Fitbit, Garmin, Oura, Polar, Whoop, or Withings, improving performance and reducing unnecessary data overhead.
Key improvements of the new endpoint:
- More specific access: Data can be requested from a specific source instead of receiving all sources in a single response.
- Increased efficiency: Faster responses with a lower estimated response time under normal conditions.
- Improved scalability: Optimization in the handling of multiple concurrent requests.
- Enhanced security: Credential validation in each request with authentication using secure tokens.
Impact on developers and users
This update gives developers more precise control over data applications, making it easier to integrate with applications that require wearable-specific information.
Endpoint Structure
For the current authorizer endpoint:
/api/v1/user_id/<user_id>/data_source/<data_source>/authorizer
Which will be answered as follows:
{
"data_source": "Fitbit",
"authorized": false,
"authorization_url": "https://www.fitbit.com/oauth2/authorize?response_type"
}
For more information, please see our API Reference.
Frequently Asked Questions:
1. What is the Data Source Separation in the Authorization Endpoint?
This is an improvement to our API that allows requesting authorization data for a specific source (such as Fitbit, Garmin, or Oura) instead of retrieving information for all sources at once. This enhances system efficiency, security, and scalability.
2. What is the main benefit of this change?
Previously, developers received information from all sources in a single request, which could generate unnecessary data and slow down responses. With this improvement, only the needed source data is retrieved, optimizing performance and security.
3. How does this change affect developers?
It gives them greater control over data integration in their applications. Now, they can request specific information from each wearable or health platform, improving system efficiency.
4. What is the structure of the new endpoint?
The new endpoint format is:
/api/v1/user_id/<user_id>/data_source/<data_source>/authorizer
For example, to retrieve authorization data from Fitbit, the request would be:
/api/v1/user_id/abc123/data_source/Fitbit/authorizer
5. What does the new endpoint response look like?
A successful request will return a JSON with the requested source’s information. Example response for Fitbit:
{
"data_source": "Fitbit",
"authorized": false,
"authorization_url": "https://www.fitbit.com/oauth2/authorize?response_type"
}
6. What data sources are supported by this new endpoint?
The supported data sources include:
- Fitbit
- Garmin
- Oura
- Withings
- Polar
- Whoop
- Dexcom
7. Is it mandatory to upgrade to the new endpoint version?
Not immediately, but it is recommended to take advantage of the efficiency and security benefits. The previous version will remain available for a limited time.
8. Does this change impact user authentication?
No, authentication still works with secure tokens, but now each request will validate credentials more specifically for each data source.
9. How does this change improve system scalability?
The new approach allows handling multiple concurrent requests more efficiently, reducing server load and improving response times.
10. What happens if I request a data source that is not supported?
If an unrecognized data source is requested, the system will return an error indicating that the source is invalid.
11. Where can I find more information about the Endpoint?
You can check our API reference documentation for more details on how to integrate this new endpoint into your applications.
Users are looking for an automated way to monitor their calorie expenditure without manual intervention. Currently, calorie burn data comes from multiple sources and can be inconsistent or difficult to synchronize in real-time.
To provide users with an effective tool for tracking calories burned throughout the day, we are excited to announce the launch of the 'Calories Events' project in the iOS and Android SDKs. This system will enable automatic data synchronization, ensuring accessibility and proper processing at all times.
A Comprehensive Solution for Calorie Tracking
The 'Calories Events' system is designed to collect, process, and present detailed information about users' calorie expenditure. Its architecture consists of several key components within the iOS and Android SDKs.
Key Features
- Background Synchronization: Automatically updates data without manual intervention.
- Calorie Burn Retrieval: Allows users to quickly and easily check the number of calories burned throughout the day.
- Event Generation and Transmission: The SDK collects calorie data and sends it for storage and processing.
Calorie Event Key

For more information on how to use the calories event, please see our SDK repository.
FAQ
What is the 'Calories Events' project?
The 'Calories Events' project is designed to provide users with an automated and efficient way to track calories burned throughout the day. The system ensures seamless background synchronization, accurate data retrieval using SDKs for iOS and Android.
How does the system work?
The system consists of key components, which are extracted by iOS and Android SDKs, then the data is processed, and calorie data is presented to users.
What data does the system collect?
The system gathers calorie burn data from platforms like Apple Health and Health Connect and processes it using the SDKs.
How does the system handle duplicate calorie data?
The duplication system ensures that redundant calorie events are detected and removed before storage, maintaining accurate records.
How can developers integrate 'Calories Events' into their apps?
Developers need to integrate the iOS or Android SDKs, ensuring proper setup for:
- Background syncing
- Event formation & transmission
What SDK is it available in?
It is currently available for Android, iOS, Capacitor, React Native and Flutter.
At ROOK we are working on a new endpoint that allows its clients to efficiently query the status of their users linked to various data sources.
With this development, clients will be able to access detailed information about the total number of users, their authorized data sources, and their activity status, eliminating the need to manually review each user.
Process Optimization And Greater Autonomy For Clients
Currently, clients who want to know the status of their users depend on manual processes carried out by the ROOK team, which consumes time and resources. With this new endpoint, they will be able to obtain this data in real time through an API query, specifying a date to receive the relevant information up to that point.
Main Features Of The New Endpoint
- Centralized query: Allows you to obtain the total number of linked users and their status in a single request.
- Detailed data: Provides information about each user, including unique ID, link date, data source, and activity status.
- Security and authentication: Only authenticated clients will be able to access the information, guaranteeing data privacy and security.
- High performance: Optimized to handle large volumes of users, with lower response times.
Availability and Integration
The User State Endpoint is now available for ROOK customers with API access. For integration details, see the API Reference.
Frequently Asked Questions
What is the User Status Endpoint?
The User Status Endpoint is an API feature that enables ROOK clients to query and retrieve data about their linked users, including total users, data sources, and their activity status.
Who can use this endpoint?
Only authenticated ROOK clients with API access can use this endpoint.
How does the endpoint work?
Clients send a
GET
request to /api/v1/client/users/status
with the up_to_date
parameter. The response provides a summary of total users, active users, and their associated data sources.What data does the endpoint return?
- Total number of users linked to a client
- Total number of users created for the client
- Active users and their linked data sources (Garmin, Fitbit, etc.)
- User active status
- Pagination details
Can I export the data to Excel or CSV?
Clients can request data in CSV format using the format=csv parameter in the API request.
How does authentication work?
Clients must provide BASIC AUTH (
client_uuid
, secret_key
) in the request header to access the endpoint. Unauthorized requests will receive a 401 Unauthorized error.Where can I find documentation for integration?
Detailed API reference.
Pre-existing data
enables ROOK to extract prior health information from users, providing clients with immediate access to user data from multiple sources. This feature ensures that clients can access up to 7 days of pre-existing data from API-based sources and up to 29 days from SDK-based sources, allowing for faster initial analysis. By delivering data and calculating initial ROOKScores as soon as a user connects, this feature enhances the onboarding experience and provides actionable insights without the typical waiting period for new data to accumulate.
Benefits
With this project, clients can now automatically retrieve up to 7 days of historical data via the API or 29 days via the SDK for more accurate user wellness analysis. Additionally, this feature simplifies the calculation of an initial ROOKScore, providing clients with valuable insights into user wellness from the moment of connection.
ROOKConnect integration is compatible with various data sources, including Android, Apple Health, Garmin, Fitbit, Health Connect, Polar, Oura, Whoop and Withings. Compliance with privacy and security regulations is also ensured.
Key Features
- Access to pre-existing Data:Retrieve up to 7 days (API) or 29 days (SDK) of historical health data prior to connection.
- Health Score Calculation:Use historical data to calculate an initial health score, providing immediate visibility into the user's health status.
- Automated Extraction:Automatically deliver health data summaries via client-configured webhooks.
Business rules and special cases
- The pre-existing information we send is: The last 7(API) 29(SDKs) days post linking (It depends on the data source)
- Physical Summary
- Sleep Summary
- Body Summary
- ROOKScore
- The pre-existing data includes up to the last 7/29 days (depending on the data source) for Physical Summary, Sleep Summary, Body Summary, and ROOKScore. Access to this data depends on the user’s consistent application usage and synchronization with their data source. If synchronization is incomplete, pre-existing data cannot be retrieved.
- How sending pre-existing physical, sleep and body information works
- It is immediately after the user links.
- How ROOKScore submission works
- Once the user is linked, the pre-existing ROOKScore will be sent within a maximum of 24 hours. It may be sent at the time, but ROOK guarantees sending the ROOKScores within a maximum of 24 hours after the user is linked.
5. The pre-existing data that we can extract from each data source : Each data source is different, so in some cases we can only extract certain types of data, which we will see below.

*
Note: that in the Body information, the last update made by the user will always be sent
Frequently Asked Questions
1. How can I enable Pre-existing Data?
- To activate pre-existing data, you will need to activate it through your ROOK site, in the "Customize ROOK" module. Please note that this feature must be included in your current plan.
2 . Will an additional endpoint be required?
- No. When Pre-existing Data is enabled, historical user data will be automatically sent via the Data Webhook.
3. What is the structure of JSON files for historical data?
- The JSON file structure for events and summaries is identical to the format used for daily data deliveries.
4. How many days of historical data are retrieved?
- API: Up to 7 days prior to the connection.
- SDK: Up to 29 days prior to the connection.
5. Is data extraction automatic, or does it require manual requests?
- Pre-existing data is extracted automatically and sent via the configured webhook.
We are pleased to announce the release of ROOKScore 2.0, our enhanced health score. This new version introduces advanced metrics and improved functionality, allowing customers to gain deeper insights and foster greater innovation with users' health data.
Why ROOKScore 2.0?
ROOKScore 2.0 is a redesign of our health score, aimed at making it more consistent, providing a clearer overview of key user health indicators. While ROOKScore 1.0 offers a solid foundation, it lacks the depth and robustness needed to address the diverse needs of health-focused applications. This new version is built around our three health pillars: Body Health, Physical Health, and Sleep Health, offering a more personalized scoring system based on multiple factors.
Key features of ROOKScore 2.0
- Enhanced metric integration: Health Score 2.0 incorporates new data points such as body mass index (BMI), HRV, sleep duration and quality, steps, calories, and activity time, providing a holistic view of user health. By leveraging existing wearable device metrics, the score delivers more detailed insights into physical health, body composition, and sleep quality.
- New pillar structure: The score is divided into three health pillars: Body Health, Physical Health, and Sleep Health, each contributing equally to the final score. Each pillar includes important metrics like BMI (Body Health); steps, calories, and physical activity (Physical Health); and HRV, sleep time, and sleep quality (Sleep Health), ensuring a comprehensive evaluation.
- Customizable for individual needs: Health Score 2.0 allows customers to personalize the weight of each metric and pillar, offering the flexibility to focus on the most relevant health metrics for their users. For example, if a company prioritizes physical activity, it can adjust the score to emphasize steps, calories, and activity time. Alternatively, if Body Health is less relevant, it can be turned off so it does not contribute to the overall health score.
- Seamless compatibility and transition: To ensure a smooth transition for current users, Health Score 1.0 will continue to function. For customers migrating from ROOKScore 1.5 to ROOKScore 2.0, we have provided detailed documentation and support to help them adopt the new system without disruption.
Configuring your ROOKScore 2.0
As mentioned, ROOKScore 2.0 allows configuration of the health score’s structure, meaning you can adjust the weight of each health metric or pillar, or deactivate them if they should not contribute to your ROOKScore. To configure your ROOKScore 2.0, log in to your ROOK Portal and go to the ROOKScore module. Keep in mind the following:
- Pillars: You can configure the three pillars and how they contribute to your ROOKScore 2.0. The combined weight of Body Health, Physical Health, and Sleep Health must total 100%. Each pillar can have a value from 0% to 100%, with up to two decimal places if needed. If you do not want a pillar to participate in the score, you can either deactivate it or set its value to 0%.

- Metrics: Health metrics are located within each pillar and contribute equally by default. If you wish to assign different values to each metric, the value must be between 0% and 100%, with up to two decimal places if required. As with pillars, you can deactivate or set a metric to 0% if you do not want it to affect the score.

Integrate our ROOKScore 2.0
To access ROOKScore 2.0, please contact the ROOK team.
Frequently Asked Questions
What is ROOKScore 2.0?
ROOKScore 2.0 is the enhanced version of our health scoring system. This version includes advanced metrics and improved functionality, offering a deeper and more accurate assessment of user health.
What are the main differences between ROOKScore 1.0 and ROOKScore 2.0?
ROOKScore 2.0 incorporates additional health metrics like body mass index (BMI) and heart rate variability (HRV), as well as a new three-pillar structure: Body Health, Physical Health, and Sleep Health. It also allows metric customization and provides a more dynamic evaluation based on multiple days rather than daily snapshots.
What metrics are integrated into ROOKScore 2.0?
ROOKScore 2.0 includes new metrics such as BMI, steps, calories burned, activity time, and sleep duration and quality, offering a more comprehensive view of physical, body, and sleep health.
What are the pillars of ROOKScore 2.0?
The three pillars are:
- Body Health: Includes metrics like BMI score.
- Physical Health: Includes metrics related to Activity score, such as Steps score and Calories score.
- Sleep Health: Includes Readiness score, Sleep duration score, and Sleep quality score.
Each of these pillars contributes to the final score and can be configured based on customer needs.
Can I customize the weight of metrics in ROOKScore 2.0?
Yes, ROOKScore 2.0 allows customers to adjust the weight of each metric and pillar according to their priorities. This offers the flexibility to focus on the most relevant aspects of user health.
What happens if I still use ROOKScore 1.5?
ROOKScore 1.0 will continue to function for some time. However, we recommend migrating to ROOKScore 2.0 to take advantage of its new features. We provide documentation and support to ensure a smooth transition.
How do I configure my ROOKScore 2.0?
To configure ROOKScore 2.0, log in to the ROOKScore module in your ROOK portal, where you can adjust the weight of the health pillars and metrics. Assign a percentage to each pillar (Body Health, Physical Health, and Sleep Health) and metric, ensuring that the total adds up to 100%.
What if I don’t want a pillar or metric to affect the score?
If you do not want a pillar or metric to participate in the score, you can deactivate it or assign it a value of 0%, which will prevent it from contributing to the ROOKScore.
How do I integrate ROOKScore 2.0 into my platform?
To integrate ROOKScore 2.0, contact the ROOK team for access and technical support.
We are excited to introduce our new feature, "Step Events." This enhancement allows users to obtain hourly step metrics, significantly improving the experience and insights available to our customers.
Previously, the only way to access step data through ROOK was via the Physical Summary, which provides a daily summary of steps after the day ends, or through Physical Events during specific activities. However, many customers have expressed the need to obtain step information throughout the day at various times. In response, we developed "Step Events," a solution that allows frequent and manual step updates, getting as close to real-time as possible.
Features of Step Events
- Update frequency: "Step Events" extracts and updates step data within every hour in the background.
- Compatibility: Available for Apple Health, Health Connect, React Native, Flutter, and Capacitor SDKs.
- Integration with Apple Health and Health Connect: On iOS devices, data is extracted from Apple Health, while on Android devices, it is extracted through Health Connect and Android operating system data.
- Data transmission: Data is efficiently transmitted through ROOK SDKs and Data Webhook, ensuring quick and reliable delivery to our customers' backends.
How it works
Step data accumulates from 00:00 to the current time of day and is transmitted via an optimized JSON to ensure quick visualization of the metrics. Here is an example of the JSON used:
{
"client_uuid":"ClientUUID",
"user_id":"UserId",
"version":2,
"document_version":1,
"auto_detected":true,
"data_structure":"steps_event",
"physical_health":{
"events":{
"steps_event":[
{
"non_structured_data_array":[
{}
],
"metadata":{
"datetime_string":"2023-12-29T21:07:14.402999Z",
"sources_of_data_array":[
"Apple Health"
],
"user_id_string":"UserId",
"was_the_user_under_physical_activity_bool":false
},
"physical_health":{
"accumulated_steps_int":0
}
}
]
}
}
}
Frequently Asked Questions
What is "Step Events"?
“Step Events" is a new feature launched by ROOK that allows users to obtain hourly step metrics. This functionality significantly enhances the user experience and provides more detailed insights for our customers.
Is this new functionality on-demand?
No, this functionality is integrated with the ROOK SDKs.
What problems does "Step Events" solve?
"Step Events" addresses the need for more frequent step information updates, allowing manual and frequent data updates, getting as close to real-time as possible.
What is the update frequency?
The SDKs extract and update step data as frequently as possible in the background, every hour.
What technologies are compatible with this feature?
Available for iOS, Android, React Native, Flutter, and Capacitor SDKs.
From which data sources are the steps extracted?
On iOS devices, data is extracted from Apple Health; on Android devices, data is extracted from Health Connect and the Android operating system data.
How does "Step Events" work?
Step data accumulates from 00:00 to the current time of day and is transmitted via an optimized JSON to ensure quick visualization of the metrics.
At ROOK, we continually strive to enhance our API's ability to deliver meaningful and actionable health data. In line with this commitment, we are pleased to announce the release of ROOKScore 1.5, a significant update to our readiness score.
Many users observed that the readiness score consistently displayed a rating of 100% in various scenarios. After thorough analysis, we identified that the issue lay in the intervals defined for generic users, i.e., those whose age or gender were not specified.
Initially, the readiness score intervals were as follows:
- Female user with unknown age: 25 - 108
- Male user with unknown age: 30 - 110
- User with unknown age and gender: 25 - 110
The breadth of these intervals, averaging 82 points, contrasted markedly with the narrower average range of 35 points for users with known age and gender. This disparity caused the readiness score to be disproportionately high for generic users, often resulting in a perfect score of 100%.
Readiness score improvement
To address this, we conducted a review and adjustment of the intervals for generic users. This process incorporated data on average population ages from recognized sources such as the United States Census Bureau, Eurostat, and the Instituto Nacional de Estadística y Geografía (INEGI). Based on this research, we have established the following updated intervals:
- Female user with unknown age: 35 - 71
- Male user with unknown age: 41 - 74
- User with unknown age and gender: 38 - 73
These refined ranges better reflect global population trends and are expected to provide a more accurate readiness score for generic users.
With ROOKScore 1.5, we are confident that our readiness score will now offer more precise insights, allowing our users to maximize the potential of our API. We remain committed to continuous improvement and appreciate ongoing feedback to ensure our tools meet the highest standards of accuracy and utility.
Frequently asked questions
What is ROOKScore 1.5?
ROOKScore 1.5 is an update to our ROOKScore, designed to offer a more precise measurement through the readiness score, adjusting for global demographic trends for users who do not have demographic data.
Why was an update needed?
It was identified that the undefined demographic intervals for generic users were too broad, resulting in disproportionately high and irrational readiness scores. This update adjusts those intervals through demographic data standardization to improve accuracy.
How were the new intervals defined?
The new intervals were defined using data on average population ages from recognized sources such as the United States Census Bureau, Eurostat, and INEGI. The following age ranges were established for users without demographic data:
- Female user with unknown age: 35 - 71
- Male user with unknown age: 41 - 74
- User with unknown age and gender: 38 - 73
What impact will this update have on users?
We expect the readiness scores to be more accurate and better reflect demographic reality, providing more useful insights.
Load More
→