---
title: "Approve or reject an ad"
method: POST
path: "/v1/admin/ads/review/{id}"
tags: ["Operations"]
---

# Approve or reject an ad

`POST /v1/admin/ads/review/{id}`

## Request

- Base URL: `https://loppee.com`
- URL: `https://loppee.com/v1/admin/ads/review/{id}`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-LOPPEE-API-Key`

Approve or reject an ad. The response is scoped and validated by the runtime repository; unknown or unauthorized resources use the canonical error envelope.

## Path parameters

- `id` string, required

## Request body

- object
  - `decision` 'approve' | 'reject', required
  - `reason` string

## Response `200`

Approve or reject an ad response

- object: Approve makes the ad active; reject needs a reason the owner sees. Requires manage_billing and a fresh second factor; audited.

## Other responses

- `400`: ErrorResponse
- `401`: ErrorResponse
- `403`: ErrorResponse
- `404`: ErrorResponse
- `409`: ErrorResponse
- `413`: 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)
