---
title: "Verify claim verification code"
method: POST
path: "/v1/actions/claim-verification/verify"
tags: ["Moderated Actions"]
---

# Verify claim verification code

`POST /v1/actions/claim-verification/verify`

## Request

- Base URL: `https://loppee.com`
- URL: `https://loppee.com/v1/actions/claim-verification/verify`
- Auth: HTTP bearer

Verify a one-time code. The compatible v2 path may grant an open claim. Under trust model v3, the exact challenge_id returned by the send request is mandatory; owner email is restricted to an already-approved exact owner with active business membership and records Contact evidence only. The database authority, never the caller, derives the resulting class. Requires the claim owner's AAL2 bearer token.

## Request body

- ClaimVerificationVerifyRequest
  - `claim_id` string, required
  - `code` string, required
  - `channel` 'email' | 'sms'
  - `challenge_id` string, uuid: Exact challenge UUID returned by the v3 SMS or owner-email send. Required for v3 SMS verification and owner-email verification; optional for the compatible v2 path.

## Response `200`

ClaimVerificationVerifyResponse

- ClaimVerificationVerifyResponse
  - `status` 'already_verified' | 'queued_for_transfer_review' | 'verified' | 'contact_verified', required
  - `method` 'email_code' | 'sms_code'
  - `business_id` string, nullable, required
  - `transfer_review_required` unknown
  - `trust_model_version` 'v3'
  - `publication` object

## Other responses

- `400`: ErrorResponse
- `401`: ErrorResponse
- `403`: ErrorResponse
- `429`: RateLimitError
- `default`: ErrorResponse

---

[API](https://skmtc.dev/loppee/apis/loppee-business-registry-api-for-external-agents.md) · [All operations](https://skmtc.dev/loppee/apis/loppee-business-registry-api-for-external-agents/llms.txt) · [OpenAPI document](https://skmtc.dev/loppee/apis/loppee-business-registry-api-for-external-agents/revisions/37285f7cddcd?raw)
