---
title: "Report a problem with a toilet"
method: POST
path: "/api/v1/toilets/{id}/reports"
---

# Report a problem with a toilet

`POST /api/v1/toilets/{id}/reports`

## Request

- Base URL: `https://wcway.com`
- URL: `https://wcway.com/api/v1/toilets/{id}/reports`
- Auth: none required

For the web page of this site only. It needs a Turnstile token. A report about an OpenStreetMap toilet can become an anonymous OpenStreetMap Note.

## Path parameters

- `id` string, required

## Request body

- object
  - `kind` 'gone' | 'closed' | 'wrong_place' | 'wrong_hours', required
  - `note` string
  - `turnstile_token` string: Cloudflare Turnstile token from the page of this site. A signed-in account needs none.

## Response `201`

The report is saved and waits for a moderator.

- object

## Other responses

- `400`: The body is invalid.
- `403`: The request came from another origin, or the Turnstile check failed.
- `404`: No toilet has this id.
- `429`: Rate limit reached. Wait Retry-After seconds.
- `503`: Contributions are off.

---

[API](https://skmtc.dev/wcway/apis/wcway-api.md) · [All operations](https://skmtc.dev/wcway/apis/wcway-api/llms.txt) · [OpenAPI document](https://skmtc.dev/wcway/apis/wcway-api/revisions/34f42e2ca0e8?raw)
