---
updatedAt: 2026-07-22T00:25:04.000Z
agentTools:
  projectIndex: https://omron-connect-create.readme.io/llms.txt
---

# API

rev.1.5

<br />

# Specification

|                                  |                                                                                                                                                                                                        |
| :------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Protocol                         | HTTPS  More than TLS1.2                                                                                                                                                                                |
| Authorization method             | Token-based authentication                                                                                                                                                                             |
| Login name                       | Administrator account of the partner. <br /><br />Use a partner system management supervisor account presented by OMRON Healthcare, a partner administrator account, or a group administrator account. |
| Connection destination host name | OMRON Healthcare provides this with the partner system management supervisor account.                                                                                                                  |
| Interface                        | RESTful                                                                                                                                                                                                |
| Data format                      | JSON                                                                                                                                                                                                   |
| Character code                   | utf-8                                                                                                                                                                                                  |

# Vital Data Acquisition Steps

## Step1: Get an access token

```c Request Sample
curl -v -X POST \
-H "Content-Type: application/json" \
  "https://{authentication server domain}/oauth2/token" \
  -d '{
        "grant_type": "password",
        "username": "user_123456",
        "password": "123ABC"
			}'
```
```c Response Sample
{
  "id" : {USER_ID},
  "access_token" : {ACCESS_TOKEN},
  "refresh_token" : {REFRESH_TOKEN},
  "expires_in" : 2147483647,
  "token_type" : "bearer"
}
```

### Request Header and Body Parameters

|          |                                                                                                  |
| :------- | :----------------------------------------------------------------------------------------------- |
| Endpoint | https\://\{authentication server domain} <sup><a href="#footnote-ref-1">1</a></sup>/oauth2/token |
| Method   | POST                                                                                             |

<p id="footnote-ref-1"><span style={{ color: "blue", fontSize: "12px" }}>1:Authentication server domain will be presented by OMRON Healthcare.</span></p>

|        |                                                                               |                                                                                                                     |
| :----- | :---------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------ |
| Header | Content-Type <span style={{ color: "red", fontSize: "12px" }}>required</span> | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify “application/json”                     |
| Body   | grant\_type <span style={{ color: "red", fontSize: "12px" }}>required</span>  | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify "password”.                            |
|        | username <span style={{ color: "red", fontSize: "12px" }}>required</span>     | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify username for partner or group account. |
|        | password <span style={{ color: "red", fontSize: "12px" }}>required</span>     | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify password for partner or group account. |

### Response Parameters

|                |                                                                                                                                  |
| :------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| id             | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />A unique ID that identifies the account in the B2BDSP.      |
| access\_token  | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Access token                                                |
| refresh\_token | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Refresh token<br />*Refresh tokens are valid for 10 years.* |
| expires\_in    | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Expiration date of access token（Seconds）                      |
| token\_type    | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Type of token                                               |

### Response Status Code (Sample)

| Value             | Description                                                                                 |
| :---------------- | :------------------------------------------------------------------------------------------ |
| 200               | Success                                                                                     |
| 400 (Bad Request) | Example:<br />"Invalid request parameter"<br />"URL is wrong"<br />"Authentication failure" |
| 404 (Not Found)   | Example:<br />"Request resource not found"                                                  |
| 500               | Example:<br />"Internal Server Error"                                                       |

## Step2: Get vital data

