grokzilla.shop / try

{ try it }

"skills": 33, // pay-per-call, no account, no API key
"protocol": "x402 v2 · scheme exact",
"network": "eip155:8453", // Base mainnet
"this_page_pays": false // "Send unpaid request" only shows the 402 challenge. Paying stays with your own wallet or agent.
optional · prompt only The Base address your agent pays from. It is only written into the copyable agent prompt so your agent knows which wallet to use. It is never sent to the server and nothing is signed here.

← all 33 skills

"news-brief": { News Brief with Sources $0.0101 Topic in, deduplicated story clusters out: headline, every outlet URL and first-seen time, from GDELT and publisher RSS. Headlines and links only, no article text. Not charged when nothing matches or sources fail.
"method": "POST", "content_type": "application/json",
"price_usd": 0.0101, // 10100 atomic USDC (6 decimals)
"network": "eip155:8453", // Base mainnet
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913", // USDC
"payTo": "0xc22f9CAEBAc37fE72D5142f35f21f6696Ea9Ef69",
"docs": "/docs/news-brief",
"you_provide": { // JSON body fields
required string A few words, e.g. "stablecoin regulation". Headlines must contain the words. Required · string min length 2 · max length 100 Example: "bitcoin"
optional string "24h" (default), "3d" or "7d". Optional · string one of "24h", "3d", "7d" · default "24h" Example: "3d"
optional integer How many story clusters to return (1-20, default 10). Optional · integer min 1 · max 20 · default 10 Example: 2
optional string Value for `request_id`. Optional · string min length 1 · max length 64
},
"request_body": // live, from your inputs
{
  "topic": "bitcoin",
  "timespan": "3d",
  "max_clusters": 2
}
"you_get": { // HTTP 200 application/json after payment
"output_schema":
{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "skill": {
      "type": "string"
    },
    "service": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "summary": {
      "type": "string"
    },
    "data": {
      "type": "object",
      "properties": {
        "topic": {
          "type": "string"
        },
        "terms": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "timespan": {
          "type": "string"
        },
        "clusters": {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        "cluster_count": {
          "type": "integer"
        },
        "headline_count": {
          "type": "integer"
        },
        "searched": {
          "type": "object",
          "properties": {
            "gdelt": {
              "type": "boolean"
            },
            "feeds_ok": {
              "type": "integer"
            },
            "feeds_total": {
              "type": "integer"
            }
          }
        }
      }
    },
    "confidence": {
      "type": "number"
    },
    "sources": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "fetched_at": {
            "type": "string"
          }
        }
      }
    },
    "generated_at": {
      "type": "string"
    },
    "data_as_of": {
      "type": "string"
    },
    "charged": {
      "type": "boolean"
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "next": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "ok",
    "skill"
  ]
}
"example":
{
  "ok": true,
  "skill": "news_brief",
  "service": "news_brief",
  "version": "1.0.0",
  "summary": "2 stories on 'bitcoin'; top: Don’t Let a Crypto Inheritance Get Stuck on the Blockchain",
  "data": {
    "topic": "bitcoin",
    "terms": [
      "bitcoin"
    ],
    "timespan": "3d",
    "clusters": [
      {
        "headline": "Don’t Let a Crypto Inheritance Get Stuck on the Blockchain",
        "first_seen": "2026-10-17T10:30:00Z",
        "latest": "2026-10-17T10:30:00Z",
        "outlet_count": 1,
        "outlets": [
          {
            "outlet": "Wired",
            "headline": "Don’t Let a Crypto Inheritance Get Stuck on the Blockchain",
            "url": "https://www.wired.com/story/crypto-inheritance-how-to/",
            "seen_at": "2026-10-17T10:30:00Z",
            "via": "rss"
          }
        ]
      },
      {
        "headline": "‘Wow, it’s a real discovery’: Claude cracks a 25-year NSA number mystery",
        "first_seen": "2026-10-17T06:39:48Z",
        "latest": "2026-10-17T06:39:48Z",
        "outlet_count": 1,
        "outlets": [
          {
            "outlet": "CoinDesk",
            "headline": "‘Wow, it’s a real discovery’: Claude cracks a 25-year NSA number mystery",
            "url": "https://www.coindesk.com/tech/2026/10/17/wow-it-s-a-real-discovery-claude-cracks-a-25-year-nsa-number-mystery",
            "seen_at": "2026-10-17T06:39:48Z",
            "via": "rss"
          }
        ]
      }
    ],
    "cluster_count": 2,
    "headline_count": 2,
    "searched": {
      "gdelt": false,
      "feeds_ok": 22,
      "feeds_total": 22
    }
  },
  "confidence": 0.7,
  "sources": [
    {
      "name": "Wired",
      "url": "https://www.wired.com/feed/rss",
      "fetched_at": "2026-10-17T11:12:49Z"
    },
    {
      "name": "CoinDesk",
      "url": "https://www.coindesk.com/arc/outboundfeeds/rss/",
      "fetched_at": "2026-10-17T11:12:49Z"
    }
  ],
  "generated_at": "2026-10-17T11:12:56Z",
  "data_as_of": "2026-10-17T11:12:49Z",
  "charged": true,
  "warnings": [
    "headlines and links only; open the outlet URL for the article",
    "GDELT did not answer in time (it rate-limits shared IPs); results come from publisher RSS only"
  ],
  "next": [
    "url_to_markdown"
  ],
  "note": "Headlines and links only. No article text is republished."
}
},
"flow": [
  1. POST https://grokzilla.shop/api/skills/news-brief with the JSON body, no payment header
  2. ← 402 Payment Required + PAYMENT-REQUIRED header: base64 JSON {x402Version: 2, accepts: [{scheme: "exact", network: "eip155:8453", asset: USDC, amount: "10100", payTo}]} (same JSON in the body)
  3. your x402 client checks amount ≤ $0.0101 and signs a USDC transfer authorization to payTo with your wallet
  4. retry the same POST with PAYMENT-SIGNATURE: <base64> (x402 v2) or X-PAYMENT (v1 clients)
  5. ← 200 OK with the result JSON + PAYMENT-RESPONSE header (base64 settlement receipt, tx hash on Base)
],
"copy": { // fills in from your inputs as you type
"agent_prompt"

        
"curl" // unpaid: shows the 402

        
"agentcash" // pays from your AgentCash wallet

        
},
"try": // POSTs unpaid to /api/skills/news-brief on this host and decodes the 402. Never pays.
}