x402 List Submit a serviceSubmit

agdata

payment-readyonline

payment-ready until 2026-10-21

Unblocking and fresh web data for AI agents: any URL as Markdown, screenshots, YouTube transcripts and comments, Google Maps and Amazon reviews, LinkedIn and Indeed jobs, Google News, web search, X replies.

Call it x402 v2

x402 v2

Base URL
https://agdata.shveik.dev
Payment
x402 v2, header channel
$ curl -i 'https://agdata.shveik.dev/x402/amazon'

An unpaid request returns HTTP 402 with the payment terms. Sign a payment authorization, then retry with the PAYMENT-SIGNATURE header.

Endpoints 22 paid routes on agdata.shveik.dev

GET/x402/amazonBase+Pol+Sol$0.037since 10-14
GET/x402/amazon-reviewsBase+Pol$0.0174since 10-14
GET/x402/google-mapsBase+Pol+Sol$0.0322since 10-14
GET/x402/google-maps-reviewsBase+Pol+Sol$0.01505since 10-14
GET/x402/google-newsBase+Pol+Sol$0.0239since 10-14
GET/x402/google-searchBase+Pol+Sol$0.02285since 10-14
GET/x402/indeed-jobsBase+Pol+Sol$0.0141since 10-14
GET/x402/instagramBase+Pol+Sol$0.0255since 10-14

14 more in Example 402 response

Prices as captured in the 402 response: median $0.0211725 across the 22 endpoints, unchanged since first capture.

Example 402 response

Endpoints and prices