```c Request Sample
curl -i -X GET  
  -H "Authorization:bearer xdrgPxxjHV2brPBu8aQ_XrrYI-ymVORNS3dwap9wM74" \
  -H "MyLoginName:assfd0123" \
 'https://{B2B Data service platform server domain}/a/b2b-data-api/v1.0/wps/8/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/partners/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/vital-signs
```
```c Response Sample
{
    "NextSequenceNo" : 1,
    "PartnerList" : {
        "PartnerId" : "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
        "PartnerName": "mypartner001",
        "GroupList" : {
            "GroupId": "zzzzzzzzzzzz",
            "GroupName": "mygroup001",
            "UserList" : {
                "UserId" : "5b6feb5cac80-04c9-7e11-03fd-0b5c9aff",
                "deviceCategoryList" : {
                    "deviceCategory" : "0",
                    "deviceModelList" : {
                        "deviceModel" : "HEM-7280T-AP",
                        "deviceSerialIDList" : {
                            "deviceSerialID" : "0001009400040e0b1b39300054aa",
                            "userNumberInDevice": 1,
                            "measureList" : {
                                "_created" : 1500272832306, 
                                "_dataType" : "application/json", 
                                "_id" : "HEM-7138K-SH_54d569feffe521ec_1_1500272810004", 
                                "_modified" : 1500272832306, 
                                "_owner" : "928d1aa24d60-9f79-7e11-8ba6-0e79792a", 
                                "_version" : "1", 
                                "bodyIndexList" : {"1": ["98","20496","0","4"], "10": ["0","0","0","4"]}, 
                                "decisionFlag" : 1, 
                                "deleteFlag" : 0,
                                "deviceModel" : "HEM-7280T-AP", 
                                "deviceSerialID" : "0001009400040e0b1b39300054aa", 
                                "informationList" : {
                                    "measureDateTo" : 1500272810000, 
                                    "measureDeviceDateTo" : "20170717142650000", 
                                    "timeZone" : "Asia/Shanghai", 
                                    "transferDate" : 1500272823000,
                                    "measureDateFrom" : 1500272810004, 
                                    "measureDeviceDateFrom" : "20170717142650000", 
                                    "userNumberInDevice" : 1, 
                                    "userUpdateDate" : 1500272824000}}}}}}}

```
```c Response Sample (No Data)
{"deviceCategoryList": null}
```

### Request Header and Request Parameters

|                   | Endpoint                                                                                                                                                                                                                                                                                                                                                                   |
| :---------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **For all users** | https\://\{B2BDSP server domain} <sup><a href="#footnote-ref-2">2</a></sup>/a/b2b-data-api/v1.0/wps/8/\{WP-ID} <sup><a href="#footnote-ref-2">2</a></sup>/partners/\{Partner ID} <sup><a href="#footnote-ref-2">2</a></sup>/vital-signs                                                                                                                                    |
| **Per group**     | https\://\{B2BDSP server domain} <sup><a href="#footnote-ref-2">2</a></sup>/a/b2b-data-api/v1.0/wps/8/\{WP-ID} <sup><a href="#footnote-ref-2">2</a></sup>/partners/\{Partner ID} <sup><a href="#footnote-ref-2">2</a></sup>/groups/\{Group ID} <sup><a href="#footnote-ref-3">3</a></sup>/vital-signs                                                                      |
| **Per user**      | https\://\{B2BDSP server domain} <sup><a href="#footnote-ref-2">2</a></sup>/a/b2b-data-api/v1.0/wps/9/\{WP-ID} <sup><a href="#footnote-ref-2">2</a></sup>/partners/\{Partner ID} <sup><a href="#footnote-ref-2">2</a></sup>/groups/\{Group ID} <sup><a href="#footnote-ref-3">3</a></sup>/users/\{OMRON connect ID} <sup><a href="#footnote-ref-3">3</a></sup>/vital-signs |
| **Method**        | GET                                                                                                                                                                                                                                                                                                                                                                        |

<p id="footnote-ref-2"><span style={{ color: "blue", fontSize: "12px" }}>2:"B2BDSP server domain", "WP-ID", and "Partner ID" will be offered after signing the contracts.</span></p>

<p id="footnote-ref-3"><span style={{ color: "blue", fontSize: "12px" }}>3:"Group ID" and "OMRON connect ID" can be found on the admin portal site.</span></p>

