Nubison IoT Developers ๐Ÿ‡ฐ๐Ÿ‡ท
NUBISON Home์‚ฌ์šฉ์ž ๊ฐ€์ด๋“œREST APIs๐Ÿ‡บ๐Ÿ‡ธ English
  • ์‹œ์ž‘ํ•˜๊ธฐ
  • MQTT
  • TCP/IP
  • HTTP
Powered by GitBook
On this page
  • ์„œ๋ฒ„ ์—ฐ๊ฒฐ
  • ๋””๋ฐ”์ด์Šค ๋กœ๊ทธ์ธ
  • ๋””๋ฐ”์ด์Šค ๋กœ๊ทธ์•„์›ƒ
  • ๋ฐ์ดํ„ฐ ์ „์†ก
  • ์ž๋™ ๋“œ๋ผ์ด๋ฒ„ ์ด์šฉ ์‹œ ๊ธฐ๋ณธ ํŽ˜์ด๋กœ๋“œ ๊ทœ๊ฒฉ

Was this helpful?

HTTP

Nubison IoT HTTP ํ‘œ์ค€ ๊ทœ๊ฒฉ์ž…๋‹ˆ๋‹ค.

PreviousTCP/IP

Last updated 4 months ago

Was this helpful?

Nubison IoT ํ”Œ๋žซํผ์— HTTP๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ๋””๋ฐ”์ด์Šค๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค.

์•„๋ž˜ ๊ณผ์ •์„ ์ง„ํ–‰ํ•˜๊ธฐ ์ „์—, ์— ์ ํžŒ ๊ณผ์ •๋“ค์ด ๋ฐ˜๋“œ์‹œ ์„ ํ–‰๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์„œ๋ฒ„ ์—ฐ๊ฒฐ

Nubison IoT ํ”Œ๋žซํผ์— HTTP๋กœ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์ •๋ณด์ž…๋‹ˆ๋‹ค.

  • ์„œ๋ฒ„ URL: ์—ฐ๋™ ์ง„ํ–‰์‹œ ์•ˆ๋‚ด

๋””๋ฐ”์ด์Šค ๋กœ๊ทธ์ธ

Nubison IoT ํ”Œ๋žซํผ์— ๋””๋ฐ”์ด์Šค๋ฅผ ๋กœ๊ทธ์ธํ•ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์š”์ฒญ์„ ์ง„ํ–‰ํ•˜๊ธฐ ์ „์— ๋กœ๊ทธ์ธ์„ ๋ฐ˜๋“œ์‹œ ์ง„ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋กœ๊ทธ์ธ ์š”์ฒญ ์‘๋‹ต์œผ๋กœ ๋Œ์•„์˜ค๋Š” ์•ก์„ธ์Šค ํ† ํฐ์„ ์ด์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ์š”์ฒญ๋“ค์„ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ Nubison IoT ํ”Œ๋žซํผ ์›น์—์„œ ํƒ€์ž„๋ผ์ธ์— โ€œํด๋ผ์šฐ๋“œ ์ ‘์†โ€์ด ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.

POST /devices/login

[Request]

Content-Type: application/x-www-form-urlencoded

<Header>

key
ํ•„์ˆ˜ ์—ฌ๋ถ€
์„ค๋ช…

Authorization

O

Basic <${ํด๋ผ์ด์–ธํŠธ ID}:${ํด๋ผ์ด์–ธํŠธ Secret}์„ base64 ์ธ์ฝ”๋”ฉํ•œ ์ŠคํŠธ๋ง>

ex.

ํด๋ผ์ด์–ธํŠธ ID = AbCdE123, ํด๋ผ์ด์–ธํŠธ Secret = xyzabc123 ์ด๋ผ๊ณ  ํ•˜๋ฉด,

Basic AbCdE123:xyzabc123

์—ฌ๊ธฐ์—์„œ AbCdE123:xyzabc123๋ฅผ Base64 ์ธ์ฝ”๋”ฉ

(Basic QmFzaWMgQWJDZEUxMjM6eHl6YWJjMTIz)์„ ๋ณด๋‚ด์ฃผ์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค.

<Body>

key
required
๋น„๊ณ 

deviceKey

O

๋””๋ฐ”์ด์Šค ํ‚ค

[Response] Content-Type: application/json

status

message

body

200

OK

{

"AccessToken" : "...."

}

400

Bad Request

{

"code" :"ERROR401",

"message": "authorization header does not exist."

}

{

"code" :"ERROR402",

"message": "deviceKey is missing."

}

