> ## Documentation Index
> Fetch the complete documentation index at: https://chainpatrol-mintlify-04a0fc55.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# API Overview

> Index of every ChainPatrol External API endpoint for wallets, security apps, and marketplaces to check, submit, and monitor scam URLs and addresses.

We work with leading wallets and security to block scam links, contract addresses, and
wallet addresses before a user interacts with the scam. ChainPatrol's APIs are offered
as a free service to wallets, security apps, and marketplaces.

Every endpoint below is served from `https://app.chainpatrol.io/api/v2` and authenticated
with an API key — see [Authentication](/external-api/authentication) for how to send it.

## Start here

<CardGroup cols={2}>
  <Card title="Report Create" icon="flag" href="/external-api/report-create">
    File a report against a scam.
  </Card>

  <Card title="Asset Check" icon="shield-check" href="/external-api/asset-check">
    Check if an asset is allowed or blocked.
  </Card>

  <Card title="Asset List" icon="list-check" href="/external-api/asset-list">
    Fetch our entire allowlist/blocklist for use in your own application.
  </Card>

  <Card title="Asset Changelog" icon="book" href="/external-api/asset-changelog">
    Fetch the latest changes to our allowlist/blocklist.
  </Card>

  <Card title="Dispute Create" icon="comment-dots" href="/external-api/dispute-create">
    Create a dispute for an asset that has been incorrectly flagged.
  </Card>

  <Card title="Configure Webhook" icon="bell" href="/external-api/webhook-config">
    Receive real-time notifications instead of polling.
  </Card>
</CardGroup>

## Assets

Look up, submit, scan, and unblock individual assets.

<CardGroup cols={2}>
  <Card title="Asset Check" icon="shield-check" href="/external-api/asset-check">
    Check whether an asset is allowed or blocked.
  </Card>

  <Card title="Asset Search" icon="magnifying-glass" href="/external-api/asset-search">
    Search across assets.
  </Card>

  <Card title="Asset Submit" icon="paper-plane" href="/external-api/asset-submit">
    Submit an asset for review.
  </Card>

  <Card title="Asset List" icon="list-check" href="/external-api/asset-list">
    Fetch the full allowlist/blocklist.
  </Card>

  <Card title="Asset Changelog" icon="book" href="/external-api/asset-changelog">
    Fetch recent allowlist/blocklist changes.
  </Card>

  <Card title="Asset Parse" icon="scissors" href="/external-api/asset-parse">
    Parse raw content into ChainPatrol asset types.
  </Card>

  <Card title="Start Asset Scan" icon="radar" href="/external-api/asset-scan">
    Kick off a scan, optionally with a callback URL.
  </Card>

  <Card title="Get Scan Result" icon="file-magnifying-glass" href="/external-api/scan-result">
    Retrieve enrichments, checks, and labels for a scan.
  </Card>

  <Card title="Unblock Asset" icon="unlock" href="/external-api/asset-unblock">
    Unblock one of your assets, or open a dispute.
  </Card>

  <Card title="Get Asset Details" icon="circle-info" href="/external-api/asset-details">
    Deprecated — use Asset Check or Asset Search.
  </Card>
</CardGroup>

## Blocklist sync

Sync the blocklist as hashed prefixes, so clients never download the full list of blocked
content. This is the mechanism the ChainPatrol browser extension uses.

<CardGroup cols={2}>
  <Card title="Get Blocklist Version" icon="code-branch" href="/external-api/asset-blocklist-version">
    Discover the current snapshot, recent-additions feed, and algorithm version.
  </Card>

  <Card title="Confirm Prefix Matches" icon="fingerprint" href="/external-api/asset-blocklist-confirm">
    Resolve full hashes for local prefix hits.
  </Card>
</CardGroup>

## Organization assets

Manage the assets and asset groups your organization owns.

