Quickstart

To get started with the Spike API first create an account, by signing up at https://spikeapi.com. Once approved you'll have access to the Spike developer console.

Once you have these credentials you can begin using Spike API.

You can click on the "Run in Postman" button below to interact with our API.



Integration initialization

For a user to establish connections with data providers, applications need to launch the integration flow, which entails opening Spike's integration webpage on the user's browser.

Required parameters:

client_id (string) App ID for your team.

provider (string) name of the data provider.

user_id (string) A unique ID representing the end user. Typically this will be a user ID number from your application. Personally identifiable information should not be used in the user_id.



Providers

Provider

Short name

API

Webhooks

Apple Health* (SDK)

apple





Android Health Connect* (SDK)

health_connect





Dexcom

dexcom





Dexcom Sandbox

dexcom_sandbox





Fitbit

fitbit





Garmin

garmin





Google Fit

google_fit





Oura

oura





Polar

polar





Spotify

spotify





Strava

strava





Withings

withings





Whoop

whoop





Suunto

suunto





Omron****

omron_us

omron_eu





Wahoo

wahoo





Biostrap

biostrap





Samsung Health (Data is available via Health Connect SDK)

-





MyFitnessPal(Data is available via Health Connect SDK)

-





Freestyle Libre

freestyle_libre





*Please, use iOS SDK (Swift, React Native, Flutter, or Android-Kotlin) to connect to Apple Health and Android Health Connect.

URL Example

https://api.spikeapi.com/init-user-integration/?provider=fitbit&user_id=00001c&client_id=ea9e03f5-333-1111-2222-47a88c184c3b

Integration Flow

*The screens shown above are for illustrative purposes only and do not represent the actual provided screens.
*The screens shown above are for illustrative purposes only and do not represent the actual provided screens.




Users will be redirected to a data provider website and users will be asked to submit authentication details. Once the user authorizes access to their data, Spike returns the user back to the application using the postback URL. (You can edit it on the developer console). Appended to the postback URL is the Spike user ID. Following is an example of the postback URL with the user ID highlighted:

https://my_test_app.com/callback?provider=fitbit&customer_user_id=00001c&user_id=fa1e3803-6068-4ea7-9788-eccce210d30c

Please save it and use it for all user data requests.



Get data from devices

user_id (string) Key returned by Spike connect device request. This key should be stored in your database against the user and used for all interactions with the Spike API.

start_date (date) Date from in YYYY-MM-DD format

end_date (date) Date to in YYYY-MM-DD format

x-spike-auth (string) Application token from Spike console.

Python