데이터셋 목록 조회

검색 조건과 일치하는 데이터셋 목록을 조회합니다.

필요 권한

사용자 이상의 계정으로 이용할 수 있습니다. 본인이 소유했거나 공유받은 데이터셋만 대상이 됩니다.

HTTP 요청

GET /api/sonar/datasets
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
     "https://HOSTNAME/api/sonar/datasets?offset=0&limit=20&keywords=login"
요청 매개변수
필수타입설명비고
offsetX32비트 정수건너뛸 갯수기본값: 0
limitX32비트 정수최대 갯수기본값: 2147483647
keywordsX문자열이름과 설명에서 검색할 키워드-

정상 응답

{
  "total_count": 1,
  "datasets": [
    {
      "guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "type": "query",
      "name": "로그인 실패 데이터셋",
      "description": "최근 로그인 실패 이벤트",
      "pivot": null,
      "query": "table login | search result == \"fail\"",
      "owner_guid": "11111111-2222-3333-4444-555555555555",
      "owner_name": "홍길동",
      "owner_login_name": "gdhong",
      "privilege_type": "owner",
      "shared_users": [
        {
          "type": "user",
          "guid": "66666666-7777-8888-9999-000000000000",
          "name": "김철수",
          "read_only": true,
          "created": "2026-06-18 10:30:25+0900"
        }
      ],
      "shared_groups": [],
      "app_code": null,
      "app_built_in": null,
      "created": "2026-06-18 10:00:00+0900",
      "updated": "2026-06-18 10:30:25+0900"
    }
  ]
}
  • total_count (32비트 정수): 검색 조건과 일치하는 전체 건수
  • datasets (배열): 데이터셋 목록
    • guid (문자열): 데이터셋 식별자
    • type (문자열): 데이터셋 유형. query 또는 pivot
    • name (문자열): 데이터셋 이름
    • description (문자열): 데이터셋 설명
    • pivot (문자열): 피벗 설정 JSON 문자열. 목록 조회에서는 원본 JSON 문자열로 반환되며, 값이 없으면 null
    • query (문자열): 쿼리 문자열
    • owner_guid (문자열): 소유자 계정 식별자
    • owner_name (문자열): 소유자 이름
    • owner_login_name (문자열): 소유자 로그인 이름
    • privilege_type (문자열): 요청자의 권한 유형
    • shared_users (배열): 공유 대상 계정 목록
      • type (문자열): 공유 대상 유형
      • guid (문자열): 공유 대상 계정 식별자
      • name (문자열): 공유 대상 이름
      • read_only (불리언): 읽기 전용 공유 여부
      • created (문자열): 공유 생성 시각. yyyy-MM-dd HH:mm:ssZ 형식
    • shared_groups (배열): 공유 대상 계정 그룹 목록. shared_users와 동일한 구조
    • app_code (문자열): 데이터셋을 제공한 앱 코드. 값이 없으면 null
    • app_built_in (불리언): 앱 기본 제공 데이터셋 여부. 값이 없으면 null
    • created (문자열): 생성 시각. yyyy-MM-dd HH:mm:ssZ 형식
    • updated (문자열): 수정 시각. yyyy-MM-dd HH:mm:ssZ 형식

오류 응답

offset, limit 값이 정수가 아닌 경우

HTTP 상태 코드 400 응답

{
  "error_code": "invalid-argument",
  "error_msg": "'offset' parameter should be int type"
}
권한이 없는 경우

HTTP 상태 코드 500 응답

{
  "error_code": "illegal-state",
  "error_msg": "no-permission"
}