<CardGroup cols={2}>
  <Card title="List Assets" icon="list" href="/external-api/organization-assets-list">
    List your organization's assets.
  </Card>

  <Card title="Add Asset" icon="plus" href="/external-api/organization-assets-add">
    Add an asset to your organization.
  </Card>

  <Card title="Update Asset" icon="pen" href="/external-api/organization-assets-update">
    Update an organization asset.
  </Card>

  <Card title="Remove Asset" icon="trash" href="/external-api/organization-assets-remove">
    Remove an organization asset.
  </Card>

  <Card title="List Asset Groups" icon="folder" href="/external-api/organization-asset-groups-list">
    List your organization's asset groups.
  </Card>

  <Card title="Create Asset Group" icon="folder-plus" href="/external-api/organization-asset-groups-create">
    Create an asset group.
  </Card>

  <Card title="Update Asset Group" icon="folder-gear" href="/external-api/organization-asset-groups-update">
    Update an asset group.
  </Card>

  <Card title="Delete Asset Group" icon="folder-minus" href="/external-api/organization-asset-groups-delete">
    Delete an asset group.
  </Card>
</CardGroup>

## Organization brands

<CardGroup cols={2}>
  <Card title="List Organization Brands" icon="tags" href="/external-api/organization-brands">
    List every brand on your organization, with terms, tickers, legal documents, and
    trademark registrations.
  </Card>
</CardGroup>

## Reports

<CardGroup cols={2}>
  <Card title="Report Create" icon="flag" href="/external-api/report-create">
    File a report against a scam.
  </Card>

  <Card title="Search Reports" icon="magnifying-glass" href="/external-api/reports-search">
    Check for an existing report before creating a new one.
  </Card>

  <Card title="List Organization Reports" icon="list" href="/external-api/organization-reports-list">
    Retrieve your organization's reports (`GET /organization/reports`).
  </Card>

  <Card title="Get Organization Reports" icon="clock-rotate-left" href="/external-api/organization-reports">
    Deprecated — use List Organization Reports.
  </Card>
</CardGroup>

## Threats and detection

Read detected threats and manage the detection configs that produce them.

<CardGroup cols={2}>
  <Card title="Threats List" icon="triangle-exclamation" href="/external-api/threats-list">
    List threats for your organization.
  </Card>

  <Card title="Detection List" icon="list" href="/external-api/detection-list">
    List detection results.
  </Card>

  <Card title="List Detection Configs" icon="sliders" href="/external-api/detection-configs-list">
    List detection sources and their configs.
  </Card>

  <Card title="Update Detection Config" icon="pen" href="/external-api/detection-configs-update">
    Change a config's status, schedule, or fields.
  </Card>

  <Card title="Run Detection Configs" icon="play" href="/external-api/detection-configs-run">
    Run one or many configs on demand.
  </Card>

  <Card title="Validate Detection Configs" icon="circle-check" href="/external-api/detection-configs-validate">
    Check configs against their recent results.
  </Card>

  <Card title="Detection Drift" icon="chart-line-down" href="/external-api/detection-drift">
    Surface zero-result, noisy, and stale configs.
  </Card>
</CardGroup>

## Disputes and takedowns

<CardGroup cols={2}>
  <Card title="Dispute Create" icon="comment-dots" href="/external-api/dispute-create">
    Dispute an asset that has been incorrectly flagged.
  </Card>

  <Card title="Takedowns List" icon="gavel" href="/external-api/takedowns-list">
    List takedowns for your organization.
  </Card>
</CardGroup>

## Metrics

<CardGroup cols={2}>
  <Card title="Get Metrics Summary" icon="chart-simple" href="/external-api/metrics-summary">
    Customer-facing metrics and blocked threat breakdowns for a date range.
  </Card>

  <Card title="Get Metrics Breakdown" icon="chart-column" href="/external-api/metrics-breakdown">
    Blocked threat counts grouped by day, asset type, or brand.
  </Card>

  <Card title="Get Found Threats Count" icon="magnifying-glass-chart" href="/external-api/metrics-found">
    The default `found` metric — customer-facing new threats.
  </Card>

  <Card title="List Organization Metrics" icon="list" href="/external-api/organization-metrics-list">
    Retrieve your organization's metrics (`GET /organization/metrics`).
  </Card>

  <Card title="Get Organization Metrics" icon="clock-rotate-left" href="/external-api/organization-metrics">
    Deprecated — use List Organization Metrics.
  </Card>
