---
title: "Read the maker's homepage now: badge found, followed, rel, a hint when missing, which agent surfaces the domain proves, our link's rel, and what to do next. Claim token as bearer for a listing in review; anyone for a live one, once a minute."
method: POST
path: "/api/ai-tools/{slug}/verify"
---

# Read the maker's homepage now: badge found, followed, rel, a hint when missing, which agent surfaces the domain proves, our link's rel, and what to do next. Claim token as bearer for a listing in review; anyone for a live one, once a minute.

`POST /api/ai-tools/{slug}/verify`

## Request

- Base URL: `https://shapelessai.com`
- URL: `https://shapelessai.com/api/ai-tools/{slug}/verify`
- Auth: none required

## Path parameters

- `slug` string, required

## Response `200`

OK

- DirectoryVerifyReport
  - `ok` boolean, required
  - `slug` string, required
  - `status` string
  - `checkedAt` string, date-time
  - `badge` object, required
    - `found` boolean
    - `followed` boolean
    - `href` string, nullable
    - `rel` string, nullable
    - `text` string, nullable
    - `hint` string, nullable: Why it was not seen, in words an agent can act on.
    - `verified` boolean
    - `graceDays` integer
    - `snippet` string
  - `ourLink` 'noopener' | 'nofollow noopener', required: The rel our page puts on the link to the maker right now.
  - `agent` object
    - `proof` object, nullable
    - `proven` string[]
    - `unproven` string[]
  - `next` string[], required

## Other responses

- `401`: A listing in review needs its claim token.
- `429`: Once a minute per listing, 20 an hour per address.
- `502`: The homepage could not be read; nothing changed.

---

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