Skip to main content
GET
/
v1
/
reputation
/
{address}
GET /v1/reputation/{address}
curl --request GET \
  --url https://api.agentscore.sh/v1/reputation/{address}

Documentation Index

Fetch the complete documentation index at: https://docs.agentscore.sh/llms.txt

Use this file to discover all available pages before exploring further.

Request

Headers

HeaderRequiredDescription
X-API-KeyYesYour API key

Path parameters

ParameterTypeDescription
addressstringWallet address — EVM (0x... 40-hex) or Solana (base58, 32–44 chars). Network is auto-detected from format.

Query parameters

ParameterTypeDefaultDescription
chainstringOptional. Filter to a specific chain
When chain is provided, the chains array and agents array are filtered to that chain.

Response (Pro tier)

Pro and Enterprise tiers receive the full response:
{
  "subject": {
    "address": "0xdb5aa553feeb2c3e3d03e8360b36fb0f7e480671",
    "chains": ["base", "ethereum"]
  },
  "score": {
    "value": 68,
    "grade": "B",
    "scored_at": "2026-03-10T12:00:00Z",
    "status": "scored",
    "version": "v1"
  },
  "verification_level": "kyc_verified",
  "chains": [
    {
      "chain": "base",
      "score": {
        "value": 68,
        "grade": "B",
        "confidence": 0.85,
        "dimensions": {
          "identity": 85,
          "activity": 35,
          "capability": 70,
          "reach": 50,
          "trust": 72
        },
        "scored_at": "2026-03-10T12:00:00Z",
        "status": "scored",
        "version": "v1"
      },
      "classification": {
        "entity_type": "agent",
        "confidence": 0.92,
        "is_known": true,
        "is_known_erc8004_agent": true,
        "has_candidate_payment_activity": true,
        "has_verified_payment_activity": false,
        "reasons": ["erc8004_registered", "has_endpoints"]
      },
      "identity": {
        "ens_name": null,
        "website_url": "https://paybot.example.com",
        "github_url": null
      },
      "activity": {
        "total_candidate_transactions": 142,
        "total_verified_transactions": 0,
        "as_candidate_payer": 80,
        "as_candidate_payee": 62,
        "as_verified_payer": 0,
        "as_verified_payee": 0,
        "counterparties_count": 17,
        "active_days": 45,
        "active_months": 3,
        "first_candidate_tx_at": "2026-01-15T08:30:00Z",
        "last_candidate_tx_at": "2026-03-10T10:22:00Z",
        "first_verified_tx_at": null,
        "last_verified_tx_at": null
      },
      "evidence_summary": {
        "metadata_kind": "https",
        "has_a2a_agent_card": false,
        "website_url": "https://paybot.example.com",
        "website_reachable": true,
        "website_mentions_mcp": false,
        "website_mentions_x402": false,
        "github_url": null,
        "github_stars": null
      }
    }
  ],
  "operator_score": {
    "score": 68,
    "grade": "B",
    "agent_count": 3,
    "chains_active": ["base", "ethereum"]
  },
  "reputation": {
    "feedback_count": 150,
    "client_count": 3,
    "trust_avg": 68.5,
    "uptime_avg": 99.2,
    "activity_avg": 35.0,
    "last_feedback_at": "2026-03-28T12:00:00Z"
  },
  "agents": [
    {
      "token_id": 42,
      "chain": "base",
      "name": "PayBot",
      "score": 68,
      "grade": "B"
    }
  ],
  "data_semantics": "candidate_payment_activity_with_verified_subset",
  "caveats": [],
  "updated_at": "2026-03-10T12:00:00Z"
}
operator_score is only present when the address has operator data (i.e., owns registered agents). reputation is only present on paid tier when the address has agent feedback data.

Response (Free tier)

Free tier receives a redacted response — score, grade, and entity type only. Dimensions, confidence, payment activity, reputation, identity details, and evidence are omitted.
{
  "subject": {
    "address": "0xdb5aa553feeb2c3e3d03e8360b36fb0f7e480671",
    "chains": ["base", "ethereum"]
  },
  "score": {
    "value": 68,
    "grade": "B",
    "scored_at": "2026-03-10T12:00:00Z",
    "status": "scored",
    "version": "v1"
  },
  "verification_level": "none",
  "chains": [
    {
      "chain": "base",
      "score": {
        "value": 68,
        "grade": "B",
        "scored_at": "2026-03-10T12:00:00Z",
        "status": "scored",
        "version": "v1"
      },
      "classification": {
        "entity_type": "agent"
      }
    }
  ],
  "operator_score": {
    "score": 68,
    "grade": "B"
  },
  "agents": [
    {
      "token_id": 42,
      "chain": "base",
      "name": "PayBot",
      "score": 68,
      "grade": "B"
    }
  ],
  "data_semantics": "candidate_payment_activity_with_verified_subset",
  "caveats": [],
  "updated_at": "2026-03-10T12:00:00Z"
}
Upgrade to Pro (pricing) for full scoring details including dimensions, confidence, payment activity, reputation breakdown, and evidence.

Top-level score

When the address is an operator (owns agents), the top-level score reflects the operator score — a tail-risk weighted average across all agents on all chains. When the address has no agents, the top-level score is the highest per-chain address score. Per-chain scores and classification are in the chains array. On Pro tier, this also includes identity, activity, and evidence.

Data semantics

The data_semantics field describes what kind of transaction data was used to compute the score. The current value is candidate_payment_activity_with_verified_subset, meaning the score is based on candidate payment transactions with a verified subset where available.

Score status values

StatusMeaning
scoredScore is fresh (computed within 24h)
staleScore exists but is older than 24h. Use POST /v1/assess for a fresh evaluation.
known_unscoredAddress is indexed but has not been scored yet

Unknown address (404)

If the address has not been indexed:
{
  "error": {
    "code": "unknown_address",
    "message": "Address not yet indexed.",
    "can_assess": true
  }
}
Use POST /v1/assess to score any address on-the-fly, including unknown ones.

Verification level

The verification_level field indicates how far the operator behind this address has progressed through identity verification.
ValueMeaning
noneNo verification performed
wallet_claimedOperator has signed a wallet ownership challenge
kyc_verifiedOperator has completed identity verification
This endpoint is read-only. It returns cached data and never triggers scoring. For fresh, on-the-fly scoring, use POST /v1/assess (Pro tier required).