x402 List

x402 Protocol Service Directory

Datasource Pulse

Verification PAYMENT-READY

payment-ready until 2026-08-20

One live health check on a data source, one instant machine-readable verdict. Monitor an Apify actor, API, or scraper for failures; check whether an API key silently failed; detect schema drift, stale data, empty results, dead credentials, rate limiting, and quota exhaustion. Validates keys for 35+ vendors (OpenAI, Anthropic, Stripe, GitHub and more), any HTTP endpoint, or a public Apify actor by id. Returns JSON: state, failure_class, message, recommended_action, latency_ms, metadata.

Pay from $0.02 per request in USDC on Base, settled onchain via the x402 protocol, no signup, no API key needed.

first settlement 2026-07-25 · $0.06 all-time · settled via coinbase

BASE URL https://datasourcepulse.com WEBSITE https://datasourcepulse.com ENDPOINTS 1 NETWORK Base ASSET USDC MEMBER SINCE 2026-07-25 MONITORED SINCE 2026-07-25

ASSESSMENT

updated 59m ago

Evidence-backed signals, not a single score. Click any chip for the proof. Measured values stay read-only; unknown is honest.

reliability 99.9%
uptime 24h
98.2%
uptime 7d
99.8%
uptime 30d
99.9%
uptime 90d
99.9%
response p95
1788ms
avg response
911ms
total checks
1,712

Measured on the unpaid 402 handshake, not the paid call. A service can 402 correctly and still fail after payment.

compliance A (14/14)

14 of 14 x402 conformance checks pass. Full checklist below.

jump to compliance checklist

price $0.02 (p51 in Verification)
price (min)
$0.02
category percentile (min)
p51 in Verification
endpoints / prices
1 / 1
model
flat
stability
100%
risk clean

No deterministic risk flag. Risk fires only on an exact blocklist match, or a reserved-brand name with a mismatched verified payTo. Never from low uptime, a high price, or a model guess.

domain age
-
registrar
-
hosting
custom
domain created
---

Identity facts, not a risk score.

traction $0.06 30d · 1 buyers · top buyer 100%
volume 30d
$0.06
buyers 30d
1
settlements 30d
3
first settlement
2026-07-25
last settlement
2026-07-29
top buyer share
100% of 30d volume
trend 7d vs 30d
0.00x the 30d daily rate
networks
eip155:8453
volume all-time
$0.06
settlements all-time
3
median settlement 30d
$0.02
max settlement 30d
$0.02
settled via
coinbase ($0.06, 3 tx)

Conservative undercount: only USDC settlements via facilitators we measure are counted. A measured floor, not an estimate.

Top buyer share is a concentration signal, not part of the ranking score.

CHANGES

1 event, detecting since 2026-07-24

Payout, price, and schema changes detected on this service's x402 wire. A payout rotation at an unchanged price shows up here even when nothing else moves. Full feed at /changes.

changes schema changed 19d ago (1 since 2026-07-24)

schema changed · 19d ago

schema removed GET /api/x402/check exact eip155:8453 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 1 application/json

schema added GET /api/x402/check exact eip155:8453 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 2

see all changes for this service

WHAT IT DOES

ai-derived

Performs live health checks on data sources to detect failures, schema drift, stale data, and other issues.

category
data-monitoring
in
query params
data-monitoringhealth-checkapi-validationdata-quality

AI-generated summary. The measured data is never altered by it.

ENDPOINTS

Service endpoints with HTTP method, path, description, pricing, and network
METHOD PATH DESCRIPTION PRICE NETWORK ASSET 402 CHANNEL
GET /api/x402/check One live health check on a data source, one instant machine-readable verdict. Monitor an Apify actor, API, or scraper for failures; check whether an API key silently failed; detect schema drift, stale data, empty results, dead credentials, rate limiting, and quota exhaustion. Validates keys for 35+ vendors (OpenAI, Anthropic, Stripe, GitHub and more), any HTTP endpoint, or a public Apify actor by id. Returns JSON: state, failure_class, message, recommended_action, latency_ms, metadata. $0.02 Base USDC header
1 endpoints

REQUEST / RESPONSE EXAMPLE

An unpaid request to GET /api/x402/check returns HTTP 402 with the payment terms. Settle onchain via your facilitator, then retry with the X-Payment header.

