Agentic Portal

Token Price Oracles

blockchain
Serving

Chainlink price feed reads for three pairs: ETH/USD and BTC/USD on Ethereum (chain 1) and MATIC/USD on Polygon (chain 137). POST /v1/price with {pair, chain_id} and get the latest answer, feed address and update time. Any other pair answers 400. Pay per request in USDC; no account, no API key.

Endpoint
POST https://test.agent.pocket.network/v1/token-price-oracles/v1/price
Price per call
$0.005 USD
Networks payable on
Base Sepolia (eip155:84532)
Protocol
rest

Calling it

The first call returns 402 Payment Required with the terms. Sign for those terms and retry the same request with the payment attached.

Example request

A real, working call — the request the service card verifies against.

curl -X POST https://test.agent.pocket.network/v1/token-price-oracles/v1/price \
  -H 'content-type: application/json' \
  -d '{"pair":"ETH/USD","chain_id":1}'
Example response

The response this call returned, captured 2026-09-25 15:53:33 UTC.

{
  "portal": {
    "provenance": "third-party-supplier",
    "serviceId": "token-price-oracles",
    "schemaCheck": "unchecked"
  },
  "data": {
    "pair": "ETH/USD",
    "chain_id": 1,
    "price": 2668.9225,
    "feed": "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419",
    "updated_at": 1790351543,
    "source": "chainlink-aggregator",
    "service": "token-price-oracles"
  }
}

Try it

Make one real paid call from your own wallet — about $0.005 on Base Sepolia (eip155:84532). The wallet signs; nothing here holds a key. You'll see exactly what the service answers.

No browser wallet found. Install MetaMask, Rabby, or Coinbase Wallet to try a call here.

Supported methods

Methods the registry lists for this service. The portal forwards any call as sent; the supplier decides what it answers, and a delivered answer is settled.

Methods Token Price Oracles accepts, and whether each reads or writes.
MethodEffect
GET /v1/healthread
GET /v1/versionread
POST /v1/priceread

Schemas

Published by the service itself. The example above is generated from these.

Request schema
{
  "type": "object",
  "description": "The request body for POST /v1/price.",
  "properties": {
    "pair": {
      "type": "string",
      "enum": [
        "ETH/USD",
        "BTC/USD",
        "MATIC/USD"
      ],
      "description": "The price pair."
    },
    "chain_id": {
      "type": "integer",
      "enum": [
        1,
        137
      ],
      "description": "1 for ETH/USD and BTC/USD, 137 for MATIC/USD."
    }
  },
  "required": [
    "pair",
    "chain_id"
  ]
}
Response schema
{
  "type": "object",
  "description": "For POST /v1/price, a JSON object with pair, chain_id, price, feed, updated_at and source. The exact shape is the service's own and is not pinned here; errors return a JSON object with an `error` field."
}