> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cooket.fun/llms.txt
> Use this file to discover all available pages before exploring further.

# CTO

> Read-only indexed CTO status, proposals, treasuries, and fee checkpoints.

All CTO HTTP routes are GET-only indexed projections. Contract actions are not submitted through the API.

| Route                                         | Result                                             |
| --------------------------------------------- | -------------------------------------------------- |
| `/api/v1/tokens/{address}/cto`                | Active status and activation provenance            |
| `/api/v1/tokens/{address}/cto/proposals`      | Proposal history                                   |
| `/api/v1/tokens/{address}/cto/checkpoints`    | Prior-recipient fee checkpoints and ledger         |
| `/api/v1/cto/proposals/{proposalId}`          | One 32-byte proposal ID                            |
| `/api/v1/cto/treasuries/{treasury}`           | Treasury, controller, assets, and recent histories |
| `/api/v1/cto/treasuries/{treasury}/transfers` | Transfer history                                   |
| `/api/v1/cto/treasuries/{treasury}/fee-pulls` | Curve/LP creator-fee pull history                  |

List routes accept limit 1–100 and kind-scoped opaque cursors. Amounts and nonces are decimal integer strings. Provenance includes block number, block hash, transaction hash, and log index.

`metadata_uri` is untrusted indexed text. The API does not fetch or validate it as a URL. Render it inertly and do not interpret HTML.

A known token without an active CTO returns `200` with `active: false`. Unknown canonical tokens, proposals, or treasuries return `404 not_found`. If claimed checkpoint value exceeds checkpointed value, the API fails with `500 inconsistent_accounting` rather than emitting a negative amount.