</CardGroup>

## Operations

<CardGroup cols={2}>
  <Card title="Queue Snapshot" icon="layer-group" href="/external-api/operations-queues-snapshot">
    Pending review and takedown queue state, with SLA and age buckets.
  </Card>
</CardGroup>

## Healthchecks

Healthchecks grade a single operational signal and all return the same result shape, so
you can call them in a loop and handle the responses with shared code. Start from the
registry:

<CardGroup cols={2}>
  <Card title="List Healthchecks" icon="clipboard-list" href="/external-api/healthchecks-list">
    The registry of available healthchecks — only call the ones where `implemented` is
    true.
  </Card>
</CardGroup>

The individual checks:

* [Silent Detection Configs](/external-api/healthchecks-detections-silent-configs) —
  enabled configs producing too few recent results
* [Reviewing Backlog](/external-api/healthchecks-reviewing-backlog) — pile-up of
  unreviewed proposals
* [Old Proposals in Review](/external-api/healthchecks-reviewing-old-proposals) —
  proposals waiting past the age thresholds
* [TODO Takedown Volume](/external-api/healthchecks-takedowns-todo-volume) — pile-up of
  takedowns in `TODO`
* [IN\_PROGRESS Takedown Volume](/external-api/healthchecks-takedowns-in-progress-volume) —
  pile-up of takedowns in `IN_PROGRESS`
* [Stale IN\_PROGRESS Takedowns](/external-api/healthchecks-takedowns-stale-in-progress) —
  takedowns stuck past the staleness threshold
* [Cancelled Takedown Count](/external-api/healthchecks-takedowns-cancelled-count) — excess
  cancellations over a rolling window
* [Automated Takedowns Disabled](/external-api/healthchecks-takedowns-automation-off) —
  automation off for too long
* [Dead Asset Spike](/external-api/healthchecks-assets-dead-asset-spike) — spike in assets
  detected as dead
* [Missing Contact URL](/external-api/healthchecks-organization-missing-contact-url) — no
  main communication channel configured

## Account and access

<CardGroup cols={2}>
  <Card title="Validate API Key" icon="key" href="/external-api/validate">
    Check whether an API key is valid.
  </Card>

  <Card title="Get Current User" icon="user" href="/external-api/user-me">
    Details of the authenticated user.
  </Card>

  <Card title="Update Current User" icon="user-pen" href="/external-api/user-me-update">
    Update the authenticated user's profile and settings.
  </Card>

  <Card title="List User Organizations" icon="building" href="/external-api/user-orgs">
    Organizations the caller can access, with services and integrations.
  </Card>

  <Card title="Get User Organization" icon="building-circle-check" href="/external-api/user-orgs-get">
    Fetch a single organization by slug.
  </Card>
</CardGroup>

## Webhooks

<CardGroup cols={2}>
  <Card title="Configure Webhook" icon="bell" href="/external-api/webhook-config">
    Receive real-time notifications for asset status updates and threat detections.
  </Card>
</CardGroup>

<Note>
  Two `POST` endpoints are deprecated and kept only for backwards compatibility:
  [`/public/getOrganizationReports`](/external-api/organization-reports) — use
  [`GET /organization/reports`](/external-api/organization-reports-list) — and
  [`/public/getOrganizationMetrics`](/external-api/organization-metrics) — use
  [`GET /organization/metrics`](/external-api/organization-metrics-list).
  [`POST /asset/details`](/external-api/asset-details) is deprecated in the spec itself.
</Note>
