> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/roboflow/roboflow-ko/deploy/vision-events/query-events.md).

# 이벤트 조회

## Query 및 Filter Events

Vision Events 대시보드에서 filters를 사용해 특정 events를 찾거나, REST API를 통해 programmatically query할 수 있습니다.

### 대시보드에서 Events 둘러보기

#### Use Case 선택

Vision Events 페이지에서 Use Case를 클릭해 해당 events를 볼 수 있습니다. Events는 최신순의 역순으로 표시됩니다.

<figure><img src="/files/470b2086abc3225b024ddc246bc2c030895d8cb0" alt="" width="375"><figcaption></figcaption></figure>

#### Events 필터링

Events 목록 상단의 filter controls를 사용해 다음 기준으로 결과를 좁힐 수 있습니다:

* **날짜 범위** — 시작 및 종료 타임스탬프
* **Event 유형** — quality\_check, inventory\_count, safety\_alert, custom, operator\_feedback
* **Device** — device ID로 필터링
* **Stream** — stream 또는 camera ID로 필터링
* **Workflow** — events를 생성한 workflow로 필터링
* **Detection** — 감지된 object class로 필터링하며, 선택적으로 confidence threshold를 지정할 수 있습니다
* **Feedback 상태** — correct, incorrect, inconclusive, 또는 no feedback
* **Custom metadata** — 임의의 custom metadata field와 value로 필터링
* **경고** — ingestion warnings가 있었던 events만 표시

또한 event detail 사이드바의 값들(예: device ID, stream, quality check 결과, 또는 custom metadata 값)을 클릭하면 빠르게 filter로 추가할 수 있습니다.

Filter chip은 편집할 수 있습니다 -- 활성화된 filter chip을 클릭하면 제거하고 다시 추가하지 않고도 값이나 연산자를 수정할 수 있습니다.

filters가 적용되면 **총 개수** 에 해당하는 events 수가 결과 목록 상단에 표시됩니다. 이 개수는 event 목록과 별도로 업데이트되므로, events가 아직 로딩 중이어도 filters와 일치하는 events 수를 확인할 수 있습니다.

<figure><img src="/files/41b919230b476a7c403e0da7ad0b2f1ff1dd362c" alt="" width="375"><figcaption></figcaption></figure>

#### Event 상세 보기

목록의 아무 event나 클릭해 전체 상세 정보를 볼 수 있습니다:

* source image 및 모든 output images
* 모든 source metadata (device, stream, workflow)
* confidence scores가 포함된 object detections, classifications, segmentation
* Event 유형별 데이터(예: pass/fail 결과, item count, alert severity)
* Custom metadata key-value 쌍

**Detections 그리기**

event에 prediction 데이터(object detections, instance segmentations, 또는 keypoints)가 포함되어 있으면 이미지 위에 "Draw Detections" 체크박스가 표시됩니다. 이를 활성화하면 bounding box, segmentation polygon, label, 그리고 confidence score를 source image 위에 겹쳐 표시할 수 있습니다.

이 기능은 파이프라인이 원본 입력 이미지만 저장하고 별도의 output image를 저장하지 않은 경우, 모델이 무엇을 감지했는지 시각화할 때 유용합니다.

{% hint style="info" %}
별도의 output image를 볼 때는 이 체크박스가 숨겨집니다. 이미 해당 이미지에는 detections가 렌더링되어 있기 때문입니다.
{% endhint %}

**자동 종료된 Events**

auto-finalized로 표시된 event는 비디오 업로드가 끝나기 전에 edge device에서 자동으로 닫혔기 때문에 비디오가 누락됩니다. 그래도 해당 event에는 결과와 정지 이미지가 포함됩니다. event 카드에는 표시가 나타나고, 상세 보기에는 최종 처리된 시간이 표시됩니다. 이는 다음을 통해 동기화된 events에만 적용됩니다 [Edge Device Backup](/roboflow/roboflow-ko/deploy/vision-events/send-events.md#edge-device-backup).

### API를 통해 Events Query하기

query endpoint는 dashboard와 동일한 filters를 지원하며, cursor 기반 pagination도 제공합니다. 전체 파라미터 및 response field 목록은 다음을 참고하세요. [Vision Events API Reference](https://docs.roboflow.com/developer/rest-api/vision-events).

#### 기본 Query

```bash
curl -X POST "https://api.roboflow.com/vision-events/query" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "useCaseId": "assembly-line-qa",
    "startTime": "2026-03-01T00:00:00Z",
    "endTime": "2026-03-31T23:59:59Z",
    "limit": 25
  }'
```

**응답:**

```json
{
  "events": [
    {
      "eventId": "evt-789ghi",
      "eventType": "quality_check",
      "timestamp": "2026-03-30T14:30:00.000Z",
      "deviceId": "factory-cam-01",
      "streamId": "line-3",
      "images": [],
      "eventData": { "result": "fail" },
      "customMetadata": {
        "line_id": "line-3",
        "shift": "morning",
        "part_number": "PN-4421"
      }
    }
  ],
  "nextCursor": "eyJ0cyI6IjIwMjYtMDMtMzAifQ==",
  "hasMore": true
}
```

#### Pagination

결과는 cursor를 사용해 페이지로 나뉩니다. 응답에 다음이 포함되어 있으면 `nextCursor` 값과 `hasMore` 가 `true`이면, 다음 페이지를 가져오려면 다음 요청에 cursor를 전달하세요:

```bash
curl -X POST "https://api.roboflow.com/vision-events/query" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "useCaseId": "assembly-line-qa",
    "limit": 25,
    "cursor": "eyJ0cyI6IjIwMjYtMDMtMzAifQ=="
  }'
```

다음까지 계속하세요 `hasMore` 가 `false`.

#### Event 유형으로 필터링

단일 event 유형을 query합니다:

```json
{
  "useCaseId": "assembly-line-qa",
  "eventType": "quality_check"
}
```

또는 여러 event 유형(최대 20개):

```json
{
  "useCaseId": "assembly-line-qa",
  "eventTypes": ["quality_check", "operator_feedback"]
}
```

#### Feedback 상태로 필터링

사용 `feedbackStatus` 를 사용해 operators가 검토했는지 여부와 평점에 따라 events를 찾습니다:

```json
{
  "useCaseId": "assembly-line-qa",
  "feedbackStatus": ["incorrect", "none"]
}
```

유효한 값: `correct`, `incorrect`, `inconclusive`, `none`. 다음을 사용하세요 `none` 아직 검토되지 않은 events를 찾으려면.

#### Custom Metadata로 필터링

사용 `customMetadataFilters` 를 사용해 자체 metadata field로 events를 필터링합니다:

```json
{
  "useCaseId": "assembly-line-qa",
  "customMetadataFilters": [
    { "key": "line_id", "operator": "eq", "value": "line-3" },
    { "key": "shift", "operator": "eq", "value": "morning" }
  ]
}
```
