> For the complete documentation index, see [llms.txt](https://docs.movesdk.com/move-platform/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.movesdk.com/move-platform/backend/move-backend/move-health-api.md).

# Move Health API

## Fetch steps

<mark style="color:green;">`GET`</mark> `https://sdk.dolph.in/v20/health/steps`

Retrieves a user's step count within a specified time range, including the total number of steps as well as a breakdown per device.

#### Headers

<table><thead><tr><th>Name</th><th width="234">Type</th><th>Description</th></tr></thead><tbody><tr><td>Authorization<mark style="color:red;">*</mark></td><td>string</td><td><strong>Basic &#x3C;ProjectId>:&#x3C;API-Key></strong></td></tr></tbody></table>

#### Query Parameters

<table><thead><tr><th>Name</th><th width="234">Type</th><th>Description</th></tr></thead><tbody><tr><td>userId<mark style="color:red;">*</mark></td><td>string</td><td>The user id</td></tr><tr><td>projectId<mark style="color:red;">*</mark></td><td>integer</td><td>Id of MOVE SDK project</td></tr><tr><td>from<mark style="color:red;">*</mark></td><td>integer</td><td>Start of the time range (Unix epoch timestamp in seconds)</td></tr><tr><td>to<mark style="color:red;">*</mark></td><td>integer</td><td>End of the time range (Unix epoch timestamp in seconds)</td></tr></tbody></table>

#### Response Body

<table><thead><tr><th>Name</th><th width="227">Type</th><th>Description</th></tr></thead><tbody><tr><td>total</td><td>integer</td><td>Aggregated step count from all devices.</td></tr><tr><td>devices</td><td>array</td><td>List of individual device contributions, each with:</td></tr><tr><td>from</td><td>integer</td><td>Start of the time range (Unix epoch timestamp in seconds)</td></tr><tr><td>to</td><td>integer</td><td>End of the time range (Unix epoch timestamp in seconds)</td></tr><tr><td>devices.name</td><td>string</td><td>Name of device </td></tr><tr><td>devices.total</td><td>integer</td><td>Step count reported by the device</td></tr></tbody></table>

{% tabs %}
{% tab title="200 " %}

```
{
  "total": 12312,
  "devices": [
    {
      "name": "Apple Watch",
      "total": 10112
    },
    {
      "name": "Apple iPhone",
      "total": 5400
    }
  ]
}
```

{% endtab %}
{% endtabs %}

### Fetch steps (batch)

**POST** `/v20/health/steps/query`

Returns a list of step-count results for one or more users within a specified time range. Each result includes the total number of steps and a per-device breakdown.

#### Headers

<table><thead><tr><th>Name</th><th width="234">Type</th><th>Description</th></tr></thead><tbody><tr><td>Authorization<mark style="color:red;">*</mark></td><td>string</td><td><strong>Basic &#x3C;ProjectId>:&#x3C;API-Key></strong></td></tr></tbody></table>

#### Request Body

<table><thead><tr><th>Name</th><th width="227">Type</th><th>Description</th></tr></thead><tbody><tr><td>projectId</td><td>integer</td><td>Your project identifier</td></tr><tr><td>queries.userId</td><td>string</td><td>The user identifier.</td></tr><tr><td>queries.from</td><td>integer</td><td>Start of the time range (Unix timestamp)</td></tr><tr><td>queries.from</td><td>integer</td><td>End of the time range (Unix timestamp)</td></tr></tbody></table>

```json
{
  "projectId": 12345,
  "queries": [
    {
      "userId": "user_001",
      "from": 1711929600,
      "to": 1712016000
    },
    {
      "userId": "user_002",
      "from": 1711929600,
      "to": 1712016000
    }
  ]
}
```

#### Response Body

<table><thead><tr><th>Name</th><th width="227">Type</th><th>Description</th></tr></thead><tbody><tr><td>results.projectId</td><td>integer</td><td>Echoed project ID</td></tr><tr><td>results.userId</td><td>string</td><td>Echoed user ID</td></tr><tr><td>results.total</td><td>integer</td><td>Total steps in the time range.</td></tr><tr><td>results.devices.name</td><td>string</td><td>Device name (e.g., “Apple Watch”).</td></tr><tr><td>results.devices.name</td><td>integer</td><td>Steps attributed to that device.</td></tr><tr><td>results.from</td><td>integer</td><td>Start of the time range (Unix timestamp)</td></tr><tr><td>results.to</td><td>integer</td><td>End of t he time range(Unix timestamp)</td></tr></tbody></table>

{% tabs %}
{% tab title="200 " %}

```json
{
  "results": [
    {
      "projectId": 12345,
      "userId": "user_001",
      "total": 12312,
      "from": 1711929600
      "to": 1712016000
      "devices": [
        { "name": "Apple Watch", "total": 10112 },
        { "name": "Apple iPhone", "total": 5400 }
      ]
    },
    {
      "projectId": 12345,
      "userId": "user_002",
      "total": 8421,
      "from": 1711929600
      "to": 1712016000
      "devices": [
        { "name": "Apple Watch", "total": 6200 },
        { "name": "Apple iPhone", "total": 3221 }
      ]
    }
  ]
}
```

{% endtab %}
{% endtabs %}
