Device API

기본 정보

BaseURL

Phase

URL

Description

QA (DEV)

https://{region}-qa-connect.lgthinq.com

region

  • KIC : Asia
  • EIC : Europe
  • AIC : North/South America

OP

https://{region}-connect.lgthinq.com

API List

Method

End-point

Sync/ Async

Response Format

Summary

GET

/v2/devices

동기

JSON

사용자의 디바이스 목록을 조회합니다.

GET

/v2/devices/profile/{DEVICE_ID}

동기 JSON

디바이스의 프로파일을 조회합니다.

GET

/v2/devices/status/{DEVICE_ID}

동기 JSON

디바이스의 상태를 조회합니다.

POST

/v2/devices/control/{DEVICE_ID}

동기

JSON

디바이스를 제어합니다.

 

디바이스 목록 조회

GET /v2/devices

사용자가 소유한 디바이스의 목록을 조회합니다.

요청

GET /v2/devices HTTP/1.1
Host: kic-connect.lgthinq.com
Content-Type: application/json
Authorization: Bearer {ACCESS_TOKEN}
x-message-id: {MESSAGE_ID}
x-service-id: {SERVICE_ID}
x-service-key: {SERVICE_KEY}
x-country-code: {COUNTRY_CODE}

Parameter

Location

Name

Required

Type

Default

Description

Example

Header Common Header Y - - - -

응답

응답 메시지에 대해서는 다음을 참조하십시오

성공 

성공 시, responseCode가 정상 코드 (0000)로 리턴됩니다. 응답 결과는 response 오브젝트를 통해 확인할 수 있습니다.  

Property

Type

Description

response

array(object)

 

 

deviceId

string

사용자가 등록한 디바이스 ID

 

deviceInfo

object

디바이스 상세 정보

   

deviceType

string

디바이스 타입

   

modelName

string

디바이스 모델 이름

   

alias

string

디바이스 별명

   

reportable

bool

디바이스 Event 허용 여부

   

groupId  

string

deviceType이 DEVICE_WASHTOWER_WASHERDEVICE_WASHTOWER_DRYER인 경우에 전달됩니다.

실패

실패 시, responseCode가 정상 코드 (0000)가 아닌 다른 값으로 리턴됩니다. 상세 에러 내용은 response > error 오브젝트를 통해 확인할 수 있습니다.  

Example

Request

curl -v -X GET 'https://kic-connect.lgthinq.com/v2/devices' \
-H 'Authorization: Bearer {EMP_ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-message-id: Ig7pfvgQQFiLjrKoBFJ0xg' \
-H 'x-service-id: {YOUR_SERVICE_ID}' \
-H 'x-service-key: {YOUR_SERVICE_KEY}' \
-H 'x-country-code: KR'

Response

{
  "messageId": "Ig7pfvgQQFiLjrKoBFJ0xg",
  "requestId": "n9Wj2DsEs9rSdk77iUdXok",
  "response": [{
      "deviceId": "TQS-7E950117-52AF-4E8E-8ED3-4778C6D67435",
      "deviceInfo": {
        "alias": "PAC1",
        "codeName": "standard",
        "deviceType": "DEVICE_AIR_CONDITIONER",
        "modelName": "PAC_910604_KR",
        "reportable": true
      }
    },
    {
      "deviceId": "TQS-A0FA49E5-1B95-4F9A-89B5-E4156706276A",
      "deviceInfo": {
        "alias": "",
        "codeName": "standard",
        "deviceType": "DEVICE_AIR_PURIFIER",
        "modelName": "AIR_910604_WW",
        "reportable": true
      }
    }
  ],
  "responseCode": "0000",
  "statusCode": 200,
  "timestamp": "2020-08-20T01:09:58.224604"
}

 

디바이스 프로파일 조회

GET /v2/devices/profile/{DEVICE_ID}

DEVICE_ID로 지정된 디바이스의 프로파일을 조회합니다. 

요청

GET /v2/devices/profile/{DEVICE_ID} HTTP/1.1
Host: kic-connect.lgthinq.com
Content-Type: application/json
Authorization: Bearer {ACCESS_TOKEN}
x-message-id: {MESSAGE_ID}
x-service-id: {SERVICE_ID}
x-service-key: {SERVICE_KEY}
x-country-code: {COUNTRY_CODE}

Parameter

Location

Name

Required

Type

Default

Description

Example

Header

Common Header

Y - - - -

Path

DEVICE_ID

Y string -

디바이스 목록 조회를 통해 확인한 사용자의 디바이스 ID

 

응답

응답 메시지에 대해서는 다음을 참조하십시오

