행위 프로파일 목록 조회

검색 조건과 일치하는 행위 프로파일 목록을 조회합니다.

필요 권한

사용자 이상의 계정으로 이용할 수 있습니다.

HTTP 요청

GET /api/sonar/behavior-profiles
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
     https://HOSTNAME/api/sonar/behavior-profiles
요청 매개변수
필수타입설명비고
offsetX32비트 정수건너뛸 갯수기본값: 0
limitX32비트 정수최대 갯수기본값: 제한 없음(-1)
keywordsX문자열검색 키워드프로파일 이름, 설명을 검색

정상 응답

{
  "total_count": 1,
  "profiles": [
    {
      "id": 1,
      "guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "name": "사용자 로그인 행위",
      "description": "사용자별 로그인 패턴 프로파일",
      "schedule": "0 0 2 * * ?",
      "key_fields": [
        {
          "name": "user",
          "type": "string"
        }
      ],
      "query": "table login | stats count by user",
      "in_progress": false,
      "build_start": 1718668800000,
      "build_end": 1718668860000,
      "curr_ver": 3,
      "next_ver": 4,
      "rows": 12000,
      "owner_guid": "b2c3d4e5-f6a7-8901-bcde-f23456789012",
      "owner_name": "admin",
      "privilege_type": "owner",
      "shared_users": [
        {
          "type": "user",
          "guid": "c3d4e5f6-a7b8-9012-cdef-345678901234",
          "name": "analyst",
          "read_only": true,
          "created": "2024-06-18 10:00:00+0900"
        }
      ],
      "shared_groups": [],
      "app_code": null,
      "app_built_in": null,
      "created": 1718668800000,
      "updated": 1718668860000
    }
  ]
}
  • total_count (32비트 정수): 검색 조건과 일치하는 전체 건수
  • profiles (배열): 행위 프로파일 목록
    • id (32비트 정수): 프로파일 내부 식별자
    • guid (문자열): 프로파일 GUID
    • name (문자열): 프로파일 이름
    • description (문자열): 프로파일 설명
    • schedule (문자열): 빌드 주기를 나타내는 cron 표현식
    • key_fields (배열): 키 필드 목록
      • name (문자열): 키 필드 이름
      • type (문자열): 키 필드 데이터 타입
    • query (문자열): 프로파일 빌드에 사용하는 쿼리
    • in_progress (불리언): 빌드 진행 여부
    • build_start (날짜): 빌드 시작 시각. 값은 epoch 밀리초(64비트 정수)로 표현됩니다. 선택적
    • build_end (날짜): 빌드 종료 시각. 값은 epoch 밀리초(64비트 정수)로 표현됩니다. 선택적
    • curr_ver (64비트 정수): 현재 빌드된 버전. 선택적
    • next_ver (64비트 정수): 다음 버전. 선택적
    • rows (64비트 정수): 빌드된 레코드 수
    • owner_guid (문자열): 소유자 GUID. 선택적
    • owner_name (문자열): 소유자 이름. 선택적
    • privilege_type (문자열): 권한 유형. 선택적
    • shared_users (배열): 공유 대상 사용자 목록
      • type (문자열): 공유 대상 유형
      • guid (문자열): 공유 대상 GUID
      • name (문자열): 공유 대상 이름
      • read_only (불리언): 읽기 전용 여부
      • created (문자열): 공유 설정 일시(yyyy-MM-dd HH:mm:ssZ 형식)
    • shared_groups (배열): 공유 대상 그룹 목록(shared_users와 동일한 구조)
    • app_code (문자열): 프로파일을 제공하는 앱 코드. 선택적
    • app_built_in (불리언): 앱 기본 제공 여부. 선택적
    • created (날짜): 생성 시각. 값은 epoch 밀리초(64비트 정수)로 표현됩니다.
    • updated (날짜): 수정 시각. 값은 epoch 밀리초(64비트 정수)로 표현됩니다.

오류 응답

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"
}