앱 목록 조회

검색 조건과 일치하는 앱 목록을 조회합니다.

필요 권한

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

HTTP 요청

GET /api/sonar/apps
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
     https://HOSTNAME/api/sonar/apps
요청 매개변수
필수타입설명비고
offsetX32비트 정수건너뛸 갯수기본값: 0
limitX32비트 정수한 번에 가져올 갯수기본값: 2147483647
keywordsX문자열검색 키워드앱 코드, 이름에서 검색

정상 응답

{
  "total_count": 1,
  "apps": [
    {
      "code": "logpresso-sample-app",
      "name": "샘플 앱",
      "bundle_symbolic_name": "com.logpresso.sample.app",
      "version": "1.0.0",
      "description": "샘플 앱 설명",
      "icon": "data:image/png;base64,iVBORw0KGgo...",
      "built_at": "2024-09-01 09:00:00+0900",
      "installed_at": "2024-09-15 14:30:00+0900",
      "enabled": true
    }
  ]
}
  • total_count (32비트 정수): 검색 조건과 일치하는 전체 앱 수
  • apps (배열): 앱 목록
    • code (문자열): 앱 코드
    • name (문자열): 앱 이름 (요청 세션의 로캘로 표시)
    • bundle_symbolic_name (문자열): OSGi 번들 심볼릭 이름
    • version (문자열): 앱 버전
    • description (문자열): 앱 설명 (요청 세션의 로캘로 표시)
    • icon (문자열): Base64로 인코딩된 앱 아이콘 이미지
    • built_at (문자열): 앱 빌드 시각 (yyyy-MM-dd HH:mm:ssZ 형식)
    • installed_at (문자열): 앱 설치 시각 (yyyy-MM-dd HH:mm:ssZ 형식)
    • enabled (불리언): 활성화 여부 (true: 활성화, false: 비활성화)

오류 응답

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