{
  "url": "https://telipot.com/catalog/capabilities/web.search",
  "id": "web.search",
  "description": "Web pages that match a query, with their text",
  "platform": "web",
  "providers": [
    {
      "slug": "firecrawl",
      "name": "Firecrawl"
    },
    {
      "slug": "exa",
      "name": "Exa"
    }
  ],
  "tasks": 2,
  "taskPages": [
    {
      "id": "firecrawl.web.search",
      "name": "Web, news or image results by query, with URL and snippet",
      "provider": {
        "slug": "firecrawl",
        "name": "Firecrawl"
      },
      "capability": "web.search",
      "platform": "web",
      "kind": "data",
      "tier": "core",
      "identity": "key",
      "identityLabel": "Your plan",
      "price": {
        "type": "per_result",
        "confidence": "documented",
        "source": "docs",
        "sourceUrl": "https://docs.firecrawl.dev/billing",
        "checked": "2026-10-05",
        "note": "2 credits per 10 results, rounded up per 10 (1 to 10 results cost 2, 11 to 20 cost 4). Scraping the results costs more and is not offered by this task.",
        "settles": "The charge Firecrawl reports in creditsUsed",
        "state": "paid",
        "label": "$0.00076 / result",
        "amount": "$0.00076",
        "unit": "result",
        "usdPerUnit": {
          "floor": 0.00076,
          "ceiling": 0.00076
        },
        "native": {
          "text": "2 credits per 10 results",
          "figure": "2 credits",
          "per": "10 results",
          "currency": "credits"
        },
        "detail": "2 credits / 10 results · docs"
      },
      "providers": 2,
      "retention": "standard",
      "runsOn": "byoc",
      "live": true,
      "summary": "Search and optionally scrape search results",
      "method": "POST",
      "path": "/search",
      "host": "https://api.firecrawl.dev/v2",
      "docsUrl": "https://docs.firecrawl.dev/api-reference/endpoint/search",
      "auth": {
        "scheme": "bearer",
        "label": "bearer · Authorization: Bearer",
        "short": "bearer · Authorization"
      },
      "scope": "any_account",
      "principal": "organization",
      "requiredScopes": [],
      "verification": {
        "state": "none",
        "label": "Not verified yet",
        "detail": "Not checked yet. We test with a real request before we mark it."
      },
      "input": [
        {
          "name": "query",
          "location": "body",
          "type": "string",
          "required": true,
          "constraints": [
            "at most 500"
          ],
          "note": "The search query"
        },
        {
          "name": "limit",
          "location": "body",
          "type": "integer",
          "required": false,
          "constraints": [
            "1 to 100",
            "default 10"
          ],
          "note": "Maximum number of results to return, per source when sources lists several"
        },
        {
          "name": "sources",
          "location": "body",
          "type": "array",
          "required": false,
          "constraints": [
            "default [\"web\"]"
          ],
          "note": "Any of web, news and images, as plain strings. The response holds one array per source."
        },
        {
          "name": "tbs",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "Time filter: qdr:h, qdr:d, qdr:w, qdr:m or qdr:y for the past hour, day, week, month or year; cdr:1,cd_min:MM/DD/YYYY,cd_max:MM/DD/YYYY for a date range; sbd:1 to sort by date; values combine as sbd:1,qdr:w"
        },
        {
          "name": "location",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "Where to search from; set the country field too for best results"
        },
        {
          "name": "country",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [
            "default \"US\""
          ],
          "note": "ISO country code to geo-target results"
        },
        {
          "name": "includeDomains",
          "location": "body",
          "type": "array",
          "required": false,
          "constraints": [],
          "note": "Hostnames only, without protocol or path. Cannot be combined with excludeDomains"
        },
        {
          "name": "excludeDomains",
          "location": "body",
          "type": "array",
          "required": false,
          "constraints": [],
          "note": "Hostnames only, without protocol or path. Cannot be combined with includeDomains"
        }
      ],
      "sampleInput": {
        "query": "openrouter",
        "limit": 1
      },
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "The search query",
            "examples": [
              "openrouter"
            ],
            "maxLength": 500
          },
          "limit": {
            "type": "integer",
            "description": "Maximum number of results to return, per source when sources lists several",
            "default": 10,
            "minimum": 1,
            "maximum": 100
          },
          "sources": {
            "type": "array",
            "description": "Any of web, news and images, as plain strings. The response holds one array per source.",
            "default": [
              "web"
            ],
            "examples": [
              [
                "web",
                "news"
              ]
            ]
          },
          "tbs": {
            "type": "string",
            "description": "Time filter: qdr:h, qdr:d, qdr:w, qdr:m or qdr:y for the past hour, day, week, month or year; cdr:1,cd_min:MM/DD/YYYY,cd_max:MM/DD/YYYY for a date range; sbd:1 to sort by date; values combine as sbd:1,qdr:w",
            "examples": [
              "qdr:w"
            ]
          },
          "location": {
            "type": "string",
            "description": "Where to search from; set the country field too for best results",
            "examples": [
              "San Francisco,California,United States"
            ]
          },
          "country": {
            "type": "string",
            "description": "ISO country code to geo-target results",
            "default": "US"
          },
          "includeDomains": {
            "type": "array",
            "description": "Hostnames only, without protocol or path. Cannot be combined with excludeDomains",
            "examples": [
              [
                "docs.firecrawl.dev"
              ]
            ]
          },
          "excludeDomains": {
            "type": "array",
            "description": "Hostnames only, without protocol or path. Cannot be combined with includeDomains",
            "examples": [
              [
                "example.com"
              ]
            ]
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      },
      "output": [
        {
          "name": "success",
          "type": "boolean"
        },
        {
          "name": "id",
          "type": "string",
          "description": "The ID of the search job"
        },
        {
          "name": "creditsUsed",
          "type": "integer",
          "description": "Credits the search cost"
        },
        {
          "name": "warning",
          "type": "string | null"
        },
        {
          "name": "data",
          "type": "object"
        }
      ],
      "outputSchema": {
        "type": "object",
        "required": [
          "success",
          "data"
        ],
        "properties": {
          "success": {
            "type": "boolean"
          },
          "id": {
            "type": "string",
            "description": "The ID of the search job"
          },
          "creditsUsed": {
            "type": "integer",
            "description": "Credits the search cost"
          },
          "warning": {
            "type": [
              "string",
              "null"
            ]
          },
          "data": {
            "type": "object",
            "properties": {
              "web": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "title": {
                      "type": "string"
                    },
                    "description": {
                      "type": "string",
                      "description": "The passages of the page that match the query, or the site's own description when highlights are unavailable"
                    },
                    "url": {
                      "type": "string"
                    },
                    "position": {
                      "type": "integer"
                    }
                  }
                }
              },
              "news": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "title": {
                      "type": "string"
                    },
                    "snippet": {
                      "type": "string"
                    },
                    "url": {
                      "type": "string"
                    },
                    "date": {
                      "type": "string"
                    },
                    "imageUrl": {
                      "type": "string"
                    },
                    "position": {
                      "type": "integer"
                    }
                  }
                }
              },
              "images": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "title": {
                      "type": "string"
                    },
                    "imageUrl": {
                      "type": "string"
                    },
                    "imageWidth": {
                      "type": "integer"
                    },
                    "imageHeight": {
                      "type": "integer"
                    },
                    "url": {
                      "type": "string"
                    },
                    "position": {
                      "type": "integer"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "commands": {
        "mode": "run",
        "cli": "telipot run firecrawl.web.search \\\n  --input-json '{\"query\":\"openrouter\",\"limit\":1}'",
        "http": "curl https://api.telipot.com/v1/tasks/firecrawl.web.search/run \\\n  -H \"Authorization: Bearer $TELIPOT_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"query\":\"openrouter\",\"limit\":1}'",
        "quote": "telipot run firecrawl.web.search \\\n  --input-json '{\"query\":\"openrouter\",\"limit\":1}' \\\n  --quote"
      },
      "siblings": [
        {
          "id": "exa.web.search",
          "name": "Web pages by query, ranked, with titles, URLs and dates",
          "provider": {
            "slug": "exa",
            "name": "Exa"
          },
          "capability": "web.search",
          "platform": "web",
          "kind": "data",
          "tier": "core",
          "identity": "key",
          "identityLabel": "Your plan",
          "price": {
            "type": "per_call",
            "confidence": "documented",
            "source": "docs",
            "sourceUrl": "https://exa.ai/docs/admin/pricing",
            "checked": "2026-10-05",
            "note": "Base price per request for up to 10 results. Each result above 10 adds $1 per 1,000 results and each AI page summary adds $1 per 1,000 pages, which no row here can carry, so the charge the response reports in costDollars.total is the one to settle on.",
            "settles": "The charge Exa reports in costDollars.total",
            "state": "paid",
            "label": "$0.004–$0.015 / request",
            "amount": "$0.004–$0.015",
            "unit": "request",
            "usdPerUnit": {
              "floor": 0.004,
              "ceiling": 0.015
            },
            "native": {
              "text": "$4 to $15 per 1,000 requests",
              "figure": "$4 to $15",
              "per": "1,000 requests",
              "currency": "USDs"
            },
            "detail": "Exa docs · 2026-10-05"
          },
          "providers": 2,
          "retention": "standard",
          "runsOn": "byoc",
          "live": true
        }
      ]
    },
    {
      "id": "exa.web.search",
      "name": "Web pages by query, ranked, with titles, URLs and dates",
      "provider": {
        "slug": "exa",
        "name": "Exa"
      },
      "capability": "web.search",
      "platform": "web",
      "kind": "data",
      "tier": "core",
      "identity": "key",
      "identityLabel": "Your plan",
      "price": {
        "type": "per_call",
        "confidence": "documented",
        "source": "docs",
        "sourceUrl": "https://exa.ai/docs/admin/pricing",
        "checked": "2026-10-05",
        "note": "Base price per request for up to 10 results. Each result above 10 adds $1 per 1,000 results and each AI page summary adds $1 per 1,000 pages, which no row here can carry, so the charge the response reports in costDollars.total is the one to settle on.",
        "settles": "The charge Exa reports in costDollars.total",
        "state": "paid",
        "label": "$0.004–$0.015 / request",
        "amount": "$0.004–$0.015",
        "unit": "request",
        "usdPerUnit": {
          "floor": 0.004,
          "ceiling": 0.015
        },
        "native": {
          "text": "$4 to $15 per 1,000 requests",
          "figure": "$4 to $15",
          "per": "1,000 requests",
          "currency": "USDs"
        },
        "detail": "Exa docs · 2026-10-05"
      },
      "providers": 2,
      "retention": "standard",
      "runsOn": "byoc",
      "live": true,
      "summary": "Perform a search with an Exa prompt-engineered query and retrieve a list of relevant results. Optionally get contents.",
      "method": "POST",
      "path": "/search",
      "host": "https://api.exa.ai",
      "docsUrl": "https://exa.ai/docs/reference/search",
      "auth": {
        "scheme": "api_key",
        "label": "api_key · in header as x-api-key",
        "short": "api_key · x-api-key"
      },
      "scope": "any_account",
      "principal": "organization",
      "requiredScopes": [],
      "verification": {
        "state": "verified",
        "label": "Verified on 2026-10-05",
        "detail": "We ran a real request and checked the answer. This is a spot check, not a success rate."
      },
      "input": [
        {
          "name": "query",
          "location": "body",
          "type": "string",
          "required": true,
          "constraints": [
            "at least 1"
          ],
          "note": "The query string for the search. Write it in natural language, naming the subject and, when it matters, the kind of source and the time period."
        },
        {
          "name": "numResults",
          "location": "body",
          "type": "integer",
          "required": false,
          "constraints": [
            "1 to 100",
            "default 10"
          ],
          "note": "Number of results to return. Limits vary by search type. The maximum public limit is 100 results; contact sales (hello@exa.ai) for more. The base price covers up to 10 results and each result above 10 is billed at $1 per 1,000 results."
        },
        {
          "name": "type",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [
            "one of \"instant\", \"fast\", \"auto\", \"deep-lite\", \"deep\", \"deep-reasoning\"",
            "default \"auto\""
          ],
          "note": "The search mode. auto is balanced and recommended for most applications; fast has reduced latency; instant has the minimum response time; deep-lite is lightweight research with synthesized results at a consistent 4 seconds; deep is multi-step research with synthesis; deep-reasoning adds stronger reasoning. instant is billed at $4 per 1,000 requests, fast and auto at $7, deep-lite and deep at $12, deep-reasoning at $15."
        },
        {
          "name": "category",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "A data category to focus on. Known categories are company, publication, news, personal site, financial report and people; other strings are accepted as category hints. The people category returns profiles of named individuals and company returns company pages, and this one task serves both. The company and people categories do not support startPublishedDate, endPublishedDate or excludeDomains, and using them returns a 400."
        },
        {
          "name": "includeDomains",
          "location": "body",
          "type": "array",
          "required": false,
          "constraints": [
            "at most 1200"
          ],
          "note": "Domains or domain paths to search, each a hostname such as example.com, a hostname with a path prefix such as example.com/docs, or a wildcard subdomain such as *.example.com. Use this instead of a site operator in the query."
        },
        {
          "name": "excludeDomains",
          "location": "body",
          "type": "array",
          "required": false,
          "constraints": [
            "at most 1200"
          ],
          "note": "Domains or domain paths to leave out, in the same forms as includeDomains."
        },
        {
          "name": "startPublishedDate",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "Only links with a published date after this are returned. ISO 8601 date-time."
        },
        {
          "name": "endPublishedDate",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "Only links with a published date before this are returned. ISO 8601 date-time."
        },
        {
          "name": "userLocation",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "The two-letter ISO country code of the user."
        },
        {
          "name": "moderation",
          "location": "body",
          "type": "boolean",
          "required": false,
          "constraints": [
            "default false"
          ],
          "note": "Enable content moderation to filter unsafe content from search results."
        },
        {
          "name": "contents",
          "location": "body",
          "type": "object",
          "required": false,
          "constraints": [],
          "note": "What to return for each result, nested under this field, such as { highlights: true } for query-relevant excerpts or { text: { maxCharacters: 2000 } } for page text, with maxAgeHours, subpages and extras as further options. Without it each result carries metadata such as title, URL and publication date. AI page summaries are billed at $1 per 1,000 pages."
        },
        {
          "name": "additionalQueries",
          "location": "body",
          "type": "array",
          "required": false,
          "constraints": [
            "1 to 10"
          ],
          "note": "Additional query variations used alongside the main query for broader results. Only works with a deep search type."
        },
        {
          "name": "outputSchema",
          "location": "body",
          "type": "object",
          "required": false,
          "constraints": [],
          "note": "JSON schema for synthesized output. Supported root types are text and object. When given, the response includes an output object whose content matches the schema. Works with every search type and adds about 2 seconds of synthesis latency. Object schemas are limited to 10 properties in total and 2 levels of nesting, and every array must define items."
        },
        {
          "name": "objective",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [
            "at most 4096"
          ],
          "note": "Goal for this search turn; say which documents should rank first, which should be excluded, and what specific facts or figures to pull from them."
        },
        {
          "name": "systemPrompt",
          "location": "body",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "Additional instructions that guide generated output, such as source preferences, novelty constraints or duplication constraints."
        }
      ],
      "sampleInput": {
        "query": "openrouter",
        "numResults": 1,
        "type": "instant"
      },
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "The query string for the search. Write it in natural language, naming the subject and, when it matters, the kind of source and the time period.",
            "examples": [
              "recent techniques for improving retrieval in RAG systems"
            ],
            "minLength": 1
          },
          "numResults": {
            "type": "integer",
            "description": "Number of results to return. Limits vary by search type. The maximum public limit is 100 results; contact sales (hello@exa.ai) for more. The base price covers up to 10 results and each result above 10 is billed at $1 per 1,000 results.",
            "default": 10,
            "minimum": 1,
            "maximum": 100
          },
          "type": {
            "type": "string",
            "description": "The search mode. auto is balanced and recommended for most applications; fast has reduced latency; instant has the minimum response time; deep-lite is lightweight research with synthesized results at a consistent 4 seconds; deep is multi-step research with synthesis; deep-reasoning adds stronger reasoning. instant is billed at $4 per 1,000 requests, fast and auto at $7, deep-lite and deep at $12, deep-reasoning at $15.",
            "enum": [
              "instant",
              "fast",
              "auto",
              "deep-lite",
              "deep",
              "deep-reasoning"
            ],
            "default": "auto"
          },
          "category": {
            "type": "string",
            "description": "A data category to focus on. Known categories are company, publication, news, personal site, financial report and people; other strings are accepted as category hints. The people category returns profiles of named individuals and company returns company pages, and this one task serves both. The company and people categories do not support startPublishedDate, endPublishedDate or excludeDomains, and using them returns a 400."
          },
          "includeDomains": {
            "type": "array",
            "description": "Domains or domain paths to search, each a hostname such as example.com, a hostname with a path prefix such as example.com/docs, or a wildcard subdomain such as *.example.com. Use this instead of a site operator in the query.",
            "maxItems": 1200
          },
          "excludeDomains": {
            "type": "array",
            "description": "Domains or domain paths to leave out, in the same forms as includeDomains.",
            "maxItems": 1200
          },
          "startPublishedDate": {
            "type": "string",
            "description": "Only links with a published date after this are returned. ISO 8601 date-time.",
            "examples": [
              "2026-01-15T00:00:00Z"
            ]
          },
          "endPublishedDate": {
            "type": "string",
            "description": "Only links with a published date before this are returned. ISO 8601 date-time.",
            "examples": [
              "2026-09-30T00:00:00Z"
            ]
          },
          "userLocation": {
            "type": "string",
            "description": "The two-letter ISO country code of the user.",
            "examples": [
              "US"
            ]
          },
          "moderation": {
            "type": "boolean",
            "description": "Enable content moderation to filter unsafe content from search results.",
            "default": false
          },
          "contents": {
            "type": "object",
            "description": "What to return for each result, nested under this field, such as { highlights: true } for query-relevant excerpts or { text: { maxCharacters: 2000 } } for page text, with maxAgeHours, subpages and extras as further options. Without it each result carries metadata such as title, URL and publication date. AI page summaries are billed at $1 per 1,000 pages.",
            "examples": [
              {
                "highlights": true
              }
            ]
          },
          "additionalQueries": {
            "type": "array",
            "description": "Additional query variations used alongside the main query for broader results. Only works with a deep search type.",
            "minItems": 1,
            "maxItems": 10
          },
          "outputSchema": {
            "type": "object",
            "description": "JSON schema for synthesized output. Supported root types are text and object. When given, the response includes an output object whose content matches the schema. Works with every search type and adds about 2 seconds of synthesis latency. Object schemas are limited to 10 properties in total and 2 levels of nesting, and every array must define items."
          },
          "objective": {
            "type": "string",
            "description": "Goal for this search turn; say which documents should rank first, which should be excluded, and what specific facts or figures to pull from them.",
            "maxLength": 4096
          },
          "systemPrompt": {
            "type": "string",
            "description": "Additional instructions that guide generated output, such as source preferences, novelty constraints or duplication constraints."
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      },
      "output": [
        {
          "name": "requestId",
          "type": "string"
        },
        {
          "name": "results",
          "type": "object[]"
        },
        {
          "name": "searchTime",
          "type": "number",
          "description": "Server-side processing time in milliseconds"
        },
        {
          "name": "costDollars",
          "type": "object",
          "description": "Estimated dollar cost of the completed request; billing is computed from usage counters, not from this object."
        },
        {
          "name": "output",
          "type": "object",
          "description": "Synthesized output, returned when outputSchema is provided"
        }
      ],
      "outputSchema": {
        "type": "object",
        "required": [
          "results"
        ],
        "properties": {
          "requestId": {
            "type": "string"
          },
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "title",
                "url"
              ],
              "properties": {
                "title": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "id": {
                  "type": "string",
                  "description": "Temporary document id, accepted by the contents route"
                },
                "publishedDate": {
                  "type": "string",
                  "description": "Estimated creation date parsed from the page"
                },
                "author": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "image": {
                  "type": "string"
                },
                "favicon": {
                  "type": "string"
                },
                "text": {
                  "type": "string",
                  "description": "Full page text, present only when requested"
                },
                "highlights": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "summary": {
                  "type": "string"
                },
                "subpages": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "entities": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "extras": {
                  "type": "object"
                }
              }
            }
          },
          "searchTime": {
            "type": "number",
            "description": "Server-side processing time in milliseconds"
          },
          "costDollars": {
            "type": "object",
            "description": "Estimated dollar cost of the completed request; billing is computed from usage counters, not from this object.",
            "properties": {
              "total": {
                "type": "number"
              },
              "search": {
                "type": "object",
                "properties": {
                  "neural": {
                    "type": "number"
                  },
                  "keyword": {
                    "type": "number"
                  }
                }
              },
              "summary": {
                "type": "number"
              },
              "contents": {
                "type": "object",
                "properties": {
                  "text": {
                    "type": "number"
                  },
                  "highlights": {
                    "type": "number"
                  },
                  "summary": {
                    "type": "number"
                  }
                }
              }
            }
          },
          "output": {
            "type": "object",
            "description": "Synthesized output, returned when outputSchema is provided",
            "required": [
              "content",
              "grounding"
            ],
            "properties": {
              "content": {
                "type": [
                  "string",
                  "object"
                ]
              },
              "grounding": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "field": {
                      "type": "string"
                    },
                    "citations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "url": {
                            "type": "string"
                          },
                          "title": {
                            "type": "string"
                          },
                          "id": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "confidence": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "example": {
        "file": "examples/exa.web.search.json",
        "json": {
          "requestId": "3601539a56015e854455a44813897a03",
          "results": [
            {
              "id": "https://openrouter.ai/",
              "title": "OpenRouter",
              "url": "https://openrouter.ai/",
              "image": "https://openrouter.ai/dynamic-og?pathname=default&title=OpenRouter&description=The+unified+interface+for+every+model.+Find+the+best+models+%26+prices+for+your+prompts&v=2",
              "entities": [
                {}
              ]
            }
          ],
          "searchTime": 7.4,
          "costDollars": {
            "total": 0.004,
            "search": {
              "neural": 0.004
            }
          }
        }
      },
      "commands": {
        "mode": "run",
        "cli": "telipot run exa.web.search \\\n  --input-json '{\"query\":\"openrouter\",\"numResults\":1,\"type\":\"instant\"}'",
        "http": "curl https://api.telipot.com/v1/tasks/exa.web.search/run \\\n  -H \"Authorization: Bearer $TELIPOT_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"query\":\"openrouter\",\"numResults\":1,\"type\":\"instant\"}'",
        "quote": "telipot run exa.web.search \\\n  --input-json '{\"query\":\"openrouter\",\"numResults\":1,\"type\":\"instant\"}' \\\n  --quote"
      },
      "siblings": [
        {
          "id": "firecrawl.web.search",
          "name": "Web, news or image results by query, with URL and snippet",
          "provider": {
            "slug": "firecrawl",
            "name": "Firecrawl"
          },
          "capability": "web.search",
          "platform": "web",
          "kind": "data",
          "tier": "core",
          "identity": "key",
          "identityLabel": "Your plan",
          "price": {
            "type": "per_result",
            "confidence": "documented",
            "source": "docs",
            "sourceUrl": "https://docs.firecrawl.dev/billing",
            "checked": "2026-10-05",
            "note": "2 credits per 10 results, rounded up per 10 (1 to 10 results cost 2, 11 to 20 cost 4). Scraping the results costs more and is not offered by this task.",
            "settles": "The charge Firecrawl reports in creditsUsed",
            "state": "paid",
            "label": "$0.00076 / result",
            "amount": "$0.00076",
            "unit": "result",
            "usdPerUnit": {
              "floor": 0.00076,
              "ceiling": 0.00076
            },
            "native": {
              "text": "2 credits per 10 results",
              "figure": "2 credits",
              "per": "10 results",
              "currency": "credits"
            },
            "detail": "2 credits / 10 results · docs"
          },
          "providers": 2,
          "retention": "standard",
          "runsOn": "byoc",
          "live": true
        }
      ]
    }
  ]
}