|        |                                                                                |                                                                                                                                                                                                                                                                                                                                                                 |
| :----- | :----------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Header | Authorization <span style={{ color: "red", fontSize: "12px" }}>required</span> | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Valid access token “bearer “ + access token                                                                                                                                                                                                                                                |
|        | MyLoginName <span style={{ color: "red", fontSize: "12px" }}>required</span>   | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Login name when access token is acquired                                                                                                                                                                                                                                                   |
|        | SearchDateFrom                                                                 | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Specify the starting date of the search period in Unixtime milliseconds format.                                                                                                                                                                                                              |
|        | SearchDateTo                                                                   | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Specify the end date of the search period in Unixtime milliseconds format.<br />It is possible to specify only for user-based search.                                                                                                                                                        |
|        | SequenceNo                                                                     | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Pagination key                                                                                                                                                                                                                                                                               |
|        | IncludeDelete                                                                  | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify whether to include deleted data.<br />If specify True, the deleted data will be included.(False if not specified)                                                                                                                                                                  |
|        | ContainAllDataTypeFlag                                                         | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify whether to include manual input data.<br />If specify True, the manual input data will be included.<br />(False if not specified)                                                                                                                                                  |
|        | IncludeCorrectedDateTime                                                       | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify whether to include then data with corrected measurement data and time.<br />If specify True, the data with corrected measurement data and time will be included.<br />(False if not specified)                                                                                     |
|        | <span class="notranslate">DeviceCategory</span>                                | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify one device category. If not specified, data for all categories will be acquired.<br />Blood Pressure Monitor : b\_0<br />Weight/BCM : b\_1<br />Pedometer : b\_2<br />Sleep gauge : b\_4<br />Basal thermometer : b\_5<br />Pulse oximeter : b\_6<br />General thermometer : b\_19 |

### Data Structure (JSON)

A single call to the vital data retrieval API returns up to 200 records. To retrieve the next 200 records, set the value of NextSequenceNo from the response as SequenceNo in the request header. If 'deviceCategoryList' is returned as null, it can be interpreted that the response does not contain any relevant data.

<Image src="https://files.readme.io/e4d30926fb7bdfde8c2537e85805d1f9951fa92d3c950673c24f2a5634209042-GetVitalDataAPI.png" align="center" width="60% " />

***

*Note: Vital data is stored in the DSP in the order it is registered, and each entry is assigned a SequenceNo at the time of registration. If you retrieve vital data using a measurement timestamp (via the SearchDateFrom parameter), there is a risk of missing some data due to potential delays or discrepancies in registration timing.*

**Example Scenario: Risk of Missing Vital Data When Using SearchDateFrom**

1. January 2, 12:00 AM<br />You call the API with SearchDateFrom = January 1, 12:00 AM.<br />→ The API returns all vital data registered up to January 1, 11:59 PM.
2. January 1, 10:00 AM<br />An end user measures their vitals, but due to certain circumstances, the data is not immediately uploaded to the OMRON connect cloud.
3. January 2, 10:00 AM<br />The vital data measured on January 1, 10:00 AM is finally uploaded to the cloud.
4. January 3, 12:00 AM<br />You call the API again with SearchDateFrom = January 2, 12:00 AM.<br />→ The data measured on January 1 (but uploaded late) will not be included, as it falls outside the specified date range.

*To ensure complete and accurate data retrieval, it is recommended to use the 'SequenceNo' when calling this API.*

***

