{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://bird.dev/schema/watchlist-v1.json",
"title": "bird watchlist payload",
"description": "Shape of the data payload returned by `bird watchlist list|check|add|remove` under --output json. The structure varies by subcommand; the same envelope wraps each.",
"type": "object",
"properties": {
"users": {
"type": "array",
"description": "Watched users (returned by `watchlist list` and `watchlist check`).",
"items": {
"type": "object",
"required": ["username"],
"properties": {
"username": {
"type": "string",
"description": "Username without leading @."
},
"id": {
"type": "string",
"description": "Numeric user ID (when resolved)."
},
"last_tweet_id": {
"type": "string",
"description": "ID of the most recent tweet seen for this user."
},
"last_checked": {
"type": "string",
"description": "RFC 3339 timestamp of last activity poll."
}
},
"additionalProperties": true
}
},
"activity": {
"type": "array",
"description": "Recent activity rows (returned by `watchlist check`).",
"items": {
"type": "object",
"properties": {
"username": { "type": "string" },
"new_tweets": { "type": "integer" },
"tweets": {
"type": "array",
"items": { "type": "object", "additionalProperties": true }
}
},
"additionalProperties": true
}
},
"result": {
"type": "string",
"description": "Mutation outcome (returned by `watchlist add|remove`).",
"enum": ["added", "removed", "noop"]
},
"username": {
"type": "string",
"description": "Target username for add/remove operations."
}
},
"additionalProperties": true
}