01Jobs it does
Each one is a real command line. Copy it, or open it in the builder below to change it.
always count clicks from an office
Also: filter a click farm, click filter address list
p202 click-filter list add <address>02What you get
Pick the shape you need. People get a table. Add
--json, --csv or --ndjson for scripts, or -q for ids only. An AI agent gets compact JSON without asking. All output formats03Build your command
Pick values and the command line writes itself, quoted and ready to paste.
p202 click-filter list addSet flags below; the command updates as you type.
04Flags
3 flags, plus the global flags every command takes.
| Flag | What it does |
|---|---|
| --actionstring | Its clicks are always counted or always filtered: count, filtercountfilter |
| --notestring | What it is, up to 255 characters |
| --user-idstring | Account whose click filter this is (default: the API key's own user) |
05How it works
Adds an IPv4 or IPv6 address, or a CIDR block, to the list. count: its clicks are always counted, whatever the checks say (a client's office that tests your links). filter: always filtered (a click farm). An address can be claimed through a proxy header, so keep count for addresses you trust.
06For agents
Running this from an agent
- Read the same facts as JSON:
p202 commands click-filter list add --json. - With
AI_AGENT,CLAUDECODEor another agent variable set, output is compact JSON and errors arrive on stderr as a JSON envelope with ahint. - Exit codes: 0 ok, 1 bad input, 2 auth, 3 network, 4 server error, 5 partial failure, 6 no Pro licence on the install.
- This command writes. Add
--stagedto record it as a proposal a person applies withp202 change apply.
{
"path": "p202 click-filter list add",
"use": "add <address>",
"short": "Always count or always filter clicks from an address or a CIDR block",
"long": "Adds an IPv4 or IPv6 address, or a CIDR block, to the list. count: its clicks are always counted,\nwhatever the checks say (a client's office that tests your links). filter: always filtered (a click\nfarm). An address can be claimed through a proxy header, so keep count for addresses you trust.",
"runnable": true,
"example": "p202 click-filter list add 203.0.113.0/24 --action filter --note \"click farm\"\n p202 click-filter list add 198.51.100.7 --action count --note \"client QA office\"",
"tasks": [
{
"run": "p202 click-filter list add",
"phrases": [
"always count clicks from an office",
"filter a click farm",
"click filter address list"
]
}
],
"flags": [
{
"name": "action",
"type": "string",
"default": "",
"usage": "Its clicks are always counted or always filtered: count, filter",
"allowed_values": [
"count",
"filter"
],
"required": false
},
{
"name": "note",
"type": "string",
"default": "",
"usage": "What it is, up to 255 characters",
"required": false
},
{
"name": "user-id",
"type": "string",
"default": "",
"usage": "Account whose click filter this is (default: the API key's own user)",
"required": false
}
]
}