Servidor MCP

HubVibe: Pay-per-Call Tools for AI Agents: Web Search, Email Verify, KYC, Stocks, Crypto, News, Data

io.github.Its-fortunatefolly/hubvibe

Qué hace este MCP

Offers paid utilities for web audits, HTTP fetching and extraction, BigQuery analysis, LLM processing, code execution, blockchain reads, maps, and market data.

audit_bundle
Full site compliance bundle (all four audits)
Full website audit in one call: accessibility (WCAG 2.1 A/AA via axe-core), on-page SEO, HTTP security headers and page speed / page weight, from a single browser load of one URL. Cheaper than four separate calls; if any part cannot run, nothing is billed. Use a single audit route when you need only one of the four. $0.15 per call. Returns: pass (bool) plus wcag{}, seo{}, security{}, performance{} sub-results.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'title': 'Live URL to audit', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'examples': ['https://example.com'], 'description': 'Live, fetchable http(s) URL to audit.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'examples': ['ja'], 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable text of the findings is returned in this language; rule ids, severities, URLs and numbers are untouched. Default: English.'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'seo': {'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stable rule identifier.'}, 'detail': {'type': 'string', 'description': 'What failed and where.'}, 'severity': {'type': 'string', 'description': 'Rule severity.'}}}, 'description': 'One entry per rule that did not pass. Empty when the check is clean.'}}}, 'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'wcag': {'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'engine': {'type': 'string', 'const': 'axe-core'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'violations': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'axe-core rule id.'}, 'help': {'type': ['string', 'null']}, 'impact': {'type': ['string', 'null'], 'description': 'axe-core impact level.'}, 'help_url': {'type': 'string', 'format': 'uri'}, 'nodes_affected': {'type': 'integer', 'minimum': 0}}}}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'security': {'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stable rule identifier.'}, 'detail': {'type': 'string', 'description': 'What failed and where.'}, 'severity': {'type': 'string', 'description': 'Rule severity.'}}}, 'description': 'One entry per rule that did not pass. Empty when the check is clean.'}}}, 'performance': {'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'metrics': {'type': 'object', 'properties': {'request_count': {'type': 'integer', 'minimum': 0}, 'dom_node_count': {'type': 'integer', 'minimum': 0}, 'total_bytes_transferred': {'type': 'integer', 'minimum': 0}}}, 'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stable rule identifier.'}, 'detail': {'type': 'string', 'description': 'What failed and where.'}, 'severity': {'type': 'string', 'description': 'Rule severity.'}}}, 'description': 'One entry per rule that did not pass. Empty when the check is clean.'}}}}}
audit_performance
Page performance audit
Page speed and page weight audit of a web page from one real browser load: total bytes transferred, HTTP request count and DOM node count, measured rather than estimated, with findings when the page is heavy. Page-weight signals, not Core Web Vitals. $0.05 per call. Returns: pass (bool), metrics{}, findings[] with id/severity/detail.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'title': 'Live URL to audit', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'examples': ['https://example.com'], 'description': 'Live, fetchable http(s) URL to audit.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'examples': ['ja'], 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable text of the findings is returned in this language; rule ids, severities, URLs and numbers are untouched. Default: English.'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'metrics': {'type': 'object', 'properties': {'request_count': {'type': 'integer', 'minimum': 0}, 'dom_node_count': {'type': 'integer', 'minimum': 0}, 'total_bytes_transferred': {'type': 'integer', 'minimum': 0}}}, 'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stable rule identifier.'}, 'detail': {'type': 'string', 'description': 'What failed and where.'}, 'severity': {'type': 'string', 'description': 'Rule severity.'}}}, 'description': 'One entry per rule that did not pass. Empty when the check is clean.'}}}
audit_security
Security header audit
Security headers check for a website: audits HTTPS, HSTS, Content- Security-Policy (CSP), X-Content-Type-Options, X-Frame-Options / clickjacking protection, Referrer-Policy and CORS from the real HTTP response of any live URL. Findings with severity for what is missing. Header posture only, not a penetration test. $0.05 per call. Returns: pass (bool), findings[] with id/severity/detail.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'title': 'Live URL to audit', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'examples': ['https://example.com'], 'description': 'Live, fetchable http(s) URL to audit.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'examples': ['ja'], 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable text of the findings is returned in this language; rule ids, severities, URLs and numbers are untouched. Default: English.'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stable rule identifier.'}, 'detail': {'type': 'string', 'description': 'What failed and where.'}, 'severity': {'type': 'string', 'description': 'Rule severity.'}}}, 'description': 'One entry per rule that did not pass. Empty when the check is clean.'}}}
audit_seo
SEO and metadata audit
SEO audit of a web page (on-page SEO check) for any live URL or raw HTML: title tag, meta description, H1 heading structure, canonical link, OpenGraph and social tags, JSON-LD structured data, html lang attribute. Rule-by-rule findings with severity and what is missing or malformed. $0.05 per call. Returns: pass (bool), findings[] with id/severity/detail.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['url']}, {'required': ['html']}], 'title': 'Live URL or raw HTML to audit', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'url': {'type': 'string', 'format': 'uri', 'examples': ['https://example.com'], 'description': 'Live, fetchable http(s) URL to audit.'}, 'html': {'type': 'string', 'description': 'Raw HTML source to audit instead of fetching a URL.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'examples': ['ja'], 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable text of the findings is returned in this language; rule ids, severities, URLs and numbers are untouched. Default: English.'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'findings': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Stable rule identifier.'}, 'detail': {'type': 'string', 'description': 'What failed and where.'}, 'severity': {'type': 'string', 'description': 'Rule severity.'}}}, 'description': 'One entry per rule that did not pass. Empty when the check is clean.'}}}
audit_wcag
Accessibility audit (WCAG 2.1 A/AA)
Website accessibility audit (a11y, WCAG compliance check): WCAG 2.1 level A and AA conformance of any live URL or raw HTML, tested with axe-core in a real headless browser. Returns every violation with rule id, impact, help text and affected node count. Deterministic rules; a check that cannot run returns an error, never a pass. $0.05 per call. Returns: pass (bool), violations[] with id/impact/help/help_url/nodes_affected.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['url']}, {'required': ['html']}], 'title': 'Live URL or raw HTML to audit', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'url': {'type': 'string', 'format': 'uri', 'examples': ['https://example.com'], 'description': 'Live, fetchable http(s) URL to audit.'}, 'html': {'type': 'string', 'description': 'Raw HTML source to audit instead of fetching a URL.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'examples': ['ja'], 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable text of the findings is returned in this language; rule ids, severities, URLs and numbers are untouched. Default: English.'}}}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['pass'], 'properties': {'pass': {'type': 'boolean', 'description': 'Whether every rule in this dimension passed.'}, 'engine': {'type': 'string', 'const': 'axe-core'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a completed audit.'}, 'violations': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'axe-core rule id.'}, 'help': {'type': ['string', 'null']}, 'impact': {'type': ['string', 'null'], 'description': 'axe-core impact level.'}, 'help_url': {'type': 'string', 'format': 'uri'}, 'nodes_affected': {'type': 'integer', 'minimum': 0}}}}}}
hubvibe_chain_address
Base address report
Base wallet lookup: ETH balance, transaction count (nonce) and whether the address is a contract or an ordinary wallet, in one call for one Base mainnet address. Input: address. Three RPC reads folded into one answer; for a token balance or any other read, use chain.rpc. $0.05 per call. Returns: balance_wei, balance_eth, transaction_count, is_contract, code_size_bytes.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['address'], 'properties': {'address': {'type': 'string', 'description': '0x-prefixed Base address.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'chain.address response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['address', 'network', 'balance_wei', 'balance_eth', 'transaction_count', 'is_contract', 'code_size_bytes'], 'properties': {'address': {'type': 'string', 'examples': ['0x837C40E2B4e976f43Ffb4451eE281A00fA9477dd'], 'description': 'The address queried.'}, 'network': {'type': 'string', 'const': 'base-mainnet', 'description': 'Chain read.'}, 'balance_eth': {'type': 'number', 'examples': [1.25], 'description': 'ETH balance.'}, 'balance_wei': {'type': 'string', 'examples': ['1250000000000000000'], 'description': 'ETH balance in wei, as a decimal string.'}, 'is_contract': {'type': 'boolean', 'examples': [False], 'description': 'Whether code is deployed at the address.'}, 'code_size_bytes': {'type': 'integer', 'examples': [0], 'description': 'Deployed bytecode size; 0 for an externally owned account.'}, 'transaction_count': {'type': 'integer', 'examples': [42], 'description': 'Nonce: transactions sent from this address.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_chain_network
Base network state
Base chain status: current block height and gas price (wei and gwei), read live from a Base mainnet RPC node. No input needed. Use it to check the chain is live, time an on-chain action, or estimate gas before a chain.rpc call. $0.02 per call. Returns: block_number, gas_price_wei, gas_price_gwei.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'chain.network response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['network', 'block_number', 'gas_price_wei', 'gas_price_gwei'], 'properties': {'network': {'type': 'string', 'const': 'base-mainnet', 'description': 'Chain read.'}, 'block_number': {'type': 'integer', 'examples': [41230577], 'description': 'Current head block number.'}, 'gas_price_wei': {'type': 'string', 'examples': ['12500000'], 'description': 'Current gas price in wei, as a decimal string.'}, 'gas_price_gwei': {'type': 'number', 'examples': [0.0125], 'description': 'Current gas price in gwei.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_chain_rpc
Base RPC passthrough
Base JSON-RPC passthrough: call any allowlisted read-only method on Base mainnet (eth_call, eth_getBalance, eth_getLogs, eth_getBlockByNumber and more) with your own params. A JSON-RPC error such as a revert reason comes back as the result, since it is the chain's own answer. Input: method, optional params. $0.05 per call. Returns: method, result or error, endpoint.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['method'], 'properties': {'method': {'type': 'string', 'description': 'e.g. eth_call, eth_getLogs.'}, 'params': {'type': 'array', 'description': 'JSON-RPC positional params. Default [].'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'chain.rpc response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['method', 'endpoint'], 'properties': {'error': {'type': ['object', 'null'], 'examples': [{'code': -32000, 'message': 'execution reverted'}], 'description': "The chain's JSON-RPC error object, verbatim, when it answered with one (a revert reason, an unknown block). Either `result` or `error` is present."}, 'method': {'type': 'string', 'examples': ['eth_blockNumber'], 'description': 'The JSON-RPC method called.'}, 'result': {'examples': ['0x2751f11'], 'description': "The chain's `result`, verbatim, when the call succeeded."}, 'endpoint': {'type': 'string', 'examples': ['https://mainnet.base.org'], 'description': 'The RPC endpoint that answered.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_chain_transaction
Base transaction lookup
Base transaction lookup by hash: sender, recipient, ETH value, block, success or failure, gas used and log count, with the receipt folded in. Input: the 0x transaction hash. Use chain.rpc for the raw eth_getTransactionReceipt output. $0.05 per call. Returns: from, to, value_eth, block_number, status, gas_used, log_count.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['hash'], 'properties': {'hash': {'type': 'string', 'description': '0x-prefixed transaction hash.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'chain.transaction response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['hash', 'network', 'from', 'to', 'value_wei', 'value_eth', 'block_number', 'mined', 'status'], 'properties': {'to': {'type': ['string', 'null'], 'examples': ['0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'], 'description': 'Recipient; null for a contract creation.'}, 'from': {'type': ['string', 'null'], 'examples': ['0x837C40E2B4e976f43Ffb4451eE281A00fA9477dd'], 'description': 'Sender.'}, 'hash': {'type': 'string', 'examples': ['0xabababababababababababababababababababababababababababababababab'], 'description': 'Transaction hash.'}, 'mined': {'type': 'boolean', 'examples': [True], 'description': 'Whether the transaction is in a block.'}, 'status': {'enum': ['success', 'failed', 'pending'], 'type': 'string', 'examples': ['success'], 'description': 'Receipt status.'}, 'network': {'type': 'string', 'const': 'base-mainnet', 'description': 'Chain read.'}, 'gas_used': {'type': 'integer', 'examples': [65231], 'description': 'Gas used, from the receipt.'}, 'log_count': {'type': 'integer', 'examples': [2], 'description': 'Number of logs emitted, from the receipt.'}, 'value_eth': {'type': 'number', 'examples': [0.0], 'description': 'Value transferred in ETH.'}, 'value_wei': {'type': 'string', 'examples': ['0'], 'description': 'Value transferred in wei, as a decimal string.'}, 'block_number': {'type': ['integer', 'null'], 'examples': [41230501], 'description': 'Block the transaction was mined in; null while pending.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_code_execute
Execute Python
Run Python code in Google's hosted sandbox, not on this service's own machines, and get the code, its output and the outcome back. Input: code. For questions over BigQuery data use data.query instead. $0.25 per call. Returns: code, output, outcome, summary, model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['code'], 'properties': {'code': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'code.execute response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['code', 'output', 'outcome', 'model'], 'properties': {'code': {'type': 'string', 'examples': ['print(sum(range(10)))'], 'description': 'The code that ran.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'output': {'type': 'string', 'examples': ['45\n'], 'description': 'Captured stdout/stderr.'}, 'outcome': {'type': 'string', 'examples': ['OUTCOME_OK'], 'description': 'Sandbox outcome code.'}, 'summary': {'type': ['string', 'null'], 'examples': ['Printed the sum 45.'], 'description': "The model's one-line summary of the run."}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_commerce_availability
Live availability: can this be bought or booked right now?
Live buy/book check on any product or booking page: can it be purchased right now, at what price, in which options (sizes, colours, dates, rooms), which option matches the variant you name, quantity and ship-to eligibility where the page states them, with evidence and a checked_at stamp. Read at call time: schema.org JSON-LD, Open Graph and Shopify product JSON first; a browser render and Gemini only when the page gives machines nothing. Input: url; optional variant, quantity, ship_to, language. $0.50 per call. Returns: available, availability, price, currency, options[], matched_option, quantity_ok, ship_to_ok, shipping, eligibility_notes[], evidence[], source, confidence, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'The product, listing or booking page.'}, 'ship_to': {'type': 'string', 'maxLength': 2, 'minLength': 2, 'description': 'Optional: ISO 3166-1 alpha-2 country the order ships to.'}, 'variant': {'type': 'string', 'maxLength': 200, 'description': 'Optional: the option you want, in words (size 9 natural black; double room 12 Oct; economy).'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'quantity': {'type': 'integer', 'maximum': 100000, 'minimum': 1, 'description': 'Optional: how many you need.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'commerce.availability response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'available', 'availability', 'price', 'currency', 'options', 'options_count', 'matched_option', 'quantity_ok', 'ship_to_ok', 'eligibility_notes', 'evidence', 'source', 'javascript_rendered', 'confidence', 'checked_at'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com/products/wool-runner'], 'description': 'The page checked.'}, 'model': {'type': ['string', 'null'], 'examples': ['gemini-2.5-flash'], 'description': 'The model used, only when the model layer ran.'}, 'price': {'type': ['number', 'null'], 'examples': [110.0], 'description': "Price of the matched option, else the product's; null when not stated."}, 'title': {'type': ['string', 'null'], 'examples': ['Wool Runner'], 'description': 'Product or listing name from the page.'}, 'source': {'enum': ['jsonld', 'shopify', 'opengraph', 'llm', 'none'], 'type': 'string', 'examples': ['jsonld'], 'description': "Which layer answered: the page's JSON-LD, the Shopify product JSON, Open Graph tags, the model over the rendered page, or nothing usable."}, 'options': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'available', 'availability', 'price', 'currency'], 'properties': {'sku': {'type': ['string', 'null'], 'examples': ['WR3MNCW100'], 'description': 'SKU when the page states one.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://example.com/products/wool-runner?variant=10'], 'description': 'Option-specific URL when the page gives one.'}, 'name': {'type': 'string', 'examples': ['Natural Black / 10'], 'description': 'The option as the page names it.'}, 'price': {'type': ['number', 'null'], 'examples': [110.0], 'description': 'Price of this option; null when not stated.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'ISO 4217 code; null when not stated.'}, 'available': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Purchasable now; null when the page does not say.'}, 'availability': {'enum': ['in_stock', 'out_of_stock', 'preorder', 'backorder', 'limited', 'discontinued', 'unknown'], 'type': 'string', 'examples': ['in_stock'], 'description': 'Availability of this option.'}}, 'description': 'One purchasable variation.'}, 'description': 'Every purchasable variation the page lists (sizes, colours, dates, rooms, fares).'}, 'ship_to': {'type': ['string', 'null'], 'examples': ['US'], 'description': 'The country asked for.'}, 'variant': {'type': ['string', 'null'], 'examples': ['size 10'], 'description': 'The variant asked for, as given.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'ISO 4217 currency of `price`; null when not stated.'}, 'evidence': {'type': 'array', 'items': {'type': 'string', 'examples': ['JSON-LD Offer availability https://schema.org/InStock price 110 USD'], 'description': 'What the answer rests on: a structured-data field or an exact quote from the page.'}, 'description': 'The evidence behind the answer, best first.'}, 'language': {'type': ['string', 'null'], 'examples': ['en'], 'description': "BCP-47 tag the prose fields were written in; null for the page's own language."}, 'quantity': {'type': ['integer', 'null'], 'examples': [2], 'description': 'The quantity asked for.'}, 'shipping': {'type': ['string', 'null'], 'examples': ['Free shipping on orders over $75'], 'description': 'What the page states about shipping or delivery; null unless stated.'}, 'available': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Purchasable or bookable right now under the conditions asked; null when the page does not say.'}, 'final_url': {'type': ['string', 'null'], 'examples': ['https://example.com/products/wool-runner'], 'description': 'The URL after redirects.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When the page was read (UTC). The answer was true at this moment; nothing here is cached.'}, 'confidence': {'enum': ['high', 'medium', 'low'], 'type': 'string', 'examples': ['high'], 'description': 'high: exact structured data for the option asked; medium: page-level tags only; low: model reading or nothing found.'}, 'ship_to_ok': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Whether the page says it delivers there; null when it does not say.'}, 'http_status': {'type': ['integer', 'null'], 'examples': [200], 'description': 'HTTP status of the page fetch.'}, 'quantity_ok': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Whether that quantity can be ordered; null when the page does not say.'}, 'availability': {'enum': ['in_stock', 'out_of_stock', 'preorder', 'backorder', 'limited', 'discontinued', 'unknown'], 'type': 'string', 'examples': ['in_stock'], 'description': 'Availability of the option asked for (or of the product when no variant was named).'}, 'options_count': {'type': 'integer', 'examples': [7], 'description': 'How many options the page lists.'}, 'matched_option': {'type': ['object', 'null'], 'required': ['name', 'available', 'availability', 'price', 'currency'], 'properties': {'sku': {'type': ['string', 'null'], 'examples': ['WR3MNCW100'], 'description': 'SKU when the page states one.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://example.com/products/wool-runner?variant=10'], 'description': 'Option-specific URL when the page gives one.'}, 'name': {'type': 'string', 'examples': ['Natural Black / 10'], 'description': 'The option as the page names it.'}, 'price': {'type': ['number', 'null'], 'examples': [110.0], 'description': 'Price of this option; null when not stated.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'ISO 4217 code; null when not stated.'}, 'available': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Purchasable now; null when the page does not say.'}, 'availability': {'enum': ['in_stock', 'out_of_stock', 'preorder', 'backorder', 'limited', 'discontinued', 'unknown'], 'type': 'string', 'examples': ['in_stock'], 'description': 'Availability of this option.'}}, 'description': 'The option matching `variant`; null when no variant was asked or none matched.'}, 'eligibility_notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Ships to US, CA and GB only.'], 'description': 'A restriction or caveat the page states, or why a condition could not be checked.'}, 'examples': [[]], 'description': 'Restrictions and caveats, in words.'}, 'javascript_rendered': {'type': 'boolean', 'examples': [False], 'description': 'Whether a real browser had to render the page to answer.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_commerce_shipping
Shipping options, eligibility and cart total for a product
Can this product ship to me, for how much, and what is the cart total? Any Shopify storefront, keyless: the variant goes into a real cart session, the store's totals are read, and the store quotes its shipping options to the destination. Returns options with prices and days, eligibility (true, false with the store's reason, or the address fields still needed), subtotal and total before tax. No order placed. Input: url, ship_to{country, province, postal_code}; optional variant, quantity. $0.50 per call. Returns: url, store{platform, domain, currency}, product{id, title, handle}, variant{id, name, sku, price, available, requires_shipping}, quantity, ship_to{}, cart{subtotal, total, currency, item_count, requires_shipping}, eligible, eligibility_reasons[], missing_fields[], shipping_options[{name, price, currency, delivery_days_min, delivery_days_max, description, carrier}], cheapest_shipping{}, estimated_total{}, taxes_note, source, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url', 'ship_to'], 'properties': {'url': {'type': 'string', 'description': 'Product page on the store (…/products/<handle>).'}, 'ship_to': {'type': 'object', 'required': ['country'], 'properties': {'country': {'type': 'string', 'maxLength': 60, 'minLength': 2, 'description': 'ISO 3166-1 alpha-2 (US, JP) or the country name.'}, 'province': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'State / province / prefecture, code or name, when the country needs one.'}, 'postal_code': {'type': 'string', 'maxLength': 20, 'minLength': 1}}, 'additionalProperties': False}, 'variant': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Free-text option to buy (size 10 natural black). Default: first available.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'quantity': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'Default 1.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'commerce.shipping response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'store', 'product', 'variant', 'quantity', 'ship_to', 'cart', 'eligible', 'eligibility_reasons', 'missing_fields', 'shipping_options', 'cheapest_shipping', 'estimated_total', 'taxes_note', 'source', 'notes', 'checked_at'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.allbirds.com/products/mens-wool-runners'], 'description': 'Product page as given.'}, 'cart': {'type': ['object', 'null'], 'required': ['subtotal', 'total', 'currency', 'item_count', 'requires_shipping'], 'properties': {'total': {'type': ['number', 'null'], 'examples': [110.0], 'description': 'Cart total before shipping and tax.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Currency.'}, 'subtotal': {'type': ['number', 'null'], 'examples': [110.0], 'description': 'Items subtotal.'}, 'item_count': {'type': ['integer', 'null'], 'examples': [1], 'description': 'Units.'}, 'requires_shipping': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Cart needs shipping.'}}, 'description': "The store's own cart totals; null when the item could not be added."}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['No variant named; the first available option was quoted.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'store': {'type': 'object', 'required': ['platform', 'domain', 'currency'], 'properties': {'domain': {'type': 'string', 'examples': ['www.allbirds.com'], 'description': 'Store host.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Cart currency.'}, 'platform': {'type': 'string', 'const': 'shopify', 'description': 'Storefront platform.'}}, 'description': 'The store.'}, 'source': {'type': 'string', 'const': 'shopify-cart-api', 'description': 'Data source.'}, 'product': {'type': 'object', 'required': ['id', 'title', 'handle'], 'properties': {'id': {'type': ['integer', 'null'], 'examples': [1234567890], 'description': 'Store product id.'}, 'title': {'type': ['string', 'null'], 'examples': ["Men's Wool Runners"], 'description': 'Product title.'}, 'handle': {'type': ['string', 'null'], 'examples': ['mens-wool-runners'], 'description': 'Product handle.'}}, 'description': 'The product.'}, 'ship_to': {'type': 'object', 'required': ['country', 'province', 'postal_code'], 'properties': {'country': {'type': 'string', 'examples': ['US'], 'description': 'Destination country as given.'}, 'province': {'type': ['string', 'null'], 'examples': ['NY'], 'description': 'State/province.'}, 'postal_code': {'type': ['string', 'null'], 'examples': ['10001'], 'description': 'Postal code.'}}, 'description': 'Destination.'}, 'variant': {'type': 'object', 'required': ['id', 'name', 'sku', 'price', 'available', 'requires_shipping'], 'properties': {'id': {'type': ['integer', 'null'], 'examples': [31330825109584], 'description': 'Variant id placed in the cart.'}, 'sku': {'type': ['string', 'null'], 'examples': ['WR3MNCW090'], 'description': 'SKU.'}, 'name': {'type': ['string', 'null'], 'examples': ['9'], 'description': 'Variant name.'}, 'price': {'type': ['number', 'null'], 'examples': [110.0], 'description': 'Unit price.'}, 'available': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Store availability flag.'}, 'requires_shipping': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'Physical item.'}}, 'description': 'The variant quoted.'}, 'eligible': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'True: the store offers shipping there. False: it will not (see reasons). Null: the store needs more address fields first.'}, 'quantity': {'type': 'integer', 'examples': [1], 'description': 'Units in the cart.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'taxes_note': {'type': 'string', 'examples': ['Sales tax or VAT is computed by the store at checkout and is not included here.'], 'description': 'Where tax comes from.'}, 'missing_fields': {'type': 'array', 'items': {'type': 'string', 'examples': ['province'], 'description': 'A ship_to field the store requires.'}, 'examples': [[]], 'description': 'Address fields to add and retry.'}, 'estimated_total': {'type': ['object', 'null'], 'required': ['amount', 'currency', 'includes_tax'], 'properties': {'amount': {'type': 'number', 'examples': [110.0], 'description': 'Subtotal plus cheapest shipping.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Currency.'}, 'includes_tax': {'type': 'boolean', 'examples': [False], 'description': 'Always false: tax is computed at checkout.'}}, 'description': 'Estimated total before tax; null when not quotable.'}, 'shipping_options': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'price', 'currency', 'delivery_days_min', 'delivery_days_max', 'description', 'carrier'], 'properties': {'name': {'type': ['string', 'null'], 'examples': ['Ground Shipping'], 'description': 'Option name.'}, 'price': {'type': ['number', 'null'], 'examples': [0.0], 'description': 'Price.'}, 'carrier': {'type': ['string', 'null'], 'examples': ['ups'], 'description': 'Carrier when named.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Currency.'}, 'description': {'type': ['string', 'null'], 'examples': ['Arrives in 3-7 business days'], 'description': "Store's description."}, 'delivery_days_max': {'type': ['integer', 'null'], 'examples': [7], 'description': 'Latest delivery, days.'}, 'delivery_days_min': {'type': ['integer', 'null'], 'examples': [3], 'description': 'Earliest delivery, days.'}}, 'description': 'One shipping option.'}, 'examples': [[]], 'description': 'Options the store would show at checkout, cheapest first.'}, 'cheapest_shipping': {'type': ['object', 'null'], 'required': ['name', 'price', 'currency'], 'properties': {'name': {'type': ['string', 'null'], 'examples': ['Ground Shipping'], 'description': 'Option.'}, 'price': {'type': ['number', 'null'], 'examples': [0.0], 'description': 'Price.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Currency.'}}, 'description': 'Cheapest option; null when none.'}, 'eligibility_reasons': {'type': 'array', 'items': {'type': 'string', 'examples': ['country: Country/region not supported'], 'description': "The store's own words."}, 'examples': [[]], 'description': 'Why not eligible, or what is missing; empty when eligible.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_company_enrich
Company profile from a domain or a name
Who is this company? From a domain or a name: legal and common name, founding date, headcount with its date, industries, headquarters, parent, CEO and founders, stock listings, LEI, SEC CIK and registration number, legal form and status, official social accounts and logo. Sources: Wikidata (CC0), the global LEI register, SEC EDGAR and the company's own site (marked self-declared); every field names its source. Input: domain or name. $0.05 per call. Returns: query{}, company{name, legal_name, description, website, domain, founded, employees{count, as_of, source}, industries[], headquarters{city, country, country_code, address}, parent, ceo, founders[], logo_url, status, legal_form, jurisdiction}, identifiers{wikidata, lei, cik, registration_number, listings[], sec_tickers[], sic...}, socials{x, linkedin, facebook, instagram, github, youtube}, sources[], field_sources{}, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['domain']}, {'required': ['name']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'minLength': 2, 'description': 'Company name (Toyota), instead of a domain.'}, 'domain': {'type': 'string', 'maxLength': 253, 'minLength': 4, 'description': 'Company domain (stripe.com) or its URL.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'company.enrich response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'company', 'identifiers', 'socials', 'sources', 'field_sources', 'notes', 'checked_at'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Homepage not read.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'query': {'type': 'object', 'required': ['domain', 'name'], 'properties': {'name': {'type': ['string', 'null'], 'examples': ['Stripe'], 'description': 'Name asked.'}, 'domain': {'type': ['string', 'null'], 'examples': ['stripe.com'], 'description': 'Domain asked, normalised.'}}, 'description': 'What was asked.'}, 'company': {'type': 'object', 'required': ['name', 'legal_name', 'description', 'website', 'domain', 'founded', 'employees', 'industries', 'headquarters', 'parent', 'ceo', 'founders', 'logo_url', 'status', 'legal_form', 'jurisdiction'], 'properties': {'ceo': {'type': ['string', 'null'], 'examples': ['Patrick Collison'], 'description': 'Chief executive.'}, 'name': {'type': ['string', 'null'], 'examples': ['Stripe'], 'description': 'Common name.'}, 'domain': {'type': ['string', 'null'], 'examples': ['stripe.com'], 'description': 'Domain.'}, 'parent': {'type': ['string', 'null'], 'examples': ['Alphabet Inc.'], 'description': 'Parent organisation.'}, 'status': {'type': ['string', 'null'], 'examples': ['ACTIVE'], 'description': 'Legal entity status (LEI register).'}, 'founded': {'type': ['string', 'null'], 'examples': ['2010'], 'description': 'Founding date (year, month or day precision).'}, 'website': {'type': ['string', 'null'], 'examples': ['https://stripe.com/'], 'description': 'Official website.'}, 'founders': {'type': 'array', 'items': {'type': 'string', 'examples': ['Patrick Collison'], 'description': 'Founder.'}, 'examples': [[]], 'description': 'Founders.'}, 'logo_url': {'type': ['string', 'null'], 'examples': ['https://commons.wikimedia.org/wiki/Special:FilePath/Stripe_Logo.svg'], 'description': 'Logo file.'}, 'employees': {'type': ['object', 'null'], 'required': ['count', 'as_of', 'source'], 'properties': {'as_of': {'type': ['string', 'null'], 'examples': ['2022'], 'description': 'Date of the figure.'}, 'count': {'type': 'integer', 'examples': [8000], 'description': 'Headcount.'}, 'source': {'type': 'string', 'examples': ['wikidata'], 'description': 'Source.'}}, 'description': 'Latest known headcount; null when unknown.'}, 'industries': {'type': 'array', 'items': {'type': 'string', 'examples': ['financial services'], 'description': 'Industry.'}, 'examples': [['financial services']], 'description': 'Industries.'}, 'legal_form': {'type': ['string', 'null'], 'examples': ['Limited Liability Company'], 'description': 'Legal form.'}, 'legal_name': {'type': ['string', 'null'], 'examples': ['STRIPE, LLC'], 'description': 'Registered legal name.'}, 'description': {'type': ['string', 'null'], 'examples': ['Irish-American payment technology company'], 'description': 'One-line description.'}, 'headquarters': {'type': 'object', 'required': ['city', 'country', 'country_code', 'address'], 'properties': {'city': {'type': ['string', 'null'], 'examples': ['San Francisco'], 'description': 'City.'}, 'address': {'type': ['string', 'null'], 'examples': ['354 Oyster Point Boulevard, South San Francisco, 94080'], 'description': 'Registered headquarters address.'}, 'country': {'type': ['string', 'null'], 'examples': ['United States'], 'description': 'Country.'}, 'country_code': {'type': ['string', 'null'], 'examples': ['US'], 'description': 'ISO 3166 code.'}}, 'description': 'Headquarters.'}, 'jurisdiction': {'type': ['string', 'null'], 'examples': ['US-DE'], 'description': 'Jurisdiction.'}}, 'description': 'The company.'}, 'socials': {'type': 'object', 'required': ['x', 'linkedin', 'facebook', 'instagram', 'github', 'youtube'], 'properties': {'x': {'type': ['string', 'null'], 'examples': ['https://x.com/stripe'], 'description': 'x account.'}, 'github': {'type': ['string', 'null'], 'examples': [None], 'description': 'github account.'}, 'youtube': {'type': ['string', 'null'], 'examples': [None], 'description': 'youtube account.'}, 'facebook': {'type': ['string', 'null'], 'examples': [None], 'description': 'facebook account.'}, 'linkedin': {'type': ['string', 'null'], 'examples': [None], 'description': 'linkedin account.'}, 'instagram': {'type': ['string', 'null'], 'examples': [None], 'description': 'instagram account.'}}, 'description': 'Official social accounts.'}, 'sources': {'type': 'array', 'items': {'type': 'string', 'examples': ['Wikidata (CC0)'], 'description': 'A source used.'}, 'examples': [['Wikidata (CC0)']], 'description': 'Sources that answered.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'identifiers': {'type': 'object', 'required': ['wikidata', 'lei', 'cik', 'registration_number', 'registration_authority', 'listings', 'sec_tickers', 'sic', 'sic_description', 'state_of_incorporation'], 'properties': {'cik': {'type': ['string', 'null'], 'examples': ['1691342'], 'description': 'SEC Central Index Key.'}, 'lei': {'type': ['string', 'null'], 'examples': ['549300CLHGIPTCYHQ143'], 'description': 'Legal Entity Identifier.'}, 'sic': {'type': ['string', 'null'], 'examples': ['3571'], 'description': 'SIC code.'}, 'listings': {'type': 'array', 'items': {'type': 'object', 'required': ['ticker', 'exchange'], 'properties': {'ticker': {'type': 'string', 'examples': ['AAPL'], 'description': 'Ticker.'}, 'exchange': {'type': ['string', 'null'], 'examples': ['Nasdaq'], 'description': 'Exchange.'}}, 'description': 'A listing.'}, 'examples': [[]], 'description': 'Stock listings.'}, 'wikidata': {'type': ['string', 'null'], 'examples': ['Q7624104'], 'description': 'Wikidata item.'}, 'sec_tickers': {'type': 'array', 'items': {'type': 'string', 'examples': ['AAPL'], 'description': 'Ticker.'}, 'examples': [[]], 'description': 'Tickers on SEC file.'}, 'sic_description': {'type': ['string', 'null'], 'examples': ['Electronic Computers'], 'description': 'SIC industry.'}, 'registration_number': {'type': ['string', 'null'], 'examples': ['4675506'], 'description': 'Company registration number.'}, 'registration_authority': {'type': ['string', 'null'], 'examples': ['RA000602'], 'description': 'Registration authority id (GLEIF RA list).'}, 'state_of_incorporation': {'type': ['string', 'null'], 'examples': ['CA'], 'description': 'State of incorporation (SEC).'}}, 'description': 'Identifiers.'}, 'field_sources': {'type': 'object', 'examples': [{'name': 'wikidata', 'legal_name': 'lei_register'}], 'description': 'Which source gave each chosen field.', 'additionalProperties': {'type': 'string'}}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_data_anomalies
Detect anomalies in a time series
Anomaly detection over a BigQuery time series with AI.DETECT_ANOMALIES (TimesFM): score a target table against a history table that shares its timestamp and value columns, or give one table and its latest periods are scored against its own history. Returns every checked row with its bounds, anomaly flag and probability, plus the anomaly count. Input: history_table, target_table, timestamp_col, data_col, optional target_last, threshold and id_cols. $10.00 per call. Returns: history_table, target_table, timestamp_col, data_col, anomaly_prob_threshold, mode, target_periods, columns[], rows[], row_count, anomaly_count, gib_processed.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['history_table', 'target_table', 'timestamp_col', 'data_col'], 'properties': {'id_cols': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional: one series per value of these columns.'}, 'data_col': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'target_last': {'type': 'integer', 'maximum': 366, 'minimum': 1, 'description': 'Same table as history and target: score its latest N timestamps. Default 30.'}, 'max_scan_gib': {'type': 'number'}, 'target_table': {'type': 'string', 'description': 'project.dataset.table'}, 'history_table': {'type': 'string', 'description': 'project.dataset.table'}, 'timestamp_col': {'type': 'string'}, 'anomaly_prob_threshold': {'type': 'number', 'description': '0.5-0.999, default 0.95.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'data.anomalies response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['history_table', 'target_table', 'timestamp_col', 'data_col', 'anomaly_prob_threshold', 'mode', 'target_periods', 'columns', 'rows', 'row_count', 'anomaly_count', 'gib_processed'], 'properties': {'mode': {'enum': ['split_by_time', 'two_tables'], 'type': 'string', 'examples': ['split_by_time'], 'description': 'split_by_time: one table, its latest periods scored against the rest; two_tables: target scored against history.'}, 'rows': {'type': 'array', 'items': {'type': 'object', 'examples': [{'date': '2023-03-20', 'is_anomaly': 'false', 'state_name': 'Texas', 'confirmed_cases': '8631000', 'anomaly_probability': '0.12'}], 'required': [], 'properties': {}, 'description': 'One checked point.', 'additionalProperties': True}, 'examples': [[{'date': '2023-03-20', 'is_anomaly': 'false', 'state_name': 'Texas', 'confirmed_cases': '8631000', 'anomaly_probability': '0.12'}]], 'description': 'Checked rows with their anomaly flag.'}, 'columns': {'type': 'array', 'items': {'type': 'string', 'examples': ['is_anomaly'], 'description': 'AI.DETECT_ANOMALIES output column.'}, 'examples': [['state_name', 'date', 'confirmed_cases', 'is_anomaly', 'lower_bound', 'upper_bound', 'anomaly_probability']], 'description': 'AI.DETECT_ANOMALIES output columns.'}, 'data_col': {'type': 'string', 'examples': ['confirmed_cases'], 'description': 'Value column.'}, 'row_count': {'type': 'integer', 'examples': [10], 'description': 'Rows returned.'}, 'target_table': {'type': 'string', 'examples': ['bigquery-public-data.covid19_nyt.us_states'], 'description': 'Table checked for anomalies.'}, 'anomaly_count': {'type': 'integer', 'examples': [2], 'description': 'Rows flagged as anomalies at the threshold.'}, 'gib_processed': {'type': 'number', 'examples': [0.012], 'description': 'Gibibytes BigQuery scanned; the metered cost basis.'}, 'history_table': {'type': 'string', 'examples': ['bigquery-public-data.covid19_nyt.us_states'], 'description': 'Table the forecast is fitted on.'}, 'timestamp_col': {'type': 'string', 'examples': ['date'], 'description': 'Timestamp column.'}, 'target_periods': {'type': ['integer', 'null'], 'examples': [30], 'description': 'Latest timestamps scored in split_by_time mode; null for two tables.'}, 'anomaly_prob_threshold': {'type': 'number', 'examples': [0.95], 'description': 'Probability threshold used.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_data_forecast
Forecast a time series
Time-series forecast from a BigQuery table using Google's pretrained TimesFM model (AI.FORECAST), no model to train: point it at the table, timestamp column and value column and get forecast rows for the horizon you set. Input: table, timestamp_col, data_col, optional horizon and id_cols. $10.00 per call. Returns: table, timestamp_col, data_col, horizon, columns[], rows[], row_count, gib_processed.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['table', 'timestamp_col', 'data_col'], 'properties': {'table': {'type': 'string', 'description': 'project.dataset.table'}, 'horizon': {'type': 'integer', 'description': 'Periods to forecast, default 10.'}, 'id_cols': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional: forecast multiple series at once.'}, 'data_col': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'max_scan_gib': {'type': 'number'}, 'timestamp_col': {'type': 'string'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'data.forecast response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['table', 'timestamp_col', 'data_col', 'horizon', 'columns', 'rows', 'row_count', 'gib_processed'], 'properties': {'rows': {'type': 'array', 'items': {'type': 'object', 'examples': [{'state_name': 'Texas', 'forecast_value': '8631745.2', 'confidence_level': '0.95', 'forecast_timestamp': '2023-03-24 00:00:00'}], 'required': [], 'properties': {}, 'description': 'One forecast point.', 'additionalProperties': True}, 'examples': [[{'state_name': 'Texas', 'forecast_value': '8631745.2', 'confidence_level': '0.95', 'forecast_timestamp': '2023-03-24 00:00:00'}]], 'description': 'Forecast rows.'}, 'table': {'type': 'string', 'examples': ['bigquery-public-data.covid19_nyt.us_states'], 'description': 'Source table.'}, 'columns': {'type': 'array', 'items': {'type': 'string', 'examples': ['forecast_timestamp'], 'description': 'AI.FORECAST output column.'}, 'examples': [['state_name', 'forecast_timestamp', 'forecast_value', 'confidence_level', 'prediction_interval_lower_bound', 'prediction_interval_upper_bound', 'ai_forecast_status']], 'description': 'AI.FORECAST output columns.'}, 'horizon': {'type': 'integer', 'examples': [10], 'description': 'Forecast points requested.'}, 'data_col': {'type': 'string', 'examples': ['confirmed_cases'], 'description': 'Value column forecast.'}, 'row_count': {'type': 'integer', 'examples': [10], 'description': 'Rows returned.'}, 'gib_processed': {'type': 'number', 'examples': [0.012], 'description': 'Gibibytes BigQuery scanned; the metered cost basis.'}, 'timestamp_col': {'type': 'string', 'examples': ['date'], 'description': 'Timestamp column.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_data_macro
Official economic statistics for a country
One official economic series for one country, now: GDP, growth, GDP per capita, inflation, unemployment, population, current account, reserves, debt, exports, imports, FDI, exchange rate, interest rates, or any World Bank indicator code. Annual from the World Bank for 200+ economies; monthly from Eurostat for EU inflation and unemployment. Returns the series, latest and previous values, the change between them and the source's update stamp. Input: indicator, country; optional last, frequency. $0.10 per call. Returns: indicator{alias, code, name, unit}, country{code, name}, frequency, source, observations[{period, value}], observation_count, latest{}, previous{}, change{absolute, pct}, as_of, source_url, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['indicator', 'country'], 'properties': {'last': {'type': 'integer', 'maximum': 60, 'minimum': 1, 'description': 'Observations to return, newest last. Default 10.'}, 'country': {'type': 'string', 'maxLength': 9, 'minLength': 2, 'description': 'ISO 3166 alpha-2 or alpha-3 (JP, KOR, DE), or an EU aggregate (EA20, EU27_2020) for monthly series.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'frequency': {'enum': ['auto', 'annual', 'monthly'], 'type': 'string', 'description': 'auto picks monthly where Eurostat publishes it, else annual.'}, 'indicator': {'type': 'string', 'maxLength': 40, 'minLength': 3, 'description': 'Alias (gdp_usd, gdp_growth, gdp_per_capita_usd, inflation, unemployment, population, population_growth, current_account_gdp, reserves_usd, government_debt_gdp, exports_gdp, imports_gdp, fdi_inflows_usd, exchange_rate_per_usd, real_interest_rate, lending_rate, trade_gdp, internet_users_pct, life_expectancy, co2_per_capita) or a World Bank code (NY.GDP.MKTP.CD).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'data.macro response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['indicator', 'country', 'frequency', 'source', 'observations', 'observation_count', 'latest', 'previous', 'change', 'as_of', 'source_url', 'notes', 'checked_at'], 'properties': {'as_of': {'type': ['string', 'null'], 'examples': ['2026-07-13'], 'description': "The source's own update stamp."}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['1 of 5 periods have no published value yet.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'change': {'type': ['object', 'null'], 'required': ['absolute', 'pct'], 'properties': {'pct': {'type': ['number', 'null'], 'examples': [15.69], 'description': 'Change as a percentage of previous; null when previous is zero.'}, 'absolute': {'type': 'number', 'examples': [0.43], 'description': 'latest minus previous.'}}, 'description': 'Latest versus previous; null when either is missing.'}, 'latest': {'type': ['object', 'null'], 'required': ['period', 'value'], 'properties': {'value': {'type': 'number', 'examples': [3.17], 'description': 'Value.'}, 'period': {'type': 'string', 'examples': ['2025'], 'description': 'Period.'}}, 'description': 'Most recent published value; null when none in the window.'}, 'source': {'enum': ['world-bank', 'eurostat'], 'type': 'string', 'examples': ['world-bank'], 'description': 'Which official source answered.'}, 'country': {'type': 'object', 'required': ['code', 'name'], 'properties': {'code': {'type': 'string', 'examples': ['JP'], 'description': 'Country code as the source spells it.'}, 'name': {'type': ['string', 'null'], 'examples': ['Japan'], 'description': 'Country name from the source.'}}, 'description': 'Where.'}, 'previous': {'type': ['object', 'null'], 'required': ['period', 'value'], 'properties': {'value': {'type': 'number', 'examples': [2.74], 'description': 'Value.'}, 'period': {'type': 'string', 'examples': ['2024'], 'description': 'Period.'}}, 'description': 'The published value before it; null when none.'}, 'frequency': {'enum': ['annual', 'monthly'], 'type': 'string', 'examples': ['annual'], 'description': 'Period of the observations.'}, 'indicator': {'type': 'object', 'required': ['alias', 'code', 'name', 'unit'], 'properties': {'code': {'type': ['string', 'null'], 'examples': ['FP.CPI.TOTL.ZG'], 'description': 'World Bank indicator code; null for Eurostat monthly series.'}, 'name': {'type': ['string', 'null'], 'examples': ['Inflation, consumer prices (annual %)'], 'description': "The source's name for the series."}, 'unit': {'type': ['string', 'null'], 'examples': ['% change on a year earlier (HICP)'], 'description': 'Unit when the source states it.'}, 'alias': {'type': ['string', 'null'], 'examples': ['inflation'], 'description': 'Alias used; null for a raw code.'}}, 'description': 'What was measured.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'source_url': {'type': ['string', 'null'], 'examples': ['https://api.worldbank.org/v2/country/JP/indicator/FP.CPI.TOTL.ZG?format=json'], 'description': 'Where the numbers came from.'}, 'observations': {'type': 'array', 'items': {'type': 'object', 'required': ['period', 'value'], 'properties': {'value': {'type': ['number', 'null'], 'examples': [3.17], 'description': 'Value; null when not yet published.'}, 'period': {'type': 'string', 'examples': ['2025'], 'description': 'Year (2025) or month (2026-08).'}}, 'description': 'One observation.'}, 'description': 'Oldest first.'}, 'observation_count': {'type': 'integer', 'examples': [5], 'description': 'Observations returned.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_data_query
Run a BigQuery query
BigQuery SQL: run a read-only query, including against Google's public datasets, and get columns and rows back as JSON with the bytes processed. Every query is dry-run first and refused above the scan ceiling, so cost is bounded before it runs. Input: sql, optional max_scan_gib. Use data.question to ask in plain language instead. $0.50 per call. Returns: columns[], rows[], row_count, gib_processed, cache_hit.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['sql'], 'properties': {'sql': {'type': 'string', 'description': 'Read-only SELECT or WITH query.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'max_scan_gib': {'type': 'number', 'description': 'Optional scan ceiling.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'data.query response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['sql', 'columns', 'rows', 'row_count', 'total_rows', 'truncated', 'gib_processed', 'cache_hit'], 'properties': {'sql': {'type': 'string', 'examples': ['SELECT name, SUM(number) AS n FROM `bigquery-public-data.usa_names.usa_1910_2013` GROUP BY name ORDER BY n DESC LIMIT 5'], 'description': 'The SQL that ran.'}, 'rows': {'type': 'array', 'items': {'type': 'object', 'examples': [{'n': 4942431, 'name': 'James'}], 'required': [], 'properties': {}, 'description': 'One row keyed by column name.', 'additionalProperties': True}, 'examples': [[{'n': 4942431, 'name': 'James'}]], 'description': 'Result rows, keyed by column name.'}, 'columns': {'type': 'array', 'items': {'type': 'string', 'examples': ['name'], 'description': 'Column name.'}, 'examples': [['name', 'n']], 'description': 'Result column names, in order.'}, 'cache_hit': {'type': 'boolean', 'examples': [False], 'description': 'Whether BigQuery served it from cache (no bytes billed).'}, 'row_count': {'type': 'integer', 'examples': [5], 'description': 'Rows returned (capped).'}, 'truncated': {'type': 'boolean', 'examples': [False], 'description': 'Whether rows were cut at the cap.'}, 'total_rows': {'type': 'integer', 'examples': [5], 'description': 'Rows the query produced before the cap.'}, 'gib_processed': {'type': 'number', 'examples': [0.012], 'description': 'Gibibytes BigQuery scanned; the metered cost basis.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_data_question
Answer a question from a dataset
Plain-language question answered over any BigQuery table, including Google's public datasets: the SQL is written for you, run under a byte ceiling, and the rows read back into a written answer. Input: question and table, optional column list. Returns answer, sql, columns and rows. Use data.query when you already have the SQL. $5.00 per call. Returns: answer, sql, columns[], rows[], gib_processed.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['question', 'table'], 'properties': {'table': {'type': 'string', 'description': 'Fully qualified: project.dataset.table.'}, 'columns': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional column hints.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'question': {'type': 'string'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'data.question response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['question', 'table', 'answer', 'sql', 'columns', 'rows', 'row_count', 'gib_processed', 'model'], 'properties': {'sql': {'type': 'string', 'examples': ['SELECT name, SUM(number) AS n FROM ... LIMIT 5'], 'description': 'The SQL the model wrote and that ran.'}, 'rows': {'type': 'array', 'items': {'type': 'object', 'examples': [{'n': 4942431, 'name': 'James'}], 'required': [], 'properties': {}, 'description': 'One row keyed by column name.', 'additionalProperties': True}, 'examples': [[{'n': 4942431, 'name': 'James'}]], 'description': 'Result rows, keyed by column name.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'table': {'type': 'string', 'examples': ['bigquery-public-data.usa_names.usa_1910_2013'], 'description': 'The table queried.'}, 'answer': {'type': 'string', 'examples': ['James (4,942,431), John (4,834,422), ...'], 'description': 'The answer, read from the rows; states the figures.'}, 'columns': {'type': 'array', 'items': {'type': 'string', 'examples': ['name'], 'description': 'Column name.'}, 'examples': [['name', 'n']], 'description': 'Result column names, in order.'}, 'question': {'type': 'string', 'examples': ['Which five names were given most often?'], 'description': 'The question asked.'}, 'row_count': {'type': 'integer', 'examples': [5], 'description': 'Rows returned.'}, 'gib_processed': {'type': 'number', 'examples': [0.012], 'description': 'Gibibytes BigQuery scanned; the metered cost basis.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_domain_dns
Domain DNS, email security and TLS certificate
A domain's public setup, asked of the source: A, AAAA, CNAME, MX, NS, TXT, CAA and SOA records; its SPF and DMARC email policy, parsed; and its HTTPS certificate, verified like a browser (issuer, names, expiry, days left, TLS version). Flags missing SPF or DMARC, duplicate SPF and a certificate near expiry. No WHOIS or third-party data. Input: domain (a URL is accepted). $0.05 per call. Returns: domain, domain_ascii, exists, records{a[], aaaa[], cname[], mx[], ns[], txt[], caa[], soa[]}, email_security{spf{record, all, multiple}, dmarc{record, policy, subdomain_policy, percent, reports_to}}, tls{reachable, valid, error, ip, protocol, subject, issuer, names[], not_before, not_after, days_remaining}, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['domain'], 'properties': {'tls': {'type': 'boolean', 'description': 'Also check the HTTPS certificate. Default true.'}, 'domain': {'type': 'string', 'maxLength': 253, 'minLength': 3, 'description': 'A domain (github.com) or a URL on it.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'domain.dns response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['domain', 'domain_ascii', 'exists', 'records', 'email_security', 'tls', 'notes', 'checked_at'], 'properties': {'tls': {'type': ['object', 'null'], 'required': ['reachable', 'valid', 'error', 'ip'], 'properties': {'ip': {'type': ['string', 'null'], 'examples': ['140.82.112.3'], 'description': 'Address connected to.'}, 'error': {'type': ['string', 'null'], 'examples': ['certificate has expired'], 'description': 'Why the check failed.'}, 'names': {'type': 'array', 'items': {'type': 'string', 'examples': ['www.github.com'], 'description': 'A name the certificate covers.'}, 'examples': [[]], 'description': 'Subject alternative names.'}, 'valid': {'type': 'boolean', 'examples': [True], 'description': 'The certificate verified for this name.'}, 'issuer': {'type': ['string', 'null'], 'examples': ['Sectigo Limited'], 'description': 'Issuing CA.'}, 'subject': {'type': ['string', 'null'], 'examples': ['github.com'], 'description': 'Certificate common name.'}, 'protocol': {'type': ['string', 'null'], 'examples': ['TLSv1.3'], 'description': 'TLS version.'}, 'not_after': {'type': ['string', 'null'], 'examples': ['2026-11-29T23:59:59Z'], 'description': 'Valid until.'}, 'reachable': {'type': 'boolean', 'examples': [True], 'description': 'An HTTPS server answered on port 443.'}, 'not_before': {'type': ['string', 'null'], 'examples': ['2026-08-01T00:00:00Z'], 'description': 'Valid from.'}, 'days_remaining': {'type': ['integer', 'null'], 'examples': [62], 'description': 'Days until expiry.'}}, 'description': 'HTTPS certificate; null when not checked.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['No DMARC record.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Findings and caveats.'}, 'domain': {'type': 'string', 'examples': ['github.com'], 'description': 'The domain as given (host part).'}, 'exists': {'type': 'boolean', 'examples': [True], 'description': 'The domain exists in DNS.'}, 'records': {'type': 'object', 'required': ['a', 'aaaa', 'cname', 'mx', 'ns', 'txt', 'caa', 'soa'], 'properties': {'a': {'type': 'array', 'items': {'type': 'string', 'examples': ['140.82.112.3'], 'description': 'A A record.'}, 'examples': [[]], 'description': 'A records.'}, 'mx': {'type': 'array', 'items': {'type': 'string', 'examples': ['1 aspmx.l.google.com'], 'description': 'A MX record.'}, 'examples': [[]], 'description': 'MX records.'}, 'ns': {'type': 'array', 'items': {'type': 'string', 'examples': ['dns1.p08.nsone.net'], 'description': 'A NS record.'}, 'examples': [[]], 'description': 'NS records.'}, 'caa': {'type': 'array', 'items': {'type': 'string', 'examples': ['0 issue "digicert.com"'], 'description': 'A CAA record.'}, 'examples': [[]], 'description': 'CAA records.'}, 'soa': {'type': 'array', 'items': {'type': 'string', 'examples': ['dns1.p08.nsone.net hostmaster.nsone.net serial=1 refresh=43200 retry=7200 expire=1209600 minimum=3600'], 'description': 'A SOA record.'}, 'examples': [[]], 'description': 'SOA records.'}, 'txt': {'type': 'array', 'items': {'type': 'string', 'examples': ['v=spf1 include:_spf.google.com ~all'], 'description': 'A TXT record.'}, 'examples': [[]], 'description': 'TXT records.'}, 'aaaa': {'type': 'array', 'items': {'type': 'string', 'examples': ['2606:50c0:8000::153'], 'description': 'A AAAA record.'}, 'examples': [[]], 'description': 'AAAA records.'}, 'cname': {'type': 'array', 'items': {'type': 'string', 'examples': ['github.github.io'], 'description': 'A CNAME record.'}, 'examples': [[]], 'description': 'CNAME records.'}}, 'description': 'Records by type; empty when none.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'domain_ascii': {'type': 'string', 'examples': ['github.com'], 'description': 'ASCII (punycode) form queried.'}, 'email_security': {'type': 'object', 'required': ['spf', 'dmarc'], 'properties': {'spf': {'type': ['object', 'null'], 'required': ['record', 'all', 'multiple'], 'properties': {'all': {'enum': ['fail', 'softfail', 'neutral', 'pass', None], 'type': ['string', 'null'], 'examples': ['softfail'], 'description': 'What the record says about everyone else.'}, 'record': {'type': 'string', 'examples': ['v=spf1 include:_spf.google.com ~all'], 'description': 'The SPF record.'}, 'multiple': {'type': 'boolean', 'examples': [False], 'description': 'More than one SPF record (an error).'}}, 'description': 'SPF; null when there is none.'}, 'dmarc': {'type': ['object', 'null'], 'required': ['record', 'policy', 'subdomain_policy', 'percent', 'reports_to'], 'properties': {'policy': {'type': ['string', 'null'], 'examples': ['reject'], 'description': 'p= policy.'}, 'record': {'type': 'string', 'examples': ['v=DMARC1; p=reject'], 'description': 'The DMARC record.'}, 'percent': {'type': ['integer', 'null'], 'examples': [100], 'description': 'pct= value.'}, 'reports_to': {'type': ['string', 'null'], 'examples': ['mailto:dmarc@example.com'], 'description': 'rua= address.'}, 'subdomain_policy': {'type': ['string', 'null'], 'examples': ['reject'], 'description': 'sp= policy.'}}, 'description': 'DMARC; null when there is none.'}}, 'description': 'Email authentication policy.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_email_verify
Verify an email address before you send
Will mail to this address arrive? Checked now at the source: syntax, the domain's own DNS (MX, null MX, no such domain) and its own mail server, asked whether the mailbox exists and whether it accepts every address (catch-all). No message is sent. Flags disposable domains, role accounts (info@, sales@), free providers, likely typos (gmial.com) and the mail provider. Verdict: deliverable, undeliverable, risky or unknown, with the reason. Input: email. $0.02 per call. Returns: email, normalized, local_part, domain, domain_ascii, verdict, reason, syntax_valid, domain_exists, accepts_mail, mx[{host, priority}], mail_provider, mailbox{checked, exists, catch_all, smtp_code, smtp_message, mx_host}, disposable, role_account, free_provider, did_you_mean, disposable_list_as_of, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['email'], 'properties': {'email': {'type': 'string', 'maxLength': 320, 'minLength': 3, 'description': 'One email address, such as jane@example.com.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'email.verify response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['email', 'normalized', 'local_part', 'domain', 'domain_ascii', 'verdict', 'reason', 'syntax_valid', 'domain_exists', 'accepts_mail', 'mx', 'mail_provider', 'mailbox', 'disposable', 'role_account', 'free_provider', 'did_you_mean', 'disposable_list_as_of', 'notes', 'checked_at'], 'properties': {'mx': {'type': 'array', 'items': {'type': 'object', 'required': ['host', 'priority'], 'properties': {'host': {'type': 'string', 'examples': ['aspmx.l.google.com'], 'description': 'Mail server host.'}, 'priority': {'type': 'integer', 'examples': [1], 'description': 'MX preference (lower is tried first).'}}, 'description': 'One mail server.'}, 'examples': [[]], 'description': "The domain's mail servers, in the order mail tries them."}, 'email': {'type': 'string', 'examples': ['support@github.com'], 'description': 'The address as given.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Role address: it usually reaches a team or a shared inbox, not one person.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'domain': {'type': 'string', 'examples': ['github.com'], 'description': 'The domain as given.'}, 'reason': {'enum': ['mailbox_exists', 'invalid_syntax', 'domain_not_found', 'domain_accepts_no_mail', 'no_mail_server', 'mailbox_not_found', 'disposable_domain', 'accept_all_domain', 'smtp_refused', 'smtp_try_later', 'smtp_unreachable', 'smtp_inconclusive'], 'type': 'string', 'examples': ['mailbox_exists'], 'description': 'Why the verdict is what it is.'}, 'mailbox': {'type': 'object', 'required': ['checked', 'exists', 'catch_all', 'smtp_code', 'smtp_message', 'mx_host'], 'properties': {'exists': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'The mailbox exists; null when it could not be proved.'}, 'checked': {'type': 'boolean', 'examples': [True], 'description': 'The mail server gave a yes-or-no answer about the mailbox.'}, 'mx_host': {'type': ['string', 'null'], 'examples': ['aspmx.l.google.com'], 'description': 'The mail server that answered.'}, 'catch_all': {'type': ['boolean', 'null'], 'examples': [False], 'description': 'The server also accepted a random address on the domain; null when not tested.'}, 'smtp_code': {'type': ['integer', 'null'], 'examples': [250], 'description': "The server's reply code to the mailbox question."}, 'smtp_message': {'type': ['string', 'null'], 'examples': ['2.1.5 OK'], 'description': "The server's reply text, trimmed."}}, 'description': 'What the mail server said.'}, 'verdict': {'enum': ['deliverable', 'undeliverable', 'risky', 'unknown'], 'type': 'string', 'examples': ['deliverable'], 'description': 'deliverable: the mail server confirmed the mailbox. undeliverable: bad syntax, no such domain, no mail server, or no such mailbox. risky: disposable domain or a server that accepts every address. unknown: the server would not say.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'disposable': {'type': 'boolean', 'examples': [False], 'description': 'The domain is a known throwaway-mail domain.'}, 'local_part': {'type': 'string', 'examples': ['support'], 'description': 'The part before @.'}, 'normalized': {'type': ['string', 'null'], 'examples': ['support@github.com'], 'description': 'Local part with the domain lower-cased and punycoded; null when the syntax is invalid.'}, 'accepts_mail': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'The domain has somewhere to deliver mail (MX or address fallback); null when not looked up.'}, 'did_you_mean': {'type': ['string', 'null'], 'examples': ['jane@gmail.com'], 'description': 'A likely intended address when the domain looks like a typo of a common provider.'}, 'domain_ascii': {'type': ['string', 'null'], 'examples': ['github.com'], 'description': 'The domain in ASCII (punycode for internationalised names); null when invalid.'}, 'role_account': {'type': 'boolean', 'examples': [True], 'description': 'The local part is a role (info, sales, support...), not a person.'}, 'syntax_valid': {'type': 'boolean', 'examples': [True], 'description': 'The address is well-formed.'}, 'domain_exists': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'The domain exists in DNS; null when not looked up.'}, 'free_provider': {'type': 'boolean', 'examples': [False], 'description': 'A free consumer mail provider (gmail.com, outlook.com...).'}, 'mail_provider': {'type': ['string', 'null'], 'examples': ['google'], 'description': "Who runs the domain's mail (google, microsoft, yahoo, zoho, proton, amazon_ses...); null when not recognised."}, 'disposable_list_as_of': {'type': ['string', 'null'], 'examples': ['2026-09-28'], 'description': 'Date of the disposable-domain list used.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_extract_page
Web page extraction
Web page to clean text: fetch any URL in a real browser (JavaScript-rendered pages included) and return the readable text, title, description and links. Input: url. Use fetch.raw when you need the raw HTTP status, headers and body; research.brief when you want a question answered from the page. $0.10 per call. Returns: title, description, text, text_chars, links[], javascript_rendered.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'http(s) URL to fetch.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'extract.page response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'text', 'text_chars', 'truncated', 'links', 'javascript_rendered'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com'], 'description': 'The URL requested.'}, 'text': {'type': 'string', 'examples': ['Example Domain. This domain is for use in illustrative examples...'], 'description': 'Readable text of the page.'}, 'links': {'type': 'array', 'items': {'type': 'object', 'required': ['href'], 'properties': {'href': {'type': 'string', 'examples': ['https://example.com/pricing'], 'description': 'Absolute href.'}, 'text': {'type': 'string', 'examples': ['Pricing'], 'description': 'Anchor text.'}}, 'description': 'One link on the page.'}, 'examples': [[{'href': 'https://www.iana.org/domains/example', 'text': 'More information...'}]], 'description': 'Up to 100 links on the page.'}, 'title': {'type': ['string', 'null'], 'examples': ['Example Domain'], 'description': 'Page title.'}, 'final_url': {'type': ['string', 'null'], 'examples': ['https://example.com/'], 'description': 'The URL after redirects.'}, 'truncated': {'type': 'boolean', 'examples': [False], 'description': 'Whether the text was cut at the extraction limit.'}, 'text_chars': {'type': 'integer', 'examples': [172], 'description': 'Characters in `text`.'}, 'description': {'type': ['string', 'null'], 'examples': ['Example Domain for documentation.'], 'description': 'Meta description.'}, 'javascript_rendered': {'type': 'boolean', 'examples': [True], 'description': 'Whether a real browser rendered the page first.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_fetch_raw
Raw HTTP fetch
Raw HTTP fetch: GET any URL and get exactly what the server sent, status code, headers and body, plus the final URL after redirects. Every status is a result, so a 404 or 500 from the target is delivered, not failed. Input: url. Use extract.page for readable text from a rendered page. $0.10 per call. Returns: url, final_url, status, content_type, bytes, text, truncated, headers{}.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'http(s) URL to fetch.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'fetch.raw response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'status', 'bytes', 'truncated', 'headers'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com'], 'description': 'The URL requested.'}, 'text': {'type': ['string', 'null'], 'examples': ['<!doctype html><html>...'], 'description': 'Body text for textual content types; null for binary.'}, 'bytes': {'type': 'integer', 'examples': [1256], 'description': 'Response body size in bytes.'}, 'status': {'type': 'integer', 'examples': [200], 'description': 'HTTP status the target returned; any status is a completed fetch.'}, 'headers': {'type': 'object', 'examples': [{'content-type': 'text/html; charset=UTF-8', 'cache-control': 'max-age=604800'}], 'required': [], 'properties': {}, 'description': 'Response headers, lower-cased names.', 'additionalProperties': {'type': 'string'}}, 'final_url': {'type': ['string', 'null'], 'examples': ['https://example.com/'], 'description': 'The URL after redirects.'}, 'truncated': {'type': 'boolean', 'examples': [False], 'description': 'Whether `text` was cut at the fetch limit.'}, 'content_type': {'type': ['string', 'null'], 'examples': ['text/html; charset=UTF-8'], 'description': 'Content-Type header.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_finance_analytics
Trading mathematics: returns, risk, drawdown, VaR, beta, indicators, options, Kelly
Deterministic trading mathematics over a price series you supply or a ticker fetched live: returns and CAGR, annualized volatility, Sharpe and Sortino, max drawdown, historical and parametric VaR/CVaR, beta, alpha and correlation vs a benchmark, SMA/EMA, RSI, Bollinger bands, Black-Scholes price with Greeks, and the Kelly fraction. Exactly rounded sums, every formula named in the result, the same input always the same numbers; no LLM in the path. Input: prices or symbol, plus options. $0.50 per call. Returns: source{}, n, n_returns, periods_per_year, metrics_computed[], returns{}, volatility{}, sharpe, sortino, drawdown{}, var{}, beta{}, moving_averages{}, rsi{}, bollinger{}, black_scholes{}, kelly{}, notes[], method, as_of, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'oneOf': [{'required': ['prices']}, {'required': ['symbol']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'alpha': {'type': 'number', 'maximum': 0.5, 'description': 'Tail probability for VaR/CVaR. Default 0.05.', 'exclusiveMinimum': 0}, 'kelly': {'type': 'object', 'required': ['win_probability', 'win_loss_ratio'], 'properties': {'win_loss_ratio': {'type': 'number', 'description': 'Average win / average loss (b in b:1).', 'exclusiveMinimum': 0}, 'win_probability': {'type': 'number', 'maximum': 1, 'minimum': 0}}, 'description': 'Bet parameters for the Kelly fraction (enables kelly).', 'additionalProperties': False}, 'range': {'enum': ['1d', '5d', '1mo', '3mo', '6mo', '1y', '2y', '5y'], 'type': 'string', 'description': 'History range with `symbol`, default 1y.'}, 'option': {'type': 'object', 'required': ['type', 'strike', 'time_to_expiry_years'], 'properties': {'rate': {'type': 'number', 'description': 'Continuous risk-free rate; default risk_free_rate.'}, 'spot': {'type': 'number', 'description': 'Default: the last price of the series.', 'exclusiveMinimum': 0}, 'type': {'enum': ['call', 'put'], 'type': 'string'}, 'strike': {'type': 'number', 'exclusiveMinimum': 0}, 'volatility': {'type': 'number', 'description': "Annual volatility as a fraction; default: the series' annualized log-return volatility.", 'exclusiveMinimum': 0}, 'dividend_yield': {'type': 'number', 'minimum': 0, 'description': 'Continuous yield, default 0.'}, 'time_to_expiry_years': {'type': 'number', 'exclusiveMinimum': 0}}, 'description': 'European option to price with Black-Scholes-Merton (enables black_scholes).', 'additionalProperties': False}, 'prices': {'type': 'array', 'items': {'oneOf': [{'type': 'number', 'description': 'A price.', 'exclusiveMinimum': 0}, {'type': 'object', 'required': ['close'], 'properties': {'date': {'type': 'string'}, 'close': {'type': 'number', 'exclusiveMinimum': 0}}, 'description': '{date, close}.', 'additionalProperties': True}]}, 'maxItems': 100000, 'minItems': 2, 'description': 'Prices oldest first: numbers, or {date, close} objects. Use this OR `symbol`.'}, 'symbol': {'type': 'string', 'pattern': '^[A-Za-z][A-Za-z0-9.\\-]{0,11}$', 'description': 'Fetch the series live instead of `prices` (daily closes). Use this OR `prices`.'}, 'metrics': {'type': 'array', 'items': {'enum': ['returns', 'volatility', 'sharpe', 'sortino', 'drawdown', 'var', 'beta', 'moving_averages', 'rsi', 'bollinger', 'black_scholes', 'kelly'], 'type': 'string'}, 'minItems': 1, 'description': 'Which results to compute. Default: returns, volatility, sharpe, sortino, drawdown, var, moving_averages, rsi, bollinger, plus beta/black_scholes/kelly when their inputs are given.', 'uniqueItems': True}, 'windows': {'type': 'object', 'properties': {'ema': {'oneOf': [{'type': 'integer', 'maximum': 5000, 'minimum': 2}, {'type': 'array', 'items': {'type': 'integer', 'maximum': 5000, 'minimum': 2}, 'maxItems': 10, 'minItems': 1}]}, 'rsi': {'oneOf': [{'type': 'integer', 'maximum': 5000, 'minimum': 2}, {'type': 'array', 'items': {'type': 'integer', 'maximum': 5000, 'minimum': 2}, 'maxItems': 10, 'minItems': 1}]}, 'sma': {'oneOf': [{'type': 'integer', 'maximum': 5000, 'minimum': 2}, {'type': 'array', 'items': {'type': 'integer', 'maximum': 5000, 'minimum': 2}, 'maxItems': 10, 'minItems': 1}]}, 'bollinger': {'oneOf': [{'type': 'integer', 'maximum': 5000, 'minimum': 2}, {'type': 'array', 'items': {'type': 'integer', 'maximum': 5000, 'minimum': 2}, 'maxItems': 10, 'minItems': 1}]}}, 'description': 'Indicator windows. Default sma [20,50,200], ema [12,26], rsi 14, bollinger 20.', 'additionalProperties': False}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'risk_free_rate': {'type': 'number', 'maximum': 10, 'minimum': -1, 'description': 'Annual risk-free rate as a fraction (0.04 = 4%). Default 0.'}, 'benchmark_prices': {'type': 'array', 'items': {'oneOf': [{'type': 'number', 'description': 'A price.', 'exclusiveMinimum': 0}, {'type': 'object', 'required': ['close'], 'properties': {'date': {'type': 'string'}, 'close': {'type': 'number', 'exclusiveMinimum': 0}}, 'description': '{date, close}.', 'additionalProperties': True}]}, 'maxItems': 100000, 'minItems': 2, 'description': 'Benchmark series for beta/alpha/correlation, same order as `prices`.'}, 'benchmark_symbol': {'type': 'string', 'pattern': '^[A-Za-z][A-Za-z0-9.\\-]{0,11}$', 'description': 'Benchmark fetched live (e.g. SPY) for beta/alpha/correlation.'}, 'periods_per_year': {'type': 'integer', 'maximum': 100000, 'minimum': 1, 'description': 'Annualization basis: 252 trading days (default), 12 months, 365 days, 52 weeks.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'finance.analytics response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['source', 'n', 'n_returns', 'periods_per_year', 'risk_free_rate', 'metrics_computed', 'returns', 'volatility', 'sharpe', 'sortino', 'drawdown', 'var', 'beta', 'moving_averages', 'rsi', 'bollinger', 'black_scholes', 'kelly', 'notes', 'method', 'as_of', 'checked_at'], 'properties': {'n': {'type': 'integer', 'examples': [22], 'description': 'Prices in the series.'}, 'rsi': {'type': ['object', 'null'], 'required': ['window', 'value'], 'properties': {'value': {'type': ['number', 'null'], 'examples': [71.2], 'description': 'Wilder RSI 0-100; null when too few prices.'}, 'window': {'type': 'integer', 'examples': [14], 'description': 'Window.'}}, 'description': 'Relative strength index.'}, 'var': {'type': ['object', 'null'], 'required': ['alpha', 'horizon_periods', 'historical_var', 'parametric_z'], 'properties': {'alpha': {'type': 'number', 'examples': [0.05], 'description': 'Tail probability.'}, 'parametric_z': {'type': 'number', 'examples': [-1.6449], 'description': 'z at alpha.'}, 'historical_var': {'type': 'number', 'examples': [0.0158], 'description': 'Loss not exceeded with probability 1-alpha, as a positive fraction.'}, 'parametric_var': {'type': ['number', 'null'], 'examples': [0.0137], 'description': 'Normal-model VaR, -(mean + z*std).'}, 'historical_cvar': {'type': ['number', 'null'], 'examples': [0.0167], 'description': 'Mean loss beyond the VaR.'}, 'horizon_periods': {'type': 'integer', 'examples': [1], 'description': 'Horizon in periods.'}}, 'description': 'Value at risk, one period.'}, 'beta': {'type': ['object', 'null'], 'required': ['n', 'beta'], 'properties': {'n': {'type': 'integer', 'examples': [21], 'description': 'Aligned returns used.'}, 'beta': {'type': ['number', 'null'], 'examples': [1.12], 'description': 'cov/var vs the benchmark.'}, 'correlation': {'type': ['number', 'null'], 'examples': [0.83], 'description': 'Pearson correlation of period returns.'}, 'alpha_annualized': {'type': ['number', 'null'], 'examples': [0.31], 'description': "Annualized Jensen's alpha."}, 'benchmark_annualized_volatility': {'type': ['number', 'null'], 'examples': [0.18], 'description': 'Benchmark volatility, annualized.'}}, 'description': 'Against the benchmark; null unless one was given.'}, 'as_of': {'type': ['string', 'null'], 'examples': ['2026-09-25'], 'description': 'Date or timestamp of the last price (from the dates given or the source).'}, 'kelly': {'type': ['object', 'null'], 'required': ['win_probability', 'win_loss_ratio', 'fraction', 'half_kelly', 'bet'], 'properties': {'bet': {'type': 'boolean', 'examples': [True], 'description': 'Whether the fraction is positive.'}, 'fraction': {'type': 'number', 'examples': [0.25], 'description': 'Kelly fraction p - (1-p)/b.'}, 'half_kelly': {'type': 'number', 'examples': [0.125], 'description': 'Half Kelly.'}, 'win_loss_ratio': {'type': 'number', 'examples': [1.5], 'description': 'b.'}, 'win_probability': {'type': 'number', 'examples': [0.55], 'description': 'p.'}}, 'description': 'Kelly criterion.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['rsi needs at least 15 prices.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats about undefined or aligned metrics.'}, 'method': {'type': 'string', 'examples': ['simple returns p_t/p_{t-1}-1 and log returns...'], 'description': 'Every formula used, in words.'}, 'sharpe': {'type': ['number', 'null'], 'examples': [9.8], 'description': 'Annualized Sharpe ratio; null when undefined.'}, 'source': {'type': 'object', 'required': ['type'], 'properties': {'type': {'enum': ['prices', 'symbol'], 'type': 'string', 'examples': ['prices'], 'description': 'Inline prices or a live-fetched series.'}, 'range': {'type': ['string', 'null'], 'examples': ['1y'], 'description': 'Range fetched, with type symbol.'}, 'symbol': {'type': ['string', 'null'], 'examples': ['AAPL'], 'description': 'Ticker, with type symbol.'}, 'provider': {'type': ['string', 'null'], 'examples': ['nasdaq-data-api'], 'description': 'Provider that served the series.'}, 'benchmark_n': {'type': ['integer', 'null'], 'examples': [250], 'description': 'Benchmark prices used.'}, 'benchmark_symbol': {'type': ['string', 'null'], 'examples': ['SPY'], 'description': 'Benchmark ticker when fetched.'}}, 'description': 'Where the series came from.'}, 'returns': {'type': ['object', 'null'], 'required': ['n_returns', 'first_price', 'last_price', 'total_return', 'mean_period_return'], 'properties': {'cagr': {'type': ['number', 'null'], 'examples': [7.9], 'description': 'Compound annual growth rate over n_returns/periods_per_year years.'}, 'n_returns': {'type': 'integer', 'examples': [21], 'description': 'Period returns.'}, 'last_price': {'type': 'number', 'examples': [120.0], 'description': 'Last price.'}, 'best_period': {'type': 'number', 'examples': [0.0227], 'description': 'Largest period return.'}, 'first_price': {'type': 'number', 'examples': [100.0], 'description': 'First price.'}, 'total_return': {'type': 'number', 'examples': [0.2], 'description': 'last/first - 1.'}, 'worst_period': {'type': 'number', 'examples': [-0.0167], 'description': 'Smallest period return.'}, 'mean_log_return': {'type': 'number', 'examples': [0.0087], 'description': 'Mean log return per period.'}, 'mean_period_return': {'type': 'number', 'examples': [0.0088], 'description': 'Mean simple return per period.'}, 'annualized_mean_return': {'type': 'number', 'examples': [2.2], 'description': 'mean_period_return * periods_per_year.'}}, 'description': 'Return statistics.'}, 'sortino': {'type': ['number', 'null'], 'examples': [23.6], 'description': 'Annualized Sortino ratio; null when undefined.'}, 'drawdown': {'type': ['object', 'null'], 'required': ['max_drawdown', 'peak_index', 'trough_index', 'recovery_index', 'duration_periods'], 'properties': {'peak_index': {'type': 'integer', 'examples': [3], 'description': 'Index of the peak.'}, 'max_drawdown': {'type': 'number', 'examples': [-0.0167], 'description': 'Largest peak-to-trough fall as a fraction (negative or 0).'}, 'trough_index': {'type': 'integer', 'examples': [4], 'description': 'Index of the trough.'}, 'recovery_index': {'type': ['integer', 'null'], 'examples': [6], 'description': 'First index back at the peak; null when not recovered.'}, 'duration_periods': {'type': 'integer', 'examples': [1], 'description': 'Periods from peak to trough.'}}, 'description': 'Maximum drawdown.'}, 'bollinger': {'type': ['object', 'null'], 'required': ['window', 'k', 'middle', 'upper', 'lower'], 'properties': {'k': {'type': 'number', 'examples': [2.0], 'description': 'Band width in standard deviations.'}, 'lower': {'type': 'number', 'examples': [105.9], 'description': 'Lower band.'}, 'upper': {'type': 'number', 'examples': [121.1], 'description': 'Upper band.'}, 'middle': {'type': 'number', 'examples': [113.5], 'description': 'SMA.'}, 'window': {'type': 'integer', 'examples': [20], 'description': 'Window.'}, 'bandwidth': {'type': ['number', 'null'], 'examples': [0.134], 'description': '(upper-lower)/middle.'}, 'percent_b': {'type': ['number', 'null'], 'examples': [0.93], 'description': 'Where the last price sits in the band (0 lower, 1 upper).'}}, 'description': 'Bollinger bands at the last price.'}, 'last_date': {'type': ['string', 'null'], 'examples': ['2026-09-25'], 'description': 'Last date when dates were given.'}, 'n_returns': {'type': 'integer', 'examples': [21], 'description': 'Period returns (n - 1).'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'first_date': {'type': ['string', 'null'], 'examples': ['2026-08-26'], 'description': 'First date when dates were given.'}, 'volatility': {'type': ['object', 'null'], 'required': ['period_std', 'annualized'], 'properties': {'annualized': {'type': ['number', 'null'], 'examples': [0.217], 'description': 'period_std * sqrt(periods_per_year).'}, 'period_std': {'type': ['number', 'null'], 'examples': [0.0137], 'description': 'Sample standard deviation of period returns.'}, 'log_return_std': {'type': ['number', 'null'], 'examples': [0.0136], 'description': 'Sample standard deviation of log returns.'}, 'downside_deviation_annualized': {'type': ['number', 'null'], 'examples': [0.09], 'description': 'Annualized downside deviation vs the risk-free rate.'}}, 'description': 'Dispersion of returns.'}, 'black_scholes': {'type': ['object', 'null'], 'required': ['type', 'price', 'delta', 'gamma', 'vega', 'theta', 'rho', 'inputs'], 'properties': {'d1': {'type': 'number', 'examples': [0.11], 'description': 'd1.'}, 'd2': {'type': 'number', 'examples': [-0.04], 'description': 'd2.'}, 'rho': {'type': 'number', 'examples': [29.8], 'description': 'dV/dr per 1.0 of rate.'}, 'type': {'enum': ['call', 'put'], 'type': 'string', 'examples': ['call'], 'description': 'Option type.'}, 'vega': {'type': 'number', 'examples': [33.1], 'description': 'dV/dsigma per 1.0 of volatility.'}, 'delta': {'type': 'number', 'examples': [0.54], 'description': 'dV/dS.'}, 'gamma': {'type': 'number', 'examples': [0.024], 'description': 'd2V/dS2.'}, 'price': {'type': 'number', 'examples': [4.83], 'description': 'Option value.'}, 'theta': {'type': 'number', 'examples': [-6.9], 'description': 'dV/dt per year.'}, 'inputs': {'type': 'object', 'required': ['spot', 'strike', 'rate', 'volatility', 'time_to_expiry_years', 'dividend_yield'], 'properties': {'rate': {'type': 'number', 'examples': [0.04], 'description': 'r.'}, 'spot': {'type': 'number', 'examples': [120.0], 'description': 'S.'}, 'strike': {'type': 'number', 'examples': [120.0], 'description': 'K.'}, 'volatility': {'type': 'number', 'examples': [0.217], 'description': 'sigma.'}, 'dividend_yield': {'type': 'number', 'examples': [0.0], 'description': 'q.'}, 'time_to_expiry_years': {'type': 'number', 'examples': [0.5], 'description': 'T.'}}, 'description': 'The inputs used, including any defaulted from the series.'}}, 'description': 'Black-Scholes-Merton.'}, 'risk_free_rate': {'type': 'number', 'examples': [0.04], 'description': 'Annual risk-free rate used.'}, 'moving_averages': {'type': ['object', 'null'], 'required': ['sma', 'ema', 'last_price'], 'properties': {'ema': {'type': 'object', 'examples': [{'20': 116.4, '50': 110.2}], 'required': [], 'properties': {}, 'description': 'Value per window, keyed by the window length.', 'additionalProperties': {'type': ['number', 'null']}}, 'sma': {'type': 'object', 'examples': [{'20': 116.4, '50': 110.2}], 'required': [], 'properties': {}, 'description': 'Value per window, keyed by the window length.', 'additionalProperties': {'type': ['number', 'null']}}, 'last_price': {'type': 'number', 'examples': [120.0], 'description': 'Last price, for comparison.'}}, 'description': 'Simple and exponential moving averages at the last price.'}, 'metrics_computed': {'type': 'array', 'items': {'type': 'string', 'examples': ['returns'], 'description': 'A metric name.'}, 'examples': [['returns', 'volatility', 'sharpe']], 'description': 'Metrics present (non-null) in this result.'}, 'periods_per_year': {'type': 'integer', 'examples': [252], 'description': 'Annualization basis.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_identity_check
Identity check: sanctions, email, phone and IP in one call
Vet a person or company before onboarding, in one call: the name screened against the OFAC, UK and EU sanctions lists; the email's mailbox, disposable and role checks; the phone's validity, country and line type; the IP's country and network. Returns each result, flags (sanctions hit, disposable email, VoIP, countries that disagree...) and one risk level: low, review or high. Input: any of name, email, phone, ip; optional country, birth_year. $0.10 per call. Returns: input{}, risk (low | review | high), flags[{code, severity, detail}], checks{sanctions, email, phone, ip}, checks_run[], checks_failed[], notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['name']}, {'required': ['email']}, {'required': ['phone']}, {'required': ['ip']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'ip': {'type': 'string', 'maxLength': 45, 'minLength': 2, 'description': "The client's IPv4 or IPv6 address."}, 'name': {'type': 'string', 'maxLength': 200, 'minLength': 2, 'description': 'Person or company name to screen against sanctions lists.'}, 'email': {'type': 'string', 'maxLength': 320, 'minLength': 3, 'description': 'Email address to verify.'}, 'phone': {'type': 'string', 'maxLength': 40, 'minLength': 3, 'description': 'Phone number, international (+44 20 7946 0958) or national with `phone_region`.'}, 'country': {'type': 'string', 'maxLength': 60, 'minLength': 2, 'description': 'Country the person says they are in (US or United States), compared with phone and IP.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'birth_year': {'type': 'integer', 'maximum': 2030, 'minimum': 1880, 'description': 'Birth year, to narrow sanctions matches for a person.'}, 'phone_region': {'type': 'string', 'pattern': '^[A-Za-z]{2}$', 'description': 'Two-letter country for a national-format phone number.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'identity.check response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['input', 'risk', 'flags', 'checks', 'checks_run', 'checks_failed', 'notes', 'checked_at'], 'properties': {'risk': {'enum': ['low', 'review', 'high'], 'type': 'string', 'examples': ['review'], 'description': 'high: a high-severity flag (sanctions match). review: a medium flag. low: none or only low flags.'}, 'flags': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'severity', 'detail'], 'properties': {'code': {'type': 'string', 'examples': ['country_mismatch_ip'], 'description': 'Flag code.'}, 'detail': {'type': 'string', 'examples': ['Stated country GB but the ip is in United States.'], 'description': 'What was found.'}, 'severity': {'enum': ['high', 'medium', 'low'], 'type': 'string', 'examples': ['low'], 'description': 'How much it matters.'}}}, 'examples': [[]], 'description': 'Everything worth a look, most severe first.'}, 'input': {'type': 'object', 'required': ['name', 'email', 'phone', 'ip', 'country', 'birth_year'], 'properties': {'ip': {'type': ['string', 'null'], 'examples': ['8.8.8.8'], 'description': 'IP checked.'}, 'name': {'type': ['string', 'null'], 'examples': ['Jane Smith'], 'description': 'Name screened.'}, 'email': {'type': ['string', 'null'], 'examples': ['jane@stripe.com'], 'description': 'Email checked.'}, 'phone': {'type': ['string', 'null'], 'examples': ['+44 20 7031 3000'], 'description': 'Phone checked.'}, 'country': {'type': ['string', 'null'], 'examples': ['GB'], 'description': 'Stated country.'}, 'birth_year': {'type': ['integer', 'null'], 'examples': [1980], 'description': 'Birth year given.'}}, 'description': 'What was checked.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Flags are leads to review, not a determination.'], 'description': 'A note.'}, 'examples': [[]], 'description': 'Notes.'}, 'checks': {'type': 'object', 'required': ['sanctions', 'email', 'phone', 'ip'], 'properties': {'ip': {'type': ['object', 'null'], 'required': ['scope'], 'properties': {'scope': {'type': 'string', 'examples': ['public'], 'description': 'public, private, reserved...'}}, 'description': 'ip.lookup result (scope, location, network, reverse_dns, attribution), or null.'}, 'email': {'type': ['object', 'null'], 'required': ['verdict', 'reason'], 'properties': {'reason': {'type': 'string', 'examples': ['mailbox_exists'], 'description': 'Why.'}, 'verdict': {'type': 'string', 'examples': ['deliverable'], 'description': 'email.verify verdict.'}}, 'description': 'email.verify result (verdict, reason, disposable, role_account, free_provider, did_you_mean...), or null.'}, 'phone': {'type': ['object', 'null'], 'required': ['valid', 'line_type'], 'properties': {'valid': {'type': 'boolean', 'examples': [True], 'description': 'Valid number.'}, 'line_type': {'type': 'string', 'examples': ['fixed_line'], 'description': 'Line type.'}}, 'description': 'phone.parse result (valid, e164, country, region, carrier, line_type), or null.'}, 'sanctions': {'type': ['object', 'null'], 'required': ['verdict', 'match_count'], 'properties': {'verdict': {'enum': ['potential_match', 'no_match', 'incomplete'], 'type': 'string', 'examples': ['no_match'], 'description': 'Screen verdict.'}, 'match_count': {'type': 'integer', 'examples': [0], 'description': 'Matches.'}}, 'description': 'sanctions.screen result (verdict, match_count, matches[], lists[]), or null.'}}, 'description': "Each check's result; null when not asked for or failed."}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'checks_run': {'type': 'array', 'items': {'type': 'string', 'examples': ['sanctions'], 'description': 'A check that completed.'}, 'examples': [['sanctions', 'email']], 'description': 'Checks that completed.'}, 'checks_failed': {'type': 'array', 'items': {'type': 'string', 'examples': ['email'], 'description': 'A check that did not complete.'}, 'examples': [[]], 'description': 'Checks that failed; the rest still ship.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_image_generate
Generate an image
Image generation: one image from a text prompt with Imagen 4, returned as base64-encoded image bytes with its MIME type. Input: prompt, optional aspect_ratio. $0.50 per call. Returns: prompt, aspect_ratio, image_base64, mime_type, model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['prompt'], 'properties': {'prompt': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'aspect_ratio': {'type': 'string', 'description': '1:1, 3:4, 4:3, 16:9 or 9:16. Default 1:1.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'image.generate response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['prompt', 'aspect_ratio', 'image_base64', 'mime_type', 'model'], 'properties': {'model': {'type': 'string', 'examples': ['imagen-4.0-generate-001'], 'description': 'Image model.'}, 'prompt': {'type': 'string', 'examples': ['A beehive built from circuit boards, isometric illustration'], 'description': 'The prompt.'}, 'mime_type': {'type': 'string', 'examples': ['image/png'], 'description': 'Image MIME type.'}, 'aspect_ratio': {'type': 'string', 'examples': ['1:1'], 'description': 'Aspect ratio generated.'}, 'image_base64': {'type': 'string', 'examples': ['iVBORw0KGgo...'], 'description': 'The image, base64.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_ip_lookup
IP address lookup: location, network owner, reverse DNS
Where is this IP address and who runs it? City, region, country and coordinates, the network's ASN and organisation, its reverse DNS name, and whether it is public, private or reserved. IPv4 and IPv6. Location data: DB-IP Lite (CC BY 4.0, credited in every answer), updated monthly. Location is the network's registered place, never a street address. Input: ip. $0.02 per call. Returns: ip, version, scope, reverse_dns[], location{city, region, country, country_code, continent, latitude, longitude}, network{asn, organization}, database_month, attribution{text, url, license}, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ip'], 'properties': {'ip': {'type': 'string', 'maxLength': 45, 'minLength': 2, 'description': 'One IPv4 or IPv6 address, such as 8.8.8.8.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'ip.lookup response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['ip', 'version', 'scope', 'reverse_dns', 'location', 'network', 'database_month', 'attribution', 'notes', 'checked_at'], 'properties': {'ip': {'type': 'string', 'examples': ['8.8.8.8'], 'description': 'The address, normalised.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['IP location is approximate.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats.'}, 'scope': {'enum': ['public', 'private', 'loopback', 'link_local', 'multicast', 'shared', 'reserved'], 'type': 'string', 'examples': ['public'], 'description': 'public addresses are looked up; others are described from the address alone.'}, 'network': {'type': ['object', 'null'], 'required': ['asn', 'organization'], 'properties': {'asn': {'type': ['integer', 'null'], 'examples': [15169], 'description': 'Autonomous system number.'}, 'organization': {'type': ['string', 'null'], 'examples': ['Google LLC'], 'description': 'Network operator.'}}, 'description': 'Who runs the network; null when unknown.'}, 'version': {'type': 'integer', 'examples': [4], 'description': '4 or 6.'}, 'location': {'type': ['object', 'null'], 'required': ['city', 'region', 'country', 'country_code', 'continent', 'latitude', 'longitude'], 'properties': {'city': {'type': ['string', 'null'], 'examples': ['Mountain View'], 'description': 'City.'}, 'region': {'type': ['string', 'null'], 'examples': ['California'], 'description': 'Region or state.'}, 'country': {'type': ['string', 'null'], 'examples': ['United States'], 'description': 'Country.'}, 'latitude': {'type': ['number', 'null'], 'examples': [37.422], 'description': 'Latitude.'}, 'continent': {'type': ['string', 'null'], 'examples': ['North America'], 'description': 'Continent.'}, 'longitude': {'type': ['number', 'null'], 'examples': [-122.085], 'description': 'Longitude.'}, 'country_code': {'type': ['string', 'null'], 'examples': ['US'], 'description': 'ISO code.'}}, 'description': 'Registered location; null for a non-public or unknown address.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'attribution': {'type': 'object', 'required': ['text', 'url', 'license'], 'properties': {'url': {'type': 'string', 'examples': ['https://db-ip.com'], 'description': 'Credit link.'}, 'text': {'type': 'string', 'examples': ['IP Geolocation by DB-IP'], 'description': 'Credit required by the licence.'}, 'license': {'type': 'string', 'examples': ['Creative Commons Attribution 4.0 International'], 'description': 'Data licence.'}}, 'description': 'Data credit.'}, 'reverse_dns': {'type': 'array', 'items': {'type': 'string', 'examples': ['dns.google'], 'description': 'A PTR name.'}, 'examples': [['dns.google']], 'description': 'Reverse DNS names.'}, 'database_month': {'type': ['string', 'null'], 'examples': ['2026-09'], 'description': 'DB-IP Lite edition used (YYYY-MM).'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_llm_analyze
Analyse text
Answer a question from text you supply, using Gemini. Grounded in the material only: if the text does not contain the answer it says so instead of guessing. Input: text and question. Use llm.extract for fixed JSON fields, llm.generate for a free-form completion. $0.25 per call. Returns: answer, model, tokens{prompt,output}.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'Material to analyse.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'question': {'type': 'string', 'description': 'What to answer. Optional.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'llm.analyze response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['question', 'answer', 'model', 'input_chars', 'tokens'], 'properties': {'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'answer': {'type': 'string', 'examples': ['It sells machine-payable site audits at $0.05 per call.'], 'description': 'The answer, from the material only; says so when the material does not contain it.'}, 'tokens': {'type': 'object', 'required': ['prompt', 'output'], 'properties': {'output': {'type': 'integer', 'examples': [88], 'description': 'Output tokens billed by the provider.'}, 'prompt': {'type': 'integer', 'examples': [312], 'description': 'Prompt tokens billed by the provider.'}}, 'description': 'Token usage for the call.'}, 'question': {'type': 'string', 'examples': ['What does it sell, and at what price?'], 'description': 'The question asked of the material.'}, 'input_chars': {'type': 'integer', 'examples': [61], 'description': 'Characters of material analysed.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_llm_extract
Extract fields as JSON
Structured data extraction: pull the fields you name out of text and get a JSON object with exactly those keys, null for anything the text does not state. Input: text and a list of field names. For extraction from a live web page use research.page_facts. $0.25 per call. Returns: fields{} with one key per requested field.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['text', 'fields'], 'properties': {'text': {'type': 'string'}, 'fields': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Field names to extract.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'llm.extract response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['fields', 'model', 'tokens'], 'properties': {'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'fields': {'type': 'object', 'examples': [{'title': 'HubVibe', 'pricing': '$0.05 per call'}], 'required': [], 'properties': {}, 'description': 'Exactly the requested field names; null where the material does not state a value.', 'additionalProperties': True}, 'tokens': {'type': 'object', 'required': ['prompt', 'output'], 'properties': {'output': {'type': 'integer', 'examples': [88], 'description': 'Output tokens billed by the provider.'}, 'prompt': {'type': 'integer', 'examples': [312], 'description': 'Prompt tokens billed by the provider.'}}, 'description': 'Token usage for the call.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_llm_generate
Raw text completion
LLM text generation: a raw completion from your prompt, with optional system message, max_tokens and temperature. Gemini by default; optional provider and model fields select another configured model. Input: prompt. Nothing is prescribed about the answer's shape; use llm.analyze for an answer grounded in text you supply. $0.25 per call. Returns: text, model, provider, finish_reason, usage{input_tokens,output_tokens}.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['prompt'], 'properties': {'model': {'type': 'string', 'description': 'Optional: a specific model from that provider.'}, 'prompt': {'type': 'string', 'description': 'The prompt.'}, 'system': {'type': 'string', 'description': 'Optional system message.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'provider': {'type': 'string', 'description': 'Optional: gemini or anthropic.'}, 'max_tokens': {'type': 'integer', 'description': '1-4096, default 1024.'}, 'temperature': {'type': 'number', 'description': '0-2, default 0.7.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'llm.generate response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['text', 'model', 'provider', 'usage'], 'properties': {'text': {'type': 'string', 'examples': ['Here is a short poem about bees...'], 'description': 'The completion.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model used.'}, 'usage': {'type': 'object', 'required': ['input_tokens', 'output_tokens'], 'properties': {'input_tokens': {'type': 'integer', 'examples': [14], 'description': 'Input tokens.'}, 'output_tokens': {'type': 'integer', 'examples': [96], 'description': 'Output tokens.'}}, 'description': 'Token usage.'}, 'provider': {'type': 'string', 'examples': ['gemini'], 'description': 'The provider that served it.'}, 'finish_reason': {'type': ['string', 'null'], 'examples': ['STOP'], 'description': 'Why generation stopped.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_maps_places
Find places near a location
Places near a location, anywhere: 'coffee near the Ferry Building, San Francisco', 'ramen near Shibuya Station', 'pharmacy' at coordinates. From Overture Maps' open places data (80M+ places, monthly releases): name, category, distance, address, website, phone, brand, operating status, confidence and source datasets, nearest first; the area widens when nothing is close. Input: query; optional near, lat and lng, radius_m, limit. $0.10 per call. Returns: query, what, near{name, lat, lon, source}, radius_m, places[{id, name, category, distance_m, lat, lon, address, country, website, phone, brand, operating_status, confidence, sources[]}], place_count, attribution[], notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'lat': {'type': 'number', 'maximum': 90, 'minimum': -90, 'description': 'Latitude of the center.'}, 'lng': {'type': 'number', 'maximum': 180, 'minimum': -180, 'description': 'Longitude of the center.'}, 'near': {'type': 'string', 'maxLength': 200, 'description': 'Where, if not in the query: a place, US address or airport code.'}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Most places to return. Default 10.'}, 'query': {'type': 'string', 'maxLength': 300, 'minLength': 1, 'description': "What and where: 'coffee near the Ferry Building, San Francisco'."}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'radius_m': {'type': 'number', 'maximum': 10000, 'minimum': 50, 'description': 'Search radius in metres. Default 1000.'}, 'region_code': {'type': 'string', 'description': 'Accepted for compatibility; the location decides the area.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'maps.places response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'what', 'near', 'radius_m', 'places', 'place_count', 'attribution', 'notes', 'checked_at'], 'properties': {'near': {'type': 'object', 'required': ['name', 'lat', 'lon', 'source'], 'properties': {'lat': {'type': 'number', 'examples': [37.7955], 'description': 'Latitude.'}, 'lon': {'type': 'number', 'examples': [-122.3937], 'description': 'Longitude.'}, 'name': {'type': ['string', 'null'], 'examples': ['San Francisco Ferry Building (building in San Francisco)'], 'description': 'Where the search centred.'}, 'source': {'type': 'string', 'examples': ['Wikidata Q1060289'], 'description': 'How the center was found.'}}, 'description': 'The search center.'}, 'what': {'type': 'string', 'examples': ['coffee'], 'description': 'What was searched for.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Nothing matched within 1000 m; the search was widened to 4000 m.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'query': {'type': 'string', 'examples': ['coffee near the Ferry Building, San Francisco'], 'description': 'The query as given.'}, 'places': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'category', 'distance_m', 'lat', 'lon', 'address', 'country', 'website', 'phone', 'brand', 'operating_status', 'confidence', 'sources'], 'properties': {'id': {'type': 'string', 'examples': ['8333e7a5-b1ca-4c61-969d-5543d8de977a'], 'description': 'Overture place id (GERS).'}, 'lat': {'type': ['number', 'null'], 'examples': [37.7953], 'description': 'Latitude.'}, 'lon': {'type': ['number', 'null'], 'examples': [-122.3931], 'description': 'Longitude.'}, 'name': {'type': ['string', 'null'], 'examples': ['Red Bay Coffee Ferry Building'], 'description': 'Name.'}, 'brand': {'type': ['string', 'null'], 'examples': ['Red Bay Coffee'], 'description': 'Brand.'}, 'phone': {'type': ['string', 'null'], 'examples': ['(415) 983-8000'], 'description': 'Phone.'}, 'address': {'type': ['string', 'null'], 'examples': ['Ferry Building, 1, San Francisco, CA, 94111'], 'description': 'Address.'}, 'country': {'type': ['string', 'null'], 'examples': ['US'], 'description': 'ISO country.'}, 'sources': {'type': 'array', 'items': {'type': 'string', 'examples': ['meta'], 'description': 'Source dataset.'}, 'examples': [['meta']], 'description': 'Datasets behind this place.'}, 'website': {'type': ['string', 'null'], 'examples': ['http://redbaycoffee.com'], 'description': 'Website.'}, 'category': {'type': ['string', 'null'], 'examples': ['coffee_shop'], 'description': 'Category.'}, 'confidence': {'type': 'number', 'examples': [0.942], 'description': "Overture's confidence the place exists (0-1)."}, 'distance_m': {'type': 'integer', 'examples': [54], 'description': 'Distance from the center.'}, 'operating_status': {'type': ['string', 'null'], 'examples': ['open'], 'description': 'open, temporarily_closed...'}}, 'description': 'A place.'}, 'description': 'Places, category matches first, then nearest.'}, 'radius_m': {'type': 'integer', 'examples': [1000], 'description': 'Radius searched (widened when nothing was close).'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://docs.overturemaps.org/attribution/'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Places data from Overture Maps Foundation ...'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': 'Credits to show with the data.'}, 'place_count': {'type': 'integer', 'examples': [10], 'description': 'Places returned.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_maps_route
Compute a route
Directions and travel time between two named places through Google Maps Grounding Lite. Input: origin, destination, optional travel_mode (DRIVE, WALK, BICYCLE or TRANSIT; default DRIVE). $0.10 per call. Returns: origin, destination, travel_mode, result (route, per Maps Grounding Lite's own shape).
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination'], 'properties': {'origin': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'destination': {'type': 'string'}, 'travel_mode': {'type': 'string', 'description': 'DRIVE, WALK, BICYCLE or TRANSIT. Default DRIVE.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'maps.route response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['origin', 'destination', 'travel_mode', 'result'], 'properties': {'origin': {'type': 'string', 'examples': ['San Francisco, CA'], 'description': 'Origin as given.'}, 'result': {'type': 'object', 'examples': [{'routes': [{'duration': '1362s', 'distanceMeters': 19870}]}], 'description': "The route, in Google Maps Grounding Lite's own response shape."}, 'destination': {'type': 'string', 'examples': ['Oakland, CA'], 'description': 'Destination as given.'}, 'travel_mode': {'enum': ['DRIVE', 'WALK', 'BICYCLE', 'TRANSIT'], 'type': 'string', 'examples': ['DRIVE'], 'description': 'Travel mode used.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_maps_weather
Weather at a location, now and for seven days
Weather anywhere on Earth: current conditions, the next 24 hours and a seven-day forecast (temperature, precipitation, wind, humidity, cloud, pressure, condition) from MET Norway's forecast model, plus active US National Weather Service alerts for US locations. Input: location as a place name, US street address or airport code, or lat and lng. Carries the sources' required credits. $0.10 per call. Returns: location, place{name, lat, lon, country, source}, current{time, temperature_c, wind_speed_ms, wind_direction_deg, humidity_pct, cloud_cover_pct, pressure_hpa, condition, precipitation_mm}, hourly[24], daily[7]{date, min_c, max_c, precipitation_mm, condition}, alerts[], alerts_covered, units{}, forecast_updated_at, attribution[], sections_failed[], notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['location']}, {'required': ['lat', 'lng']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'lat': {'type': 'number', 'maximum': 90, 'minimum': -90, 'description': 'Latitude, instead of a location.'}, 'lng': {'type': 'number', 'maximum': 180, 'minimum': -180, 'description': 'Longitude, instead of a location.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'location': {'type': 'string', 'maxLength': 200, 'minLength': 2, 'description': 'Place name (Kyoto), US street address, or airport code (JFK).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'maps.weather response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['location', 'place', 'current', 'hourly', 'daily', 'alerts', 'alerts_covered', 'units', 'forecast_updated_at', 'attribution', 'sections_failed', 'notes', 'checked_at'], 'properties': {'daily': {'type': 'array', 'items': {'type': 'object', 'required': ['date', 'min_c', 'max_c', 'precipitation_mm', 'condition'], 'properties': {'date': {'type': 'string', 'examples': ['2026-09-29'], 'description': 'Day (UTC).'}, 'max_c': {'type': ['number', 'null'], 'examples': [21.4], 'description': 'High.'}, 'min_c': {'type': ['number', 'null'], 'examples': [12.1], 'description': 'Low.'}, 'condition': {'type': ['string', 'null'], 'examples': ['partlycloudy_day'], 'description': 'Midday symbol.'}, 'precipitation_mm': {'type': 'number', 'examples': [1.2], 'description': 'Total precipitation.'}}, 'description': 'One day.'}, 'description': 'Up to seven days.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['alerts: NWS alerts timed out'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'place': {'type': 'object', 'required': ['name', 'lat', 'lon', 'country', 'source'], 'properties': {'lat': {'type': 'number', 'examples': [35.0117], 'description': 'Latitude.'}, 'lon': {'type': 'number', 'examples': [135.7683], 'description': 'Longitude.'}, 'name': {'type': ['string', 'null'], 'examples': ['Kyoto (city in Japan)'], 'description': 'Where it resolved.'}, 'source': {'type': 'string', 'examples': ['Wikidata Q34600'], 'description': 'How the place was found.'}, 'country': {'type': ['string', 'null'], 'examples': ['US'], 'description': 'ISO country when known.'}}, 'description': 'The point forecast.'}, 'units': {'type': 'object', 'required': ['temperature', 'wind_speed', 'precipitation', 'pressure'], 'properties': {'pressure': {'type': 'string', 'examples': ['hPa'], 'description': 'Unit.'}, 'wind_speed': {'type': 'string', 'examples': ['m/s'], 'description': 'Unit.'}, 'temperature': {'type': 'string', 'examples': ['celsius'], 'description': 'Unit.'}, 'precipitation': {'type': 'string', 'examples': ['mm'], 'description': 'Unit.'}}, 'description': 'Units.'}, 'alerts': {'type': 'array', 'items': {'type': 'object', 'required': ['event', 'severity', 'headline', 'effective', 'expires'], 'properties': {'event': {'type': ['string', 'null'], 'examples': ['Air Quality Alert'], 'description': 'Alert type.'}, 'expires': {'type': ['string', 'null'], 'examples': ['2026-09-29T00:00:00-05:00'], 'description': 'Until.'}, 'headline': {'type': ['string', 'null'], 'examples': ['Air Quality Alert issued September 28 ...'], 'description': 'Headline.'}, 'severity': {'type': ['string', 'null'], 'examples': ['Moderate'], 'description': 'Severity.'}, 'effective': {'type': ['string', 'null'], 'examples': ['2026-09-28T12:00:00-05:00'], 'description': 'From.'}}, 'description': 'An active NWS alert.'}, 'examples': [[]], 'description': 'Active US National Weather Service alerts; empty outside the US or when none.'}, 'hourly': {'type': 'array', 'items': {'type': 'object', 'required': ['time', 'temperature_c', 'wind_speed_ms', 'wind_direction_deg', 'humidity_pct', 'cloud_cover_pct', 'pressure_hpa', 'condition', 'precipitation_mm'], 'properties': {'time': {'type': ['string', 'null'], 'examples': ['2026-09-28T16:00:00Z'], 'description': 'Hour (UTC).'}, 'condition': {'type': ['string', 'null'], 'examples': ['fair_day'], 'description': 'MET symbol code.'}, 'humidity_pct': {'type': ['number', 'null'], 'examples': [83.7], 'description': 'Relative humidity.'}, 'pressure_hpa': {'type': ['number', 'null'], 'examples': [1013.5], 'description': 'Sea-level pressure.'}, 'temperature_c': {'type': ['number', 'null'], 'examples': [14.6], 'description': 'Air temperature.'}, 'wind_speed_ms': {'type': ['number', 'null'], 'examples': [2.7], 'description': 'Wind speed.'}, 'cloud_cover_pct': {'type': ['number', 'null'], 'examples': [13.3], 'description': 'Cloud cover.'}, 'precipitation_mm': {'type': ['number', 'null'], 'examples': [0.0], 'description': 'Precipitation in the next hour.'}, 'wind_direction_deg': {'type': ['number', 'null'], 'examples': [172.4], 'description': 'Wind from.'}}, 'description': 'Weather at one hour.'}, 'description': 'The next 24 hours.'}, 'current': {'type': 'object', 'required': ['time', 'temperature_c', 'wind_speed_ms', 'wind_direction_deg', 'humidity_pct', 'cloud_cover_pct', 'pressure_hpa', 'condition', 'precipitation_mm'], 'properties': {'time': {'type': ['string', 'null'], 'examples': ['2026-09-28T16:00:00Z'], 'description': 'Hour (UTC).'}, 'condition': {'type': ['string', 'null'], 'examples': ['fair_day'], 'description': 'MET symbol code.'}, 'humidity_pct': {'type': ['number', 'null'], 'examples': [83.7], 'description': 'Relative humidity.'}, 'pressure_hpa': {'type': ['number', 'null'], 'examples': [1013.5], 'description': 'Sea-level pressure.'}, 'temperature_c': {'type': ['number', 'null'], 'examples': [14.6], 'description': 'Air temperature.'}, 'wind_speed_ms': {'type': ['number', 'null'], 'examples': [2.7], 'description': 'Wind speed.'}, 'cloud_cover_pct': {'type': ['number', 'null'], 'examples': [13.3], 'description': 'Cloud cover.'}, 'precipitation_mm': {'type': ['number', 'null'], 'examples': [0.0], 'description': 'Precipitation in the next hour.'}, 'wind_direction_deg': {'type': ['number', 'null'], 'examples': [172.4], 'description': 'Wind from.'}}, 'description': 'Weather at one hour.'}, 'location': {'type': ['string', 'null'], 'examples': ['Kyoto'], 'description': 'Location as given; null when coordinates were sent.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url', 'license'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.met.no/en'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Data from MET Norway'], 'description': 'Credit.'}, 'license': {'type': 'string', 'examples': ['CC BY 4.0'], 'description': 'Licence.'}}, 'description': 'A required credit.'}, 'description': 'Credits to show with the data.'}, 'alerts_covered': {'type': 'boolean', 'examples': [True], 'description': 'Whether alerts were checked (US points).'}, 'sections_failed': {'type': 'array', 'items': {'type': 'string', 'examples': ['alerts'], 'description': 'A section whose source did not answer.'}, 'examples': [[]], 'description': 'Empty when none.'}, 'forecast_updated_at': {'type': ['string', 'null'], 'examples': ['2026-09-28T13:18:23Z'], 'description': 'When MET Norway last updated this forecast.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_fundamentals
SEC-filed fundamentals (XBRL company facts)
Company fundamentals as the filer reported them to the SEC: revenue, net income, diluted EPS, operating income, assets, liabilities, equity, cash and shares outstanding by reporting period (10-K and 10-Q), from EDGAR's official XBRL company-facts API, read at call time. Name your own XBRL concepts for any other line item; restatements resolve to the latest filing. Input: symbol (US ticker) or cik; optional concepts, periods, forms. $0.05 per call. Returns: symbol, cik, entity_name, concepts{name: {concept, taxonomy, label, unit, values[]}}, concepts_missing[], periods, forms, as_of, source, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['symbol']}, {'required': ['cik']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'cik': {'type': ['integer', 'string'], 'description': 'SEC Central Index Key, e.g. 320193.'}, 'forms': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1, 'description': 'Restrict to these forms, e.g. ["10-K"] for annual figures only.'}, 'symbol': {'type': 'string', 'pattern': '^[A-Za-z][A-Za-z0-9.\\-]{0,11}$', 'description': "US ticker in the SEC's table, e.g. AAPL. Use this OR `cik`."}, 'periods': {'type': 'integer', 'maximum': 40, 'minimum': 1, 'description': 'Most recent reporting periods per concept, default 8.'}, 'concepts': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 25, 'minItems': 1, 'description': 'XBRL concept names (us-gaap, ifrs-full or dei). Default: Revenues, NetIncomeLoss, EarningsPerShareDiluted, OperatingIncomeLoss, Assets, Liabilities, StockholdersEquity, CashAndCashEquivalentsAtCarryingValue, EntityCommonStockSharesOutstanding.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.fundamentals response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['cik', 'concepts', 'concepts_missing', 'periods', 'as_of', 'source', 'checked_at'], 'properties': {'cik': {'type': 'integer', 'examples': [320193], 'description': 'SEC Central Index Key.'}, 'as_of': {'type': ['string', 'null'], 'examples': ['2026-07-31'], 'description': 'Latest filing date among the values returned.'}, 'forms': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'examples': [['10-K', '10-Q']], 'description': 'Form filter applied, or null.'}, 'source': {'type': 'string', 'const': 'sec-edgar-xbrl-companyfacts', 'description': 'Data source.'}, 'symbol': {'type': ['string', 'null'], 'examples': ['AAPL'], 'description': 'Ticker as given.'}, 'periods': {'type': 'integer', 'examples': [8], 'description': 'Periods per concept requested.'}, 'concepts': {'type': 'object', 'examples': [{'Revenues': {'unit': 'USD', 'label': 'Revenue from Contract with Customer, Excluding Assessed Tax', 'values': [{'end': '2026-06-27', 'form': '10-Q', 'unit': 'USD', 'filed': '2026-07-31', 'frame': 'CY2026Q2', 'start': '2026-03-29', 'value': 109417000000, 'fiscal_year': 2026, 'fiscal_period': 'Q3'}], 'concept': 'RevenueFromContractWithCustomerExcludingAssessedTax', 'taxonomy': 'us-gaap'}}], 'required': [], 'properties': {}, 'description': 'One entry per concept found, keyed by the name asked for.', 'additionalProperties': {'type': 'object', 'required': ['concept', 'taxonomy', 'unit', 'values'], 'properties': {'unit': {'type': 'string', 'examples': ['USD'], 'description': 'Unit of every value.'}, 'label': {'type': ['string', 'null'], 'examples': ['Revenue from Contract with Customer, Excluding Assessed Tax'], 'description': "The concept's label."}, 'values': {'type': 'array', 'items': {'type': 'object', 'required': ['end', 'value', 'unit'], 'properties': {'end': {'type': 'string', 'examples': ['2026-06-27'], 'description': 'Period end (YYYY-MM-DD).'}, 'form': {'type': ['string', 'null'], 'examples': ['10-Q'], 'description': 'Form it was reported on.'}, 'unit': {'type': 'string', 'examples': ['USD'], 'description': 'XBRL unit.'}, 'filed': {'type': ['string', 'null'], 'examples': ['2026-07-31'], 'description': 'Filing date.'}, 'frame': {'type': ['string', 'null'], 'examples': ['CY2026Q2'], 'description': 'SEC calendar frame when assigned.'}, 'start': {'type': ['string', 'null'], 'examples': ['2026-03-29'], 'description': 'Period start for flows; null for instants (balance-sheet items).'}, 'value': {'type': 'number', 'examples': [109417000000], 'description': 'The reported value, in `unit`.'}, 'fiscal_year': {'type': ['integer', 'null'], 'examples': [2026], 'description': "Filer's fiscal year."}, 'fiscal_period': {'type': ['string', 'null'], 'examples': ['Q3'], 'description': 'FY, Q1, Q2 or Q3.'}}, 'description': 'One reported value.'}, 'examples': [[{'end': '2026-06-27', 'form': '10-Q', 'unit': 'USD', 'filed': '2026-07-31', 'frame': 'CY2026Q2', 'start': '2026-03-29', 'value': 109417000000, 'fiscal_year': 2026, 'fiscal_period': 'Q3'}]], 'description': "Reported values, newest period first, one per reported (start, end) period: a quarter and the year-to-date figure that share an end date are separate entries; a restated period shows the latest filing's figure."}, 'concept': {'type': 'string', 'examples': ['RevenueFromContractWithCustomerExcludingAssessedTax'], 'description': 'The XBRL concept actually used (an alternate may stand in for the one asked).'}, 'taxonomy': {'type': 'string', 'examples': ['us-gaap'], 'description': 'us-gaap, ifrs-full or dei.'}}, 'description': "One concept's reported values."}}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'entity_name': {'type': ['string', 'null'], 'examples': ['Apple Inc.'], 'description': 'Registrant name.'}, 'concepts_missing': {'type': 'array', 'items': {'type': 'string', 'examples': ['Liabilities'], 'description': 'A concept the filer has not reported.'}, 'examples': [[]], 'description': 'Concepts asked for that the filer has no facts for.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_insiders
Insider trades from SEC Form 4 filings
What a company's officers, directors and 10% owners bought and sold, parsed from the Form 4s they filed with the SEC, read at call time from EDGAR. Each trade: insider, role, date, code and meaning, shares, price, value, holdings after, 10b5-1 plan flag, filing link. Summary: open-market buys vs sells, net shares and dollars, distinct insiders. Input: symbol (US ticker) or cik; optional days (default 90), codes such as ["P","S"], max_filings. $0.10 per call. Returns: symbol, cik, issuer_name, window, codes, filings_read, transactions[] (insider, role, date, code, code_meaning, shares, price, value, shares_after, rule_10b5_1, filing_url), transaction_count, summary, as_of, notes[], source, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['symbol']}, {'required': ['cik']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'cik': {'type': ['integer', 'string'], 'description': 'SEC Central Index Key of the issuer, e.g. 1045810.'}, 'days': {'type': 'integer', 'maximum': 365, 'minimum': 1, 'description': 'Look back this many days by filing date. Default 90.'}, 'codes': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1, 'description': 'Keep only these Form 4 transaction codes, e.g. ["P"] for open-market buys, ["P", "S"] for buys and sells. Default: all.'}, 'symbol': {'type': 'string', 'pattern': '^[A-Za-z][A-Za-z0-9.\\-]{0,11}$', 'description': "US ticker in the SEC's table, e.g. NVDA. Use this OR `cik`."}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'max_filings': {'type': 'integer', 'maximum': 40, 'minimum': 1, 'description': 'Most recent Form 4 filings to read. Default 20.'}, 'include_derivatives': {'type': 'boolean', 'description': 'Include option and other derivative lines. Default true.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.insiders response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['cik', 'window', 'filings_read', 'transactions', 'transaction_count', 'summary', 'as_of', 'notes', 'source', 'checked_at'], 'properties': {'cik': {'type': 'integer', 'examples': [1045810], 'description': "Issuer's SEC Central Index Key."}, 'as_of': {'type': ['string', 'null'], 'examples': ['2026-09-24'], 'description': 'Most recent filing date read.'}, 'codes': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'examples': [['P', 'S']], 'description': 'Transaction-code filter applied, or null.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Stopped at max_filings=20.'], 'description': 'Anything left out, and why.'}, 'examples': [[]], 'description': 'Notes.'}, 'source': {'type': 'string', 'const': 'sec-edgar-form4', 'description': 'Data source.'}, 'symbol': {'type': ['string', 'null'], 'examples': ['NVDA'], 'description': 'Ticker as given.'}, 'window': {'type': 'object', 'required': ['days', 'from', 'to'], 'properties': {'to': {'type': 'string', 'examples': ['2026-09-28'], 'description': 'Today, UTC.'}, 'days': {'type': 'integer', 'examples': [90], 'description': 'Look-back in days.'}, 'from': {'type': 'string', 'examples': ['2026-06-30'], 'description': 'First filing date included.'}}, 'description': 'Filing-date window searched.'}, 'summary': {'type': 'object', 'required': ['open_market_purchases', 'open_market_sales', 'net_shares', 'net_value_usd', 'planned_sales_10b5_1'], 'properties': {'net_shares': {'type': 'number', 'examples': [-2900740], 'description': 'Purchased minus sold.'}, 'net_value_usd': {'type': ['number', 'null'], 'examples': [-653017053.02], 'description': 'Purchased minus sold, USD.'}, 'open_market_sales': {'type': 'object', 'required': ['transactions', 'shares', 'value_usd', 'insiders'], 'properties': {'shares': {'type': 'number', 'examples': [2900740], 'description': 'Shares.'}, 'insiders': {'type': 'integer', 'examples': [2], 'description': 'Distinct insiders.'}, 'value_usd': {'type': ['number', 'null'], 'examples': [653017053.02], 'description': 'Dollar value.'}, 'transactions': {'type': 'integer', 'examples': [17], 'description': 'Lines.'}}, 'description': 'Code S lines, non-derivative.'}, 'planned_sales_10b5_1': {'type': 'integer', 'examples': [3], 'description': 'Sales made under a 10b5-1 plan.'}, 'open_market_purchases': {'type': 'object', 'required': ['transactions', 'shares', 'value_usd', 'insiders'], 'properties': {'shares': {'type': 'number', 'examples': [0], 'description': 'Shares.'}, 'insiders': {'type': 'integer', 'examples': [0], 'description': 'Distinct insiders.'}, 'value_usd': {'type': ['number', 'null'], 'examples': [None], 'description': 'Dollar value.'}, 'transactions': {'type': 'integer', 'examples': [0], 'description': 'Lines.'}}, 'description': 'Code P lines, non-derivative.'}}, 'description': 'Open-market buying against selling.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'issuer_name': {'type': ['string', 'null'], 'examples': ['NVIDIA CORP'], 'description': 'Issuer name from EDGAR.'}, 'filings_read': {'type': 'integer', 'examples': [12], 'description': 'Form 4 documents read.'}, 'transactions': {'type': 'array', 'items': {'type': 'object', 'required': ['insider', 'role', 'date', 'code', 'code_meaning', 'shares', 'price', 'value', 'derivative', 'rule_10b5_1', 'filed', 'form', 'filing_url'], 'properties': {'code': {'type': ['string', 'null'], 'examples': ['S'], 'description': 'Form 4 transaction code.'}, 'date': {'type': ['string', 'null'], 'examples': ['2026-09-04'], 'description': 'Transaction date.'}, 'form': {'type': 'string', 'examples': ['4'], 'description': '4 or 4/A.'}, 'role': {'type': 'string', 'examples': ['director'], 'description': 'Officer title, director, 10% owner.'}, 'filed': {'type': 'string', 'examples': ['2026-09-08'], 'description': 'Filing date.'}, 'price': {'type': ['number', 'null'], 'examples': [230.4039], 'description': 'Price per share, USD.'}, 'value': {'type': ['number', 'null'], 'examples': [45431041.0], 'description': 'shares x price, USD.'}, 'shares': {'type': ['number', 'null'], 'examples': [197180], 'description': 'Shares in this line.'}, 'insider': {'type': ['string', 'null'], 'examples': ['STEVENS MARK A'], 'description': 'Reporting person(s) as filed.'}, 'security': {'type': ['string', 'null'], 'examples': ['Common Stock'], 'description': 'Security title.'}, 'footnotes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Weighted average price.'], 'description': 'A footnote on this line.'}, 'examples': [[]], 'description': 'Footnotes.'}, 'ownership': {'type': ['string', 'null'], 'examples': ['D'], 'description': 'D direct, I indirect.'}, 'derivative': {'type': 'boolean', 'examples': [False], 'description': 'An option or other derivative line.'}, 'filing_url': {'type': 'string', 'examples': ['https://www.sec.gov/Archives/edgar/data/1045810/000158867026000014/xslF345X06/wk-form4_1789765959.xml'], 'description': 'The filing on sec.gov.'}, 'insider_cik': {'type': ['string', 'null'], 'examples': ['0001182994'], 'description': "Reporting person's CIK."}, 'rule_10b5_1': {'type': 'boolean', 'examples': [False], 'description': 'Filed as a Rule 10b5-1 plan trade.'}, 'code_meaning': {'type': 'string', 'examples': ['open-market or private sale'], 'description': 'What the code means.'}, 'shares_after': {'type': ['number', 'null'], 'examples': [2761590], 'description': 'Holdings after the trade.'}, 'exercise_price': {'type': ['number', 'null'], 'examples': [None], 'description': 'Derivative exercise price.'}, 'acquired_disposed': {'type': ['string', 'null'], 'examples': ['D'], 'description': 'A acquired, D disposed.'}, 'underlying_security': {'type': ['string', 'null'], 'examples': [None], 'description': "Derivative's underlying."}}}, 'examples': [[]], 'description': 'Trades, newest filing first.'}, 'transaction_count': {'type': 'integer', 'examples': [33], 'description': 'Trades returned.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_intel
Market intelligence read
Crypto market read in one call: a live Coinbase spot quote and live Polymarket probabilities on the same subject, analysed together in a written summary. Input: optional product_id, query, question and limit. Market data and implied probabilities only, not investment advice. $5.00 per call. Returns: spot{}, prediction_markets[], news[], news_note, analysis, disclaimer.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'limit': {'type': 'integer'}, 'query': {'type': 'string', 'description': 'Prediction-market topic. Optional.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'question': {'type': 'string', 'description': 'Optional analysis question.'}, 'product_id': {'type': 'string', 'description': 'e.g. BTC-USD. Default BTC-USD.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.intel response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['product_id', 'spot', 'prediction_markets', 'news', 'news_note', 'analysis', 'model', 'disclaimer'], 'properties': {'news': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'url', 'source_name', 'published_at'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.reuters.com/markets/...'], 'description': 'Article link.'}, 'title': {'type': 'string', 'examples': ['Bitcoin steadies as ETF inflows resume'], 'description': 'Headline.'}, 'source_name': {'type': ['string', 'null'], 'examples': ['Reuters'], 'description': 'Publisher.'}, 'published_at': {'type': ['string', 'null'], 'examples': ['2026-09-27T09:00:00Z'], 'description': 'Publication time (UTC).'}}, 'description': 'One recent headline.'}, 'examples': [[]], 'description': 'Recent headlines read for this call (GDELT, cite https://www.gdeltproject.org/), newest first; empty when none.'}, 'spot': {'type': 'object', 'required': ['product_id', 'price', 'source'], 'properties': {'price': {'type': 'string', 'examples': ['97231.45'], 'description': 'Last trade price, as the exchange reports it.'}, 'source': {'type': 'string', 'const': 'coinbase-advanced-trade-public', 'description': 'Data source.'}, 'status': {'type': ['string', 'null'], 'examples': ['online'], 'description': 'Product status as reported by the exchange.'}, 'product_id': {'type': 'string', 'examples': ['BTC-USD'], 'description': 'Coinbase product, base-quote.'}, 'volume_24h': {'type': ['string', 'null'], 'examples': ['14231.9'], 'description': '24-hour volume in the base currency.'}, 'base_currency': {'type': ['string', 'null'], 'examples': ['BTC'], 'description': 'Base currency code.'}, 'quote_currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Quote currency code.'}, 'price_change_24h_pct': {'type': ['string', 'null'], 'examples': ['1.82'], 'description': '24-hour percentage change.'}}, 'description': 'Live spot quote.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'analysis': {'type': 'string', 'examples': ['Spot is up 1.8% on the day while the top market prices a year-end close above $100k at 62%...'], 'description': 'What the two sources together do and do not support.'}, 'news_note': {'type': ['string', 'null'], 'examples': ['Headlines unavailable for this call: gdelt:query: BigQuery did not finish within 60s'], 'description': 'Why headlines are missing or partial; null when they were read cleanly.'}, 'disclaimer': {'type': 'string', 'examples': ['Market data and implied probabilities only. Not investment advice and not a forecast by HubVibe.'], 'description': 'Not investment advice.'}, 'product_id': {'type': 'string', 'examples': ['BTC-USD'], 'description': 'Spot product read.'}, 'prediction_markets': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'question', 'implied_probabilities'], 'properties': {'id': {'type': 'string', 'examples': ['512345'], 'description': 'Polymarket market id.'}, 'slug': {'type': 'string', 'examples': ['will-btc-close-above-100k'], 'description': 'Polymarket slug.'}, 'active': {'type': 'boolean', 'examples': [True], 'description': 'Whether the market is active.'}, 'closed': {'type': 'boolean', 'examples': [False], 'description': 'Whether the market is closed.'}, 'volume': {'type': ['number', 'null'], 'examples': [1834520.5], 'description': 'Traded volume in USD.'}, 'end_date': {'type': ['string', 'null'], 'examples': ['2026-12-31T00:00:00Z'], 'description': 'ISO 8601 end date.'}, 'question': {'type': 'string', 'examples': ['Will BTC close above $100k on Dec 31?'], 'description': 'The market question.'}, 'liquidity': {'type': ['number', 'null'], 'examples': [240310.2], 'description': 'Liquidity in USD.'}, 'implied_probabilities': {'type': 'array', 'items': {'type': 'object', 'required': ['outcome'], 'properties': {'outcome': {'type': 'string', 'examples': ['Yes'], 'description': 'Outcome label.'}, 'probability_pct': {'type': ['number', 'null'], 'examples': [62.5], 'description': 'Implied probability in percent.'}}, 'description': 'One outcome and what the market prices it at.'}, 'examples': [[{'outcome': 'Yes', 'probability_pct': 62.5}, {'outcome': 'No', 'probability_pct': 37.5}]], 'description': 'Each outcome with its implied probability.'}}, 'description': 'One prediction market.'}, 'description': 'Matching prediction markets, highest volume first.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_prediction
Prediction market probabilities
Prediction market odds from Polymarket: live markets and the probability each outcome currently implies, as percentages rather than raw prices. Search by topic (tickers such as BTC understood) or take the highest-volume markets. A topic no open market matches is refused free, never sold empty. Input: optional query and limit. Use prediction.market for one market by slug, prediction.events for event groupings. $0.05 per call. Returns: markets[] with question, implied_probabilities[], volume, end_date.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'limit': {'type': 'integer', 'description': '1-50, default 10.'}, 'query': {'type': 'string', 'description': "Topic words to match, e.g. 'fed rate cut' or 'BTC 150k' (optional)."}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.prediction response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'markets', 'count', 'source', 'note'], 'properties': {'note': {'type': 'string', 'examples': ['Implied probabilities are what the market is currently pricing, not a forecast by HubVibe.'], 'description': 'What the numbers are and are not.'}, 'count': {'type': 'integer', 'examples': [1], 'description': 'Number of markets returned.'}, 'query': {'type': ['string', 'null'], 'examples': ['bitcoin'], 'description': 'The search query, or null for the top markets by volume.'}, 'source': {'type': 'string', 'const': 'polymarket-gamma', 'description': 'Data source.'}, 'markets': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'question', 'implied_probabilities'], 'properties': {'id': {'type': 'string', 'examples': ['512345'], 'description': 'Polymarket market id.'}, 'slug': {'type': 'string', 'examples': ['will-btc-close-above-100k'], 'description': 'Polymarket slug.'}, 'active': {'type': 'boolean', 'examples': [True], 'description': 'Whether the market is active.'}, 'closed': {'type': 'boolean', 'examples': [False], 'description': 'Whether the market is closed.'}, 'volume': {'type': ['number', 'null'], 'examples': [1834520.5], 'description': 'Traded volume in USD.'}, 'end_date': {'type': ['string', 'null'], 'examples': ['2026-12-31T00:00:00Z'], 'description': 'ISO 8601 end date.'}, 'question': {'type': 'string', 'examples': ['Will BTC close above $100k on Dec 31?'], 'description': 'The market question.'}, 'liquidity': {'type': ['number', 'null'], 'examples': [240310.2], 'description': 'Liquidity in USD.'}, 'implied_probabilities': {'type': 'array', 'items': {'type': 'object', 'required': ['outcome'], 'properties': {'outcome': {'type': 'string', 'examples': ['Yes'], 'description': 'Outcome label.'}, 'probability_pct': {'type': ['number', 'null'], 'examples': [62.5], 'description': 'Implied probability in percent.'}}, 'description': 'One outcome and what the market prices it at.'}, 'examples': [[{'outcome': 'Yes', 'probability_pct': 62.5}, {'outcome': 'No', 'probability_pct': 37.5}]], 'description': 'Each outcome with its implied probability.'}}, 'description': 'One prediction market.'}, 'description': 'Matching markets, highest volume first.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_quote
Crypto spot quote
Crypto price: live spot price, 24-hour change and 24-hour volume for any Coinbase product such as BTC-USD or ETH-USD, from Coinbase's public market data. Input: product_id. Use market.ticker for bid and ask from a second source, market.rates for a whole exchange-rate table. $0.02 per call. Returns: price, price_change_24h_pct, volume_24h, base/quote currency.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['product_id'], 'properties': {'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'product_id': {'type': 'string', 'description': 'e.g. BTC-USD.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.quote response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['product_id', 'price', 'source'], 'properties': {'price': {'type': 'string', 'examples': ['97231.45'], 'description': 'Last trade price, as the exchange reports it.'}, 'source': {'type': 'string', 'const': 'coinbase-advanced-trade-public', 'description': 'Data source.'}, 'status': {'type': ['string', 'null'], 'examples': ['online'], 'description': 'Product status as reported by the exchange.'}, 'product_id': {'type': 'string', 'examples': ['BTC-USD'], 'description': 'Coinbase product, base-quote.'}, 'volume_24h': {'type': ['string', 'null'], 'examples': ['14231.9'], 'description': '24-hour volume in the base currency.'}, 'base_currency': {'type': ['string', 'null'], 'examples': ['BTC'], 'description': 'Base currency code.'}, 'quote_currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Quote currency code.'}, 'price_change_24h_pct': {'type': ['string', 'null'], 'examples': ['1.82'], 'description': '24-hour percentage change.'}}, 'description': 'Live spot quote.'}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_rates
Currency exchange rates
Currency exchange rates: Coinbase's full rate table for one base currency against every crypto and fiat currency it quotes, for example USD to BTC, ETH, EUR and GBP. Input: currency code. $0.02 per call. Returns: currency, rates{}.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['currency'], 'properties': {'currency': {'type': 'string', 'description': 'e.g. USD, ETH, BTC.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.rates response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['currency', 'rates', 'source'], 'properties': {'rates': {'type': 'object', 'examples': [{'BTC': '0.0000103', 'EUR': '0.92', 'GBP': '0.78'}], 'required': [], 'properties': {}, 'description': 'Exchange rate per currency code, as decimal strings.', 'additionalProperties': {'type': 'string'}}, 'source': {'type': 'string', 'const': 'coinbase-exchange-rates', 'description': 'Data source.'}, 'currency': {'type': 'string', 'examples': ['USD'], 'description': 'Base currency of the table.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_stock
Live stock quote and daily history
Live equity quote for a US-listed ticker: last price, change, day range, volume and market state, plus daily OHLCV history for the range you choose (1d to 5y), read at call time from Nasdaq's public data API with Yahoo Finance as the fallback. Every answer names the source that answered, the source's own timestamp (as_of), its delay in minutes, and when this node read it (checked_at). Input: symbol; optional range (default 1mo), include_history. $0.05 per call. Returns: symbol, name, exchange, currency, price, change, change_pct, previous_close, day_high, day_low, volume, market_state, as_of, delayed_minutes, history[], history_rows, source, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['symbol'], 'properties': {'range': {'enum': ['1d', '5d', '1mo', '3mo', '6mo', '1y', '2y', '5y'], 'type': 'string', 'description': 'History range, default 1mo.'}, 'symbol': {'type': 'string', 'pattern': '^[A-Za-z][A-Za-z0-9.\\-]{0,11}$', 'description': 'Ticker symbol, e.g. AAPL, BRK.B, RY-PC.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'include_history': {'type': 'boolean', 'description': 'Default true.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.stock response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['symbol', 'price', 'as_of', 'delayed_minutes', 'history', 'history_rows', 'source', 'checked_at'], 'properties': {'name': {'type': ['string', 'null'], 'examples': ['Apple Inc.'], 'description': 'Company or instrument name.'}, 'as_of': {'type': ['string', 'null'], 'examples': ['2026-09-25T20:00:01Z'], 'description': "The source's own timestamp for the price (ISO 8601; a date, or a time with its zone)."}, 'price': {'type': 'number', 'examples': [341.07], 'description': 'Last price.'}, 'change': {'type': ['number', 'null'], 'examples': [5.15], 'description': 'Change on the day.'}, 'source': {'type': ['string', 'null'], 'examples': ['nasdaq-data-api'], 'description': 'The provider that answered.'}, 'symbol': {'type': 'string', 'examples': ['AAPL'], 'description': 'Ticker.'}, 'volume': {'type': ['number', 'null'], 'examples': [30002768], 'description': 'Volume.'}, 'day_low': {'type': ['number', 'null'], 'examples': [334.53], 'description': 'Day low.'}, 'history': {'type': 'array', 'items': {'type': 'object', 'required': ['date', 'close'], 'properties': {'low': {'type': ['number', 'null'], 'examples': [334.53], 'description': 'Low.'}, 'date': {'type': 'string', 'examples': ['2026-09-25'], 'description': 'Trading day (YYYY-MM-DD).'}, 'high': {'type': ['number', 'null'], 'examples': [341.67], 'description': 'High.'}, 'open': {'type': ['number', 'null'], 'examples': [336.04], 'description': 'Open.'}, 'close': {'type': ['number', 'null'], 'examples': [341.07], 'description': 'Close.'}, 'volume': {'type': ['number', 'null'], 'examples': [30002510], 'description': 'Shares traded.'}}, 'description': 'One trading day.'}, 'description': 'Daily bars, oldest first; empty when include_history is false.'}, 'currency': {'type': ['string', 'null'], 'examples': ['USD'], 'description': 'Quote currency.'}, 'day_high': {'type': ['number', 'null'], 'examples': [341.67], 'description': 'Day high.'}, 'exchange': {'type': ['string', 'null'], 'examples': ['NASDAQ-GS'], 'description': 'Listing exchange as the source names it.'}, 'change_pct': {'type': ['number', 'null'], 'examples': [1.53], 'description': 'Change on the day, percent.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'asset_class': {'type': ['string', 'null'], 'examples': ['stocks'], 'description': 'stocks, etf, equity...'}, 'history_rows': {'type': 'integer', 'examples': [22], 'description': 'Bars returned.'}, 'market_state': {'type': ['string', 'null'], 'examples': ['Closed'], 'description': 'Open, Closed, Pre-Market... as the source reports it.'}, 'history_range': {'type': ['string', 'null'], 'examples': ['1mo'], 'description': 'The range the history covers.'}, 'previous_close': {'type': ['number', 'null'], 'examples': [335.92], 'description': 'Previous close.'}, 'delayed_minutes': {'type': ['integer', 'null'], 'examples': [15], 'description': 'How delayed the source says the quote is; null when it does not say.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_market_ticker
Crypto ticker
Crypto ticker: live best bid, best ask, last price and volume for one Coinbase product from Coinbase's Exchange data host, an independent second source to market.quote. Input: product_id such as BTC-USD. $0.02 per call. Returns: product_id, price, bid, ask, volume, time.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['product_id'], 'properties': {'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'product_id': {'type': 'string', 'description': 'e.g. BTC-USD.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'market.ticker response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['product_id', 'price', 'bid', 'ask', 'source'], 'properties': {'ask': {'type': ['string', 'null'], 'examples': ['97232.80'], 'description': 'Best ask.'}, 'bid': {'type': ['string', 'null'], 'examples': ['97230.10'], 'description': 'Best bid.'}, 'time': {'type': ['string', 'null'], 'examples': ['2026-09-22T04:10:12.345Z'], 'description': 'Exchange timestamp, ISO 8601.'}, 'price': {'type': ['string', 'null'], 'examples': ['97231.45'], 'description': 'Last trade price.'}, 'source': {'type': 'string', 'const': 'coinbase-exchange', 'description': 'Data source.'}, 'volume': {'type': ['string', 'null'], 'examples': ['14231.9'], 'description': '24-hour volume in the base currency.'}, 'product_id': {'type': 'string', 'examples': ['BTC-USD'], 'description': 'Coinbase product, base-quote.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_monitor_check
Check a page against its baseline
Website change monitoring, step two: re-fetch a page saved with monitor.snapshot and get whether it changed, how old the baseline is, and a written summary of the differences. Input: url, optional language. $0.50 per call. Returns: url, title, changed, baseline_age_seconds, change_summary, model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'http(s) URL to fetch.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'monitor.check response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'changed', 'baseline_age_seconds', 'change_summary'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com'], 'description': 'The URL checked.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'Model that summarised the diff; present only when something changed.'}, 'title': {'type': ['string', 'null'], 'examples': ['Example Domain'], 'description': 'Page title now.'}, 'changed': {'type': 'boolean', 'examples': [True], 'description': 'Whether the readable text differs from the baseline.'}, 'change_summary': {'type': 'string', 'examples': ['The pricing section now lists a $0.15 bundle; the headline is unchanged.'], 'description': 'What changed, in words; or that nothing did.'}, 'baseline_age_seconds': {'type': 'number', 'examples': [86400], 'description': 'Seconds since the baseline was taken.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_monitor_snapshot
Save a monitoring baseline
Website change monitoring, step one: fetch a page and store it as the baseline. Input: url. Call monitor.check later to learn whether and how it changed. $0.50 per call. Returns: url, title, text_chars, content_hash, note.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'http(s) URL to fetch.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'monitor.snapshot response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'text_chars', 'content_hash', 'note'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com'], 'description': 'The URL baselined.'}, 'note': {'type': 'string', 'examples': ['Baseline saved. Call monitor.check on this URL later to see what changed.'], 'description': 'What to do next.'}, 'title': {'type': ['string', 'null'], 'examples': ['Example Domain'], 'description': 'Page title at snapshot time.'}, 'text_chars': {'type': 'integer', 'examples': [172], 'description': 'Characters of readable text captured.'}, 'content_hash': {'type': 'string', 'examples': ['aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'], 'description': 'sha256 of the readable text, hex.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_news_search
Current news on any topic, in any language
Current news on any topic in any language from the GDELT Project, which reads the world's press every 15 minutes: titles matched in their original script (半導体, 반도체, tarifs), optionally only articles in one language, newest first, with publisher, language and link; a US ticker searches the company's name. Window up to 30 days (default 72 hours). Carries GDELT's required citation. Input: query and/or symbol; optional language, limit, since_hours. $0.25 per call. Returns: query, symbol, language, edition{}, sources_searched[], sources_ok[], sources_failed[], articles[{title, url, source_name, source_url, published_at, summary, feed}], article_count, limit, since_hours, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Default 20.'}, 'query': {'type': 'string', 'maxLength': 300, 'minLength': 1, 'description': 'Topic words in any language (半導体, 반도체, tarifs douaniers).'}, 'region': {'type': 'string', 'pattern': '^[A-Za-z]{2}$', 'description': "Accepted for compatibility; GDELT does not record a publisher's country, so use language."}, 'symbol': {'type': 'string', 'pattern': '^[A-Za-z0-9.\\-=^]{1,12}$', 'description': "Optional US ticker (AAPL, MSFT): searches the company's name from the SEC ticker table."}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'since_hours': {'type': 'integer', 'maximum': 720, 'minimum': 1, 'description': 'Only articles published within this many hours.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'news.search response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'symbol', 'language', 'language_filter', 'sources_searched', 'sources_ok', 'sources_failed', 'articles', 'article_count', 'limit', 'since_hours', 'attribution', 'notes', 'checked_at'], 'properties': {'limit': {'type': 'integer', 'examples': [20], 'description': 'Most articles asked for.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ["GDELT does not record a publisher's country, so region is not a filter."], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'query': {'type': ['string', 'null'], 'examples': ['半導体'], 'description': 'Topic searched, as given; null when only a symbol was asked.'}, 'symbol': {'type': ['string', 'null'], 'examples': ['AAPL'], 'description': 'Ticker whose company name was searched; null when none.'}, 'articles': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'url', 'source_name', 'source_url', 'published_at', 'summary', 'language', 'feed'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.nikkei.com/article/DGXZQO...'], 'description': "The publisher's article link."}, 'feed': {'enum': ['gdelt'], 'type': 'string', 'examples': ['gdelt'], 'description': 'Which source it came from.'}, 'title': {'type': 'string', 'examples': ['半導体株が反発、関税協議の進展で'], 'description': 'Headline in its original language.'}, 'summary': {'type': ['string', 'null'], 'examples': [None], 'description': 'Summary; GDELT carries none, so null.'}, 'language': {'type': ['string', 'null'], 'examples': ['ja'], 'description': 'Article language (BCP-47).'}, 'source_url': {'type': ['string', 'null'], 'examples': ['https://nikkei.com'], 'description': 'Publisher site.'}, 'source_name': {'type': ['string', 'null'], 'examples': ['nikkei.com'], 'description': 'Publisher domain.'}, 'published_at': {'type': ['string', 'null'], 'examples': ['2026-09-27T02:30:00Z'], 'description': 'When GDELT first saw it (UTC, 15-minute batches).'}}, 'description': 'One article.'}, 'description': 'Articles, newest first, duplicates by title removed.'}, 'language': {'type': ['string', 'null'], 'examples': ['ja'], 'description': 'BCP-47 language asked for; null when none.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'sources_ok': {'type': 'array', 'items': {'type': 'string', 'examples': ['gdelt:query'], 'description': 'Search id.'}, 'examples': [['gdelt:query']], 'description': 'Searches that answered.'}, 'attribution': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.gdeltproject.org/'], 'description': 'Required link.'}, 'text': {'type': 'string', 'examples': ['Source: The GDELT Project'], 'description': 'Required citation.'}}, 'description': "The citation GDELT's licence requires with every use."}, 'since_hours': {'type': 'integer', 'examples': [72], 'description': 'Window searched, in hours.'}, 'article_count': {'type': 'integer', 'examples': [20], 'description': 'Articles returned.'}, 'sources_failed': {'type': 'array', 'items': {'type': 'object', 'required': ['source', 'reason'], 'properties': {'reason': {'type': 'string', 'examples': ['Symbol news covers US-listed tickers'], 'description': 'Why it did not answer this call.'}, 'source': {'type': 'string', 'examples': ['gdelt:symbol:7203.T'], 'description': 'Search id.'}}, 'description': 'A search that failed for this call.'}, 'examples': [[]], 'description': 'Searches that did not answer, with the reason; never silently dropped.'}, 'language_filter': {'type': ['string', 'null'], 'examples': ['ja'], 'description': 'Language the articles were limited to; null when every language was searched.'}, 'sources_searched': {'type': 'array', 'items': {'type': 'string', 'examples': ['gdelt:query'], 'description': 'Search id.'}, 'examples': [['gdelt:query']], 'description': 'Searches this call ran.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_opendata_search
Search 16 government open-data portals for datasets
Find government datasets across 16 open-data portals in one call: Korea (data.go.kr), Japan (e-Gov, Tokyo, BODIK), Hong Kong, Australia, UK, Canada, the EU catalog (139,000+ datasets), Germany, Italy, Ireland, Switzerland, Netherlands, Israel, Chile. Query in any language, the portal's own included; every match comes back with organization, update time and download URLs, ready for opendata.table. Portals that did not answer are listed, never hidden. Input: query; optional region, limit, portals. $0.10 per call. Returns: query, region, portals_searched[], portals_ok[], portals_failed[], total_matches{}, results[{portal, title, description, organization, landing_url, resources[{url, format}]...}], result_count, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Results per portal, default 10.'}, 'query': {'type': 'string', 'maxLength': 300, 'minLength': 1, 'description': 'Words to search for, in any language (인구, 人口, rainfall, Bevölkerung).'}, 'region': {'enum': ['all', 'au', 'ca', 'ch', 'cl', 'de', 'eu', 'gb', 'hk', 'ie', 'il', 'it', 'jp', 'kr', 'nl'], 'type': 'string', 'description': 'Which portals to search. Default all (16 portals, concurrently).'}, 'portals': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1, 'description': 'Specific portal ids instead of a region, e.g. ["data.go.kr", "data.bodik.jp"].'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'opendata.search response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'region', 'portals_searched', 'portals_ok', 'portals_failed', 'total_matches', 'results', 'result_count', 'limit_per_portal', 'checked_at'], 'properties': {'query': {'type': 'string', 'examples': ['人口'], 'description': 'The query as given.'}, 'region': {'type': 'string', 'examples': ['jp'], 'description': 'Region searched.'}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['portal', 'region', 'country', 'id', 'title', 'tags', 'resources', 'resource_count'], 'properties': {'id': {'type': 'string', 'examples': ['5b2f1c7e-8a3d-4c1e-9f2a-1b2c3d4e5f60'], 'description': 'Dataset id on the portal.'}, 'name': {'type': ['string', 'null'], 'examples': ['population-census-2020'], 'description': 'Dataset slug.'}, 'tags': {'type': 'array', 'items': {'type': 'string', 'examples': ['人口'], 'description': 'A tag.'}, 'examples': [['人口', '国勢調査']], 'description': 'Portal tags.'}, 'title': {'type': 'string', 'examples': ['令和2年国勢調査 人口等基本集計'], 'description': "Dataset title, in the portal's language."}, 'portal': {'type': 'string', 'examples': ['data.e-gov.go.jp'], 'description': 'Portal id.'}, 'region': {'type': 'string', 'examples': ['jp'], 'description': 'Region code.'}, 'country': {'type': 'string', 'examples': ['JP'], 'description': 'ISO 3166-1 alpha-2.'}, 'license': {'type': ['string', 'null'], 'examples': ['CC-BY-4.0'], 'description': 'Licence title or id.'}, 'resources': {'type': 'array', 'items': {'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.e-stat.go.jp/stat-search/file-download?statInfId=000032143614'], 'description': 'Download URL.'}, 'name': {'type': ['string', 'null'], 'examples': ['人口等基本集計 全国結果'], 'description': 'Resource name.'}, 'format': {'type': ['string', 'null'], 'examples': ['CSV'], 'description': 'CSV, JSON, XLS, HTML...'}, 'size_bytes': {'type': ['integer', 'null'], 'examples': [1048576], 'description': 'Size when the portal states it.'}, 'last_modified': {'type': ['string', 'null'], 'examples': ['2026-02-20T00:00:00'], 'description': 'Resource modification time.'}}, 'description': 'One downloadable resource.'}, 'description': 'Up to 25 resources, ready for fetch.raw.'}, 'updated_at': {'type': ['string', 'null'], 'examples': ['2026-03-01T09:12:44.512345'], 'description': 'Portal metadata modification time.'}, 'description': {'type': ['string', 'null'], 'examples': ['国勢調査の人口等基本集計...'], 'description': 'Description, up to 1000 characters.'}, 'landing_url': {'type': ['string', 'null'], 'examples': ['https://www.e-stat.go.jp/stat-search/files?toukei=00200521'], 'description': 'Dataset page or source URL when the portal gives one.'}, 'organization': {'type': ['string', 'null'], 'examples': ['総務省'], 'description': 'Publishing organization.'}, 'resource_count': {'type': 'integer', 'examples': [3], 'description': 'Resources the dataset has in total.'}}, 'description': 'One dataset.'}, 'description': 'Datasets found, most recently updated first.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'portals_ok': {'type': 'array', 'items': {'type': 'string', 'examples': ['data.e-gov.go.jp'], 'description': 'Portal id.'}, 'examples': [['data.e-gov.go.jp', 'catalog.data.metro.tokyo.lg.jp']], 'description': 'Portals that answered.'}, 'result_count': {'type': 'integer', 'examples': [10], 'description': 'Datasets returned.'}, 'total_matches': {'type': 'object', 'examples': [{'data.e-gov.go.jp': 4699, 'catalog.data.metro.tokyo.lg.jp': 1523}], 'required': [], 'properties': {}, 'description': 'Total matches per portal that answered, keyed by portal id.', 'additionalProperties': {'type': 'integer'}}, 'portals_failed': {'type': 'array', 'items': {'type': 'object', 'required': ['portal', 'reason'], 'properties': {'portal': {'type': 'string', 'examples': ['data.gov.hk'], 'description': 'Portal id.'}, 'reason': {'type': 'string', 'examples': ['data.gov.hk timed out'], 'description': 'Why it did not answer this call.'}}, 'description': 'A portal that failed for this call.'}, 'examples': [[]], 'description': 'Portals that did not answer, with the reason; never silently dropped.'}, 'limit_per_portal': {'type': 'integer', 'examples': [5], 'description': 'Results requested per portal.'}, 'portals_searched': {'type': 'array', 'items': {'type': 'string', 'examples': ['data.e-gov.go.jp'], 'description': 'Portal id.'}, 'examples': [['data.e-gov.go.jp', 'catalog.data.metro.tokyo.lg.jp']], 'description': 'Portals the query was sent to.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_opendata_table
Read a government dataset file as JSON rows
Turn one dataset file into JSON rows: a CSV, TSV, XLSX or JSON link from any portal, an e-Stat (Japan) file-download link, or a data.go.kr (Korea) dataset page, which is resolved to its keyless file first. Encoding is detected (Korean CP949, Japanese Shift_JIS, Chinese Big5/GB18030, UTF-8/16, Western code pages), the header row found, numbers typed, XLSX sheets selectable, large files capped and disclosed. Input: url; optional max_rows, sheet, encoding, delimiter. $0.10 per call. Returns: source_url, resolved_from, file_url, final_url, filename, content_type, bytes, format, encoding, sheet, sheets[], columns[], column_count, rows[{...}], row_count, total_rows, truncated, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'File link, e-Stat file-download link, or a data.go.kr dataset page.'}, 'sheet': {'type': ['string', 'integer'], 'description': 'XLSX sheet name or 0-based index. Default: first sheet.'}, 'encoding': {'type': 'string', 'maxLength': 30, 'description': 'Force a codec (cp949, shift_jis, big5). Default: detected.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'max_rows': {'type': 'integer', 'maximum': 2000, 'minimum': 1, 'description': 'Rows to return, default 200.'}, 'delimiter': {'type': 'string', 'maxLength': 1, 'minLength': 1, 'description': 'Force a CSV delimiter. Default: sniffed.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'opendata.table response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['source_url', 'resolved_from', 'file_url', 'final_url', 'filename', 'content_type', 'bytes', 'format', 'encoding', 'sheet', 'sheets', 'columns', 'column_count', 'rows', 'row_count', 'total_rows', 'truncated', 'notes', 'checked_at'], 'properties': {'rows': {'type': 'array', 'items': {'type': 'object', 'examples': [{'성별': '남자', '내국인': 564888, '행정구역명': '울산광역시', '행정구역코드': 31}], 'required': [], 'properties': {}, 'description': 'One row keyed by column; numbers typed, blanks null.', 'additionalProperties': True}, 'description': 'Rows in file order, up to max_rows.'}, 'bytes': {'type': 'integer', 'examples': [12331], 'description': 'File size in bytes.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['45 data rows in the file; the first 5 are returned (max_rows).'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'sheet': {'type': ['string', 'null'], 'examples': ['Sheet1'], 'description': 'XLSX sheet read; null otherwise.'}, 'format': {'enum': ['csv', 'tsv', 'xlsx', 'json'], 'type': 'string', 'examples': ['csv'], 'description': 'Parsed format.'}, 'sheets': {'type': 'array', 'items': {'type': 'string', 'examples': ['Sheet1'], 'description': 'Sheet name.'}, 'examples': [[]], 'description': 'All sheet names for an XLSX; empty otherwise.'}, 'columns': {'type': 'array', 'items': {'type': 'string', 'examples': ['행정구역명'], 'description': 'Column name from the header row.'}, 'examples': [['행정구역코드', '행정구역명', '성별', '내국인']], 'description': 'Columns in file order.'}, 'encoding': {'type': ['string', 'null'], 'examples': ['cp949'], 'description': 'Text encoding used; null for XLSX.'}, 'file_url': {'type': 'string', 'examples': ['https://www.data.go.kr/cmm/cmm/fileDownload.do?atchFileId=FILE_000000003522968&fileDetailSn=1&insertDataPrcus=N'], 'description': 'The file actually fetched.'}, 'filename': {'type': ['string', 'null'], 'examples': ['울산광역시_인구 현황(20251112).csv'], 'description': 'File name from the server or the URL.'}, 'final_url': {'type': ['string', 'null'], 'examples': ['https://www.data.go.kr/cmm/cmm/fileDownload.do?atchFileId=FILE_000000003522968&fileDetailSn=1&insertDataPrcus=N'], 'description': 'After redirects.'}, 'row_count': {'type': 'integer', 'examples': [5], 'description': 'Rows returned.'}, 'truncated': {'type': 'boolean', 'examples': [True], 'description': 'True when total_rows exceeds max_rows.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'source_url': {'type': 'string', 'examples': ['https://www.data.go.kr/data/15005995/fileData.do'], 'description': 'The URL as given.'}, 'total_rows': {'type': 'integer', 'examples': [45], 'description': 'Data rows in the file (excluding the header).'}, 'column_count': {'type': 'integer', 'examples': [14], 'description': 'Number of columns.'}, 'content_type': {'type': ['string', 'null'], 'examples': ['application/octet-stream'], 'description': 'Server content type.'}, 'resolved_from': {'type': ['string', 'null'], 'examples': ['https://www.data.go.kr/data/15005995/fileData.do'], 'description': 'The dataset page that was resolved to a file link; null when a file link was given.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_phone_parse
Phone number intelligence: valid, where, which network, what type
What a phone number itself says, checked against Google's libphonenumber numbering plans: valid or not, country and area, the network the range was issued to, line type (mobile, fixed, toll-free, VoIP, premium...), time zones and E.164, international and national formats. Offline: nothing is dialled and the owner is never looked up. Input: number; optional region for a national-format number. $0.02 per call. Returns: input{}, valid, possible, e164, international, national, country_code, region, country, location, carrier, line_type, time_zones[], metadata_version, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['number'], 'properties': {'number': {'type': 'string', 'maxLength': 40, 'minLength': 3, 'description': 'One phone number, international (+44 20 7946 0958) or national with `region`.'}, 'region': {'type': 'string', 'pattern': '^[A-Za-z]{2}$', 'description': 'Two-letter country code for a national-format number (GB, US).'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'phone.parse response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['input', 'valid', 'possible', 'e164', 'international', 'national', 'country_code', 'region', 'country', 'location', 'carrier', 'line_type', 'time_zones', 'metadata_version', 'notes', 'checked_at'], 'properties': {'e164': {'type': 'string', 'examples': ['+442070313000'], 'description': 'E.164 form.'}, 'input': {'type': 'object', 'required': ['number', 'region'], 'properties': {'number': {'type': 'string', 'examples': ['+44 20 7031 3000'], 'description': 'The number as given.'}, 'region': {'type': ['string', 'null'], 'examples': ['GB'], 'description': 'Region used for a national number.'}}, 'description': 'The request.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Answered from the number alone.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats.'}, 'valid': {'type': 'boolean', 'examples': [True], 'description': "A valid number in its country's numbering plan."}, 'region': {'type': ['string', 'null'], 'examples': ['GB'], 'description': 'ISO country code the number belongs to.'}, 'carrier': {'type': ['string', 'null'], 'examples': ['T-Mobile'], 'description': 'Network the number range was issued to; null when not recorded (common for fixed lines).'}, 'country': {'type': ['string', 'null'], 'examples': ['United Kingdom'], 'description': 'Country name.'}, 'location': {'type': ['string', 'null'], 'examples': ['London'], 'description': 'Area the number was issued to (city or region); null when unknown.'}, 'national': {'type': 'string', 'examples': ['020 7031 3000'], 'description': 'National format.'}, 'possible': {'type': 'boolean', 'examples': [True], 'description': 'The length is possible for the country.'}, 'line_type': {'enum': ['fixed_line', 'mobile', 'fixed_line_or_mobile', 'toll_free', 'premium_rate', 'shared_cost', 'voip', 'personal_number', 'pager', 'uan', 'voicemail', 'unknown'], 'type': 'string', 'examples': ['fixed_line'], 'description': 'Kind of line.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'time_zones': {'type': 'array', 'items': {'type': 'string', 'examples': ['Europe/London'], 'description': 'An IANA time zone.'}, 'examples': [['Europe/London']], 'description': "Time zones the number's area uses."}, 'country_code': {'type': 'integer', 'examples': [44], 'description': 'Calling code.'}, 'international': {'type': 'string', 'examples': ['+44 20 7031 3000'], 'description': 'International format.'}, 'metadata_version': {'type': 'string', 'examples': ['9.0.40'], 'description': 'libphonenumber metadata version used.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_prediction_events
Prediction market events
Polymarket events, groupings of related prediction markets, ranked by trading volume with title, slug, end date and market count. Input: optional limit. $0.05 per call. Returns: events[{id,title,slug,volume,end_date,market_count}], count.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'limit': {'type': 'integer', 'description': '1-50, default 10.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'prediction.events response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['events', 'count', 'source'], 'properties': {'count': {'type': 'integer', 'examples': [1], 'description': 'Number of events returned.'}, 'events': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'slug', 'market_count'], 'properties': {'id': {'type': 'string', 'examples': ['24011'], 'description': 'Event id.'}, 'slug': {'type': 'string', 'examples': ['bitcoin-price-on-december-31'], 'description': 'Event slug.'}, 'title': {'type': 'string', 'examples': ['Bitcoin price on December 31'], 'description': 'Event title.'}, 'volume': {'type': ['number', 'null'], 'examples': [5230100.0], 'description': 'Traded volume in USD.'}, 'end_date': {'type': ['string', 'null'], 'examples': ['2026-12-31T00:00:00Z'], 'description': 'ISO 8601 end date.'}, 'market_count': {'type': 'integer', 'examples': [6], 'description': 'Markets grouped under this event.'}}, 'description': 'One event.'}, 'description': 'Events, highest volume first.'}, 'source': {'type': 'string', 'const': 'polymarket-gamma', 'description': 'Data source.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_prediction_market
Prediction market by slug
One Polymarket prediction market by its exact slug, with its question and current implied probabilities. Input: slug. Use market.prediction to search markets by topic. $0.05 per call. Returns: slug, market{question,implied_probabilities[],...}.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': "The market's Polymarket slug."}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'prediction.market response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['slug', 'market', 'source'], 'properties': {'slug': {'type': 'string', 'examples': ['will-btc-close-above-100k'], 'description': 'The slug queried.'}, 'market': {'type': 'object', 'required': ['id', 'question', 'implied_probabilities'], 'properties': {'id': {'type': 'string', 'examples': ['512345'], 'description': 'Polymarket market id.'}, 'slug': {'type': 'string', 'examples': ['will-btc-close-above-100k'], 'description': 'Polymarket slug.'}, 'active': {'type': 'boolean', 'examples': [True], 'description': 'Whether the market is active.'}, 'closed': {'type': 'boolean', 'examples': [False], 'description': 'Whether the market is closed.'}, 'volume': {'type': ['number', 'null'], 'examples': [1834520.5], 'description': 'Traded volume in USD.'}, 'end_date': {'type': ['string', 'null'], 'examples': ['2026-12-31T00:00:00Z'], 'description': 'ISO 8601 end date.'}, 'question': {'type': 'string', 'examples': ['Will BTC close above $100k on Dec 31?'], 'description': 'The market question.'}, 'liquidity': {'type': ['number', 'null'], 'examples': [240310.2], 'description': 'Liquidity in USD.'}, 'implied_probabilities': {'type': 'array', 'items': {'type': 'object', 'required': ['outcome'], 'properties': {'outcome': {'type': 'string', 'examples': ['Yes'], 'description': 'Outcome label.'}, 'probability_pct': {'type': ['number', 'null'], 'examples': [62.5], 'description': 'Implied probability in percent.'}}, 'description': 'One outcome and what the market prices it at.'}, 'examples': [[{'outcome': 'Yes', 'probability_pct': 62.5}, {'outcome': 'No', 'probability_pct': 37.5}]], 'description': 'Each outcome with its implied probability.'}}, 'description': 'One prediction market.'}, 'source': {'type': 'string', 'const': 'polymarket-gamma', 'description': 'Data source.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_predictive_probability_engine
Predictive probability engine: regression, normal model, p-values
Deterministic statistics over (x, y) points: ordinary least squares linear regression with standard errors and confidence intervals, a fitted normal distribution with quantiles and probability queries, exact Student t and Jarque-Bera p-values validated at your alpha, and predictions with prediction intervals. Points come inline or from a BigQuery table (two numeric columns; above max_rows the rows are chosen by fingerprint, never at random). Pure arithmetic with exactly rounded sums: the same input always returns the same numbers, and no LLM is anywhere in the path. $0.50 per call. Returns: source{}, n, alpha, confidence_level, metrics[], linear_regression{}, normal_distribution{}, p_values{}, prediction[], notes[], method.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'oneOf': [{'required': ['points']}, {'required': ['table', 'x_column', 'y_column']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'alpha': {'type': 'number', 'description': 'Significance level for p-value validation and intervals. Default 0.05.', 'exclusiveMaximum': 1, 'exclusiveMinimum': 0}, 'table': {'type': 'string', 'description': "BigQuery table to read instead of `points`: project.dataset.table, readable by the node's service account (public datasets are). Needs x_column and y_column."}, 'points': {'type': 'array', 'items': {'oneOf': [{'type': 'array', 'items': {'type': 'number'}, 'maxItems': 2, 'minItems': 2, 'description': '[x, y]'}, {'type': 'object', 'required': ['x', 'y'], 'properties': {'x': {'type': 'number'}, 'y': {'type': 'number'}}, 'additionalProperties': False}]}, 'maxItems': 100000, 'minItems': 2, 'description': 'The data: [x, y] pairs (or {x, y} objects), 2 to 100000 of them; at least 3 for a regression. Use this OR `table`.'}, 'metrics': {'type': 'array', 'items': {'enum': ['linear_regression', 'normal_distribution', 'p_values', 'prediction'], 'type': 'string'}, 'minItems': 1, 'description': 'Which results to compute. Default: linear_regression, normal_distribution and p_values, plus prediction when predict_x is given.', 'uniqueItems': True}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'max_rows': {'type': 'integer', 'maximum': 100000, 'minimum': 3, 'description': 'Rows to read from `table`, default 10000. A larger table is reduced to this many rows by FARM_FINGERPRINT order, so the same table always yields the same rows.'}, 'x_column': {'type': 'string', 'description': 'Numeric column for x, with `table`.'}, 'y_column': {'type': 'string', 'description': 'Numeric column for y, with `table`.'}, 'predict_x': {'type': 'array', 'items': {'type': 'number'}, 'maxItems': 100, 'minItems': 1, 'description': 'x values to predict y at, with mean and prediction intervals.'}, 'distribution_of': {'enum': ['y', 'x', 'residuals'], 'type': 'string', 'description': 'Which values the normal model fits. Default y.'}, 'probability_queries': {'type': 'array', 'items': {'type': 'object', 'properties': {'above': {'type': 'number'}, 'below': {'type': 'number'}, 'between': {'type': 'array', 'items': {'type': 'number'}, 'maxItems': 2, 'minItems': 2}}, 'maxProperties': 1, 'minProperties': 1, 'additionalProperties': False}, 'maxItems': 50, 'description': 'Probabilities to read off the fitted normal model: {"below": v}, {"above": v} or {"between": [a, b]}.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'stats.probability response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['source', 'n', 'alpha', 'confidence_level', 'metrics', 'linear_regression', 'normal_distribution', 'p_values', 'prediction', 'notes', 'method'], 'properties': {'n': {'type': 'integer', 'examples': [5], 'description': 'Number of points.'}, 'alpha': {'type': 'number', 'examples': [0.05], 'description': 'Significance level used.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['The points lie exactly on a line.'], 'description': 'A caveat about a degenerate input.'}, 'examples': [[]], 'description': 'Caveats about the input; empty when there are none.'}, 'method': {'type': 'string', 'examples': ['Ordinary least squares (closed form). Student t p-values from the regularised incomplete beta function...'], 'description': 'How the numbers were produced.'}, 'source': {'type': 'object', 'required': ['type', 'table', 'x_column', 'y_column', 'sql', 'rows_available', 'rows_used', 'sampled', 'gib_processed'], 'properties': {'sql': {'type': ['string', 'null'], 'examples': [None], 'description': 'The read-only SQL that ran, when source is bigquery.'}, 'type': {'enum': ['points', 'bigquery'], 'type': 'string', 'examples': ['points'], 'description': 'Where the points came from.'}, 'table': {'type': ['string', 'null'], 'examples': [None], 'description': 'BigQuery table read, when source is bigquery.'}, 'sampled': {'type': 'boolean', 'examples': [False], 'description': 'True when the table had more usable rows than were read.'}, 'x_column': {'type': ['string', 'null'], 'examples': [None], 'description': 'Column used for x, when source is bigquery.'}, 'y_column': {'type': ['string', 'null'], 'examples': [None], 'description': 'Column used for y, when source is bigquery.'}, 'rows_used': {'type': 'integer', 'examples': [5], 'description': 'Points the statistics were computed from.'}, 'gib_processed': {'type': ['number', 'null'], 'examples': [None], 'description': 'Gibibytes BigQuery scanned; null for inline points.'}, 'rows_available': {'type': ['integer', 'null'], 'examples': [None], 'description': 'Rows with finite x and y in the table; null for inline points.'}}, 'description': 'Where the data came from and how much of it was used.'}, 'metrics': {'type': 'array', 'items': {'enum': ['linear_regression', 'normal_distribution', 'p_values', 'prediction'], 'type': 'string', 'examples': ['linear_regression'], 'description': 'Metric name.'}, 'examples': [['linear_regression', 'normal_distribution', 'p_values', 'prediction']], 'description': 'Metrics computed, in canonical order.'}, 'p_values': {'type': ['object', 'null'], 'required': ['slope', 'intercept', 'normality_of_residuals'], 'properties': {'slope': {'type': 'object', 'required': ['null_hypothesis', 't', 'p_value', 'significant_at_alpha'], 'properties': {'t': {'type': ['number', 'null'], 'examples': [11.4], 'description': 'Student t statistic; null when undefined (a perfect fit).'}, 'p_value': {'type': ['number', 'null'], 'examples': [0.0015], 'description': 'Two-sided p-value; null when undefined.'}, 'null_hypothesis': {'type': 'string', 'examples': ['slope = 0 (no linear relationship)'], 'description': 'What the test rejects.'}, 'significant_at_alpha': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'p_value < alpha.'}}, 'description': 'One two-sided Student t test.'}, 'intercept': {'type': 'object', 'required': ['null_hypothesis', 't', 'p_value', 'significant_at_alpha'], 'properties': {'t': {'type': ['number', 'null'], 'examples': [11.4], 'description': 'Student t statistic; null when undefined (a perfect fit).'}, 'p_value': {'type': ['number', 'null'], 'examples': [0.0015], 'description': 'Two-sided p-value; null when undefined.'}, 'null_hypothesis': {'type': 'string', 'examples': ['slope = 0 (no linear relationship)'], 'description': 'What the test rejects.'}, 'significant_at_alpha': {'type': ['boolean', 'null'], 'examples': [True], 'description': 'p_value < alpha.'}}, 'description': 'One two-sided Student t test.'}, 'normality_of_residuals': {'type': ['object', 'null'], 'required': ['test', 'statistic', 'p_value', 'null_hypothesis', 'reject_at_alpha'], 'properties': {'test': {'type': 'string', 'const': 'jarque_bera', 'description': 'The test.'}, 'p_value': {'type': 'number', 'examples': [0.81], 'description': 'Chi-square(2) p-value, exp(-JB/2).'}, 'statistic': {'type': 'number', 'examples': [0.42], 'description': 'Jarque-Bera statistic.'}, 'null_hypothesis': {'type': 'string', 'examples': ['the values are normally distributed'], 'description': 'What the test rejects.'}, 'reject_at_alpha': {'type': 'boolean', 'examples': [False], 'description': 'p_value < alpha: not normal at this alpha.'}}, 'description': 'Jarque-Bera normality test; null when the values are constant.'}}, 'description': 'Hypothesis tests validated at alpha; null when not requested.'}, 'prediction': {'type': ['array', 'null'], 'items': {'type': 'object', 'required': ['x', 'y_hat', 'mean_ci', 'prediction_interval'], 'properties': {'x': {'type': 'number', 'examples': [6.0], 'description': 'The x asked for.'}, 'y_hat': {'type': 'number', 'examples': [11.96], 'description': 'Predicted y.'}, 'mean_ci': {'type': 'array', 'items': {'type': 'number', 'examples': [0.0], 'description': 'Bound.'}, 'examples': [[1.43, 2.53]], 'description': 'Lower and upper bound at the confidence level.'}, 'prediction_interval': {'type': 'array', 'items': {'type': 'number', 'examples': [0.0], 'description': 'Bound.'}, 'examples': [[1.43, 2.53]], 'description': 'Lower and upper bound at the confidence level.'}}}, 'description': 'One entry per predict_x; null when not requested.'}, 'confidence_level': {'type': 'number', 'examples': [0.95], 'description': '1 - alpha: the level of every interval.'}, 'linear_regression': {'type': ['object', 'null'], 'required': ['slope', 'intercept', 'r', 'r_squared', 'adjusted_r_squared', 'slope_std_error', 'intercept_std_error', 'residual_std_error', 'degrees_of_freedom', 'slope_t', 'intercept_t', 't_critical', 'slope_ci', 'intercept_ci', 'f_statistic', 'sse', 'sst', 'x_mean', 'y_mean'], 'properties': {'r': {'type': ['number', 'null'], 'examples': [0.998], 'description': 'Pearson correlation; null when y is constant.'}, 'sse': {'type': 'number', 'examples': [0.152], 'description': 'Sum of squared residuals.'}, 'sst': {'type': 'number', 'examples': [39.4], 'description': 'Total sum of squares of y.'}, 'slope': {'type': 'number', 'examples': [1.98], 'description': 'OLS slope.'}, 'x_mean': {'type': 'number', 'examples': [3.0], 'description': 'Mean of x.'}, 'y_mean': {'type': 'number', 'examples': [6.02], 'description': 'Mean of y.'}, 'slope_t': {'type': ['number', 'null'], 'examples': [27.8], 'description': 't statistic of the slope; null when undefined.'}, 'slope_ci': {'type': 'array', 'items': {'type': 'number', 'examples': [0.0], 'description': 'Bound.'}, 'examples': [[1.43, 2.53]], 'description': 'Lower and upper bound at the confidence level.'}, 'intercept': {'type': 'number', 'examples': [0.08], 'description': 'OLS intercept.'}, 'r_squared': {'type': ['number', 'null'], 'examples': [0.996], 'description': 'Coefficient of determination; null when y is constant.'}, 't_critical': {'type': 'number', 'examples': [3.18], 'description': 'Two-sided t critical value at alpha with df degrees of freedom.'}, 'f_statistic': {'type': ['number', 'null'], 'examples': [773.0], 'description': 'F statistic of the regression (t^2); null when undefined.'}, 'intercept_t': {'type': ['number', 'null'], 'examples': [0.34], 'description': 't statistic of the intercept; null when undefined.'}, 'intercept_ci': {'type': 'array', 'items': {'type': 'number', 'examples': [0.0], 'description': 'Bound.'}, 'examples': [[1.43, 2.53]], 'description': 'Lower and upper bound at the confidence level.'}, 'slope_std_error': {'type': 'number', 'examples': [0.071], 'description': 'Standard error of the slope.'}, 'adjusted_r_squared': {'type': ['number', 'null'], 'examples': [0.995], 'description': 'R^2 adjusted for degrees of freedom.'}, 'degrees_of_freedom': {'type': 'integer', 'examples': [3], 'description': 'n - 2.'}, 'residual_std_error': {'type': 'number', 'examples': [0.225], 'description': 'Standard error of the residuals, sqrt(SSE / df).'}, 'intercept_std_error': {'type': 'number', 'examples': [0.236], 'description': 'Standard error of the intercept.'}}, 'description': 'Ordinary least squares fit of y on x; null when not requested.'}, 'normal_distribution': {'type': ['object', 'null'], 'required': ['of', 'mean', 'std_dev', 'variance', 'min', 'max', 'median', 'skewness', 'excess_kurtosis', 'quantiles', 'probabilities', 'normality'], 'properties': {'of': {'enum': ['y', 'x', 'residuals'], 'type': 'string', 'examples': ['y'], 'description': 'Which values the model fits.'}, 'max': {'type': 'number', 'examples': [10.1], 'description': 'Largest value.'}, 'min': {'type': 'number', 'examples': [2.1], 'description': 'Smallest value.'}, 'mean': {'type': 'number', 'examples': [6.02], 'description': 'Sample mean.'}, 'median': {'type': 'number', 'examples': [6.2], 'description': 'Median of the values.'}, 'std_dev': {'type': 'number', 'examples': [3.14], 'description': 'Sample standard deviation (n - 1).'}, 'skewness': {'type': ['number', 'null'], 'examples': [0.05], 'description': 'Sample skewness; null when the values are constant.'}, 'variance': {'type': 'number', 'examples': [9.86], 'description': 'Sample variance (n - 1).'}, 'normality': {'type': ['object', 'null'], 'required': ['test', 'statistic', 'p_value', 'null_hypothesis', 'reject_at_alpha'], 'properties': {'test': {'type': 'string', 'const': 'jarque_bera', 'description': 'The test.'}, 'p_value': {'type': 'number', 'examples': [0.81], 'description': 'Chi-square(2) p-value, exp(-JB/2).'}, 'statistic': {'type': 'number', 'examples': [0.42], 'description': 'Jarque-Bera statistic.'}, 'null_hypothesis': {'type': 'string', 'examples': ['the values are normally distributed'], 'description': 'What the test rejects.'}, 'reject_at_alpha': {'type': 'boolean', 'examples': [False], 'description': 'p_value < alpha: not normal at this alpha.'}}, 'description': 'Jarque-Bera normality test; null when the values are constant.'}, 'quantiles': {'type': ['array', 'null'], 'items': {'type': 'object', 'required': ['p', 'value'], 'properties': {'p': {'type': 'number', 'examples': [0.95], 'description': 'Probability.'}, 'value': {'type': 'number', 'examples': [11.19], 'description': 'Value at that quantile.'}}}, 'description': 'Quantiles of the fitted normal; null when degenerate.'}, 'probabilities': {'type': 'array', 'items': {'type': 'object', 'required': ['query', 'probability'], 'properties': {'query': {'type': ['object'], 'examples': [{'below': 8.0}], 'description': 'The query as sent.'}, 'probability': {'type': 'number', 'examples': [0.736], 'description': 'Probability under the fitted normal.'}}}, 'examples': [[{'query': {'below': 8.0}, 'probability': 0.736}]], 'description': 'Answers to probability_queries, in order.'}, 'excess_kurtosis': {'type': ['number', 'null'], 'examples': [-1.3], 'description': 'Excess kurtosis; null when the values are constant.'}}, 'description': 'Normal model of the chosen values; null when not requested.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_property_context
Everything the public record says about a US address
One US address or point, one call: FEMA National Risk Index ratings for flooding and 17 other hazards with expected annual loss, tract median home value, rent, income, ownership and vacancy (Census ACS), price trend (FHFA), fair market rents for the metro and ZIP (HUD), nearby public schools with enrollment and ratios (NCES), walkability (EPA) and Superfund sites nearby, plus tract, county, ZIP, metro and districts. Input: address or lat and lng. $0.25 per call. Returns: input{}, matched_address, lat, lng, geography{state, county, tract, zip, metro, congressional_district, school_district...}, flood{zone, special_flood_hazard_area...}, hazard_risk{overall_rating, hazards{}, notice...}, housing{median_home_value, median_gross_rent...}, price_trend{}, fair_market_rent{zip{}...}, schools[], walkability{}, superfund_sites[], sources[], sections_failed[], notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['address']}, {'required': ['lat', 'lng']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'lat': {'type': 'number', 'maximum': 72, 'minimum': 17, 'description': 'Latitude, instead of an address.'}, 'lng': {'type': 'number', 'maximum': -64, 'minimum': -180, 'description': 'Longitude, instead of an address.'}, 'address': {'type': 'string', 'maxLength': 200, 'minLength': 5, 'description': 'US street address with city and state or ZIP.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'school_radius_km': {'type': 'number', 'maximum': 5, 'minimum': 0.1, 'description': 'Schools within this radius. Default 1.5.'}, 'superfund_radius_km': {'type': 'number', 'maximum': 15, 'minimum': 0.1, 'description': 'Superfund sites within this radius. Default 5.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'property.context response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['input', 'matched_address', 'lat', 'lng', 'geography', 'hazard_risk', 'housing', 'price_trend', 'fair_market_rent', 'schools', 'school_radius_km', 'walkability', 'superfund_sites', 'superfund_radius_km', 'sources', 'sections_failed', 'notes', 'checked_at'], 'properties': {'lat': {'type': 'number', 'examples': [38.84505589808], 'description': 'Latitude used.'}, 'lng': {'type': 'number', 'examples': [-76.92836638093], 'description': 'Longitude used.'}, 'input': {'type': 'object', 'required': ['address', 'lat', 'lng'], 'properties': {'lat': {'type': ['number', 'null'], 'examples': [38.845], 'description': 'Latitude as sent; null when an address was sent.'}, 'lng': {'type': ['number', 'null'], 'examples': [-76.928], 'description': 'Longitude as sent; null when an address was sent.'}, 'address': {'type': ['string', 'null'], 'examples': ['4600 Silver Hill Rd, Washington, DC 20233'], 'description': 'Address as sent; null when a point was sent.'}}, 'description': 'What was asked.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['FEMA has no digital flood map at this point.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'housing': {'type': ['object', 'null'], 'required': ['median_home_value', 'median_home_value_moe', 'median_gross_rent', 'median_household_income', 'population', 'owner_occupied_pct', 'median_year_built', 'vacancy_pct', 'survey', 'level'], 'properties': {'level': {'type': 'string', 'examples': ['census tract'], 'description': 'Geography of the figures.'}, 'survey': {'type': 'string', 'examples': ['ACS 5-year estimates 2020-2024 (Census Bureau)'], 'description': 'Which survey.'}, 'population': {'type': ['integer', 'null'], 'examples': [3053], 'description': 'Population.'}, 'vacancy_pct': {'type': ['number', 'null'], 'examples': [16.8], 'description': 'Share of housing units vacant, %.'}, 'median_gross_rent': {'type': ['integer', 'null'], 'examples': [1486], 'description': 'Median gross rent, USD per month.'}, 'median_home_value': {'type': ['integer', 'null'], 'examples': [332200], 'description': 'Median value of owner-occupied homes, USD.'}, 'median_year_built': {'type': ['integer', 'null'], 'examples': [1969], 'description': 'Median year homes were built.'}, 'owner_occupied_pct': {'type': ['number', 'null'], 'examples': [30.3], 'description': 'Share of occupied homes that are owner-occupied, %.'}, 'median_home_value_moe': {'type': ['integer', 'null'], 'examples': [24540], 'description': 'Margin of error of that median, USD.'}, 'median_household_income': {'type': ['integer', 'null'], 'examples': [70286], 'description': 'Median household income, USD.'}}, 'description': 'Census tract housing and income figures; null when the tract has none.'}, 'schools': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'level', 'grades', 'enrollment', 'students_per_teacher', 'charter', 'district', 'city', 'distance_km'], 'properties': {'city': {'type': ['string', 'null'], 'examples': ['Suitland'], 'description': 'City.'}, 'name': {'type': ['string', 'null'], 'examples': ['Suitland Elementary'], 'description': 'School.'}, 'level': {'type': ['string', 'null'], 'examples': ['Elementary'], 'description': 'Level.'}, 'grades': {'type': ['string', 'null'], 'examples': ['PK-05'], 'description': 'Grade span.'}, 'charter': {'type': 'boolean', 'examples': [False], 'description': 'Charter school.'}, 'district': {'type': ['string', 'null'], 'examples': ["Prince George's County Public Schools"], 'description': 'District.'}, 'enrollment': {'type': ['integer', 'null'], 'examples': [514], 'description': 'Students enrolled.'}, 'distance_km': {'type': ['number', 'null'], 'examples': [0.88], 'description': 'Straight-line distance.'}, 'students_per_teacher': {'type': ['number', 'null'], 'examples': [14.94], 'description': 'Students per teacher.'}}, 'description': 'A public school (NCES 2024-25).'}, 'examples': [[]], 'description': 'Public schools within the radius, nearest first.'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.fema.gov/flood-maps/national-flood-hazard-layer'], 'description': 'Where it is published.'}, 'name': {'type': 'string', 'examples': ['FEMA National Flood Hazard Layer'], 'description': 'Source.'}}, 'description': 'A source.'}, 'description': 'Every source this answer draws on.'}, 'geography': {'type': 'object', 'required': ['state', 'state_fips', 'county', 'county_fips', 'tract', 'block_group', 'place', 'zip', 'metro', 'metro_code', 'congressional_district', 'school_district'], 'properties': {'zip': {'type': ['string', 'null'], 'examples': ['20746'], 'description': 'ZIP code tabulation area.'}, 'metro': {'type': ['string', 'null'], 'examples': ['Washington-Arlington-Alexandria, DC-VA-MD-WV Metro Area'], 'description': 'Metropolitan or micropolitan area.'}, 'place': {'type': ['string', 'null'], 'examples': ['Suitland CDP'], 'description': 'City or census-designated place.'}, 'state': {'type': ['string', 'null'], 'examples': ['Maryland'], 'description': 'State.'}, 'tract': {'type': ['string', 'null'], 'examples': ['24033802405'], 'description': 'Census tract GEOID.'}, 'county': {'type': ['string', 'null'], 'examples': ["Prince George's County"], 'description': 'County.'}, 'metro_code': {'type': ['string', 'null'], 'examples': ['47900'], 'description': 'CBSA code.'}, 'state_fips': {'type': ['string', 'null'], 'examples': ['24'], 'description': 'State FIPS.'}, 'block_group': {'type': ['string', 'null'], 'examples': ['240338024052'], 'description': 'Block group GEOID.'}, 'county_fips': {'type': ['string', 'null'], 'examples': ['24033'], 'description': 'County FIPS.'}, 'school_district': {'type': ['string', 'null'], 'examples': ["Prince George's County Public Schools"], 'description': 'School district.'}, 'congressional_district': {'type': ['string', 'null'], 'examples': ['Congressional District 4'], 'description': 'Congressional district.'}}, 'description': 'Where the address sits (Census Geocoder).'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'hazard_risk': {'type': ['object', 'null'], 'required': ['overall_rating', 'overall_score', 'expected_annual_loss_usd', 'social_vulnerability', 'community_resilience', 'hazards', 'version', 'notice'], 'properties': {'notice': {'type': 'string', 'examples': ["This product uses the Federal Emergency Management Agency's National Risk Index..."], 'description': "FEMA's required notice."}, 'hazards': {'type': 'object', 'examples': [{'heat_wave': 'Relatively Moderate', 'hurricane': 'Relatively Low', 'riverine_flooding': 'Very Low'}], 'description': 'Rating per hazard (18 hazards); null where FEMA does not rate it.', 'additionalProperties': {'type': ['string', 'null']}}, 'version': {'type': ['string', 'null'], 'examples': ['December 2025'], 'description': 'National Risk Index release.'}, 'overall_score': {'type': ['number', 'null'], 'examples': [7.41], 'description': 'Composite risk score (0-100 percentile).'}, 'overall_rating': {'type': ['string', 'null'], 'examples': ['Very Low'], 'description': 'Composite risk rating.'}, 'community_resilience': {'type': ['string', 'null'], 'examples': ['Relatively Low'], 'description': 'Community resilience rating.'}, 'social_vulnerability': {'type': ['string', 'null'], 'examples': ['Relatively High'], 'description': 'Social vulnerability rating.'}, 'expected_annual_loss_usd': {'type': ['integer', 'null'], 'examples': [401271], 'description': 'Expected annual loss for the tract, all hazards.'}}, 'description': 'FEMA National Risk Index for the tract; null when unavailable.'}, 'price_trend': {'type': ['object', 'null'], 'required': ['latest_year', 'annual_change_pct', 'five_year_change_pct', 'source'], 'properties': {'source': {'type': 'string', 'examples': ['FHFA House Price Index, annual, census tract'], 'description': 'Which index.'}, 'latest_year': {'type': 'integer', 'examples': [2025], 'description': 'Latest year with an index value.'}, 'annual_change_pct': {'type': ['number', 'null'], 'examples': [9.46], 'description': 'Change in that year, %.'}, 'five_year_change_pct': {'type': ['number', 'null'], 'examples': [28.31], 'description': 'Change over the five years to it, %.'}}, 'description': 'Tract house price trend; null when FHFA publishes none for the tract.'}, 'walkability': {'type': ['object', 'null'], 'required': ['index', 'meters_to_transit', 'block_group'], 'properties': {'index': {'type': ['number', 'null'], 'examples': [11.33], 'description': 'EPA National Walkability Index, 1 (least) to 20 (most).'}, 'block_group': {'type': ['string', 'null'], 'examples': ['240338024051'], 'description': 'Block group the index describes.'}, 'meters_to_transit': {'type': ['number', 'null'], 'examples': [926.71], 'description': 'Distance to the nearest transit stop, metres.'}}, 'description': 'EPA walkability; null when unavailable.'}, 'matched_address': {'type': ['string', 'null'], 'examples': ['4600 SILVER HILL RD, WASHINGTON, DC, 20233'], 'description': "The Census Geocoder's standardised match; null for a point."}, 'sections_failed': {'type': 'array', 'items': {'type': 'string', 'examples': ['walkability'], 'description': 'A section whose source did not answer; that section is null or empty.'}, 'examples': [[]], 'description': 'Sections that could not be fetched this time; empty when none.'}, 'superfund_sites': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'address', 'city', 'state', 'status', 'url', 'distance_km'], 'properties': {'url': {'type': ['string', 'null'], 'examples': ['https://ofmpub.epa.gov/frs_public2/fii_query_detail.disp_program_facility?p_registry_id=110005037361'], 'description': 'EPA facility page.'}, 'city': {'type': ['string', 'null'], 'examples': ['HOUSTON'], 'description': 'City.'}, 'name': {'type': ['string', 'null'], 'examples': ['SAN JACINTO FOUNDRY'], 'description': 'Site.'}, 'state': {'type': ['string', 'null'], 'examples': ['TX'], 'description': 'State.'}, 'status': {'type': ['string', 'null'], 'examples': ['CURRENTLY ON THE FINAL NPL'], 'description': 'NPL status.'}, 'address': {'type': ['string', 'null'], 'examples': ['3617 BAER STREET'], 'description': 'Address.'}, 'distance_km': {'type': ['number', 'null'], 'examples': [4.61], 'description': 'Straight-line distance.'}}, 'description': 'A Superfund (NPL) site.'}, 'examples': [[]], 'description': 'Superfund sites within the radius, nearest first.'}, 'fair_market_rent': {'type': ['object', 'null'], 'required': ['area', 'studio', 'one_bedroom', 'two_bedroom', 'three_bedroom', 'four_bedroom', 'zip'], 'properties': {'zip': {'type': ['object', 'null'], 'required': ['zip', 'studio', 'one_bedroom', 'two_bedroom', 'three_bedroom', 'four_bedroom'], 'properties': {'zip': {'type': 'string', 'examples': ['20746'], 'description': 'ZIP.'}, 'studio': {'type': ['integer', 'null'], 'examples': [1720], 'description': 'Studio.'}, 'one_bedroom': {'type': ['integer', 'null'], 'examples': [1860], 'description': '1 bedroom.'}, 'two_bedroom': {'type': ['integer', 'null'], 'examples': [2070], 'description': '2 bedrooms.'}, 'four_bedroom': {'type': ['integer', 'null'], 'examples': [3070], 'description': '4 bedrooms.'}, 'three_bedroom': {'type': ['integer', 'null'], 'examples': [2610], 'description': '3 bedrooms.'}}, 'description': 'HUD Small Area (ZIP) fair market rents; null outside metro areas that publish them.'}, 'area': {'type': ['string', 'null'], 'examples': ['Washington-Arlington-Alexandria, DC-VA-MD HUD Metro FMR Area'], 'description': 'HUD fair market rent area.'}, 'studio': {'type': ['integer', 'null'], 'examples': [1953], 'description': 'Studio, USD/month.'}, 'one_bedroom': {'type': ['integer', 'null'], 'examples': [2015], 'description': '1 bedroom.'}, 'two_bedroom': {'type': ['integer', 'null'], 'examples': [2246], 'description': '2 bedrooms.'}, 'four_bedroom': {'type': ['integer', 'null'], 'examples': [3332], 'description': '4 bedrooms.'}, 'three_bedroom': {'type': ['integer', 'null'], 'examples': [2835], 'description': '3 bedrooms.'}}, 'description': 'HUD fair market rents (rent plus utilities); null when unavailable.'}, 'school_radius_km': {'type': 'number', 'examples': [1.5], 'description': 'Radius searched for schools.'}, 'superfund_radius_km': {'type': 'number', 'examples': [5.0], 'description': 'Radius searched for Superfund sites.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_research_brief
Research brief on a URL
Answer a question about one web page: the URL is rendered in a real browser, its content extracted and analysed, and a written brief returned that is grounded in the page only and says when the page does not answer. Input: url, optional question. Use research.page_facts for fixed JSON fields, research.web when the answer needs a web search. $5.00 per call. Returns: brief, title, final_url, source{}, model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'question': {'type': 'string', 'description': 'Optional; defaults to an overview.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'research.brief response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'question', 'brief', 'source', 'model'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com'], 'description': 'The page read.'}, 'brief': {'type': 'string', 'examples': ['The page is a placeholder domain reserved for documentation examples...'], 'description': 'The answer, from the page only.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'title': {'type': ['string', 'null'], 'examples': ['Example Domain'], 'description': 'Page title.'}, 'source': {'type': 'object', 'required': ['text_chars', 'truncated', 'javascript_rendered'], 'properties': {'truncated': {'type': 'boolean', 'examples': [False], 'description': 'Whether the text was cut at the extraction limit.'}, 'text_chars': {'type': 'integer', 'examples': [8421], 'description': 'Characters of readable text extracted.'}, 'javascript_rendered': {'type': 'boolean', 'examples': [True], 'description': 'Whether a real browser rendered the page first.'}}, 'description': 'How the page was read.'}, 'question': {'type': 'string', 'examples': ['What does this page offer, who is it for, and what is the pricing?'], 'description': 'The question answered.'}, 'final_url': {'type': ['string', 'null'], 'examples': ['https://example.com/'], 'description': 'The URL after redirects.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_research_company
Research and verify a company
Company research brief from live web sources: what the company does, its products and anything notable, every claim cited to a numbered source, with thin or conflicting evidence disclosed rather than papered over. Input: company name, optional max_sources. $10.00 per call. Returns: company, report, sources[{n,url,title}], partial[], news[], news_note, model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['company'], 'properties': {'company': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'max_sources': {'type': 'integer', 'description': '1-4, default 4.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'research.company response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['company', 'report', 'sources', 'partial', 'news', 'news_note', 'model'], 'properties': {'news': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'url', 'source_name', 'published_at'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.reuters.com/markets/...'], 'description': 'Article link.'}, 'title': {'type': 'string', 'examples': ['Bitcoin steadies as ETF inflows resume'], 'description': 'Headline.'}, 'source_name': {'type': ['string', 'null'], 'examples': ['Reuters'], 'description': 'Publisher.'}, 'published_at': {'type': ['string', 'null'], 'examples': ['2026-09-27T09:00:00Z'], 'description': 'Publication time (UTC).'}}, 'description': 'One recent headline.'}, 'examples': [[]], 'description': 'Recent headlines read for this call (GDELT, cite https://www.gdeltproject.org/), newest first; empty when none.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'report': {'type': 'string', 'examples': ['Anthropic is an AI safety company that builds the Claude model family [1]...'], 'description': 'Cited brief: what it does, products, notable facts; thin or conflicting evidence is called out.'}, 'company': {'type': 'string', 'examples': ['Anthropic'], 'description': 'The company researched.'}, 'partial': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'reason'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com/paywalled'], 'description': 'Source that could not be read.'}, 'reason': {'type': 'string', 'examples': ['HTTP 403 from the target'], 'description': 'Why it could not be read.'}}, 'description': 'A source that was found but not read; disclosed, never silently dropped.'}, 'examples': [[]], 'description': 'Sources found but not read, with the reason.'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['n', 'url'], 'properties': {'n': {'type': 'integer', 'examples': [1], 'description': 'Citation number used as [n] in the text.'}, 'url': {'type': 'string', 'examples': ['https://example.com/about'], 'description': 'Source URL.'}, 'title': {'type': ['string', 'null'], 'examples': ['About Example'], 'description': 'Page title, when the page had one.'}}, 'description': 'One source the answer cites.'}, 'description': 'Sources read, numbered as cited.'}, 'news_note': {'type': ['string', 'null'], 'examples': ['Headlines unavailable for this call: gdelt:query: BigQuery did not finish within 60s'], 'description': 'Why headlines are missing or partial; null when they were read cleanly.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_research_page_facts
Structured facts from a URL
Structured facts from a web page: name the fields you need (pricing, contact, product names, anything) and get exactly those keys back as JSON from the rendered page, null where the page does not say. Input: url and fields. Built for pipelines that need a fixed shape; use research.brief for a written answer. $5.00 per call. Returns: fields{} with one key per requested field, plus title and final_url.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url', 'fields'], 'properties': {'url': {'type': 'string'}, 'fields': {'type': 'array', 'items': {'type': 'string'}}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'research.page_facts response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'fields', 'model'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com'], 'description': 'The page read.'}, 'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'title': {'type': ['string', 'null'], 'examples': ['Example Domain'], 'description': 'Page title.'}, 'fields': {'type': 'object', 'examples': [{'title': 'Example Domain', 'pricing': None}], 'required': [], 'properties': {}, 'description': 'Exactly the requested field names; null where the page does not state a value.', 'additionalProperties': True}, 'final_url': {'type': ['string', 'null'], 'examples': ['https://example.com/'], 'description': 'The URL after redirects.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_research_web
Research brief from live web search
Cited web research: search the live web for your question, read the top sources in full, and get a written answer with every claim tied to a numbered source. Input: question, optional max_sources. Use search.web for a quick grounded answer with links only. $5.00 per call. Returns: question, answer, sources[{n,url,title}], partial[], model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['question'], 'properties': {'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'question': {'type': 'string'}, 'max_sources': {'type': 'integer', 'description': '1-4, default 3.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'research.web response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['question', 'answer', 'sources', 'partial', 'model'], 'properties': {'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'answer': {'type': 'string', 'examples': ['HTTP 402 Payment Required is reserved for payments; machine-payment protocols use it to quote a price [1]...'], 'description': 'Cited answer; every claim carries [n].'}, 'partial': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'reason'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com/paywalled'], 'description': 'Source that could not be read.'}, 'reason': {'type': 'string', 'examples': ['HTTP 403 from the target'], 'description': 'Why it could not be read.'}}, 'description': 'A source that was found but not read; disclosed, never silently dropped.'}, 'examples': [[]], 'description': 'Sources found but not read, with the reason.'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['n', 'url'], 'properties': {'n': {'type': 'integer', 'examples': [1], 'description': 'Citation number used as [n] in the text.'}, 'url': {'type': 'string', 'examples': ['https://example.com/about'], 'description': 'Source URL.'}, 'title': {'type': ['string', 'null'], 'examples': ['About Example'], 'description': 'Page title, when the page had one.'}}, 'description': 'One source the answer cites.'}, 'description': 'Sources read, numbered as cited.'}, 'question': {'type': 'string', 'examples': ['What is the HTTP 402 status code for?'], 'description': 'The question researched.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_sanctions_screen
Screen a name against US, UK and EU sanctions lists
Is this person, company, vessel or aircraft sanctioned? One name screened against the OFAC SDN and consolidated lists, the UK Sanctions List and the EU financial sanctions list, read from the governments' own files (each list's date returned). Fuzzy, word-order-free: aliases and one-letter typos match, a different surname does not. Each match gives list, programmes, countries, birth dates and UN reference. Optional type, country, birth year. Input: name. $0.05 per call. Returns: query{}, verdict (potential_match | no_match), match_count, matches[{list, list_name, id, name, matched_name, score, type, programs[], countries[], birth_dates[], un_reference, listed_on, source_url}], lists[{list, name, publisher, license, source_url, as_of, entries, loaded}], notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'minLength': 2, 'description': 'The person, company, vessel or aircraft name, in any word order.'}, 'type': {'enum': ['any', 'person', 'entity', 'vessel', 'aircraft'], 'type': 'string', 'description': 'Only match this kind of listing. Default any.'}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Most matches returned, 1-50. Default 10.'}, 'lists': {'type': 'array', 'items': {'enum': ['ofac_sdn', 'ofac_consolidated', 'uk', 'eu'], 'type': 'string'}, 'description': 'Optional subset of lists to screen. Default all four.'}, 'country': {'type': 'string', 'maxLength': 60, 'description': 'Optional country (Iran, Russia): a listing that records only other countries is dropped.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'threshold': {'type': 'number', 'maximum': 1, 'minimum': 0.6, 'description': 'Minimum match score, 0.6-1. Default 0.85.'}, 'birth_year': {'type': 'integer', 'maximum': 2030, 'minimum': 1880, 'description': 'Optional, for people: a listing whose recorded birth years are all more than a year away is dropped.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'sanctions.screen response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'verdict', 'match_count', 'matches', 'lists', 'notes', 'checked_at'], 'properties': {'lists': {'type': 'array', 'items': {'type': 'object', 'required': ['list', 'name', 'publisher', 'license', 'source_url', 'as_of', 'entries', 'loaded'], 'properties': {'list': {'type': 'string', 'examples': ['ofac_sdn'], 'description': 'List id.'}, 'name': {'type': 'string', 'examples': ['OFAC Specially Designated Nationals (SDN) List'], 'description': 'List name.'}, 'as_of': {'type': ['string', 'null'], 'examples': ['2026-09-23'], 'description': "The list's own publication date."}, 'loaded': {'type': 'boolean', 'examples': [True], 'description': 'The list was screened.'}, 'entries': {'type': 'integer', 'examples': [19391], 'description': 'Entries loaded from it.'}, 'license': {'type': 'string', 'examples': ['US government work (public domain)'], 'description': 'Its reuse licence.'}, 'publisher': {'type': 'string', 'examples': ['US Department of the Treasury, Office of Foreign Assets Control'], 'description': 'Who publishes it.'}, 'source_url': {'type': 'string', 'examples': ['https://sanctionssearch.ofac.treas.gov/'], 'description': 'Where it is published.'}}, 'description': 'One list screened.'}, 'examples': [[]], 'description': 'Every list asked for, with its date.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['A potential match is a lead to review, not a determination.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats.'}, 'query': {'type': 'object', 'required': ['name', 'type', 'threshold', 'limit', 'lists', 'country', 'birth_year'], 'properties': {'name': {'type': 'string', 'examples': ['Rosneft'], 'description': 'The name screened.'}, 'type': {'enum': ['any', 'person', 'entity', 'vessel', 'aircraft'], 'type': 'string', 'examples': ['entity'], 'description': 'The kind of listing matched.'}, 'limit': {'type': 'integer', 'examples': [10], 'description': 'Most matches returned.'}, 'lists': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'examples': [None], 'description': 'The lists asked for; null means all four.'}, 'country': {'type': ['string', 'null'], 'examples': ['Russia'], 'description': 'Country filter, as given.'}, 'threshold': {'type': 'number', 'examples': [0.85], 'description': 'Minimum match score used.'}, 'birth_year': {'type': ['integer', 'null'], 'examples': [1952], 'description': 'Birth-year filter, as given.'}}, 'description': 'The screening request.'}, 'matches': {'type': 'array', 'items': {'type': 'object', 'required': ['list', 'list_name', 'id', 'name', 'matched_name', 'score', 'type', 'programs', 'countries', 'birth_dates', 'un_reference', 'listed_on', 'source_url'], 'properties': {'id': {'type': 'string', 'examples': ['12345'], 'description': "The list's own id for the entry."}, 'list': {'enum': ['ofac_sdn', 'ofac_consolidated', 'uk', 'eu'], 'type': 'string', 'examples': ['ofac_sdn'], 'description': 'Which list.'}, 'name': {'type': 'string', 'examples': ['ROSNEFT'], 'description': "The entry's primary name."}, 'type': {'enum': ['person', 'entity', 'vessel', 'aircraft'], 'type': 'string', 'examples': ['entity'], 'description': 'Kind of listing.'}, 'score': {'type': 'number', 'examples': [1.0], 'description': 'Match score, 0-1 (1 = the same words).'}, 'programs': {'type': 'array', 'items': {'type': 'string', 'examples': ['RUSSIA-EO14024'], 'description': 'A sanctions programme or regime.'}, 'examples': [[]], 'description': 'Programmes the entry is listed under.'}, 'countries': {'type': 'array', 'items': {'type': 'string', 'examples': ['Russia'], 'description': 'A country the list records.'}, 'examples': [[]], 'description': 'Countries the list records (address, nationality, birth).'}, 'list_name': {'type': 'string', 'examples': ['OFAC Specially Designated Nationals (SDN) List'], 'description': "The list's name."}, 'listed_on': {'type': ['string', 'null'], 'examples': ['2014-07-16'], 'description': 'Designation date, when the list records it.'}, 'source_url': {'type': 'string', 'examples': ['https://sanctionssearch.ofac.treas.gov/'], 'description': 'Where the list is published.'}, 'birth_dates': {'type': 'array', 'items': {'type': 'string', 'examples': ['07 Oct 1952'], 'description': 'A date of birth as the list records it.'}, 'examples': [[]], 'description': 'Dates of birth the list records.'}, 'matched_name': {'type': 'string', 'examples': ['ROSNEFT'], 'description': 'The name or alias that matched.'}, 'un_reference': {'type': ['string', 'null'], 'examples': ['TAi.002'], 'description': 'UN Security Council reference, when the list records one.'}}, 'description': 'One listing.'}, 'examples': [[]], 'description': 'Matches, best first.'}, 'verdict': {'enum': ['potential_match', 'no_match', 'incomplete'], 'type': 'string', 'examples': ['potential_match'], 'description': 'potential_match: at least one listing scored at or above the threshold. no_match: none did, on every list asked for. incomplete: none did, but a list could not be screened (see notes).'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'match_count': {'type': 'integer', 'examples': [3], 'description': 'Number of matches returned.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_search_results
Web and news results in any language and country (Brave index)
Independent web and news results for a query from Brave's own index, in any language and country: title, URL, description, age and extra snippets for the web; headline, source and age for news. Use language for the search language and interface, country for the market, freshness to keep to the last day, week, month or year. Results, not an answer: pick what to read next with fetch.raw or extract.page. Input: query; optional country, language, count, freshness, news, safesearch. $0.25 per call. Returns: query, country, language, freshness, web[{title, url, description, age, page_age, language, site_name, hostname, extra_snippets[]}], web_count, news[{title, url, description, age, page_age, source, breaking}], news_count, more_results_available, source, notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'news': {'type': 'boolean', 'description': 'Include news results. Default true.'}, 'count': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Results per block, default 10.'}, 'query': {'type': 'string', 'maxLength': 400, 'minLength': 1, 'description': 'Words to search for, in any language.'}, 'country': {'type': 'string', 'pattern': '^[A-Za-z]{2}$', 'description': "Market, ISO 3166-1 alpha-2 (US, JP, DE). Default: the engine's."}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}, 'freshness': {'enum': ['day', 'week', 'month', 'year'], 'type': 'string', 'description': 'Only results from this window.'}, 'safesearch': {'enum': ['off', 'moderate', 'strict'], 'type': 'string', 'description': 'Default moderate.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'search.results response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'country', 'language', 'freshness', 'web', 'web_count', 'news', 'news_count', 'more_results_available', 'source', 'notes', 'checked_at'], 'properties': {'web': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'url', 'description', 'age', 'page_age', 'language', 'site_name', 'hostname', 'extra_snippets'], 'properties': {'age': {'type': ['string', 'null'], 'examples': ['4 日前'], 'description': 'Age as the engine words it.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://www.accuweather.com/en/jp/tokyo/226396/weather-forecast/226396'], 'description': 'Page URL.'}, 'title': {'type': ['string', 'null'], 'examples': ['Tokyo, Tokyo, Japan Weather Forecast | AccuWeather'], 'description': 'Page title.'}, 'hostname': {'type': ['string', 'null'], 'examples': ['www.accuweather.com'], 'description': 'Host.'}, 'language': {'type': ['string', 'null'], 'examples': ['en'], 'description': 'Page language.'}, 'page_age': {'type': ['string', 'null'], 'examples': ['2026-09-23T10:38:54'], 'description': 'Page date when known.'}, 'site_name': {'type': ['string', 'null'], 'examples': ['AccuWeather'], 'description': 'Site name.'}, 'description': {'type': ['string', 'null'], 'examples': ['Tokyo weather forecast with current conditions...'], 'description': 'Engine snippet.'}, 'extra_snippets': {'type': 'array', 'items': {'type': 'string', 'examples': ['Wind: 10 km/h'], 'description': 'Another snippet from the page.'}, 'examples': [[]], 'description': 'Up to 5 extra snippets.'}}, 'description': 'One web result.'}, 'description': 'Web results in engine order.'}, 'news': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'url', 'description', 'age', 'page_age', 'source', 'breaking'], 'properties': {'age': {'type': ['string', 'null'], 'examples': ['2 hours ago'], 'description': 'Age as worded.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://example.com/news/1'], 'description': 'Article URL.'}, 'title': {'type': ['string', 'null'], 'examples': ['Typhoon nears Tokyo'], 'description': 'Headline.'}, 'source': {'type': ['string', 'null'], 'examples': ['Reuters'], 'description': 'Publisher or host.'}, 'breaking': {'type': 'boolean', 'examples': [False], 'description': 'Flagged breaking by the engine.'}, 'page_age': {'type': ['string', 'null'], 'examples': ['2026-09-27T09:00:00'], 'description': 'Article date when known.'}, 'description': {'type': ['string', 'null'], 'examples': ['...'], 'description': 'Snippet.'}}, 'description': 'One news result.'}, 'description': 'News results; empty when not asked or none.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['No result matched the query.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'query': {'type': 'string', 'examples': ['東京 天気予報'], 'description': 'Query as given.'}, 'source': {'type': 'string', 'const': 'brave', 'description': 'Data source.'}, 'country': {'type': ['string', 'null'], 'examples': ['JP'], 'description': 'Market searched.'}, 'language': {'type': ['string', 'null'], 'examples': ['ja'], 'description': 'Search language when given.'}, 'freshness': {'type': ['string', 'null'], 'examples': ['week'], 'description': 'Window applied.'}, 'web_count': {'type': 'integer', 'examples': [5], 'description': 'Web results returned.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'news_count': {'type': 'integer', 'examples': [3], 'description': 'News results returned.'}, 'more_results_available': {'type': 'boolean', 'examples': [True], 'description': 'The engine has more pages.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_search_web
Web search
Web search for agents: a live query on Brave's independent web index, answered from the current results alone, with the source URLs and titles it was given, never the model's own memory. Input: query; optional language. Use search.results for the raw result list, research.web for sources read in full. $0.10 per call. Returns: query, answer, sources[{url,title}], search_queries_used[], model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'query': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'search.web response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'answer', 'sources', 'search_queries_used', 'model'], 'properties': {'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'query': {'type': 'string', 'examples': ['HTTP 402 Payment Required'], 'description': 'The query searched.'}, 'answer': {'type': 'string', 'examples': ['HTTP 402 Payment Required is a status code reserved for payments...'], 'description': 'Grounded answer with the sources it drew on.'}, 'sources': {'type': 'array', 'items': {'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'examples': ['https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/402'], 'description': 'Source URL.'}, 'title': {'type': ['string', 'null'], 'examples': ['402 Payment Required - HTTP | MDN'], 'description': 'Source title.'}}}, 'description': 'Web sources the answer is grounded in.'}, 'search_queries_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['HTTP 402 status code'], 'description': 'A query the grounding step issued.'}, 'examples': [['HTTP 402 status code']], 'description': 'Search queries the grounding step actually ran.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_security_mcp_inspect
Inspect an MCP endpoint
MCP server security check: probe any MCP endpoint's initialize handshake and tools/list and report whether it requires authentication, which protocol version it speaks, how many tools it exposes and which are not marked read-only. Input: url of the MCP endpoint. $5.00 per call. Returns: reachable, requires_auth, protocol_version, tool_count, tools[], tools_without_readonly_annotation[].
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'http(s) URL to fetch.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'security.mcp_inspect response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['url', 'reachable', 'requires_auth', 'initialize_status', 'tool_count', 'tools', 'tools_without_readonly_annotation'], 'properties': {'url': {'type': 'string', 'examples': ['https://mcp.example.com/mcp'], 'description': 'The MCP endpoint inspected.'}, 'tools': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': ['string', 'null'], 'examples': ['get_weather'], 'description': 'Tool name.'}, 'annotations': {'type': ['object', 'null'], 'examples': [{'readOnlyHint': True}], 'description': "The tool's annotations object, as served."}, 'description': {'type': ['string', 'null'], 'examples': ['Current weather for a city.'], 'description': 'Tool description.'}}, 'description': 'One tool the inspected server lists.'}, 'description': 'Every tool listed, with its annotations.'}, 'reachable': {'type': 'boolean', 'examples': [True], 'description': 'Whether the server answered the MCP initialize handshake.'}, 'tool_count': {'type': 'integer', 'examples': [3], 'description': 'Tools listed.'}, 'server_name': {'type': ['string', 'null'], 'examples': ['example-mcp'], 'description': 'serverInfo.name.'}, 'tools_error': {'type': ['string', 'null'], 'examples': [None], 'description': 'Why tools/list failed, when it did.'}, 'requires_auth': {'type': 'boolean', 'examples': [False], 'description': 'Whether an unauthenticated initialize was refused.'}, 'server_version': {'type': ['string', 'null'], 'examples': ['1.0.0'], 'description': 'serverInfo.version.'}, 'protocol_version': {'type': ['string', 'null'], 'examples': ['2025-06-18'], 'description': 'MCP protocol version the server negotiated.'}, 'initialize_status': {'type': 'integer', 'examples': [200], 'description': 'HTTP status of the initialize call.'}, 'tools_without_readonly_annotation': {'type': 'array', 'items': {'type': 'string', 'examples': ['delete_records'], 'description': 'A tool name.'}, 'examples': [['delete_records']], 'description': 'Tools that do not declare readOnlyHint: the ones an agent should treat as able to change state.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_social_bluesky
Bluesky profile, posts, account search or thread, live
Bluesky, live and keyless from the public AppView: a profile with its latest posts (likes, reposts, replies, quotes, repost and reply flags, embed type), an account search, or a post thread with its replies. Input: mode (profile, search_actors, thread) with actor, query or uri; optional posts, limit, depth. Post search is not offered: Bluesky refuses it to unauthenticated callers. $0.05 per call. Returns: mode, actor, query, uri, profile{}, posts[], actors[], thread{}, post_count, actor_count, source, as_of, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mode'], 'properties': {'uri': {'type': 'string', 'description': 'Post AT-URI, at://did:plc:.../app.bsky.feed.post/<rkey>; thread mode.'}, 'mode': {'enum': ['profile', 'search_actors', 'thread'], 'type': 'string', 'description': 'profile: an account and its latest posts; search_actors: accounts matching a query; thread: a post and its replies.'}, 'actor': {'type': 'string', 'maxLength': 253, 'description': 'Handle (bsky.app) or DID (did:plc:...); profile mode.'}, 'depth': {'type': 'integer', 'maximum': 6, 'minimum': 1, 'description': 'Reply depth to flatten in thread mode, default 2.'}, 'limit': {'type': 'integer', 'maximum': 25, 'minimum': 1, 'description': 'Accounts to return in search_actors mode, default 10.'}, 'posts': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Latest posts to return in profile mode, default 10.'}, 'query': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Words to match accounts on; search_actors mode.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'social.bluesky response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['mode', 'actor', 'query', 'uri', 'profile', 'posts', 'actors', 'thread', 'post_count', 'actor_count', 'source', 'as_of', 'checked_at'], 'properties': {'uri': {'type': ['string', 'null'], 'examples': ['at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a'], 'description': 'Post AT-URI asked for (thread mode).'}, 'mode': {'enum': ['profile', 'search_actors', 'thread'], 'type': 'string', 'examples': ['profile'], 'description': 'Mode run.'}, 'actor': {'type': ['string', 'null'], 'examples': ['bsky.app'], 'description': 'Actor asked for (profile mode).'}, 'as_of': {'type': 'string', 'examples': ['2026-09-26T20:00:00.000Z'], 'description': 'Indexing time of the newest post returned, else checked_at.'}, 'posts': {'type': 'array', 'items': {'type': 'object', 'required': ['uri', 'cid', 'url', 'author_handle', 'author_did', 'text', 'created_at', 'indexed_at', 'likes', 'reposts', 'replies', 'quotes', 'langs', 'is_repost', 'reply_to', 'embed_type'], 'properties': {'cid': {'type': ['string', 'null'], 'examples': ['bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi'], 'description': 'Content id.'}, 'uri': {'type': 'string', 'examples': ['at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a'], 'description': 'Post AT-URI.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a'], 'description': 'Web URL of the post.'}, 'text': {'type': 'string', 'examples': ['hello world'], 'description': 'Post text.'}, 'langs': {'type': 'array', 'items': {'type': 'string', 'examples': ['en'], 'description': 'BCP-47 tag.'}, 'examples': [['en']], 'description': 'Languages the author declared.'}, 'likes': {'type': ['integer', 'null'], 'examples': [90], 'description': 'Likes.'}, 'quotes': {'type': ['integer', 'null'], 'examples': [2], 'description': 'Quote posts.'}, 'replies': {'type': ['integer', 'null'], 'examples': [5], 'description': 'Replies.'}, 'reposts': {'type': ['integer', 'null'], 'examples': [7], 'description': 'Reposts.'}, 'reply_to': {'type': ['string', 'null'], 'examples': [None], 'description': 'AT-URI of the parent post when this is a reply.'}, 'is_repost': {'type': 'boolean', 'examples': [False], 'description': 'Whether this feed item is a repost by the actor.'}, 'author_did': {'type': ['string', 'null'], 'examples': ['did:plc:z72i7hdynmk6r22z27h6tvur'], 'description': 'Author DID.'}, 'created_at': {'type': ['string', 'null'], 'examples': ['2026-09-26T20:00:00.000Z'], 'description': "Author's creation time."}, 'embed_type': {'type': ['string', 'null'], 'examples': ['app.bsky.embed.images#view'], 'description': 'Embed type ($type) when the post carries one.'}, 'indexed_at': {'type': ['string', 'null'], 'examples': ['2026-09-26T20:00:00.000Z'], 'description': 'AppView indexing time.'}, 'author_handle': {'type': ['string', 'null'], 'examples': ['bsky.app'], 'description': 'Author handle.'}}, 'description': 'One Bluesky post.'}, 'description': 'Latest posts in profile mode, newest first; empty otherwise.'}, 'query': {'type': ['string', 'null'], 'examples': ['coinbase'], 'description': 'Query asked for (search_actors mode).'}, 'actors': {'type': 'array', 'items': {'type': 'object', 'required': ['did', 'handle', 'display_name', 'description', 'avatar_url'], 'properties': {'did': {'type': ['string', 'null'], 'examples': ['did:plc:coin'], 'description': 'DID.'}, 'handle': {'type': ['string', 'null'], 'examples': ['coinbase.com'], 'description': 'Handle.'}, 'avatar_url': {'type': ['string', 'null'], 'examples': ['https://cdn.bsky.app/img/avatar/plain/did:plc:coin/y@jpeg'], 'description': 'Avatar URL.'}, 'description': {'type': ['string', 'null'], 'examples': ['Coinbase on Bluesky'], 'description': 'Bio.'}, 'display_name': {'type': ['string', 'null'], 'examples': ['Coinbase'], 'description': 'Display name.'}}, 'description': 'An account from actor search.'}, 'description': 'Accounts found in search_actors mode; empty otherwise.'}, 'source': {'type': 'string', 'const': 'bluesky-public-appview', 'description': 'Data source.'}, 'thread': {'type': ['object', 'null'], 'required': ['post', 'replies', 'reply_count'], 'properties': {'post': {'type': 'object', 'required': ['uri', 'cid', 'url', 'author_handle', 'author_did', 'text', 'created_at', 'indexed_at', 'likes', 'reposts', 'replies', 'quotes', 'langs', 'is_repost', 'reply_to', 'embed_type'], 'properties': {'cid': {'type': ['string', 'null'], 'examples': ['bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi'], 'description': 'Content id.'}, 'uri': {'type': 'string', 'examples': ['at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a'], 'description': 'Post AT-URI.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a'], 'description': 'Web URL of the post.'}, 'text': {'type': 'string', 'examples': ['hello world'], 'description': 'Post text.'}, 'langs': {'type': 'array', 'items': {'type': 'string', 'examples': ['en'], 'description': 'BCP-47 tag.'}, 'examples': [['en']], 'description': 'Languages the author declared.'}, 'likes': {'type': ['integer', 'null'], 'examples': [90], 'description': 'Likes.'}, 'quotes': {'type': ['integer', 'null'], 'examples': [2], 'description': 'Quote posts.'}, 'replies': {'type': ['integer', 'null'], 'examples': [5], 'description': 'Replies.'}, 'reposts': {'type': ['integer', 'null'], 'examples': [7], 'description': 'Reposts.'}, 'reply_to': {'type': ['string', 'null'], 'examples': [None], 'description': 'AT-URI of the parent post when this is a reply.'}, 'is_repost': {'type': 'boolean', 'examples': [False], 'description': 'Whether this feed item is a repost by the actor.'}, 'author_did': {'type': ['string', 'null'], 'examples': ['did:plc:z72i7hdynmk6r22z27h6tvur'], 'description': 'Author DID.'}, 'created_at': {'type': ['string', 'null'], 'examples': ['2026-09-26T20:00:00.000Z'], 'description': "Author's creation time."}, 'embed_type': {'type': ['string', 'null'], 'examples': ['app.bsky.embed.images#view'], 'description': 'Embed type ($type) when the post carries one.'}, 'indexed_at': {'type': ['string', 'null'], 'examples': ['2026-09-26T20:00:00.000Z'], 'description': 'AppView indexing time.'}, 'author_handle': {'type': ['string', 'null'], 'examples': ['bsky.app'], 'description': 'Author handle.'}}, 'description': 'One Bluesky post.'}, 'replies': {'type': 'array', 'items': {'type': 'object', 'required': ['uri', 'cid', 'url', 'author_handle', 'author_did', 'text', 'created_at', 'indexed_at', 'likes', 'reposts', 'replies', 'quotes', 'langs', 'is_repost', 'reply_to', 'embed_type'], 'properties': {'cid': {'type': ['string', 'null'], 'examples': ['bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi'], 'description': 'Content id.'}, 'uri': {'type': 'string', 'examples': ['at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a'], 'description': 'Post AT-URI.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a'], 'description': 'Web URL of the post.'}, 'text': {'type': 'string', 'examples': ['hello world'], 'description': 'Post text.'}, 'langs': {'type': 'array', 'items': {'type': 'string', 'examples': ['en'], 'description': 'BCP-47 tag.'}, 'examples': [['en']], 'description': 'Languages the author declared.'}, 'likes': {'type': ['integer', 'null'], 'examples': [90], 'description': 'Likes.'}, 'quotes': {'type': ['integer', 'null'], 'examples': [2], 'description': 'Quote posts.'}, 'replies': {'type': ['integer', 'null'], 'examples': [5], 'description': 'Replies.'}, 'reposts': {'type': ['integer', 'null'], 'examples': [7], 'description': 'Reposts.'}, 'reply_to': {'type': ['string', 'null'], 'examples': [None], 'description': 'AT-URI of the parent post when this is a reply.'}, 'is_repost': {'type': 'boolean', 'examples': [False], 'description': 'Whether this feed item is a repost by the actor.'}, 'author_did': {'type': ['string', 'null'], 'examples': ['did:plc:z72i7hdynmk6r22z27h6tvur'], 'description': 'Author DID.'}, 'created_at': {'type': ['string', 'null'], 'examples': ['2026-09-26T20:00:00.000Z'], 'description': "Author's creation time."}, 'embed_type': {'type': ['string', 'null'], 'examples': ['app.bsky.embed.images#view'], 'description': 'Embed type ($type) when the post carries one.'}, 'indexed_at': {'type': ['string', 'null'], 'examples': ['2026-09-26T20:00:00.000Z'], 'description': 'AppView indexing time.'}, 'author_handle': {'type': ['string', 'null'], 'examples': ['bsky.app'], 'description': 'Author handle.'}}, 'description': 'One Bluesky post.'}, 'description': 'Replies flattened to the requested depth, in thread order.'}, 'reply_count': {'type': 'integer', 'examples': [2], 'description': 'Replies returned.'}}, 'description': 'The thread, in thread mode; null otherwise.'}, 'profile': {'type': ['object', 'null'], 'required': ['did', 'handle', 'display_name', 'description', 'avatar_url', 'followers', 'follows', 'posts', 'created_at'], 'properties': {'did': {'type': ['string', 'null'], 'examples': ['did:plc:z72i7hdynmk6r22z27h6tvur'], 'description': 'DID.'}, 'posts': {'type': ['integer', 'null'], 'examples': [1234], 'description': 'Posts.'}, 'handle': {'type': ['string', 'null'], 'examples': ['bsky.app'], 'description': 'Handle.'}, 'follows': {'type': ['integer', 'null'], 'examples': [3], 'description': 'Follows.'}, 'followers': {'type': ['integer', 'null'], 'examples': [4200000], 'description': 'Followers.'}, 'avatar_url': {'type': ['string', 'null'], 'examples': ['https://cdn.bsky.app/img/avatar/plain/did:plc:z72i7hdynmk6r22z27h6tvur/x@jpeg'], 'description': 'Avatar URL.'}, 'created_at': {'type': ['string', 'null'], 'examples': ['2023-04-12T04:53:57.057Z'], 'description': 'Account creation time.'}, 'description': {'type': ['string', 'null'], 'examples': ['official bluesky account'], 'description': 'Bio.'}, 'display_name': {'type': ['string', 'null'], 'examples': ['Bluesky'], 'description': 'Display name.'}}, 'description': 'The account, in profile mode; null otherwise.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'post_count': {'type': 'integer', 'examples': [3], 'description': 'Posts returned.'}, 'actor_count': {'type': 'integer', 'examples': [0], 'description': 'Accounts returned.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_social_mastodon
Mastodon hashtag timeline, account, search or trends, live
Mastodon (any public instance, default mastodon.social), live and keyless: a hashtag timeline, an account with its latest statuses, an account or hashtag search, or the trending hashtags, each status as plain text plus its HTML, counts, media, tags and reblog flag. Input: mode (hashtag, account, search, trends) with tag, acct or query; optional instance, limit, statuses, kind. Status search and the public firehose need a token and are not offered. $0.05 per call. Returns: mode, instance, tag, acct, query, kind, account{}, statuses[], accounts[], hashtags[], status_count, source, as_of, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['mode'], 'properties': {'tag': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'Hashtag without #; hashtag mode.'}, 'acct': {'type': 'string', 'maxLength': 320, 'minLength': 1, 'description': 'Username, optionally @domain (Gargron or Gargron@mastodon.social); account mode.'}, 'kind': {'enum': ['accounts', 'hashtags'], 'type': 'string', 'description': 'What to search for, default accounts.'}, 'mode': {'enum': ['hashtag', 'account', 'search', 'trends'], 'type': 'string', 'description': 'hashtag: latest statuses under a tag; account: an account and its statuses; search: accounts or hashtags matching a query; trends: trending hashtags.'}, 'limit': {'type': 'integer', 'maximum': 40, 'minimum': 1, 'description': 'Items to return (hashtag up to 40, search up to 25, trends up to 20), default 10.'}, 'query': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Search words; search mode.'}, 'instance': {'type': 'string', 'maxLength': 253, 'description': 'Mastodon server hostname, default mastodon.social.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'statuses': {'type': 'integer', 'maximum': 40, 'minimum': 1, 'description': 'Latest statuses to return in account mode, default 10.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'social.mastodon response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['mode', 'instance', 'tag', 'acct', 'query', 'kind', 'account', 'statuses', 'accounts', 'hashtags', 'status_count', 'source', 'as_of', 'checked_at'], 'properties': {'tag': {'type': ['string', 'null'], 'examples': ['opensource'], 'description': 'Hashtag asked for (hashtag mode).'}, 'acct': {'type': ['string', 'null'], 'examples': ['Gargron'], 'description': 'Account asked for (account mode).'}, 'kind': {'type': ['string', 'null'], 'examples': ['accounts'], 'description': 'accounts or hashtags (search mode).'}, 'mode': {'enum': ['hashtag', 'account', 'search', 'trends'], 'type': 'string', 'examples': ['hashtag'], 'description': 'Mode run.'}, 'as_of': {'type': 'string', 'examples': ['2026-09-27T01:00:00.000Z'], 'description': 'Creation time of the newest status returned, else checked_at.'}, 'query': {'type': ['string', 'null'], 'examples': ['opensource'], 'description': 'Query asked for (search mode).'}, 'source': {'type': 'string', 'const': 'mastodon-public-api', 'description': 'Data source.'}, 'account': {'type': ['object', 'null'], 'required': ['id', 'username', 'acct', 'display_name', 'url', 'bio', 'avatar_url', 'followers', 'following', 'statuses', 'created_at', 'bot'], 'properties': {'id': {'type': ['string', 'null'], 'examples': ['1'], 'description': 'Account id on the instance.'}, 'bio': {'type': 'string', 'examples': ['Founder of Mastodon'], 'description': 'Bio as plain text.'}, 'bot': {'type': ['boolean', 'null'], 'examples': [False], 'description': 'Declared as a bot; null when not stated.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://mastodon.social/@Gargron'], 'description': 'Profile URL.'}, 'acct': {'type': ['string', 'null'], 'examples': ['Gargron'], 'description': 'acct (username or username@domain).'}, 'statuses': {'type': ['integer', 'null'], 'examples': [75000], 'description': 'Statuses posted.'}, 'username': {'type': ['string', 'null'], 'examples': ['Gargron'], 'description': 'Username.'}, 'followers': {'type': ['integer', 'null'], 'examples': [500000], 'description': 'Followers.'}, 'following': {'type': ['integer', 'null'], 'examples': [400], 'description': 'Following.'}, 'avatar_url': {'type': ['string', 'null'], 'examples': ['https://files.mastodon.social/accounts/avatars/x.png'], 'description': 'Avatar URL.'}, 'created_at': {'type': ['string', 'null'], 'examples': ['2016-03-16T00:00:00.000Z'], 'description': 'Account creation time.'}, 'display_name': {'type': ['string', 'null'], 'examples': ['Eugen Rochko'], 'description': 'Display name.'}}, 'description': 'The account, in account mode; null otherwise.'}, 'accounts': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'username', 'acct', 'display_name', 'url', 'bio', 'avatar_url', 'followers', 'following', 'statuses', 'created_at', 'bot'], 'properties': {'id': {'type': ['string', 'null'], 'examples': ['1'], 'description': 'Account id on the instance.'}, 'bio': {'type': 'string', 'examples': ['Founder of Mastodon'], 'description': 'Bio as plain text.'}, 'bot': {'type': ['boolean', 'null'], 'examples': [False], 'description': 'Declared as a bot; null when not stated.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://mastodon.social/@Gargron'], 'description': 'Profile URL.'}, 'acct': {'type': ['string', 'null'], 'examples': ['Gargron'], 'description': 'acct (username or username@domain).'}, 'statuses': {'type': ['integer', 'null'], 'examples': [75000], 'description': 'Statuses posted.'}, 'username': {'type': ['string', 'null'], 'examples': ['Gargron'], 'description': 'Username.'}, 'followers': {'type': ['integer', 'null'], 'examples': [500000], 'description': 'Followers.'}, 'following': {'type': ['integer', 'null'], 'examples': [400], 'description': 'Following.'}, 'avatar_url': {'type': ['string', 'null'], 'examples': ['https://files.mastodon.social/accounts/avatars/x.png'], 'description': 'Avatar URL.'}, 'created_at': {'type': ['string', 'null'], 'examples': ['2016-03-16T00:00:00.000Z'], 'description': 'Account creation time.'}, 'display_name': {'type': ['string', 'null'], 'examples': ['Eugen Rochko'], 'description': 'Display name.'}}, 'description': 'A Mastodon account.'}, 'description': 'Accounts found (search mode, kind accounts); empty otherwise.'}, 'hashtags': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'url', 'uses_7d', 'accounts_7d', 'days'], 'properties': {'url': {'type': ['string', 'null'], 'examples': ['https://mastodon.social/tags/opensource'], 'description': 'Tag URL on the instance.'}, 'days': {'type': 'integer', 'examples': [7], 'description': 'Days of history the instance reported.'}, 'name': {'type': 'string', 'examples': ['opensource'], 'description': 'Hashtag name.'}, 'uses_7d': {'type': ['integer', 'null'], 'examples': [120], 'description': 'Uses over the history the instance reports (about a week); null when none.'}, 'accounts_7d': {'type': ['integer', 'null'], 'examples': [90], 'description': 'Distinct accounts over that history; null when none.'}}, 'description': 'A hashtag with its recent activity.'}, 'description': 'Hashtags (search mode, kind hashtags, or trends); empty otherwise.'}, 'instance': {'type': 'string', 'examples': ['mastodon.social'], 'description': 'Instance queried.'}, 'statuses': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'url', 'created_at', 'text', 'content_html', 'language', 'visibility', 'replies', 'reblogs', 'favourites', 'is_reblog', 'reblog_of_url', 'author_acct', 'author_display_name', 'media', 'tags', 'sensitive', 'spoiler_text'], 'properties': {'id': {'type': 'string', 'examples': ['115000000000000001'], 'description': 'Status id.'}, 'url': {'type': ['string', 'null'], 'examples': ['https://mastodon.social/@Gargron/115000000000000001'], 'description': 'Web URL.'}, 'tags': {'type': 'array', 'items': {'type': 'string', 'examples': ['opensource'], 'description': 'Hashtag name.'}, 'examples': [['opensource']], 'description': 'Hashtags on the status.'}, 'text': {'type': 'string', 'examples': ['Open source rocks'], 'description': 'Plain-text content.'}, 'media': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://files.mastodon.social/media_attachments/files/x.png'], 'description': 'Media URL.'}, 'type': {'type': ['string', 'null'], 'examples': ['image'], 'description': 'image, video, gifv, audio...'}}, 'description': 'One attachment.'}, 'examples': [[]], 'description': 'Media attachments.'}, 'reblogs': {'type': ['integer', 'null'], 'examples': [2], 'description': 'Boosts.'}, 'replies': {'type': ['integer', 'null'], 'examples': [1], 'description': 'Replies.'}, 'language': {'type': ['string', 'null'], 'examples': ['en'], 'description': 'Language code.'}, 'is_reblog': {'type': 'boolean', 'examples': [False], 'description': 'Whether this status is a boost of another.'}, 'sensitive': {'type': 'boolean', 'examples': [False], 'description': 'Marked sensitive.'}, 'created_at': {'type': ['string', 'null'], 'examples': ['2026-09-27T01:00:00.000Z'], 'description': 'Creation time.'}, 'favourites': {'type': ['integer', 'null'], 'examples': [3], 'description': 'Favourites.'}, 'visibility': {'type': ['string', 'null'], 'examples': ['public'], 'description': 'public, unlisted...'}, 'author_acct': {'type': ['string', 'null'], 'examples': ['Gargron'], 'description': 'Author acct.'}, 'content_html': {'type': 'string', 'examples': ['<p>Open source rocks</p>'], 'description': 'Content as the instance serves it (sanitized HTML).'}, 'spoiler_text': {'type': 'string', 'examples': [''], 'description': 'Content warning text, empty when none.'}, 'reblog_of_url': {'type': ['string', 'null'], 'examples': [None], 'description': 'URL of the boosted status when is_reblog.'}, 'author_display_name': {'type': ['string', 'null'], 'examples': ['Eugen Rochko'], 'description': 'Author display name.'}}, 'description': 'One Mastodon status.'}, 'description': 'Statuses, newest first (hashtag and account modes); empty otherwise.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'status_count': {'type': 'integer', 'examples': [3], 'description': 'Statuses returned.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_social_x_pulse
X (Twitter) topic pulse: volume and engagement as aggregates
What X (Twitter) is saying about a topic, as numbers only, live: post volume per hour or day over the last 1-7 days, and over a sample of recent posts the engagement totals, averages and rate (likes, reposts, replies, quotes, impressions), language mix, top hashtags and link/media share. Aggregates only: no post text, ids, authors or profiles are returned. Input: query (X operators allowed); optional days, granularity, sample (0-100 posts read), lang, include_retweets. $0.50 per call. Returns: query, effective_query, window{}, granularity, volume{total, buckets[]}, sample{requested, read, pages, x_cost_usd}, engagement{likes_total, ..., languages{}, top_hashtags[]}, source, as_of, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'days': {'type': 'integer', 'maximum': 7, 'minimum': 1, 'description': "Window ending now, default 7 (X's recent limit)."}, 'lang': {'type': 'string', 'maxLength': 2, 'minLength': 2, 'description': 'Restrict to a language (en, ja...).'}, 'query': {'type': 'string', 'maxLength': 400, 'minLength': 1, 'description': 'Words or X search operators ("machine learning" from:nasa has:links).'}, 'sample': {'type': 'integer', 'maximum': 100, 'minimum': 0, 'description': 'Recent posts read for the engagement aggregates, default 40; 0 = volume only.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'granularity': {'enum': ['hour', 'day'], 'type': 'string', 'description': 'Volume buckets, default day.'}, 'include_retweets': {'type': 'boolean', 'description': 'Default false: reposts are excluded from volume and sample.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'social.x_pulse response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'effective_query', 'window', 'granularity', 'volume', 'sample', 'engagement', 'source', 'as_of', 'checked_at'], 'properties': {'as_of': {'type': 'string', 'examples': ['2026-09-27T08:59:45Z'], 'description': 'End of the window analysed.'}, 'query': {'type': 'string', 'examples': ['open source'], 'description': 'The query as given.'}, 'sample': {'type': 'object', 'required': ['requested', 'read', 'pages', 'x_cost_usd'], 'properties': {'read': {'type': 'integer', 'examples': [20], 'description': 'Posts actually read.'}, 'pages': {'type': 'integer', 'examples': [1], 'description': 'Search pages fetched.'}, 'requested': {'type': 'integer', 'examples': [20], 'description': 'Posts asked to read.'}, 'x_cost_usd': {'type': 'number', 'examples': [0.1], 'description': 'What X bills for the posts read, at $0.005 each.'}}, 'description': 'The sample the engagement figures rest on.'}, 'source': {'type': 'string', 'const': 'x-api-v2', 'description': 'Data source.'}, 'volume': {'type': 'object', 'required': ['total', 'buckets', 'bucket_count'], 'properties': {'total': {'type': 'integer', 'examples': [21636], 'description': 'Posts matching the query in the window.'}, 'buckets': {'type': 'array', 'items': {'type': 'object', 'required': ['start', 'end', 'count'], 'properties': {'end': {'type': ['string', 'null'], 'examples': ['2026-09-27T00:00:00.000Z'], 'description': 'Bucket end.'}, 'count': {'type': 'integer', 'examples': [7200], 'description': 'Posts in the bucket.'}, 'start': {'type': ['string', 'null'], 'examples': ['2026-09-26T00:00:00.000Z'], 'description': 'Bucket start.'}}, 'description': 'One bucket.'}, 'description': 'Counts per bucket, oldest first.'}, 'bucket_count': {'type': 'integer', 'examples': [4], 'description': 'Buckets returned.'}}, 'description': "Post volume from X's recent-counts endpoint."}, 'window': {'type': 'object', 'required': ['start', 'end', 'days'], 'properties': {'end': {'type': 'string', 'examples': ['2026-09-27T08:59:45Z'], 'description': 'Window end (RFC 3339), a few seconds before the call.'}, 'days': {'type': 'integer', 'examples': [3], 'description': 'Days covered.'}, 'start': {'type': 'string', 'examples': ['2026-09-24T09:00:00Z'], 'description': 'Window start (RFC 3339).'}}, 'description': 'The window analysed.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'engagement': {'type': ['object', 'null'], 'required': ['posts_read', 'likes_total', 'reposts_total', 'replies_total', 'quotes_total', 'impressions_total', 'bookmarks_total', 'mean_likes', 'mean_impressions', 'max_likes', 'max_impressions', 'engagement_rate_pct', 'languages', 'top_hashtags', 'with_hashtags_pct', 'with_links_pct', 'with_media_pct', 'possibly_sensitive_pct'], 'properties': {'languages': {'type': 'object', 'examples': [{'en': 20}], 'required': [], 'properties': {}, 'description': 'Posts per language code.', 'additionalProperties': {'type': 'integer'}}, 'max_likes': {'type': ['integer', 'null'], 'examples': [120], 'description': "Most-liked post's likes."}, 'mean_likes': {'type': ['number', 'null'], 'examples': [17.0], 'description': 'Mean likes per post.'}, 'posts_read': {'type': 'integer', 'examples': [20], 'description': 'Posts in the sample.'}, 'likes_total': {'type': ['integer', 'null'], 'examples': [340], 'description': 'Likes summed.'}, 'quotes_total': {'type': ['integer', 'null'], 'examples': [5], 'description': 'Quotes summed.'}, 'top_hashtags': {'type': 'array', 'items': {'type': 'object', 'required': ['tag', 'posts'], 'properties': {'tag': {'type': 'string', 'examples': ['opensource'], 'description': 'Hashtag, lower-cased.'}, 'posts': {'type': 'integer', 'examples': [4], 'description': 'Posts using it.'}}, 'description': 'One hashtag.'}, 'examples': [[{'tag': 'opensource', 'posts': 4}]], 'description': 'Up to 10 most-used hashtags.'}, 'replies_total': {'type': ['integer', 'null'], 'examples': [27], 'description': 'Replies summed.'}, 'reposts_total': {'type': ['integer', 'null'], 'examples': [41], 'description': 'Reposts summed.'}, 'with_links_pct': {'type': ['number', 'null'], 'examples': [40.0], 'description': 'Share of posts linking outside X.'}, 'with_media_pct': {'type': ['number', 'null'], 'examples': [15.0], 'description': 'Share of posts with photos or video.'}, 'bookmarks_total': {'type': ['integer', 'null'], 'examples': [12], 'description': 'Bookmarks summed.'}, 'max_impressions': {'type': ['integer', 'null'], 'examples': [18000], 'description': "Most-seen post's impressions."}, 'mean_impressions': {'type': ['number', 'null'], 'examples': [2560.0], 'description': 'Mean impressions per post.'}, 'impressions_total': {'type': ['integer', 'null'], 'examples': [51200], 'description': 'Impressions summed.'}, 'with_hashtags_pct': {'type': ['number', 'null'], 'examples': [35.0], 'description': 'Share of posts with a hashtag.'}, 'engagement_rate_pct': {'type': ['number', 'null'], 'examples': [0.807], 'description': '(likes+reposts+replies+quotes)/impressions, percent.'}, 'possibly_sensitive_pct': {'type': ['number', 'null'], 'examples': [0.0], 'description': 'Share X flags as possibly sensitive.'}}, 'description': 'Engagement aggregates over the sample; null when sample is 0.'}, 'granularity': {'enum': ['hour', 'day'], 'type': 'string', 'examples': ['day'], 'description': 'Volume bucket size.'}, 'effective_query': {'type': 'string', 'examples': ['open source lang:en -is:retweet'], 'description': 'The query sent to X (lang: and -is:retweet added unless given).'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_speech_synthesize
Text to speech
Text to speech: convert text to spoken MP3 audio with Google Cloud Text-to-Speech, returned as base64. Input: text, optional voice name. $0.25 per call. Returns: text_chars, voice, audio_base64, mime_type.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['text'], 'properties': {'text': {'type': 'string'}, 'voice': {'type': 'string', 'description': 'e.g. en-US-Standard-C. Optional.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'speech.synthesize response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['text_chars', 'voice', 'audio_base64', 'mime_type'], 'properties': {'voice': {'type': 'string', 'examples': ['en-US-Neural2-C'], 'description': 'Voice used.'}, 'mime_type': {'type': 'string', 'examples': ['audio/mpeg'], 'description': 'Audio MIME type.'}, 'text_chars': {'type': 'integer', 'examples': [58], 'description': 'Characters synthesised.'}, 'audio_base64': {'type': 'string', 'examples': ['UklGRi4AAABXQVZF...'], 'description': 'The audio, base64.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_speech_transcribe
Speech to text
Speech to text: transcribe up to 60 seconds or 10 MB of audio with Google Cloud Speech-to-Text and get the transcript with its confidence and language. Input: audio_base64, optional language_code. Longer audio is refused before payment. $0.25 per call. Returns: transcript, language_code, confidence, model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['audio_base64'], 'properties': {'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'audio_base64': {'type': 'string', 'description': 'Base64-encoded audio, any common format.'}, 'language_code': {'type': 'string', 'description': 'BCP-47, default en-US.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'speech.transcribe response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['transcript', 'language_code', 'model'], 'properties': {'model': {'type': 'string', 'examples': ['latest_short'], 'description': 'Recognition model.'}, 'confidence': {'type': ['number', 'null'], 'examples': [0.94], 'description': 'Mean recognition confidence, 0-1; null when the engine gives none.'}, 'transcript': {'type': 'string', 'examples': ['hello world'], 'description': 'The transcript.'}, 'language_code': {'type': 'string', 'examples': ['en-US'], 'description': 'Language recognised.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_traffic_route
Traffic-aware travel time and distance between two places
Travel time and distance between two places with live traffic, from the Google Routes API at call time: duration with traffic, duration without, the delay between them, distance, Google's localized texts, route description, warnings and advisory. Places are addresses, place names or "lat,lng". Input: origin, destination; optional travel_mode (DRIVE, TWO_WHEELER, WALK, BICYCLE, TRANSIT), departure_time (RFC 3339, future; omit to leave now), traffic (aware, optimal, none). $0.10 per call. Returns: origin, destination, travel_mode, traffic, departure_time, distance_meters, duration_seconds, static_duration_seconds, delay_seconds, duration_text, static_duration_text, distance_text, description, warnings[], advisory, source, as_of, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['origin', 'destination'], 'properties': {'origin': {'type': 'string', 'maxLength': 300, 'minLength': 1, 'description': 'Where the trip starts: an address, a place name, or "lat,lng".'}, 'traffic': {'enum': ['aware', 'optimal', 'none'], 'type': 'string', 'description': 'aware (default): live traffic; optimal: live traffic with the best route quality, slower; none: no traffic.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'destination': {'type': 'string', 'maxLength': 300, 'minLength': 1, 'description': 'Where the trip ends: an address, a place name, or "lat,lng".'}, 'travel_mode': {'enum': ['DRIVE', 'TWO_WHEELER', 'WALK', 'BICYCLE', 'TRANSIT'], 'type': 'string', 'description': 'Default DRIVE. Traffic applies to DRIVE and TWO_WHEELER only.'}, 'departure_time': {'type': 'string', 'format': 'date-time', 'description': 'RFC 3339 departure time in the future (2026-09-27T16:30:00Z); omit to leave now.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'traffic.route response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['origin', 'destination', 'travel_mode', 'traffic', 'departure_time', 'distance_meters', 'duration_seconds', 'static_duration_seconds', 'delay_seconds', 'duration_text', 'static_duration_text', 'distance_text', 'description', 'warnings', 'advisory', 'source', 'as_of', 'checked_at'], 'properties': {'as_of': {'type': 'string', 'examples': ['2026-09-27T16:30:00Z'], 'description': 'The departure time the answer was computed for: `departure_time`, else `checked_at`.'}, 'origin': {'type': 'string', 'examples': ['Ferry Building, San Francisco, CA'], 'description': 'Origin as given.'}, 'source': {'type': 'string', 'const': 'google-routes', 'description': 'Data source: Google Routes API computeRoutes.'}, 'traffic': {'enum': ['aware', 'optimal', 'none'], 'type': 'string', 'examples': ['aware'], 'description': 'Traffic handling used: aware (live traffic), optimal (live traffic, best route quality), none (no traffic; always none for WALK, BICYCLE and TRANSIT).'}, 'advisory': {'type': ['object', 'null'], 'required': [], 'properties': {}, 'description': "Google's travelAdvisory object for the route (tolls, speed reading intervals, fuel) exactly as returned, {} when it has nothing to say; null when absent."}, 'warnings': {'type': 'array', 'items': {'type': 'string', 'examples': ['This route has tolls.'], 'description': 'A warning Google attaches to the route.'}, 'examples': [[]], 'description': "Google's warnings for the route, in the order given; empty when none."}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'description': {'type': ['string', 'null'], 'examples': ['I-80 E and I-580 E'], 'description': 'Route description as Google names it (main roads); null when not given.'}, 'destination': {'type': 'string', 'examples': ['Oakland City Hall, Oakland, CA'], 'description': 'Destination as given.'}, 'travel_mode': {'enum': ['DRIVE', 'TWO_WHEELER', 'WALK', 'BICYCLE', 'TRANSIT'], 'type': 'string', 'examples': ['DRIVE'], 'description': 'Travel mode used.'}, 'delay_seconds': {'type': ['integer', 'null'], 'examples': [-129], 'description': 'duration_seconds minus static_duration_seconds (negative when traffic is lighter than typical); null when either is unknown.'}, 'distance_text': {'type': ['string', 'null'], 'examples': ['17.0 km'], 'description': "Google's localized distance (metric)."}, 'duration_text': {'type': ['string', 'null'], 'examples': ['19 mins'], 'description': "Google's localized travel time."}, 'departure_time': {'type': ['string', 'null'], 'examples': ['2026-09-27T16:30:00Z'], 'description': 'Departure time sent to Google (RFC 3339, UTC); null when the trip starts now.'}, 'distance_meters': {'type': 'integer', 'examples': [17011], 'description': 'Route length in metres.'}, 'duration_seconds': {'type': 'integer', 'examples': [1152], 'description': 'Travel time in seconds, with traffic when `traffic` is aware or optimal.'}, 'static_duration_text': {'type': ['string', 'null'], 'examples': ['21 mins'], 'description': "Google's localized travel time without traffic."}, 'static_duration_seconds': {'type': ['integer', 'null'], 'examples': [1281], 'description': 'Travel time in seconds without traffic; null when Google does not state it.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_travel_flight_status
Flight and airport status right now
What is happening at an airport, or to a flight, now. By airport code (IATA or ICAO): FAA ground stops, ground delay programs with average and max delay, closures and runway configuration (US); the live departure and arrival board with gates and status (Norway, Avinor); current METAR and TAF (any ICAO airport); aircraft in the air around it. By callsign: that aircraft's live position, altitude and speed. Input: airport or callsign; optional flight, direction, hours_ahead. $0.25 per call. Returns: query{}, airport{iata, icao, name, city, country, lat, lon}, delays{status, ground_stop, ground_delay, closure, arrival_delay, departure_delay, runways, notices}, board{departures[], arrivals[], attribution}, weather{metar, taf, flight_category...}, aircraft[], aircraft_scope, coverage{}, attribution[], sections_failed[], notes[], checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'anyOf': [{'required': ['airport']}, {'required': ['callsign']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'flight': {'type': 'string', 'maxLength': 8, 'minLength': 2, 'description': 'Flight number to pick from the board (SK344).'}, 'airport': {'type': 'string', 'maxLength': 4, 'minLength': 3, 'description': 'IATA (OSL, JFK) or ICAO (ENGM, KJFK) code.'}, 'callsign': {'type': 'string', 'maxLength': 8, 'minLength': 2, 'description': "Callsign as broadcast (SAS1411, UAL123): the aircraft's live position."}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'direction': {'enum': ['both', 'departures', 'arrivals'], 'type': 'string', 'description': 'Board direction. Default both.'}, 'hours_ahead': {'type': 'integer', 'maximum': 12, 'minimum': 1, 'description': 'Board window ahead, hours. Default 3.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'travel.flight_status response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'airport', 'delays', 'board', 'weather', 'aircraft', 'aircraft_scope', 'coverage', 'attribution', 'sections_failed', 'notes', 'checked_at'], 'properties': {'board': {'type': ['object', 'null'], 'required': ['departures', 'arrivals', 'last_update', 'attribution', 'attribution_url'], 'properties': {'arrivals': {'type': 'array', 'items': {'type': 'object', 'required': ['flight', 'airline', 'direction', 'other_airport', 'other_airport_name', 'scheduled', 'status', 'status_time', 'gate', 'check_in', 'belt', 'delayed', 'sector'], 'properties': {'belt': {'type': ['string', 'null'], 'examples': ['3'], 'description': 'Baggage belt (arrivals).'}, 'gate': {'type': ['string', 'null'], 'examples': ['A20'], 'description': 'Gate.'}, 'flight': {'type': ['string', 'null'], 'examples': ['SK344'], 'description': 'Flight number.'}, 'sector': {'type': ['string', 'null'], 'examples': ['domestic'], 'description': 'domestic, schengen or international.'}, 'status': {'type': ['string', 'null'], 'examples': ['departed'], 'description': 'departed, arrived, new time, new info or cancelled.'}, 'airline': {'type': ['string', 'null'], 'examples': ['SK'], 'description': 'Airline code.'}, 'delayed': {'type': 'boolean', 'examples': [False], 'description': 'Marked delayed.'}, 'check_in': {'type': ['string', 'null'], 'examples': ['4-6'], 'description': 'Check-in rows.'}, 'direction': {'type': ['string', 'null'], 'examples': ['D'], 'description': 'D or A.'}, 'scheduled': {'type': ['string', 'null'], 'examples': ['2026-09-28T11:15:00Z'], 'description': 'Scheduled time (UTC).'}, 'status_time': {'type': ['string', 'null'], 'examples': ['2026-09-28T11:22:38Z'], 'description': 'Time the status refers to (UTC).'}, 'other_airport': {'type': ['string', 'null'], 'examples': ['TRD'], 'description': 'Destination or origin (IATA).'}, 'other_airport_name': {'type': ['string', 'null'], 'examples': ['Trondheim Airport, Værnes'], 'description': 'Its name.'}}, 'description': 'One flight on the board.'}, 'examples': [[]], 'description': 'Arrivals, by scheduled time.'}, 'departures': {'type': 'array', 'items': {'type': 'object', 'required': ['flight', 'airline', 'direction', 'other_airport', 'other_airport_name', 'scheduled', 'status', 'status_time', 'gate', 'check_in', 'belt', 'delayed', 'sector'], 'properties': {'belt': {'type': ['string', 'null'], 'examples': ['3'], 'description': 'Baggage belt (arrivals).'}, 'gate': {'type': ['string', 'null'], 'examples': ['A20'], 'description': 'Gate.'}, 'flight': {'type': ['string', 'null'], 'examples': ['SK344'], 'description': 'Flight number.'}, 'sector': {'type': ['string', 'null'], 'examples': ['domestic'], 'description': 'domestic, schengen or international.'}, 'status': {'type': ['string', 'null'], 'examples': ['departed'], 'description': 'departed, arrived, new time, new info or cancelled.'}, 'airline': {'type': ['string', 'null'], 'examples': ['SK'], 'description': 'Airline code.'}, 'delayed': {'type': 'boolean', 'examples': [False], 'description': 'Marked delayed.'}, 'check_in': {'type': ['string', 'null'], 'examples': ['4-6'], 'description': 'Check-in rows.'}, 'direction': {'type': ['string', 'null'], 'examples': ['D'], 'description': 'D or A.'}, 'scheduled': {'type': ['string', 'null'], 'examples': ['2026-09-28T11:15:00Z'], 'description': 'Scheduled time (UTC).'}, 'status_time': {'type': ['string', 'null'], 'examples': ['2026-09-28T11:22:38Z'], 'description': 'Time the status refers to (UTC).'}, 'other_airport': {'type': ['string', 'null'], 'examples': ['TRD'], 'description': 'Destination or origin (IATA).'}, 'other_airport_name': {'type': ['string', 'null'], 'examples': ['Trondheim Airport, Værnes'], 'description': 'Its name.'}}, 'description': 'One flight on the board.'}, 'examples': [[]], 'description': 'Departures, by scheduled time.'}, 'attribution': {'type': 'string', 'examples': ['Flight data from Avinor'], 'description': 'Required credit.'}, 'last_update': {'type': ['string', 'null'], 'examples': ['2026-09-28T12:29:26.891757Z'], 'description': 'When Avinor last updated the board.'}, 'attribution_url': {'type': 'string', 'examples': ['https://www.avinor.no'], 'description': 'Credit link.'}}, 'description': 'Live board (Norway, Avinor); null elsewhere.'}, 'notes': {'type': 'array', 'items': {'type': 'string', 'examples': ['Live boards cover Norway.'], 'description': 'A caveat.'}, 'examples': [[]], 'description': 'Caveats; empty when none.'}, 'query': {'type': 'object', 'required': ['airport', 'callsign', 'flight', 'direction', 'hours_ahead'], 'properties': {'flight': {'type': ['string', 'null'], 'examples': ['SK344'], 'description': 'Flight filter.'}, 'airport': {'type': ['string', 'null'], 'examples': ['OSL'], 'description': 'Airport code sent.'}, 'callsign': {'type': ['string', 'null'], 'examples': ['SAS51D'], 'description': 'Callsign sent.'}, 'direction': {'enum': ['both', 'departures', 'arrivals'], 'type': 'string', 'examples': ['both'], 'description': 'Board direction.'}, 'hours_ahead': {'type': 'integer', 'examples': [3], 'description': 'Board window ahead, hours.'}}, 'description': 'What was asked.'}, 'delays': {'type': ['object', 'null'], 'required': ['status', 'ground_stop', 'ground_delay', 'closure', 'arrival_delay', 'departure_delay', 'deicing', 'runways', 'notices', 'source'], 'properties': {'source': {'type': 'string', 'examples': ['FAA NAS Status'], 'description': 'Source.'}, 'status': {'enum': ['normal', 'delays', 'ground_delay', 'ground_stop', 'closed'], 'type': 'string', 'examples': ['ground_delay'], 'description': 'Overall FAA status.'}, 'closure': {'type': ['object', 'null'], 'examples': [None], 'description': 'Closure notice.'}, 'deicing': {'type': 'boolean', 'examples': [False], 'description': 'De-icing in progress.'}, 'notices': {'type': 'array', 'items': {'type': 'string', 'examples': ['!SFO 09/165 ...'], 'description': 'A notice.'}, 'examples': [[]], 'description': 'Free-form FAA notices.'}, 'runways': {'type': ['object', 'null'], 'required': ['arrival', 'departure', 'arrival_rate_per_hour'], 'properties': {'arrival': {'type': ['string', 'null'], 'examples': ['28L/28R'], 'description': 'Arrival runways.'}, 'departure': {'type': ['string', 'null'], 'examples': ['28L/28R'], 'description': 'Departure runways.'}, 'arrival_rate_per_hour': {'type': ['integer', 'null'], 'examples': [30], 'description': 'Arrival rate.'}}, 'description': 'Runway configuration; null when not published.'}, 'ground_stop': {'type': ['object', 'null'], 'examples': [None], 'description': 'Ground stop in force.'}, 'ground_delay': {'type': ['object', 'null'], 'examples': [{'from': '2026-09-28T15:00:00Z', 'until': '2026-09-28T23:29:00Z', 'reason': 'low ceilings', 'avg_minutes': 44, 'max_minutes': 120}], 'description': 'Ground delay program: reason, from, until, avg_minutes, max_minutes.'}, 'arrival_delay': {'type': ['object', 'null'], 'examples': [None], 'description': 'Arrival delays.'}, 'departure_delay': {'type': ['object', 'null'], 'examples': [None], 'description': 'Departure delays.'}}, 'description': 'FAA National Airspace System status (US airports); null elsewhere.'}, 'airport': {'type': ['object', 'null'], 'required': ['iata', 'icao', 'name', 'city', 'country', 'lat', 'lon'], 'properties': {'lat': {'type': 'number', 'examples': [60.1939], 'description': 'Latitude.'}, 'lon': {'type': 'number', 'examples': [11.1004], 'description': 'Longitude.'}, 'city': {'type': ['string', 'null'], 'examples': ['Oslo (Gardermoen)'], 'description': 'City.'}, 'iata': {'type': ['string', 'null'], 'examples': ['OSL'], 'description': 'IATA code.'}, 'icao': {'type': ['string', 'null'], 'examples': ['ENGM'], 'description': 'ICAO code.'}, 'name': {'type': 'string', 'examples': ['Oslo-Gardermoen International Airport'], 'description': 'Airport.'}, 'country': {'type': 'string', 'examples': ['NO'], 'description': 'ISO country.'}}, 'description': 'The airport (OurAirports, public domain); null for a callsign-only query.'}, 'weather': {'type': ['object', 'null'], 'required': ['metar', 'taf', 'flight_category', 'temperature_c', 'dewpoint_c', 'wind_dir_deg', 'wind_kt', 'gust_kt', 'visibility', 'weather', 'observed_at', 'source'], 'properties': {'taf': {'type': ['string', 'null'], 'examples': ['TAF ENGM 281100Z 2812/2912 ...'], 'description': 'Raw TAF.'}, 'metar': {'type': ['string', 'null'], 'examples': ['METAR ENGM 281220Z 17008KT 9999 -RA BKN012 14/12 Q1017'], 'description': 'Raw METAR.'}, 'source': {'type': 'string', 'examples': ['NOAA Aviation Weather Center'], 'description': 'Source.'}, 'gust_kt': {'type': ['number', 'null'], 'examples': [24], 'description': 'Gusts.'}, 'weather': {'type': ['string', 'null'], 'examples': ['-RA'], 'description': 'Present weather.'}, 'wind_kt': {'type': ['number', 'null'], 'examples': [8], 'description': 'Wind speed.'}, 'dewpoint_c': {'type': ['number', 'null'], 'examples': [12], 'description': 'Dew point.'}, 'visibility': {'type': ['string', 'null'], 'examples': ['6+'], 'description': 'Visibility as reported.'}, 'observed_at': {'type': ['string', 'null'], 'examples': ['2026-09-28T12:20:00.000Z'], 'description': 'Report time.'}, 'wind_dir_deg': {'type': ['number', 'string', 'null'], 'examples': [170], 'description': 'Wind direction (VRB when variable).'}, 'temperature_c': {'type': ['number', 'null'], 'examples': [14], 'description': 'Temperature.'}, 'flight_category': {'type': ['string', 'null'], 'examples': ['MVFR'], 'description': 'VFR, MVFR, IFR or LIFR.'}}, 'description': 'Airport weather; null without a METAR.'}, 'aircraft': {'type': 'array', 'items': {'type': 'object', 'required': ['callsign', 'hex', 'registration', 'type', 'lat', 'lon', 'altitude_ft', 'on_ground', 'ground_speed_kt', 'track_deg', 'vertical_rate_fpm', 'squawk', 'distance_km'], 'properties': {'hex': {'type': ['string', 'null'], 'examples': ['4cac79'], 'description': 'ICAO 24-bit address.'}, 'lat': {'type': 'number', 'examples': [59.561], 'description': 'Latitude.'}, 'lon': {'type': 'number', 'examples': [10.538], 'description': 'Longitude.'}, 'type': {'type': ['string', 'null'], 'examples': ['A20N'], 'description': 'Aircraft type.'}, 'squawk': {'type': ['string', 'null'], 'examples': ['6220'], 'description': 'Squawk.'}, 'callsign': {'type': ['string', 'null'], 'examples': ['SAS51D'], 'description': 'Callsign.'}, 'on_ground': {'type': 'boolean', 'examples': [False], 'description': 'On the ground.'}, 'track_deg': {'type': ['number', 'null'], 'examples': [76.8], 'description': 'Track.'}, 'altitude_ft': {'type': ['number', 'null'], 'examples': [36975], 'description': 'Barometric altitude.'}, 'distance_km': {'type': ['number', 'null'], 'examples': [12.4], 'description': 'Distance from the airport.'}, 'registration': {'type': ['string', 'null'], 'examples': ['EI-SIJ'], 'description': 'Registration.'}, 'ground_speed_kt': {'type': ['number', 'null'], 'examples': [486.8], 'description': 'Ground speed.'}, 'vertical_rate_fpm': {'type': ['number', 'null'], 'examples': [0], 'description': 'Climb/descent rate.'}}, 'description': 'An aircraft (adsb.lol, ODbL).'}, 'examples': [[]], 'description': 'Aircraft, nearest first.'}, 'coverage': {'type': 'object', 'required': ['delays', 'board', 'weather', 'aircraft'], 'properties': {'board': {'type': 'boolean', 'examples': [True], 'description': 'Avinor covers it.'}, 'delays': {'type': 'boolean', 'examples': [False], 'description': 'FAA covers this airport.'}, 'weather': {'type': 'boolean', 'examples': [True], 'description': 'A METAR station exists.'}, 'aircraft': {'type': 'boolean', 'examples': [True], 'description': 'Live positions.'}}, 'description': 'Which sources cover this query.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.avinor.no'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Flight data from Avinor'], 'description': 'Credit.'}}, 'description': 'A required credit.'}, 'examples': [[]], 'description': 'Credits to show with the data.'}, 'aircraft_scope': {'type': ['string', 'null'], 'examples': ['within 25 nautical miles'], 'description': 'What the aircraft list covers.'}, 'sections_failed': {'type': 'array', 'items': {'type': 'string', 'examples': ['aircraft'], 'description': 'A section whose source did not answer.'}, 'examples': [[]], 'description': 'Empty when none.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_verify_claims
Verify claims against sources
Fact check: up to 10 claims checked against up to 4 source URLs you name; each claim comes back SUPPORTED, CONTRADICTED or UNSUPPORTED with the quote the verdict rests on. Input: claims and sources. Use research.web when you have a question but no sources yet. $5.00 per call. Returns: claims[], verdicts[{claim,verdict,quote,source_n}], sources_read[], sources_unread[], model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['claims', 'sources'], 'properties': {'claims': {'type': 'array', 'items': {'type': 'string'}}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, pt-BR, zh-Hant): every prose field of the answer is written in this language. Default: the language of the material or question.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'verify.claims response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['claims', 'verdicts', 'sources_read', 'sources_unread', 'model'], 'properties': {'model': {'type': 'string', 'examples': ['gemini-2.5-flash'], 'description': 'The model that produced the answer.'}, 'claims': {'type': 'array', 'items': {'type': 'string', 'examples': ['HubVibe sells machine-payable site audits.'], 'description': 'A claim, as given.'}, 'examples': [['HubVibe sells machine-payable site audits.']], 'description': 'The claims checked, in order.'}, 'verdicts': {'type': 'array', 'items': {'type': 'object', 'required': ['claim', 'verdict'], 'properties': {'claim': {'type': 'string', 'examples': ['HubVibe sells machine-payable site audits.'], 'description': 'The claim, as given.'}, 'quote': {'type': ['string', 'null'], 'examples': ['Every check is priced per call over HTTP 402.'], 'description': 'The sentence the verdict rests on; null when UNSUPPORTED.'}, 'verdict': {'enum': ['SUPPORTED', 'CONTRADICTED', 'UNSUPPORTED'], 'type': 'string', 'examples': ['SUPPORTED'], 'description': 'Whether the sources support, contradict, or do not address the claim.'}, 'source_n': {'type': ['integer', 'null'], 'examples': [1], 'description': 'Which source (by n) the quote is from; null when UNSUPPORTED.'}}, 'description': 'One claim and its verdict.'}, 'description': 'One verdict per claim, same order.'}, 'sources_read': {'type': 'array', 'items': {'type': 'object', 'required': ['n', 'url'], 'properties': {'n': {'type': 'integer', 'examples': [1], 'description': 'Citation number used as [n] in the text.'}, 'url': {'type': 'string', 'examples': ['https://example.com/about'], 'description': 'Source URL.'}, 'title': {'type': ['string', 'null'], 'examples': ['About Example'], 'description': 'Page title, when the page had one.'}}, 'description': 'One source the answer cites.'}, 'description': 'Sources read, numbered as cited in source_n.'}, 'sources_unread': {'type': 'array', 'items': {'type': 'object', 'required': ['url', 'reason'], 'properties': {'url': {'type': 'string', 'examples': ['https://example.com/paywalled'], 'description': 'Source that could not be read.'}, 'reason': {'type': 'string', 'examples': ['HTTP 403 from the target'], 'description': 'Why it could not be read.'}}, 'description': 'A source that was found but not read; disclosed, never silently dropped.'}, 'examples': [[]], 'description': 'Sources that could not be read, with the reason.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_video_generate
Generate a video
Video generation: a short clip from a text prompt with Google Veo, returned as base64 video bytes (or a GCS URI when large) with its MIME type. Input: prompt, optional aspect_ratio (16:9 or 9:16), duration_seconds (4, 6 or 8) and generate_audio. $10.00 per call. Returns: prompt, aspect_ratio, duration_seconds, video_base64 or gcs_uri, mime_type, model.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['prompt'], 'properties': {'prompt': {'type': 'string'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$', 'maxLength': 35, 'description': 'Optional BCP-47 language tag (en, ja, ko, pt-BR): the human-readable strings of the result (notes, details, reasons) are translated into this language; data, codes, numbers and URLs are untouched. Default: as produced.'}, 'aspect_ratio': {'type': 'string', 'description': '16:9 or 9:16. Default 16:9.'}, 'generate_audio': {'type': 'boolean', 'description': 'Default false.'}, 'duration_seconds': {'type': 'integer', 'description': '4, 6 or 8. Default 6.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'video.generate response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['prompt', 'aspect_ratio', 'duration_seconds', 'mime_type', 'model'], 'properties': {'model': {'type': 'string', 'examples': ['veo-3.0-generate-001'], 'description': 'Video model.'}, 'prompt': {'type': 'string', 'examples': ['A single bee landing on a circuit-board flower, slow motion'], 'description': 'The prompt.'}, 'gcs_uri': {'type': ['string', 'null'], 'examples': [None], 'description': 'Cloud Storage URI, when the provider stored it instead.'}, 'mime_type': {'type': 'string', 'examples': ['video/mp4'], 'description': 'Video MIME type.'}, 'aspect_ratio': {'type': 'string', 'examples': ['16:9'], 'description': 'Aspect ratio generated.'}, 'video_base64': {'type': ['string', 'null'], 'examples': ['AAAAIGZ0eXBpc29t...'], 'description': 'The video, base64, when returned inline.'}, 'duration_seconds': {'type': 'integer', 'examples': [4], 'description': 'Clip length in seconds.'}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
hubvibe_video_youtube
YouTube search and video statistics, live
Search YouTube or look up videos by id, each with live statistics read at call time from the YouTube Data API v3: title, channel, upload time, duration, views, likes, comments, live flag and thumbnail. A query runs YouTube's own video search (sort by relevance, date, views, rating or title; filter by upload date, country, language) plus one details call; video_ids skips it. Input: query or video_ids; optional max_results, order, published_after, region_code, language. $0.05 per call. Returns: query, video_ids, total_results, items[{video_id, url, title, description, channel_id, channel_title, published_at, duration_seconds, view_count, like_count, comment_count, live, thumbnail_url}], item_count, source, as_of, checked_at.
Solo lectura Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'oneOf': [{'required': ['query']}, {'required': ['video_ids']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': [], 'properties': {'order': {'enum': ['relevance', 'date', 'viewCount', 'rating', 'title'], 'type': 'string', 'description': "With query: YouTube's sort, default relevance."}, 'query': {'type': 'string', 'maxLength': 300, 'minLength': 1, 'description': 'Words to search YouTube for, in any language. Use this OR `video_ids`.'}, 'language': {'type': 'string', 'pattern': '^[A-Za-z]{2,3}$', 'description': 'With query: ISO 639 language code of the results to prefer, e.g. en, ja.'}, 'video_ids': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{11}$'}, 'maxItems': 25, 'minItems': 1, 'description': 'YouTube video ids (11 characters) to look up directly; skips the search.'}, 'max_results': {'type': 'integer', 'maximum': 25, 'minimum': 1, 'description': 'With query: videos to return, default 10.'}, 'region_code': {'type': 'string', 'maxLength': 2, 'minLength': 2, 'description': 'With query: ISO 3166-1 alpha-2 country whose results to prefer, e.g. US, JP.'}, 'published_after': {'type': 'string', 'format': 'date-time', 'description': 'With query: only videos uploaded at or after this RFC 3339 time, e.g. 2026-01-01T00:00:00Z.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'title': 'video.youtube response', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'worker', 'price_usd', 'result', 'provenance', 'receipt_id', 'receipt_url'], 'properties': {'result': {'type': 'object', 'required': ['query', 'video_ids', 'total_results', 'items', 'item_count', 'source', 'as_of', 'checked_at'], 'properties': {'as_of': {'type': 'string', 'examples': ['2026-09-27T12:00:00Z'], 'description': 'The same instant as checked_at: YouTube does not stamp its statistics.'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['video_id', 'url', 'title', 'description', 'channel_id', 'channel_title', 'published_at', 'duration_seconds', 'view_count', 'like_count', 'comment_count', 'live', 'thumbnail_url'], 'properties': {'url': {'type': 'string', 'examples': ['https://www.youtube.com/watch?v=IJhS_fv5Ktk'], 'description': 'Watch URL.'}, 'live': {'type': ['boolean', 'null'], 'examples': [False], 'description': 'Live or upcoming broadcast (liveBroadcastContent is not none); null when not stated.'}, 'title': {'type': ['string', 'null'], 'examples': ['Open source licensing explained'], 'description': 'Title.'}, 'video_id': {'type': 'string', 'examples': ['IJhS_fv5Ktk'], 'description': 'YouTube video id.'}, 'channel_id': {'type': ['string', 'null'], 'examples': ['UCoBPd2jgYzQ5m8k3f1nR9wA'], 'description': 'Uploading channel id.'}, 'like_count': {'type': ['integer', 'null'], 'examples': [2225], 'description': 'Likes; null when the uploader hides them.'}, 'view_count': {'type': ['integer', 'null'], 'examples': [52004], 'description': 'Views; null when YouTube does not send it.'}, 'description': {'type': ['string', 'null'], 'examples': ['A short intro to open source licences.'], 'description': 'Description, cut at 500 characters; null when empty.'}, 'published_at': {'type': ['string', 'null'], 'examples': ['2026-05-14T16:00:12Z'], 'description': 'Upload time as YouTube states it (ISO 8601).'}, 'channel_title': {'type': ['string', 'null'], 'examples': ['Coinbase Developer Platform'], 'description': 'Uploading channel name.'}, 'comment_count': {'type': ['integer', 'null'], 'examples': [112], 'description': 'Comments; null when hidden or comments are off.'}, 'thumbnail_url': {'type': ['string', 'null'], 'examples': ['https://i.ytimg.com/vi/IJhS_fv5Ktk/hqdefault.jpg'], 'description': 'Thumbnail URL, the high size when YouTube offers it.'}, 'duration_seconds': {'type': ['integer', 'null'], 'examples': [754], 'description': "Length in whole seconds from contentDetails.duration; 0 for a live or upcoming stream; null when YouTube did not return the video's details."}}, 'description': 'One video, with its live statistics.'}, 'description': "Videos, in YouTube's search order (or the order of the ids asked); ids YouTube does not know are absent."}, 'query': {'type': ['string', 'null'], 'examples': ['open source licensing'], 'description': 'The query as given; null when video_ids were looked up.'}, 'source': {'type': 'string', 'const': 'youtube-data-api', 'description': 'Data source.'}, 'video_ids': {'type': ['array', 'null'], 'items': {'type': 'string'}, 'examples': [['IJhS_fv5Ktk']], 'description': 'The ids asked for, in order; null when a query was searched.'}, 'checked_at': {'type': 'string', 'format': 'date-time', 'examples': ['2026-09-26T18:00:00Z'], 'description': 'When this node read the source (UTC). Nothing here is cached.'}, 'item_count': {'type': 'integer', 'examples': [3], 'description': 'Videos returned.'}, 'total_results': {'type': ['integer', 'null'], 'examples': [19113], 'description': "YouTube's estimated total matches for the query (pageInfo.totalResults); null when not sent."}}}, 'status': {'type': 'string', 'const': 'ok', 'description': 'Present only on a delivered result.'}, 'worker': {'type': 'string', 'examples': ['market.quote'], 'description': 'Catalog name of the worker that ran.'}, 'price_usd': {'type': 'number', 'examples': [0.02], 'description': 'What this call cost, in USD.'}, 'provenance': {'type': 'object', 'required': ['steps', 'providers_used', 'attempts', 'elapsed_ms'], 'properties': {'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['step', 'ok', 'ms'], 'properties': {'ms': {'type': 'integer', 'examples': [312], 'description': 'Milliseconds the step took.'}, 'ok': {'type': 'boolean', 'examples': [True], 'description': 'Whether the step succeeded.'}, 'step': {'type': 'string', 'examples': ['quote'], 'description': 'Step name inside the worker.'}, 'reason': {'type': 'string', 'examples': ['provider_timeout'], 'description': 'Failure reason, on a failed step.'}, 'provider': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider that served the step.'}}, 'description': 'One step of the job.'}, 'description': 'Every step the job ran, in order.'}, 'attempts': {'type': 'integer', 'examples': [1], 'description': 'Provider attempts made, including retries and failovers.'}, 'elapsed_ms': {'type': 'integer', 'examples': [340], 'description': 'Wall-clock milliseconds for the whole job.'}, 'providers_used': {'type': 'array', 'items': {'type': 'string', 'examples': ['coinbase-advanced-trade-public'], 'description': 'Provider name.'}, 'examples': [['coinbase-advanced-trade-public']], 'description': 'Providers that served the job.'}}, 'description': 'How the result was produced: which providers ran and how long each took.'}, 'receipt_id': {'type': 'string', 'examples': ['rcpt_9f1c2b3a4d5e6f70'], 'description': 'Receipt id for this job.'}, 'attribution': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'url'], 'properties': {'url': {'type': 'string', 'examples': ['https://translate.google.com'], 'description': 'Link.'}, 'text': {'type': 'string', 'examples': ['Translated by Google'], 'description': 'Credit.'}}, 'description': 'A credit.'}, 'description': "Present only when the result's text was machine-translated: the credit to show with it."}, 'receipt_url': {'type': 'string', 'examples': ['/work/receipts/rcpt_9f1c2b3a4d5e6f70'], 'description': 'Where to fetch the machine-readable receipt (free, no payment).'}, 'billing_warning': {'type': 'string', 'examples': ['settlement pending'], 'description': 'Present only when the charge was recorded with a caveat.'}}, 'description': "The 200 body of every paid /work call. `result` is the worker's own output (its schema is per route); everything else is the same on every /work route. A receipt for the job is at `receipt_url`."}
Modificado
hubvibe_video_generate
1 de October de 2026 a las 02:45
Modificado
hubvibe_maps_weather
1 de October de 2026 a las 02:45
Modificado
hubvibe_maps_route
1 de October de 2026 a las 02:45
Modificado
hubvibe_maps_places
1 de October de 2026 a las 02:45
Modificado
hubvibe_prediction_events
1 de October de 2026 a las 02:45
Modificado
hubvibe_prediction_market
1 de October de 2026 a las 02:45
Modificado
hubvibe_market_ticker
1 de October de 2026 a las 02:45
Modificado
hubvibe_market_rates
1 de October de 2026 a las 02:45
Modificado
hubvibe_chain_rpc
1 de October de 2026 a las 02:45
Modificado
hubvibe_fetch_raw
1 de October de 2026 a las 02:45
Modificado
hubvibe_security_mcp_inspect
1 de October de 2026 a las 02:45
Modificado
hubvibe_social_x_pulse
1 de October de 2026 a las 02:45
Modificado
hubvibe_social_mastodon
1 de October de 2026 a las 02:45
Modificado
hubvibe_social_bluesky
1 de October de 2026 a las 02:45
Modificado
hubvibe_video_youtube
1 de October de 2026 a las 02:45
Modificado
hubvibe_traffic_route
1 de October de 2026 a las 02:45
Modificado
hubvibe_commerce_shipping
1 de October de 2026 a las 02:45
Añadido
hubvibe_identity_check
1 de October de 2026 a las 02:45
Añadido
hubvibe_domain_dns
1 de October de 2026 a las 02:45
Añadido
hubvibe_ip_lookup
1 de October de 2026 a las 02:45
Añadido
hubvibe_phone_parse
1 de October de 2026 a las 02:45
Añadido
hubvibe_sanctions_screen
1 de October de 2026 a las 02:45
Modificado
hubvibe_company_enrich
1 de October de 2026 a las 02:45
Modificado
hubvibe_travel_flight_status
1 de October de 2026 a las 02:45
Modificado
hubvibe_property_context
1 de October de 2026 a las 02:45
Modificado
hubvibe_email_verify
1 de October de 2026 a las 02:45
Modificado
hubvibe_data_macro
1 de October de 2026 a las 02:45
Modificado
hubvibe_news_search
1 de October de 2026 a las 02:45
Modificado
hubvibe_search_results
1 de October de 2026 a las 02:45
Modificado
hubvibe_opendata_table
1 de October de 2026 a las 02:45