x402 List

x402 Protocol Service Directory

Curl HTTP Request

Data ✓ VERIFIED

verified until 2026-08-17

Send an HTTP request to any URL from our servers and receive the full response — including the status code, all response headers, and the body content. Supports GET, POST, PUT, PATCH, DELETE, and HEAD. Automatically follows up to 3 redirects. Useful for testing endpoints, verifying servers are responding correctly, debugging redirect chains, or fetching raw data without needing a local setup

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

first settlement 2026-05-05 · $11.23 all-time · settled via coinbase, payAI

BASE URL https://curl-http-request.underscoredone.com WEBSITE https://underscoredone.com/curl_http_request/ ENDPOINTS 1 NETWORK Base / Solana ASSET USDC MEMBER SINCE 2026-06-25 MONITORED SINCE 2026-06-25

ASSESSMENT

updated 2m 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
100%
uptime 7d
100%
uptime 30d
99.9%
uptime 90d
99.9%
response p95
1774ms
avg response
890ms
total checks
2,776

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.01 (p53 in Data)
price (min)
$0.01
category percentile (min)
p53 in Data
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 $10.4666666667 30d · 31 buyers
volume 30d
$10.4666666667
buyers 30d
31
settlements 30d
129
first settlement
2026-05-05
last settlement
2026-08-10
top buyer share
65% of 30d volume
trend 7d vs 30d
0.02x the 30d daily rate
networks
eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d
volume all-time
$11.23
settlements all-time
350
median settlement 30d
$0.01
max settlement 30d
$10.00
settled via
coinbase, payAI

Attributed pro-quota: this payout address is shared, so volume is the operator-level figure divided by the services sharing it, while buyer and transaction counts stay whole. A declared convention, not an individually observed measure, and still a conservative undercount.

Currently sharing this payout address with Bulk DMARC Record Lookup, US CPI Data & Inflation Report API.

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

WHAT IT DOES

ai-derived

Sends HTTP requests to any URL and returns the full response including status code, headers, and body content.

category
http-client
in
query params
http-clientrequest-forwardingapi-testing

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 /curl $0.01 Base/Solana USDC header
1 endpoints

REQUEST / RESPONSE EXAMPLE

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

// request
curl -i 'https://curl-http-request.underscoredone.com/curl'
// 402 response (captured by monitor) · 1 payload · click to expand
[
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08",
        "amount": "10000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      },
      {
        "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
        "extra": {
          "feePayer": "D6ZhtNQ5nT9ZnTHUbqXZsTx5MH2rPFiBBggX4hY1WePM"
        },
        "payTo": "8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b",
        "amount": "10000",
        "scheme": "exact",
        "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://curl-http-request.underscoredone.com/curl",
      "tags": [
        "Network"
      ],
      "mimeType": "application/json",
      "description": "Send an HTTP request to any URL from our servers and receive the full response — including the status code, all response headers, and the body content. Supports GET, POST, PUT, PATCH, DELETE, and HEAD. Automatically follows up to 3 redirects. Useful for testing endpoints, verifying servers are responding correctly, debugging redirect chains, or fetching raw data without needing a local setup.",
      "serviceName": "Curl HTTP Request"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "url": "https://httpbin.org/get",
              "method": "GET"
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://httpbin.org/get",
              "body": "{\n  \"args\": {}, \n  \"headers\": {\n    \"Host\": \"httpbin.org\"\n  }, \n  \"url\": \"https://httpbin.org/get\"\n}",
              "error": "",
              "method": "GET",
              "headers": {
                "server": "gunicorn/19.9.0",
                "content-type": "application/json",
                "content-length": "307"
              },
              "durationMs": 312,
              "statusCode": 200,
              "api_version": "1.0.0",
              "redirectChain": []
            }
          }
        },
        "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",
                  "required": [
                    "url"
                  ],
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "The full web address you want to send a request to. Must start with http:// or https://."
                    },
                    "method": {
                      "enum": [
                        "GET",
                        "POST",
                        "PUT",
                        "PATCH",
                        "DELETE",
                        "HEAD"
                      ],
                      "type": "string",
                      "description": "The type of request to make. Choose from GET, POST, PUT, PATCH, DELETE, or HEAD. Defaults to GET if not provided."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST",
                    "PUT",
                    "PATCH"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json",
                    "form-data",
                    "text"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "required": [
                    "api_version",
                    "url",
                    "method",
                    "statusCode",
                    "headers",
                    "body",
                    "durationMs",
                    "redirectChain",
                    "error"
                  ],
                  "properties": {
                    "url": {
                      "type": "string"
                    },
                    "body": {
                      "type": "string"
                    },
                    "error": {
                      "type": "string"
                    },
                    "method": {
                      "type": "string"
                    },
                    "headers": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "durationMs": {
                      "type": "integer"
                    },
                    "statusCode": {
                      "type": "integer"
                    },
                    "api_version": {
                      "type": "string"
                    },
                    "redirectChain": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  }
]

