본문으로 건너뛰기
hs-sql-agent
3.0.0
문서 3.0.0
문서 참조

기존 API 요청 및 응답 예시

Admin UI에서 발급한 API 키로 기존 관리 REST API를 호출하는 예시.

Admin UI의 Runtime → Management API Keys에서 키를 만든 다음, 백엔드는 X-API-Key로 기존 /api를 호출합니다. 아래는 연동 서비스가 실제로 호출하는 API입니다.

GET: 데이터베이스 연결 목록

필요 권한: /runtime/db-management.view. 성공 시 HTTP 200으로 DbManagementVM 배열을 반환합니다. 아래는 일부 필드입니다.

curl -X GET "https://agent.example.com/api/DbManagement" \
  -H "X-API-Key: ${HS_MANAGEMENT_API_KEY}"

200 OK — JSON(일부 필드만 표시):

[
  {
    "id": 1,
    "name": "Production DB",
    "sqlProvider": "PostgreSql",
    "host": "db.internal",
    "database": "orders",
    "isBootstrapManaged": false
  }
]

POST: Custom Tool 생성

필요 권한: /runtime/custom-tools.create. 실제 dbManagementId를 입력하고 SQL Template은 데이터베이스에 맞게 수정하세요.

curl -X POST "https://agent.example.com/api/CustomSqlTool" \
  -H "X-API-Key: ${HS_MANAGEMENT_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "list_orders",
    "description": "List order identifiers",
    "type": "Query",
    "sqlTemplate": "SELECT id FROM orders",
    "dbManagementId": 1
  }'

성공 시 201 Created와 CustomSqlTool 객체를 반환합니다. 서버에서 생성하는 일부 필드를 보여줍니다.

{
  "id": 42,
  "name": "list_orders",
  "description": "List order identifiers",
  "sqlTemplate": "SELECT id FROM orders",
  "type": "Query",
  "parametersJson": null,
  "dbManagementId": 1,
  "status": "Draft",
  "publishedRevisionId": null,
  "publishedIdentity": null,
  "createdAt": "2026-10-18T09:00:00Z",
  "lastModifiedAt": null
}

주요 HTTP 응답 코드

HTTP 설명
200 성공
201 생성됨
204 성공(본문 없음)
400 잘못된 요청
401 인증 필요
403 권한 부족
404 리소스를 찾을 수 없음
409 충돌

다른 API 안내

전체 경로는관리 REST API 목록을 참고하세요. 누락된 응답 Schema는 OpenAPI PR #294에서 보완 중입니다.