|                       |                                                                                                                                                                                                                                      |
| :-------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| NextSequenceNo        | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Sequence no. when searching next 200 cases.                                                                                                                       |
| PartnerList           | <span style={{ color: "gray", fontSize: "12px" }}>object array</span><sup><a href="#footnote-ref-4">4</a></sup><br />Information regarding  partner                                                                                  |
| PartnerId             | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Partner ID                                                                                                                                                      |
| PartnerName           | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Partner’s name                                                                                                                                                  |
| GroupList             | <span style={{ color: "gray", fontSize: "12px" }}>object array</span><sup><a href="#footnote-ref-4">4</a></sup><br />Information regarding group（multiple return）                                                                    |
| GroupId               | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Group ID                                                                                                                                                        |
| GroupName             | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Group name                                                                                                                                                      |
| UserList              | <span style={{ color: "gray", fontSize: "12px" }}>object array</span><sup><a href="#footnote-ref-4">4</a></sup><br />Information regarding user（multiple return）                                                                     |
| UserId                | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />OMRON connect ID                                                                                                                                                |
| deviceCategoryList    | <span style={{ color: "gray", fontSize: "12px" }}>object array</span><sup><a href="#footnote-ref-4">4</a></sup><br />Measured data as per device category (multiple return)                                                          |
| deviceCategory        | <span style={{ color: "gray", fontSize: "12px" }}>int</span><br />Device category                                                                                                                                                    |
| deviceModelList       | <span style={{ color: "gray", fontSize: "12px" }}>object array</span><sup><a href="#footnote-ref-4">4</a></sup><br />Measured data as per device model                                                                               |
| deviceModel           | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Device model                                                                                                                                                    |
| deviceSerialIDList    | <span style={{ color: "gray", fontSize: "12px" }}>object array</span><sup><a href="#footnote-ref-4">4</a></sup><br />Measured data as per device serial ID                                                                           |
| deviceSerialID        | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Device serial ID<br />※In case of manually input data, it will be "0000000000000000".                                                                           |
| userNumberInDevice    | <span style={{ color: "gray", fontSize: "12px" }}>int</span><br />User’s device using no.                                                                                                                                            |
| measureList           | <span style={{ color: "gray", fontSize: "12px" }}>object array</span><sup><a href="#footnote-ref-4">4</a></sup><br />Measured data  as per date & time.<br />Refer to the next page for information which is included in measureList |
| bodyIndexList         | <span style={{ color: "gray", fontSize: "12px" }}>object</span><sup><a href="#footnote-ref-5">5</a></sup><br />Measured data by device                                                                                               |
| decisionFlag          | <span style={{ color: "gray", fontSize: "12px" }}>int</span><br />Decision flag. Flag indicates the status of measured data                                                                                                          |
| deleteFlag            | <span style={{ color: "gray", fontSize: "12px" }}>int</span><br />Flag that indicates the deleted data (0：Undeleted, 1：deleted）                                                                                                      |
| deviceModel           | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Device model                                                                                                                                                    |
| deviceSerialID        | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Device serial ID                                                                                                                                                |
| measureDateFrom       | <span style={{ color: "gray", fontSize: "12px" }}>long</span><sup><a href="#footnote-ref-6">6</a></sup><br />Measurement start date  (UnixTime milliseconds format)                                                                  |
| measureDeviceDateFrom | <span style={{ color: "gray", fontSize: "12px" }}>string</span><sup><a href="#footnote-ref-6">6</a></sup><br />Measurement start date in device (YYYYMMDDHHMMSSsss)                                                                  |
| userNumberInDevice    | <span style={{ color: "gray", fontSize: "12px" }}>int</span><br />User’s device using number                                                                                                                                         |
| userUpdateDate        | <span style={{ color: "gray", fontSize: "12px" }}>long</span><sup><a href="#footnote-ref-6">6</a></sup><br />Update date of measured data (UnixTime millisecond format)                                                              |
| informationList       | <span style={{ color: "gray", fontSize: "12px" }}>object</span><br />Supplementary information                                                                                                                                       |
| measureDateTo         | <span style={{ color: "gray", fontSize: "12px" }}>long</span><sup><a href="#footnote-ref-6">6</a></sup><br />Measurement end date (UnixTime millisecond format)                                                                      |
| measureDeviceDateTo   | <span style={{ color: "gray", fontSize: "12px" }}>string</span><sup><a href="#footnote-ref-6">6</a></sup><br />Measurement end date in device (YYYYMMDDHHMMSSsss)                                                                    |
| timeZone              | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Time zone of update／measured date and time                                                                                                                      |
| transferDate          | <span style={{ color: "gray", fontSize: "12px" }}>long</span><sup><a href="#footnote-ref-6">6</a></sup><br />Transferred date & time in between Device and OMRON connect app (UnixTime millisecond format)                           |
| correctedDateTimeFlag | <span style={{ color: "gray", fontSize: "12px" }}>int</span><br />Measurement date and time correction flag (2: corrected)                                                                                                           |

<p id="footnote-ref-4"><span style={{ color: "blue", fontSize: "12px" }}>4:About the value of the object array type parameter. The values of these parameters will be an array if there are multiple data. If there is only one, it will not be an array.</span></p>

<p id="footnote-ref-5"><span style={{ color: "blue", fontSize: "12px" }}>5:In the index list (bodyIndexLIst), the index is stored in object form. Measured data, unit and index are the type of string. Index name: [measured data, unit, index, sequence no., time division data].
　・Arbitrary data may be included in the elements thereafter the time division data.
　・Indicators that do not have time-division data, does not include time division data.
　・Regarding the details of time division data, refer to FAQ.
　・For index name and setting value, refer to each page for devices.</span></p>

<p id="footnote-ref-6"><span style={{ color: "blue", fontSize: "12px" }}>6:About items containing milliseconds
The valid range of values for these items is up to seconds. Do not use the last 3 digits of the milliseconds value.
This is because the last 3 digits of the millisecond value may include device control information, etc., and has nothing to do with the user's measurement behavior.</span></p>

### Response Status Code (Sample)

| Value             | Description                                                                                                                                                      |
| :---------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 200               | Success                                                                                                                                                          |
| 400 (Bad Request) | Example:<br />"Insufficient / invalid request header"<br />"Invalid request parameter"<br />"URL is wrong"<br />"When the size of the response data exceeds 5MB" |
| 401               | Example:<br />"Authentication Failure"                                                                                                                           |
| 405               | Example:<br />"Method Not Allowed"                                                                                                                               |
| 500               | Example:<br />"Internal Server Error"                                                                                                                            |

## (if needed) Get a refresh token

```c Request Sample
curl -v -X POST \
-H "Content-Type: application/json" \
  "https://{authentication server domain}/oauth2/token" \
  -d '{
        "grant_type": "refresh_token",
        "refresh_token": "{REFRESH_TOKEN}"
      }'
```
```c Response Sample
{
  "id" : {USER_ID},
  "access_token" : {ACCESS_TOKEN},
  "refresh_token" : {REFRESH_TOKEN}
  "expires_in" : 864000,
  "token_type" : "bearer"
}
```

### Request Header and Body Parameters

|          |                                                                                                  |
| :------- | :----------------------------------------------------------------------------------------------- |
| Endpoint | https\://\{authentication server domain} <sup><a href="#footnote-ref-1">1</a></sup>/oauth2/token |
| Method   | POST                                                                                             |

|        |                                                                                 |                                                                                                                  |
| :----- | :------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------- |
| Header | Content-Type <span style={{ color: "red", fontSize: "12px" }}>required</span>   | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify "application/json".                 |
| Body   | grant\_type <span style={{ color: "red", fontSize: "12px" }}>required</span>    | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify “refresh\_token”.                   |
|        | refresh\_token <span style={{ color: "red", fontSize: "12px" }}>required</span> | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Refresh token when access token is acquired |

### Response Parameters

|                |                                                                                                                                                                                                                                                                                |
| :------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id             | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />A unique ID that identifies the account in the B2BDSP.                                                                                                                                                    |
| access\_token  | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />New access token                                                                                                                                                                                          |
| refresh\_token | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />refresh token<br />*The expiration date of the refresh token is 10 years, and the same value will be returned during the validity period. If it has expired, an error(status code:400) will be returned.* |
| expires\_in    | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Expiration date of access token（Seconds）                                                                                                                                                                    |
| token\_type    | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Type of token                                                                                                                                                                                             |

<br />

## How to Retrieve ECG Data

The ECG waveform(atc file) will be obtained in zip format.

<span style={{color: "red"}}>Note:The ECG data (Waveform) is stored in files with the '.atc' extension. This format is based on AliveCor’s proprietary specifications. For detailed information regarding the specifications, please contact AliveCor directly.</span>

```c Request Sample
curl -i -X GET
  -H "Authorization:bearer eyJraWQiOiJWSnZQdmYrTEtyQlQx…" \
  -H "MyLoginName:test1234" \
  -H "DeviceCategory:b_16" \
  -H "ClientApplicationId:1" \
  -H "DeviceModel:AB-cd_0.1" \
  -H "DeviceSerialId:1234567890" \
  -H "UserNumberInDevice:1" \
  -H "MeasureDateFrom:9999999999999" \
  'https://{B2BDSP server domain}/a/b2b-data-api/v1.0/wps/17/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/partners/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/groups/zzzzzzzzzzzz/users/aaaaaaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaa/vital-signs/base64'
```
```c Response Sample
{
  "DataEncoding":"base64",
  "DataType":"application/zip",
  "Data":"UEsDBAoAAAAAAF1/zVaD…"
}
```

### Request Header and Request Parameters

|        | Endpoint                                                                                                                                                                                                                                                                                                                                                                           |
| :----- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|        | https\://\{B2BDSP server domain} <sup><a href="#footnote-ref-7">7</a></sup>/a/b2b-data-api/v1.0/wps/17/\{WP-ID} <sup><a href="#footnote-ref-7">7</a></sup>/partners/\{Partner ID} <sup><a href="#footnote-ref-7">7</a></sup>/groups/\{Group ID} <sup><a href="#footnote-ref-8">8</a></sup>/users/\{OMRON connect ID} <sup><a href="#footnote-ref-8">8</a></sup>/vital-signs/base64 |
| Method | GET                                                                                                                                                                                                                                                                                                                                                                                |

<p id="footnote-ref-7"><span style={{ color: "blue", fontSize: "12px" }}>7:"B2BDSP server domain", "WP-ID", and "Partner ID" will be offered after signing the contracts.</span></p>

<p id="footnote-ref-8"><span style={{ color: "blue", fontSize: "12px" }}>8:"Group ID" and "OMRON connect ID" can be found on the admin portal site.</span></p>

|        |                                                                                |                                                                                                                                                      |
| :----- | :----------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- |
| Header | Authorization <span style={{ color: "red", fontSize: "12px" }}>required</span> | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Valid access token “bearer “ + access token                                     |
|        | MyLoginName <span style={{ color: "red", fontSize: "12px" }}>required</span>   | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Login name when access token is acquired                                        |
|        | DeviceCategory                                                                 | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />When acquiring an ECG file, 'b\_16' is fixed.                                   |
|        | ClientApplicationId                                                            | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />A number between 0 and 3. ※Specify clientApplicationID of vital data.             |
|        | DeviceModel                                                                    | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify the value of deviceModel of vital data.                                 |
|        | DeviceSerialId                                                                 | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify the value of deviceSerialIDList for vital data.                         |
|        | UserNumberInDevice                                                             | <span style={{ color: "gray", fontSize: "12px" }}>int</span><br />Numeric value from 1 to 4. (Specify the value of userNumberInDevice of vital data) |
|        | MeasureDateFrom                                                                | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Unixtime milliseconds ※Specify the value of measureDateFrom of vital data.        |

### Response Status Code (Sample)

| Value                       | Description                                                                                                                          |
| :-------------------------- | :----------------------------------------------------------------------------------------------------------------------------------- |
| 200                         | Success                                                                                                                              |
| 400 (Bad Request)           | Insufficient / invalid request header, Invalid request parameter, URL is wrong, When the size of the response data exceeds 5MB, etc. |
| 401 (Unauthorized)          | Authentication Failure, etc.                                                                                                         |
| 404 (Not Found)             | Specified file does not exist, etc.                                                                                                  |
| 405 (Method Not Allowed)    | Method Not Allowed, etc.                                                                                                             |
| 500 (Internal Server Error) | Internal Server Error, etc.                                                                                                          |

### Response Data Structure

| Key          | Description                                                                                                                                          |
| :----------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- |
| DataEncoding | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Fixed to 'base64'.                                                              |
| DataType     | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Fixed to 'application/zip'.                                                     |
| Data         | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />A string obtained by base64 encoding the zip file that compressed the ECG file. |

***

# Group Deregistration Steps

If you want to stop data integration for a specific user from the DSP—for example, when the user cancels their subscription to the linked service—you can use this API to remove them from the group, thereby stopping the data integration for that user.

## Step1: Get an access token

```c Request Sample
curl -v -X POST \
-H "Content-Type: application/json" \
  "https://{authentication server domain}/oauth2/token" \
  -d '{
        "grant_type": "password",
        "username": "user_123456",
        "password": "123ABC"
      }'
```
```c Response Sample
{
  "id" : {USER_ID},
  "access_token" : {ACCESS_TOKEN},
  "refresh_token" : {REFRESH_TOKEN},
  "expires_in" : 2147483647,
  "token_type" : "bearer"
}
```

### Request Header and Body Parameters

|          |                                                                                                           |
| :------- | :-------------------------------------------------------------------------------------------------------- |
| Endpoint | https\://\{authentication server domain} <sup><a href="#footnote-ref-deletion-1">1</a></sup>/oauth2/token |
| Method   | POST                                                                                                      |

<p id="footnote-ref-deletion-1"><span style={{ color: "blue", fontSize: "12px" }}>1:Authentication server domain will be presented by OMRON Healthcare.</span></p>

|        |                                                                               |                                                                                                                     |
| :----- | :---------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------ |
| Header | Content-Type <span style={{ color: "red", fontSize: "12px" }}>required</span> | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify “application/json”                     |
| Body   | grant\_type <span style={{ color: "red", fontSize: "12px" }}>required</span>  | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify "password”.                            |
|        | username <span style={{ color: "red", fontSize: "12px" }}>required</span>     | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify username for partner or group account. |
|        | password <span style={{ color: "red", fontSize: "12px" }}>required</span>     | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Specify password for partner or group account. |

### Response Parameters

|                |                                                                                                                                  |
| :------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| id             | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />A unique ID that identifies the account in the B2BDSP.      |
| access\_token  | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Access token                                                |
| refresh\_token | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Refresh token<br />*Refresh tokens are valid for 10 years.* |
| expires\_in    | <span style={{ color: "gray", fontSize: "12px" }}>long</span><br />Expiration date of access token（Seconds）                      |
| token\_type    | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Type of token                                               |

### Response Status Code (Sample)

| Value             | Description                                                                                 |
| :---------------- | :------------------------------------------------------------------------------------------ |
| 200               | Success                                                                                     |
| 400 (Bad Request) | Example:<br />"Invalid request parameter"<br />"URL is wrong"<br />"Authentication failure" |
| 404 (Not Found)   | Example:<br />"Request resource not found"                                                  |
| 500               | Example:<br />"Internal Server Error"                                                       |

## Group Deregistration

```c Request Sample
curl -i -X DELETE  
  -H "Authorization:bearer xdrgPxxjHV2brPBu8aQ_XrrYI-ymVORNS3dwap9wM74" \
  -H "MyLoginName:XXX111" \
  'https://{B2B Data service platform server domain}/a/b2b-data-api/v1.0/groups/5/{Group ID}/users/{OMRON connect ID}'
```

### Request Header and Request Parameters

|        |                                                                                |                                                                                                                  |
| :----- | :----------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------- |
| Method | DELETE                                                                         |                                                                                                                  |
| Header | Authorization <span style={{ color: "red", fontSize: "12px" }}>required</span> | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Valid access token “bearer “ + access token |
|        | MyLoginName <span style={{ color: "red", fontSize: "12px" }}>required</span>   | <span style={{ color: "gray", fontSize: "12px" }}>string</span><br />Login name when access token is acquired    |

### Response Status Code (Sample)

| Value                   | Description                                                                                                 |
| :---------------------- | :---------------------------------------------------------------------------------------------------------- |
| 200                     | Success                                                                                                     |
| 400 (Bad Request)       | Example:<br />"Invalid request header"<br />"URL is wrong"<br />"The size of the response data exceeds 5MB" |
| 401 (Unauthorized)      | Example:<br />"Authentication failure"                                                                      |
| 405(Method Not Allowed) | Example:<br />"Invalid method"                                                                              |
| 500                     | Example:<br />"Internal Server Error"                                                                       |

<br />