Skip to content

Tags the caller follows (the rail's

GET
/auth/me/followed-tags

The caller’s tag_follows rows (#1123), most recently followed first.

Recency rather than alphabetical, unlike GET /auth/me/followed-teams. A team chip carries an avatar and a name the reader recognises by shape, so alphabetical order is findable; a row of # chips is visually uniform, and recency is the only ordering that puts a reader’s newest interest where they will look for it. The reader’s own tag_order preference is a partial override of this order.

No liveness filter, because a tag has no liveness: one with no posts left matches nothing and the chip stays until the reader removes it. Returns [], never null.

Tags the caller follows

Array<object>

One tag the caller follows (#1123).

An object rather than a bare string, even though tag is the only field the rail draws. followed_at is what the server orders by, and a client that receives the order but not the key it was sorted on cannot merge a newly-followed tag into the list without a refetch — which is exactly what the rail’s optimistic follow does. There is deliberately no follower count and no post count: both are per-caller-visibility questions this endpoint would have to answer against the read rule, and neither is drawn.

object
tag
required

The tag, exactly as stored — trimmed, case preserved. This is the value to pass as ?tag= to GET /posts; the two match exactly, which is the point.

string
followed_at
required

When the caller followed it.

string format: date-time

Authentication required, missing, or invalid

object
error
required

Human-readable error summary

string
Example
the request could not be completed
Example
{
"error": "authentication required: sign in and retry with a valid session or API token"
}

Unexpected server error

object
error
required

Human-readable error summary

string
Example
the request could not be completed