Station 한눈에 보기
const url = 'https://dev.api.endueos.com/api/v1/stations/stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC/overview';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://dev.api.endueos.com/api/v1/stations/stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC/overview \ --header 'Authorization: Bearer <token>'데스크톱을 그리는 데 필요한 것을 한 번에 — Station·OS·Device 요약·Dock.
가이드 — Station 과 OS
파라미터
섹션 제목: “파라미터”경로 파라미터
섹션 제목: “경로 파라미터”예시
stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC200
섹션 제목: “200”성공.
object
object
object
Station 이 속한 프로젝트.
프로젝트의 조직 (D-60). 비용을 내는 지갑의 조직이다 (ENDUE-1105 부터 공개).
만든 사람. v0.2.0 에서 Station 안(기기·명령)은 아직 이 사용자만 다룬다. 관리형 Station 이면 관리자가 지정한 주인이다.
Station 에 정확히 하나 딸린 OS. 따로 만들거나 지울 수 없다.
object
이 OS 를 만든 endue OS 릴리스.
object
Station 에 등록할 수 있는 Device 수 (actual·virtual 합계). 1~500, 기본 50.
명령에 timeout_ms 가 없을 때 쓰는 값. 1000~120000, 기본 12000.
허용하는 Device 종류. 기본은 다섯 가지 전부. actual·virtual 모두에 적용된다.
Station 에 만들 수 있는 virtual Device 수. 0~50, 기본 10. 0 이면 virtual Device 를 만들 수 없다.
Station 의 virtual Device 영구 볼륨(Storage) 크기 합계 상한 (GB). 0~2000, 기본 100.
object
compute_status 가 running 인 virtual Device 수.
종류별 개수.
object
최신 등록순. 200개까지.
OS 가 관리하는 기기. actual(사용자의 기기)과 virtual(플랫폼이 띄운 VM) 둘이다.
id 는 Resource 와 같은 res_ 다 — /resources/{resource_id} 는 같은 기기를 v0.1.0 의 Resource 모양으로 보여 준다.
object
Device 의 id — Resource 와 같은 res_ 다 (v0.1.0 이 이미 냈다).
object
등록 상태 (Resource 의 status 와 같다).
에이전트가 접속해 있고 핸드셰이크를 마쳤다. Resource 의 online 과 같은 규칙.
Actual 은 agent 하나, virtual 은 vm·storage(없을 수 있다)·agent.
Virtual Device 의 컴퓨트 한 대.
object
컴퓨트 공급자 — local(로컬 컨테이너)·fly·aws·vultr 등.
Virtual Device 의 영구 볼륨. VM 에 마운트되고, VM 이 멈춰도 남는다. Device 를 지우면 함께 지워진다.
object
vol_
에이전트가 알려 준 기기 정보. 끊겨도 지워지지 않는다.
object
Dock 의 1단 — 실행 진입점의 목록. 순서가 곧 화면의 순서다. Device 와 1단에 고정한 앱을 담는다 (파일·활동·설정 칸은 화면이 그린다).
Dock 은 2단이다. 1단의 Device 를 누르면 그 Device 의 저장한 앱 전부가 2단으로 펼쳐진다 (GET /devices/{device_id}/apps).
Device 를 만들면 끝에 붙는다 — virtual 은 pin_to_dock(기본 true), actual 은 등록할 때.
object
object
device 면 그 Device, app 이면 그 앱이 있는 Device.
화면에 쓰는 이름 — Device 이름 또는 앱 이름.
그 Device 의 kind. 화면이 기본 아이콘을 고르는 데 쓴다.
그 Device 가 온라인인지.
object
서버 처리 시간(ms).
예시
{ "data": { "station": { "station_id": "stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "project_id": "prj_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "org_id": "org_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "status": "active", "os": { "os_id": "osi_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "station_id": "stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "status": "running", "settings": { "allowed_kinds": [ "chrome" ] } } }, "devices": { "items": [ { "device_id": "res_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "station_id": "stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "type": "actual", "kind": "chrome", "status": "pending", "compute_status": "provisioning", "size": "small", "workloads": [ { "type": "vm", "workload_id": "wkl_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "status": "pending" } ] } ] }, "dock": { "station_id": "stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "items": [ { "type": "device", "device_id": "res_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "app_id": "app_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "kind": "chrome", "device_type": "actual", "compute_status": "provisioning" } ] } }}401
섹션 제목: “401”인증이 없거나 무효다 — UNAUTHORIZED. 본문은 오류 봉투.
404
섹션 제목: “404”없거나 내 것이 아니다 — *_NOT_FOUND. 본문은 오류 봉투.
429
섹션 제목: “429”한도를 넘었다 — Retry-After 초 뒤에 다시. 본문은 오류 봉투.
500
섹션 제목: “500”서버 오류 — INTERNAL_ERROR. 본문은 오류 봉투.
503
섹션 제목: “503”의존 서비스에 닿지 못했다 — 잠시 뒤 다시. 본문은 오류 봉투.