ToolAssay

Keyword web search by Ceramic.ai that returns ranked results as structured JSON

Keyword web search by Ceramic.ai that returns ranked results as structured JSON: a title, URL, and text snippet per result. The discovery entry point for agents and RAG pipelines: search to find relevant pages, then go deeper on any result with /preflight/url-check and then the paid /extract endpoints. Pay-per-search. Use ?limit= to cap results (1-10) and ?descriptionLength= to trim each snippet (0 = titles and URLs only) for desired token efficiency. Supports GET & POST

Answeringour last check, 2026-09-24
1 of 1checks answered this week
422 msmedian answer time
$0.002listed price per call
$0.002price it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

GET https://minifetch.com/api/v1/x402/search/keyword

CategoryMarket data
Provider hostminifetch.com
Networkseip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
Payment schemesexact
Self-reported calls, 30 days2 from 1 payers (the provider's figure, not ours)

Our checks, last 30 days

DayResultHTTPAskedTime
2026-09-24 valid payment request 402$0.002 422 ms

Example input (from the provider)

{
  "method": "GET",
  "queryParams": {
    "query": "green tea"
  },
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "GET"
          ],
          "type": "string"
        },
        "queryParams": {
          "properties": {
            "descriptionLength": {
              "description": "Optional. Max characters of each result's description, 0-5000 (0 = titles/URLs only). Default 750. Out-of-range values are clamped to the nearest bound; unparseable input falls back to the default.",
              "type": "integer"
            },
            "limit": {
              "description": "Optional. Number of results to return, 1-10. Default 10. Out-of-range values are clamped to the nearest bound; unparseable input falls back to the default.",
              "type": "integer"
            },
            "query": {
              "description": "Keyword(s) to search for. Max 50 characters.",
              "type": "string"
            }
          },
          "required": [
            "query"
          ],
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "queryParameters": {
              "type": "object"
            },
            "results": {
              "description": "Up to `limit` results; the example shows one.",
              "items": {
                "properties": {
                  "data": {
                    "description": "A single search result.",
                    "properties": {
                      "description": {
                        "description": "Text snippet from the result page, trimmed to the requested descriptionLength",
                        "type": "string"
                      },
                      "title": {
                        "description": "Result page title",
                        "type": "string"
                      },
                      "url": {
                        "description": "Result page URL",
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "type": "array"
            },
            "success": {
              "type": "boolean"
            }
          },
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON