tools.halowerk.com
https://tools.halowerk.com/v1/traffic/classifyShares a payout wallet with 1,714 other endpoints — its adoption is attributed from that shared wallet's traffic, not earned exclusively.
Groups the access records you pass into clients and sorts each in two stages: person or machine, then, for a machine, the purpose. Signals: cadence and its scatter, path shape and consecutive numeric runs, asset share, referer, method mix, not-found share, robots.txt, user agent product token. Each signal returns what was observed, its weight and why. A lead under two points stays unknown. Nothing is stored, no raw IP is returned: IPv4 cut to /24, IPv6 to /48.
Reliability & health
Uptime and response time from our own unpaid probes, plus the reliability score built from them.
Uptime
87.8% avgResponse time
p50 120ms · p95 124msData table
| Bucket | Uptime | Probes | Response time |
|---|---|---|---|
| 9/6/2026, 12:00:00 AM | 100% | 17 | 119ms |
| 9/7/2026, 12:00:00 AM | 33% | 15 | 119ms |
| 9/8/2026, 12:00:00 AM | 0% | 8 | — |
| 9/9/2026, 12:00:00 AM | 0% | 1 | — |
| 9/10/2026, 12:00:00 AM | 0% | 1 | — |
| 9/11/2026, 12:00:00 AM | 100% | 6 | 120ms |
| 9/12/2026, 12:00:00 AM | 100% | 9 | 121ms |
| 9/13/2026, 12:00:00 AM | 100% | 16 | 122ms |
| 9/14/2026, 12:00:00 AM | 100% | 15 | 121ms |
| 9/15/2026, 12:00:00 AM | 100% | 16 | 120ms |
| 9/16/2026, 12:00:00 AM | 100% | 16 | 120ms |
| 9/17/2026, 12:00:00 AM | 100% | 15 | 120ms |
| 9/18/2026, 12:00:00 AM | 100% | 13 | 120ms |
| 9/19/2026, 12:00:00 AM | 100% | 13 | 120ms |
| 9/20/2026, 12:00:00 AM | 100% | 12 | 119ms |
| 9/21/2026, 12:00:00 AM | 100% | 12 | 117ms |
| 9/22/2026, 12:00:00 AM | 100% | 12 | 116ms |
| 9/23/2026, 12:00:00 AM | 100% | 12 | 120ms |
| 9/24/2026, 12:00:00 AM | 100% | 14 | 120ms |
| 9/25/2026, 12:00:00 AM | 100% | 13 | 121ms |
| 9/26/2026, 12:00:00 AM | 100% | 14 | 122ms |
| 9/27/2026, 12:00:00 AM | 100% | 13 | 121ms |
| 9/28/2026, 12:00:00 AM | 100% | 13 | 122ms |
| 9/29/2026, 12:00:00 AM | 100% | 12 | 120ms |
| 9/30/2026, 12:00:00 AM | 100% | 12 | 121ms |
| 10/1/2026, 12:00:00 AM | 100% | 12 | 114ms |
| 10/2/2026, 12:00:00 AM | 100% | 12 | 112ms |
| 10/3/2026, 12:00:00 AM | 100% | 12 | 113ms |
| 10/4/2026, 12:00:00 AM | 100% | 10 | 114ms |
| 10/5/2026, 12:00:00 AM | 100% | 8 | 112ms |
- Availability
- 94
- Latency
- 100
- Security
- 100
- Transparency
- 67
- Activity
- 0
How often it was reachable when we probed it (weight 35%).
How quickly it answers when it is up — fast scores high (weight 20%).
Whether it serves over working TLS / https (weight 15%).
Whether the operator disclosed what it does — description, schema, identity (weight 15%).
Observed on-chain payments to this endpoint's wallet — transactions, volume, and distinct paying wallets over the last month (weight 15%; not yet measured when we have not seen its wallet settle).
Confidence 100% — how much probe evidence backs this score. A thin history is flagged, not hidden.
See the scoring methodology for exactly how each number is computed.
Payment
- Currencies
- USDC
- Networks
- base
- Facilitator
- unknown
- SDK
- unknown
Operator
- Company
- inferred — unknown
- Jurisdiction
- —
- Registrar
- RegistryGate GmbH
- Domain registered
- 2026-08-06
- Hosting network
- CLOUD-NBG1
- Hosting country
- DE
Operator context is derived from public RDAP/TLS records and unverified. Company and country are only available for endpoints that publish them (an OV/EV TLS certificate or a non-redacted domain record); most endpoints are CDN-fronted and disclose neither.
On-chain activity (base)
Payments per day
last payment 10/5/2026Data table
| Day | Payments | Volume (USD) | Paying wallets |
|---|---|---|---|
| 9/6/2026 | 133 | 0.15 | 2 |
| 9/7/2026 | 35 | 0.06 | 4 |
| 9/8/2026 | 5 | 0.01 | 3 |
| 9/9/2026 | 2 | 0 | 1 |
| 9/10/2026 | 2 | 0 | 1 |
| 9/11/2026 | 1,004 | 0.13 | 3 |
| 9/12/2026 | 37 | 0.12 | 3 |
| 9/13/2026 | 244 | 0.25 | 4 |
| 9/14/2026 | 41 | 0.14 | 2 |
| 9/15/2026 | 6 | 0.01 | 2 |
| 9/16/2026 | 5 | 0.01 | 1 |
| 9/17/2026 | 7 | 0.02 | 3 |
| 9/18/2026 | 5 | 0.01 | 1 |
| 9/19/2026 | 41 | 0.15 | 3 |
| 9/20/2026 | 10 | 0.04 | 4 |
| 9/21/2026 | 9 | 0.06 | 3 |
| 9/22/2026 | 12 | 0.04 | 3 |
| 9/23/2026 | 7 | 0.02 | 3 |
| 9/24/2026 | 8 | 0.02 | 4 |
| 9/25/2026 | 17 | 0.03 | 3 |
| 9/26/2026 | 5 | 0.01 | 1 |
| 9/27/2026 | 8 | 0.1 | 3 |
| 9/28/2026 | 20 | 0.08 | 3 |
| 9/29/2026 | 23 | 0.06 | 3 |
| 9/30/2026 | 13 | 0.04 | 3 |
| 10/1/2026 | 57 | 0.31 | 5 |
| 10/2/2026 | 51 | 0.26 | 4 |
| 10/3/2026 | 28 | 0.08 | 3 |
| 10/4/2026 | 18 | 0.06 | 5 |
| 10/5/2026 | 30 | 0.1 | 4 |
This payout wallet is shared: figures cover all 1,715 endpoints paid at it, since payments cannot be attributed to one of them. Only payments settled on chains and facilitators we index.
Linked by wallet — likely same operator
On-chain agent identity and the x402 endpoint that shares its settlement wallet.
Response schema
{
"examples": [
{
"client_count": 1,
"clients": [],
"clients_skipped": 0,
"group_by": "ip_user_agent",
"label_distribution": {
"automated_purpose_unclear": 0,
"crawler": 0,
"human": 0,
"scraper": 0,
"tool": 0,
"unknown": 1
},
"privacy": {
"ip_masking": "IPv4 to /24, IPv6 to /48",
"raw_ip_returned": false,
"stored": false,
"user_agent_returned": "product token only, never the full header"
},
"request_count": 1,
"session_gap_s": 1800,
"stateless": true,
"window": {
"first_unix_s": 1786000000,
"last_unix_s": 1786000000
}
}
],
"properties": {
"client_count": {
"minimum": 0,
"type": "integer"
},
"clients": {
"items": {
"properties": {
"cadence": {
"description": "Interval statistics and regularity evidence.",
"type": "object"
},
"classification": {
"properties": {
"automation": {
"description": "Automation scores, winning label, lead and runner-up.",
"type": "object"
},
"confidence": {
"maximum": 1,
"minimum": 0,
"type": "number"
},
"label": {
"enum": [
"human",
"tool",
"crawler",
"scraper",
"automated_purpose_unclear",
"unknown"
],
"type": "string"
},
"purpose": {
"description": "Purpose scores, winning label, lead and runner-up.",
"type": "object"
},
"reasons": {
"items": {
"properties": {
"evidence": {
"type": "string"
},
"favours": {
"type": "string"
},
"observed": {
"type": "string"
},
"signal": {
"type": "string"
},
"stage": {
"type": "string"
},
"weight": {
"type": "number"
}
},
"required": [
"stage",
"signal",
"favours",
"weight",
"observed",
"evidence"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"label",
"confidence",
"automation",
"purpose",
"reasons"
],
"type": "object"
},
"client": {
"properties": {
"grouped_by": {
"enum": [
"ip",
"user_agent",
"ip_user_agent",
"none"
],
"type": "string"
},
"ip_masked": {
"type": [
"string",
"null"
]
},
"user_agent_family": {
"type": [
"string",
"null"
]
}
},
"required": [
"user_agent_family",
"grouped_by"
],
"type": "object"
},
"first_seen_unix_s": {
"type": "number"
},
"last_seen_unix_s": {
"type": "number"
},
"method_mix": {
"description": "Write-method ratio.",
"type": "object"
},
"paths": {
"description": "Distinctness, depth, asset share and enumeration evidence.",
"type": "object"
},
"request_count": {
"minimum": 1,
"type": "integer"
},
"sessions": {
"description": "Session count, duration and request-count statistics.",
"type": "object"
},
"status_mix": {
"description": "Not-found and error ratios.",
"type": "object"
}
},
"required": [
"client",
"request_count",
"first_seen_unix_s",
"last_seen_unix_s",
"classification",
"cadence",
"paths",
"status_mix",
"method_mix",
"sessions"
],
"type": "object"
},
"type": "array"
},
"clients_skipped": {
"minimum": 0,
"type": "integer"
},
"group_by": {
"enum": [
"ip",
"user_agent",
"ip_user_agent",
"none"
],
"type": "string"
},
"label_distribution": {
"properties": {
"automated_purpose_unclear": {
"minimum": 0,
"type": "integer"
},
"crawler": {
"minimum": 0,
"type": "integer"
},
"human": {
"minimum": 0,
"type": "integer"
},
"scraper": {
"minimum": 0,
"type": "integer"
},
"tool": {
"minimum": 0,
"type": "integer"
},
"unknown": {
"minimum": 0,
"type": "integer"
}
},
"required": [
"human",
"tool",
"crawler",
"scraper",
"automated_purpose_unclear",
"unknown"
],
"type": "object"
},
"privacy": {
"properties": {
"ip_masking": {
"type": "string"
},
"raw_ip_returned": {
"const": false,
"type": "boolean"
},
"stored": {
"const": false,
"type": "boolean"
},
"user_agent_returned": {
"type": "string"
}
},
"required": [
"stored",
"raw_ip_returned",
"ip_masking",
"user_agent_returned"
],
"type": "object"
},
"request_count": {
"minimum": 1,
"type": "integer"
},
"session_gap_s": {
"maximum": 86400,
"minimum": 60,
"type": "integer"
},
"stateless": {
"const": true,
"type": "boolean"
},
"window": {
"properties": {
"first_unix_s": {
"type": "number"
},
"last_unix_s": {
"type": "number"
}
},
"required": [
"first_unix_s",
"last_unix_s"
],
"type": "object"
}
},
"required": [
"request_count",
"client_count",
"clients_skipped",
"group_by",
"session_gap_s",
"window",
"label_distribution",
"clients",
"privacy",
"stateless"
],
"type": "object"
}