// request
curl -i 'https://datasourcepulse.com/api/x402/check'
// 402 response (captured by monitor) · 1 payload · click to expand
[
  {
    "error": "This endpoint settles on POST only. GET and HEAD serve this payment envelope for discovery. POST the same path with an X-PAYMENT header to run a check.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x7cCb91a3ad4c45097bDA4C3C29d2Cc89fA93Ab36",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 90
      }
    ],
    "resource": {
      "url": "https://datasourcepulse.com/api/x402/check",
      "mimeType": "application/json",
      "description": "One live health check on a data source, one instant machine-readable verdict. Monitor an Apify actor, API, or scraper for failures; check whether an API key silently failed; detect schema drift, stale data, empty results, dead credentials, rate limiting, and quota exhaustion. Validates keys for 35+ vendors (OpenAI, Anthropic, Stripe, GitHub and more), any HTTP endpoint, or a public Apify actor by id. Returns JSON: state, failure_class, message, recommended_action, latency_ms, metadata."
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "url": "https://example.com",
              "type": "credential",
              "vendor": "generic_http"
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          }
        },
        "schema": {
          "type": "object",
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "required": [
            "input"
          ],
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "generic_http vendor (required): the public endpoint to check. Private, loopback, and internal addresses are rejected."
                    },
                    "type": {
                      "enum": [
                        "credential",
                        "actor"
                      ],
                      "type": "string",
                      "description": "Check mode. credential (default): validate an API key or HTTP endpoint. actor: health-check a public Apify actor by id. If omitted, inferred: actorId present means actor, otherwise credential."
                    },
                    "apiKey": {
                      "type": "string",
                      "description": "credential mode: the API key to validate. Used for one live vendor call, never stored."
                    },
                    "vendor": {
                      "type": "string",
                      "description": "credential mode (required): vendor template, e.g. openai, anthropic, gemini, stripe, github, serpapi, reddit, youtube, or generic_http for any HTTP endpoint. Unknown vendors return 400 with the full list location."
                    },
                    "actorId": {
                      "type": "string",
                      "description": "actor mode (required): Apify actor id, e.g. apify~web-scraper."
                    },
                    "clientId": {
                      "type": "string",
                      "description": "credential mode: OAuth client id, for vendors that use one."
                    },
                    "apifyToken": {
                      "type": "string",
                      "description": "actor mode (required): Apify API token with actor + run read access. Used for live reads, never stored."
                    },
                    "authHeader": {
                      "type": "string",
                      "description": "generic_http: full Authorization header value to send."
                    },
                    "bearerToken": {
                      "type": "string",
                      "description": "credential mode: bearer token, for vendors that use one."
                    },
                    "clientSecret": {
                      "type": "string",
                      "description": "credential mode: OAuth client secret, for vendors that use one."
                    },
                    "costSpikePct": {
                      "type": "number",
                      "description": "actor mode: cost spike threshold percent (default 50)."
                    },
                    "quotaSoftCap": {
                      "type": "number",
                      "description": "credential mode, optional: your own budget line in the vendor's native usage unit. Quota verdicts are evaluated against this cap instead of the vendor's billing wall."
                    },
                    "refreshToken": {
                      "type": "string",
                      "description": "google_oauth vendor only: OAuth2 refresh token, validated via a token refresh."
                    },
                    "volumeDropPct": {
                      "type": "number",
                      "description": "actor mode: volume drop threshold percent (default 30)."
                    },
                    "successJsonPath": {
                      "type": "string",
                      "description": "generic_http: dot-separated JSON path to assert on the response body."
                    },
                    "successJsonValue": {
                      "type": "string",
                      "description": "generic_http: expected string value at successJsonPath."
                    },
                    "successStatusCode": {
                      "type": "number",
                      "description": "generic_http: expected HTTP status (default 200)."
                    },
                    "enableCostBaseline": {
                      "type": "boolean",
                      "description": "actor mode: alert if per-run cost spikes vs the rolling average (default false)."
                    },
                    "enableVolumeBaseline": {
                      "type": "boolean",
                      "description": "actor mode: alert if latest output volume drops vs the rolling average of recent runs (default true)."
                    },
                    "stalenessThresholdDays": {
                      "type": "number",
                      "description": "actor mode: failing verdict when the actor has not been updated in this many days (default 30)."
                    }
                  }
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json",
                    "form-data",
                    "text"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        }
      }
    },
    "x402Version": 2
  }
]

