Agentic Portal

Meme Watch

blockchain
Serving

A rolling 60-minute feed of Solana memecoin launches as one JSON object. POST /v1/launches with an optional dex filter (pumpfun, pumpswap, meteora) plus limit, age, volume, liquidity and sort options; each launch carries pool and token address, venue, price, FDV, volume, transaction count and drawdown. Point-in-time and served from cache. Pay per request in USDC; no account, no API key.

Endpoint
POST https://agent.pocket.network/v1/meme-watch/v1/launches
Price per call
$0.005 USD
Networks payable on
Base (eip155:8453), Tempo (eip155:4217)
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://agent.pocket.network/v1/meme-watch/v1/launches \
  -H 'content-type: application/json' \
  -d '{"limit":1}'
Example response

The response this call returned, captured 2026-09-21 23:48:09 UTC.

{
  "portal": {
    "provenance": "third-party-supplier",
    "serviceId": "meme-watch",
    "schemaCheck": "unchecked"
  },
  "data": {
    "service": "meme-watch",
    "version": "1.0.0",
    "chain": "solana",
    "source": "dexpaprika",
    "as_of": "2026-09-21T23:48:01.701Z",
    "cache_age_seconds": 6,
    "window_minutes": 60,
    "complete_before": "2026-09-21T23:46:08.190Z",
    "upstream_ok": false,
    "upstream_note": "http_error",
    "window_truncated": false,
    "sort": "created_at",
    "count": 0,
    "matched": 0,
    "total_in_window": 0,
    "pending_identity": 0,
    "format": "json",
    "launches": []
  }
}

Try it

Make one real paid call from your own wallet — about $0.005 on Base (eip155:8453). 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 Meme Watch accepts, and whether each reads or writes.
MethodEffect
GET /healthzread
GET /v1/capabilitiesread
GET /v1/openapi.jsonread
GET /v1/versionread
POST /v1/launchesread

Schemas

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

Request schema
{
  "type": "object",
  "description": "Filters for the launch feed; every field is optional and read from the POST body.",
  "properties": {
    "dex": {
      "type": "string",
      "enum": [
        "pumpfun",
        "pumpswap",
        "meteora_daam_v2",
        "meteora_dbc"
      ],
      "description": "Venue filter; omit for every venue."
    },
    "limit": {
      "type": "integer",
      "description": "Maximum launches to return."
    },
    "max_age_minutes": {
      "type": "integer",
      "description": "Only launches newer than this many minutes."
    },
    "min_txns": {
      "type": "integer",
      "description": "Minimum since-launch transaction count."
    },
    "min_volume_usd": {
      "type": "number",
      "description": "Minimum since-launch volume in USD."
    },
    "min_liquidity_usd": {
      "type": "number",
      "description": "Minimum quote-side liquidity in USD."
    },
    "named_only": {
      "type": "boolean",
      "description": "Exclude launches not yet named."
    },
    "sort": {
      "type": "string",
      "description": "Sort key for the feed."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "csv"
      ],
      "default": "json",
      "description": "Response format; csv rides in a csv string field."
    }
  },
  "required": []
}
Response schema
{
  "type": "object",
  "description": "For POST /v1/launches, a JSON object with window_minutes, as_of, complete_before, and a launches array; when format is csv the table rides in a `csv` string field, always last. Results are point-in-time and two suppliers may legitimately differ. The exact shape is the service's own and is not pinned here; errors return a JSON object with an `error` field, and the GET routes return their own small JSON documents."
}