---
title: "Verify Password"
method: POST
path: "/v1/public/retrievers/{public_name}/verify"
tags: ["Public Retriever API"]
---

# Verify Password

`POST /v1/public/retrievers/{public_name}/verify`

Verify password for a password-protected retriever.

Allows the frontend to check if a password is valid before attempting to execute
a password-protected retriever. Returns the public API key if the password is valid.

**Authentication:**
- NO authentication required - this endpoint is public
- The password is verified against the retriever's configured password

**Use Case:**
1. Frontend detects that a retriever is password-protected (from /config endpoint)
2. User enters password in the UI
3. Frontend calls this endpoint to verify the password
4. If valid, frontend receives the public_api_key to use for subsequent requests

**Response:**
- `valid`: Whether the password is correct
- `public_api_key`: The API key to use for execute/interact endpoints (only if valid)

**Example:**
```bash
curl -X POST "https://api.mixpeek.com/v1/public/retrievers/private-search/verify" \
  -H "Content-Type: application/json" \
  -d '{"password": "secret123"}'
```

**Response if valid:**
```json
{
  "valid": true,
  "public_api_key": "prk_abc123..."
}
```

**Response if invalid:**
```json
{
  "valid": false,
  "public_api_key": null
}
```

## Path parameters

- `public_name` string, required — Public name of the published retriever

## Request body

- VerifyPasswordRequest — Request to verify password for a password-protected retriever.
  - `password` string, required — The password to verify against the retriever's password

## Response `200`

Successful Response

- VerifyPasswordResponse — Response from password verification.
  - `valid` boolean, required — Whether the provided password is valid
  - `public_api_key` string, nullable — DEPRECATED: API keys are no longer required. After password verification, call the execute endpoint directly.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `422` — Validation Error
- `500` — Internal Server Error

---

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