---
title: "List PII labels"
method: GET
path: "/v1/projects/{project_id}/pii-labels"
tags: ["security-governance"]
---

# List PII labels

`GET /v1/projects/{project_id}/pii-labels`

**Plan:** `Enterprise`

Returns PII labels detected for the project, newest first.

## Path parameters

- `project_id` string, required — Project ID

## Query parameters

- `limit` integer — Page size
- `cursor` string — Opaque cursor returned by a previous page; omit for the first page

## Response `200`

OK

- CursorListResponseProjectPIIFindingDTO
  - `data` ProjectPIIFindingDTO[], nullable, required
    - `chat_message_id` string — Trajectory event ID for chat-source labels
    - `chat_upload_id` string — Uploaded file ID for upload-source labels
    - `connector_id` string — Connector ID for connector labels
    - `found_at` string, date-time, required — When the label was recorded
    - `id` string, required — PII label ID
    - `info_type` string — DLP info type, such as EMAIL_ADDRESS
    - `likelihood` string — DLP likelihood: VERY_UNLIKELY, UNLIKELY, POSSIBLE, LIKELY, or VERY_LIKELY
    - `quote` string — Masked sample of the detected value
    - `scan_id` string — Workflow scan run ID that recorded the label
    - `sensitivity` string — Sensitivity bucket: low, mid, or high
    - `source` string, required — Where the PII was detected: chat, upload, cloud_storage, or cloud_sql
    - `sql_location` string — Database location for cloud_sql labels
    - `status` string, required — Label status: open, ignored, or fixed
    - `storage_path` string — Cloud storage object path for cloud_storage labels
  - `pagination` Pagination, required
    - `has_more` boolean, required — Whether more results are available beyond this page
    - `next_cursor` string, nullable, required — Cursor for the next page; null when there are no more results

## Other responses

- `401` — Missing or invalid API key.
- `402` — This operation or requested configuration requires a workspace plan that includes this feature.
- `403` — The key or caller lacks the required scope or permission.
- `406` — The Accept header excludes every media type this endpoint produces.
- `429` — Too many requests. Retry after the interval in Retry-After when present.
- `default` — Error. The response body uses the standard error envelope; status matches the HTTP status code and type is a machine-readable error code.

---

[API](https://skmtc.net/lovable/apis/lovable-api.md) · [All operations](https://skmtc.net/lovable/apis/lovable-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lovable/lovable-api/revisions/aa8d44585147/schema)