OVER TIME

All charts use the 30d selector; each series spans only the dates it has data for. Every series is also served as JSON at /api/v1/services/curl-http-request/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
07-12 · uptime 100.0% · 469ms avg07-13 · uptime 100.0% · 719ms avg07-14 · uptime 100.0% · 527ms avg07-15 · uptime 100.0% · 796ms avg07-16 · uptime 100.0% · 1327ms avg07-17 · uptime 100.0% · 786ms avg07-18 · uptime 100.0% · 839ms avg07-19 · uptime 100.0% · 826ms avg07-20 · uptime 100.0% · 880ms avg07-21 · uptime 98.9% · 718ms avg07-22 · uptime 100.0% · 819ms avg07-23 · uptime 100.0% · 745ms avg07-24 · uptime 100.0% · 747ms avg07-25 · uptime 100.0% · 749ms avg07-26 · uptime 100.0% · 913ms avg07-27 · uptime 100.0% · 1013ms avg07-28 · uptime 98.9% · 1145ms avg07-29 · uptime 100.0% · 803ms avg07-30 · uptime 100.0% · 961ms avg07-31 · uptime 100.0% · 1000ms avg08-01 · uptime 100.0% · 1173ms avg08-02 · uptime 100.0% · 1169ms avg08-03 · uptime 100.0% · 1132ms avg08-04 · uptime 100.0% · 1025ms avg08-05 · uptime 100.0% · 1166ms avg08-06 · uptime 100.0% · 791ms avg08-07 · uptime 100.0% · 733ms avg08-08 · uptime 100.0% · 945ms avg08-09 · uptime 100.0% · 1131ms avg08-10 · uptime 100.0% · 929ms avg07-1208-10
30d UPTIME 99.9%
RESPONSE TIME
07-12 · 469ms avg07-12 · 469ms avg07-13 · 719ms avg07-13 · 719ms avg07-14 · 527ms avg07-14 · 527ms avg07-15 · 796ms avg07-15 · 796ms avg07-16 · 1327ms avg07-16 · 1327ms avg07-17 · 786ms avg07-17 · 786ms avg07-18 · 839ms avg07-18 · 839ms avg07-19 · 826ms avg07-19 · 826ms avg07-20 · 880ms avg07-20 · 880ms avg07-21 · 718ms avg07-21 · 718ms avg07-22 · 819ms avg07-22 · 819ms avg07-23 · 745ms avg07-23 · 745ms avg07-24 · 747ms avg07-24 · 747ms avg07-25 · 749ms avg07-25 · 749ms avg07-26 · 913ms avg07-26 · 913ms avg07-27 · 1013ms avg07-27 · 1013ms avg07-28 · 1145ms avg07-28 · 1145ms avg07-29 · 803ms avg07-29 · 803ms avg07-30 · 961ms avg07-30 · 961ms avg07-31 · 1000ms avg07-31 · 1000ms avg08-01 · 1173ms avg08-01 · 1173ms avg08-02 · 1169ms avg08-02 · 1169ms avg08-03 · 1132ms avg08-03 · 1132ms avg08-04 · 1025ms avg08-04 · 1025ms avg08-05 · 1166ms avg08-05 · 1166ms avg08-06 · 791ms avg08-06 · 791ms avg08-07 · 733ms avg08-07 · 733ms avg08-08 · 945ms avg08-08 · 945ms avg08-09 · 1131ms avg08-09 · 1131ms avg08-10 · 929ms avg08-10 · 929ms avg07-1208-10
AVG RESP 890ms
PRICE (captured 402, USD)
07-11 · $0.0108-10 · $0.01$0.0107-1108-10
SUB-SCORES (uptime + x402 compliance)
07-13 uptime: 99.9% compliance: 92% checks07-14 uptime: 99.9% compliance: 92% checks07-15 uptime: 99.9% compliance: 92% checks07-16 uptime: 99.9% compliance: 92% checks07-17 uptime: 99.9% compliance: 100% checks07-18 uptime: 99.9% compliance: 100% checks07-19 uptime: 99.9% compliance: 100% checks07-20 uptime: 99.9% compliance: 100% checks07-21 uptime: 99.9% compliance: 100% checks07-22 uptime: 99.9% compliance: 100% checks07-23 uptime: 99.9% compliance: 100% checks07-24 uptime: 99.9% compliance: 100% checks07-25 uptime: 99.9% compliance: 100% checks07-26 uptime: 99.9% compliance: 100% checks07-27 uptime: 99.9% compliance: 100% checks07-28 uptime: 99.8% compliance: 100% checks07-29 uptime: 99.8% compliance: 100% checks07-30 uptime: 99.8% compliance: 100% checks07-31 uptime: 99.9% compliance: 100% checks08-01 uptime: 99.9% compliance: 100% checks08-02 uptime: 99.9% compliance: 100% checks08-03 uptime: 99.9% compliance: 100% checks08-04 uptime: 99.9% compliance: 100% checks08-05 uptime: 99.9% compliance: 100% checks08-06 uptime: 99.9% compliance: 100% checks08-07 uptime: 99.9% compliance: 100% checks08-08 uptime: 99.9% compliance: 100% checks08-09 uptime: 99.9% compliance: 100% checks08-10 uptime: 99.9% compliance: 100% checksuptimecompliance07-1308-10

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)
07-12 · $0.0407-13 · $0.0307-14 · $0.0507-15 · $0.2407-16 · $0.0307-17 · $0.0407-18 · $0.0307-19 · $0.0107-20 · $0.0707-21 · $0.1007-22 · $0.0207-23 · $0.1307-26 · $0.0107-27 · $0.0507-28 · $2007-29 · $1008-01 · $0.0408-02 · $0.0108-04 · $0.0808-07 · $0.0108-10 · $0.08peak $2007-1208-10

