createWorkspaceCommand
const url = 'https://dev.api.endueos.com/api/v1/workspaces/wsp_01J9ZK3Q8M4XW7D2N5R6T0V1BC/commands';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"command":"example","input":{},"timeout_ms":1,"request_id":"example","store_image":true,"wait_ms":1,"queue_ttl_ms":1,"retain_output":true}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://dev.api.endueos.com/api/v1/workspaces/wsp_01J9ZK3Q8M4XW7D2N5R6T0V1BC/commands \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "command": "example", "input": {}, "timeout_ms": 1, "request_id": "example", "store_image": true, "wait_ms": 1, "queue_ttl_ms": 1, "retain_output": true }'파라미터
섹션 제목: “파라미터”경로 파라미터
섹션 제목: “경로 파라미터”예시
wsp_01J9ZK3Q8M4XW7D2N5R6T0V1BC요청 본문필수
섹션 제목: “요청 본문필수”object
도구 이름.
도구 입력. 에이전트가 자기 스키마로 검증한다.
object
에이전트가 실행하는 시간의 예산. 보낸 순간부터 센다 (줄에서 기다린 시간은 넣지 않는다). 없으면 OS 의 default_command_timeout_ms.
멱등 키. 없으면 서버가 만든다. sys: 로 시작할 수 없다. 끝난 뒤 24시간 안에 같은 키로 다시 보내면 같은 명령을 돌려준다.
출력의 이미지(image_base64 또는 image_blob)를 저장 객체로 옮기고 storage_object_id 로 바꿔 돌려준다.
이 시간 안에 끝나면 201 + 출력, 아니면 202 를 받는다. 0 이면 바로 202. 0~25000, 기본 25000.
에이전트가 오프라인이거나 전달 창이 찼을 때 줄에서 기다릴 최대 시간. 0 이면 기다리지 않고 409 RESOURCE_OFFLINE·429 RESOURCE_BUSY. 0~3600000, 기본 0.
동기로 건넨 출력도 보관한다 (24시간). 동기로 건네지 못한 출력은 이 값과 무관하게 보관한다.
예시자동 생성
{ "command": "example", "input": {}, "timeout_ms": 1, "request_id": "example", "store_image": true, "wait_ms": 1, "queue_ttl_ms": 1, "retain_output": true}201
섹션 제목: “201”만들었다.
object
명령이 끝났을 때의 응답 — 기록에 출력이 붙는다.
object
object
서버 처리 시간(ms).
예시
{ "data": { "command_id": "cmd_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "resource_id": "res_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "agent_id": "agnt_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "station_id": "stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "actor_type": "user", "status": "queued", "late_status": "succeeded" }}202
섹션 제목: “202”받았지만 아직 끝나지 않았다. Location 으로 상태를 묻는다.
Retry-After 는 다음 조회까지 기다릴 초.
object
명령 기록. 입력 원문은 남기지 않는다. 출력은 보관한 경우에만 output_url 로 24시간 받을 수 있다.
object
object
서버 처리 시간(ms).
예시
{ "data": { "command_id": "cmd_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "resource_id": "res_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "agent_id": "agnt_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "station_id": "stn_01J9ZK3Q8M4XW7D2N5R6T0V1BC", "actor_type": "user", "status": "queued", "late_status": "succeeded" }}응답 헤더
섹션 제목: “응답 헤더”400
섹션 제목: “400”요청 형식이 틀렸다 — VALIDATION_ERROR(details.errors[]) 또는 BAD_REQUEST. 본문은 오류 봉투.
401
섹션 제목: “401”인증이 없거나 무효다 — UNAUTHORIZED. 본문은 오류 봉투.
402
섹션 제목: “402”크레딧이 없다 — INSUFFICIENT_CREDITS (충전하면 다시 된다). 본문은 오류 봉투.
404
섹션 제목: “404”없거나 내 것이 아니다 — *_NOT_FOUND. 본문은 오류 봉투.
409
섹션 제목: “409”지금 상태와 충돌한다 — 코드는 위 설명을 본다. 본문은 오류 봉투.
429
섹션 제목: “429”한도를 넘었다 — Retry-After 초 뒤에 다시. 본문은 오류 봉투.
500
섹션 제목: “500”서버 오류 — INTERNAL_ERROR. 본문은 오류 봉투.
503
섹션 제목: “503”의존 서비스에 닿지 못했다 — 잠시 뒤 다시. 본문은 오류 봉투.
504
섹션 제목: “504”결과를 알 수 없다 — COMMAND_OUTCOME_UNKNOWN, 같은 request_id 로 다시. 본문은 오류 봉투.