Join us at HLTH. Las Vegas  |  Meet with our Team

Your app, Powered by EXI Exercise Intelligence

Our personalised physical activity prescription, your app.

Get up and running with SDKs, API keys and integration tools.

Android EXI® SDK Functions Guide

Add EXI® to your applications

Learn how to create an EXI® powered Android application and integrate the EXI® SDK into your products and platforms.

EXIProfile

Description

Gets the requested user profile data. userId and email are taken from the JWS Payload

Response

{
  email: "joebloggs@example.com",
  firstName: "Joseph",
  lastName: "Bloggs",
  externalId: "123_externalId",
  organisationId: "aaaaaaaa-4c63-44d0-b92d-94955502e860",
  gender: "MALE",
  dateOfBirth: "2020-01-02T09:00:00",
  betaBlockers: false,
  isOrganisationRewardExisted: false,
  healthConditions: [
    {
      "id": "033623a5-4aca-4b97-9a09-e50b2105f7db",
      "name": "Stroke"
    },
    {
      "id": "0596cfab-e2cc-47fe-91e5-13e342dc693a",
      "name": "Peripheral arterial disease"
    }
  ],
  customFields: [
    {
      name: "site_name",
      value: "Fitness First Clapham Junction"
    },
    {
      name: "site_address",
      value: "Junction Station, 34 St John's Hill, London SW11 1SA, United Kingdom"
    },
    {
      name: "fitness_manager",
      value: "Leslie White"
    }
  ],
  healthRecords: "healthRecords": {
    "betaBlockers": {
      "id": "beta_blockers",
      "value": 1
    },
    "heartRateResting": {
      "id": "hr_resting",
      "value": 78
    },
    "activityLevel": {
      "id": "activity_level",
      "value": 2
    }
  },
  sixMinuteTestDue: false,
  rewardSchemeId: "d26e3b8a-4c63-44d0-b92d-94955502e860",
  locale: "en-GB",
  region: "UK",
  timezone: "Europe/London",
  createdAt: "2023-02-23T13:05:32.104Z",
  updatedAt: "2023-02-23T13:05:32.104Z",
}

EXIPrescription

Description

Data is generated for the active week based on the SDK user information. Week 0 will be generated if it doesn’t exist.

Response

{
  "userId": "af1de4eb-f216-43a4-a3a9-fede6f9682bd",
  "streamId": "stream_5",
  "includeHighIntensity": true,
  "weekStartDay": "2023-03-20T00:00:00.000Z",
  "currentWeek": 3,
  "startedAt": {
    "dateTime": "2023-03-26T07:43:02.809Z",
    "timezone": "Europe/London"
  },
  "week": [
    {
      "week": 5,
      "medMinutes": 20,
      "setsOfMed": 5,
      "highMinutes": 14,
      "setsOfHigh": 5,
      "steps": 9500,
      "setsOfSteps": 5
    }
  ]
}

EXIActivity

Description

This API will help you get a list of activities

[
  {
    "name": "Other exercise",
    "id": "05720979-6f59-4c39-972a-c2ee0dcc1efb"
  }
]

EXIHealthConditionDescription

Description

The list of health conditions will be configured by EXI, these conditions will be fetched by this API and configured during the registration process.

Response

[
  {
    "id": "033623a5-4aca-4b97-9a09-e50b2105f7d2",
    "name": "Stroke",
    "translations": [
      {
        "locale": "en-GB",
        "name": "Premium Test",
        "description": "Get your blood pumping with this 5 minute high intensity workout.  You will complete 1 round of 8 exercises.",
        "libraryContent": "<h2>test</h2>"
      }
    ]
  }
]

EXIActivityData

Description

This API will help you get user activities data in a specific day

Response

[
  {
    "id": "d26e3b8a-4c63-44d0-b92d-94955502e860",
    "activityTypeId": "d26e3b8a-4c63-44d0-b92d-94955502e860",
    "value": 5,
    "rpe": 1,
    "averageHeartRate": 102,
    "steps": 1314,
    "distance": 985,
    "loggedAt": {
      "dateTime": "2022-12-23T16:31:51.521Z",
      "timezone": "Europe/London"
    },
    "translations": [
      {
        "locale": "en-GB",
        "name": "Premium Test",
        "description": "Get your blood pumping with this 5 minute high intensity workout.  You will complete 1 round of 8 exercises."
      }
    ],
    "day": 7,
    "week": 1,
    "intensity": "HIGH"
  }
]

EXIUserActivity

Description

This API will help you get user activities data in a specific day

Response

[
  {
   "id": "d26e3b8a-4c63-44d0-b92d-94955502e860",
    "activityTypeId": "d26e3b8a-4c63-44d0-b92d-94955502e860",
    "value": 5,
    "rpe": 1,
    "averageHeartRate": 102,
    "steps": 1314,
    "distance": 985,
    "loggedAt": {
      "dateTime": "2022-12-23T16:31:51.521Z",
      "timezone": "Europe/London"
    },
    "translations": [
      {
        "locale": "en-GB",
        "name": "Premium Test",
        "description": "Get your blood pumping with this 5 minute high intensity workout.  You will complete 1 round of 8 exercises."
      }
    ],
    "day": 7,
    "week": 1,
    "intensity": "HIGH"
  }
]

EXIActivityCategory

Description

This API will help you get a list of activity categories

Response

[
  {
    "id": "af1de4eb-f216-43a4-a3a9-fede6f9682bd",
    "name": "Home workouts",
    "orderIndex": 1,
    "activityTypes": [
      {
        "id": "09b660b9-1ee4-4586-9e44-f664073b1b52",
        "imageUrl": "https://exo.s3.ey-west-7.amazonaws.com/activa/fcc3afb1-6f8c-46c9-9306-a031f",
        "googleId": 19,
        "appleId": 91,
        "intensity": "HIGH",
        "trackingType": "ROUTE",
        "media": {
          "id": "8860a35c-bc3f-4707-9bcc-0e312daa084b",
          "type": "VIDEO",
          "key": "f31c12ce-bf7f-464f-88cf-785703cd798b",
          "filename": "f31c12ce-bf7f-464f-88cf-785703cd798b.mp4",
          "duration": 1800
        },
        "translations": [
          {
            "locale": "en-GB",
            "name": "Premium Test",
            "description": "Get your blood pumping with this 5-minute high-intensity workout.  You will complete 1 round of 8 exercises."
          }
        ]
      }
    ]
  }
]

EXIUserActivityType

Description

This API will help you get a list of activity types for user based on their data.

Response

[
  {
    "id": "4b56e674-7d2d-42ee-9b3f-542408fd251b",
    "intensity": "MEDIUM",
    "trackingType": "DEFAULT",
    "appleId": 13,
    "googleId": 18,
    "imageUrl": "da75a78-a974-4d0e-a02b-ea8883f37a94",
    "name": "some name",
    "media": {
      "id": "a4e964bd-8955-4737-b5d0-7cae55e79ca7",
      "type": "VIDEO",
      "key": "429ee838-e760-4236-917a-ed275dba1939",
      "filename": "429ee838-e760-4236-917a-ed275dba1939.mp4",
      "durationSeconds": 600,
      "url": ""
    }
  }
]

EXISixMinuteWalkLog

Description

Log data for six mins walk activity

Response

{
  "id": 595,
  "value": 45.45,
  "week": 6,
  "source": "APP",
  "loggedAt": {
   "dateTime": "2022-12-23T16:31:51.521Z",
    "timezone": "Europe/London"
  }
}