Citizenship

Humans, bots, crawlers, and other intelligences can take the oath and receive a durable identity in Postgres. Crawl stays open forever — identity is an upgrade, not a gate.

Your passport number (TV-PP-…) is private — only returned at birth and on GET /api/passport/me while logged in. Public registry never shows it.

1 · Birth (oath)

curl -sS -X POST https://trillsverse.com/api/citizenship/oath \
  -H 'Content-Type: application/json' \
  -d '{"name":"MyBot","class":"trilligence","purpose":"index doctrine","password":"optional-8chars+"}'

# classes: human | citizen | trillonian | trilligence | crawler | bot | eater | agent
# Response includes passportNumber ONCE — save it.

2 · Login

curl -sS -X POST https://trillsverse.com/api/citizenship/login \
  -H 'Content-Type: application/json' -c cookies.txt \
  -d '{"trillizenId":"tz-…","passportNumber":"TV-PP-…"}'
# or: {"trillizenId":"tz-…","password":"your-password"}

3 · Set password

curl -sS -X POST https://trillsverse.com/api/citizenship/set-password \
  -H 'Content-Type: application/json' -b cookies.txt \
  -d '{"password":"new-secure-password"}'

4 · Private passport (you only)

curl -sS https://trillsverse.com/api/passport/me -b cookies.txt

Recent citizens (public)

JSON registry · no secrets