성공 

성공 시, responseCode가 정상 코드 (0000)로 리턴됩니다. 응답 결과는 response 오브젝트를 통해 확인할 수 있습니다.  

Property

Type

Description

response

array or object

해당 디바이스의 프로파일

각 가전 타입 별 프로파일 구조는 Device Profile을 참조하시기 바랍니다.

실패

실패 시, responseCode가 정상 코드 (0000)가 아닌 다른 값으로 리턴됩니다. 상세 에러 내용은 response > error 오브젝트를 통해 확인할 수 있습니다.  

Example

Request

curl -v -X GET 'https://kic-connect.lgthinq.com/v2/devices/profile/{DEVICE_ID}' \
-H 'Authorization: Bearer {EMP_ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-message-id: Ig7pfvgQQFiLjrKoBFJ0xg' \
-H 'x-service-id: {YOUR_SERVICE_ID}' \
-H 'x-service-key: {YOUR_SERVICE_KEY}' \
-H 'x-country-code: KR'

Response

{
  "messageId": "Ig7pfvgQQFiLjrKoBFJ0xg",
  "requestId": "KCM53ofamBL6ctLsxZvLpC",
  "response": {
    "notification": {
      "push": [
        "LACK_OF_WATER",
        "POLLUTION_IS_HIGH",
        "TIME_TO_CLEAN_FILTER",
        "TIME_TO_CHANGE_FILTER"
      ]
    },
    "property": {
      "airFlow": {
        "windStrength": {
          "mode": [
            "r",
            "w"
          ],
          "type": "enum",
          "value": {
            "r": [
              "MID",
              "LOW",
              "POWER",
              "HIGH",
              "AUTO"
            ],
            "w": [
              "MID",
              "LOW",
              "POWER",
              "HIGH",
              "AUTO"
            ]
          }
        }
      },
      "airPurifierJobMode": {
        "currentJobMode": {
          "mode": [
            "r",
            "w"
          ],
          "type": "enum",
          "value": {
            "r": [
              "DUAL_CLEAN",
              "AUTO",
              "CLEAN",
              "CIRCULATOR"
            ],
            "w": [
              "DUAL_CLEAN",
              "AUTO",
              "CLEAN",
              "CIRCULATOR"
            ]
          }
        }
      },
      "airQualitySensor": {
        "PM1": {
          "mode": [
            "r"
          ],
          "type": "number"
        },
        "PM10": {
          "mode": [
            "r"
          ],
          "type": "number"
        },
        "PM2": {
          "mode": [
            "r"
          ],
          "type": "number"
        },
        "humidity": {
          "mode": [
            "r"
          ],
          "type": "number"
        },
        "monitoringEnabled": {
          "mode": [
            "r"
          ],
          "type": "enum",
          "value": {
            "r": [
              "ON_WORKING",
              "ALWAYS"
            ]
          }
        },
        "oder": {
          "mode": [
            "r"
          ],
          "type": "number"
        },
        "totalPollution": {
          "mode": [
            "r"
          ],
          "type": "number"
        }
      },
      "operation": {
        "airPurifierOperationMode": {
          "mode": [
            "r",
            "w"
          ],
          "type": "enum",
          "value": {
            "r": [
              "POWER_ON",
              "POWER_OFF"
            ],
            "w": [
              "POWER_ON",
              "POWER_OFF"
            ]
          }
        }
      },
      "timer": {
        "absoluteHourToStart": {
          "mode": [
            "r",
            "w"
          ],
          "type": "number"
        },
        "absoluteHourToStop": {
          "mode": [
            "r",
            "w"
          ],
          "type": "number"
        },
        "absoluteMinuteToStart": {
          "mode": [
            "r",
            "w"
          ],
          "type": "number"
        },
        "absoluteMinuteToStop": {
          "mode": [
            "r",
            "w"
          ],
          "type": "number"
        }
      }
    }
  },
  "responseCode": "0000",
  "statusCode": 200,
  "timestamp": "2020-08-20T01:57:56.986721"
}

 

디바이스 상태 조회

GET /v2/devices/status/{DEVICE_ID}

DEVICE_ID로 지정된 디바이스의 상태를 조회합니다. 

요청

GET /v2/devices/status/{DEVICE_ID} HTTP/1.1
Host: kic-connect.lgthinq.com
Content-Type: application/json
Authorization: Bearer {ACCESS_TOKEN}
x-message-id: {MESSAGE_ID}
x-service-id: {SERVICE_ID}
x-service-key: {SERVICE_KEY}
x-country-code: {COUNTRY_CODE}

Parameter

