# Truy vấn dữ liệu báo cáo

> Thực thi một truy vấn báo cáo với các trường và bộ lọc được chọn.

Source: https://docs.fleetwork.vn/vi/reports/reports-query

**POST** `https://live.fleetwork.vn/api/v1/workspace/reports/query`

## Các loại báo cáo được hỗ trợ

| `reportType`      | Chế độ được hỗ trợ    | Mô tả                                                  |
| ----------------- | --------------------- | ------------------------------------------------------ |
| `timeline`        | `by_user`             | Dòng thời gian nhiệm vụ nhóm theo tài xế               |
| `time-allocation` | `by_user`, `by_place` | Thời gian dành cho nhiệm vụ theo tài xế hoặc địa điểm  |
| `statistics`      | `by_user`             | Thống kê hiệu suất đã tổng hợp                         |
| `job-report`      | `by_user`, `by_place` | Phân tích chi tiết công việc và nhiệm vụ               |
| `mileage-report`  | `by_user`             | Quãng đường và số km theo tài xế                       |

## Body yêu cầu

| Trường       | Kiểu     | Bắt buộc      | Mô tả                                                                                      |
| ------------ | -------- | ------------- | ------------------------------------------------------------------------------------------ |
| `reportType` | string   | **Bắt buộc**  | Xem bảng ở trên                                                                            |
| `fromTime`   | long     | **Bắt buộc**  | Thời gian bắt đầu dưới dạng Unix timestamp (ms)                                            |
| `toTime`     | long     | **Bắt buộc**  | Thời gian kết thúc dưới dạng Unix timestamp (ms)                                           |
| `mode`       | string   | Tuỳ chọn      | `by_user` (mặc định) hoặc `by_place`                                                       |
| `fields`     | string[] | Tuỳ chọn      | Các trường cần bao gồm — lấy các trường khả dụng từ [Get Schema](https://docs.fleetwork.vn/vi/reports/reports-schema) |
| `userId`     | UUID     | Tuỳ chọn      | Lọc theo một người dùng/tài xế cụ thể                                                      |
| `placeId`    | UUID     | Tuỳ chọn      | Lọc theo một địa điểm cụ thể                                                               |

```json
{
  "reportType": "job-report",
  "mode": "by_user",
  "fromTime": 1713139200000,
  "toTime": 1713225600000,
  "fields": ["taskName", "status", "completedAt", "driverName"]
}
```

## Ví dụ

### Yêu cầu

```bash
curl -X POST \
  "https://live.fleetwork.vn/api/v1/workspace/reports/query" \
  -H "API-KEY: <your-key>" \
  -H "Content-Type: application/json" \
  -d '{"reportType":"job-report","fromTime":1713139200000,"toTime":1713225600000,"fields":["taskName","status","completedAt"]}'
```

### Phản hồi

```json
{
  "code": "OK",
  "message": null,
  "data": {
    "reportType": "job-report",
    "mode": "by_user",
    "total": 87,
    "rows": [
      {
        "taskName": "Deliver package #1",
        "status": 4,
        "completedAt": 1713225600000
      }
    ]
  }
}
```

Trường `rows` chứa các cặp khoá-giá trị động dựa trên `fields` được yêu cầu.