Shared payout address (2 other services). These bars are the full shared address (operator-level), so do not sum them across the services that share it. Where a per-service figure is attributed, the assessment block and the ranking, it is the address total divided pro-quota by the 3 services sharing it: a declared convention, not an individually observed measure.

DISTINCT BUYERS
07-12 · 4 buyers07-13 · 2 buyers07-14 · 5 buyers07-15 · 9 buyers07-16 · 1 buyer07-17 · 2 buyers07-18 · 2 buyers07-19 · 1 buyer07-20 · 3 buyers07-21 · 2 buyers07-22 · 1 buyer07-23 · 4 buyers07-26 · 1 buyer07-27 · 2 buyers07-28 · 2 buyers07-29 · 1 buyer08-01 · 1 buyer08-02 · 1 buyer08-04 · 1 buyer08-07 · 1 buyer08-10 · 1 buyerpeak 9 buyers07-1208-10

Shared payout address (2 other services). These bars are the full shared address (operator-level), so do not sum them across the services that share it. Per-service buyer and transaction counts are shown whole (integers), not divided; only volume is attributed pro-quota. A declared convention, not an individually observed measure.

COMPLIANCE

14/14 checks pass · grade A

last 402 captured 2026-07-08 · last up 2026-08-10

  • 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 866ms
● OK 966ms
● OK 1009ms
● OK 799ms
● OK 1270ms
● OK 967ms
● SLOW 1342ms
● OK 1215ms
● OK 1020ms
● OK 1210ms
● OK 1182ms
● OK 1104ms
● SLOW 1475ms
● SLOW 1356ms
● OK 335ms
● OK 748ms
● OK 1182ms
● OK 519ms

EMBED THIS BADGE

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

Curl HTTP Request listed on x402-list
status
Curl HTTP Request uptime on x402-list
live uptime
// HTML
<a href="https://x402-list.com/services/curl-http-request?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/curl-http-request.svg" alt="Curl HTTP Request listed on x402-list" height="28">
</a>
// Markdown
[![Curl HTTP Request on x402-list](https://x402-list.com/badge/curl-http-request.svg)](https://x402-list.com/services/curl-http-request?utm_source=badge&utm_medium=referral&utm_campaign=embed)
// HTML · live uptime variant
<a href="https://x402-list.com/services/curl-http-request?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/curl-http-request.svg?data=uptime" alt="Curl HTTP Request 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 ]

To request delisting, email [email protected] or update your listing at /services/curl-http-request/update.