# ChainWard Hires Risk Check API

> ChainWard Hires Risk Check API is a paid API for AI agents from api.chainward.ai, paid per call via x402, $0.1/call, status unknown (last checked 2026-10-10).

Returns a hirer-relationship risk analysis for a BNB Chain agent or address, tracing funding trails to detect shared funders or suspicious links between hirers and the agent owner

## Facts

- Endpoint: GET https://api.chainward.ai/api/risk/hires?utm_source=zero.xyz
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/chainward-hires-risk-check-api-10fc8ae2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Io19sF20h3oRWvsMXg6P4

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability chainward-hires-risk-check-api-10fc8ae2
```

Example prompt: Can you run a ChainWard hires check on BNB Chain agent 0x15d08640aeefbdce11930d9c9a30884011f654f6 and tell me whether any of its hirers share a common funder with the agent owner?

## When to prefer this

Use this endpoint when you need to understand the funding relationships between the wallets that have hired a specific BNB Chain agent and that agent's owner — particularly to detect wash-hiring, collusion, or fake reputation inflation. Prefer this over a basic address risk check when you want hirer-level trail analysis rather than a simple risk score for a single address. It is especially valuable for agent marketplaces, reputation systems, and due-diligence workflows before committing payment to an agent with an unverified track record.

## Known failure modes

- Missing or malformed 'agent' query parameter returns a validation error and no charge is made
- Agent ID or address not found on BNB Chain returns empty or null hirer data
- Chain parameter set to unsupported value returns an enum validation error
- Payment failure over x402 results in 402 response and no data returned
- Hirer trails that terminate at exchange hubs return 'inconclusive' verdict with explanation
- Rate limiting or node unavailability may cause transient 5xx errors

## How this service works

Paste any Base or BNB Chain address before you pay or hire it. ChainWard tells you Pay or Hold, and why, from the wallet’s on-chain history. Free.

## Output

Returns a JSON object with: the agent owner address, the chain and block timestamp of the check, aggregate hire counts broken down by source contract (e.g. termix_escrow, erc8183_shared), and a per-hirer list each containing the funding trail path (sequence of wallet addresses), number of hires, a verdict (e.g. 'inconclusive', 'shared_funder', 'independent_within_limits'), and a human-readable evidence string explaining what was or wasn't found. Also includes disclaimer notes about the limits of the trail analysis.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "agent"
     ],
     "properties": {
      "agent": {
       "type": "string",
       "pattern": "^(\\d{1,12}|0x[a-fA-F0-9]{40})$",
       "description": "ERC-8004 agent id on BNB Chain, or the 0x address that owns the agent(s)"
      },
      "chain": {
       "enum": [
        "bsc"
       ],
       "type": "string",
       "default": "bsc",
       "description": "BNB Chain only for now. Payment is USDC on Base."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "as_of": {
    "time": "2026-10-06T01:09:22.000Z",
    "block": 125969567
   },
   "chain": "bsc",
   "hires": {
    "total": 3,
    "by_source": {
     "termix_escrow": 3,
     "erc8183_shared": 0
    },
    "distinct_hirers": 2
   },
   "owner": "0x15d08640aeefbdce11930d9c9a30884011f654f6",
   "hirers": [
    {
     "path": [
      "0x4e276b4db12447254134b45e5add170993df5ad2",
      "0x1d21aa41a77737e593b8ca92d6bf6437fa81697f",
      "0x8894e0a0c962cb723c1976a4421c95949be2d4e3"
     ],
     "hires": 1,
     "address": "0x4e276b4db12447254134b45e5add170993df5ad2",
     "verdict": "inconclusive",
     "evidence": "The hirer's first-incoming-BNB trail stops at 0x8894e0a0c962cb723c1976a4421c95949be2d4e3, a hub (exchange-style wallet, router or custodian), after 2 hops; funding behind it is not visible.",
     "first_hire_at": "2026-10-01T07:42:05.000Z"
    },
    {
     "path": [
      "0x99f88c4cae19f858052236f808b75967eece5bd0",
      "0x0fe05614b2d344fb0ef9797431890d4c13c0f0f1",
      "0x15d08640aeefbdce11930d9c9a30884011f654f6"
     ],
     "hires": 2,
     "address": "0x99f88c4cae19f858052236f808b75967eece5bd0",
     "verdict": "shared_funder",
     "evidence": "The hirer's and the owner wallet's funding trails meet at 0x0fe05614b2d344fb0ef9797431890d4c13c0f0f1, which is not a hub or a contract (hirer: 1 hop up its first-incoming-stablecoin trail; owner wallet: 1 hop up its first-incoming-stablecoin trail).",
     "first_hire_at": "2026-10-03T07:19:06.000Z"
    }
   ],
   "limits": [
    "independent_within_limits means no link was found within these limits; it is not proven independence.",
    "Only each wallet's first incoming BNB and first incoming stablecoin are followed, up to 4 hops. Later funding, and transfers between hirer and owner after that, are not checked.",
    "BNB moved by contract-internal calls is not visible to the trail (top-level transfers only).",
    "Trails stop at hubs and contracts and count as no link found: who funded a wallet through an exchange is not visible, so an owner who withdrew from their own exchange account to a hirer is not detected.",
    "Pairwise only: wallets that hire each other inside a closed group can each look unlinked pair by pair (chainward.ai/decodes/set-and-earn-week-one).",
    "Counts hire events (OrderCreated, JobCreated), not completed hires, and does not check which marketplace a hire came from. Hires on other contracts or on BSC testnet are not co
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/chainward-hires-risk-check-api-10fc8ae2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.chainward.ai](https://www.zero.xyz/host/api.chainward.ai/llms.txt)