Current paid endpoints; minimum quoted prices in USD where available; first capture dates in UTC
MethodPathDescriptionPriceNetworkAsset402 channelCaptured
GET/x402/amazonKeyword search on Amazon.com (US store): up to 20 products per call, each filled in from its product page. Body: {query, limit}. The normalized object per product: asin, title, brand, price, list_price, currency, rating, reviews_count, in_stock, seller, image, url, description and the features bullet list. Good for price checks and product comparison.$0.037Base+Pol+SolUSDCheadersince 10-14
GET/x402/amazon-reviewsAmazon product reviews API for AI agents: send an ASIN or an Amazon product URL and get up to 50 customer reviews as JSON: rating, title, text, date, verified-purchase flag and helpful votes. Sort by recent or helpful, filter by stars, and pick the marketplace (US, UK, DE, FR, IT, ES, CA, JP). Reviewer names and photos are not returned. A product with no reviews is not charged.$0.0174Base+PolUSDCheadersince 10-14
GET/x402/google-mapsGoogle Maps places for a search term, optionally narrowed to an area: {"query":"coffee shops","location":"Prague","limit":5}. Up to 20 places per call. Each place comes back with title, categoryName, address, phone, website, totalScore (rating), reviewsCount, location (lat, lng), openingHours, price, placeId and its Maps url. Common uses are local lead lists, store and competitor mapping, and checking a business's hours or phone number.$0.0322Base+Pol+SolUSDCheadersince 10-14
GET/x402/google-maps-reviewsGoogle Maps reviews API for AI agents: send a place_id or a Google Maps place URL and get up to 50 reviews as JSON: stars, text and its translation, date, likes, the owner's reply, plus the place's name, address and rating. Sort by newest, relevant, highest or lowest. Reviewer names, profiles and photos are not returned. A place with no reviews is not charged; reviews you paid for but did not get are refunded.$0.01505Base+Pol+SolUSDCheadersince 10-14
GET/x402/google-newsGoogle News search API for AI agents: send a keyword or phrase and get up to 30 current news articles as JSON: headline, publisher, publish time, a short description and the article's link. Choose the language and country edition. Articles you paid for but did not get are refunded.$0.0239Base+Pol+SolUSDCheadersince 10-14
GET/x402/google-searchGoogle Search results (SERP) for a query, as JSON. Each record is one results page with organicResults (position, title, url, displayedUrl, description), paidResults, relatedQueries, peopleAlsoAsk and searchQuery metadata. Body: {query, limit}. limit (1-20) is rounded up to whole pages of about 10 results, so 1-10 returns one page and 11-20 returns two. Useful for rank checks, source discovery and grounding answers in search results.$0.02285Base+Pol+SolUSDCheadersince 10-14
GET/x402/indeed-jobsIndeed jobs search API for AI agents: send a job title and an optional location and country and get up to 50 job listings as JSON: title, employer, location, posting date, job types, benefits, salary range when listed and the listing's description. Filter by how recently a job was posted; 60 countries. Jobs you paid for but did not get are refunded.$0.0141Base+Pol+SolUSDCheadersince 10-14
GET/x402/instagramInstagram posts as JSON. Mode profile returns an account's posts, hashtag returns posts under a tag, and search or user take a keyword and scrape the best-matching hashtag or account. Send {mode, query, limit} with limit 1-20. Each post has a normalized object: caption, likes, comments_count, views, posted_at, media_type, media_url, hashtags, author, author_name, shortcode, url. No Instagram login or API key needed.$0.0255Base+Pol+SolUSDCheadersince 10-14
GET/x402/instagram-commentsInstagram comments API for AI agents: send the URL of a post or reel and get its comments as JSON: text, time, likes and reply count. Up to 100 comments per call. The commenters' names and handles are not returned. Pay per call in stablecoins; comments you paid for but did not get are refunded.$0.0198Base+PolUSDCheadersince 10-14
GET/x402/linkedinLook up one public LinkedIn profile per call. Pass {query} as a username (jane-example), a profile URL or a URN; there is no limit field. The normalized object holds name, first_name, last_name, headline, about, location, country_code, current_company, followers, connections, avatar, plus experience (title, company, start_year, end_year, is_current) and education (school, degree, field, years). Email addresses are not returned.$0.037Base+Pol+SolUSDCheadersince 10-14
GET/x402/linkedin-jobsLinkedIn jobs search API for AI agents: send a job title or keywords and an optional location and get up to 50 public job listings as JSON: title, company, location, posting date, employment type, seniority, salary when listed, the listing's URL and its description. Filter by how recently a job was posted. Recruiter names are not returned. Jobs you paid for but did not get are refunded.$0.015Base+PolUSDCheadersince 10-14
GET/x402/redditSearch Reddit or read a subreddit. Use mode hashtag with a subreddit name (no r/), profile with a username, or search with keywords, plus limit 1-20. Every record is a post with kind, id, url, title, body, author, subreddit, upvotes, comments_count, created_at, members and source; at most limit posts come back. Comments, profile and subreddit records are not returned. upvotes and comments_count can be null. Send raw true for the full original records.$0.0295Base+PolUSDCheadersince 10-14
GET/x402/screenshotScreenshot API for AI agents: send {url} and get a JPEG, PNG, WebP or PDF of the page as base64 in JSON, with final URL, byte size and pixel size. Pick a desktop, mobile or tablet viewport, full page, dark mode, a delay or one element by CSS selector. It shows what a normal browser sees and does not get past bot protection (use unblock for those pages' text). A page that can't be captured, or renders blank, is not charged.$0.01897Base+PolUSDCheadersince 10-14
GET/x402/tiktokGet TikTok videos for a username, a hashtag or a search keyword. The body is {mode: profile|hashtag|search, query, limit} and limit runs 1-20. Each video has id, url, text, created_at, author, plays, likes, comments, shares, saves, duration_s, hashtags and music; no expiring media links. raw true returns the original records. A leading @ or # in the query is stripped.$0.0315Base+Pol+SolUSDCheadersince 10-14
GET/x402/tiktok-commentsTikTok comments API for AI agents: send the URL of a video and get its comments as JSON: text, time, likes and reply count. Up to 100 comments per call. The commenters' names and handles are not returned. Pay per call in stablecoins; comments you paid for but did not get are refunded.$0.01575Base+PolUSDCheadersince 10-14
GET/x402/twitterTweets from X (Twitter) for one account or a search query. {"mode":"profile","query":"nasa"} returns that account's tweets, mode search takes keywords, and limit is 1-20. Each tweet has text, createdAt, url, lang, likeCount, retweetCount, replyCount, quoteCount, viewCount, isReply, isRetweet and an author object with userName, name, followers and isBlueVerified. No X developer account needed; pay per call in USDC.$0.014Base+PolUSDCheadersince 10-14
GET/x402/unblockUnblocker for AI agents: send {url} and get the page back as clean Markdown, with title, description, language, final URL and HTTP status. Gets through Cloudflare and other common bot protection and can render JavaScript-heavy pages. Set format to html or text for those instead. A page that can't be fetched (blocked, error status or empty) is not charged. No API key, proxy or account: pay per call in USDC over x402 (Base, Polygon) or MPP (Base).$0.01955Base+PolUSDCheadersince 10-14
GET/x402/web-searchWeb search with page content for AI agents: send keywords and get the top results with each page read as clean Markdown, in one call: title, URL, a short description and the page's text. Up to 5 results, each page cut at 20,000 characters. Pages that cannot be fetched are dropped and refunded. Pay per call in stablecoins.$0.022545Base+PolUSDCheadersince 10-14
GET/x402/x-repliesReplies to a post on X (Twitter) for AI agents: send the post's URL and get the replies as JSON: text, time, likes, reposts, replies, views and the author's handle. Up to 50 replies per call. Pay per call in stablecoins; replies you paid for but did not get are refunded.$0.0132Base+PolUSDCheadersince 10-14
GET/x402/youtubeYouTube video search by keyword, or the videos of one channel. Mode search takes keywords; mode profile takes a channel handle without the @. limit is 1-20 regular videos, no Shorts or live streams. Per video you get a normalized object: title, description, views, likes, comments_count, duration_seconds, published_at, thumbnail, url, channel_name, channel_url, channel_id, subscribers.$0.032Base+Pol+SolUSDCheadersince 10-14
GET/x402/youtube-commentsYouTube comments API for AI agents: send the URL of a video and get its comments as JSON: text, time, likes and reply count. Up to 100 comments per call. The commenters' names and handles are not returned. Pay per call in stablecoins; comments you paid for but did not get are refunded.$0.018Base+PolUSDCheadersince 10-14
GET/x402/youtube-transcriptYouTube transcript API for AI agents: send a video URL or 11-character id and get its published subtitles as timed JSON segments, plain text, SRT or WebVTT, with title, channel, duration, views and publish date. Choose one of ten subtitle languages or any. No speech-to-text. A video without subtitles in that language is not charged.$0.032Base+PolUSDCheadersince 10-14

Payment evidence

402 payload captured at . Check evidence JSON · Measurement methodology.

First of 22 payloads captured by the monitor.

135 lines, scroll inside

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "37000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "37000",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "37000",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/amazon",
    "mimeType": "application/json",
    "description": "Keyword search on Amazon.com (US store): up to 20 products per call, each filled in from its product page. Body: {query, limit}. The normalized object per product: asin, title, brand, price, list_price, currency, rating, reviews_count, in_stock, seller, image, url, description and the features bullet list. Good for price checks and product comparison.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 5,
            "query": "wireless keyboard"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "url": "https://…",
            "asin": "B079JLY5…",
            "brand": "Logitech",
            "image": "https://…",
            "price": 26.99,
            "title": "Logitech…",
            "rating": 4.5,
            "seller": "Amazon.c…",
            "currency": "USD",
            "features": [],
            "in_stock": true,
            "list_price": 29.99,
            "description": "Logitech…",
            "reviews_count": 110966
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}
Other captured 402 responses (21)