{

"code" :"ERROR403",

"message": "client is not valid."

}

405

Not Found

// ์„œ๋น„์Šค๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ

415

Invalid content-type

// content-type must be application/json

๋””๋ฐ”์ด์Šค ๋กœ๊ทธ์•„์›ƒ

NUBISON IoT ํ”Œ๋žซํผ์—์„œ ๋””๋ฐ”์ด์Šค๊ฐ€ ๋กœ๊ทธ์•„์›ƒํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉํ–ˆ๋˜ ํ† ํฐ์ด ๋ง์†Œ๋˜๋ฉฐ, Nubison IoT ํ”Œ๋žซํผ ์›น์—์„œ ํƒ€์ž„๋ผ์ธ์— ํด๋ผ์šฐ๋“œ ์ ‘์†ํ•ด์ œ๊ฐ€ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.

POST /devices/logout

[Request]

Content-Type: application/json

<Body>

key
ํ•„์ˆ˜ ์—ฌ๋ถ€
์„ค๋ช…

accessToken

O

NUBISON IoT ํ”Œ๋žซํผ ๋กœ๊ทธ์ธ ์‹œ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ ์ ‘๊ทผ ํ† ํฐ

deviceKey

O

๋””๋ฐ”์ด์Šค ํ‚ค

์˜ˆ์‹œ

{
  "accessToken": "FDFC4115B4275502fc6a6111",
  "deviceKey": "IQY9TFMH_HTTPABC"
}

[Response] Content-Type: application/json

status

message

body

200

OK

// ์„œ๋ฒ„์—์„œ ๋กœ๊ทธ์ธ ์‹œ ๋ฐœ๊ธ‰ํ•œ access token์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

400

Bad Request

{

"code" :"ERROR402",

"message": "deviceKey is missing."

}

{

"code" :"ERROR404",

"message": "accessToken is missing."

}

401

Unauthorized

// accessToken is not valid.

405

Not Found

service is not found. or device is not registered.

415

Invalid content-type

// content-type must be application/json

๋ฐ์ดํ„ฐ ์ „์†ก

Nubison IoT ํ”Œ๋žซํผ์— ๋””๋ฐ”์ด์Šค ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•ฉ๋‹ˆ๋‹ค.

POST /devices/data

[Request] Content-Type: application/json

<Body>

key
ํ•„์ˆ˜ ์—ฌ๋ถ€
๋น„๊ณ 

accessToken

O

๋กœ๊ทธ์ธ ์‹œ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ ์ ‘๊ทผ ํ† ํฐ

deviceKey

O

๋””๋ฐ”์ด์Šค ํ‚ค

data

O

๋””๋ฐ”์ด์Šค ๋ฐ์ดํ„ฐ

[Response] Content-Type: application/json

status

message

body

201

Created

400

Bad Request

{

"code" :"ERROR402",

"message": "deviceKey is missing."

}

{

"code" :"ERROR404",

"message": "accessToken is missing."

}

{

"code" :"ERROR406",

"message": "data is missing."

}

401

Unauthorized

// accessToken is not valid.

415

Invalid content-type

// content-type must be application/json

์ž๋™ ๋“œ๋ผ์ด๋ฒ„ ์ด์šฉ ์‹œ ๊ธฐ๋ณธ ํŽ˜์ด๋กœ๋“œ ๊ทœ๊ฒฉ

Nubison IoT ํ”Œ๋žซํผ์—์„œ ์ž๋™ ์ƒ์„ฑ๋œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ด์šฉํ•˜๋Š” ๊ฒฝ์šฐ Body์˜ data ๊ฐ’์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณด๋‚ด์ฃผ์‹œ๋ฉด ๋””๋ฐ”์ด์Šค๊ฐ€ ๋ณด๋‚ธ ๋ฐ์ดํ„ฐ๋ฅผ Nubison IoT ํ”Œ๋žซํผ์— ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

{
  ...
  "data": {
    "์œ ๋‹›๋ฒˆํ˜ธ": ์œ ๋‹› ๊ฐ’
  }
}

