---
title: "Get validation status for a supplier"
method: GET
path: "/public/v2/suppliers/sites/validation"
tags: ["Suppliers - Sites"]
---

# Get validation status for a supplier

`GET /public/v2/suppliers/sites/validation`

Retrieve the status of the **most recent** validation request for a supplier site, using the same identifier query parameters as `GET /public/v2/suppliers/sites/find-by-identifier`.

**Resolution:**
- At least one of `supplierId`, `customerId`, `ownId`, or `prewaveId` must be provided.
- **Exactly one** supplier must match (same rules as `DELETE /public/v2/suppliers/sites` and `POST /public/v2/suppliers/sites/validation`). If multiple suppliers match, `400` is returned.
- The response reflects the latest validation request **you** created for that target.

**Status values:**
- `PENDING`: The validation request has been submitted and is being processed.
- `COMPLETED`: The validation was successful. The `outcomeTargetId` field contains the Prewave target ID of the validated site (may differ from the original if a master record was identified).
- `REJECTED`: The validation could not be completed. The `rejectionReason` and `rejectionReasonNotes` fields provide details.

**Example:**
```
GET /public/v2/suppliers/sites/validation?prewaveId=102006215
```

**Required Permission**: `ACCESS_PUBLIC_VALIDATION_REQUEST`

## Query parameters

- `supplierId` string
- `customerId` string
- `ownId` string
- `prewaveId` integer
- `source` string

## Response `200`

Validation status returned

- PublicValidationStatusV2DTO
  - `requestId` string, uuid, required — UUID of the validation request
  - `status` 'PENDING' | 'COMPLETED' | 'REJECTED' | 'PENDING' | 'COMPLETED' | 'REJECTED', required — Current status of the validation request
  - `prewaveTargetId` integer, required — Prewave target ID of the supplier for which validation was requested
  - `outcomeTargetId` integer, nullable — Prewave target ID of the outcome site (set when status is COMPLETED)
  - `rejectionReason` string, nullable — Reason for rejection (set when status is REJECTED)
  - `rejectionReasonNotes` string, nullable — Additional notes on the rejection reason (set when status is REJECTED)
  - `createdAt` string, date-time, nullable — Timestamp when the validation request was created (ISO-8601, no timezone offset)
  - `resolvedAt` string, date-time, nullable — Timestamp when the validation request was resolved (ISO-8601, no timezone offset; set when status is COMPLETED or REJECTED)

## Other responses

- `400` — Bad Request - No identifier provided, or multiple suppliers match
- `403` — 403 Forbidden - Authentication or authorization failure. This status code is returned when: (1) the request lacks valid authentication credentials (missing or invalid X-Auth-Token header), or (2) the authenticated user does not have the required permission to access this resource.
- `404` — Not Found - No supplier matches the identifiers, or no validation request exists for that supplier (for your user)
- `429` — 429 Too Many Requests - API rate limit exceeded. The request has been rejected because the rate limit for this endpoint has been exceeded. Default rate limits: GET requests - 100 per 10 seconds, 500 per minute; POST/PUT/PATCH/DELETE requests - 20 per 10 seconds, 100 per minute. For increased access, please contact customer success.
- `500` — 500 Internal Server Error - An unexpected error occurred on the server. The request may or may not have been processed.

---

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