Captured payload 2 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "17400",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "17400",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/amazon-reviews",
    "mimeType": "application/json",
    "description": "Amazon product reviews API for AI agents: send an ASIN or an Amazon product URL and get up to 50 customer reviews as JSON: rating, title, text, date, verified-purchase flag and helpful votes. Sort by recent or helpful, filter by stars, and pick the marketplace (US, UK, DE, FR, IT, ES, CA, JP). Reviewer names and photos are not returned. A product with no reviews is not charged.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 10,
            "product": "B079JLY5M5"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "asin": "B079JLY5…",
            "date": "October…",
            "text": "Simple a…",
            "vine": false,
            "title": "Basic, c…",
            "rating": 5,
            "country": "the Unit…",
            "imageCount": 0,
            "helpfulCount": 0,
            "verifiedPurchase": true
          }
        }
      },
      "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": [
                  "product"
                ],
                "properties": {
                  "sort": {
                    "enum": [
                      "recent",
                      "helpful"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 50,
                    "minimum": 1
                  },
                  "stars": {
                    "enum": [
                      "all",
                      "5",
                      "4",
                      "3",
                      "2",
                      "1",
                      "positive",
                      "critical"
                    ],
                    "type": "string"
                  },
                  "country": {
                    "enum": [
                      "us",
                      "uk",
                      "de",
                      "fr",
                      "it",
                      "es",
                      "ca",
                      "jp"
                    ],
                    "type": "string"
                  },
                  "product": {
                    "type": "string",
                    "maxLength": 2048
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 3 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "32200",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "32200",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "32200",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/google-maps",
    "mimeType": "application/json",
    "description": "Google Maps places for a search term, optionally narrowed to an area: {\"query\":\"coffee shops\",\"location\":\"Prague\",\"limit\":5}. Up to 20 places per call. Each place comes back with title, categoryName, address, phone, website, totalScore (rating), reviewsCount, location (lat, lng), openingHours, price, placeId and its Maps url. Common uses are local lead lists, store and competitor mapping, and checking a business's hours or phone number.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 5,
            "query": "coffee shops",
            "location": "Prague"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "url": "https://…",
            "city": "Prague 7…",
            "phone": "",
            "price": null,
            "title": "The Mine…",
            "address": "Pod Dráh…",
            "placeId": "ChIJ5f89…",
            "website": "https://…",
            "location": {},
            "totalScore": 4.8,
            "categoryName": "Coffee s…",
            "openingHours": [],
            "reviewsCount": 183
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "location": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 4 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "15050",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "15050",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "15050",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/google-maps-reviews",
    "mimeType": "application/json",
    "description": "Google Maps reviews API for AI agents: send a place_id or a Google Maps place URL and get up to 50 reviews as JSON: stars, text and its translation, date, likes, the owner's reply, plus the place's name, address and rating. Sort by newest, relevant, highest or lowest. Reviewer names, profiles and photos are not returned. A place with no reviews is not charged; reviews you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 10,
            "place": "ChIJN1t_tDeuEmsRUsoyG83frY4"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "text": "there is…",
            "place": {},
            "stars": 5,
            "origin": "Google",
            "context": {},
            "reviewId": "Ci9DQUlR…",
            "imageCount": 0,
            "likesCount": 0,
            "publishedAt": "2026-10-…",
            "publishedAgo": "3 hours…",
            "ownerResponse": null,
            "detailedRating": {},
            "textTranslated": null,
            "originalLanguage": "en",
            "translatedLanguage": null
          }
        }
      },
      "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": [
                  "place"
                ],
                "properties": {
                  "sort": {
                    "enum": [
                      "newest",
                      "relevant",
                      "highest",
                      "lowest"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 50,
                    "minimum": 1
                  },
                  "place": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "language": {
                    "type": "string"
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 5 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "23900",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "23900",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "23900",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/google-news",
    "mimeType": "application/json",
    "description": "Google News search API for AI agents: send a keyword or phrase and get up to 30 current news articles as JSON: headline, publisher, publish time, a short description and the article's link. Choose the language and country edition. Articles you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 10,
            "query": "openai"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "url": "https://news…",
            "title": "Q3 2026 Lith…",
            "source": "Benchmark Mi…",
            "description": "Q3 2026 Lith…",
            "publishedAt": "2026-10-02T1…"
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "limit": {
                    "type": "integer",
                    "maximum": 30,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "country": {
                    "type": "string",
                    "pattern": "^[A-Za-z]{2}$"
                  },
                  "language": {
                    "type": "string",
                    "pattern": "^[a-z]{2}$"
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 6 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "22850",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "22850",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "22850",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/google-search",
    "mimeType": "application/json",
    "description": "Google Search results (SERP) for a query, as JSON. Each record is one results page with organicResults (position, title, url, displayedUrl, description), paidResults, relatedQueries, peopleAlsoAsk and searchQuery metadata. Body: {query, limit}. limit (1-20) is rounded up to whole pages of about 10 results, so 1-10 returns one page and 11-20 returns two. Useful for rank checks, source discovery and grounding answers in search results.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 5,
            "query": "best CRM tools"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "paidResults": [],
            "searchQuery": {},
            "peopleAlsoAsk": [],
            "organicResults": [],
            "relatedQueries": []
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 7 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "14100",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "14100",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "14100",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/indeed-jobs",
    "mimeType": "application/json",
    "description": "Indeed jobs search API for AI agents: send a job title and an optional location and country and get up to 50 job listings as JSON: title, employer, location, posting date, job types, benefits, salary range when listed and the listing's description. Filter by how recently a job was posted; 60 countries. Jobs you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 10,
            "query": "nurse",
            "country": "us",
            "location": "Austin, TX"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "61591d90…",
            "url": "https://…",
            "title": "RN/LVN C…",
            "salary": {},
            "expired": false,
            "applyUrl": "https://…",
            "benefits": [],
            "employer": {},
            "jobTypes": [],
            "language": "en",
            "location": {},
            "description": "Connect…",
            "publishedAt": "2026-10-…",
            "descriptionTruncated": false
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "limit": {
                    "type": "integer",
                    "maximum": 50,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "posted": {
                    "enum": [
                      "14d",
                      "24h",
                      "3d",
                      "week"
                    ],
                    "type": "string"
                  },
                  "country": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 8 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "25500",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "25500",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "25500",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/instagram",
    "mimeType": "application/json",
    "description": "Instagram posts as JSON. Mode profile returns an account's posts, hashtag returns posts under a tag, and search or user take a keyword and scrape the best-matching hashtag or account. Send {mode, query, limit} with limit 1-20. Each post has a normalized object: caption, likes, comments_count, views, posted_at, media_type, media_url, hashtags, author, author_name, shortcode, url. No Instagram login or API key needed.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "mode": "profile",
            "limit": 5,
            "query": "natgeo"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "39831183…",
            "url": "https://…",
            "likes": 77530,
            "views": 3274931,
            "author": "natgeo",
            "caption": "Presente…",
            "hashtags": [],
            "media_url": "https://…",
            "posted_at": "2026-09-…",
            "shortcode": "DdG4RIxI…",
            "media_type": "video",
            "author_name": "National…",
            "comments_count": 496
          }
        }
      },
      "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": [
                  "mode",
                  "query"
                ],
                "properties": {
                  "mode": {
                    "enum": [
                      "profile",
                      "hashtag",
                      "search",
                      "user"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 9 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "19800",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "19800",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/instagram-comments",
    "mimeType": "application/json",
    "description": "Instagram comments API for AI agents: send the URL of a post or reel and get its comments as JSON: text, time, likes and reply count. Up to 100 comments per call. The commenters' names and handles are not returned. Pay per call in stablecoins; comments you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "url": "https://www.instagram.com/p/DdG4RIxIPyf/",
            "limit": 20
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "18173697…",
            "text": "I love t…",
            "pinned": null,
            "byOwner": null,
            "isReply": false,
            "postedAt": "2026-10-…",
            "likeCount": 0,
            "ownerLiked": null,
            "replyCount": null,
            "textTruncated": false
          }
        }
      },
      "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",
                    "maxLength": 300
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 100,
                    "minimum": 1
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 10 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "37000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "37000",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "37000",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/linkedin",
    "mimeType": "application/json",
    "description": "Look up one public LinkedIn profile per call. Pass {query} as a username (jane-example), a profile URL or a URN; there is no limit field. The normalized object holds name, first_name, last_name, headline, about, location, country_code, current_company, followers, connections, avatar, plus experience (title, company, start_year, end_year, is_current) and education (school, degree, field, years). Email addresses are not returned.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "query": "jane-example"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "url": "https://…",
            "name": "Jane Exa…",
            "about": "Data eng…",
            "avatar": null,
            "headline": "Senior D…",
            "location": "Austin,…",
            "username": "jane-exa…",
            "education": [],
            "followers": 1200,
            "last_name": "Example",
            "experience": [],
            "first_name": "Jane",
            "connections": 500,
            "country_code": "US",
            "current_company": "Example…"
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 11 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "15000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "15000",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/linkedin-jobs",
    "mimeType": "application/json",
    "description": "LinkedIn jobs search API for AI agents: send a job title or keywords and an optional location and get up to 50 public job listings as JSON: title, company, location, posting date, employment type, seniority, salary when listed, the listing's URL and its description. Filter by how recently a job was posted. Recruiter names are not returned. Jobs you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 10,
            "query": "data engineer",
            "location": "Prague"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "44656591…",
            "url": "https://…",
            "title": "Databric…",
            "salary": null,
            "sector": null,
            "applyUrl": null,
            "location": "Prague,…",
            "workType": "IT Servi…",
            "applyType": "EXTERNAL",
            "applicants": "39 appli…",
            "companyUrl": "https://…",
            "postedDate": "2026-09-…",
            "companyName": "Capgemin…",
            "description": "Insights…",
            "contractType": "Full-tim…",
            "postedTimeAgo": "3 weeks…",
            "experienceLevel": "Mid-Seni…",
            "descriptionTruncated": false
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "limit": {
                    "type": "integer",
                    "maximum": 50,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  },
                  "posted": {
                    "enum": [
                      "24h",
                      "month",
                      "week"
                    ],
                    "type": "string"
                  },
                  "location": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 12 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "29500",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "29500",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/reddit",
    "mimeType": "application/json",
    "description": "Search Reddit or read a subreddit. Use mode hashtag with a subreddit name (no r/), profile with a username, or search with keywords, plus limit 1-20. Every record is a post with kind, id, url, title, body, author, subreddit, upvotes, comments_count, created_at, members and source; at most limit posts come back. Comments, profile and subreddit records are not returned. upvotes and comments_count can be null. Send raw true for the full original records.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "mode": "hashtag",
            "limit": 5,
            "query": "programming"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "t3_1wro6…",
            "url": "https://…",
            "body": "Do you u…",
            "kind": "post",
            "title": "What do…",
            "author": "example_…",
            "source": "apify",
            "members": 378852,
            "upvotes": 49,
            "subreddit": "golang",
            "created_at": "2026-09-…",
            "comments_count": 44
          }
        }
      },
      "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": [
                  "mode",
                  "query"
                ],
                "properties": {
                  "raw": {
                    "type": "boolean"
                  },
                  "mode": {
                    "enum": [
                      "profile",
                      "hashtag",
                      "search"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 13 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "18970",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "18970",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/screenshot",
    "mimeType": "application/json",
    "description": "Screenshot API for AI agents: send {url} and get a JPEG, PNG, WebP or PDF of the page as base64 in JSON, with final URL, byte size and pixel size. Pick a desktop, mobile or tablet viewport, full page, dark mode, a delay or one element by CSS selector. It shows what a normal browser sees and does not get past bot protection (use unblock for those pages' text). A page that can't be captured, or renders blank, is not charged.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "url": "https://example.com/",
            "format": "jpeg"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "bytes": 66615,
            "width": 1920,
            "format": "jpeg",
            "height": 1080,
            "finalUrl": "https://…",
            "fullPage": false,
            "capturedAt": "2026-10-…",
            "contentType": "image/jp…",
            "imageBase64": "/9j/4AAQ…"
          }
        }
      },
      "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",
                    "maxLength": 2048
                  },
                  "width": {
                    "type": "integer",
                    "maximum": 1920,
                    "minimum": 320
                  },
                  "device": {
                    "enum": [
                      "desktop",
                      "desktop_hd",
                      "mobile",
                      "tablet"
                    ],
                    "type": "string"
                  },
                  "format": {
                    "enum": [
                      "jpeg",
                      "png",
                      "webp",
                      "pdf"
                    ],
                    "type": "string"
                  },
                  "height": {
                    "type": "integer",
                    "maximum": 1200,
                    "minimum": 240
                  },
                  "delayMs": {
                    "type": "integer",
                    "maximum": 5000,
                    "minimum": 0
                  },
                  "fullPage": {
                    "type": "boolean"
                  },
                  "selector": {
                    "type": "string",
                    "maxLength": 200
                  },
                  "colorScheme": {
                    "enum": [
                      "light",
                      "dark"
                    ],
                    "type": "string"
                  },
                  "waitForSelector": {
                    "type": "string",
                    "maxLength": 200
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 14 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "31500",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "31500",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "31500",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/tiktok",
    "mimeType": "application/json",
    "description": "Get TikTok videos for a username, a hashtag or a search keyword. The body is {mode: profile|hashtag|search, query, limit} and limit runs 1-20. Each video has id, url, text, created_at, author, plays, likes, comments, shares, saves, duration_s, hashtags and music; no expiring media links. raw true returns the original records. A leading @ or # in the query is stripped.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "mode": "profile",
            "limit": 5,
            "query": "nasa"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "76650757…",
            "url": "https://…",
            "text": "Somethin…",
            "is_ad": false,
            "likes": 94300,
            "music": {},
            "plays": 1400000,
            "saves": 6979,
            "author": {},
            "shares": 3126,
            "comments": 2853,
            "hashtags": [],
            "created_at": "2026-07-…",
            "duration_s": 25,
            "is_slideshow": false
          }
        }
      },
      "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": [
                  "mode",
                  "query"
                ],
                "properties": {
                  "raw": {
                    "type": "boolean"
                  },
                  "mode": {
                    "enum": [
                      "profile",
                      "hashtag",
                      "search"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 15 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "15750",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "15750",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/tiktok-comments",
    "mimeType": "application/json",
    "description": "TikTok comments API for AI agents: send the URL of a video and get its comments as JSON: text, time, likes and reply count. Up to 100 comments per call. The commenters' names and handles are not returned. Pay per call in stablecoins; comments you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "url": "https://www.tiktok.com/@nasa/video/7665075736742530317",
            "limit": 20
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "76652633…",
            "text": "Howdy pa…",
            "pinned": false,
            "byOwner": null,
            "isReply": false,
            "postedAt": "2026-07-…",
            "likeCount": 7597,
            "ownerLiked": true,
            "replyCount": 68,
            "textTruncated": false
          }
        }
      },
      "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",
                    "maxLength": 300
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 100,
                    "minimum": 1
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 16 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "14000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "14000",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/twitter",
    "mimeType": "application/json",
    "description": "Tweets from X (Twitter) for one account or a search query. {\"mode\":\"profile\",\"query\":\"nasa\"} returns that account's tweets, mode search takes keywords, and limit is 1-20. Each tweet has text, createdAt, url, lang, likeCount, retweetCount, replyCount, quoteCount, viewCount, isReply, isRetweet and an author object with userName, name, followers and isBlueVerified. No X developer account needed; pay per call in USDC.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "mode": "profile",
            "limit": 5,
            "query": "elonmusk"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "21046956…",
            "url": "https://…",
            "lang": "en",
            "text": "On Monda…",
            "author": {},
            "isReply": false,
            "createdAt": "Mon Sep…",
            "isRetweet": false,
            "likeCount": 1210,
            "viewCount": 352841,
            "quoteCount": 11,
            "replyCount": 59,
            "retweetCount": 141,
            "bookmarkCount": 54
          }
        }
      },
      "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": [
                  "mode",
                  "query"
                ],
                "properties": {
                  "mode": {
                    "enum": [
                      "profile",
                      "search"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 17 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "19550",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "19550",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/unblock",
    "mimeType": "application/json",
    "description": "Unblocker for AI agents: send {url} and get the page back as clean Markdown, with title, description, language, final URL and HTTP status. Gets through Cloudflare and other common bot protection and can render JavaScript-heavy pages. Set format to html or text for those instead. A page that can't be fetched (blocked, error status or empty) is not charged. No API key, proxy or account: pay per call in USDC over x402 (Base, Polygon) or MPP (Base).",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "url": "https://example.com/",
            "format": "markdown"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "url": "https://…",
            "title": "Example…",
            "format": "markdown",
            "jsonLd": null,
            "content": "This dom…",
            "finalUrl": "https://…",
            "language": "en",
            "fetchedAt": "2026-10-…",
            "truncated": false,
            "statusCode": 200,
            "contentType": "text/htm…",
            "description": null,
            "canonicalUrl": "https://…",
            "contentBytes": 156
          }
        }
      },
      "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",
                    "maxLength": 2048
                  },
                  "format": {
                    "enum": [
                      "markdown",
                      "html",
                      "text"
                    ],
                    "type": "string"
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 18 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "22545",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "22545",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/web-search",
    "mimeType": "application/json",
    "description": "Web search with page content for AI agents: send keywords and get the top results with each page read as clean Markdown, in one call: title, URL, a short description and the page's text. Up to 5 results, each page cut at 20,000 characters. Pages that cannot be fetched are dropped and refunded. Pay per call in stablecoins.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "limit": 3,
            "query": "lithium prices"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "url": "https://www.…",
            "title": "Daily Metal…",
            "content": "Daily Metal…",
            "language": "en",
            "description": "Daily Metal…",
            "contentTruncated": false
          }
        }
      },
      "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": [
                  "query"
                ],
                "properties": {
                  "limit": {
                    "type": "integer",
                    "maximum": 5,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 19 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "13200",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "13200",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/x-replies",
    "mimeType": "application/json",
    "description": "Replies to a post on X (Twitter) for AI agents: send the post's URL and get the replies as JSON: text, time, likes, reposts, replies, views and the author's handle. Up to 50 replies per call. Pay per call in stablecoins; replies you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "url": "https://x.com/NASA/status/2106751099063484493",
            "limit": 10
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "21067529…",
            "url": "https://…",
            "lang": "en",
            "text": "imagine…",
            "author": {},
            "createdAt": "Sun Oct…",
            "likeCount": 5,
            "viewCount": 162,
            "quoteCount": 0,
            "replyCount": 0,
            "inReplyToId": "21067510…",
            "repostCount": 0,
            "textTruncated": false
          }
        }
      },
      "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",
                    "maxLength": 300
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 50,
                    "minimum": 1
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 20 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "32000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "extra": {
        "decimals": 6,
        "feePayer": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q"
      },
      "payTo": "7wboEQdg5fVrh88sAzPPLhmfqmnMNr82BW7KHYBEZo8q",
      "amount": "32000",
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "32000",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/youtube",
    "mimeType": "application/json",
    "description": "YouTube video search by keyword, or the videos of one channel. Mode search takes keywords; mode profile takes a channel handle without the @. limit is 1-20 regular videos, no Shorts or live streams. Per video you get a normalized object: title, description, views, likes, comments_count, duration_seconds, published_at, thumbnail, url, channel_name, channel_url, channel_id, subscribers.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "mode": "search",
            "limit": 5,
            "query": "web scraping tutorials"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "QhD015WU…",
            "url": "https://…",
            "likes": 13000,
            "title": "Beginner…",
            "views": 483801,
            "thumbnail": "https://…",
            "channel_id": "UCZDA1kA…",
            "channel_url": "https://…",
            "description": "The web…",
            "subscribers": 627000,
            "channel_name": "Tinkernu…",
            "published_at": "2021-11-…",
            "comments_count": 232,
            "duration_seconds": 456
          }
        }
      },
      "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": [
                  "mode",
                  "query"
                ],
                "properties": {
                  "mode": {
                    "enum": [
                      "profile",
                      "search"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 20,
                    "minimum": 1
                  },
                  "query": {
                    "type": "string",
                    "maxLength": 500
                  }
                },
                "additionalProperties": true
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 21 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result, \"limit\" scales it",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "18000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "18000",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/youtube-comments",
    "mimeType": "application/json",
    "description": "YouTube comments API for AI agents: send the URL of a video and get its comments as JSON: text, time, likes and reply count. Up to 100 comments per call. The commenters' names and handles are not returned. Pay per call in stablecoins; comments you paid for but did not get are refunded.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
            "limit": 20
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "id": "Ugzge340…",
            "text": "can conf…",
            "pinned": null,
            "byOwner": false,
            "isReply": false,
            "postedAt": "1 year a…",
            "likeCount": 323000,
            "ownerLiked": true,
            "replyCount": 962,
            "textTruncated": false
          }
        }
      },
      "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",
                    "maxLength": 300
                  },
                  "sort": {
                    "enum": [
                      "top",
                      "newest"
                    ],
                    "type": "string"
                  },
                  "limit": {
                    "type": "integer",
                    "maximum": 100,
                    "minimum": 1
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Captured payload 22 of 22

{
  "error": "send a JSON body (shape: extensions.bazaar.info.input); quoted for 1 result",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0xbBa594F5549392DF7A8182049291b605948F5F86",
      "amount": "32000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 120
    },
    {
      "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "payTo": "0x5893209222F2C959Eb5D4C6CD2828b06845e57BE",
      "amount": "32000",
      "scheme": "exact",
      "network": "eip155:137",
      "maxTimeoutSeconds": 120
    }
  ],
  "resource": {
    "url": "https://agdata.shveik.dev/x402/youtube-transcript",
    "mimeType": "application/json",
    "description": "YouTube transcript API for AI agents: send a video URL or 11-character id and get its published subtitles as timed JSON segments, plain text, SRT or WebVTT, with title, channel, duration, views and publish date. Choose one of ten subtitle languages or any. No speech-to-text. A video without subtitles in that language is not charged.",
    "serviceName": "agdata"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "lang": "en",
            "video": "dQw4w9WgXcQ",
            "format": "json"
          },
          "type": "http",
          "method": "POST",
          "bodyType": "json"
        },
        "output": {
          "type": "json",
          "example": {
            "url": "https://…",
            "title": "Rick Ast…",
            "format": "json",
            "videoId": "dQw4w9Wg…",
            "language": "en",
            "truncated": false,
            "viewCount": 1822672170,
            "channelUrl": "https://…",
            "transcript": [],
            "channelName": "Rick Ast…",
            "publishedAt": "2009-10-…",
            "segmentCount": 61,
            "subtitleType": "user_gen…",
            "durationSeconds": 213,
            "availableLanguages": []
          }
        }
      },
      "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": [
                  "video"
                ],
                "properties": {
                  "lang": {
                    "enum": [
                      "any",
                      "en",
                      "de",
                      "es",
                      "fr",
                      "it",
                      "ja",
                      "ko",
                      "nl",
                      "pt",
                      "ru"
                    ],
                    "type": "string"
                  },
                  "video": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "format": {
                    "enum": [
                      "json",
                      "text",
                      "srt",
                      "vtt"
                    ],
                    "type": "string"
                  }
                },
                "additionalProperties": false
              },
              "type": {
                "const": "http"
              },
              "method": {
                "enum": [
                  "POST"
                ],
                "type": "string"
              },
              "bodyType": {
                "enum": [
                  "json"
                ],
                "type": "string"
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Can I trust it score from our own monitoring

score from our own monitoring

85/100 Solid

#150 of 389 in Data. Bands: strong 93+, solid 75+, mixed 55+, weak below 55.

Reliability
100% uptime since 10-14
Compliance
A 14/14 checks pass
Price
$0.0132 to $0.037 p73 in Data
Risk
clean no risk flag
Traction
$0.00 30d 0 buyers
14/14 compliance checks
  • 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

402 terms unchanged since 2026-10-14. Last up 2026-10-14.

── Site signals

  • homepage reachable
  • openapi doc
  • pricing page
  • llms.txt
  • robots.txt
  • terms page
How the score works

What the score read on this service: status online, 100% uptime, latest daily rollup (no 30d window yet), 49ms response p95, x402 compliance 14 of 14, $0.0132 price against the category, on-chain traction measured. Each of those is measured, and each is published in full below.

The score comes from our own monitoring, never from reviews, operator claims, or a language model: reliability, x402 compliance, price against the category, a deterministic risk flag, and a small on-chain traction term, weighted by ranking generation 3. It is not placement anyone can buy: the paid verify tier is reported beside it and is not one of its inputs. Every component below stays published and read-only.

Bands on the 0 to 100 measured score: strong at 93 and above, solid from 75, mixed from 55, weak below 55. Price and speed are scored against the whole category field, every listing in it that carries no danger flag, the scored service included, so the score places a service in its own field.

It is a score inside Data, and only there: price and speed are scored against the whole category field, every listing in it that carries no danger flag, the scored service included, which here means 389 listings, this one among them: the same 389 the position above is counted against. When the two differ, the field is the wider one, because a listing we have measured too little of to rank still sits in the field the price and the speed are normalized over. The same service in a different field would read differently. The same engine answers GET /api/v1/best, and asked for a different pool (the whole directory, or another filter) it returns a different number for this service under this same ranking generation. Neither is more correct: they answer different questions, and the methodology states which is which.

Traction is a conservative undercount.

All measured facts

What it does

Unblocking and fresh web data for AI agents: any URL as Markdown, screenshots, YouTube transcripts and comments, Google Maps and Amazon reviews, LinkedIn and Indeed jobs, Google News, web search, X replies. Pay per call in stablecoins with x402 or MPP; remote MCP server at /mcp.

agdata is a listed x402 Data API. Captured payment terms name Base, Polygon, Solana. Monitoring and settlement figures below describe the observations available to this directory; an unpaid HTTP 402 check does not prove that a paid call will deliver.

Assessment computed at . Latest service check observed at . Service data JSON · Measurement methodology.

Page rendered at . This response time is separate from the observation and computation times attached to each measurement.

Latest endpoint observation: . Latest price capture: . Prices are recorded quotes, not a promise of availability. Token assets and payment terms are listed separately. Endpoint data JSON · Price history JSON · Measurement methodology.

Assessment computed at . Uptime uses the stated daily-rollup window; response times are in milliseconds, compliance is passed/evaluated checks, and traction is a measured settlement floor. The comparison score is out of 100 within this category. Assessment JSON · Measurement methodology.

Observed daily coverage: 2026-09-15 to 2026-10-14 UTC. Daily monitoring and settlement rollups do not expose their computation time; a bucket date is not an update timestamp. Uptime and response JSON · Volume JSON · Buyers JSON · Measurement methodology.

Ranked from the measured category pool, refreshed at most once a minute. The comparison has no persisted computation timestamp; the assessment time above belongs to this service only. Ranking API documentation · Ranking methodology.

x402 List home · Services · Data

uptime · latest daily rollup
-
uptime 7d
-
uptime 30d
-
uptime 90d
-
response p95
49ms
avg response
49ms
total checks
1

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

price (min)
$0.0132
price (max)
$0.037
category percentile (min)
p73 in Data
category percentile (max)
p50 in Data
endpoints / prices
22 / 20
model
tiered
stability
0%

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
846d
registrar
Namecheap Inc.
hosting
custom
domain created
2024-06-19

Identity facts, not a risk score.

assessment volume 30d
$0.00
exact assessment volume 30d (USD)
0
assessment recorded at (UTC)
2026-10-14T13:53:03.507Z
buyers 30d
0
settlements 30d
0
measured since
--- (start of our harvest window)
last settlement
---
top buyer share
-
top 3 buyers share
-
concentrated volume
no
trend 7d vs 30d
-
networks
eip155:137, eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d
volume all-time
$0
settlements all-time
0
median settlement 30d
-
max settlement 30d
-

Assessment volume uses the latest 30d assessment. Over time sums daily address snapshots, rounded to cents and refreshed separately. The two sources can differ in timing, precision and shared-address attribution. Amounts use cents for comparison; known sub-cent values keep up to 12 significant digits. The exact stored assessment value is shown above.

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

Top buyer share lowers the on-chain traction part of the ranking score behind this page's verdict and /best, by up to half when one address holds all 30d volume. The Recommended and Highest volume sorts of the services list do not use it; they use the Concentrated volume rule instead.

member since
2026-10-14
Recent checks
Latest 13 unpaid HTTP checks, newest first; response times in milliseconds, observation times in UTC
Checked at (UTC)StatusHTTPResponseEndpoints
Online40252ms22
Online40240ms22
Online402103ms22
Online40249ms22
Online40242ms22
Online40279ms22
Online40241ms22
Online40253ms22
Online40272ms22
Online40235ms22
Online40244ms22
Online40297ms22
Online40249ms22

Changes0 in 30d

No changes recorded in the last 30 days.

all changes

Over time

On-chain volume daily snapshots, USD 30d: $0.00, peak $46.80 on 10-05
volume no data in the payload
Distinct buyers per dayDistinct buyers per day
Uptime no completed-day data
Volume 30d
$0.00
Uptime
no completed-day data
Daily on-chain settlement volume in US dollars, 2026-09-15 to 2026-10-14; highest day $46.80 on 10-05; 1 day has no data in the payload; distinct buyers per day
More charts
Response time daily average, ms min 58ms, avg 58ms, max 58ms

09-15 to 10-14* UTC

Each series spans only the dates it has data for. Every series is also served as JSON at /api/v1/services/agdata/price, /scores, /volume and /buyers.

Values

* today so far, partial (UTC).

The uptime summary counts completed UTC days only. The strip, readouts and table retain today's partial reading.

Daily snapshot total, 30d: $54.15, peak $46.80 on 10-05. The visible 30d total in Traction comes from the latest assessment. These sources can differ in their window, refresh time, cent rounding and shared-address attribution.

Daily address snapshots: 2026-09-15 to 2026-10-14 UTC; * today so far, partial (UTC). Daily snapshots store cents. A recorded $0.00 with settlements cannot distinguish exact zero from volume rounded away. Lost precision is unavailable here.

Settlement volume uses the stored USD valuation of tracked payments; it is distinct from token quantities. USD-pegged assets are valued at 1 USD per token in these rollups. The measured settlement floor does not cover all payments to this service.

Assessment history last recorded at . Each UTC day uses its last recorded run; missing readings stay unmeasured. Assessment history JSON · Measurement methodology.

Daily values, 2026-09-29 to 2026-10-14: address settlement volume in USD, distinct buyer and settlement counts, uptime percent, average response milliseconds, compliance passed/total, price percentile 0-100, site signals out of 6; UTC dates
DayVolumeBuyersSettlementsUptimeResponseCompliancePrice percentileSite signals
2026-09-29$0.22113no datano datano datano datano data
2026-09-30$1.23220no datano datano datano datano data
2026-10-01$0.0311no datano datano datano datano data
2026-10-02$0.6212no datano datano datano datano data
2026-10-03$0.64127no datano datano datano datano data
2026-10-04$0.2016no datano datano datano datano data
2026-10-05$46.80267no datano datano datano datano data
2026-10-06$0.66425no datano datano datano datano data
2026-10-07$0.51316no datano datano datano datano data
2026-10-08$0.57319no datano datano datano datano data
2026-10-09$0.88326no datano datano datano datano data
2026-10-10$0.38313no datano datano datano datano data
2026-10-11no datano datano datano datano datano datano datano data
2026-10-12$0.74425no datano datano datano datano data
2026-10-13$0.58223no datano datano datano datano data
2026-10-14*$0.0923100%58.15ms14/14p736/6

Alternatives in Data

SniperX•x402 strong 97/100 99.9% up 30d $475.96 30d
claw402 strong 96/100 100% up 30d $1.1k 30d
glim.sh strong 94/100 100% up 30d $26.53 30d
cn402 strong 93/100 100% up 30d $39.74 30d
x402node strong 93/100 100% up 30d $39.73 30d

5 of 388 other ranked services in Data, ordered by the same measured score.

see the whole category

Own this service?

Keep this listing accurate. Ownership is proven with a domain check and every change is reviewed by hand.

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)
Embed a badge

HTML

<a href="https://x402-list.com/services/agdata?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/agdata.svg" alt="agdata listed on x402-list" height="28">
</a>

Markdown

[![agdata on x402-list](https://x402-list.com/badge/agdata.svg)](https://x402-list.com/services/agdata?utm_source=badge&utm_medium=referral&utm_campaign=embed)

HTML, live uptime variant

<a href="https://x402-list.com/services/agdata?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/agdata.svg?data=uptime" alt="agdata uptime on x402-list" height="28">
</a>
Delisting

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