์ž๋™๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ด์šฉํ•˜์‹œ๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

  • "|" ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ผ๋ จ์˜ ๋ฌธ์ž์—ด๋กœ ์ „์†กํ•ฉ๋‹ˆ๋‹ค. (์ž๋™ ์ƒ์„ฑ๋œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ด์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ๋””๋ฐ”์ด์Šค๊ฐ€ ๋ณด๋‚ธ ๋ฐ์ดํ„ฐ๋ฅผ Nubison IoT ํ”Œ๋žซํผ ์„œ๋ฒ„์—์„œ "|" ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋ฅธ ํ›„ ์œ ๋‹› ๋ฒˆํ˜ธ ์ˆœ์„œ๋Œ€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์–ด ์ €์žฅํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.)

  • ์ˆซ์ž, ์œ„์น˜ ๋ฐ์ดํ„ฐ๋Š” ์ˆซ์ž ํฌ๋งท์œผ๋กœ,

  • ๋ฌธ์ž ๋ฐ์ดํ„ฐ๋Š” ๋ฌธ์ž ํฌ๋งท์œผ๋กœ,

  • ์ˆซ์ž ๋ฐฐ์—ด ๋ฐ์ดํ„ฐ๋Š” ","๋กœ ์—ฐ์ ‘ํ•œ ์ˆซ์ž

  • ๋ฌธ์ž ๋ฐฐ์—ด ๋ฐ์ดํ„ฐ๋Š” ","๋กœ ์—ฐ์ ‘ํ•œ ๋ฌธ์ž

  • ์ด๋ฏธ์ง€๋Š” base64๋กœ ์ธ์ฝ”๋”ฉํ•œ ์ŠคํŠธ๋ง

0๋ฒˆ: ์˜จ๋„ (์ˆซ์ž)
1๋ฒˆ: ์Šต๋„ (์ˆซ์ž)
2๋ฒˆ: ๋ชจ๋“œ (๋ฌธ์ž)
3๋ฒˆ: ์œ„๋„ (์œ„์น˜)
4๋ฒˆ: ๊ฒฝ๋„ (์œ„์น˜)
5๋ฒˆ: ์˜จ๋„ ๋ฐ์ดํ„ฐ ๋ฐฐ์—ด (์ˆซ์ž ๋ฐฐ์—ด)
6๋ฒˆ: ๋ชจ๋“œ ๋ฐ์ดํ„ฐ ๋ฐฐ์—ด (๋ฌธ์ž ๋ฐฐ์—ด)
7๋ฒˆ: ์ดฌ์˜ ์ด๋ฏธ์ง€ (์ด๋ฏธ์ง€)

๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณด๋‚ธ๋‹ค๋ฉด

0๋ฒˆ ์œ ๋‹› "์˜จ๋„" ๋ฐ์ดํ„ฐ ๊ฐ’: 32
1๋ฒˆ ์œ ๋‹› "์Šต๋„" ๋ฐ์ดํ„ฐ ๊ฐ’: 46
2๋ฒˆ ์œ ๋‹› "๋ชจ๋“œ" ๋ฐ์ดํ„ฐ ๊ฐ’: "default"
3๋ฒˆ ์œ ๋‹› "์œ„๋„" ๋ฐ์ดํ„ฐ ๊ฐ’: 38.23
4๋ฒˆ ์œ ๋‹› "๊ฒฝ๋„" ๋ฐ์ดํ„ฐ ๊ฐ’: 128.34
5๋ฒˆ ์œ ๋‹› "์˜จ๋„ ๋ฐ์ดํ„ฐ ๋ฐฐ์—ด" ๋ฐ์ดํ„ฐ ๊ฐ’: [27,28,24,23,25]
6๋ฒˆ ์œ ๋‹› "๋ชจ๋“œ ๋ฐ์ดํ„ฐ ๋ฐฐ์—ด" ๋ฐ์ดํ„ฐ ๊ฐ’: ["default", "sleep", "mood"]
7๋ฒˆ ์œ ๋‹› "์ด๋ฏธ์ง€" ๋ฐ์ดํ„ฐ ๊ฐ’: /9j/4AAQSkZJRgABAQAAAQABAAD/2w...

ํŽ˜์ด๋กœ๋“œ๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ์„ฑํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

{
    "deviceKey": "AZ29TVMH_HTTPSAMPLE123", // ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ๋””๋ฐ”์ด์Šค์˜ ๋””๋ฐ”์ด์Šค ํ‚ค
    "accessToken": "CDAC4215B4271202fc6a6111", // POST /devices/login์„ ํ†ตํ•ด ๋ฐ›์€ ์•ก์„ธ์Šค ํ† ํฐ
    "data": {
        "0": 32,
        "1": 84,
        "2": "default",
        "3": 38.23,
        "4": 128.34,
        "5": [27,28,24,23,25],
        "6": ["default", "sleep", "mood"],
        "7": "/9j/4AAQSkZJRgABAQAAAQABAAD/2w..."
    }
}

์‹œ์ž‘ํ•˜๊ธฐ