Location

Name

Required

Type

Default

Description

Example

Header

Common Header

Y - - - -

Path

DEVICE_ID

Y string -

디바이스 목록 조회를 통해 확인한 사용자의 디바이스 ID

 

응답

응답 메시지에 대해서는 다음을 참조하십시오

성공 

성공 시, responseCode가 정상 코드 (0000)로 리턴됩니다. 응답 결과는 response 오브젝트를 통해 확인할 수 있습니다.  

Property

Type

Description

response

array or object

디바이스 프로파일 기반의 해당 기기의 상태 정보

각 가전 타입 별 프로파일 구조는 Device Profile을 참조하시기 바랍니다.

실패

실패 시, responseCode가 정상 코드 (0000)가 아닌 다른 값으로 리턴됩니다. 상세 에러 내용은 response > error 오브젝트를 통해 확인할 수 있습니다.  

Example

Request

curl -v -X GET 'https://kic-connect.lgthinq.com/v2/devices/status/{DEVICE_ID}' \
-H 'Authorization: Bearer {EMP_ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-message-id: Ig7pfvgQQFiLjrKoBFJ0xg' \
-H 'x-service-id: {YOUR_SERVICE_ID}' \
-H 'x-service-key: {YOUR_SERVICE_KEY}' \
-H 'x-country-code: KR'

Response

{
  "messageId": "Ig7pfvgQQFiLjrKoBFJ0xg",
  "requestId": "hVKGTqmrgY26cCVTCpzj24",
  "response": {
    "doorStatus": [{
      "doorState": "CLOSE",
      "locationName": "MAIN"
    }],
    "refrigeration": {
      "expressMode": false,
      "freshAirFilter": "OFF"
    },
    "temperature": [{
        "locationName": "FRIDGE",
        "targetTemperature": 5,
        "unit": "C"
      },
      {
        "locationName": "FREEZER",
        "targetTemperature": -18,
        "unit": "C"
      }
    ]
  },
  "responseCode": "0000",
  "statusCode": 200,
  "timestamp": "2020-08-25T04:15:39.107817"
}

 

디바이스 제어

POST /v2/devices/control/{DEVICE_ID}

DEVICE_ID로 지정된 디바이스를 제어합니다. 

요청

POST /v2/devices/control/{DEVICE_ID} HTTP/1.1
Host: kic-connect.lgthinq.com
Content-Type: application/json
Authorization: Bearer {ACCESS_TOKEN}
x-message-id: {MESSAGE_ID}
x-service-id: {SERVICE_ID}
x-service-key: {SERVICE_KEY}
x-country-code: {COUNTRY_CODE}

{ DEVICE_COMMAND }

Parameter

Location

Name

Required

Type

Default

Description

Example

Header

Common Header

Y - - - -

Path

DEVICE_ID

Y string -

디바이스 목록 조회를 통해 확인한 사용자의 디바이스 ID

 

Body

디바이스 제어 명령

Y

array or object  

디바이스 프로파일 기반으로 작성된 제어 명령어

각 가전 타입 / 모델 별로 지원하는 제어 명령어가 다릅니다. 먼저, 디바이스 프로파일 조회를 통해 제어 가능한 값을 확인 후에 명령어를 전송하십시오.
 

응답

응답 메시지에 대해서는 다음을 참조하십시오

성공 

성공 시, responseCode가 정상 코드 (0000)로 리턴됩니다. 응답 결과는 response 오브젝트를 통해 확인할 수 있습니다.  

Property

Type

Description

response

object

비어있는 값을 반환합니다.

실패

실패 시, responseCode가 정상 코드 (0000)가 아닌 다른 값으로 리턴됩니다. 상세 에러 내용은 response > error 오브젝트를 통해 확인할 수 있습니다.  

 

Example

Request

curl -v -X POST 'https://kic-connect.lgthinq.com/v2/devices/control/{DEVICE_ID}' \
-H 'Authorization: Bearer {EMP_ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-message-id: Ig7pfvgQQFiLjrKoBFJ0xg' \
-H 'x-service-id: {YOUR_SERVICE_ID}' \
-H 'x-service-key: {YOUR_SERVICE_KEY}' \
-H 'x-country-code: KR' \
-d '{
  "refrigeration": {
    "expressMode": true
  }
}'

Response

{
  "messageId": "Ig7pfvgQQFiLjrKoBFJ0xg",
  "requestId": "jSYRye5jhs4dm2ckEHBwbC",
  "response": {},
  "responseCode": "0000",
  "statusCode": 200,
  "timestamp": "2020-08-25T04:17:39.478024"
}