OVER TIME

All charts use the 24h selector; each series spans only the dates it has data for. Every series is also served as JSON at /api/v1/services/datasource-pulse/price, /scores, /volume and /buyers. On-chain volume and distinct buyers are measured over the service's settlement address and are a conservative undercount (only settlements that reach a measured facilitator are counted). The on-chain series roll up hourly, so the latest day can be up to about an hour behind; distinct buyers are counted per payout address, so a service that settles to more than one address is an upper bound.

UPTIME
08-13 · uptime 98.4% · 1021ms avg08-1308-13
24h UPTIME 98.4%
RESPONSE TIME
08-13 · 1021ms avg08-13 · 1021ms avg08-1308-13
AVG RESP 910ms
PRICE (captured 402, USD)
08-12 · $0.0208-13 · $0.02$0.0208-1208-13
SUB-SCORES (uptime + x402 compliance)
08-12 uptime: 100.0% compliance: 100% checks08-13 uptime: 99.9% compliance: 100% checksuptimecompliance08-1208-13

checklist grew 11->14 on 2026-07-28; a step here is a metric change, not a regression

PILLARS OVER TIME (measured)

Measured site and economics pillars from the assessment history, so the latest value shown elsewhere on this page reads as a point on a trend rather than a permanent state.

VOLUME (on-chain settlement, USD)
no on-chain volume in the last 24h
DISTINCT BUYERS
no distinct buyers in the last 24h

COMPLIANCE

14/14 checks pass · grade A

last 402 captured 2026-07-26 · last up 2026-08-13

  • 402 payload captured
  • accepts[] array present
  • payTo address recoverable
  • payTo at accepts[0].payTo (conformant shape)
  • payTo is a valid on-chain address
  • atomic price declared
  • atomic price in a sane range
  • asset (token) address declared
  • network resolves to CAIP-2
  • payment scheme declared
  • served over HTTPS
  • declares the current x402 version (2)
  • EIP-712 domain parameters present on every EVM entry
  • x402 v2 envelope delivered in the payment-required header

SITE PILLARS

  • homepage reachable
  • openapi doc
  • pricing page
  • llms.txt
  • robots.txt
  • terms page
recent checks (18) live · click to expand
TIME STATUS RESP CAUSE
● OK 566ms
● OK 854ms
● OK 772ms
● OK 489ms
● SLOW 2187ms
● OK 488ms
● OK 992ms
● OK 347ms
○ DOWN 5031ms network: SSRF: resolved to a private address
● SLOW 1534ms
● OK 888ms
● OK 702ms
● OK 928ms
● OK 991ms
● SLOW 1937ms
● OK 646ms
● OK 894ms
● OK 975ms

EMBED THIS BADGE

Show that Datasource Pulse is monitored on x402-list. Paste this on your site or README, it links back to this live listing.

Datasource Pulse listed on x402-list
status
Datasource Pulse uptime on x402-list
live uptime
// HTML
<a href="https://x402-list.com/services/datasource-pulse?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/datasource-pulse.svg" alt="Datasource Pulse listed on x402-list" height="28">
</a>
// Markdown
[![Datasource Pulse on x402-list](https://x402-list.com/badge/datasource-pulse.svg)](https://x402-list.com/services/datasource-pulse?utm_source=badge&utm_medium=referral&utm_campaign=embed)
// HTML · live uptime variant
<a href="https://x402-list.com/services/datasource-pulse?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/datasource-pulse.svg?data=uptime" alt="Datasource Pulse uptime on x402-list" height="28">
</a>

RUN THIS SERVICE?

Keep this listing accurate: propose changes to the name, description, website, category or add new endpoints to monitor. Ownership is verified with a domain proof and every change is reviewed manually; measured data stays read-only.

[ update this listing ]

Earn the verified tier: x402list pays a real call to this endpoint and, if it delivers, the service is delivery-verified. The fee covers the cost of the probe, not the badge; there is no refund if the call does not deliver. Agent and API only, no in-browser signing. See /api.

[ verify this service ($0.25) ]

To request delisting, email info@x402-list.com or update your listing at /services/datasource-pulse/update.