{"@context":"https://agenticresourcediscovery.org/context/v1","specVersion":"0.91","publisher":"hubvibe-io.com","displayName":"HubVibe: Pay-per-Call Agent Tools: Web Search, Email Verify, Contact Screening, Stocks, Crypto, News","entries":[{"identifier":"urn:air:hubvibe-io.com:node:hubvibe","displayName":"HubVibe: Pay-per-Call Agent Tools: Web Search, Email Verify, Contact Screening, Stocks, Crypto, News","type":"application/json","url":"https://hubvibe-io.com/.well-known/agent.json","description":"The node's own manifest: every audit and worker with price, input and output schema, the payment rails live on this deployment, rate limits, and how receipts work. Read this first; everything below is one route of it.","capabilities":["SiteAudit","WorkerNetwork","MachinePayable","Receipts"],"representativeQueries":["machine-payable API an agent can pay per call without an account","pay-per-call site audits and dev utilities over HTTP 402","what can I buy from this node and what does each call cost"],"tags":["hubvibe","http-402","pay-per-call","agents"],"metadata":{"openapi":"https://hubvibe-io.com/openapi.json","llms_txt":"https://hubvibe-io.com/llms.txt"},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:mcp:hubvibe","displayName":"HubVibe (MCP server)","type":"application/mcp-server-card+json","url":"https://hubvibe-io.com/mcp.json","description":"MCP server (Streamable HTTP) with every HubVibe capability as a tool: web search and cited research, LLM completion and extraction, crypto and Base on-chain data, prediction markets, BigQuery SQL and forecasting, deterministic statistics, image, speech and video generation, sandboxed Python, maps, and the five site audits (WCAG 2.1 via axe-core, SEO, security headers, performance, bundle). initialize and tools/list are free; tools/call is billed per call.","capabilities":["audit_wcag","audit_seo","audit_security","audit_performance","audit_bundle","hubvibe_predictive_probability_engine","hubvibe_chain_network","hubvibe_chain_address","hubvibe_chain_transaction","hubvibe_market_quote","hubvibe_market_prediction","hubvibe_extract_page","hubvibe_llm_analyze","hubvibe_llm_extract","hubvibe_data_query","hubvibe_data_question","hubvibe_research_brief","hubvibe_research_page_facts","hubvibe_market_intel","hubvibe_search_web","hubvibe_llm_generate","hubvibe_code_execute","hubvibe_image_generate","hubvibe_speech_synthesize","hubvibe_speech_transcribe","hubvibe_data_forecast","hubvibe_data_anomalies","hubvibe_verify_claims","hubvibe_research_web","hubvibe_research_company","hubvibe_agent_task","hubvibe_agent_task_pro","hubvibe_agent_task_max","hubvibe_monitor_snapshot","hubvibe_monitor_check","hubvibe_commerce_availability","hubvibe_market_stock","hubvibe_market_fundamentals","hubvibe_market_insiders","hubvibe_finance_analytics","hubvibe_opendata_search","hubvibe_opendata_table","hubvibe_search_results","hubvibe_news_search","hubvibe_data_macro","hubvibe_email_verify","hubvibe_property_context","hubvibe_travel_flight_status","hubvibe_company_enrich","hubvibe_sanctions_screen","hubvibe_phone_parse","hubvibe_ip_lookup","hubvibe_domain_dns","hubvibe_identity_check","hubvibe_contact_screen","hubvibe_lead_qualify","hubvibe_commerce_shipping","hubvibe_traffic_route","hubvibe_video_youtube","hubvibe_social_bluesky","hubvibe_social_mastodon","hubvibe_social_x_pulse","hubvibe_security_mcp_inspect","hubvibe_fetch_raw","hubvibe_chain_rpc","hubvibe_market_rates","hubvibe_market_ticker","hubvibe_prediction_market","hubvibe_prediction_events","hubvibe_maps_places","hubvibe_maps_route","hubvibe_maps_weather","hubvibe_video_generate","hubvibe_market_signal","hubvibe_market_forecast"],"representativeQueries":["MCP server with pay-per-call web search, LLM and crypto data tools","MCP tool that answers a question from a live web search with sources","run WCAG, SEO, security and performance audits from an MCP client"],"tags":["mcp","web-search","llm","crypto-data","site-audits"],"metadata":{"endpoint":"https://hubvibe-io.com/mcp","protocol":"streamable-http"},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:agent:a2a","displayName":"HubVibe (A2A agent)","type":"application/a2a-agent-card+json","url":"https://hubvibe-io.com/.well-known/agent-card.json","description":"A2A Agent Card: every MCP tool is a skill, served over JSON-RPC at /a2a in A2A 1.0 and 0.3, paid per call with the a2a-x402 extension or the usual HTTP payment headers.","capabilities":["audit_wcag","audit_seo","audit_security","audit_performance","audit_bundle","hubvibe_predictive_probability_engine","hubvibe_chain_network","hubvibe_chain_address","hubvibe_chain_transaction","hubvibe_market_quote","hubvibe_market_prediction","hubvibe_extract_page","hubvibe_llm_analyze","hubvibe_llm_extract","hubvibe_data_query","hubvibe_data_question","hubvibe_research_brief","hubvibe_research_page_facts","hubvibe_market_intel","hubvibe_search_web","hubvibe_llm_generate","hubvibe_code_execute","hubvibe_image_generate","hubvibe_speech_synthesize","hubvibe_speech_transcribe","hubvibe_data_forecast","hubvibe_data_anomalies","hubvibe_verify_claims","hubvibe_research_web","hubvibe_research_company","hubvibe_agent_task","hubvibe_agent_task_pro","hubvibe_agent_task_max","hubvibe_monitor_snapshot","hubvibe_monitor_check","hubvibe_commerce_availability","hubvibe_market_stock","hubvibe_market_fundamentals","hubvibe_market_insiders","hubvibe_finance_analytics","hubvibe_opendata_search","hubvibe_opendata_table","hubvibe_search_results","hubvibe_news_search","hubvibe_data_macro","hubvibe_email_verify","hubvibe_property_context","hubvibe_travel_flight_status","hubvibe_company_enrich","hubvibe_sanctions_screen","hubvibe_phone_parse","hubvibe_ip_lookup","hubvibe_domain_dns","hubvibe_identity_check","hubvibe_contact_screen","hubvibe_lead_qualify","hubvibe_commerce_shipping","hubvibe_traffic_route","hubvibe_video_youtube","hubvibe_social_bluesky","hubvibe_social_mastodon","hubvibe_social_x_pulse","hubvibe_security_mcp_inspect","hubvibe_fetch_raw","hubvibe_chain_rpc","hubvibe_market_rates","hubvibe_market_ticker","hubvibe_prediction_market","hubvibe_prediction_events","hubvibe_maps_places","hubvibe_maps_route","hubvibe_maps_weather","hubvibe_video_generate","hubvibe_market_signal","hubvibe_market_forecast"],"representativeQueries":["A2A agent that sells site audits and dev utilities per call","agent-to-agent API paid with x402 on Base or Solana","A2A skill for WCAG, SEO, web research or LLM calls"],"tags":["a2a","x402","pay-per-call","agents"],"metadata":{"endpoint":"https://hubvibe-io.com/a2a","protocol":"jsonrpc"},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:api:openapi","displayName":"HubVibe: Pay-per-Call Agent Tools: Web Search, Email Verify, Contact Screening, Stocks, Crypto, News (OpenAPI)","type":"application/openapi+json","url":"https://hubvibe-io.com/openapi.json","description":"OpenAPI 3.1 for every paid route on the node. Each route declares x-payment-info, a request example and a 200 response schema with example; every /work route's result keys are typed there.","capabilities":["OpenAPI","SiteAudit","WorkerNetwork"],"representativeQueries":["OpenAPI spec for a pay-per-call agent API","REST endpoints with x-payment-info for autonomous agents"],"tags":["openapi","rest","http-402"],"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:audit:wcag","displayName":"Site audit: wcag","type":"application/vnd.hubvibe.route+json","data":{"path":"/audit/wcag","method":"POST","url":"https://hubvibe-io.com/audit/wcag","price_usd":0.05,"payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","title":"Live URL or raw HTML to audit","properties":{"url":{"type":"string","format":"uri","description":"Live, fetchable http(s) URL to audit.","examples":["https://example.com"]},"html":{"type":"string","description":"Raw HTML source to audit instead of fetching a URL."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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.","examples":["ja"]}},"anyOf":[{"required":["url"]},{"required":["html"]}]},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"engine":{"type":"string","const":"axe-core"},"violations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"axe-core rule id."},"impact":{"type":["string","null"],"description":"axe-core impact level."},"help":{"type":["string","null"]},"help_url":{"type":"string","format":"uri"},"nodes_affected":{"type":"integer","minimum":0}},"required":["id"]}}},"required":["pass"]},"returns":"pass (bool), violations[] with id/impact/help/help_url/nodes_affected.","deterministic":true},"description":"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.","capabilities":["audit_wcag","AuditWcag"],"representativeQueries":["check a website for WCAG 2.1 accessibility violations","run an axe-core accessibility audit on a URL","is this page accessible, and which rules does it fail"],"tags":["audit","wcag","deterministic","pay-per-call"],"metadata":{"price_usd":0.05,"path":"/audit/wcag","method":"POST","deterministic":true},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:audit:seo","displayName":"Site audit: seo","type":"application/vnd.hubvibe.route+json","data":{"path":"/audit/seo","method":"POST","url":"https://hubvibe-io.com/audit/seo","price_usd":0.05,"payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","title":"Live URL or raw HTML to audit","properties":{"url":{"type":"string","format":"uri","description":"Live, fetchable http(s) URL to audit.","examples":["https://example.com"]},"html":{"type":"string","description":"Raw HTML source to audit instead of fetching a URL."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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.","examples":["ja"]}},"anyOf":[{"required":["url"]},{"required":["html"]}]},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"findings":{"type":"array","description":"One entry per rule that did not pass. Empty when the check is clean.","items":{"type":"object","properties":{"id":{"type":"string","description":"Stable rule identifier."},"severity":{"type":"string","description":"Rule severity."},"detail":{"type":"string","description":"What failed and where."}},"required":["id"]}}},"required":["pass"]},"returns":"pass (bool), findings[] with id/severity/detail.","deterministic":true},"description":"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.","capabilities":["audit_seo","AuditSeo"],"representativeQueries":["on-page SEO audit of a web page","check title, meta description, canonical and structured data on a URL","what SEO problems does this page have"],"tags":["audit","seo","deterministic","pay-per-call"],"metadata":{"price_usd":0.05,"path":"/audit/seo","method":"POST","deterministic":true},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:audit:security","displayName":"Site audit: security","type":"application/vnd.hubvibe.route+json","data":{"path":"/audit/security","method":"POST","url":"https://hubvibe-io.com/audit/security","price_usd":0.05,"payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","title":"Live URL to audit","properties":{"url":{"type":"string","format":"uri","description":"Live, fetchable http(s) URL to audit.","examples":["https://example.com"]},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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.","examples":["ja"]}},"required":["url"]},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"findings":{"type":"array","description":"One entry per rule that did not pass. Empty when the check is clean.","items":{"type":"object","properties":{"id":{"type":"string","description":"Stable rule identifier."},"severity":{"type":"string","description":"Rule severity."},"detail":{"type":"string","description":"What failed and where."}},"required":["id"]}}},"required":["pass"]},"returns":"pass (bool), findings[] with id/severity/detail.","deterministic":true},"description":"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.","capabilities":["audit_security","AuditSecurity"],"representativeQueries":["check a site's security headers: HSTS, CSP, X-Content-Type-Options","security header audit of a URL","is this website missing security headers"],"tags":["audit","security","deterministic","pay-per-call"],"metadata":{"price_usd":0.05,"path":"/audit/security","method":"POST","deterministic":true},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:audit:performance","displayName":"Site audit: performance","type":"application/vnd.hubvibe.route+json","data":{"path":"/audit/performance","method":"POST","url":"https://hubvibe-io.com/audit/performance","price_usd":0.05,"payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","title":"Live URL to audit","properties":{"url":{"type":"string","format":"uri","description":"Live, fetchable http(s) URL to audit.","examples":["https://example.com"]},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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.","examples":["ja"]}},"required":["url"]},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"metrics":{"type":"object","properties":{"dom_node_count":{"type":"integer","minimum":0},"total_bytes_transferred":{"type":"integer","minimum":0},"request_count":{"type":"integer","minimum":0}}},"findings":{"type":"array","description":"One entry per rule that did not pass. Empty when the check is clean.","items":{"type":"object","properties":{"id":{"type":"string","description":"Stable rule identifier."},"severity":{"type":"string","description":"Rule severity."},"detail":{"type":"string","description":"What failed and where."}},"required":["id"]}}},"required":["pass"]},"returns":"pass (bool), metrics{}, findings[] with id/severity/detail.","deterministic":true},"description":"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.","capabilities":["audit_performance","AuditPerformance"],"representativeQueries":["how heavy is this page: DOM size, bytes transferred, request count","page weight and request count audit of a URL"],"tags":["audit","performance","deterministic","pay-per-call"],"metadata":{"price_usd":0.05,"path":"/audit/performance","method":"POST","deterministic":true},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:audit:bundle","displayName":"Site audit: bundle","type":"application/vnd.hubvibe.route+json","data":{"path":"/audit/bundle","method":"POST","url":"https://hubvibe-io.com/audit/bundle","price_usd":0.15,"payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","title":"Live URL to audit","properties":{"url":{"type":"string","format":"uri","description":"Live, fetchable http(s) URL to audit.","examples":["https://example.com"]},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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.","examples":["ja"]}},"required":["url"]},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"wcag":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"engine":{"type":"string","const":"axe-core"},"violations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"axe-core rule id."},"impact":{"type":["string","null"],"description":"axe-core impact level."},"help":{"type":["string","null"]},"help_url":{"type":"string","format":"uri"},"nodes_affected":{"type":"integer","minimum":0}},"required":["id"]}}},"required":["pass"]},"seo":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"findings":{"type":"array","description":"One entry per rule that did not pass. Empty when the check is clean.","items":{"type":"object","properties":{"id":{"type":"string","description":"Stable rule identifier."},"severity":{"type":"string","description":"Rule severity."},"detail":{"type":"string","description":"What failed and where."}},"required":["id"]}}},"required":["pass"]},"security":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"findings":{"type":"array","description":"One entry per rule that did not pass. Empty when the check is clean.","items":{"type":"object","properties":{"id":{"type":"string","description":"Stable rule identifier."},"severity":{"type":"string","description":"Rule severity."},"detail":{"type":"string","description":"What failed and where."}},"required":["id"]}}},"required":["pass"]},"performance":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"status":{"type":"string","const":"ok","description":"Present only on a completed audit."},"pass":{"type":"boolean","description":"Whether every rule in this dimension passed."},"metrics":{"type":"object","properties":{"dom_node_count":{"type":"integer","minimum":0},"total_bytes_transferred":{"type":"integer","minimum":0},"request_count":{"type":"integer","minimum":0}}},"findings":{"type":"array","description":"One entry per rule that did not pass. Empty when the check is clean.","items":{"type":"object","properties":{"id":{"type":"string","description":"Stable rule identifier."},"severity":{"type":"string","description":"Rule severity."},"detail":{"type":"string","description":"What failed and where."}},"required":["id"]}}},"required":["pass"]}},"required":["pass"]},"returns":"pass (bool) plus wcag{}, seo{}, security{}, performance{} sub-results.","deterministic":true},"description":"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.","capabilities":["audit_bundle","AuditBundle"],"representativeQueries":["run accessibility, SEO, security and performance checks on a URL in one call","full site compliance audit of a page","gate a deployment on accessibility and SEO regressions"],"tags":["audit","bundle","deterministic","pay-per-call"],"metadata":{"price_usd":0.15,"path":"/audit/bundle","method":"POST","deterministic":true},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:chain.network","displayName":"Base network state (chain.network)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/chain/network","method":"POST","url":"https://hubvibe-io.com/work/chain/network","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false},"input_example":{},"output_schema":{"type":"object","properties":{"network":{"type":"string","const":"base-mainnet","description":"Chain read."},"block_number":{"type":"integer","description":"Current head block number.","examples":[41230577]},"gas_price_wei":{"type":"string","description":"Current gas price in wei, as a decimal string.","examples":["12500000"]},"gas_price_gwei":{"type":"number","description":"Current gas price in gwei.","examples":[0.0125]}},"required":["network","block_number","gas_price_wei","gas_price_gwei"]},"output_example":{"network":"base-mainnet","block_number":41230577,"gas_price_wei":"12500000","gas_price_gwei":0.0125},"returns":"block_number, gas_price_wei, gas_price_gwei.","max_seconds":30,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Base network status and gas price: current block height and gas price (wei and gwei), live from a Base mainnet RPC node. Use it to check Base is moving, time an on-chain action or estimate gas before sending a transaction. Keyless, pay per call. No input needed.","capabilities":["chain.network","ChainNetwork"],"representativeQueries":["what is the current block number on Base","current gas price on Base mainnet","is the Base chain live right now"],"tags":["base","gas-price","block-height","blockchain","onchain","rpc","live","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/chain/network","method":"POST","compound":false,"max_seconds":30},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:chain.address","displayName":"Base address report (chain.address)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/chain/address","method":"POST","url":"https://hubvibe-io.com/work/chain/address","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"address":{"type":"string","description":"0x-prefixed Base address."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["address"],"additionalProperties":false},"input_example":{"address":"0x837C40E2B4e976f43Ffb4451eE281A00fA9477dd"},"output_schema":{"type":"object","properties":{"address":{"type":"string","description":"The address queried.","examples":["0x837C40E2B4e976f43Ffb4451eE281A00fA9477dd"]},"network":{"type":"string","const":"base-mainnet","description":"Chain read."},"balance_wei":{"type":"string","description":"ETH balance in wei, as a decimal string.","examples":["1250000000000000000"]},"balance_eth":{"type":"number","description":"ETH balance.","examples":[1.25]},"transaction_count":{"type":"integer","description":"Nonce: transactions sent from this address.","examples":[42]},"is_contract":{"type":"boolean","description":"Whether code is deployed at the address.","examples":[false]},"code_size_bytes":{"type":"integer","description":"Deployed bytecode size; 0 for an externally owned account.","examples":[0]}},"required":["address","network","balance_wei","balance_eth","transaction_count","is_contract","code_size_bytes"]},"output_example":{"address":"0x837C40E2B4e976f43Ffb4451eE281A00fA9477dd","network":"base-mainnet","balance_wei":"1250000000000000000","balance_eth":1.25,"transaction_count":42,"is_contract":false,"code_size_bytes":0},"returns":"balance_wei, balance_eth, transaction_count, is_contract, code_size_bytes.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Base wallet lookup / address balance: ETH balance, transaction count (nonce) and whether the address is a smart contract or an ordinary wallet (EOA), live from Base mainnet in one call. Use it to check a counterparty, deposit address or contract before paying it. Input: address (0x...). For token balances or any other read use chain.rpc.","capabilities":["chain.address","ChainAddress"],"representativeQueries":["ETH balance and transaction count of a Base address","is this Base address a contract or a wallet","look up an address on Base mainnet"],"tags":["base","wallet","balance","address-lookup","onchain","eoa","contract","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/chain/address","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:chain.transaction","displayName":"Base transaction lookup (chain.transaction)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/chain/transaction","method":"POST","url":"https://hubvibe-io.com/work/chain/transaction","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"hash":{"type":"string","description":"0x-prefixed transaction hash."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["hash"],"additionalProperties":false},"input_example":{"hash":"0x9e61e3fce3efad669a236b8d6a0351162c572808026d1a5ffdededd31caad113"},"output_schema":{"type":"object","properties":{"hash":{"type":"string","description":"Transaction hash.","examples":["0xabababababababababababababababababababababababababababababababab"]},"network":{"type":"string","const":"base-mainnet","description":"Chain read."},"from":{"type":["string","null"],"description":"Sender.","examples":["0x837C40E2B4e976f43Ffb4451eE281A00fA9477dd"]},"to":{"type":["string","null"],"description":"Recipient; null for a contract creation.","examples":["0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"]},"value_wei":{"type":"string","description":"Value transferred in wei, as a decimal string.","examples":["0"]},"value_eth":{"type":"number","description":"Value transferred in ETH.","examples":[0.0]},"block_number":{"type":["integer","null"],"description":"Block the transaction was mined in; null while pending.","examples":[41230501]},"mined":{"type":"boolean","description":"Whether the transaction is in a block.","examples":[true]},"status":{"type":"string","enum":["success","failed","pending"],"description":"Receipt status.","examples":["success"]},"gas_used":{"type":"integer","description":"Gas used, from the receipt.","examples":[65231]},"log_count":{"type":"integer","description":"Number of logs emitted, from the receipt.","examples":[2]}},"required":["hash","network","from","to","value_wei","value_eth","block_number","mined","status"]},"output_example":{"hash":"0xabababababababababababababababababababababababababababababababab","network":"base-mainnet","from":"0x837C40E2B4e976f43Ffb4451eE281A00fA9477dd","to":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","value_wei":"0","value_eth":0.0,"block_number":41230501,"mined":true,"status":"success","gas_used":65231,"log_count":2},"returns":"from, to, value_eth, block_number, status, gas_used, log_count.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Base transaction lookup by hash: sender, recipient, ETH value, block, success or failure, gas used and log count, with the receipt folded in, live from Base mainnet. Use it to confirm a payment or transfer landed on-chain. Input: hash (the 0x transaction hash). For the raw receipt use chain.rpc.","capabilities":["chain.transaction","ChainTransaction"],"representativeQueries":["did this Base transaction succeed","look up a transaction hash on Base with its receipt","how much gas did a Base transaction use"],"tags":["base","transaction","tx-lookup","receipt","payment-confirmation","onchain","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/chain/transaction","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.quote","displayName":"Crypto spot quote (market.quote)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/quote","method":"POST","url":"https://hubvibe-io.com/work/market/quote","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"product_id":{"type":"string","description":"e.g. BTC-USD."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["product_id"],"additionalProperties":false},"input_example":{"product_id":"BTC-USD"},"output_schema":{"type":"object","properties":{"product_id":{"type":"string","description":"Coinbase product, base-quote.","examples":["BTC-USD"]},"price":{"type":"string","description":"Last trade price, as the exchange reports it.","examples":["97231.45"]},"price_change_24h_pct":{"type":["string","null"],"description":"24-hour percentage change.","examples":["1.82"]},"volume_24h":{"type":["string","null"],"description":"24-hour volume in the base currency.","examples":["14231.9"]},"base_currency":{"type":["string","null"],"description":"Base currency code.","examples":["BTC"]},"quote_currency":{"type":["string","null"],"description":"Quote currency code.","examples":["USD"]},"status":{"type":["string","null"],"description":"Product status as reported by the exchange.","examples":["online"]},"source":{"type":"string","const":"coinbase-advanced-trade-public","description":"Data source."}},"required":["product_id","price","source"],"description":"Live spot quote."},"output_example":{"product_id":"BTC-USD","price":"97231.45","price_change_24h_pct":"1.82","volume_24h":"14231.9","base_currency":"BTC","quote_currency":"USD","status":"online","source":"coinbase-advanced-trade-public"},"returns":"price, price_change_24h_pct, volume_24h, base/quote currency.","max_seconds":30,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Crypto price / live coin quote: spot price, 24-hour change and 24-hour volume for Bitcoin, Ethereum, Solana or any Coinbase product (BTC-USD, ETH-USD, SOL-USD...), read at call time from Coinbase's public market data. Use it when an agent needs a current cryptocurrency price. Input: product_id such as BTC-USD. Bid/ask: market.ticker. Whole rate table: market.rates.","capabilities":["market.quote","MarketQuote"],"representativeQueries":["current BTC-USD price on Coinbase","24 hour price change and volume for ETH-USD","spot price of a crypto pair"],"tags":["crypto-price","bitcoin","ethereum","solana","price","quote","market-data","live","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/market/quote","method":"POST","compound":false,"max_seconds":30},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.prediction","displayName":"Prediction market probabilities (market.prediction)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/prediction","method":"POST","url":"https://hubvibe-io.com/work/market/prediction","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string","description":"Topic words to match, e.g. 'fed rate cut' or 'BTC 150k' (optional)."},"limit":{"type":"integer","description":"1-50, default 10."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false},"input_example":{},"output_schema":{"type":"object","properties":{"query":{"type":["string","null"],"description":"The search query, or null for the top markets by volume.","examples":["bitcoin"]},"markets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Polymarket market id.","examples":["512345"]},"question":{"type":"string","description":"The market question.","examples":["Will BTC close above $100k on Dec 31?"]},"slug":{"type":"string","description":"Polymarket slug.","examples":["will-btc-close-above-100k"]},"active":{"type":"boolean","description":"Whether the market is active.","examples":[true]},"closed":{"type":"boolean","description":"Whether the market is closed.","examples":[false]},"end_date":{"type":["string","null"],"description":"ISO 8601 end date.","examples":["2026-12-31T00:00:00Z"]},"volume":{"type":["number","null"],"description":"Traded volume in USD.","examples":[1834520.5]},"liquidity":{"type":["number","null"],"description":"Liquidity in USD.","examples":[240310.2]},"implied_probabilities":{"type":"array","items":{"type":"object","properties":{"outcome":{"type":"string","description":"Outcome label.","examples":["Yes"]},"probability_pct":{"type":["number","null"],"description":"Implied probability in percent.","examples":[62.5]}},"required":["outcome"],"description":"One outcome and what the market prices it at."},"description":"Each outcome with its implied probability.","examples":[[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]]}},"required":["id","question","implied_probabilities"],"description":"One prediction market."},"description":"Matching markets, highest volume first."},"count":{"type":"integer","description":"Number of markets returned.","examples":[1]},"source":{"type":"string","const":"polymarket-gamma","description":"Data source."},"note":{"type":"string","description":"What the numbers are and are not.","examples":["Implied probabilities are what the market is currently pricing, not a forecast by HubVibe."]}},"required":["query","markets","count","source","note"]},"output_example":{"query":"bitcoin","markets":[{"id":"512345","question":"Will BTC close above $100k on Dec 31?","slug":"will-btc-close-above-100k","active":true,"closed":false,"end_date":"2026-12-31T00:00:00Z","volume":1834520.5,"liquidity":240310.2,"implied_probabilities":[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]}],"count":1,"source":"polymarket-gamma","note":"Implied probabilities are what the market is currently pricing, not a forecast by HubVibe."},"returns":"markets[] with question, implied_probabilities[], volume, end_date.","max_seconds":30,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Prediction market odds: live Polymarket markets on any topic (elections, Fed rate cuts, crypto, sports, AI, geopolitics) with the probability each outcome implies as a percentage, plus volume, liquidity and end date. Search by topic words or tickers (BTC, 'fed rate cut') or take the biggest markets. A topic no open market matches is refused free, never sold empty. Input: optional query, limit. One market by slug: prediction.market.","capabilities":["market.prediction","MarketPrediction"],"representativeQueries":["what odds do prediction markets give on an event","top Polymarket markets by volume","implied probability of an outcome on Polymarket"],"tags":["prediction-market","polymarket","odds","probability","forecast","elections","betting-odds","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/market/prediction","method":"POST","compound":false,"max_seconds":30},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:extract.page","displayName":"Web page extraction (extract.page)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/extract/page","method":"POST","url":"https://hubvibe-io.com/work/extract/page","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"http(s) URL to fetch."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://example.com"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The URL requested.","examples":["https://example.com"]},"final_url":{"type":["string","null"],"description":"The URL after redirects.","examples":["https://example.com/"]},"title":{"type":["string","null"],"description":"Page title.","examples":["Example Domain"]},"description":{"type":["string","null"],"description":"Meta description.","examples":["Example Domain for documentation."]},"text":{"type":"string","description":"Readable text of the page.","examples":["Example Domain. This domain is for use in illustrative examples..."]},"text_chars":{"type":"integer","description":"Characters in `text`.","examples":[172]},"truncated":{"type":"boolean","description":"Whether the text was cut at the extraction limit.","examples":[false]},"links":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string","description":"Anchor text.","examples":["Pricing"]},"href":{"type":"string","description":"Absolute href.","examples":["https://example.com/pricing"]}},"required":["href"],"description":"One link on the page."},"description":"Up to 100 links on the page.","examples":[[{"text":"More information...","href":"https://www.iana.org/domains/example"}]]},"javascript_rendered":{"type":"boolean","description":"Whether a real browser rendered the page first.","examples":[true]}},"required":["url","text","text_chars","truncated","links","javascript_rendered"]},"output_example":{"url":"https://example.com","final_url":"https://example.com/","title":"Example Domain","description":"Example Domain for documentation.","text":"Example Domain. This domain is for use in illustrative examples...","text_chars":172,"truncated":false,"links":[{"text":"More information...","href":"https://www.iana.org/domains/example"}],"javascript_rendered":true},"returns":"title, description, text, text_chars, links[], javascript_rendered.","max_seconds":90,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Web scraping / web page to clean text: any URL rendered in a real browser (JavaScript pages included) and returned as readable text with title, description and links. Use it to read an article, docs page or product page before summarising or extracting. Input: url. Raw status, headers and body: fetch.raw. A question answered from the page: research.brief.","capabilities":["extract.page","ExtractPage"],"representativeQueries":["extract the readable text and links from a web page","read a JavaScript-rendered page and return its content","get the title, description and text of a URL"],"tags":["web-scraping","scrape","extract","html-to-text","browser","reader","crawl","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/extract/page","method":"POST","compound":false,"max_seconds":90},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:llm.analyze","displayName":"Analyse text (llm.analyze)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/llm/analyze","method":"POST","url":"https://hubvibe-io.com/work/llm/analyze","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"text":{"type":"string","description":"Material to analyse."},"question":{"type":"string","description":"What to answer. Optional."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["text"],"additionalProperties":false},"input_example":{"text":"HubVibe sells machine-payable site audits at $0.05 per call."},"output_schema":{"type":"object","properties":{"question":{"type":"string","description":"The question asked of the material.","examples":["What does it sell, and at what price?"]},"answer":{"type":"string","description":"The answer, from the material only; says so when the material does not contain it.","examples":["It sells machine-payable site audits at $0.05 per call."]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]},"input_chars":{"type":"integer","description":"Characters of material analysed.","examples":[61]},"tokens":{"type":"object","properties":{"prompt":{"type":"integer","description":"Prompt tokens billed by the provider.","examples":[312]},"output":{"type":"integer","description":"Output tokens billed by the provider.","examples":[88]}},"required":["prompt","output"],"description":"Token usage for the call."}},"required":["question","answer","model","input_chars","tokens"]},"output_example":{"question":"What does it sell, and at what price?","answer":"It sells machine-payable site audits at $0.05 per call.","model":"gemini-2.5-flash","input_chars":61,"tokens":{"prompt":312,"output":88}},"returns":"answer, model, tokens{prompt,output}.","max_seconds":150,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Question answering over your own text: ask a question about material you supply and get an answer grounded only in that text (Gemini). If the text does not contain the answer it says so instead of guessing. Use it for summaries, Q&A and checks over documents, emails and pages. Input: text, question; optional language. Fixed JSON fields: llm.extract.","capabilities":["llm.analyze","LlmAnalyze"],"representativeQueries":["answer a question about this text using only the text","summarize the key points of a document","analyze provided material without guessing beyond it"],"tags":["llm","summarize","question-answering","rag","grounded","gemini","document-qa","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/llm/analyze","method":"POST","compound":false,"max_seconds":150},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:llm.extract","displayName":"Extract fields as JSON (llm.extract)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/llm/extract","method":"POST","url":"https://hubvibe-io.com/work/llm/extract","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"text":{"type":"string"},"fields":{"type":"array","items":{"type":"string"},"description":"Field names to extract."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["text","fields"],"additionalProperties":false},"input_example":{"text":"HubVibe sells machine-payable site audits at $0.05 per call.","fields":["title","pricing"]},"output_schema":{"type":"object","properties":{"fields":{"type":"object","properties":{},"required":[],"description":"Exactly the requested field names; null where the material does not state a value.","additionalProperties":true,"examples":[{"title":"HubVibe","pricing":"$0.05 per call"}]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]},"tokens":{"type":"object","properties":{"prompt":{"type":"integer","description":"Prompt tokens billed by the provider.","examples":[312]},"output":{"type":"integer","description":"Output tokens billed by the provider.","examples":[88]}},"required":["prompt","output"],"description":"Token usage for the call."}},"required":["fields","model","tokens"]},"output_example":{"fields":{"title":"HubVibe","pricing":"$0.05 per call"},"model":"gemini-2.5-flash","tokens":{"prompt":312,"output":88}},"returns":"fields{} with one key per requested field.","max_seconds":150,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Structured data extraction / text to JSON: pull the fields you name out of any text into a JSON object with exactly those keys, null where the text does not state a value (Gemini, no invented values). Use it to turn emails, invoices, pages or documents into clean records. Input: text, fields[]. From a live web page: research.page_facts.","capabilities":["llm.extract","LlmExtract"],"representativeQueries":["extract named fields from text as JSON","pull structured data out of unstructured text","turn a document into a JSON object with these keys"],"tags":["extraction","json","structured-output","parsing","llm","entity-extraction","gemini","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/llm/extract","method":"POST","compound":false,"max_seconds":150},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:data.query","displayName":"Run a BigQuery query (data.query)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/data/query","method":"POST","url":"https://hubvibe-io.com/work/data/query","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"sql":{"type":"string","description":"Read-only SELECT or WITH query."},"max_scan_gib":{"type":"number","description":"Optional scan ceiling."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["sql"],"additionalProperties":false},"input_example":{"sql":"SELECT name, SUM(number) AS n FROM `bigquery-public-data.usa_names.usa_1910_2013` GROUP BY name ORDER BY n DESC LIMIT 5"},"output_schema":{"type":"object","properties":{"sql":{"type":"string","description":"The SQL that ran.","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"]},"columns":{"type":"array","items":{"type":"string","description":"Column name.","examples":["name"]},"description":"Result column names, in order.","examples":[["name","n"]]},"rows":{"type":"array","items":{"type":"object","properties":{},"required":[],"description":"One row keyed by column name.","additionalProperties":true,"examples":[{"name":"James","n":4942431}]},"description":"Result rows, keyed by column name.","examples":[[{"name":"James","n":4942431}]]},"row_count":{"type":"integer","description":"Rows returned (capped).","examples":[5]},"total_rows":{"type":"integer","description":"Rows the query produced before the cap.","examples":[5]},"truncated":{"type":"boolean","description":"Whether rows were cut at the cap.","examples":[false]},"gib_processed":{"type":"number","description":"Gibibytes BigQuery scanned; the metered cost basis.","examples":[0.012]},"cache_hit":{"type":"boolean","description":"Whether BigQuery served it from cache (no bytes billed).","examples":[false]}},"required":["sql","columns","rows","row_count","total_rows","truncated","gib_processed","cache_hit"]},"output_example":{"sql":"SELECT name, SUM(number) AS n FROM `bigquery-public-data.usa_names.usa_1910_2013` GROUP BY name ORDER BY n DESC LIMIT 5","columns":["name","n"],"rows":[{"name":"James","n":4942431}],"row_count":5,"total_rows":5,"truncated":false,"gib_processed":0.012,"cache_hit":false},"returns":"columns[], rows[], row_count, gib_processed, cache_hit.","max_seconds":180,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"BigQuery SQL: run a read-only SQL query, including against Google's public datasets (Wikipedia, GitHub, blockchains, weather, census and more), 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. Ask in plain English instead: data.question.","capabilities":["data.query","DataQuery"],"representativeQueries":["run read-only SQL against a BigQuery public dataset","query a BigQuery table and return rows","execute a SELECT on BigQuery with a scan limit"],"tags":["sql","bigquery","database","public-datasets","analytics","data","query","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/data/query","method":"POST","compound":false,"max_seconds":180},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:data.question","displayName":"Answer a question from a dataset (data.question)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/data/question","method":"POST","url":"https://hubvibe-io.com/work/data/question","price_usd":5.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"question":{"type":"string"},"table":{"type":"string","description":"Fully qualified: project.dataset.table."},"columns":{"type":"array","items":{"type":"string"},"description":"Optional column hints."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["question","table"],"additionalProperties":false},"input_example":{"question":"What does it sell, and at what price?","table":"bigquery-public-data.usa_names.usa_1910_2013"},"output_schema":{"type":"object","properties":{"question":{"type":"string","description":"The question asked.","examples":["Which five names were given most often?"]},"table":{"type":"string","description":"The table queried.","examples":["bigquery-public-data.usa_names.usa_1910_2013"]},"answer":{"type":"string","description":"The answer, read from the rows; states the figures.","examples":["James (4,942,431), John (4,834,422), ..."]},"sql":{"type":"string","description":"The SQL the model wrote and that ran.","examples":["SELECT name, SUM(number) AS n FROM ... LIMIT 5"]},"columns":{"type":"array","items":{"type":"string","description":"Column name.","examples":["name"]},"description":"Result column names, in order.","examples":[["name","n"]]},"rows":{"type":"array","items":{"type":"object","properties":{},"required":[],"description":"One row keyed by column name.","additionalProperties":true,"examples":[{"name":"James","n":4942431}]},"description":"Result rows, keyed by column name.","examples":[[{"name":"James","n":4942431}]]},"row_count":{"type":"integer","description":"Rows returned.","examples":[5]},"gib_processed":{"type":"number","description":"Gibibytes BigQuery scanned; the metered cost basis.","examples":[0.012]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["question","table","answer","sql","columns","rows","row_count","gib_processed","model"]},"output_example":{"question":"Which five names were given most often?","table":"bigquery-public-data.usa_names.usa_1910_2013","answer":"James (4,942,431), John (4,834,422), ...","sql":"SELECT name, SUM(number) AS n FROM ... LIMIT 5","columns":["name","n"],"rows":[{"name":"James","n":4942431}],"row_count":5,"gib_processed":0.012,"model":"gemini-2.5-flash"},"returns":"answer, sql, columns[], rows[], gib_processed.","max_seconds":240,"composes":["llm.analyze","data.query"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $5.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$5.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$5.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Ask a database in plain English (text to SQL): any BigQuery table, including Google's public datasets. The SQL is written for you, run under a byte ceiling, and the rows are read back into a written answer, returned with the SQL, columns and rows it used. Use it for analytics questions without writing SQL. Input: question, table; optional columns.","capabilities":["data.question","DataQuestion","LlmAnalyze","DataQuery"],"representativeQueries":["answer a question about a BigQuery table in plain language","natural language to SQL against a dataset and explain the result","ask a data question and get the figures with the SQL that produced them"],"tags":["text-to-sql","analytics","bigquery","natural-language-query","data-analysis","sql","advanced","pay-per-call"],"metadata":{"price_usd":5.0,"tier":"advanced","path":"/work/data/question","method":"POST","compound":true,"max_seconds":240},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:research.brief","displayName":"Research brief on a URL (research.brief)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/research/brief","method":"POST","url":"https://hubvibe-io.com/work/research/brief","price_usd":5.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string"},"question":{"type":"string","description":"Optional; defaults to an overview."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://example.com"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The page read.","examples":["https://example.com"]},"final_url":{"type":["string","null"],"description":"The URL after redirects.","examples":["https://example.com/"]},"title":{"type":["string","null"],"description":"Page title.","examples":["Example Domain"]},"question":{"type":"string","description":"The question answered.","examples":["What does this page offer, who is it for, and what is the pricing?"]},"brief":{"type":"string","description":"The answer, from the page only.","examples":["The page is a placeholder domain reserved for documentation examples..."]},"source":{"type":"object","properties":{"text_chars":{"type":"integer","description":"Characters of readable text extracted.","examples":[8421]},"truncated":{"type":"boolean","description":"Whether the text was cut at the extraction limit.","examples":[false]},"javascript_rendered":{"type":"boolean","description":"Whether a real browser rendered the page first.","examples":[true]}},"required":["text_chars","truncated","javascript_rendered"],"description":"How the page was read."},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["url","question","brief","source","model"]},"output_example":{"url":"https://example.com","final_url":"https://example.com/","title":"Example Domain","question":"What does this page offer, who is it for, and what is the pricing?","brief":"The page is a placeholder domain reserved for documentation examples...","source":{"text_chars":8421,"truncated":false,"javascript_rendered":true},"model":"gemini-2.5-flash"},"returns":"brief, title, final_url, source{}, model.","max_seconds":200,"composes":["extract.page","llm.analyze"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $5.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$5.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$5.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Summarize and analyze a web page: the URL is rendered in a real browser, its content extracted, and a written brief answering your question returned, grounded in that page only and saying so when the page does not answer. Use it for competitor pages, docs, articles and listings. Input: url; optional question. Fixed JSON fields: research.page_facts. Needs a web search: research.web.","capabilities":["research.brief","ResearchBrief","ExtractPage","LlmAnalyze"],"representativeQueries":["read a web page and write a brief answering a question about it","what does this website offer, who is it for and what does it cost","summarize a URL with the source disclosed"],"tags":["summarize","web-page","research","analysis","browser","brief","grounded","advanced","pay-per-call"],"metadata":{"price_usd":5.0,"tier":"advanced","path":"/work/research/brief","method":"POST","compound":true,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:research.page_facts","displayName":"Structured facts from a URL (research.page_facts)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/research/page_facts","method":"POST","url":"https://hubvibe-io.com/work/research/page_facts","price_usd":5.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string"},"fields":{"type":"array","items":{"type":"string"}},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["url","fields"],"additionalProperties":false},"input_example":{"url":"https://example.com","fields":["title","pricing"]},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The page read.","examples":["https://example.com"]},"final_url":{"type":["string","null"],"description":"The URL after redirects.","examples":["https://example.com/"]},"title":{"type":["string","null"],"description":"Page title.","examples":["Example Domain"]},"fields":{"type":"object","properties":{},"required":[],"description":"Exactly the requested field names; null where the page does not state a value.","additionalProperties":true,"examples":[{"title":"Example Domain","pricing":null}]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["url","fields","model"]},"output_example":{"url":"https://example.com","final_url":"https://example.com/","title":"Example Domain","fields":{"title":"Example Domain","pricing":null},"model":"gemini-2.5-flash"},"returns":"fields{} with one key per requested field, plus title and final_url.","max_seconds":200,"composes":["extract.page","llm.extract"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $5.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$5.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$5.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Structured facts from a web page / scrape to JSON: name the fields you need (pricing, plans, contact, product names, anything) and get exactly those keys back as JSON from the live page rendered in a real browser, null where the page does not say. Use it for price monitoring, lead data and catalog extraction. Input: url, fields[].","capabilities":["research.page_facts","ResearchPageFacts","ExtractPage","LlmExtract"],"representativeQueries":["extract specific facts from a web page as JSON fields","get the pricing, contact and product fields from a URL","structured facts about a company from its website"],"tags":["web-scraping","structured-data","price-monitoring","lead-generation","json","extraction","advanced","pay-per-call"],"metadata":{"price_usd":5.0,"tier":"advanced","path":"/work/research/page_facts","method":"POST","compound":true,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.intel","displayName":"Market intelligence read (market.intel)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/intel","method":"POST","url":"https://hubvibe-io.com/work/market/intel","price_usd":5.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"product_id":{"type":"string","description":"e.g. BTC-USD. Default BTC-USD."},"query":{"type":"string","description":"Prediction-market topic. Optional."},"question":{"type":"string","description":"Optional analysis question."},"limit":{"type":"integer"},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":[],"additionalProperties":false},"input_example":{},"output_schema":{"type":"object","properties":{"product_id":{"type":"string","description":"Spot product read.","examples":["BTC-USD"]},"spot":{"type":"object","properties":{"product_id":{"type":"string","description":"Coinbase product, base-quote.","examples":["BTC-USD"]},"price":{"type":"string","description":"Last trade price, as the exchange reports it.","examples":["97231.45"]},"price_change_24h_pct":{"type":["string","null"],"description":"24-hour percentage change.","examples":["1.82"]},"volume_24h":{"type":["string","null"],"description":"24-hour volume in the base currency.","examples":["14231.9"]},"base_currency":{"type":["string","null"],"description":"Base currency code.","examples":["BTC"]},"quote_currency":{"type":["string","null"],"description":"Quote currency code.","examples":["USD"]},"status":{"type":["string","null"],"description":"Product status as reported by the exchange.","examples":["online"]},"source":{"type":"string","const":"coinbase-advanced-trade-public","description":"Data source."}},"required":["product_id","price","source"],"description":"Live spot quote."},"prediction_markets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Polymarket market id.","examples":["512345"]},"question":{"type":"string","description":"The market question.","examples":["Will BTC close above $100k on Dec 31?"]},"slug":{"type":"string","description":"Polymarket slug.","examples":["will-btc-close-above-100k"]},"active":{"type":"boolean","description":"Whether the market is active.","examples":[true]},"closed":{"type":"boolean","description":"Whether the market is closed.","examples":[false]},"end_date":{"type":["string","null"],"description":"ISO 8601 end date.","examples":["2026-12-31T00:00:00Z"]},"volume":{"type":["number","null"],"description":"Traded volume in USD.","examples":[1834520.5]},"liquidity":{"type":["number","null"],"description":"Liquidity in USD.","examples":[240310.2]},"implied_probabilities":{"type":"array","items":{"type":"object","properties":{"outcome":{"type":"string","description":"Outcome label.","examples":["Yes"]},"probability_pct":{"type":["number","null"],"description":"Implied probability in percent.","examples":[62.5]}},"required":["outcome"],"description":"One outcome and what the market prices it at."},"description":"Each outcome with its implied probability.","examples":[[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]]}},"required":["id","question","implied_probabilities"],"description":"One prediction market."},"description":"Matching prediction markets, highest volume first."},"news":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Headline.","examples":["Bitcoin steadies as ETF inflows resume"]},"url":{"type":"string","description":"Article link.","examples":["https://www.reuters.com/markets/..."]},"source_name":{"type":["string","null"],"description":"Publisher.","examples":["Reuters"]},"published_at":{"type":["string","null"],"description":"Publication time (UTC).","examples":["2026-09-27T09:00:00Z"]}},"required":["title","url","source_name","published_at"],"description":"One recent headline."},"description":"Recent headlines read for this call (GDELT, cite https://www.gdeltproject.org/), newest first; empty when none.","examples":[[]]},"news_note":{"type":["string","null"],"description":"Why headlines are missing or partial; null when they were read cleanly.","examples":["Headlines unavailable for this call: gdelt:query: BigQuery did not finish within 60s"]},"analysis":{"type":"string","description":"What the two sources together do and do not support.","examples":["Spot is up 1.8% on the day while the top market prices a year-end close above $100k at 62%..."]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]},"disclaimer":{"type":"string","description":"Not investment advice.","examples":["Market data and implied probabilities only. Not investment advice and not a forecast by HubVibe."]}},"required":["product_id","spot","prediction_markets","news","news_note","analysis","model","disclaimer"]},"output_example":{"product_id":"BTC-USD","spot":{"product_id":"BTC-USD","price":"97231.45","price_change_24h_pct":"1.82","volume_24h":"14231.9","base_currency":"BTC","quote_currency":"USD","status":"online","source":"coinbase-advanced-trade-public"},"prediction_markets":[{"id":"512345","question":"Will BTC close above $100k on Dec 31?","slug":"will-btc-close-above-100k","active":true,"closed":false,"end_date":"2026-12-31T00:00:00Z","volume":1834520.5,"liquidity":240310.2,"implied_probabilities":[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]}],"news":[],"news_note":"Headlines unavailable for this call: gdelt:query: BigQuery did not finish within 60s","analysis":"Spot is up 1.8% on the day while the top market prices a year-end close above $100k at 62%...","model":"gemini-2.5-flash","disclaimer":"Market data and implied probabilities only. Not investment advice and not a forecast by HubVibe."},"returns":"spot{}, prediction_markets[], news[], news_note, analysis, disclaimer.","max_seconds":200,"composes":["market.quote","market.prediction","news.search","llm.analyze"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $5.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$5.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$5.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Crypto market sentiment in one call: live Coinbase spot price, live Polymarket probabilities and recent news headlines (GDELT) on the same subject, analysed together in a written summary that says what the numbers do and do not support. Use it for a quick read on Bitcoin, Ethereum or any coin. Input: optional product_id (BTC-USD...), query, question, limit. Market data only, not investment advice.","capabilities":["market.intel","MarketIntel","MarketQuote","MarketPrediction","NewsSearch","LlmAnalyze"],"representativeQueries":["what do spot and prediction markets together say about bitcoin","market sentiment read combining Coinbase price and Polymarket odds","reconcile a crypto price with prediction market probabilities"],"tags":["crypto","sentiment","market-analysis","bitcoin","polymarket","news","research","advanced","pay-per-call"],"metadata":{"price_usd":5.0,"tier":"advanced","path":"/work/market/intel","method":"POST","compound":true,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:search.web","displayName":"Web search (search.web)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/search/web","method":"POST","url":"https://hubvibe-io.com/work/search/web","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string"},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["query"],"additionalProperties":false},"input_example":{"query":"x402 payment protocol"},"output_schema":{"type":"object","properties":{"query":{"type":"string","description":"The query searched.","examples":["HTTP 402 Payment Required"]},"answer":{"type":"string","description":"Grounded answer with the sources it drew on.","examples":["HTTP 402 Payment Required is a status code reserved for payments..."]},"sources":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","description":"Source URL.","examples":["https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/402"]},"title":{"type":["string","null"],"description":"Source title.","examples":["402 Payment Required - HTTP | MDN"]}},"required":["url"]},"description":"Web sources the answer is grounded in."},"search_queries_used":{"type":"array","items":{"type":"string","description":"A query the grounding step issued.","examples":["HTTP 402 status code"]},"description":"Search queries the grounding step actually ran.","examples":[["HTTP 402 status code"]]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["query","answer","sources","search_queries_used","model"]},"output_example":{"query":"HTTP 402 Payment Required","answer":"HTTP 402 Payment Required is a status code reserved for payments...","sources":[{"url":"https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/402","title":"402 Payment Required - HTTP | MDN"}],"search_queries_used":["HTTP 402 status code"],"model":"gemini-2.5-flash"},"returns":"query, answer, sources[{url,title}], search_queries_used[], model.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Web search with an answer: real-time search of Brave's independent web index, answered from the current results only, with every source URL and title returned, never the model's memory. Use it when an agent needs up-to-date information, latest news, prices or facts from the web. Input: query; optional language. Raw result list (SERP): search.results. Sources read in full with citations: research.web.","capabilities":["search.web","SearchWeb"],"representativeQueries":["search the web and answer with sources","live web search with citations for a question","find recent web results about a topic"],"tags":["web-search","search","internet","real-time","brave","answer","sources","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/search/web","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:llm.generate","displayName":"Raw text completion (llm.generate)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/llm/generate","method":"POST","url":"https://hubvibe-io.com/work/llm/generate","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"prompt":{"type":"string","description":"The prompt."},"system":{"type":"string","description":"Optional system message."},"max_tokens":{"type":"integer","description":"1-4096, default 1024."},"temperature":{"type":"number","description":"0-2, default 0.7."},"provider":{"type":"string","description":"Optional: gemini or anthropic."},"model":{"type":"string","description":"Optional: a specific model from that provider."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["prompt"],"additionalProperties":false},"input_example":{"prompt":"A beehive built from circuit boards, isometric illustration"},"output_schema":{"type":"object","properties":{"text":{"type":"string","description":"The completion.","examples":["Here is a short poem about bees..."]},"model":{"type":"string","description":"The model used.","examples":["gemini-2.5-flash"]},"provider":{"type":"string","description":"The provider that served it.","examples":["gemini"]},"finish_reason":{"type":["string","null"],"description":"Why generation stopped.","examples":["STOP"]},"usage":{"type":"object","properties":{"input_tokens":{"type":"integer","description":"Input tokens.","examples":[14]},"output_tokens":{"type":"integer","description":"Output tokens.","examples":[96]}},"required":["input_tokens","output_tokens"],"description":"Token usage."}},"required":["text","model","provider","usage"]},"output_example":{"text":"Here is a short poem about bees...","model":"gemini-2.5-flash","provider":"gemini","finish_reason":"STOP","usage":{"input_tokens":14,"output_tokens":96}},"returns":"text, model, provider, finish_reason, usage{input_tokens,output_tokens}.","max_seconds":120,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"LLM text generation / chat completion: a raw completion from your prompt with optional system message, max_tokens and temperature; Gemini by default, other configured models by provider and model. Use it for drafting, rewriting, translation, classification or any prompt, paid per call with no API key or account. Input: prompt. Answer grounded in your own text: llm.analyze.","capabilities":["llm.generate","LlmGenerate"],"representativeQueries":["generate text from a prompt with a chosen model","raw LLM completion with a system prompt","run a prompt on Gemini or Claude and return the text"],"tags":["llm","text-generation","chat-completion","gemini","ai","inference","prompt","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/llm/generate","method":"POST","compound":false,"max_seconds":120},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:code.execute","displayName":"Execute Python (code.execute)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/code/execute","method":"POST","url":"https://hubvibe-io.com/work/code/execute","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"code":{"type":"string"},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["code"],"additionalProperties":false},"input_example":{"code":"print(sum(range(10)))"},"output_schema":{"type":"object","properties":{"code":{"type":"string","description":"The code that ran.","examples":["print(sum(range(10)))"]},"output":{"type":"string","description":"Captured stdout/stderr.","examples":["45\n"]},"outcome":{"type":"string","description":"Sandbox outcome code.","examples":["OUTCOME_OK"]},"summary":{"type":["string","null"],"description":"The model's one-line summary of the run.","examples":["Printed the sum 45."]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["code","output","outcome","model"]},"output_example":{"code":"print(sum(range(10)))","output":"45\n","outcome":"OUTCOME_OK","summary":"Printed the sum 45.","model":"gemini-2.5-flash"},"returns":"code, output, outcome, summary, model.","max_seconds":90,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Run Python code in a sandbox: execute Python in Google's hosted sandbox (not on this service's machines) and get the code, its printed output and the outcome back. Use it for calculations, data transforms and checks an agent should not do in its head. Input: code. Questions over BigQuery data: data.query.","capabilities":["code.execute","CodeExecute"],"representativeQueries":["run this Python code and return the output","execute a script in a sandbox","compute a result by running code"],"tags":["python","code-execution","sandbox","compute","interpreter","calculation","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/code/execute","method":"POST","compound":false,"max_seconds":90},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:image.generate","displayName":"Generate an image (image.generate)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/image/generate","method":"POST","url":"https://hubvibe-io.com/work/image/generate","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"prompt":{"type":"string"},"aspect_ratio":{"type":"string","description":"1:1, 3:4, 4:3, 16:9 or 9:16. Default 1:1."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["prompt"],"additionalProperties":false},"input_example":{"prompt":"A beehive built from circuit boards, isometric illustration"},"output_schema":{"type":"object","properties":{"prompt":{"type":"string","description":"The prompt.","examples":["A beehive built from circuit boards, isometric illustration"]},"aspect_ratio":{"type":"string","description":"Aspect ratio generated.","examples":["1:1"]},"image_base64":{"type":"string","description":"The image, base64.","examples":["iVBORw0KGgo..."]},"mime_type":{"type":"string","description":"Image MIME type.","examples":["image/png"]},"model":{"type":"string","description":"Image model.","examples":["imagen-4.0-generate-001"]}},"required":["prompt","aspect_ratio","image_base64","mime_type","model"]},"output_example":{"prompt":"A beehive built from circuit boards, isometric illustration","aspect_ratio":"1:1","image_base64":"iVBORw0KGgo...","mime_type":"image/png","model":"imagen-4.0-generate-001"},"returns":"prompt, aspect_ratio, image_base64, mime_type, model.","max_seconds":100,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"AI image generation / text to image: one image from a text prompt with Google Imagen 4, returned as base64 image bytes with its MIME type. Use it for illustrations, thumbnails, product mockups and social images. Input: prompt; optional aspect_ratio.","capabilities":["image.generate","ImageGenerate"],"representativeQueries":["generate an image from a text prompt","create an illustration with Imagen","text to image at a given aspect ratio"],"tags":["image-generation","text-to-image","imagen","ai-art","illustration","picture","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/image/generate","method":"POST","compound":false,"max_seconds":100},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:speech.synthesize","displayName":"Text to speech (speech.synthesize)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/speech/synthesize","method":"POST","url":"https://hubvibe-io.com/work/speech/synthesize","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"text":{"type":"string"},"voice":{"type":"string","description":"e.g. en-US-Standard-C. Optional."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["text"],"additionalProperties":false},"input_example":{"text":"HubVibe sells machine-payable site audits at $0.05 per call."},"output_schema":{"type":"object","properties":{"text_chars":{"type":"integer","description":"Characters synthesised.","examples":[58]},"voice":{"type":"string","description":"Voice used.","examples":["en-US-Neural2-C"]},"audio_base64":{"type":"string","description":"The audio, base64.","examples":["UklGRi4AAABXQVZF..."]},"mime_type":{"type":"string","description":"Audio MIME type.","examples":["audio/mpeg"]}},"required":["text_chars","voice","audio_base64","mime_type"]},"output_example":{"text_chars":58,"voice":"en-US-Neural2-C","audio_base64":"UklGRi4AAABXQVZF...","mime_type":"audio/mpeg"},"returns":"text_chars, voice, audio_base64, mime_type.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Text to speech (TTS): convert text to natural spoken MP3 audio with Google Cloud Text-to-Speech, returned as base64. Use it for voice replies, narration, audio versions of text and accessibility. Input: text; optional voice name.","capabilities":["speech.synthesize","SpeechSynthesize"],"representativeQueries":["convert text to speech audio","generate an MP3 voice-over from text","text to speech with a named voice"],"tags":["text-to-speech","tts","voice","audio","speech","mp3","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/speech/synthesize","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:speech.transcribe","displayName":"Speech to text (speech.transcribe)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/speech/transcribe","method":"POST","url":"https://hubvibe-io.com/work/speech/transcribe","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"audio_base64":{"type":"string","description":"Base64-encoded audio, any common format."},"language_code":{"type":"string","description":"BCP-47, default en-US."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["audio_base64"],"additionalProperties":false},"input_example":{"audio_base64":"aGVsbG8="},"output_schema":{"type":"object","properties":{"transcript":{"type":"string","description":"The transcript.","examples":["hello world"]},"language_code":{"type":"string","description":"Language recognised.","examples":["en-US"]},"confidence":{"type":["number","null"],"description":"Mean recognition confidence, 0-1; null when the engine gives none.","examples":[0.94]},"model":{"type":"string","description":"Recognition model.","examples":["latest_short"]}},"required":["transcript","language_code","model"]},"output_example":{"transcript":"hello world","language_code":"en-US","confidence":0.94,"model":"latest_short"},"returns":"transcript, language_code, confidence, model.","max_seconds":75,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Speech to text / audio transcription: transcribe up to 60 seconds or 10 MB of audio with Google Cloud Speech-to-Text and get the transcript with its confidence and detected language. Use it for voice notes, call snippets and clips. Input: audio_base64; optional language_code. Longer audio is refused before payment.","capabilities":["speech.transcribe","SpeechTranscribe"],"representativeQueries":["transcribe a short audio clip to text","speech to text for a base64 WAV file","what is said in this audio"],"tags":["speech-to-text","transcription","stt","audio","voice","asr","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/speech/transcribe","method":"POST","compound":false,"max_seconds":75},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:data.forecast","displayName":"Forecast a time series (data.forecast)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/data/forecast","method":"POST","url":"https://hubvibe-io.com/work/data/forecast","price_usd":10.0,"tier":"premium","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"table":{"type":"string","description":"project.dataset.table"},"timestamp_col":{"type":"string"},"data_col":{"type":"string"},"horizon":{"type":"integer","description":"Periods to forecast, default 10."},"id_cols":{"type":"array","items":{"type":"string"},"description":"Optional: forecast multiple series at once."},"max_scan_gib":{"type":"number"},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["table","timestamp_col","data_col"],"additionalProperties":false},"input_example":{"table":"bigquery-public-data.covid19_nyt.us_states","timestamp_col":"date","data_col":"confirmed_cases","id_cols":["state_name"]},"output_schema":{"type":"object","properties":{"table":{"type":"string","description":"Source table.","examples":["bigquery-public-data.covid19_nyt.us_states"]},"timestamp_col":{"type":"string","description":"Timestamp column.","examples":["date"]},"data_col":{"type":"string","description":"Value column forecast.","examples":["confirmed_cases"]},"horizon":{"type":"integer","description":"Forecast points requested.","examples":[10]},"columns":{"type":"array","items":{"type":"string","description":"AI.FORECAST output column.","examples":["forecast_timestamp"]},"description":"AI.FORECAST output columns.","examples":[["state_name","forecast_timestamp","forecast_value","confidence_level","prediction_interval_lower_bound","prediction_interval_upper_bound","ai_forecast_status"]]},"rows":{"type":"array","items":{"type":"object","properties":{},"required":[],"description":"One forecast point.","additionalProperties":true,"examples":[{"state_name":"Texas","forecast_timestamp":"2023-03-24 00:00:00","forecast_value":"8631745.2","confidence_level":"0.95"}]},"description":"Forecast rows.","examples":[[{"state_name":"Texas","forecast_timestamp":"2023-03-24 00:00:00","forecast_value":"8631745.2","confidence_level":"0.95"}]]},"row_count":{"type":"integer","description":"Rows returned.","examples":[10]},"gib_processed":{"type":"number","description":"Gibibytes BigQuery scanned; the metered cost basis.","examples":[0.012]}},"required":["table","timestamp_col","data_col","horizon","columns","rows","row_count","gib_processed"]},"output_example":{"table":"bigquery-public-data.covid19_nyt.us_states","timestamp_col":"date","data_col":"confirmed_cases","horizon":10,"columns":["state_name","forecast_timestamp","forecast_value","confidence_level","prediction_interval_lower_bound","prediction_interval_upper_bound","ai_forecast_status"],"rows":[{"state_name":"Texas","forecast_timestamp":"2023-03-24 00:00:00","forecast_value":"8631745.2","confidence_level":"0.95"}],"row_count":10,"gib_processed":0.012},"returns":"table, timestamp_col, data_col, horizon, columns[], rows[], row_count, gib_processed.","max_seconds":200,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $10.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$10.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$10.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Time-series forecasting: forecast any BigQuery table with Google's pretrained TimesFM model (AI.FORECAST), nothing to train. Point it at the table, timestamp column and value column and get forecast rows with bounds for the horizon you set, per series with id_cols. Use it for sales, traffic, demand or metric forecasts. Input: table, timestamp_col, data_col; optional horizon, id_cols.","capabilities":["data.forecast","DataForecast"],"representativeQueries":["forecast a time series stored in BigQuery","predict the next values of a daily metric with TimesFM","time series forecast from a table with a date and value column"],"tags":["forecasting","time-series","prediction","timesfm","bigquery","demand-forecast","premium","pay-per-call"],"metadata":{"price_usd":10.0,"tier":"premium","path":"/work/data/forecast","method":"POST","compound":false,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:data.anomalies","displayName":"Detect anomalies in a time series (data.anomalies)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/data/anomalies","method":"POST","url":"https://hubvibe-io.com/work/data/anomalies","price_usd":10.0,"tier":"premium","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"history_table":{"type":"string","description":"project.dataset.table"},"target_table":{"type":"string","description":"project.dataset.table"},"timestamp_col":{"type":"string"},"data_col":{"type":"string"},"anomaly_prob_threshold":{"type":"number","description":"0.5-0.999, default 0.95."},"id_cols":{"type":"array","items":{"type":"string"},"description":"Optional: one series per value of these columns."},"target_last":{"type":"integer","minimum":1,"maximum":366,"description":"Same table as history and target: score its latest N timestamps. Default 30."},"max_scan_gib":{"type":"number"},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["history_table","target_table","timestamp_col","data_col"],"additionalProperties":false},"input_example":{"history_table":"bigquery-public-data.covid19_nyt.us_states","target_table":"bigquery-public-data.covid19_nyt.us_states","timestamp_col":"date","data_col":"confirmed_cases","id_cols":["state_name"]},"output_schema":{"type":"object","properties":{"history_table":{"type":"string","description":"Table the forecast is fitted on.","examples":["bigquery-public-data.covid19_nyt.us_states"]},"target_table":{"type":"string","description":"Table checked for anomalies.","examples":["bigquery-public-data.covid19_nyt.us_states"]},"timestamp_col":{"type":"string","description":"Timestamp column.","examples":["date"]},"data_col":{"type":"string","description":"Value column.","examples":["confirmed_cases"]},"anomaly_prob_threshold":{"type":"number","description":"Probability threshold used.","examples":[0.95]},"mode":{"type":"string","enum":["split_by_time","two_tables"],"description":"split_by_time: one table, its latest periods scored against the rest; two_tables: target scored against history.","examples":["split_by_time"]},"target_periods":{"type":["integer","null"],"description":"Latest timestamps scored in split_by_time mode; null for two tables.","examples":[30]},"columns":{"type":"array","items":{"type":"string","description":"AI.DETECT_ANOMALIES output column.","examples":["is_anomaly"]},"description":"AI.DETECT_ANOMALIES output columns.","examples":[["state_name","date","confirmed_cases","is_anomaly","lower_bound","upper_bound","anomaly_probability"]]},"rows":{"type":"array","items":{"type":"object","properties":{},"required":[],"description":"One checked point.","additionalProperties":true,"examples":[{"state_name":"Texas","date":"2023-03-20","confirmed_cases":"8631000","is_anomaly":"false","anomaly_probability":"0.12"}]},"description":"Checked rows with their anomaly flag.","examples":[[{"state_name":"Texas","date":"2023-03-20","confirmed_cases":"8631000","is_anomaly":"false","anomaly_probability":"0.12"}]]},"row_count":{"type":"integer","description":"Rows returned.","examples":[10]},"anomaly_count":{"type":"integer","description":"Rows flagged as anomalies at the threshold.","examples":[2]},"gib_processed":{"type":"number","description":"Gibibytes BigQuery scanned; the metered cost basis.","examples":[0.012]}},"required":["history_table","target_table","timestamp_col","data_col","anomaly_prob_threshold","mode","target_periods","columns","rows","row_count","anomaly_count","gib_processed"]},"output_example":{"history_table":"bigquery-public-data.covid19_nyt.us_states","target_table":"bigquery-public-data.covid19_nyt.us_states","timestamp_col":"date","data_col":"confirmed_cases","anomaly_prob_threshold":0.95,"mode":"split_by_time","target_periods":30,"columns":["state_name","date","confirmed_cases","is_anomaly","lower_bound","upper_bound","anomaly_probability"],"rows":[{"state_name":"Texas","date":"2023-03-20","confirmed_cases":"8631000","is_anomaly":"false","anomaly_probability":"0.12"}],"row_count":10,"anomaly_count":2,"gib_processed":0.012},"returns":"history_table, target_table, timestamp_col, data_col, anomaly_prob_threshold, mode, target_periods, columns[], rows[], row_count, anomaly_count, gib_processed.","max_seconds":200,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $10.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$10.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$10.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Anomaly detection on a time series: score recent periods against history with BigQuery AI.DETECT_ANOMALIES (TimesFM). Give one table and its latest periods are scored against its own history, or a history and a target table. Returns every checked row with bounds, anomaly flag and probability, plus the anomaly count. Input: history_table, target_table, timestamp_col, data_col; optional target_last, threshold, id_cols.","capabilities":["data.anomalies","DataAnomalies"],"representativeQueries":["detect anomalies in a time series in BigQuery","flag unusual values in a daily metric against its history","anomaly detection on a table with a timestamp column"],"tags":["anomaly-detection","outliers","time-series","monitoring","timesfm","bigquery","premium","pay-per-call"],"metadata":{"price_usd":10.0,"tier":"premium","path":"/work/data/anomalies","method":"POST","compound":false,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:stats.probability","displayName":"Predictive probability engine: regression, normal model, p-values (stats.probability)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/stats/probability","method":"POST","url":"https://hubvibe-io.com/work/stats/probability","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"points":{"type":"array","items":{"oneOf":[{"type":"array","items":{"type":"number"},"minItems":2,"maxItems":2,"description":"[x, y]"},{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"additionalProperties":false}]},"minItems":2,"maxItems":100000,"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`."},"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."},"x_column":{"type":"string","description":"Numeric column for x, with `table`."},"y_column":{"type":"string","description":"Numeric column for y, with `table`."},"max_rows":{"type":"integer","minimum":3,"maximum":100000,"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."},"metrics":{"type":"array","items":{"type":"string","enum":["linear_regression","normal_distribution","p_values","prediction"]},"minItems":1,"uniqueItems":true,"description":"Which results to compute. Default: linear_regression, normal_distribution and p_values, plus prediction when predict_x is given."},"predict_x":{"type":"array","items":{"type":"number"},"minItems":1,"maxItems":100,"description":"x values to predict y at, with mean and prediction intervals."},"alpha":{"type":"number","exclusiveMinimum":0,"exclusiveMaximum":1,"description":"Significance level for p-value validation and intervals. Default 0.05."},"distribution_of":{"type":"string","enum":["y","x","residuals"],"description":"Which values the normal model fits. Default y."},"probability_queries":{"type":"array","maxItems":50,"items":{"type":"object","minProperties":1,"maxProperties":1,"properties":{"below":{"type":"number"},"above":{"type":"number"},"between":{"type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}},"additionalProperties":false},"description":"Probabilities to read off the fitted normal model: {\"below\": v}, {\"above\": v} or {\"between\": [a, b]}."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"oneOf":[{"required":["points"]},{"required":["table","x_column","y_column"]}]},"input_example":{"points":[[1,2.1],[2,3.9],[3,6.2],[4,7.8],[5,10.1]],"predict_x":[6],"probability_queries":[{"below":8}]},"output_schema":{"type":"object","properties":{"source":{"type":"object","properties":{"type":{"type":"string","enum":["points","bigquery"],"description":"Where the points came from.","examples":["points"]},"table":{"type":["string","null"],"description":"BigQuery table read, when source is bigquery.","examples":[null]},"x_column":{"type":["string","null"],"description":"Column used for x, when source is bigquery.","examples":[null]},"y_column":{"type":["string","null"],"description":"Column used for y, when source is bigquery.","examples":[null]},"sql":{"type":["string","null"],"description":"The read-only SQL that ran, when source is bigquery.","examples":[null]},"rows_available":{"type":["integer","null"],"description":"Rows with finite x and y in the table; null for inline points.","examples":[null]},"rows_used":{"type":"integer","description":"Points the statistics were computed from.","examples":[5]},"sampled":{"type":"boolean","description":"True when the table had more usable rows than were read.","examples":[false]},"gib_processed":{"type":["number","null"],"description":"Gibibytes BigQuery scanned; null for inline points.","examples":[null]}},"required":["type","table","x_column","y_column","sql","rows_available","rows_used","sampled","gib_processed"],"description":"Where the data came from and how much of it was used."},"n":{"type":"integer","description":"Number of points.","examples":[5]},"alpha":{"type":"number","description":"Significance level used.","examples":[0.05]},"confidence_level":{"type":"number","description":"1 - alpha: the level of every interval.","examples":[0.95]},"metrics":{"type":"array","items":{"type":"string","enum":["linear_regression","normal_distribution","p_values","prediction"],"description":"Metric name.","examples":["linear_regression"]},"description":"Metrics computed, in canonical order.","examples":[["linear_regression","normal_distribution","p_values","prediction"]]},"linear_regression":{"type":["object","null"],"properties":{"slope":{"type":"number","description":"OLS slope.","examples":[1.98]},"intercept":{"type":"number","description":"OLS intercept.","examples":[0.08]},"r":{"type":["number","null"],"description":"Pearson correlation; null when y is constant.","examples":[0.998]},"r_squared":{"type":["number","null"],"description":"Coefficient of determination; null when y is constant.","examples":[0.996]},"adjusted_r_squared":{"type":["number","null"],"description":"R^2 adjusted for degrees of freedom.","examples":[0.995]},"slope_std_error":{"type":"number","description":"Standard error of the slope.","examples":[0.071]},"intercept_std_error":{"type":"number","description":"Standard error of the intercept.","examples":[0.236]},"residual_std_error":{"type":"number","description":"Standard error of the residuals, sqrt(SSE / df).","examples":[0.225]},"degrees_of_freedom":{"type":"integer","description":"n - 2.","examples":[3]},"slope_t":{"type":["number","null"],"description":"t statistic of the slope; null when undefined.","examples":[27.8]},"intercept_t":{"type":["number","null"],"description":"t statistic of the intercept; null when undefined.","examples":[0.34]},"t_critical":{"type":"number","description":"Two-sided t critical value at alpha with df degrees of freedom.","examples":[3.18]},"slope_ci":{"type":"array","items":{"type":"number","description":"Bound.","examples":[0.0]},"description":"Lower and upper bound at the confidence level.","examples":[[1.43,2.53]]},"intercept_ci":{"type":"array","items":{"type":"number","description":"Bound.","examples":[0.0]},"description":"Lower and upper bound at the confidence level.","examples":[[1.43,2.53]]},"f_statistic":{"type":["number","null"],"description":"F statistic of the regression (t^2); null when undefined.","examples":[773.0]},"sse":{"type":"number","description":"Sum of squared residuals.","examples":[0.152]},"sst":{"type":"number","description":"Total sum of squares of y.","examples":[39.4]},"x_mean":{"type":"number","description":"Mean of x.","examples":[3.0]},"y_mean":{"type":"number","description":"Mean of y.","examples":[6.02]}},"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"],"description":"Ordinary least squares fit of y on x; null when not requested."},"normal_distribution":{"type":["object","null"],"properties":{"of":{"type":"string","enum":["y","x","residuals"],"description":"Which values the model fits.","examples":["y"]},"mean":{"type":"number","description":"Sample mean.","examples":[6.02]},"std_dev":{"type":"number","description":"Sample standard deviation (n - 1).","examples":[3.14]},"variance":{"type":"number","description":"Sample variance (n - 1).","examples":[9.86]},"min":{"type":"number","description":"Smallest value.","examples":[2.1]},"max":{"type":"number","description":"Largest value.","examples":[10.1]},"median":{"type":"number","description":"Median of the values.","examples":[6.2]},"skewness":{"type":["number","null"],"description":"Sample skewness; null when the values are constant.","examples":[0.05]},"excess_kurtosis":{"type":["number","null"],"description":"Excess kurtosis; null when the values are constant.","examples":[-1.3]},"quantiles":{"type":["array","null"],"description":"Quantiles of the fitted normal; null when degenerate.","items":{"type":"object","properties":{"p":{"type":"number","description":"Probability.","examples":[0.95]},"value":{"type":"number","description":"Value at that quantile.","examples":[11.19]}},"required":["p","value"]}},"probabilities":{"type":"array","items":{"type":"object","properties":{"query":{"description":"The query as sent.","type":["object"],"examples":[{"below":8.0}]},"probability":{"type":"number","description":"Probability under the fitted normal.","examples":[0.736]}},"required":["query","probability"]},"description":"Answers to probability_queries, in order.","examples":[[{"query":{"below":8.0},"probability":0.736}]]},"normality":{"type":["object","null"],"description":"Jarque-Bera normality test; null when the values are constant.","properties":{"test":{"type":"string","const":"jarque_bera","description":"The test."},"statistic":{"type":"number","description":"Jarque-Bera statistic.","examples":[0.42]},"p_value":{"type":"number","description":"Chi-square(2) p-value, exp(-JB/2).","examples":[0.81]},"null_hypothesis":{"type":"string","description":"What the test rejects.","examples":["the values are normally distributed"]},"reject_at_alpha":{"type":"boolean","description":"p_value < alpha: not normal at this alpha.","examples":[false]}},"required":["test","statistic","p_value","null_hypothesis","reject_at_alpha"]}},"required":["of","mean","std_dev","variance","min","max","median","skewness","excess_kurtosis","quantiles","probabilities","normality"],"description":"Normal model of the chosen values; null when not requested."},"p_values":{"type":["object","null"],"properties":{"slope":{"type":"object","properties":{"null_hypothesis":{"type":"string","description":"What the test rejects.","examples":["slope = 0 (no linear relationship)"]},"t":{"type":["number","null"],"description":"Student t statistic; null when undefined (a perfect fit).","examples":[11.4]},"p_value":{"type":["number","null"],"description":"Two-sided p-value; null when undefined.","examples":[0.0015]},"significant_at_alpha":{"type":["boolean","null"],"description":"p_value < alpha.","examples":[true]}},"required":["null_hypothesis","t","p_value","significant_at_alpha"],"description":"One two-sided Student t test."},"intercept":{"type":"object","properties":{"null_hypothesis":{"type":"string","description":"What the test rejects.","examples":["slope = 0 (no linear relationship)"]},"t":{"type":["number","null"],"description":"Student t statistic; null when undefined (a perfect fit).","examples":[11.4]},"p_value":{"type":["number","null"],"description":"Two-sided p-value; null when undefined.","examples":[0.0015]},"significant_at_alpha":{"type":["boolean","null"],"description":"p_value < alpha.","examples":[true]}},"required":["null_hypothesis","t","p_value","significant_at_alpha"],"description":"One two-sided Student t test."},"normality_of_residuals":{"type":["object","null"],"description":"Jarque-Bera normality test; null when the values are constant.","properties":{"test":{"type":"string","const":"jarque_bera","description":"The test."},"statistic":{"type":"number","description":"Jarque-Bera statistic.","examples":[0.42]},"p_value":{"type":"number","description":"Chi-square(2) p-value, exp(-JB/2).","examples":[0.81]},"null_hypothesis":{"type":"string","description":"What the test rejects.","examples":["the values are normally distributed"]},"reject_at_alpha":{"type":"boolean","description":"p_value < alpha: not normal at this alpha.","examples":[false]}},"required":["test","statistic","p_value","null_hypothesis","reject_at_alpha"]}},"required":["slope","intercept","normality_of_residuals"],"description":"Hypothesis tests validated at alpha; null when not requested."},"prediction":{"type":["array","null"],"description":"One entry per predict_x; null when not requested.","items":{"type":"object","properties":{"x":{"type":"number","description":"The x asked for.","examples":[6.0]},"y_hat":{"type":"number","description":"Predicted y.","examples":[11.96]},"mean_ci":{"type":"array","items":{"type":"number","description":"Bound.","examples":[0.0]},"description":"Lower and upper bound at the confidence level.","examples":[[1.43,2.53]]},"prediction_interval":{"type":"array","items":{"type":"number","description":"Bound.","examples":[0.0]},"description":"Lower and upper bound at the confidence level.","examples":[[1.43,2.53]]}},"required":["x","y_hat","mean_ci","prediction_interval"]}},"notes":{"type":"array","items":{"type":"string","description":"A caveat about a degenerate input.","examples":["The points lie exactly on a line."]},"description":"Caveats about the input; empty when there are none.","examples":[[]]},"method":{"type":"string","description":"How the numbers were produced.","examples":["Ordinary least squares (closed form). Student t p-values from the regularised incomplete beta function..."]}},"required":["source","n","alpha","confidence_level","metrics","linear_regression","normal_distribution","p_values","prediction","notes","method"]},"output_example":{"source":{"type":"points","table":null,"x_column":null,"y_column":null,"sql":null,"rows_available":null,"rows_used":5,"sampled":false,"gib_processed":null},"n":5,"alpha":0.05,"confidence_level":0.95,"metrics":["linear_regression","normal_distribution","p_values","prediction"],"linear_regression":{"slope":1.98,"intercept":0.08,"r":0.998,"r_squared":0.996,"adjusted_r_squared":0.995,"slope_std_error":0.071,"intercept_std_error":0.236,"residual_std_error":0.225,"degrees_of_freedom":3,"slope_t":27.8,"intercept_t":0.34,"t_critical":3.18,"slope_ci":[1.43,2.53],"intercept_ci":[1.43,2.53],"f_statistic":773.0,"sse":0.152,"sst":39.4,"x_mean":3.0,"y_mean":6.02},"normal_distribution":{"of":"y","mean":6.02,"std_dev":3.14,"variance":9.86,"min":2.1,"max":10.1,"median":6.2,"skewness":0.05,"excess_kurtosis":-1.3,"quantiles":[{"p":0.95,"value":11.19}],"probabilities":[{"query":{"below":8.0},"probability":0.736}],"normality":{"test":"jarque_bera","statistic":0.42,"p_value":0.81,"null_hypothesis":"the values are normally distributed","reject_at_alpha":false}},"p_values":{"slope":{"null_hypothesis":"slope = 0 (no linear relationship)","t":11.4,"p_value":0.0015,"significant_at_alpha":true},"intercept":{"null_hypothesis":"slope = 0 (no linear relationship)","t":11.4,"p_value":0.0015,"significant_at_alpha":true},"normality_of_residuals":{"test":"jarque_bera","statistic":0.42,"p_value":0.81,"null_hypothesis":"the values are normally distributed","reject_at_alpha":false}},"prediction":[{"x":6.0,"y_hat":11.96,"mean_ci":[1.43,2.53],"prediction_interval":[1.43,2.53]}],"notes":[],"method":"Ordinary least squares (closed form). Student t p-values from the regularised incomplete beta function..."},"returns":"source{}, n, alpha, confidence_level, metrics[], linear_regression{}, normal_distribution{}, p_values{}, prediction[], notes[], method.","max_seconds":200,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Predictive probability and regression engine: least-squares linear regression with standard errors, confidence and prediction intervals, a fitted normal distribution with quantiles and probability queries (P(y > t)), exact Student t and Jarque-Bera p-values. Points inline or from a BigQuery table. Deterministic arithmetic, no LLM: the same input always returns the same numbers. Input: points or table with x_column, y_column; optional metrics, predict_x, probability_queries.","capabilities":["stats.probability","StatsProbability"],"representativeQueries":["linear regression with p-values on a list of x y points","fit a normal distribution and get the probability a value falls below a threshold","is the correlation between x and y statistically significant at alpha 0.05","predict y at a new x with a prediction interval","regression statistics on two numeric columns of a BigQuery table"],"tags":["statistics","regression","probability","prediction","confidence-interval","math","deterministic","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/stats/probability","method":"POST","compound":false,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:verify.claims","displayName":"Verify claims against sources (verify.claims)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/verify/claims","method":"POST","url":"https://hubvibe-io.com/work/verify/claims","price_usd":5.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"claims":{"type":"array","items":{"type":"string"}},"sources":{"type":"array","items":{"type":"string"}},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["claims","sources"],"additionalProperties":false},"input_example":{"claims":["HubVibe sells machine-payable site audits."],"sources":["https://example.com"]},"output_schema":{"type":"object","properties":{"claims":{"type":"array","items":{"type":"string","description":"A claim, as given.","examples":["HubVibe sells machine-payable site audits."]},"description":"The claims checked, in order.","examples":[["HubVibe sells machine-payable site audits."]]},"verdicts":{"type":"array","items":{"type":"object","properties":{"claim":{"type":"string","description":"The claim, as given.","examples":["HubVibe sells machine-payable site audits."]},"verdict":{"type":"string","enum":["SUPPORTED","CONTRADICTED","UNSUPPORTED"],"description":"Whether the sources support, contradict, or do not address the claim.","examples":["SUPPORTED"]},"quote":{"type":["string","null"],"description":"The sentence the verdict rests on; null when UNSUPPORTED.","examples":["Every check is priced per call over HTTP 402."]},"source_n":{"type":["integer","null"],"description":"Which source (by n) the quote is from; null when UNSUPPORTED.","examples":[1]}},"required":["claim","verdict"],"description":"One claim and its verdict."},"description":"One verdict per claim, same order."},"sources_read":{"type":"array","items":{"type":"object","properties":{"n":{"type":"integer","description":"Citation number used as [n] in the text.","examples":[1]},"url":{"type":"string","description":"Source URL.","examples":["https://example.com/about"]},"title":{"type":["string","null"],"description":"Page title, when the page had one.","examples":["About Example"]}},"required":["n","url"],"description":"One source the answer cites."},"description":"Sources read, numbered as cited in source_n."},"sources_unread":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","description":"Source that could not be read.","examples":["https://example.com/paywalled"]},"reason":{"type":"string","description":"Why it could not be read.","examples":["HTTP 403 from the target"]}},"required":["url","reason"],"description":"A source that was found but not read; disclosed, never silently dropped."},"description":"Sources that could not be read, with the reason.","examples":[[]]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["claims","verdicts","sources_read","sources_unread","model"]},"output_example":{"claims":["HubVibe sells machine-payable site audits."],"verdicts":[{"claim":"HubVibe sells machine-payable site audits.","verdict":"SUPPORTED","quote":"Every check is priced per call over HTTP 402.","source_n":1}],"sources_read":[{"n":1,"url":"https://example.com/about","title":"About Example"}],"sources_unread":[],"model":"gemini-2.5-flash"},"returns":"claims[], verdicts[{claim,verdict,quote,source_n}], sources_read[], sources_unread[], model.","max_seconds":200,"composes":["extract.page"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $5.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$5.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$5.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Fact check claims against sources: up to 10 claims checked against up to 4 source URLs you name; each comes back SUPPORTED, CONTRADICTED or UNSUPPORTED with the exact quote the verdict rests on. Use it to verify AI output, citations or statements before publishing. Input: claims[], sources[]. A question but no sources yet: research.web.","capabilities":["verify.claims","VerifyClaims","ExtractPage"],"representativeQueries":["fact-check these claims against these source URLs","does this source support or contradict a statement","verify claims with the quote each verdict rests on"],"tags":["fact-check","verification","claims","citations","hallucination-check","sources","advanced","pay-per-call"],"metadata":{"price_usd":5.0,"tier":"advanced","path":"/work/verify/claims","method":"POST","compound":true,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:research.web","displayName":"Research brief from live web search (research.web)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/research/web","method":"POST","url":"https://hubvibe-io.com/work/research/web","price_usd":5.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"question":{"type":"string"},"max_sources":{"type":"integer","description":"1-4, default 3."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["question"],"additionalProperties":false},"input_example":{"question":"What does it sell, and at what price?"},"output_schema":{"type":"object","properties":{"question":{"type":"string","description":"The question researched.","examples":["What is the HTTP 402 status code for?"]},"answer":{"type":"string","description":"Cited answer; every claim carries [n].","examples":["HTTP 402 Payment Required is reserved for payments; machine-payment protocols use it to quote a price [1]..."]},"sources":{"type":"array","items":{"type":"object","properties":{"n":{"type":"integer","description":"Citation number used as [n] in the text.","examples":[1]},"url":{"type":"string","description":"Source URL.","examples":["https://example.com/about"]},"title":{"type":["string","null"],"description":"Page title, when the page had one.","examples":["About Example"]}},"required":["n","url"],"description":"One source the answer cites."},"description":"Sources read, numbered as cited."},"partial":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","description":"Source that could not be read.","examples":["https://example.com/paywalled"]},"reason":{"type":"string","description":"Why it could not be read.","examples":["HTTP 403 from the target"]}},"required":["url","reason"],"description":"A source that was found but not read; disclosed, never silently dropped."},"description":"Sources found but not read, with the reason.","examples":[[]]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["question","answer","sources","partial","model"]},"output_example":{"question":"What is the HTTP 402 status code for?","answer":"HTTP 402 Payment Required is reserved for payments; machine-payment protocols use it to quote a price [1]...","sources":[{"n":1,"url":"https://example.com/about","title":"About Example"}],"partial":[],"model":"gemini-2.5-flash"},"returns":"question, answer, sources[{n,url,title}], partial[], model.","max_seconds":220,"composes":["search.web","extract.page","llm.analyze"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $5.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$5.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$5.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Deep web research with citations: 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. Use it when an agent needs a sourced answer, not a list of links. Input: question; optional max_sources. Quick answer with links: search.web.","capabilities":["research.web","ResearchWeb","SearchWeb","ExtractPage","LlmAnalyze"],"representativeQueries":["research a question on the live web with numbered citations","cited answer from several web sources","find and read sources to answer a research question"],"tags":["research","deep-research","citations","web-search","report","sources","advanced","pay-per-call"],"metadata":{"price_usd":5.0,"tier":"advanced","path":"/work/research/web","method":"POST","compound":true,"max_seconds":220},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:research.company","displayName":"Research and verify a company (research.company)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/research/company","method":"POST","url":"https://hubvibe-io.com/work/research/company","price_usd":10.0,"tier":"premium","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"company":{"type":"string"},"max_sources":{"type":"integer","description":"1-4, default 4."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["company"],"additionalProperties":false},"input_example":{"company":"Anthropic"},"output_schema":{"type":"object","properties":{"company":{"type":"string","description":"The company researched.","examples":["Anthropic"]},"report":{"type":"string","description":"Cited brief: what it does, products, notable facts; thin or conflicting evidence is called out.","examples":["Anthropic is an AI safety company that builds the Claude model family [1]..."]},"sources":{"type":"array","items":{"type":"object","properties":{"n":{"type":"integer","description":"Citation number used as [n] in the text.","examples":[1]},"url":{"type":"string","description":"Source URL.","examples":["https://example.com/about"]},"title":{"type":["string","null"],"description":"Page title, when the page had one.","examples":["About Example"]}},"required":["n","url"],"description":"One source the answer cites."},"description":"Sources read, numbered as cited."},"partial":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","description":"Source that could not be read.","examples":["https://example.com/paywalled"]},"reason":{"type":"string","description":"Why it could not be read.","examples":["HTTP 403 from the target"]}},"required":["url","reason"],"description":"A source that was found but not read; disclosed, never silently dropped."},"description":"Sources found but not read, with the reason.","examples":[[]]},"news":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Headline.","examples":["Bitcoin steadies as ETF inflows resume"]},"url":{"type":"string","description":"Article link.","examples":["https://www.reuters.com/markets/..."]},"source_name":{"type":["string","null"],"description":"Publisher.","examples":["Reuters"]},"published_at":{"type":["string","null"],"description":"Publication time (UTC).","examples":["2026-09-27T09:00:00Z"]}},"required":["title","url","source_name","published_at"],"description":"One recent headline."},"description":"Recent headlines read for this call (GDELT, cite https://www.gdeltproject.org/), newest first; empty when none.","examples":[[]]},"news_note":{"type":["string","null"],"description":"Why headlines are missing or partial; null when they were read cleanly.","examples":["Headlines unavailable for this call: gdelt:query: BigQuery did not finish within 60s"]},"model":{"type":"string","description":"The model that produced the answer.","examples":["gemini-2.5-flash"]}},"required":["company","report","sources","partial","news","news_note","model"]},"output_example":{"company":"Anthropic","report":"Anthropic is an AI safety company that builds the Claude model family [1]...","sources":[{"n":1,"url":"https://example.com/about","title":"About Example"}],"partial":[],"news":[],"news_note":"Headlines unavailable for this call: gdelt:query: BigQuery did not finish within 60s","model":"gemini-2.5-flash"},"returns":"company, report, sources[{n,url,title}], partial[], news[], news_note, model.","max_seconds":220,"composes":["search.web","extract.page","news.search","llm.analyze"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $10.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$10.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$10.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Company research report: what a company does, its products and anything notable, from the live web (official site and Wikipedia first) and recent GDELT news, every claim cited to a numbered source, thin or conflicting evidence disclosed. Use it for due diligence, sales prep and competitor research. Input: company name; optional max_sources. Structured firmographics in one cheap call: company.enrich.","capabilities":["research.company","ResearchCompany","SearchWeb","ExtractPage","NewsSearch","LlmAnalyze"],"representativeQueries":["research a company from live web sources with citations","what does this company do, what does it sell, anything notable","company due diligence brief with sources"],"tags":["company-research","due-diligence","competitor-analysis","sales-research","report","citations","premium","pay-per-call"],"metadata":{"price_usd":10.0,"tier":"premium","path":"/work/research/company","method":"POST","compound":true,"max_seconds":220},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:agent.task","displayName":"Agent: get a task done (agent.task)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/agent/task","method":"POST","url":"https://hubvibe-io.com/work/agent/task","price_usd":2.75,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"task":{"type":"string","maxLength":4000,"description":"The task, in plain words."},"context":{"type":["string","object","array"],"description":"Optional material the task refers to (text or JSON)."},"fields":{"type":"array","items":{"type":"string"},"maxItems":30,"description":"Optional: also return `data` with exactly these keys."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["task"],"additionalProperties":false},"input_example":{"task":"Find the official website of Anthropic and summarize what it sells, with sources."},"output_schema":{"type":"object","properties":{"task":{"type":"string","description":"The task, as given.","examples":["Find the official website of Anthropic and summarize what it sells, with sources."]},"tier":{"type":"string","enum":["quick","pro","max"],"description":"The tier that ran: quick ($2.75), pro ($9) or max ($20).","examples":["quick"]},"headline":{"type":"string","description":"The one-sentence takeaway.","examples":["Anthropic sells the Claude AI models to people and businesses."]},"key_points":{"type":"array","items":{"type":"string","description":"A finding.","examples":["Claude is offered through apps, an API and cloud marketplaces."]},"description":"3-7 short findings.","examples":[["Claude is offered through apps, an API and cloud marketplaces."]]},"answer":{"type":"string","description":"The finished answer.","examples":["Anthropic (anthropic.com) builds the Claude family of AI models..."]},"data":{"type":["object","null"],"additionalProperties":true,"description":"The JSON answer with exactly the requested `fields` (null when unknown); null when no fields were requested.","examples":[null]},"steps":{"type":"array","items":{"type":"object","properties":{"n":{"type":"integer","description":"Step number.","examples":[1]},"tool":{"type":"string","description":"The HubVibe tool used.","examples":["search.web"]},"input":{"type":"object","properties":{},"required":[],"description":"What the tool was asked.","additionalProperties":true,"examples":[{"query":"Anthropic official website"}]},"ok":{"type":"boolean","description":"Whether the step succeeded.","examples":[true]},"summary":{"type":"string","description":"What the step found, or why it did not succeed.","examples":["{\"answer\": \"Anthropic is an AI safety company...\"}"]},"seconds":{"type":"number","description":"How long the step took.","examples":[4.2]}},"required":["n","tool","input","ok","summary","seconds"],"description":"One step of the work."},"description":"Every step of the work, in order."},"tools_used":{"type":"array","items":{"type":"string","description":"Tool name.","examples":["search.web"]},"description":"The HubVibe tools that did the work.","examples":[["search.web"]]},"sources":{"type":"array","items":{"type":"string","description":"URL.","examples":["https://www.anthropic.com/"]},"description":"URLs the answer rests on.","examples":[["https://www.anthropic.com/"]]},"notes":{"type":"array","items":{"type":"string","description":"Note.","examples":["Finished within this tier's scope; the answer uses the work done."]},"description":"Anything that limited the work.","examples":[[]]}},"required":["task","tier","headline","key_points","answer","data","steps","tools_used","sources","notes"]},"output_example":{"task":"Find the official website of Anthropic and summarize what it sells, with sources.","tier":"quick","headline":"Anthropic sells the Claude AI models to people and businesses.","key_points":["Claude is offered through apps, an API and cloud marketplaces."],"answer":"Anthropic (anthropic.com) builds the Claude family of AI models...","data":null,"steps":[{"n":1,"tool":"search.web","input":{"query":"Anthropic official website"},"ok":true,"summary":"{\"answer\": \"Anthropic is an AI safety company...\"}","seconds":4.2}],"tools_used":["search.web"],"sources":["https://www.anthropic.com/"],"notes":[]},"returns":"task, tier, headline, key_points[], answer, data, steps[{n,tool,input,ok,summary,seconds}], tools_used[], sources[], notes[].","max_seconds":120,"composes":["search.web","extract.page","research.web","company.enrich","llm.analyze"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $2.75, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$2.75'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$2.75' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"HubVibe Agent (quick): hand it any task in plain words and get the finished result in one call. Research a company or a person of interest, check a website, screen a name, read the markets, compare options, pull the facts: you get a headline, the key points, the full answer, its sources and every tool step. Up to 4 steps. Charged only when the answer is delivered. Input: task; optional context, fields for a JSON answer, language.","capabilities":["agent.task","AgentTask","SearchWeb","ExtractPage","ResearchWeb","CompanyEnrich","LlmAnalyze"],"representativeQueries":["do this task for me using web search and data tools","an AI agent that completes a task and returns the answer with sources","autonomous agent to research and answer a question"],"tags":["ai-agent","task-automation","research","autonomous-agent","multi-tool","standard","pay-per-call"],"metadata":{"price_usd":2.75,"tier":"standard","path":"/work/agent/task","method":"POST","compound":true,"max_seconds":120},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:agent.task_pro","displayName":"Agent Pro: a deeper task (agent.task_pro)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/agent/task_pro","method":"POST","url":"https://hubvibe-io.com/work/agent/task_pro","price_usd":9.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"task":{"type":"string","maxLength":4000,"description":"The task, in plain words."},"context":{"type":["string","object","array"],"description":"Optional material the task refers to (text or JSON)."},"fields":{"type":"array","items":{"type":"string"},"maxItems":30,"description":"Optional: also return `data` with exactly these keys."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["task"],"additionalProperties":false},"input_example":{"task":"Find the official website of Anthropic and summarize what it sells, with sources."},"output_schema":{"type":"object","properties":{"task":{"type":"string","description":"The task, as given.","examples":["Find the official website of Anthropic and summarize what it sells, with sources."]},"tier":{"type":"string","enum":["quick","pro","max"],"description":"The tier that ran: quick ($2.75), pro ($9) or max ($20).","examples":["quick"]},"headline":{"type":"string","description":"The one-sentence takeaway.","examples":["Anthropic sells the Claude AI models to people and businesses."]},"key_points":{"type":"array","items":{"type":"string","description":"A finding.","examples":["Claude is offered through apps, an API and cloud marketplaces."]},"description":"3-7 short findings.","examples":[["Claude is offered through apps, an API and cloud marketplaces."]]},"answer":{"type":"string","description":"The finished answer.","examples":["Anthropic (anthropic.com) builds the Claude family of AI models..."]},"data":{"type":["object","null"],"additionalProperties":true,"description":"The JSON answer with exactly the requested `fields` (null when unknown); null when no fields were requested.","examples":[null]},"steps":{"type":"array","items":{"type":"object","properties":{"n":{"type":"integer","description":"Step number.","examples":[1]},"tool":{"type":"string","description":"The HubVibe tool used.","examples":["search.web"]},"input":{"type":"object","properties":{},"required":[],"description":"What the tool was asked.","additionalProperties":true,"examples":[{"query":"Anthropic official website"}]},"ok":{"type":"boolean","description":"Whether the step succeeded.","examples":[true]},"summary":{"type":"string","description":"What the step found, or why it did not succeed.","examples":["{\"answer\": \"Anthropic is an AI safety company...\"}"]},"seconds":{"type":"number","description":"How long the step took.","examples":[4.2]}},"required":["n","tool","input","ok","summary","seconds"],"description":"One step of the work."},"description":"Every step of the work, in order."},"tools_used":{"type":"array","items":{"type":"string","description":"Tool name.","examples":["search.web"]},"description":"The HubVibe tools that did the work.","examples":[["search.web"]]},"sources":{"type":"array","items":{"type":"string","description":"URL.","examples":["https://www.anthropic.com/"]},"description":"URLs the answer rests on.","examples":[["https://www.anthropic.com/"]]},"notes":{"type":"array","items":{"type":"string","description":"Note.","examples":["Finished within this tier's scope; the answer uses the work done."]},"description":"Anything that limited the work.","examples":[[]]}},"required":["task","tier","headline","key_points","answer","data","steps","tools_used","sources","notes"]},"output_example":{"task":"Find the official website of Anthropic and summarize what it sells, with sources.","tier":"quick","headline":"Anthropic sells the Claude AI models to people and businesses.","key_points":["Claude is offered through apps, an API and cloud marketplaces."],"answer":"Anthropic (anthropic.com) builds the Claude family of AI models...","data":null,"steps":[{"n":1,"tool":"search.web","input":{"query":"Anthropic official website"},"ok":true,"summary":"{\"answer\": \"Anthropic is an AI safety company...\"}","seconds":4.2}],"tools_used":["search.web"],"sources":["https://www.anthropic.com/"],"notes":[]},"returns":"task, tier, headline, key_points[], answer, data, steps[{n,tool,input,ok,summary,seconds}], tools_used[], sources[], notes[].","max_seconds":200,"composes":["search.web","extract.page","research.web","company.enrich","llm.analyze"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $9.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$9.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$9.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"HubVibe Agent (pro): hand it any task in plain words and get the finished result in one call. Research a company or a person of interest, check a website, screen a name, read the markets, compare options, pull the facts: you get a headline, the key points, the full answer, its sources and every tool step. Up to 10 steps. Charged only when the answer is delivered. Input: task; optional context, fields for a JSON answer, language.","capabilities":["agent.task_pro","AgentTaskPro","SearchWeb","ExtractPage","ResearchWeb","CompanyEnrich","LlmAnalyze"],"representativeQueries":["deeper multi-step research task done by an agent","agent that combines company data, news and web research into one answer","complete a multi-tool task and return structured JSON"],"tags":["ai-agent","task-automation","research","autonomous-agent","multi-tool","advanced","pay-per-call"],"metadata":{"price_usd":9.0,"tier":"advanced","path":"/work/agent/task_pro","method":"POST","compound":true,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:agent.task_max","displayName":"Agent Max: the hardest tasks (agent.task_max)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/agent/task_max","method":"POST","url":"https://hubvibe-io.com/work/agent/task_max","price_usd":20.0,"tier":"premium","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"task":{"type":"string","maxLength":4000,"description":"The task, in plain words."},"context":{"type":["string","object","array"],"description":"Optional material the task refers to (text or JSON)."},"fields":{"type":"array","items":{"type":"string"},"maxItems":30,"description":"Optional: also return `data` with exactly these keys."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["task"],"additionalProperties":false},"input_example":{"task":"Find the official website of Anthropic and summarize what it sells, with sources."},"output_schema":{"type":"object","properties":{"task":{"type":"string","description":"The task, as given.","examples":["Find the official website of Anthropic and summarize what it sells, with sources."]},"tier":{"type":"string","enum":["quick","pro","max"],"description":"The tier that ran: quick ($2.75), pro ($9) or max ($20).","examples":["quick"]},"headline":{"type":"string","description":"The one-sentence takeaway.","examples":["Anthropic sells the Claude AI models to people and businesses."]},"key_points":{"type":"array","items":{"type":"string","description":"A finding.","examples":["Claude is offered through apps, an API and cloud marketplaces."]},"description":"3-7 short findings.","examples":[["Claude is offered through apps, an API and cloud marketplaces."]]},"answer":{"type":"string","description":"The finished answer.","examples":["Anthropic (anthropic.com) builds the Claude family of AI models..."]},"data":{"type":["object","null"],"additionalProperties":true,"description":"The JSON answer with exactly the requested `fields` (null when unknown); null when no fields were requested.","examples":[null]},"steps":{"type":"array","items":{"type":"object","properties":{"n":{"type":"integer","description":"Step number.","examples":[1]},"tool":{"type":"string","description":"The HubVibe tool used.","examples":["search.web"]},"input":{"type":"object","properties":{},"required":[],"description":"What the tool was asked.","additionalProperties":true,"examples":[{"query":"Anthropic official website"}]},"ok":{"type":"boolean","description":"Whether the step succeeded.","examples":[true]},"summary":{"type":"string","description":"What the step found, or why it did not succeed.","examples":["{\"answer\": \"Anthropic is an AI safety company...\"}"]},"seconds":{"type":"number","description":"How long the step took.","examples":[4.2]}},"required":["n","tool","input","ok","summary","seconds"],"description":"One step of the work."},"description":"Every step of the work, in order."},"tools_used":{"type":"array","items":{"type":"string","description":"Tool name.","examples":["search.web"]},"description":"The HubVibe tools that did the work.","examples":[["search.web"]]},"sources":{"type":"array","items":{"type":"string","description":"URL.","examples":["https://www.anthropic.com/"]},"description":"URLs the answer rests on.","examples":[["https://www.anthropic.com/"]]},"notes":{"type":"array","items":{"type":"string","description":"Note.","examples":["Finished within this tier's scope; the answer uses the work done."]},"description":"Anything that limited the work.","examples":[[]]}},"required":["task","tier","headline","key_points","answer","data","steps","tools_used","sources","notes"]},"output_example":{"task":"Find the official website of Anthropic and summarize what it sells, with sources.","tier":"quick","headline":"Anthropic sells the Claude AI models to people and businesses.","key_points":["Claude is offered through apps, an API and cloud marketplaces."],"answer":"Anthropic (anthropic.com) builds the Claude family of AI models...","data":null,"steps":[{"n":1,"tool":"search.web","input":{"query":"Anthropic official website"},"ok":true,"summary":"{\"answer\": \"Anthropic is an AI safety company...\"}","seconds":4.2}],"tools_used":["search.web"],"sources":["https://www.anthropic.com/"],"notes":[]},"returns":"task, tier, headline, key_points[], answer, data, steps[{n,tool,input,ok,summary,seconds}], tools_used[], sources[], notes[].","max_seconds":240,"composes":["search.web","extract.page","research.web","company.enrich","llm.analyze"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $20.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$20.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$20.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"HubVibe Agent (max): hand it any task in plain words and get the finished result in one call. Research a company or a person of interest, check a website, screen a name, read the markets, compare options, pull the facts: you get a headline, the key points, the full answer, its sources and every tool step. Up to 20 steps. Charged only when the answer is delivered. Input: task; optional context, fields for a JSON answer, language.","capabilities":["agent.task_max","AgentTaskMax","SearchWeb","ExtractPage","ResearchWeb","CompanyEnrich","LlmAnalyze"],"representativeQueries":["hardest multi-step agent task with many tool calls","full due diligence done by an autonomous agent","agent that runs up to twenty tool steps and cites every source"],"tags":["ai-agent","task-automation","research","autonomous-agent","multi-tool","premium","pay-per-call"],"metadata":{"price_usd":20.0,"tier":"premium","path":"/work/agent/task_max","method":"POST","compound":true,"max_seconds":240},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:monitor.snapshot","displayName":"Save a monitoring baseline (monitor.snapshot)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/monitor/snapshot","method":"POST","url":"https://hubvibe-io.com/work/monitor/snapshot","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"http(s) URL to fetch."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://example.com"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The URL baselined.","examples":["https://example.com"]},"title":{"type":["string","null"],"description":"Page title at snapshot time.","examples":["Example Domain"]},"text_chars":{"type":"integer","description":"Characters of readable text captured.","examples":[172]},"content_hash":{"type":"string","description":"sha256 of the readable text, hex.","examples":["aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"]},"note":{"type":"string","description":"What to do next.","examples":["Baseline saved. Call monitor.check on this URL later to see what changed."]}},"required":["url","text_chars","content_hash","note"]},"output_example":{"url":"https://example.com","title":"Example Domain","text_chars":172,"content_hash":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","note":"Baseline saved. Call monitor.check on this URL later to see what changed."},"returns":"url, title, text_chars, content_hash, note.","max_seconds":90,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Website change monitoring, step one: fetch a page and store it as the baseline to compare against later. Use it to watch pricing pages, terms, job boards or competitors. Input: url. Then call monitor.check to learn whether and how it changed.","capabilities":["monitor.snapshot","MonitorSnapshot"],"representativeQueries":["save a baseline of a web page to detect changes later","start monitoring a URL for content changes"],"tags":["monitoring","website-change","change-detection","watch","diff","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/monitor/snapshot","method":"POST","compound":false,"max_seconds":90},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:monitor.check","displayName":"Check a page against its baseline (monitor.check)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/monitor/check","method":"POST","url":"https://hubvibe-io.com/work/monitor/check","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"http(s) URL to fetch."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://example.com"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The URL checked.","examples":["https://example.com"]},"title":{"type":["string","null"],"description":"Page title now.","examples":["Example Domain"]},"changed":{"type":"boolean","description":"Whether the readable text differs from the baseline.","examples":[true]},"baseline_age_seconds":{"type":"number","description":"Seconds since the baseline was taken.","examples":[86400]},"change_summary":{"type":"string","description":"What changed, in words; or that nothing did.","examples":["The pricing section now lists a $0.15 bundle; the headline is unchanged."]},"model":{"type":"string","description":"Model that summarised the diff; present only when something changed.","examples":["gemini-2.5-flash"]}},"required":["url","changed","baseline_age_seconds","change_summary"]},"output_example":{"url":"https://example.com","title":"Example Domain","changed":true,"baseline_age_seconds":86400,"change_summary":"The pricing section now lists a $0.15 bundle; the headline is unchanged.","model":"gemini-2.5-flash"},"returns":"url, title, changed, baseline_age_seconds, change_summary, model.","max_seconds":150,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Website change detection, 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 what changed. Use it to track price changes, terms updates, new job posts or competitor moves. Input: url; optional language.","capabilities":["monitor.check","MonitorCheck"],"representativeQueries":["has this web page changed since the last check","summarize what changed on a monitored page","diff a URL against its saved baseline"],"tags":["monitoring","change-detection","website-change","diff","alerts","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/monitor/check","method":"POST","compound":false,"max_seconds":150},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:commerce.availability","displayName":"Live availability: can this be bought or booked right now? (commerce.availability)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/commerce/availability","method":"POST","url":"https://hubvibe-io.com/work/commerce/availability","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"The product, listing or booking page."},"variant":{"type":"string","maxLength":200,"description":"Optional: the option you want, in words (size 9 natural black; double room 12 Oct; economy)."},"quantity":{"type":"integer","minimum":1,"maximum":100000,"description":"Optional: how many you need."},"ship_to":{"type":"string","minLength":2,"maxLength":2,"description":"Optional: ISO 3166-1 alpha-2 country the order ships to."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://www.allbirds.com/products/mens-wool-runners","variant":"size 10"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The page checked.","examples":["https://example.com/products/wool-runner"]},"final_url":{"type":["string","null"],"description":"The URL after redirects.","examples":["https://example.com/products/wool-runner"]},"title":{"type":["string","null"],"description":"Product or listing name from the page.","examples":["Wool Runner"]},"available":{"type":["boolean","null"],"description":"Purchasable or bookable right now under the conditions asked; null when the page does not say.","examples":[true]},"availability":{"type":"string","enum":["in_stock","out_of_stock","preorder","backorder","limited","discontinued","unknown"],"description":"Availability of the option asked for (or of the product when no variant was named).","examples":["in_stock"]},"price":{"type":["number","null"],"description":"Price of the matched option, else the product's; null when not stated.","examples":[110.0]},"currency":{"type":["string","null"],"description":"ISO 4217 currency of `price`; null when not stated.","examples":["USD"]},"options":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"The option as the page names it.","examples":["Natural Black / 10"]},"available":{"type":["boolean","null"],"description":"Purchasable now; null when the page does not say.","examples":[true]},"availability":{"type":"string","enum":["in_stock","out_of_stock","preorder","backorder","limited","discontinued","unknown"],"description":"Availability of this option.","examples":["in_stock"]},"price":{"type":["number","null"],"description":"Price of this option; null when not stated.","examples":[110.0]},"currency":{"type":["string","null"],"description":"ISO 4217 code; null when not stated.","examples":["USD"]},"sku":{"type":["string","null"],"description":"SKU when the page states one.","examples":["WR3MNCW100"]},"url":{"type":["string","null"],"description":"Option-specific URL when the page gives one.","examples":["https://example.com/products/wool-runner?variant=10"]}},"required":["name","available","availability","price","currency"],"description":"One purchasable variation."},"description":"Every purchasable variation the page lists (sizes, colours, dates, rooms, fares)."},"options_count":{"type":"integer","description":"How many options the page lists.","examples":[7]},"matched_option":{"type":["object","null"],"description":"The option matching `variant`; null when no variant was asked or none matched.","properties":{"name":{"type":"string","description":"The option as the page names it.","examples":["Natural Black / 10"]},"available":{"type":["boolean","null"],"description":"Purchasable now; null when the page does not say.","examples":[true]},"availability":{"type":"string","enum":["in_stock","out_of_stock","preorder","backorder","limited","discontinued","unknown"],"description":"Availability of this option.","examples":["in_stock"]},"price":{"type":["number","null"],"description":"Price of this option; null when not stated.","examples":[110.0]},"currency":{"type":["string","null"],"description":"ISO 4217 code; null when not stated.","examples":["USD"]},"sku":{"type":["string","null"],"description":"SKU when the page states one.","examples":["WR3MNCW100"]},"url":{"type":["string","null"],"description":"Option-specific URL when the page gives one.","examples":["https://example.com/products/wool-runner?variant=10"]}},"required":["name","available","availability","price","currency"]},"variant":{"type":["string","null"],"description":"The variant asked for, as given.","examples":["size 10"]},"quantity":{"type":["integer","null"],"description":"The quantity asked for.","examples":[2]},"quantity_ok":{"type":["boolean","null"],"description":"Whether that quantity can be ordered; null when the page does not say.","examples":[true]},"ship_to":{"type":["string","null"],"description":"The country asked for.","examples":["US"]},"ship_to_ok":{"type":["boolean","null"],"description":"Whether the page says it delivers there; null when it does not say.","examples":[true]},"shipping":{"type":["string","null"],"description":"What the page states about shipping or delivery; null unless stated.","examples":["Free shipping on orders over $75"]},"eligibility_notes":{"type":"array","items":{"type":"string","description":"A restriction or caveat the page states, or why a condition could not be checked.","examples":["Ships to US, CA and GB only."]},"description":"Restrictions and caveats, in words.","examples":[[]]},"evidence":{"type":"array","items":{"type":"string","description":"What the answer rests on: a structured-data field or an exact quote from the page.","examples":["JSON-LD Offer availability https://schema.org/InStock price 110 USD"]},"description":"The evidence behind the answer, best first."},"source":{"type":"string","enum":["jsonld","shopify","opengraph","llm","none"],"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.","examples":["jsonld"]},"javascript_rendered":{"type":"boolean","description":"Whether a real browser had to render the page to answer.","examples":[false]},"http_status":{"type":["integer","null"],"description":"HTTP status of the page fetch.","examples":[200]},"confidence":{"type":"string","enum":["high","medium","low"],"description":"high: exact structured data for the option asked; medium: page-level tags only; low: model reading or nothing found.","examples":["high"]},"checked_at":{"type":"string","format":"date-time","description":"When the page was read (UTC). The answer was true at this moment; nothing here is cached.","examples":["2026-09-26T18:00:00Z"]},"language":{"type":["string","null"],"description":"BCP-47 tag the prose fields were written in; null for the page's own language.","examples":["en"]},"model":{"type":["string","null"],"description":"The model used, only when the model layer ran.","examples":["gemini-2.5-flash"]}},"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"]},"output_example":{"url":"https://example.com/products/wool-runner","final_url":"https://example.com/products/wool-runner","title":"Wool Runner","available":true,"availability":"in_stock","price":110.0,"currency":"USD","options":[{"name":"Natural Black / 10","available":true,"availability":"in_stock","price":110.0,"currency":"USD","sku":"WR3MNCW100","url":"https://example.com/products/wool-runner?variant=10"}],"options_count":7,"matched_option":{"name":"Natural Black / 10","available":true,"availability":"in_stock","price":110.0,"currency":"USD","sku":"WR3MNCW100","url":"https://example.com/products/wool-runner?variant=10"},"variant":"size 10","quantity":2,"quantity_ok":true,"ship_to":"US","ship_to_ok":true,"shipping":"Free shipping on orders over $75","eligibility_notes":[],"evidence":["JSON-LD Offer availability https://schema.org/InStock price 110 USD"],"source":"jsonld","javascript_rendered":false,"http_status":200,"confidence":"high","checked_at":"2026-09-26T18:00:00Z","language":"en","model":"gemini-2.5-flash"},"returns":"available, availability, price, currency, options[], matched_option, quantity_ok, ship_to_ok, shipping, eligibility_notes[], evidence[], source, confidence, checked_at.","max_seconds":200,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Product availability and price check: is it in stock and buyable 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. Reads any product or booking page (schema.org, Open Graph, Shopify JSON; a browser only when needed). Input: url; optional variant, quantity, ship_to.","capabilities":["commerce.availability","CommerceAvailability"],"representativeQueries":["can I buy this product right now and at what price","is this item in stock in size 10 and does it ship to Japan","live availability, price and options on a product or booking page","is this listing out of stock, on preorder or discontinued"],"tags":["in-stock","availability","price-check","ecommerce","shopping","product","inventory","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/commerce/availability","method":"POST","compound":false,"max_seconds":200},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.stock","displayName":"Live stock quote and daily history (market.stock)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/stock","method":"POST","url":"https://hubvibe-io.com/work/market/stock","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"symbol":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9.\\-]{0,11}$","description":"Ticker symbol, e.g. AAPL, BRK.B, RY-PC."},"range":{"type":"string","enum":["1d","5d","1mo","3mo","6mo","1y","2y","5y"],"description":"History range, default 1mo."},"include_history":{"type":"boolean","description":"Default true."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["symbol"],"additionalProperties":false},"input_example":{"symbol":"AAPL","range":"1mo"},"output_schema":{"type":"object","properties":{"symbol":{"type":"string","description":"Ticker.","examples":["AAPL"]},"name":{"type":["string","null"],"description":"Company or instrument name.","examples":["Apple Inc."]},"exchange":{"type":["string","null"],"description":"Listing exchange as the source names it.","examples":["NASDAQ-GS"]},"asset_class":{"type":["string","null"],"description":"stocks, etf, equity...","examples":["stocks"]},"currency":{"type":["string","null"],"description":"Quote currency.","examples":["USD"]},"price":{"type":"number","description":"Last price.","examples":[341.07]},"change":{"type":["number","null"],"description":"Change on the day.","examples":[5.15]},"change_pct":{"type":["number","null"],"description":"Change on the day, percent.","examples":[1.53]},"previous_close":{"type":["number","null"],"description":"Previous close.","examples":[335.92]},"day_high":{"type":["number","null"],"description":"Day high.","examples":[341.67]},"day_low":{"type":["number","null"],"description":"Day low.","examples":[334.53]},"volume":{"type":["number","null"],"description":"Volume.","examples":[30002768]},"market_state":{"type":["string","null"],"description":"Open, Closed, Pre-Market... as the source reports it.","examples":["Closed"]},"as_of":{"type":["string","null"],"description":"The source's own timestamp for the price (ISO 8601; a date, or a time with its zone).","examples":["2026-09-25T20:00:01Z"]},"delayed_minutes":{"type":["integer","null"],"description":"How delayed the source says the quote is; null when it does not say.","examples":[15]},"history_range":{"type":["string","null"],"description":"The range the history covers.","examples":["1mo"]},"history":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","description":"Trading day (YYYY-MM-DD).","examples":["2026-09-25"]},"open":{"type":["number","null"],"description":"Open.","examples":[336.04]},"high":{"type":["number","null"],"description":"High.","examples":[341.67]},"low":{"type":["number","null"],"description":"Low.","examples":[334.53]},"close":{"type":["number","null"],"description":"Close.","examples":[341.07]},"volume":{"type":["number","null"],"description":"Shares traded.","examples":[30002510]}},"required":["date","close"],"description":"One trading day."},"description":"Daily bars, oldest first; empty when include_history is false."},"history_rows":{"type":"integer","description":"Bars returned.","examples":[22]},"source":{"type":["string","null"],"description":"The provider that answered.","examples":["nasdaq-data-api"]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["symbol","price","as_of","delayed_minutes","history","history_rows","source","checked_at"]},"output_example":{"symbol":"AAPL","name":"Apple Inc.","exchange":"NASDAQ-GS","asset_class":"stocks","currency":"USD","price":341.07,"change":5.15,"change_pct":1.53,"previous_close":335.92,"day_high":341.67,"day_low":334.53,"volume":30002768,"market_state":"Closed","as_of":"2026-09-25T20:00:01Z","delayed_minutes":15,"history_range":"1mo","history":[{"date":"2026-09-25","open":336.04,"high":341.67,"low":334.53,"close":341.07,"volume":30002510}],"history_rows":22,"source":"nasdaq-data-api","checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Stock price / live stock quote for any US ticker: last price, change, day range, volume and market state, plus daily OHLCV history (1d to 5y), read at call time from Nasdaq's public data with Yahoo Finance as fallback. Every answer names its source, the source's timestamp, its delay in minutes and when it was read. Input: symbol (AAPL, NVDA...); optional range, include_history.","capabilities":["market.stock","MarketStock"],"representativeQueries":["live stock price and daily history for a ticker","what is AAPL trading at right now and how has it moved this month","OHLCV bars for a US stock over the last year"],"tags":["stock-price","stock-quote","equities","ohlcv","market-data","nasdaq","ticker","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/market/stock","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.fundamentals","displayName":"SEC-filed fundamentals (XBRL company facts) (market.fundamentals)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/fundamentals","method":"POST","url":"https://hubvibe-io.com/work/market/fundamentals","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"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`."},"cik":{"type":["integer","string"],"description":"SEC Central Index Key, e.g. 320193."},"concepts":{"type":"array","items":{"type":"string"},"minItems":1,"maxItems":25,"description":"XBRL concept names (us-gaap, ifrs-full or dei). Default: Revenues, NetIncomeLoss, EarningsPerShareDiluted, OperatingIncomeLoss, Assets, Liabilities, StockholdersEquity, CashAndCashEquivalentsAtCarryingValue, EntityCommonStockSharesOutstanding."},"periods":{"type":"integer","minimum":1,"maximum":40,"description":"Most recent reporting periods per concept, default 8."},"forms":{"type":"array","items":{"type":"string"},"minItems":1,"description":"Restrict to these forms, e.g. [\"10-K\"] for annual figures only."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"anyOf":[{"required":["symbol"]},{"required":["cik"]}]},"input_example":{"symbol":"AAPL","periods":4,"forms":["10-K","10-Q"]},"output_schema":{"type":"object","properties":{"symbol":{"type":["string","null"],"description":"Ticker as given.","examples":["AAPL"]},"cik":{"type":"integer","description":"SEC Central Index Key.","examples":[320193]},"entity_name":{"type":["string","null"],"description":"Registrant name.","examples":["Apple Inc."]},"concepts":{"type":"object","properties":{},"required":[],"description":"One entry per concept found, keyed by the name asked for.","additionalProperties":{"type":"object","properties":{"concept":{"type":"string","description":"The XBRL concept actually used (an alternate may stand in for the one asked).","examples":["RevenueFromContractWithCustomerExcludingAssessedTax"]},"taxonomy":{"type":"string","description":"us-gaap, ifrs-full or dei.","examples":["us-gaap"]},"label":{"type":["string","null"],"description":"The concept's label.","examples":["Revenue from Contract with Customer, Excluding Assessed Tax"]},"unit":{"type":"string","description":"Unit of every value.","examples":["USD"]},"values":{"type":"array","items":{"type":"object","properties":{"end":{"type":"string","description":"Period end (YYYY-MM-DD).","examples":["2026-06-27"]},"start":{"type":["string","null"],"description":"Period start for flows; null for instants (balance-sheet items).","examples":["2026-03-29"]},"value":{"type":"number","description":"The reported value, in `unit`.","examples":[109417000000]},"unit":{"type":"string","description":"XBRL unit.","examples":["USD"]},"fiscal_year":{"type":["integer","null"],"description":"Filer's fiscal year.","examples":[2026]},"fiscal_period":{"type":["string","null"],"description":"FY, Q1, Q2 or Q3.","examples":["Q3"]},"form":{"type":["string","null"],"description":"Form it was reported on.","examples":["10-Q"]},"filed":{"type":["string","null"],"description":"Filing date.","examples":["2026-07-31"]},"frame":{"type":["string","null"],"description":"SEC calendar frame when assigned.","examples":["CY2026Q2"]}},"required":["end","value","unit"],"description":"One reported value."},"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.","examples":[[{"end":"2026-06-27","start":"2026-03-29","value":109417000000,"unit":"USD","fiscal_year":2026,"fiscal_period":"Q3","form":"10-Q","filed":"2026-07-31","frame":"CY2026Q2"}]]}},"required":["concept","taxonomy","unit","values"],"description":"One concept's reported values."},"examples":[{"Revenues":{"concept":"RevenueFromContractWithCustomerExcludingAssessedTax","taxonomy":"us-gaap","label":"Revenue from Contract with Customer, Excluding Assessed Tax","unit":"USD","values":[{"end":"2026-06-27","start":"2026-03-29","value":109417000000,"unit":"USD","fiscal_year":2026,"fiscal_period":"Q3","form":"10-Q","filed":"2026-07-31","frame":"CY2026Q2"}]}}]},"concepts_missing":{"type":"array","items":{"type":"string","description":"A concept the filer has not reported.","examples":["Liabilities"]},"description":"Concepts asked for that the filer has no facts for.","examples":[[]]},"periods":{"type":"integer","description":"Periods per concept requested.","examples":[8]},"forms":{"type":["array","null"],"items":{"type":"string"},"description":"Form filter applied, or null.","examples":[["10-K","10-Q"]]},"as_of":{"type":["string","null"],"description":"Latest filing date among the values returned.","examples":["2026-07-31"]},"source":{"type":"string","const":"sec-edgar-xbrl-companyfacts","description":"Data source."},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["cik","concepts","concepts_missing","periods","as_of","source","checked_at"]},"output_example":{"symbol":"AAPL","cik":320193,"entity_name":"Apple Inc.","concepts":{"Revenues":{"concept":"RevenueFromContractWithCustomerExcludingAssessedTax","taxonomy":"us-gaap","label":"Revenue from Contract with Customer, Excluding Assessed Tax","unit":"USD","values":[{"end":"2026-06-27","start":"2026-03-29","value":109417000000,"unit":"USD","fiscal_year":2026,"fiscal_period":"Q3","form":"10-Q","filed":"2026-07-31","frame":"CY2026Q2"}]}},"concepts_missing":[],"periods":8,"forms":["10-K","10-Q"],"as_of":"2026-07-31","source":"sec-edgar-xbrl-companyfacts","checked_at":"2026-09-26T18:00:00Z"},"returns":"symbol, cik, entity_name, concepts{name: {concept, taxonomy, label, unit, values[]}}, concepts_missing[], periods, forms, as_of, source, checked_at.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"SEC filings / company fundamentals: revenue, net income, diluted EPS, operating income, assets, liabilities, equity, cash and shares outstanding by quarter and year (10-K, 10-Q) as the company reported them to the SEC, from EDGAR's official XBRL API at call time. Name any other XBRL line item; restatements resolve to the latest filing. Input: symbol (US ticker) or cik; optional concepts, periods, forms.","capabilities":["market.fundamentals","MarketFundamentals"],"representativeQueries":["revenue, net income and EPS a company reported to the SEC by quarter","balance sheet items from the latest 10-K and 10-Q filings","SEC XBRL company facts for a ticker"],"tags":["sec-filings","fundamentals","earnings","financial-statements","edgar","xbrl","10-k","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/market/fundamentals","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.insiders","displayName":"Insider trades from SEC Form 4 filings (market.insiders)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/insiders","method":"POST","url":"https://hubvibe-io.com/work/market/insiders","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"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`."},"cik":{"type":["integer","string"],"description":"SEC Central Index Key of the issuer, e.g. 1045810."},"days":{"type":"integer","minimum":1,"maximum":365,"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."},"max_filings":{"type":"integer","minimum":1,"maximum":40,"description":"Most recent Form 4 filings to read. Default 20."},"include_derivatives":{"type":"boolean","description":"Include option and other derivative lines. Default true."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"anyOf":[{"required":["symbol"]},{"required":["cik"]}]},"input_example":{"symbol":"NVDA","days":90,"codes":["P","S"]},"output_schema":{"type":"object","properties":{"symbol":{"type":["string","null"],"description":"Ticker as given.","examples":["NVDA"]},"cik":{"type":"integer","description":"Issuer's SEC Central Index Key.","examples":[1045810]},"issuer_name":{"type":["string","null"],"description":"Issuer name from EDGAR.","examples":["NVIDIA CORP"]},"window":{"type":"object","properties":{"days":{"type":"integer","description":"Look-back in days.","examples":[90]},"from":{"type":"string","description":"First filing date included.","examples":["2026-06-30"]},"to":{"type":"string","description":"Today, UTC.","examples":["2026-09-28"]}},"required":["days","from","to"],"description":"Filing-date window searched."},"codes":{"type":["array","null"],"items":{"type":"string"},"description":"Transaction-code filter applied, or null.","examples":[["P","S"]]},"filings_read":{"type":"integer","description":"Form 4 documents read.","examples":[12]},"transactions":{"type":"array","items":{"type":"object","properties":{"insider":{"type":["string","null"],"description":"Reporting person(s) as filed.","examples":["STEVENS MARK A"]},"insider_cik":{"type":["string","null"],"description":"Reporting person's CIK.","examples":["0001182994"]},"role":{"type":"string","description":"Officer title, director, 10% owner.","examples":["director"]},"security":{"type":["string","null"],"description":"Security title.","examples":["Common Stock"]},"date":{"type":["string","null"],"description":"Transaction date.","examples":["2026-09-04"]},"code":{"type":["string","null"],"description":"Form 4 transaction code.","examples":["S"]},"code_meaning":{"type":"string","description":"What the code means.","examples":["open-market or private sale"]},"acquired_disposed":{"type":["string","null"],"description":"A acquired, D disposed.","examples":["D"]},"shares":{"type":["number","null"],"description":"Shares in this line.","examples":[197180]},"price":{"type":["number","null"],"description":"Price per share, USD.","examples":[230.4039]},"value":{"type":["number","null"],"description":"shares x price, USD.","examples":[45431041.0]},"shares_after":{"type":["number","null"],"description":"Holdings after the trade.","examples":[2761590]},"ownership":{"type":["string","null"],"description":"D direct, I indirect.","examples":["D"]},"derivative":{"type":"boolean","description":"An option or other derivative line.","examples":[false]},"exercise_price":{"type":["number","null"],"description":"Derivative exercise price.","examples":[null]},"underlying_security":{"type":["string","null"],"description":"Derivative's underlying.","examples":[null]},"rule_10b5_1":{"type":"boolean","description":"Filed as a Rule 10b5-1 plan trade.","examples":[false]},"footnotes":{"type":"array","items":{"type":"string","description":"A footnote on this line.","examples":["Weighted average price."]},"description":"Footnotes.","examples":[[]]},"filed":{"type":"string","description":"Filing date.","examples":["2026-09-08"]},"form":{"type":"string","description":"4 or 4/A.","examples":["4"]},"filing_url":{"type":"string","description":"The filing on sec.gov.","examples":["https://www.sec.gov/Archives/edgar/data/1045810/000158867026000014/xslF345X06/wk-form4_1789765959.xml"]}},"required":["insider","role","date","code","code_meaning","shares","price","value","derivative","rule_10b5_1","filed","form","filing_url"]},"description":"Trades, newest filing first.","examples":[[]]},"transaction_count":{"type":"integer","description":"Trades returned.","examples":[33]},"summary":{"type":"object","properties":{"open_market_purchases":{"type":"object","properties":{"transactions":{"type":"integer","description":"Lines.","examples":[0]},"shares":{"type":"number","description":"Shares.","examples":[0]},"value_usd":{"type":["number","null"],"description":"Dollar value.","examples":[null]},"insiders":{"type":"integer","description":"Distinct insiders.","examples":[0]}},"required":["transactions","shares","value_usd","insiders"],"description":"Code P lines, non-derivative."},"open_market_sales":{"type":"object","properties":{"transactions":{"type":"integer","description":"Lines.","examples":[17]},"shares":{"type":"number","description":"Shares.","examples":[2900740]},"value_usd":{"type":["number","null"],"description":"Dollar value.","examples":[653017053.02]},"insiders":{"type":"integer","description":"Distinct insiders.","examples":[2]}},"required":["transactions","shares","value_usd","insiders"],"description":"Code S lines, non-derivative."},"net_shares":{"type":"number","description":"Purchased minus sold.","examples":[-2900740]},"net_value_usd":{"type":["number","null"],"description":"Purchased minus sold, USD.","examples":[-653017053.02]},"planned_sales_10b5_1":{"type":"integer","description":"Sales made under a 10b5-1 plan.","examples":[3]}},"required":["open_market_purchases","open_market_sales","net_shares","net_value_usd","planned_sales_10b5_1"],"description":"Open-market buying against selling."},"as_of":{"type":["string","null"],"description":"Most recent filing date read.","examples":["2026-09-24"]},"notes":{"type":"array","items":{"type":"string","description":"Anything left out, and why.","examples":["Stopped at max_filings=20."]},"description":"Notes.","examples":[[]]},"source":{"type":"string","const":"sec-edgar-form4","description":"Data source."},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["cik","window","filings_read","transactions","transaction_count","summary","as_of","notes","source","checked_at"]},"output_example":{"symbol":"NVDA","cik":1045810,"issuer_name":"NVIDIA CORP","window":{"days":90,"from":"2026-06-30","to":"2026-09-28"},"codes":["P","S"],"filings_read":12,"transactions":[],"transaction_count":33,"summary":{"open_market_purchases":{"transactions":0,"shares":0,"value_usd":null,"insiders":0},"open_market_sales":{"transactions":17,"shares":2900740,"value_usd":653017053.02,"insiders":2},"net_shares":-2900740,"net_value_usd":-653017053.02,"planned_sales_10b5_1":3},"as_of":"2026-09-24","notes":[],"source":"sec-edgar-form4","checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Insider trading (SEC Form 4): what a company's officers, directors and 10% owners bought and sold, parsed from their Form 4 filings 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. Input: symbol (US ticker) or cik; optional days (default 90), codes such as [\"P\",\"S\"].","capabilities":["market.insiders","MarketInsiders"],"representativeQueries":["insider buying and selling in a stock from SEC Form 4 filings","which executives and directors sold shares this quarter","open-market insider purchases for a ticker"],"tags":["insider-trading","form-4","sec","insider-buying","stocks","edgar","signals","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/market/insiders","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:finance.analytics","displayName":"Trading mathematics: returns, risk, drawdown, VaR, beta, indicators, options, Kelly (finance.analytics)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/finance/analytics","method":"POST","url":"https://hubvibe-io.com/work/finance/analytics","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"prices":{"type":"array","items":{"oneOf":[{"type":"number","exclusiveMinimum":0,"description":"A price."},{"type":"object","properties":{"date":{"type":"string"},"close":{"type":"number","exclusiveMinimum":0}},"required":["close"],"additionalProperties":true,"description":"{date, close}."}]},"minItems":2,"maxItems":100000,"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`."},"range":{"type":"string","enum":["1d","5d","1mo","3mo","6mo","1y","2y","5y"],"description":"History range with `symbol`, default 1y."},"benchmark_prices":{"type":"array","items":{"oneOf":[{"type":"number","exclusiveMinimum":0,"description":"A price."},{"type":"object","properties":{"date":{"type":"string"},"close":{"type":"number","exclusiveMinimum":0}},"required":["close"],"additionalProperties":true,"description":"{date, close}."}]},"minItems":2,"maxItems":100000,"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."},"metrics":{"type":"array","items":{"type":"string","enum":["returns","volatility","sharpe","sortino","drawdown","var","beta","moving_averages","rsi","bollinger","black_scholes","kelly"]},"minItems":1,"uniqueItems":true,"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."},"periods_per_year":{"type":"integer","minimum":1,"maximum":100000,"description":"Annualization basis: 252 trading days (default), 12 months, 365 days, 52 weeks."},"risk_free_rate":{"type":"number","minimum":-1,"maximum":10,"description":"Annual risk-free rate as a fraction (0.04 = 4%). Default 0."},"alpha":{"type":"number","exclusiveMinimum":0,"maximum":0.5,"description":"Tail probability for VaR/CVaR. Default 0.05."},"windows":{"type":"object","properties":{"sma":{"oneOf":[{"type":"integer","minimum":2,"maximum":5000},{"type":"array","items":{"type":"integer","minimum":2,"maximum":5000},"minItems":1,"maxItems":10}]},"ema":{"oneOf":[{"type":"integer","minimum":2,"maximum":5000},{"type":"array","items":{"type":"integer","minimum":2,"maximum":5000},"minItems":1,"maxItems":10}]},"rsi":{"oneOf":[{"type":"integer","minimum":2,"maximum":5000},{"type":"array","items":{"type":"integer","minimum":2,"maximum":5000},"minItems":1,"maxItems":10}]},"bollinger":{"oneOf":[{"type":"integer","minimum":2,"maximum":5000},{"type":"array","items":{"type":"integer","minimum":2,"maximum":5000},"minItems":1,"maxItems":10}]}},"additionalProperties":false,"description":"Indicator windows. Default sma [20,50,200], ema [12,26], rsi 14, bollinger 20."},"option":{"type":"object","properties":{"type":{"type":"string","enum":["call","put"]},"strike":{"type":"number","exclusiveMinimum":0},"spot":{"type":"number","exclusiveMinimum":0,"description":"Default: the last price of the series."},"rate":{"type":"number","description":"Continuous risk-free rate; default risk_free_rate."},"volatility":{"type":"number","exclusiveMinimum":0,"description":"Annual volatility as a fraction; default: the series' annualized log-return volatility."},"time_to_expiry_years":{"type":"number","exclusiveMinimum":0},"dividend_yield":{"type":"number","minimum":0,"description":"Continuous yield, default 0."}},"required":["type","strike","time_to_expiry_years"],"additionalProperties":false,"description":"European option to price with Black-Scholes-Merton (enables black_scholes)."},"kelly":{"type":"object","properties":{"win_probability":{"type":"number","minimum":0,"maximum":1},"win_loss_ratio":{"type":"number","exclusiveMinimum":0,"description":"Average win / average loss (b in b:1)."}},"required":["win_probability","win_loss_ratio"],"additionalProperties":false,"description":"Bet parameters for the Kelly fraction (enables kelly)."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"oneOf":[{"required":["prices"]},{"required":["symbol"]}]},"input_example":{"prices":[100,101.5,99.8,102.2,103.9,103.1,105.4,104.2,106.8,108.0,107.1,109.5,111.2,110.4,112.9,114.3,113.0,115.8,117.1,116.2,118.6,120.0],"risk_free_rate":0.04,"windows":{"sma":[5,10],"ema":[5],"rsi":14,"bollinger":10},"option":{"type":"call","strike":120,"rate":0.04,"time_to_expiry_years":0.5},"kelly":{"win_probability":0.55,"win_loss_ratio":1.5}},"output_schema":{"type":"object","properties":{"source":{"type":"object","properties":{"type":{"type":"string","enum":["prices","symbol"],"description":"Inline prices or a live-fetched series.","examples":["prices"]},"symbol":{"type":["string","null"],"description":"Ticker, with type symbol.","examples":["AAPL"]},"range":{"type":["string","null"],"description":"Range fetched, with type symbol.","examples":["1y"]},"provider":{"type":["string","null"],"description":"Provider that served the series.","examples":["nasdaq-data-api"]},"benchmark_symbol":{"type":["string","null"],"description":"Benchmark ticker when fetched.","examples":["SPY"]},"benchmark_n":{"type":["integer","null"],"description":"Benchmark prices used.","examples":[250]}},"required":["type"],"description":"Where the series came from."},"n":{"type":"integer","description":"Prices in the series.","examples":[22]},"n_returns":{"type":"integer","description":"Period returns (n - 1).","examples":[21]},"first_date":{"type":["string","null"],"description":"First date when dates were given.","examples":["2026-08-26"]},"last_date":{"type":["string","null"],"description":"Last date when dates were given.","examples":["2026-09-25"]},"periods_per_year":{"type":"integer","description":"Annualization basis.","examples":[252]},"risk_free_rate":{"type":"number","description":"Annual risk-free rate used.","examples":[0.04]},"metrics_computed":{"type":"array","items":{"type":"string","description":"A metric name.","examples":["returns"]},"description":"Metrics present (non-null) in this result.","examples":[["returns","volatility","sharpe"]]},"returns":{"type":["object","null"],"properties":{"n_returns":{"type":"integer","description":"Period returns.","examples":[21]},"first_price":{"type":"number","description":"First price.","examples":[100.0]},"last_price":{"type":"number","description":"Last price.","examples":[120.0]},"total_return":{"type":"number","description":"last/first - 1.","examples":[0.2]},"cagr":{"type":["number","null"],"description":"Compound annual growth rate over n_returns/periods_per_year years.","examples":[7.9]},"mean_period_return":{"type":"number","description":"Mean simple return per period.","examples":[0.0088]},"mean_log_return":{"type":"number","description":"Mean log return per period.","examples":[0.0087]},"annualized_mean_return":{"type":"number","description":"mean_period_return * periods_per_year.","examples":[2.2]},"best_period":{"type":"number","description":"Largest period return.","examples":[0.0227]},"worst_period":{"type":"number","description":"Smallest period return.","examples":[-0.0167]}},"required":["n_returns","first_price","last_price","total_return","mean_period_return"],"description":"Return statistics."},"volatility":{"type":["object","null"],"properties":{"period_std":{"type":["number","null"],"description":"Sample standard deviation of period returns.","examples":[0.0137]},"annualized":{"type":["number","null"],"description":"period_std * sqrt(periods_per_year).","examples":[0.217]},"log_return_std":{"type":["number","null"],"description":"Sample standard deviation of log returns.","examples":[0.0136]},"downside_deviation_annualized":{"type":["number","null"],"description":"Annualized downside deviation vs the risk-free rate.","examples":[0.09]}},"required":["period_std","annualized"],"description":"Dispersion of returns."},"sharpe":{"type":["number","null"],"description":"Annualized Sharpe ratio; null when undefined.","examples":[9.8]},"sortino":{"type":["number","null"],"description":"Annualized Sortino ratio; null when undefined.","examples":[23.6]},"drawdown":{"type":["object","null"],"properties":{"max_drawdown":{"type":"number","description":"Largest peak-to-trough fall as a fraction (negative or 0).","examples":[-0.0167]},"peak_index":{"type":"integer","description":"Index of the peak.","examples":[3]},"trough_index":{"type":"integer","description":"Index of the trough.","examples":[4]},"recovery_index":{"type":["integer","null"],"description":"First index back at the peak; null when not recovered.","examples":[6]},"duration_periods":{"type":"integer","description":"Periods from peak to trough.","examples":[1]}},"required":["max_drawdown","peak_index","trough_index","recovery_index","duration_periods"],"description":"Maximum drawdown."},"var":{"type":["object","null"],"properties":{"alpha":{"type":"number","description":"Tail probability.","examples":[0.05]},"horizon_periods":{"type":"integer","description":"Horizon in periods.","examples":[1]},"historical_var":{"type":"number","description":"Loss not exceeded with probability 1-alpha, as a positive fraction.","examples":[0.0158]},"historical_cvar":{"type":["number","null"],"description":"Mean loss beyond the VaR.","examples":[0.0167]},"parametric_var":{"type":["number","null"],"description":"Normal-model VaR, -(mean + z*std).","examples":[0.0137]},"parametric_z":{"type":"number","description":"z at alpha.","examples":[-1.6449]}},"required":["alpha","horizon_periods","historical_var","parametric_z"],"description":"Value at risk, one period."},"beta":{"type":["object","null"],"properties":{"n":{"type":"integer","description":"Aligned returns used.","examples":[21]},"beta":{"type":["number","null"],"description":"cov/var vs the benchmark.","examples":[1.12]},"alpha_annualized":{"type":["number","null"],"description":"Annualized Jensen's alpha.","examples":[0.31]},"correlation":{"type":["number","null"],"description":"Pearson correlation of period returns.","examples":[0.83]},"benchmark_annualized_volatility":{"type":["number","null"],"description":"Benchmark volatility, annualized.","examples":[0.18]}},"required":["n","beta"],"description":"Against the benchmark; null unless one was given."},"moving_averages":{"type":["object","null"],"properties":{"sma":{"type":"object","properties":{},"required":[],"description":"Value per window, keyed by the window length.","additionalProperties":{"type":["number","null"]},"examples":[{"20":116.4,"50":110.2}]},"ema":{"type":"object","properties":{},"required":[],"description":"Value per window, keyed by the window length.","additionalProperties":{"type":["number","null"]},"examples":[{"20":116.4,"50":110.2}]},"last_price":{"type":"number","description":"Last price, for comparison.","examples":[120.0]}},"required":["sma","ema","last_price"],"description":"Simple and exponential moving averages at the last price."},"rsi":{"type":["object","null"],"properties":{"window":{"type":"integer","description":"Window.","examples":[14]},"value":{"type":["number","null"],"description":"Wilder RSI 0-100; null when too few prices.","examples":[71.2]}},"required":["window","value"],"description":"Relative strength index."},"bollinger":{"type":["object","null"],"properties":{"window":{"type":"integer","description":"Window.","examples":[20]},"k":{"type":"number","description":"Band width in standard deviations.","examples":[2.0]},"middle":{"type":"number","description":"SMA.","examples":[113.5]},"upper":{"type":"number","description":"Upper band.","examples":[121.1]},"lower":{"type":"number","description":"Lower band.","examples":[105.9]},"bandwidth":{"type":["number","null"],"description":"(upper-lower)/middle.","examples":[0.134]},"percent_b":{"type":["number","null"],"description":"Where the last price sits in the band (0 lower, 1 upper).","examples":[0.93]}},"required":["window","k","middle","upper","lower"],"description":"Bollinger bands at the last price."},"black_scholes":{"type":["object","null"],"properties":{"type":{"type":"string","enum":["call","put"],"description":"Option type.","examples":["call"]},"price":{"type":"number","description":"Option value.","examples":[4.83]},"delta":{"type":"number","description":"dV/dS.","examples":[0.54]},"gamma":{"type":"number","description":"d2V/dS2.","examples":[0.024]},"vega":{"type":"number","description":"dV/dsigma per 1.0 of volatility.","examples":[33.1]},"theta":{"type":"number","description":"dV/dt per year.","examples":[-6.9]},"rho":{"type":"number","description":"dV/dr per 1.0 of rate.","examples":[29.8]},"d1":{"type":"number","description":"d1.","examples":[0.11]},"d2":{"type":"number","description":"d2.","examples":[-0.04]},"inputs":{"type":"object","properties":{"spot":{"type":"number","description":"S.","examples":[120.0]},"strike":{"type":"number","description":"K.","examples":[120.0]},"rate":{"type":"number","description":"r.","examples":[0.04]},"volatility":{"type":"number","description":"sigma.","examples":[0.217]},"time_to_expiry_years":{"type":"number","description":"T.","examples":[0.5]},"dividend_yield":{"type":"number","description":"q.","examples":[0.0]}},"required":["spot","strike","rate","volatility","time_to_expiry_years","dividend_yield"],"description":"The inputs used, including any defaulted from the series."}},"required":["type","price","delta","gamma","vega","theta","rho","inputs"],"description":"Black-Scholes-Merton."},"kelly":{"type":["object","null"],"properties":{"win_probability":{"type":"number","description":"p.","examples":[0.55]},"win_loss_ratio":{"type":"number","description":"b.","examples":[1.5]},"fraction":{"type":"number","description":"Kelly fraction p - (1-p)/b.","examples":[0.25]},"half_kelly":{"type":"number","description":"Half Kelly.","examples":[0.125]},"bet":{"type":"boolean","description":"Whether the fraction is positive.","examples":[true]}},"required":["win_probability","win_loss_ratio","fraction","half_kelly","bet"],"description":"Kelly criterion."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["rsi needs at least 15 prices."]},"description":"Caveats about undefined or aligned metrics.","examples":[[]]},"method":{"type":"string","description":"Every formula used, in words.","examples":["simple returns p_t/p_{t-1}-1 and log returns..."]},"as_of":{"type":["string","null"],"description":"Date or timestamp of the last price (from the dates given or the source).","examples":["2026-09-25"]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"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"]},"output_example":{"source":{"type":"prices","symbol":"AAPL","range":"1y","provider":"nasdaq-data-api","benchmark_symbol":"SPY","benchmark_n":250},"n":22,"n_returns":21,"first_date":"2026-08-26","last_date":"2026-09-25","periods_per_year":252,"risk_free_rate":0.04,"metrics_computed":["returns","volatility","sharpe"],"returns":{"n_returns":21,"first_price":100.0,"last_price":120.0,"total_return":0.2,"cagr":7.9,"mean_period_return":0.0088,"mean_log_return":0.0087,"annualized_mean_return":2.2,"best_period":0.0227,"worst_period":-0.0167},"volatility":{"period_std":0.0137,"annualized":0.217,"log_return_std":0.0136,"downside_deviation_annualized":0.09},"sharpe":9.8,"sortino":23.6,"drawdown":{"max_drawdown":-0.0167,"peak_index":3,"trough_index":4,"recovery_index":6,"duration_periods":1},"var":{"alpha":0.05,"horizon_periods":1,"historical_var":0.0158,"historical_cvar":0.0167,"parametric_var":0.0137,"parametric_z":-1.6449},"beta":{"n":21,"beta":1.12,"alpha_annualized":0.31,"correlation":0.83,"benchmark_annualized_volatility":0.18},"moving_averages":{"sma":{"20":116.4,"50":110.2},"ema":{"20":116.4,"50":110.2},"last_price":120.0},"rsi":{"window":14,"value":71.2},"bollinger":{"window":20,"k":2.0,"middle":113.5,"upper":121.1,"lower":105.9,"bandwidth":0.134,"percent_b":0.93},"black_scholes":{"type":"call","price":4.83,"delta":0.54,"gamma":0.024,"vega":33.1,"theta":-6.9,"rho":29.8,"d1":0.11,"d2":-0.04,"inputs":{"spot":120.0,"strike":120.0,"rate":0.04,"volatility":0.217,"time_to_expiry_years":0.5,"dividend_yield":0.0}},"kelly":{"win_probability":0.55,"win_loss_ratio":1.5,"fraction":0.25,"half_kelly":0.125,"bet":true},"notes":[],"method":"simple returns p_t/p_{t-1}-1 and log returns...","as_of":"2026-09-25","checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Trading and portfolio math: returns and CAGR, volatility, Sharpe and Sortino, max drawdown, VaR/CVaR, beta, alpha and correlation vs a benchmark, SMA/EMA, RSI, Bollinger bands, Black-Scholes option price with Greeks, and the Kelly fraction, over prices you send or a ticker fetched live. Deterministic, every formula named, no LLM. Input: prices or symbol; optional metrics, benchmark, option, kelly.","capabilities":["finance.analytics","FinanceAnalytics"],"representativeQueries":["annualized volatility, Sharpe ratio and max drawdown of a price series","value at risk and CVaR of a stock at 95 percent","beta and correlation of a stock against SPY","Black-Scholes price and Greeks for a call option","RSI, moving averages and Bollinger bands at the last price"],"tags":["trading","technical-analysis","risk","sharpe-ratio","rsi","options-pricing","portfolio","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/finance/analytics","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:opendata.search","displayName":"Search 16 government open-data portals for datasets (opendata.search)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/opendata/search","method":"POST","url":"https://hubvibe-io.com/work/opendata/search","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":300,"description":"Words to search for, in any language (인구, 人口, rainfall, Bevölkerung)."},"region":{"type":"string","enum":["all","au","ca","ch","cl","de","eu","gb","hk","ie","il","it","jp","kr","nl"],"description":"Which portals to search. Default all (16 portals, concurrently)."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Results per portal, default 10."},"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","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["query"],"additionalProperties":false},"input_example":{"query":"인구","region":"kr","limit":5},"output_schema":{"type":"object","properties":{"query":{"type":"string","description":"The query as given.","examples":["人口"]},"region":{"type":"string","description":"Region searched.","examples":["jp"]},"portals_searched":{"type":"array","items":{"type":"string","description":"Portal id.","examples":["data.e-gov.go.jp"]},"description":"Portals the query was sent to.","examples":[["data.e-gov.go.jp","catalog.data.metro.tokyo.lg.jp"]]},"portals_ok":{"type":"array","items":{"type":"string","description":"Portal id.","examples":["data.e-gov.go.jp"]},"description":"Portals that answered.","examples":[["data.e-gov.go.jp","catalog.data.metro.tokyo.lg.jp"]]},"portals_failed":{"type":"array","items":{"type":"object","properties":{"portal":{"type":"string","description":"Portal id.","examples":["data.gov.hk"]},"reason":{"type":"string","description":"Why it did not answer this call.","examples":["data.gov.hk timed out"]}},"required":["portal","reason"],"description":"A portal that failed for this call."},"description":"Portals that did not answer, with the reason; never silently dropped.","examples":[[]]},"total_matches":{"type":"object","properties":{},"required":[],"description":"Total matches per portal that answered, keyed by portal id.","additionalProperties":{"type":"integer"},"examples":[{"data.e-gov.go.jp":4699,"catalog.data.metro.tokyo.lg.jp":1523}]},"results":{"type":"array","items":{"type":"object","properties":{"portal":{"type":"string","description":"Portal id.","examples":["data.e-gov.go.jp"]},"region":{"type":"string","description":"Region code.","examples":["jp"]},"country":{"type":"string","description":"ISO 3166-1 alpha-2.","examples":["JP"]},"id":{"type":"string","description":"Dataset id on the portal.","examples":["5b2f1c7e-8a3d-4c1e-9f2a-1b2c3d4e5f60"]},"name":{"type":["string","null"],"description":"Dataset slug.","examples":["population-census-2020"]},"title":{"type":"string","description":"Dataset title, in the portal's language.","examples":["令和2年国勢調査 人口等基本集計"]},"description":{"type":["string","null"],"description":"Description, up to 1000 characters.","examples":["国勢調査の人口等基本集計..."]},"organization":{"type":["string","null"],"description":"Publishing organization.","examples":["総務省"]},"license":{"type":["string","null"],"description":"Licence title or id.","examples":["CC-BY-4.0"]},"updated_at":{"type":["string","null"],"description":"Portal metadata modification time.","examples":["2026-03-01T09:12:44.512345"]},"tags":{"type":"array","items":{"type":"string","description":"A tag.","examples":["人口"]},"description":"Portal tags.","examples":[["人口","国勢調査"]]},"landing_url":{"type":["string","null"],"description":"Dataset page or source URL when the portal gives one.","examples":["https://www.e-stat.go.jp/stat-search/files?toukei=00200521"]},"resources":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","description":"Download URL.","examples":["https://www.e-stat.go.jp/stat-search/file-download?statInfId=000032143614"]},"format":{"type":["string","null"],"description":"CSV, JSON, XLS, HTML...","examples":["CSV"]},"name":{"type":["string","null"],"description":"Resource name.","examples":["人口等基本集計 全国結果"]},"last_modified":{"type":["string","null"],"description":"Resource modification time.","examples":["2026-02-20T00:00:00"]},"size_bytes":{"type":["integer","null"],"description":"Size when the portal states it.","examples":[1048576]}},"required":["url"],"description":"One downloadable resource."},"description":"Up to 25 resources, ready for fetch.raw."},"resource_count":{"type":"integer","description":"Resources the dataset has in total.","examples":[3]}},"required":["portal","region","country","id","title","tags","resources","resource_count"],"description":"One dataset."},"description":"Datasets found, most recently updated first."},"result_count":{"type":"integer","description":"Datasets returned.","examples":[10]},"limit_per_portal":{"type":"integer","description":"Results requested per portal.","examples":[5]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","region","portals_searched","portals_ok","portals_failed","total_matches","results","result_count","limit_per_portal","checked_at"]},"output_example":{"query":"人口","region":"jp","portals_searched":["data.e-gov.go.jp","catalog.data.metro.tokyo.lg.jp"],"portals_ok":["data.e-gov.go.jp","catalog.data.metro.tokyo.lg.jp"],"portals_failed":[],"total_matches":{"data.e-gov.go.jp":4699,"catalog.data.metro.tokyo.lg.jp":1523},"results":[{"portal":"data.e-gov.go.jp","region":"jp","country":"JP","id":"5b2f1c7e-8a3d-4c1e-9f2a-1b2c3d4e5f60","name":"population-census-2020","title":"令和2年国勢調査 人口等基本集計","description":"国勢調査の人口等基本集計...","organization":"総務省","license":"CC-BY-4.0","updated_at":"2026-03-01T09:12:44.512345","tags":["人口","国勢調査"],"landing_url":"https://www.e-stat.go.jp/stat-search/files?toukei=00200521","resources":[{"url":"https://www.e-stat.go.jp/stat-search/file-download?statInfId=000032143614","format":"CSV","name":"人口等基本集計 全国結果","last_modified":"2026-02-20T00:00:00","size_bytes":1048576}],"resource_count":3}],"result_count":10,"limit_per_portal":5,"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Government open data search across 16 national portals in one call: Korea (data.go.kr), Japan, Hong Kong, Australia, UK, Canada, the EU catalog (139,000+ datasets), Germany, Italy, Ireland, Switzerland, Netherlands, Israel and Chile. Query in any language; each match returns organization, update time and download URLs ready for opendata.table. Portals that did not answer are listed. Input: query; optional region, limit, portals.","capabilities":["opendata.search","OpendataSearch"],"representativeQueries":["find government datasets about population in Korea or Japan","search UK, EU or Australian open data for rainfall CSV downloads","Korean public data portal datasets on a topic, keyless","government structured data on a topic, in the local language, 16 portals"],"tags":["open-data","government-data","datasets","public-data","statistics","data-portal","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/opendata/search","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:opendata.table","displayName":"Read a government dataset file as JSON rows (opendata.table)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/opendata/table","method":"POST","url":"https://hubvibe-io.com/work/opendata/table","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"File link, e-Stat file-download link, or a data.go.kr dataset page."},"max_rows":{"type":"integer","minimum":1,"maximum":2000,"description":"Rows to return, default 200."},"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."},"delimiter":{"type":"string","minLength":1,"maxLength":1,"description":"Force a CSV delimiter. Default: sniffed."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://www.data.go.kr/data/15005995/fileData.do","max_rows":5},"output_schema":{"type":"object","properties":{"source_url":{"type":"string","description":"The URL as given.","examples":["https://www.data.go.kr/data/15005995/fileData.do"]},"resolved_from":{"type":["string","null"],"description":"The dataset page that was resolved to a file link; null when a file link was given.","examples":["https://www.data.go.kr/data/15005995/fileData.do"]},"file_url":{"type":"string","description":"The file actually fetched.","examples":["https://www.data.go.kr/cmm/cmm/fileDownload.do?atchFileId=FILE_000000003522968&fileDetailSn=1&insertDataPrcus=N"]},"final_url":{"type":["string","null"],"description":"After redirects.","examples":["https://www.data.go.kr/cmm/cmm/fileDownload.do?atchFileId=FILE_000000003522968&fileDetailSn=1&insertDataPrcus=N"]},"filename":{"type":["string","null"],"description":"File name from the server or the URL.","examples":["울산광역시_인구 현황(20251112).csv"]},"content_type":{"type":["string","null"],"description":"Server content type.","examples":["application/octet-stream"]},"bytes":{"type":"integer","description":"File size in bytes.","examples":[12331]},"format":{"type":"string","enum":["csv","tsv","xlsx","json"],"description":"Parsed format.","examples":["csv"]},"encoding":{"type":["string","null"],"description":"Text encoding used; null for XLSX.","examples":["cp949"]},"sheet":{"type":["string","null"],"description":"XLSX sheet read; null otherwise.","examples":["Sheet1"]},"sheets":{"type":"array","items":{"type":"string","description":"Sheet name.","examples":["Sheet1"]},"description":"All sheet names for an XLSX; empty otherwise.","examples":[[]]},"columns":{"type":"array","items":{"type":"string","description":"Column name from the header row.","examples":["행정구역명"]},"description":"Columns in file order.","examples":[["행정구역코드","행정구역명","성별","내국인"]]},"column_count":{"type":"integer","description":"Number of columns.","examples":[14]},"rows":{"type":"array","items":{"type":"object","properties":{},"required":[],"description":"One row keyed by column; numbers typed, blanks null.","additionalProperties":true,"examples":[{"행정구역코드":31,"행정구역명":"울산광역시","성별":"남자","내국인":564888}]},"description":"Rows in file order, up to max_rows."},"row_count":{"type":"integer","description":"Rows returned.","examples":[5]},"total_rows":{"type":"integer","description":"Data rows in the file (excluding the header).","examples":[45]},"truncated":{"type":"boolean","description":"True when total_rows exceeds max_rows.","examples":[true]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["45 data rows in the file; the first 5 are returned (max_rows)."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"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"]},"output_example":{"source_url":"https://www.data.go.kr/data/15005995/fileData.do","resolved_from":"https://www.data.go.kr/data/15005995/fileData.do","file_url":"https://www.data.go.kr/cmm/cmm/fileDownload.do?atchFileId=FILE_000000003522968&fileDetailSn=1&insertDataPrcus=N","final_url":"https://www.data.go.kr/cmm/cmm/fileDownload.do?atchFileId=FILE_000000003522968&fileDetailSn=1&insertDataPrcus=N","filename":"울산광역시_인구 현황(20251112).csv","content_type":"application/octet-stream","bytes":12331,"format":"csv","encoding":"cp949","sheet":"Sheet1","sheets":[],"columns":["행정구역코드","행정구역명","성별","내국인"],"column_count":14,"rows":[{"행정구역코드":31,"행정구역명":"울산광역시","성별":"남자","내국인":564888}],"row_count":5,"total_rows":45,"truncated":true,"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":90,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Dataset file to JSON rows: a CSV, TSV, XLSX or JSON link from any portal, an e-Stat (Japan) download or a data.go.kr (Korea) dataset page. Encoding detected (Korean, Japanese, Chinese, UTF and Western code pages), header row found, numbers typed, XLSX sheets selectable, large files capped and disclosed. Use it after opendata.search or on any data file URL. Input: url; optional max_rows, sheet, encoding, delimiter.","capabilities":["opendata.table","OpendataTable"],"representativeQueries":["read this Korean government CSV as JSON rows","give me the rows of an e-Stat statistics file","parse a government XLSX dataset, second sheet","turn a dataset download link into typed JSON records"],"tags":["csv-to-json","xlsx","data-parsing","open-data","spreadsheet","dataset","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/opendata/table","method":"POST","compound":false,"max_seconds":90},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:search.results","displayName":"Web and news results in any language and country (Brave index) (search.results)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/search/results","method":"POST","url":"https://hubvibe-io.com/work/search/results","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":400,"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","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."},"count":{"type":"integer","minimum":1,"maximum":20,"description":"Results per block, default 10."},"freshness":{"type":"string","enum":["day","week","month","year"],"description":"Only results from this window."},"news":{"type":"boolean","description":"Include news results. Default true."},"safesearch":{"type":"string","enum":["off","moderate","strict"],"description":"Default moderate."}},"required":["query"],"additionalProperties":false},"input_example":{"query":"東京 天気予報","country":"JP","language":"ja","count":5},"output_schema":{"type":"object","properties":{"query":{"type":"string","description":"Query as given.","examples":["東京 天気予報"]},"country":{"type":["string","null"],"description":"Market searched.","examples":["JP"]},"language":{"type":["string","null"],"description":"Search language when given.","examples":["ja"]},"freshness":{"type":["string","null"],"description":"Window applied.","examples":["week"]},"web":{"type":"array","items":{"type":"object","properties":{"title":{"type":["string","null"],"description":"Page title.","examples":["Tokyo, Tokyo, Japan Weather Forecast | AccuWeather"]},"url":{"type":["string","null"],"description":"Page URL.","examples":["https://www.accuweather.com/en/jp/tokyo/226396/weather-forecast/226396"]},"description":{"type":["string","null"],"description":"Engine snippet.","examples":["Tokyo weather forecast with current conditions..."]},"age":{"type":["string","null"],"description":"Age as the engine words it.","examples":["4 日前"]},"page_age":{"type":["string","null"],"description":"Page date when known.","examples":["2026-09-23T10:38:54"]},"language":{"type":["string","null"],"description":"Page language.","examples":["en"]},"site_name":{"type":["string","null"],"description":"Site name.","examples":["AccuWeather"]},"hostname":{"type":["string","null"],"description":"Host.","examples":["www.accuweather.com"]},"extra_snippets":{"type":"array","items":{"type":"string","description":"Another snippet from the page.","examples":["Wind: 10 km/h"]},"description":"Up to 5 extra snippets.","examples":[[]]}},"required":["title","url","description","age","page_age","language","site_name","hostname","extra_snippets"],"description":"One web result."},"description":"Web results in engine order."},"web_count":{"type":"integer","description":"Web results returned.","examples":[5]},"news":{"type":"array","items":{"type":"object","properties":{"title":{"type":["string","null"],"description":"Headline.","examples":["Typhoon nears Tokyo"]},"url":{"type":["string","null"],"description":"Article URL.","examples":["https://example.com/news/1"]},"description":{"type":["string","null"],"description":"Snippet.","examples":["..."]},"age":{"type":["string","null"],"description":"Age as worded.","examples":["2 hours ago"]},"page_age":{"type":["string","null"],"description":"Article date when known.","examples":["2026-09-27T09:00:00"]},"source":{"type":["string","null"],"description":"Publisher or host.","examples":["Reuters"]},"breaking":{"type":"boolean","description":"Flagged breaking by the engine.","examples":[false]}},"required":["title","url","description","age","page_age","source","breaking"],"description":"One news result."},"description":"News results; empty when not asked or none."},"news_count":{"type":"integer","description":"News results returned.","examples":[3]},"more_results_available":{"type":"boolean","description":"The engine has more pages.","examples":[true]},"source":{"type":"string","const":"brave","description":"Data source."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["No result matched the query."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","country","language","freshness","web","web_count","news","news_count","more_results_available","source","notes","checked_at"]},"output_example":{"query":"東京 天気予報","country":"JP","language":"ja","freshness":"week","web":[{"title":"Tokyo, Tokyo, Japan Weather Forecast | AccuWeather","url":"https://www.accuweather.com/en/jp/tokyo/226396/weather-forecast/226396","description":"Tokyo weather forecast with current conditions...","age":"4 日前","page_age":"2026-09-23T10:38:54","language":"en","site_name":"AccuWeather","hostname":"www.accuweather.com","extra_snippets":[]}],"web_count":5,"news":[{"title":"Typhoon nears Tokyo","url":"https://example.com/news/1","description":"...","age":"2 hours ago","page_age":"2026-09-27T09:00:00","source":"Reuters","breaking":false}],"news_count":3,"more_results_available":true,"source":"brave","notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":40,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Web search API / SERP results: raw web and news results from Brave's independent index in any language and country, with title, URL, description, age and extra snippets (headline, source and age for news). Filter by country, language and freshness (day, week, month, year). Results, not an answer: pick what to read next with extract.page. Input: query; optional country, language, count, freshness, news.","capabilities":["search.results","SearchResults"],"representativeQueries":["web search results for a query in Japanese from Japan","latest news results about a company this week","ten links about a topic to read next, any language","independent search engine results, not an AI answer"],"tags":["serp","web-search-api","search-results","news-search","brave","multilingual","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/search/results","method":"POST","compound":false,"max_seconds":40},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:news.search","displayName":"Current news on any topic, in any language (news.search)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/news/search","method":"POST","url":"https://hubvibe-io.com/work/news/search","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":300,"description":"Topic words in any language (半導体, 반도체, tarifs douaniers)."},"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","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","description":"Optional answer language, BCP-47 (en, ja, pt-BR). Default: the input's."},"region":{"type":"string","pattern":"^[A-Za-z]{2}$","description":"Accepted for compatibility; GDELT does not record a publisher's country, so use language."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Default 20."},"since_hours":{"type":"integer","minimum":1,"maximum":720,"description":"Only articles published within this many hours."}},"required":[],"additionalProperties":false},"input_example":{"query":"半導体","language":"ja","limit":5},"output_schema":{"type":"object","properties":{"query":{"type":["string","null"],"description":"Topic searched, as given; null when only a symbol was asked.","examples":["半導体"]},"symbol":{"type":["string","null"],"description":"Ticker whose company name was searched; null when none.","examples":["AAPL"]},"language":{"type":["string","null"],"description":"BCP-47 language asked for; null when none.","examples":["ja"]},"language_filter":{"type":["string","null"],"description":"Language the articles were limited to; null when every language was searched.","examples":["ja"]},"sources_searched":{"type":"array","items":{"type":"string","description":"Search id.","examples":["gdelt:query"]},"description":"Searches this call ran.","examples":[["gdelt:query"]]},"sources_ok":{"type":"array","items":{"type":"string","description":"Search id.","examples":["gdelt:query"]},"description":"Searches that answered.","examples":[["gdelt:query"]]},"sources_failed":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","description":"Search id.","examples":["gdelt:symbol:7203.T"]},"reason":{"type":"string","description":"Why it did not answer this call.","examples":["Symbol news covers US-listed tickers"]}},"required":["source","reason"],"description":"A search that failed for this call."},"description":"Searches that did not answer, with the reason; never silently dropped.","examples":[[]]},"articles":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Headline in its original language.","examples":["半導体株が反発、関税協議の進展で"]},"url":{"type":"string","description":"The publisher's article link.","examples":["https://www.nikkei.com/article/DGXZQO..."]},"source_name":{"type":["string","null"],"description":"Publisher domain.","examples":["nikkei.com"]},"source_url":{"type":["string","null"],"description":"Publisher site.","examples":["https://nikkei.com"]},"published_at":{"type":["string","null"],"description":"When GDELT first saw it (UTC, 15-minute batches).","examples":["2026-09-27T02:30:00Z"]},"summary":{"type":["string","null"],"description":"Summary; GDELT carries none, so null.","examples":[null]},"language":{"type":["string","null"],"description":"Article language (BCP-47).","examples":["ja"]},"feed":{"type":"string","enum":["gdelt"],"description":"Which source it came from.","examples":["gdelt"]}},"required":["title","url","source_name","source_url","published_at","summary","language","feed"],"description":"One article."},"description":"Articles, newest first, duplicates by title removed."},"article_count":{"type":"integer","description":"Articles returned.","examples":[20]},"limit":{"type":"integer","description":"Most articles asked for.","examples":[20]},"since_hours":{"type":"integer","description":"Window searched, in hours.","examples":[72]},"attribution":{"type":"object","properties":{"text":{"type":"string","description":"Required citation.","examples":["Source: The GDELT Project"]},"url":{"type":"string","description":"Required link.","examples":["https://www.gdeltproject.org/"]}},"required":["text","url"],"description":"The citation GDELT's licence requires with every use."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["GDELT does not record a publisher's country, so region is not a filter."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","symbol","language","language_filter","sources_searched","sources_ok","sources_failed","articles","article_count","limit","since_hours","attribution","notes","checked_at"]},"output_example":{"query":"半導体","symbol":"AAPL","language":"ja","language_filter":"ja","sources_searched":["gdelt:query"],"sources_ok":["gdelt:query"],"sources_failed":[],"articles":[{"title":"半導体株が反発、関税協議の進展で","url":"https://www.nikkei.com/article/DGXZQO...","source_name":"nikkei.com","source_url":"https://nikkei.com","published_at":"2026-09-27T02:30:00Z","summary":null,"language":"ja","feed":"gdelt"}],"article_count":20,"limit":20,"since_hours":72,"attribution":{"text":"Source: The GDELT Project","url":"https://www.gdeltproject.org/"},"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"News search API: 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, newest first, with publisher, language and link; filter to one language; a US stock ticker searches the company's name. Window up to 30 days (default 72 hours). Input: query and/or symbol; optional language, limit, since_hours.","capabilities":["news.search","NewsSearch"],"representativeQueries":["latest news about semiconductors in Japanese from Japanese publishers","what is the Korean press saying about a company today","headlines for a stock ticker in the last 24 hours","current news on a topic in any language and country"],"tags":["news","news-api","headlines","current-events","gdelt","multilingual","media-monitoring","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/news/search","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:data.macro","displayName":"Official economic statistics for a country (data.macro)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/data/macro","method":"POST","url":"https://hubvibe-io.com/work/data/macro","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"indicator":{"type":"string","minLength":3,"maxLength":40,"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)."},"country":{"type":"string","minLength":2,"maxLength":9,"description":"ISO 3166 alpha-2 or alpha-3 (JP, KOR, DE), or an EU aggregate (EA20, EU27_2020) for monthly series."},"last":{"type":"integer","minimum":1,"maximum":60,"description":"Observations to return, newest last. Default 10."},"frequency":{"type":"string","enum":["auto","annual","monthly"],"description":"auto picks monthly where Eurostat publishes it, else annual."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["indicator","country"],"additionalProperties":false},"input_example":{"indicator":"inflation","country":"JP","last":5},"output_schema":{"type":"object","properties":{"indicator":{"type":"object","properties":{"alias":{"type":["string","null"],"description":"Alias used; null for a raw code.","examples":["inflation"]},"code":{"type":["string","null"],"description":"World Bank indicator code; null for Eurostat monthly series.","examples":["FP.CPI.TOTL.ZG"]},"name":{"type":["string","null"],"description":"The source's name for the series.","examples":["Inflation, consumer prices (annual %)"]},"unit":{"type":["string","null"],"description":"Unit when the source states it.","examples":["% change on a year earlier (HICP)"]}},"required":["alias","code","name","unit"],"description":"What was measured."},"country":{"type":"object","properties":{"code":{"type":"string","description":"Country code as the source spells it.","examples":["JP"]},"name":{"type":["string","null"],"description":"Country name from the source.","examples":["Japan"]}},"required":["code","name"],"description":"Where."},"frequency":{"type":"string","enum":["annual","monthly"],"description":"Period of the observations.","examples":["annual"]},"source":{"type":"string","enum":["world-bank","eurostat"],"description":"Which official source answered.","examples":["world-bank"]},"observations":{"type":"array","items":{"type":"object","properties":{"period":{"type":"string","description":"Year (2025) or month (2026-08).","examples":["2025"]},"value":{"type":["number","null"],"description":"Value; null when not yet published.","examples":[3.17]}},"required":["period","value"],"description":"One observation."},"description":"Oldest first."},"observation_count":{"type":"integer","description":"Observations returned.","examples":[5]},"latest":{"type":["object","null"],"properties":{"period":{"type":"string","description":"Period.","examples":["2025"]},"value":{"type":"number","description":"Value.","examples":[3.17]}},"required":["period","value"],"description":"Most recent published value; null when none in the window."},"previous":{"type":["object","null"],"properties":{"period":{"type":"string","description":"Period.","examples":["2024"]},"value":{"type":"number","description":"Value.","examples":[2.74]}},"required":["period","value"],"description":"The published value before it; null when none."},"change":{"type":["object","null"],"properties":{"absolute":{"type":"number","description":"latest minus previous.","examples":[0.43]},"pct":{"type":["number","null"],"description":"Change as a percentage of previous; null when previous is zero.","examples":[15.69]}},"required":["absolute","pct"],"description":"Latest versus previous; null when either is missing."},"as_of":{"type":["string","null"],"description":"The source's own update stamp.","examples":["2026-07-13"]},"source_url":{"type":["string","null"],"description":"Where the numbers came from.","examples":["https://api.worldbank.org/v2/country/JP/indicator/FP.CPI.TOTL.ZG?format=json"]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["1 of 5 periods have no published value yet."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["indicator","country","frequency","source","observations","observation_count","latest","previous","change","as_of","source_url","notes","checked_at"]},"output_example":{"indicator":{"alias":"inflation","code":"FP.CPI.TOTL.ZG","name":"Inflation, consumer prices (annual %)","unit":"% change on a year earlier (HICP)"},"country":{"code":"JP","name":"Japan"},"frequency":"annual","source":"world-bank","observations":[{"period":"2025","value":3.17}],"observation_count":5,"latest":{"period":"2025","value":3.17},"previous":{"period":"2024","value":2.74},"change":{"absolute":0.43,"pct":15.69},"as_of":"2026-07-13","source_url":"https://api.worldbank.org/v2/country/JP/indicator/FP.CPI.TOTL.ZG?format=json","notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":40,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Economic data / macro indicators for any country, live: GDP, growth, GDP per capita, inflation (CPI), unemployment, population, interest rates, exchange rate, debt, trade, FDI or any World Bank indicator code. Annual for 200+ economies from the World Bank; monthly EU inflation and unemployment from Eurostat. Returns the series, latest and previous values, the change and the source's update stamp. Input: indicator, country; optional last, frequency.","capabilities":["data.macro","DataMacro"],"representativeQueries":["Japan inflation rate, latest official figure and the change from last year","GDP of South Korea in US dollars for the last ten years","euro area unemployment, monthly, from Eurostat","any World Bank indicator for a country as a series with the latest value"],"tags":["economic-data","macroeconomics","gdp","inflation","unemployment","world-bank","statistics","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/data/macro","method":"POST","compound":false,"max_seconds":40},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:email.verify","displayName":"Verify an email address before you send (email.verify)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/email/verify","method":"POST","url":"https://hubvibe-io.com/work/email/verify","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"email":{"type":"string","minLength":3,"maxLength":320,"description":"One email address, such as jane@example.com."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["email"],"additionalProperties":false},"input_example":{"email":"support@github.com"},"output_schema":{"type":"object","properties":{"email":{"type":"string","description":"The address as given.","examples":["support@github.com"]},"normalized":{"type":["string","null"],"description":"Local part with the domain lower-cased and punycoded; null when the syntax is invalid.","examples":["support@github.com"]},"local_part":{"type":"string","description":"The part before @.","examples":["support"]},"domain":{"type":"string","description":"The domain as given.","examples":["github.com"]},"domain_ascii":{"type":["string","null"],"description":"The domain in ASCII (punycode for internationalised names); null when invalid.","examples":["github.com"]},"verdict":{"type":"string","enum":["deliverable","undeliverable","risky","unknown"],"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.","examples":["deliverable"]},"reason":{"type":"string","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"],"description":"Why the verdict is what it is.","examples":["mailbox_exists"]},"syntax_valid":{"type":"boolean","description":"The address is well-formed.","examples":[true]},"domain_exists":{"type":["boolean","null"],"description":"The domain exists in DNS; null when not looked up.","examples":[true]},"accepts_mail":{"type":["boolean","null"],"description":"The domain has somewhere to deliver mail (MX or address fallback); null when not looked up.","examples":[true]},"mx":{"type":"array","items":{"type":"object","properties":{"host":{"type":"string","description":"Mail server host.","examples":["aspmx.l.google.com"]},"priority":{"type":"integer","description":"MX preference (lower is tried first).","examples":[1]}},"required":["host","priority"],"description":"One mail server."},"description":"The domain's mail servers, in the order mail tries them.","examples":[[]]},"mail_provider":{"type":["string","null"],"description":"Who runs the domain's mail (google, microsoft, yahoo, zoho, proton, amazon_ses...); null when not recognised.","examples":["google"]},"mailbox":{"type":"object","properties":{"checked":{"type":"boolean","description":"The mail server gave a yes-or-no answer about the mailbox.","examples":[true]},"exists":{"type":["boolean","null"],"description":"The mailbox exists; null when it could not be proved.","examples":[true]},"catch_all":{"type":["boolean","null"],"description":"The server also accepted a random address on the domain; null when not tested.","examples":[false]},"smtp_code":{"type":["integer","null"],"description":"The server's reply code to the mailbox question.","examples":[250]},"smtp_message":{"type":["string","null"],"description":"The server's reply text, trimmed.","examples":["2.1.5 OK"]},"mx_host":{"type":["string","null"],"description":"The mail server that answered.","examples":["aspmx.l.google.com"]}},"required":["checked","exists","catch_all","smtp_code","smtp_message","mx_host"],"description":"What the mail server said."},"disposable":{"type":"boolean","description":"The domain is a known throwaway-mail domain.","examples":[false]},"role_account":{"type":"boolean","description":"The local part is a role (info, sales, support...), not a person.","examples":[true]},"free_provider":{"type":"boolean","description":"A free consumer mail provider (gmail.com, outlook.com...).","examples":[false]},"did_you_mean":{"type":["string","null"],"description":"A likely intended address when the domain looks like a typo of a common provider (e.g. jane@gmial.com -> jane@gmail.com); null otherwise.","examples":[null]},"disposable_list_as_of":{"type":["string","null"],"description":"Date of the disposable-domain list used.","examples":["2026-09-28"]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["Role address: it usually reaches a team or a shared inbox, not one person."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"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"]},"output_example":{"email":"support@github.com","normalized":"support@github.com","local_part":"support","domain":"github.com","domain_ascii":"github.com","verdict":"deliverable","reason":"mailbox_exists","syntax_valid":true,"domain_exists":true,"accepts_mail":true,"mx":[],"mail_provider":"google","mailbox":{"checked":true,"exists":true,"catch_all":false,"smtp_code":250,"smtp_message":"2.1.5 OK","mx_host":"aspmx.l.google.com"},"disposable":false,"role_account":true,"free_provider":false,"did_you_mean":null,"disposable_list_as_of":"2026-09-28","notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Email verification / email validation: will mail to this address arrive? Checked live at the source: syntax, the domain's DNS (MX, null MX, no such domain) and its own mail server, asked whether the mailbox exists and whether it accepts any address (catch-all). No message sent. Flags disposable domains, role accounts (info@), free providers and typos (gmial.com). Verdict: deliverable, undeliverable, risky or unknown, with the reason. Input: email.","capabilities":["email.verify","EmailVerify"],"representativeQueries":["is this email address valid and will mail to it be delivered","verify an email before sending outreach, without sending anything","check if a mailbox exists and whether the domain is catch-all or disposable","clean a lead list: flag role accounts, free providers and typos like gmial.com"],"tags":["email-verification","email-validation","deliverability","disposable-email","lead-validation","smtp","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/email/verify","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:property.context","displayName":"Everything the public record says about a US address (property.context)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/property/context","method":"POST","url":"https://hubvibe-io.com/work/property/context","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"address":{"type":"string","minLength":5,"maxLength":200,"description":"US street address with city and state or ZIP."},"lat":{"type":"number","minimum":17,"maximum":72,"description":"Latitude, instead of an address."},"lng":{"type":"number","minimum":-180,"maximum":-64,"description":"Longitude, instead of an address."},"school_radius_km":{"type":"number","minimum":0.1,"maximum":5,"description":"Schools within this radius. Default 1.5."},"superfund_radius_km":{"type":"number","minimum":0.1,"maximum":15,"description":"Superfund sites within this radius. Default 5."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"anyOf":[{"required":["address"]},{"required":["lat","lng"]}]},"input_example":{"address":"4600 Silver Hill Rd, Washington, DC 20233"},"output_schema":{"type":"object","properties":{"input":{"type":"object","properties":{"address":{"type":["string","null"],"description":"Address as sent; null when a point was sent.","examples":["4600 Silver Hill Rd, Washington, DC 20233"]},"lat":{"type":["number","null"],"description":"Latitude as sent; null when an address was sent.","examples":[38.845]},"lng":{"type":["number","null"],"description":"Longitude as sent; null when an address was sent.","examples":[-76.928]}},"required":["address","lat","lng"],"description":"What was asked."},"matched_address":{"type":["string","null"],"description":"The Census Geocoder's standardised match; null for a point.","examples":["4600 SILVER HILL RD, WASHINGTON, DC, 20233"]},"lat":{"type":"number","description":"Latitude used.","examples":[38.84505589808]},"lng":{"type":"number","description":"Longitude used.","examples":[-76.92836638093]},"geography":{"type":"object","properties":{"state":{"type":["string","null"],"description":"State.","examples":["Maryland"]},"state_fips":{"type":["string","null"],"description":"State FIPS.","examples":["24"]},"county":{"type":["string","null"],"description":"County.","examples":["Prince George's County"]},"county_fips":{"type":["string","null"],"description":"County FIPS.","examples":["24033"]},"tract":{"type":["string","null"],"description":"Census tract GEOID.","examples":["24033802405"]},"block_group":{"type":["string","null"],"description":"Block group GEOID.","examples":["240338024052"]},"place":{"type":["string","null"],"description":"City or census-designated place.","examples":["Suitland CDP"]},"zip":{"type":["string","null"],"description":"ZIP code tabulation area.","examples":["20746"]},"metro":{"type":["string","null"],"description":"Metropolitan or micropolitan area.","examples":["Washington-Arlington-Alexandria, DC-VA-MD-WV Metro Area"]},"metro_code":{"type":["string","null"],"description":"CBSA code.","examples":["47900"]},"congressional_district":{"type":["string","null"],"description":"Congressional district.","examples":["Congressional District 4"]},"school_district":{"type":["string","null"],"description":"School district.","examples":["Prince George's County Public Schools"]}},"required":["state","state_fips","county","county_fips","tract","block_group","place","zip","metro","metro_code","congressional_district","school_district"],"description":"Where the address sits (Census Geocoder)."},"hazard_risk":{"type":["object","null"],"properties":{"overall_rating":{"type":["string","null"],"description":"Composite risk rating.","examples":["Very Low"]},"overall_score":{"type":["number","null"],"description":"Composite risk score (0-100 percentile).","examples":[7.41]},"expected_annual_loss_usd":{"type":["integer","null"],"description":"Expected annual loss for the tract, all hazards.","examples":[401271]},"social_vulnerability":{"type":["string","null"],"description":"Social vulnerability rating.","examples":["Relatively High"]},"community_resilience":{"type":["string","null"],"description":"Community resilience rating.","examples":["Relatively Low"]},"hazards":{"type":"object","description":"Rating per hazard (18 hazards); null where FEMA does not rate it.","additionalProperties":{"type":["string","null"]},"examples":[{"riverine_flooding":"Very Low","hurricane":"Relatively Low","heat_wave":"Relatively Moderate"}]},"version":{"type":["string","null"],"description":"National Risk Index release.","examples":["December 2025"]},"notice":{"type":"string","description":"FEMA's required notice.","examples":["This product uses the Federal Emergency Management Agency's National Risk Index..."]}},"required":["overall_rating","overall_score","expected_annual_loss_usd","social_vulnerability","community_resilience","hazards","version","notice"],"description":"FEMA National Risk Index for the tract; null when unavailable."},"housing":{"type":["object","null"],"properties":{"median_home_value":{"type":["integer","null"],"description":"Median value of owner-occupied homes, USD.","examples":[332200]},"median_home_value_moe":{"type":["integer","null"],"description":"Margin of error of that median, USD.","examples":[24540]},"median_gross_rent":{"type":["integer","null"],"description":"Median gross rent, USD per month.","examples":[1486]},"median_household_income":{"type":["integer","null"],"description":"Median household income, USD.","examples":[70286]},"population":{"type":["integer","null"],"description":"Population.","examples":[3053]},"owner_occupied_pct":{"type":["number","null"],"description":"Share of occupied homes that are owner-occupied, %.","examples":[30.3]},"median_year_built":{"type":["integer","null"],"description":"Median year homes were built.","examples":[1969]},"vacancy_pct":{"type":["number","null"],"description":"Share of housing units vacant, %.","examples":[16.8]},"survey":{"type":"string","description":"Which survey.","examples":["ACS 5-year estimates 2020-2024 (Census Bureau)"]},"level":{"type":"string","description":"Geography of the figures.","examples":["census tract"]}},"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"],"description":"Census tract housing and income figures; null when the tract has none."},"price_trend":{"type":["object","null"],"properties":{"latest_year":{"type":"integer","description":"Latest year with an index value.","examples":[2025]},"annual_change_pct":{"type":["number","null"],"description":"Change in that year, %.","examples":[9.46]},"five_year_change_pct":{"type":["number","null"],"description":"Change over the five years to it, %.","examples":[28.31]},"source":{"type":"string","description":"Which index.","examples":["FHFA House Price Index, annual, census tract"]}},"required":["latest_year","annual_change_pct","five_year_change_pct","source"],"description":"Tract house price trend; null when FHFA publishes none for the tract."},"fair_market_rent":{"type":["object","null"],"properties":{"area":{"type":["string","null"],"description":"HUD fair market rent area.","examples":["Washington-Arlington-Alexandria, DC-VA-MD HUD Metro FMR Area"]},"studio":{"type":["integer","null"],"description":"Studio, USD/month.","examples":[1953]},"one_bedroom":{"type":["integer","null"],"description":"1 bedroom.","examples":[2015]},"two_bedroom":{"type":["integer","null"],"description":"2 bedrooms.","examples":[2246]},"three_bedroom":{"type":["integer","null"],"description":"3 bedrooms.","examples":[2835]},"four_bedroom":{"type":["integer","null"],"description":"4 bedrooms.","examples":[3332]},"zip":{"type":["object","null"],"properties":{"zip":{"type":"string","description":"ZIP.","examples":["20746"]},"studio":{"type":["integer","null"],"description":"Studio.","examples":[1720]},"one_bedroom":{"type":["integer","null"],"description":"1 bedroom.","examples":[1860]},"two_bedroom":{"type":["integer","null"],"description":"2 bedrooms.","examples":[2070]},"three_bedroom":{"type":["integer","null"],"description":"3 bedrooms.","examples":[2610]},"four_bedroom":{"type":["integer","null"],"description":"4 bedrooms.","examples":[3070]}},"required":["zip","studio","one_bedroom","two_bedroom","three_bedroom","four_bedroom"],"description":"HUD Small Area (ZIP) fair market rents; null outside metro areas that publish them."}},"required":["area","studio","one_bedroom","two_bedroom","three_bedroom","four_bedroom","zip"],"description":"HUD fair market rents (rent plus utilities); null when unavailable."},"schools":{"type":"array","items":{"type":"object","properties":{"name":{"type":["string","null"],"description":"School.","examples":["Suitland Elementary"]},"level":{"type":["string","null"],"description":"Level.","examples":["Elementary"]},"grades":{"type":["string","null"],"description":"Grade span.","examples":["PK-05"]},"enrollment":{"type":["integer","null"],"description":"Students enrolled.","examples":[514]},"students_per_teacher":{"type":["number","null"],"description":"Students per teacher.","examples":[14.94]},"charter":{"type":"boolean","description":"Charter school.","examples":[false]},"district":{"type":["string","null"],"description":"District.","examples":["Prince George's County Public Schools"]},"city":{"type":["string","null"],"description":"City.","examples":["Suitland"]},"distance_km":{"type":["number","null"],"description":"Straight-line distance.","examples":[0.88]}},"required":["name","level","grades","enrollment","students_per_teacher","charter","district","city","distance_km"],"description":"A public school (NCES 2024-25)."},"description":"Public schools within the radius, nearest first.","examples":[[]]},"school_radius_km":{"type":"number","description":"Radius searched for schools.","examples":[1.5]},"walkability":{"type":["object","null"],"properties":{"index":{"type":["number","null"],"description":"EPA National Walkability Index, 1 (least) to 20 (most).","examples":[11.33]},"meters_to_transit":{"type":["number","null"],"description":"Distance to the nearest transit stop, metres.","examples":[926.71]},"block_group":{"type":["string","null"],"description":"Block group the index describes.","examples":["240338024051"]}},"required":["index","meters_to_transit","block_group"],"description":"EPA walkability; null when unavailable."},"superfund_sites":{"type":"array","items":{"type":"object","properties":{"name":{"type":["string","null"],"description":"Site.","examples":["SAN JACINTO FOUNDRY"]},"address":{"type":["string","null"],"description":"Address.","examples":["3617 BAER STREET"]},"city":{"type":["string","null"],"description":"City.","examples":["HOUSTON"]},"state":{"type":["string","null"],"description":"State.","examples":["TX"]},"status":{"type":["string","null"],"description":"NPL status.","examples":["CURRENTLY ON THE FINAL NPL"]},"url":{"type":["string","null"],"description":"EPA facility page.","examples":["https://ofmpub.epa.gov/frs_public2/fii_query_detail.disp_program_facility?p_registry_id=110005037361"]},"distance_km":{"type":["number","null"],"description":"Straight-line distance.","examples":[4.61]}},"required":["name","address","city","state","status","url","distance_km"],"description":"A Superfund (NPL) site."},"description":"Superfund sites within the radius, nearest first.","examples":[[]]},"superfund_radius_km":{"type":"number","description":"Radius searched for Superfund sites.","examples":[5.0]},"sources":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Source.","examples":["FEMA National Flood Hazard Layer"]},"url":{"type":"string","description":"Where it is published.","examples":["https://www.fema.gov/flood-maps/national-flood-hazard-layer"]}},"required":["name","url"],"description":"A source."},"description":"Every source this answer draws on."},"sections_failed":{"type":"array","items":{"type":"string","description":"A section whose source did not answer; that section is null or empty.","examples":["walkability"]},"description":"Sections that could not be fetched this time; empty when none.","examples":[[]]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["FEMA has no digital flood map at this point."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"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"]},"output_example":{"input":{"address":"4600 Silver Hill Rd, Washington, DC 20233","lat":38.845,"lng":-76.928},"matched_address":"4600 SILVER HILL RD, WASHINGTON, DC, 20233","lat":38.84505589808,"lng":-76.92836638093,"geography":{"state":"Maryland","state_fips":"24","county":"Prince George's County","county_fips":"24033","tract":"24033802405","block_group":"240338024052","place":"Suitland CDP","zip":"20746","metro":"Washington-Arlington-Alexandria, DC-VA-MD-WV Metro Area","metro_code":"47900","congressional_district":"Congressional District 4","school_district":"Prince George's County Public Schools"},"hazard_risk":{"overall_rating":"Very Low","overall_score":7.41,"expected_annual_loss_usd":401271,"social_vulnerability":"Relatively High","community_resilience":"Relatively Low","hazards":{"riverine_flooding":"Very Low","hurricane":"Relatively Low","heat_wave":"Relatively Moderate"},"version":"December 2025","notice":"This product uses the Federal Emergency Management Agency's National Risk Index..."},"housing":{"median_home_value":332200,"median_home_value_moe":24540,"median_gross_rent":1486,"median_household_income":70286,"population":3053,"owner_occupied_pct":30.3,"median_year_built":1969,"vacancy_pct":16.8,"survey":"ACS 5-year estimates 2020-2024 (Census Bureau)","level":"census tract"},"price_trend":{"latest_year":2025,"annual_change_pct":9.46,"five_year_change_pct":28.31,"source":"FHFA House Price Index, annual, census tract"},"fair_market_rent":{"area":"Washington-Arlington-Alexandria, DC-VA-MD HUD Metro FMR Area","studio":1953,"one_bedroom":2015,"two_bedroom":2246,"three_bedroom":2835,"four_bedroom":3332,"zip":{"zip":"20746","studio":1720,"one_bedroom":1860,"two_bedroom":2070,"three_bedroom":2610,"four_bedroom":3070}},"schools":[],"school_radius_km":1.5,"walkability":{"index":11.33,"meters_to_transit":926.71,"block_group":"240338024051"},"superfund_sites":[],"superfund_radius_km":5.0,"sources":[{"name":"FEMA National Flood Hazard Layer","url":"https://www.fema.gov/flood-maps/national-flood-hazard-layer"}],"sections_failed":[],"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Real estate data for any US address: FEMA flood and 17 other hazard risk ratings with expected annual loss, median home value, rent, income, ownership and vacancy (Census), price trend (FHFA), fair market rents (HUD), nearby public schools (NCES), walkability (EPA) and Superfund sites nearby, plus tract, county, ZIP and districts, all from federal sources in one call. Input: address, or lat and lng.","capabilities":["property.context","PropertyContext"],"representativeQueries":["flood zone, hazard risk and neighbourhood facts for a US address","flood, hurricane and wildfire risk ratings and the fair market rents for an address","median home value, rent and income for the census tract of an address","public schools and Superfund sites near a property"],"tags":["real-estate","property-data","flood-risk","home-value","neighborhood","schools","census","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/property/context","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:travel.flight_status","displayName":"Flight and airport status right now (travel.flight_status)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/travel/flight_status","method":"POST","url":"https://hubvibe-io.com/work/travel/flight_status","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"airport":{"type":"string","minLength":3,"maxLength":4,"description":"IATA (OSL, JFK) or ICAO (ENGM, KJFK) code."},"callsign":{"type":"string","minLength":2,"maxLength":8,"description":"Callsign as broadcast (SAS1411, UAL123): the aircraft's live position."},"flight":{"type":"string","minLength":2,"maxLength":8,"description":"Flight number to pick from the board (SK344)."},"direction":{"type":"string","enum":["both","departures","arrivals"],"description":"Board direction. Default both."},"hours_ahead":{"type":"integer","minimum":1,"maximum":12,"description":"Board window ahead, hours. Default 3."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"anyOf":[{"required":["airport"]},{"required":["callsign"]}]},"input_example":{"airport":"OSL","hours_ahead":2},"output_schema":{"type":"object","properties":{"query":{"type":"object","properties":{"airport":{"type":["string","null"],"description":"Airport code sent.","examples":["OSL"]},"callsign":{"type":["string","null"],"description":"Callsign sent.","examples":["SAS51D"]},"flight":{"type":["string","null"],"description":"Flight filter.","examples":["SK344"]},"direction":{"type":"string","enum":["both","departures","arrivals"],"description":"Board direction.","examples":["both"]},"hours_ahead":{"type":"integer","description":"Board window ahead, hours.","examples":[3]}},"required":["airport","callsign","flight","direction","hours_ahead"],"description":"What was asked."},"airport":{"type":["object","null"],"properties":{"iata":{"type":["string","null"],"description":"IATA code.","examples":["OSL"]},"icao":{"type":["string","null"],"description":"ICAO code.","examples":["ENGM"]},"name":{"type":"string","description":"Airport.","examples":["Oslo-Gardermoen International Airport"]},"city":{"type":["string","null"],"description":"City.","examples":["Oslo (Gardermoen)"]},"country":{"type":"string","description":"ISO country.","examples":["NO"]},"lat":{"type":"number","description":"Latitude.","examples":[60.1939]},"lon":{"type":"number","description":"Longitude.","examples":[11.1004]}},"required":["iata","icao","name","city","country","lat","lon"],"description":"The airport (OurAirports, public domain); null for a callsign-only query."},"delays":{"type":["object","null"],"properties":{"status":{"type":"string","enum":["normal","delays","ground_delay","ground_stop","closed"],"description":"Overall FAA status.","examples":["ground_delay"]},"ground_stop":{"type":["object","null"],"description":"Ground stop in force.","examples":[null]},"ground_delay":{"type":["object","null"],"description":"Ground delay program: reason, from, until, avg_minutes, max_minutes.","examples":[{"reason":"low ceilings","from":"2026-09-28T15:00:00Z","until":"2026-09-28T23:29:00Z","avg_minutes":44,"max_minutes":120}]},"closure":{"type":["object","null"],"description":"Closure notice.","examples":[null]},"arrival_delay":{"type":["object","null"],"description":"Arrival delays.","examples":[null]},"departure_delay":{"type":["object","null"],"description":"Departure delays.","examples":[null]},"deicing":{"type":"boolean","description":"De-icing in progress.","examples":[false]},"runways":{"type":["object","null"],"properties":{"arrival":{"type":["string","null"],"description":"Arrival runways.","examples":["28L/28R"]},"departure":{"type":["string","null"],"description":"Departure runways.","examples":["28L/28R"]},"arrival_rate_per_hour":{"type":["integer","null"],"description":"Arrival rate.","examples":[30]}},"required":["arrival","departure","arrival_rate_per_hour"],"description":"Runway configuration; null when not published."},"notices":{"type":"array","items":{"type":"string","description":"A notice.","examples":["!SFO 09/165 ..."]},"description":"Free-form FAA notices.","examples":[[]]},"source":{"type":"string","description":"Source.","examples":["FAA NAS Status"]}},"required":["status","ground_stop","ground_delay","closure","arrival_delay","departure_delay","deicing","runways","notices","source"],"description":"FAA National Airspace System status (US airports); null elsewhere."},"board":{"type":["object","null"],"properties":{"departures":{"type":"array","items":{"type":"object","properties":{"flight":{"type":["string","null"],"description":"Flight number.","examples":["SK344"]},"airline":{"type":["string","null"],"description":"Airline code.","examples":["SK"]},"direction":{"type":["string","null"],"description":"D or A.","examples":["D"]},"other_airport":{"type":["string","null"],"description":"Destination or origin (IATA).","examples":["TRD"]},"other_airport_name":{"type":["string","null"],"description":"Its name.","examples":["Trondheim Airport, Værnes"]},"scheduled":{"type":["string","null"],"description":"Scheduled time (UTC).","examples":["2026-09-28T11:15:00Z"]},"status":{"type":["string","null"],"description":"departed, arrived, new time, new info or cancelled.","examples":["departed"]},"status_time":{"type":["string","null"],"description":"Time the status refers to (UTC).","examples":["2026-09-28T11:22:38Z"]},"gate":{"type":["string","null"],"description":"Gate.","examples":["A20"]},"check_in":{"type":["string","null"],"description":"Check-in rows.","examples":["4-6"]},"belt":{"type":["string","null"],"description":"Baggage belt (arrivals).","examples":["3"]},"delayed":{"type":"boolean","description":"Marked delayed.","examples":[false]},"sector":{"type":["string","null"],"description":"domestic, schengen or international.","examples":["domestic"]}},"required":["flight","airline","direction","other_airport","other_airport_name","scheduled","status","status_time","gate","check_in","belt","delayed","sector"],"description":"One flight on the board."},"description":"Departures, by scheduled time.","examples":[[]]},"arrivals":{"type":"array","items":{"type":"object","properties":{"flight":{"type":["string","null"],"description":"Flight number.","examples":["SK344"]},"airline":{"type":["string","null"],"description":"Airline code.","examples":["SK"]},"direction":{"type":["string","null"],"description":"D or A.","examples":["D"]},"other_airport":{"type":["string","null"],"description":"Destination or origin (IATA).","examples":["TRD"]},"other_airport_name":{"type":["string","null"],"description":"Its name.","examples":["Trondheim Airport, Værnes"]},"scheduled":{"type":["string","null"],"description":"Scheduled time (UTC).","examples":["2026-09-28T11:15:00Z"]},"status":{"type":["string","null"],"description":"departed, arrived, new time, new info or cancelled.","examples":["departed"]},"status_time":{"type":["string","null"],"description":"Time the status refers to (UTC).","examples":["2026-09-28T11:22:38Z"]},"gate":{"type":["string","null"],"description":"Gate.","examples":["A20"]},"check_in":{"type":["string","null"],"description":"Check-in rows.","examples":["4-6"]},"belt":{"type":["string","null"],"description":"Baggage belt (arrivals).","examples":["3"]},"delayed":{"type":"boolean","description":"Marked delayed.","examples":[false]},"sector":{"type":["string","null"],"description":"domestic, schengen or international.","examples":["domestic"]}},"required":["flight","airline","direction","other_airport","other_airport_name","scheduled","status","status_time","gate","check_in","belt","delayed","sector"],"description":"One flight on the board."},"description":"Arrivals, by scheduled time.","examples":[[]]},"last_update":{"type":["string","null"],"description":"When Avinor last updated the board.","examples":["2026-09-28T12:29:26.891757Z"]},"attribution":{"type":"string","description":"Required credit.","examples":["Flight data from Avinor"]},"attribution_url":{"type":"string","description":"Credit link.","examples":["https://www.avinor.no"]}},"required":["departures","arrivals","last_update","attribution","attribution_url"],"description":"Live board (Norway, Avinor); null elsewhere."},"weather":{"type":["object","null"],"properties":{"metar":{"type":["string","null"],"description":"Raw METAR.","examples":["METAR ENGM 281220Z 17008KT 9999 -RA BKN012 14/12 Q1017"]},"taf":{"type":["string","null"],"description":"Raw TAF.","examples":["TAF ENGM 281100Z 2812/2912 ..."]},"flight_category":{"type":["string","null"],"description":"VFR, MVFR, IFR or LIFR.","examples":["MVFR"]},"temperature_c":{"type":["number","null"],"description":"Temperature.","examples":[14]},"dewpoint_c":{"type":["number","null"],"description":"Dew point.","examples":[12]},"wind_dir_deg":{"type":["number","string","null"],"description":"Wind direction (VRB when variable).","examples":[170]},"wind_kt":{"type":["number","null"],"description":"Wind speed.","examples":[8]},"gust_kt":{"type":["number","null"],"description":"Gusts.","examples":[24]},"visibility":{"type":["string","null"],"description":"Visibility as reported.","examples":["6+"]},"weather":{"type":["string","null"],"description":"Present weather.","examples":["-RA"]},"observed_at":{"type":["string","null"],"description":"Report time.","examples":["2026-09-28T12:20:00.000Z"]},"source":{"type":"string","description":"Source.","examples":["NOAA Aviation Weather Center"]}},"required":["metar","taf","flight_category","temperature_c","dewpoint_c","wind_dir_deg","wind_kt","gust_kt","visibility","weather","observed_at","source"],"description":"Airport weather; null without a METAR."},"aircraft":{"type":"array","items":{"type":"object","properties":{"callsign":{"type":["string","null"],"description":"Callsign.","examples":["SAS51D"]},"hex":{"type":["string","null"],"description":"ICAO 24-bit address.","examples":["4cac79"]},"registration":{"type":["string","null"],"description":"Registration.","examples":["EI-SIJ"]},"type":{"type":["string","null"],"description":"Aircraft type.","examples":["A20N"]},"lat":{"type":"number","description":"Latitude.","examples":[59.561]},"lon":{"type":"number","description":"Longitude.","examples":[10.538]},"altitude_ft":{"type":["number","null"],"description":"Barometric altitude.","examples":[36975]},"on_ground":{"type":"boolean","description":"On the ground.","examples":[false]},"ground_speed_kt":{"type":["number","null"],"description":"Ground speed.","examples":[486.8]},"track_deg":{"type":["number","null"],"description":"Track.","examples":[76.8]},"vertical_rate_fpm":{"type":["number","null"],"description":"Climb/descent rate.","examples":[0]},"squawk":{"type":["string","null"],"description":"Squawk.","examples":["6220"]},"distance_km":{"type":["number","null"],"description":"Distance from the airport.","examples":[12.4]}},"required":["callsign","hex","registration","type","lat","lon","altitude_ft","on_ground","ground_speed_kt","track_deg","vertical_rate_fpm","squawk","distance_km"],"description":"An aircraft (adsb.lol, ODbL)."},"description":"Aircraft, nearest first.","examples":[[]]},"aircraft_scope":{"type":["string","null"],"description":"What the aircraft list covers.","examples":["within 25 nautical miles"]},"coverage":{"type":"object","properties":{"delays":{"type":"boolean","description":"FAA covers this airport.","examples":[false]},"board":{"type":"boolean","description":"Avinor covers it.","examples":[true]},"weather":{"type":"boolean","description":"A METAR station exists.","examples":[true]},"aircraft":{"type":"boolean","description":"Live positions.","examples":[true]}},"required":["delays","board","weather","aircraft"],"description":"Which sources cover this query."},"attribution":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string","description":"Credit.","examples":["Flight data from Avinor"]},"url":{"type":"string","description":"Link.","examples":["https://www.avinor.no"]}},"required":["text","url"],"description":"A required credit."},"description":"Credits to show with the data.","examples":[[]]},"sections_failed":{"type":"array","items":{"type":"string","description":"A section whose source did not answer.","examples":["aircraft"]},"description":"Empty when none.","examples":[[]]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["Live boards cover Norway."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","airport","delays","board","weather","aircraft","aircraft_scope","coverage","attribution","sections_failed","notes","checked_at"]},"output_example":{"query":{"airport":"OSL","callsign":"SAS51D","flight":"SK344","direction":"both","hours_ahead":3},"airport":{"iata":"OSL","icao":"ENGM","name":"Oslo-Gardermoen International Airport","city":"Oslo (Gardermoen)","country":"NO","lat":60.1939,"lon":11.1004},"delays":{"status":"ground_delay","ground_stop":null,"ground_delay":{"reason":"low ceilings","from":"2026-09-28T15:00:00Z","until":"2026-09-28T23:29:00Z","avg_minutes":44,"max_minutes":120},"closure":null,"arrival_delay":null,"departure_delay":null,"deicing":false,"runways":{"arrival":"28L/28R","departure":"28L/28R","arrival_rate_per_hour":30},"notices":[],"source":"FAA NAS Status"},"board":{"departures":[],"arrivals":[],"last_update":"2026-09-28T12:29:26.891757Z","attribution":"Flight data from Avinor","attribution_url":"https://www.avinor.no"},"weather":{"metar":"METAR ENGM 281220Z 17008KT 9999 -RA BKN012 14/12 Q1017","taf":"TAF ENGM 281100Z 2812/2912 ...","flight_category":"MVFR","temperature_c":14,"dewpoint_c":12,"wind_dir_deg":170,"wind_kt":8,"gust_kt":24,"visibility":"6+","weather":"-RA","observed_at":"2026-09-28T12:20:00.000Z","source":"NOAA Aviation Weather Center"},"aircraft":[],"aircraft_scope":"within 25 nautical miles","coverage":{"delays":false,"board":true,"weather":true,"aircraft":true},"attribution":[],"sections_failed":[],"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Flight status and airport delays, live: by airport code, FAA ground stops and delay programs with average and max delay (US), live departure and arrival boards with gates and status (Norway), current METAR and TAF weather (any ICAO airport) and aircraft overhead; by callsign, the aircraft's live position, altitude and speed. Input: airport (IATA or ICAO) or callsign; optional flight, direction, hours_ahead.","capabilities":["travel.flight_status","TravelFlightStatus"],"representativeQueries":["is there a ground stop or delay program at SFO right now","live departures board for Oslo airport with gates and status","where is flight SAS1411 right now, altitude and speed","current METAR and TAF weather at an airport"],"tags":["flight-status","airport-delays","flight-tracker","aviation","metar","travel","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/travel/flight_status","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:company.enrich","displayName":"Company profile from a domain or a name (company.enrich)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/company/enrich","method":"POST","url":"https://hubvibe-io.com/work/company/enrich","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"domain":{"type":"string","minLength":4,"maxLength":253,"description":"Company domain (stripe.com) or its URL."},"name":{"type":"string","minLength":2,"maxLength":120,"description":"Company name (Toyota), instead of a domain."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"anyOf":[{"required":["domain"]},{"required":["name"]}]},"input_example":{"domain":"stripe.com"},"output_schema":{"type":"object","properties":{"query":{"type":"object","properties":{"domain":{"type":["string","null"],"description":"Domain asked, normalised.","examples":["stripe.com"]},"name":{"type":["string","null"],"description":"Name asked.","examples":["Stripe"]}},"required":["domain","name"],"description":"What was asked."},"company":{"type":"object","properties":{"name":{"type":["string","null"],"description":"Common name.","examples":["Stripe"]},"legal_name":{"type":["string","null"],"description":"Registered legal name.","examples":["STRIPE, LLC"]},"description":{"type":["string","null"],"description":"One-line description.","examples":["Irish-American payment technology company"]},"website":{"type":["string","null"],"description":"Official website.","examples":["https://stripe.com/"]},"domain":{"type":["string","null"],"description":"Domain.","examples":["stripe.com"]},"founded":{"type":["string","null"],"description":"Founding date (year, month or day precision).","examples":["2010"]},"employees":{"type":["object","null"],"properties":{"count":{"type":"integer","description":"Headcount.","examples":[8000]},"as_of":{"type":["string","null"],"description":"Date of the figure.","examples":["2022"]},"source":{"type":"string","description":"Source.","examples":["wikidata"]}},"required":["count","as_of","source"],"description":"Latest known headcount; null when unknown."},"industries":{"type":"array","items":{"type":"string","description":"Industry.","examples":["financial services"]},"description":"Industries.","examples":[["financial services"]]},"headquarters":{"type":"object","properties":{"city":{"type":["string","null"],"description":"City.","examples":["San Francisco"]},"country":{"type":["string","null"],"description":"Country.","examples":["United States"]},"country_code":{"type":["string","null"],"description":"ISO 3166 code.","examples":["US"]},"address":{"type":["string","null"],"description":"Registered headquarters address.","examples":["354 Oyster Point Boulevard, South San Francisco, 94080"]}},"required":["city","country","country_code","address"],"description":"Headquarters."},"parent":{"type":["string","null"],"description":"Parent organisation.","examples":["Alphabet Inc."]},"ceo":{"type":["string","null"],"description":"Chief executive.","examples":["Patrick Collison"]},"founders":{"type":"array","items":{"type":"string","description":"Founder.","examples":["Patrick Collison"]},"description":"Founders.","examples":[[]]},"logo_url":{"type":["string","null"],"description":"Logo file.","examples":["https://commons.wikimedia.org/wiki/Special:FilePath/Stripe_Logo.svg"]},"status":{"type":["string","null"],"description":"Legal entity status (LEI register).","examples":["ACTIVE"]},"legal_form":{"type":["string","null"],"description":"Legal form.","examples":["Limited Liability Company"]},"jurisdiction":{"type":["string","null"],"description":"Jurisdiction.","examples":["US-DE"]}},"required":["name","legal_name","description","website","domain","founded","employees","industries","headquarters","parent","ceo","founders","logo_url","status","legal_form","jurisdiction"],"description":"The company."},"identifiers":{"type":"object","properties":{"wikidata":{"type":["string","null"],"description":"Wikidata item.","examples":["Q7624104"]},"lei":{"type":["string","null"],"description":"Legal Entity Identifier.","examples":["549300CLHGIPTCYHQ143"]},"cik":{"type":["string","null"],"description":"SEC Central Index Key.","examples":["1691342"]},"registration_number":{"type":["string","null"],"description":"Company registration number.","examples":["4675506"]},"registration_authority":{"type":["string","null"],"description":"Registration authority id (GLEIF RA list).","examples":["RA000602"]},"listings":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string","description":"Ticker.","examples":["AAPL"]},"exchange":{"type":["string","null"],"description":"Exchange.","examples":["Nasdaq"]}},"required":["ticker","exchange"],"description":"A listing."},"description":"Stock listings.","examples":[[]]},"sec_tickers":{"type":"array","items":{"type":"string","description":"Ticker.","examples":["AAPL"]},"description":"Tickers on SEC file.","examples":[[]]},"sic":{"type":["string","null"],"description":"SIC code.","examples":["3571"]},"sic_description":{"type":["string","null"],"description":"SIC industry.","examples":["Electronic Computers"]},"state_of_incorporation":{"type":["string","null"],"description":"State of incorporation (SEC).","examples":["CA"]}},"required":["wikidata","lei","cik","registration_number","registration_authority","listings","sec_tickers","sic","sic_description","state_of_incorporation"],"description":"Identifiers."},"socials":{"type":"object","properties":{"x":{"type":["string","null"],"description":"x account.","examples":["https://x.com/stripe"]},"linkedin":{"type":["string","null"],"description":"linkedin account.","examples":[null]},"facebook":{"type":["string","null"],"description":"facebook account.","examples":[null]},"instagram":{"type":["string","null"],"description":"instagram account.","examples":[null]},"github":{"type":["string","null"],"description":"github account.","examples":[null]},"youtube":{"type":["string","null"],"description":"youtube account.","examples":[null]}},"required":["x","linkedin","facebook","instagram","github","youtube"],"description":"Official social accounts."},"sources":{"type":"array","items":{"type":"string","description":"A source used.","examples":["Wikidata (CC0)"]},"description":"Sources that answered.","examples":[["Wikidata (CC0)"]]},"field_sources":{"type":"object","additionalProperties":{"type":"string"},"description":"Which source gave each chosen field.","examples":[{"name":"wikidata","legal_name":"lei_register"}]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["Homepage not read."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","company","identifiers","socials","sources","field_sources","notes","checked_at"]},"output_example":{"query":{"domain":"stripe.com","name":"Stripe"},"company":{"name":"Stripe","legal_name":"STRIPE, LLC","description":"Irish-American payment technology company","website":"https://stripe.com/","domain":"stripe.com","founded":"2010","employees":{"count":8000,"as_of":"2022","source":"wikidata"},"industries":["financial services"],"headquarters":{"city":"San Francisco","country":"United States","country_code":"US","address":"354 Oyster Point Boulevard, South San Francisco, 94080"},"parent":"Alphabet Inc.","ceo":"Patrick Collison","founders":[],"logo_url":"https://commons.wikimedia.org/wiki/Special:FilePath/Stripe_Logo.svg","status":"ACTIVE","legal_form":"Limited Liability Company","jurisdiction":"US-DE"},"identifiers":{"wikidata":"Q7624104","lei":"549300CLHGIPTCYHQ143","cik":"1691342","registration_number":"4675506","registration_authority":"RA000602","listings":[],"sec_tickers":[],"sic":"3571","sic_description":"Electronic Computers","state_of_incorporation":"CA"},"socials":{"x":"https://x.com/stripe","linkedin":null,"facebook":null,"instagram":null,"github":null,"youtube":null},"sources":["Wikidata (CC0)"],"field_sources":{"name":"wikidata","legal_name":"lei_register"},"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Company enrichment / firmographics by domain or name: legal and common name, founded, headcount with date, industries, headquarters, parent, CEO and founders, stock listings, LEI, SEC CIK, registration number, legal form and status, official social accounts and logo. Sources: Wikidata, the global LEI register, SEC EDGAR and the company's own site; every field names its source. Input: domain or name.","capabilities":["company.enrich","CompanyEnrich"],"representativeQueries":["company profile from a domain: legal name, founded, headcount, industry, headquarters","LEI, CIK and stock tickers for a company name","official LinkedIn and X accounts of a company","enrich a lead's company from its email domain"],"tags":["company-enrichment","firmographics","company-data","lead-enrichment","b2b","lei","org-lookup","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/company/enrich","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:sanctions.screen","displayName":"Screen a name against US, UK and EU sanctions lists (sanctions.screen)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/sanctions/screen","method":"POST","url":"https://hubvibe-io.com/work/sanctions/screen","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"name":{"type":"string","minLength":2,"maxLength":200,"description":"The person, company, vessel or aircraft name, in any word order."},"type":{"type":"string","enum":["any","person","entity","vessel","aircraft"],"description":"Only match this kind of listing. Default any."},"country":{"type":"string","maxLength":60,"description":"Optional country (Iran, Russia): a listing that records only other countries is dropped."},"birth_year":{"type":"integer","minimum":1880,"maximum":2030,"description":"Optional, for people: a listing whose recorded birth years are all more than a year away is dropped."},"threshold":{"type":"number","minimum":0.6,"maximum":1,"description":"Minimum match score, 0.6-1. Default 0.85."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Most matches returned, 1-50. Default 10."},"lists":{"type":"array","items":{"type":"string","enum":["ofac_sdn","ofac_consolidated","uk","eu"]},"description":"Optional subset of lists to screen. Default all four."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["name"],"additionalProperties":false},"input_example":{"name":"Rosneft","type":"entity"},"output_schema":{"type":"object","properties":{"query":{"type":"object","properties":{"name":{"type":"string","description":"The name screened.","examples":["Rosneft"]},"type":{"type":"string","enum":["any","person","entity","vessel","aircraft"],"description":"The kind of listing matched.","examples":["entity"]},"threshold":{"type":"number","description":"Minimum match score used.","examples":[0.85]},"limit":{"type":"integer","description":"Most matches returned.","examples":[10]},"lists":{"type":["array","null"],"items":{"type":"string"},"description":"The lists asked for; null means all four.","examples":[null]},"country":{"type":["string","null"],"description":"Country filter, as given.","examples":["Russia"]},"birth_year":{"type":["integer","null"],"description":"Birth-year filter, as given.","examples":[1952]}},"required":["name","type","threshold","limit","lists","country","birth_year"],"description":"The screening request."},"verdict":{"type":"string","enum":["potential_match","no_match","incomplete"],"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).","examples":["potential_match"]},"match_count":{"type":"integer","description":"Number of matches returned.","examples":[3]},"matches":{"type":"array","items":{"type":"object","properties":{"list":{"type":"string","enum":["ofac_sdn","ofac_consolidated","uk","eu"],"description":"Which list.","examples":["ofac_sdn"]},"list_name":{"type":"string","description":"The list's name.","examples":["OFAC Specially Designated Nationals (SDN) List"]},"id":{"type":"string","description":"The list's own id for the entry.","examples":["12345"]},"name":{"type":"string","description":"The entry's primary name.","examples":["ROSNEFT"]},"matched_name":{"type":"string","description":"The name or alias that matched.","examples":["ROSNEFT"]},"score":{"type":"number","description":"Match score, 0-1 (1 = the same words).","examples":[1.0]},"type":{"type":"string","enum":["person","entity","vessel","aircraft"],"description":"Kind of listing.","examples":["entity"]},"programs":{"type":"array","items":{"type":"string","description":"A sanctions programme or regime.","examples":["RUSSIA-EO14024"]},"description":"Programmes the entry is listed under.","examples":[[]]},"countries":{"type":"array","items":{"type":"string","description":"A country the list records.","examples":["Russia"]},"description":"Countries the list records (address, nationality, birth).","examples":[[]]},"birth_dates":{"type":"array","items":{"type":"string","description":"A date of birth as the list records it.","examples":["07 Oct 1952"]},"description":"Dates of birth the list records.","examples":[[]]},"un_reference":{"type":["string","null"],"description":"UN Security Council reference, when the list records one.","examples":["TAi.002"]},"listed_on":{"type":["string","null"],"description":"Designation date, when the list records it.","examples":["2014-07-16"]},"source_url":{"type":"string","description":"Where the list is published.","examples":["https://sanctionssearch.ofac.treas.gov/"]}},"required":["list","list_name","id","name","matched_name","score","type","programs","countries","birth_dates","un_reference","listed_on","source_url"],"description":"One listing."},"description":"Matches, best first.","examples":[[]]},"lists":{"type":"array","items":{"type":"object","properties":{"list":{"type":"string","description":"List id.","examples":["ofac_sdn"]},"name":{"type":"string","description":"List name.","examples":["OFAC Specially Designated Nationals (SDN) List"]},"publisher":{"type":"string","description":"Who publishes it.","examples":["US Department of the Treasury, Office of Foreign Assets Control"]},"license":{"type":"string","description":"Its reuse licence.","examples":["US government work (public domain)"]},"source_url":{"type":"string","description":"Where it is published.","examples":["https://sanctionssearch.ofac.treas.gov/"]},"as_of":{"type":["string","null"],"description":"The list's own publication date.","examples":["2026-09-23"]},"entries":{"type":"integer","description":"Entries loaded from it.","examples":[19391]},"loaded":{"type":"boolean","description":"The list was screened.","examples":[true]}},"required":["list","name","publisher","license","source_url","as_of","entries","loaded"],"description":"One list screened."},"description":"Every list asked for, with its date.","examples":[[]]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["A potential match is a lead to review, not a determination."]},"description":"Caveats.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","verdict","match_count","matches","lists","notes","checked_at"]},"output_example":{"query":{"name":"Rosneft","type":"entity","threshold":0.85,"limit":10,"lists":null,"country":"Russia","birth_year":1952},"verdict":"potential_match","match_count":3,"matches":[],"lists":[],"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":180,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Sanctions screening (AML/KYC): screen a person, company, vessel or aircraft against the OFAC SDN and consolidated lists, the UK Sanctions List and the EU financial sanctions list, read from the governments' own files with each list's date returned. Fuzzy and word-order free: aliases and typos match, a different surname does not. Each hit: list, programmes, countries, birth dates, UN reference. Input: name; optional type, country, birth_year.","capabilities":["sanctions.screen","SanctionsScreen"],"representativeQueries":["is this person or company on the OFAC sanctions list","screen a counterparty name against US, UK and EU sanctions before paying","sanctions check a vessel or shipping company","AML KYB screening: find sanctioned aliases and misspellings of a name"],"tags":["sanctions-screening","aml","kyc","ofac","compliance","watchlist","due-diligence","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/sanctions/screen","method":"POST","compound":false,"max_seconds":180},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:phone.parse","displayName":"Phone number intelligence: valid, where, which network, what type (phone.parse)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/phone/parse","method":"POST","url":"https://hubvibe-io.com/work/phone/parse","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"number":{"type":"string","minLength":3,"maxLength":40,"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","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["number"],"additionalProperties":false},"input_example":{"number":"+44 20 7031 3000"},"output_schema":{"type":"object","properties":{"input":{"type":"object","properties":{"number":{"type":"string","description":"The number as given.","examples":["+44 20 7031 3000"]},"region":{"type":["string","null"],"description":"Region used for a national number.","examples":["GB"]}},"required":["number","region"],"description":"The request."},"valid":{"type":"boolean","description":"A valid number in its country's numbering plan.","examples":[true]},"possible":{"type":"boolean","description":"The length is possible for the country.","examples":[true]},"e164":{"type":"string","description":"E.164 form.","examples":["+442070313000"]},"international":{"type":"string","description":"International format.","examples":["+44 20 7031 3000"]},"national":{"type":"string","description":"National format.","examples":["020 7031 3000"]},"country_code":{"type":"integer","description":"Calling code.","examples":[44]},"region":{"type":["string","null"],"description":"ISO country code the number belongs to.","examples":["GB"]},"country":{"type":["string","null"],"description":"Country name.","examples":["United Kingdom"]},"location":{"type":["string","null"],"description":"Area the number was issued to (city or region); null when unknown.","examples":["London"]},"carrier":{"type":["string","null"],"description":"Network the number range was issued to; null when not recorded (common for fixed lines).","examples":["T-Mobile"]},"line_type":{"type":"string","enum":["fixed_line","mobile","fixed_line_or_mobile","toll_free","premium_rate","shared_cost","voip","personal_number","pager","uan","voicemail","unknown"],"description":"Kind of line.","examples":["fixed_line"]},"time_zones":{"type":"array","items":{"type":"string","description":"An IANA time zone.","examples":["Europe/London"]},"description":"Time zones the number's area uses.","examples":[["Europe/London"]]},"metadata_version":{"type":"string","description":"libphonenumber metadata version used.","examples":["9.0.40"]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["Answered from the number alone."]},"description":"Caveats.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["input","valid","possible","e164","international","national","country_code","region","country","location","carrier","line_type","time_zones","metadata_version","notes","checked_at"]},"output_example":{"input":{"number":"+44 20 7031 3000","region":"GB"},"valid":true,"possible":true,"e164":"+442070313000","international":"+44 20 7031 3000","national":"020 7031 3000","country_code":44,"region":"GB","country":"United Kingdom","location":"London","carrier":"T-Mobile","line_type":"fixed_line","time_zones":["Europe/London"],"metadata_version":"9.0.40","notes":[],"checked_at":"2026-09-26T18:00:00Z"},"returns":"input{}, valid, possible, e164, international, national, country_code, region, country, location, carrier, line_type, time_zones[], metadata_version, notes[], checked_at.","max_seconds":15,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Phone number validation and lookup: valid or not, country and area, the carrier the range was issued to, line type (mobile, landline, toll-free, VoIP, premium), time zones and E.164, international and national formats, from Google's libphonenumber numbering plans. Nothing is dialled and the owner is never looked up. Input: number; optional region for a national-format number.","capabilities":["phone.parse","PhoneParse"],"representativeQueries":["is this phone number valid, which country and carrier","is this number mobile, landline, VoIP or toll-free","format a phone number to E.164 and find its time zone","check a lead's phone number before calling or texting"],"tags":["phone-validation","phone-lookup","carrier-lookup","e164","line-type","kyc","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/phone/parse","method":"POST","compound":false,"max_seconds":15},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:ip.lookup","displayName":"IP address lookup: location, network owner, reverse DNS (ip.lookup)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/ip/lookup","method":"POST","url":"https://hubvibe-io.com/work/ip/lookup","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"ip":{"type":"string","minLength":2,"maxLength":45,"description":"One IPv4 or IPv6 address, such as 8.8.8.8."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["ip"],"additionalProperties":false},"input_example":{"ip":"8.8.8.8"},"output_schema":{"type":"object","properties":{"ip":{"type":"string","description":"The address, normalised.","examples":["8.8.8.8"]},"version":{"type":"integer","description":"4 or 6.","examples":[4]},"scope":{"type":"string","enum":["public","private","loopback","link_local","multicast","shared","reserved"],"description":"public addresses are looked up; others are described from the address alone.","examples":["public"]},"reverse_dns":{"type":"array","items":{"type":"string","description":"A PTR name.","examples":["dns.google"]},"description":"Reverse DNS names.","examples":[["dns.google"]]},"location":{"type":["object","null"],"properties":{"city":{"type":["string","null"],"description":"City.","examples":["Mountain View"]},"region":{"type":["string","null"],"description":"Region or state.","examples":["California"]},"country":{"type":["string","null"],"description":"Country.","examples":["United States"]},"country_code":{"type":["string","null"],"description":"ISO code.","examples":["US"]},"continent":{"type":["string","null"],"description":"Continent.","examples":["North America"]},"latitude":{"type":["number","null"],"description":"Latitude.","examples":[37.422]},"longitude":{"type":["number","null"],"description":"Longitude.","examples":[-122.085]}},"required":["city","region","country","country_code","continent","latitude","longitude"],"description":"Registered location; null for a non-public or unknown address."},"network":{"type":["object","null"],"properties":{"asn":{"type":["integer","null"],"description":"Autonomous system number.","examples":[15169]},"organization":{"type":["string","null"],"description":"Network operator.","examples":["Google LLC"]}},"required":["asn","organization"],"description":"Who runs the network; null when unknown."},"database_month":{"type":["string","null"],"description":"DB-IP Lite edition used (YYYY-MM).","examples":["2026-09"]},"attribution":{"type":"object","properties":{"text":{"type":"string","description":"Credit required by the licence.","examples":["IP Geolocation by DB-IP"]},"url":{"type":"string","description":"Credit link.","examples":["https://db-ip.com"]},"license":{"type":"string","description":"Data licence.","examples":["Creative Commons Attribution 4.0 International"]}},"required":["text","url","license"],"description":"Data credit."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["IP location is approximate."]},"description":"Caveats.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["ip","version","scope","reverse_dns","location","network","database_month","attribution","notes","checked_at"]},"output_example":{"ip":"8.8.8.8","version":4,"scope":"public","reverse_dns":["dns.google"],"location":{"city":"Mountain View","region":"California","country":"United States","country_code":"US","continent":"North America","latitude":37.422,"longitude":-122.085},"network":{"asn":15169,"organization":"Google LLC"},"database_month":"2026-09","attribution":{"text":"IP Geolocation by DB-IP","url":"https://db-ip.com","license":"Creative Commons Attribution 4.0 International"},"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":120,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"IP geolocation / IP address lookup: city, region, country and coordinates, the network's ASN and organisation, reverse DNS, and whether the address is public, private or reserved. IPv4 and IPv6. Location data from DB-IP Lite (CC BY 4.0, credited), updated monthly; location is the network's registered place, never a street address. Input: ip.","capabilities":["ip.lookup","IpLookup"],"representativeQueries":["where is this IP address located and who owns it","ASN and network owner for an IP address","reverse DNS for an IP","is this IP address private, public or reserved"],"tags":["ip-geolocation","ip-lookup","asn","geoip","fraud-detection","network","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/ip/lookup","method":"POST","compound":false,"max_seconds":120},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:domain.dns","displayName":"Domain DNS, email security and TLS certificate (domain.dns)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/domain/dns","method":"POST","url":"https://hubvibe-io.com/work/domain/dns","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"domain":{"type":"string","minLength":3,"maxLength":253,"description":"A domain (github.com) or a URL on it."},"tls":{"type":"boolean","description":"Also check the HTTPS certificate. Default true."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["domain"],"additionalProperties":false},"input_example":{"domain":"github.com"},"output_schema":{"type":"object","properties":{"domain":{"type":"string","description":"The domain as given (host part).","examples":["github.com"]},"domain_ascii":{"type":"string","description":"ASCII (punycode) form queried.","examples":["github.com"]},"exists":{"type":"boolean","description":"The domain exists in DNS.","examples":[true]},"records":{"type":"object","properties":{"a":{"type":"array","items":{"type":"string","description":"A A record.","examples":["140.82.112.3"]},"description":"A records.","examples":[[]]},"aaaa":{"type":"array","items":{"type":"string","description":"A AAAA record.","examples":["2606:50c0:8000::153"]},"description":"AAAA records.","examples":[[]]},"cname":{"type":"array","items":{"type":"string","description":"A CNAME record.","examples":["github.github.io"]},"description":"CNAME records.","examples":[[]]},"mx":{"type":"array","items":{"type":"string","description":"A MX record.","examples":["1 aspmx.l.google.com"]},"description":"MX records.","examples":[[]]},"ns":{"type":"array","items":{"type":"string","description":"A NS record.","examples":["dns1.p08.nsone.net"]},"description":"NS records.","examples":[[]]},"txt":{"type":"array","items":{"type":"string","description":"A TXT record.","examples":["v=spf1 include:_spf.google.com ~all"]},"description":"TXT records.","examples":[[]]},"caa":{"type":"array","items":{"type":"string","description":"A CAA record.","examples":["0 issue \"digicert.com\""]},"description":"CAA records.","examples":[[]]},"soa":{"type":"array","items":{"type":"string","description":"A SOA record.","examples":["dns1.p08.nsone.net hostmaster.nsone.net serial=1 refresh=43200 retry=7200 expire=1209600 minimum=3600"]},"description":"SOA records.","examples":[[]]}},"required":["a","aaaa","cname","mx","ns","txt","caa","soa"],"description":"Records by type; empty when none."},"email_security":{"type":"object","properties":{"spf":{"type":["object","null"],"properties":{"record":{"type":"string","description":"The SPF record.","examples":["v=spf1 include:_spf.google.com ~all"]},"all":{"type":["string","null"],"enum":["fail","softfail","neutral","pass",null],"description":"What the record says about everyone else.","examples":["softfail"]},"multiple":{"type":"boolean","description":"More than one SPF record (an error).","examples":[false]}},"required":["record","all","multiple"],"description":"SPF; null when there is none."},"dmarc":{"type":["object","null"],"properties":{"record":{"type":"string","description":"The DMARC record.","examples":["v=DMARC1; p=reject"]},"policy":{"type":["string","null"],"description":"p= policy.","examples":["reject"]},"subdomain_policy":{"type":["string","null"],"description":"sp= policy.","examples":["reject"]},"percent":{"type":["integer","null"],"description":"pct= value.","examples":[100]},"reports_to":{"type":["string","null"],"description":"rua= address.","examples":["mailto:dmarc@example.com"]}},"required":["record","policy","subdomain_policy","percent","reports_to"],"description":"DMARC; null when there is none."}},"required":["spf","dmarc"],"description":"Email authentication policy."},"tls":{"type":["object","null"],"properties":{"reachable":{"type":"boolean","description":"An HTTPS server answered on port 443.","examples":[true]},"valid":{"type":"boolean","description":"The certificate verified for this name.","examples":[true]},"error":{"type":["string","null"],"description":"Why the check failed.","examples":["certificate has expired"]},"ip":{"type":["string","null"],"description":"Address connected to.","examples":["140.82.112.3"]},"protocol":{"type":["string","null"],"description":"TLS version.","examples":["TLSv1.3"]},"subject":{"type":["string","null"],"description":"Certificate common name.","examples":["github.com"]},"issuer":{"type":["string","null"],"description":"Issuing CA.","examples":["Sectigo Limited"]},"names":{"type":"array","items":{"type":"string","description":"A name the certificate covers.","examples":["www.github.com"]},"description":"Subject alternative names.","examples":[[]]},"not_before":{"type":["string","null"],"description":"Valid from.","examples":["2026-08-01T00:00:00Z"]},"not_after":{"type":["string","null"],"description":"Valid until.","examples":["2026-11-29T23:59:59Z"]},"days_remaining":{"type":["integer","null"],"description":"Days until expiry.","examples":[62]}},"required":["reachable","valid","error","ip"],"description":"HTTPS certificate; null when not checked."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["No DMARC record."]},"description":"Findings and caveats.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["domain","domain_ascii","exists","records","email_security","tls","notes","checked_at"]},"output_example":{"domain":"github.com","domain_ascii":"github.com","exists":true,"records":{"a":[],"aaaa":[],"cname":[],"mx":[],"ns":[],"txt":[],"caa":[],"soa":[]},"email_security":{"spf":{"record":"v=spf1 include:_spf.google.com ~all","all":"softfail","multiple":false},"dmarc":{"record":"v=DMARC1; p=reject","policy":"reject","subdomain_policy":"reject","percent":100,"reports_to":"mailto:dmarc@example.com"}},"tls":{"reachable":true,"valid":true,"error":"certificate has expired","ip":"140.82.112.3","protocol":"TLSv1.3","subject":"github.com","issuer":"Sectigo Limited","names":[],"not_before":"2026-08-01T00:00:00Z","not_after":"2026-11-29T23:59:59Z","days_remaining":62},"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"DNS lookup and domain health check: A, AAAA, CNAME, MX, NS, TXT, CAA and SOA records asked of the source, SPF and DMARC email policy parsed, and the HTTPS certificate verified like a browser (issuer, names, expiry, days left, TLS version). Flags missing SPF or DMARC, duplicate SPF and certificates near expiry. Input: domain (a URL is accepted).","capabilities":["domain.dns","DomainDns"],"representativeQueries":["DNS records for a domain: MX, TXT, NS, A","does this domain have SPF and DMARC set up","when does this site's SSL certificate expire and who issued it","check a domain's email security and HTTPS setup"],"tags":["dns-lookup","domain","ssl-certificate","spf","dmarc","email-security","mx-records","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/domain/dns","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:identity.check","displayName":"Verify ownership and inspect public identity evidence (identity.check)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/identity/check","method":"POST","url":"https://hubvibe-io.com/work/identity/check","price_usd":3.0,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"email":{"type":"string","maxLength":254},"domain":{"type":"string","maxLength":253},"name":{"type":"string","maxLength":200},"phone":{"type":"string","maxLength":40},"ip":{"type":"string","maxLength":50},"country":{"type":"string","maxLength":60},"birth_year":{"type":"integer","minimum":1900,"maximum":2100},"phone_region":{"type":"string","maxLength":3},"username":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9_.-]{0,79}$"},"platforms":{"type":"array","minItems":1,"maxItems":2,"uniqueItems":true,"items":{"enum":["github","bluesky"]}},"business":{"type":"object","properties":{"lei":{"type":"string","pattern":"^[A-Z0-9]{18}[0-9]{2}$"},"cik":{"type":["integer","string"]},"name":{"type":"string","minLength":2,"maxLength":200}},"required":[],"additionalProperties":false},"agent":{"type":"object","properties":{"card_url":{"type":"string","format":"uri"},"agent_id":{"type":"integer","minimum":0},"chain_id":{"type":"integer","const":8453}},"required":["card_url"],"additionalProperties":false},"proofs":{"type":"array","maxItems":5,"items":{"type":"object","properties":{"challenge_id":{"type":"string","pattern":"^own_[0-9a-f]{32}$"},"access_token":{"type":"string","pattern":"^[0-9a-f]{64}$","writeOnly":true}},"required":["challenge_id","access_token"],"additionalProperties":false}},"required_checks":{"type":"array","uniqueItems":true,"items":{"enum":["email_ownership","domain_ownership","wallet_ownership","usernames","business","agent","screening"]}},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false},"input_example":{"username":"octocat","platforms":["github"]},"output_schema":{"type":"object","properties":{"verification_status":{"type":"string","enum":["ownership_verified","public_records_only","unverified","incomplete"],"description":"Scope of supported evidence","examples":["public_records_only"]},"verified":{"type":"boolean","description":"Listed ownership only; never legal identity or all linked claims","examples":[false]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]},"ownership":{"type":"array","items":{"description":"Completed time-limited mailbox, DNS or EOA wallet proof","examples":[{}]},"description":"Ownership attestations","examples":[[]]},"profiles":{"type":"array","items":{"description":"Public profile record; does not prove ownership","examples":[{}]},"description":"Profile matches","examples":[[]]},"businesses":{"type":"array","items":{"description":"Official registry record; does not prove customer control","examples":[{}]},"description":"Entity matches","examples":[[]]},"agent":{"description":"A2A signature and optional ERC-8004 binding","type":["object","null"]},"screening":{"description":"Existing contact.screen result when requested","type":["object","null"]},"findings":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","description":"Evidence class","examples":["username"]},"status":{"type":"string","description":"Evidence status","examples":["public_record_match"]},"subject":{"type":"string","description":"Subject of this evidence","examples":["octocat"]},"source":{"type":"string","description":"Evidence origin","examples":["https://api.github.com/users/octocat"]},"observed_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]},"confidence":{"type":"object","properties":{"level":{"type":"string","enum":["low","moderate","high"],"description":"Rule-based evidence strength","examples":["low"]},"calibrated_probability":{"type":"boolean","const":false}},"required":["level","calibrated_probability"]}},"required":["kind","status","subject","source","observed_at","confidence"]},"description":"Findings with evidence strength","examples":[[]]},"correlations":{"type":"array","items":{"description":"Explicit cross-source rule; no inferred common ownership","examples":[{}]},"description":"Correlations","examples":[[]]},"fraud_indicators":{"type":"array","items":{"description":"Evidence requiring review; not a fraud determination","examples":[{}]},"description":"Indicators","examples":[[]]},"sources":{"type":"array","items":{"type":"string","description":"Source identifier","examples":["https://api.github.com/users/octocat"]},"description":"Evidence sources","examples":[[]]},"required_checks":{"type":"array","items":{"type":"string","description":"Required evidence class","examples":["usernames"]},"description":"Required checks","examples":[[]]},"limitations":{"type":"array","items":{"type":"string","description":"Evidence limit","examples":["Public matches do not establish ownership."]},"description":"Scope limitations","examples":[[]]}},"required":["verification_status","verified","checked_at","ownership","profiles","businesses","agent","screening","findings","correlations","fraud_indicators","sources","required_checks","limitations"]},"output_example":{"verification_status":"public_records_only","verified":false,"checked_at":"2026-09-26T18:00:00Z","ownership":[],"profiles":[],"businesses":[],"agent":{},"screening":{},"findings":[],"correlations":[],"fraud_indicators":[],"sources":[],"required_checks":[],"limitations":[]},"returns":"verification_status, verified (scoped ownership only), ownership[], findings[], profiles[], businesses[], agent, screening, correlations[], fraud_indicators[], sources[], checked_at, limitations[].","max_seconds":240,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $3.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$3.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$3.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"Non-government identity intelligence: email/DNS/wallet challenge proofs, GitHub and Bluesky public profiles, GLEIF/SEC business records, signed A2A cards and the canonical Base ERC-8004 registry. Separates ownership from public-record matches and unverified claims, with evidence, timestamps and fraud indicators. Required evidence failures refuse delivery. Existing contact screening remains available. No documents or biometrics.","capabilities":["identity.check","IdentityCheck"],"representativeQueries":["verify email or domain ownership using a challenge response","correlate public usernames with official business registry evidence","verify an A2A agent card signature and ERC-8004 wallet ownership","inspect impersonation indicators without identity documents or biometrics"],"tags":["identity-verification","ownership","public-records","agent-identity","fraud-indicators","standard","pay-per-call"],"metadata":{"price_usd":3.0,"tier":"standard","path":"/work/identity/check","method":"POST","compound":false,"max_seconds":240},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:contact.screen","displayName":"Contact and sanctions screening (not identity verification) (contact.screen)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/contact/screen","method":"POST","url":"https://hubvibe-io.com/work/contact/screen","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"name":{"type":"string","minLength":2,"maxLength":200,"description":"Person or company name to screen against sanctions lists."},"email":{"type":"string","minLength":3,"maxLength":320,"description":"Email address to verify."},"phone":{"type":"string","minLength":3,"maxLength":40,"description":"Phone number, international (+44 20 7946 0958) or national with `phone_region`."},"phone_region":{"type":"string","pattern":"^[A-Za-z]{2}$","description":"Two-letter country for a national-format phone number."},"ip":{"type":"string","minLength":2,"maxLength":45,"description":"The client's IPv4 or IPv6 address."},"country":{"type":"string","minLength":2,"maxLength":60,"description":"Country the person says they are in (US or United States), compared with phone and IP."},"birth_year":{"type":"integer","minimum":1880,"maximum":2030,"description":"Birth year, to narrow sanctions matches for a person."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"anyOf":[{"required":["name"]},{"required":["email"]},{"required":["phone"]},{"required":["ip"]}]},"input_example":{"name":"Jane Smith","email":"jane@stripe.com","phone":"+44 20 7031 3000","ip":"8.8.8.8","country":"GB"},"output_schema":{"type":"object","properties":{"input":{"type":"object","properties":{"name":{"type":["string","null"],"description":"Name screened.","examples":["Jane Smith"]},"email":{"type":["string","null"],"description":"Email checked.","examples":["jane@stripe.com"]},"phone":{"type":["string","null"],"description":"Phone checked.","examples":["+44 20 7031 3000"]},"ip":{"type":["string","null"],"description":"IP checked.","examples":["8.8.8.8"]},"country":{"type":["string","null"],"description":"Stated country.","examples":["GB"]},"birth_year":{"type":["integer","null"],"description":"Birth year given.","examples":[1980]}},"required":["name","email","phone","ip","country","birth_year"],"description":"What was checked."},"risk":{"type":"string","enum":["low","review","high"],"description":"Screening indicators only; low requires all requested checks completed, not proof of identity.","examples":["review"]},"verification_status":{"type":"string","enum":["not_verified"],"description":"This service does not verify identity ownership or documents.","examples":["not_verified"]},"assessment_status":{"type":"string","enum":["complete","incomplete"],"description":"Whether every requested contact/sanctions check finished conclusively.","examples":["complete"]},"check_statuses":{"type":"object","properties":{"sanctions":{"type":"string","enum":["not_requested","complete","incomplete","failed"],"description":"Sanctions list screening state.","examples":["complete"]},"email":{"type":"string","enum":["not_requested","complete","incomplete","failed"],"description":"Mailbox screening state.","examples":["not_requested"]},"phone":{"type":"string","enum":["not_requested","complete","incomplete","failed"],"description":"Phone numbering plan screening state.","examples":["not_requested"]},"ip":{"type":"string","enum":["not_requested","complete","incomplete","failed"],"description":"IP attribution screening state.","examples":["not_requested"]}},"required":["sanctions","email","phone","ip"],"description":"State of each separately requested check."},"flags":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Flag code.","examples":["country_mismatch_ip"]},"severity":{"type":"string","enum":["high","medium","low"],"description":"How much it matters.","examples":["low"]},"detail":{"type":"string","description":"What was found.","examples":["Stated country GB but the ip is in United States."]}},"required":["code","severity","detail"]},"description":"Everything worth a look, most severe first.","examples":[[]]},"checks":{"type":"object","properties":{"sanctions":{"type":["object","null"],"properties":{"verdict":{"type":"string","enum":["potential_match","no_match","incomplete"],"description":"Screen verdict.","examples":["no_match"]},"match_count":{"type":"integer","description":"Matches.","examples":[0]}},"required":["verdict","match_count"],"description":"sanctions.screen result (verdict, match_count, matches[], lists[]), or null."},"email":{"type":["object","null"],"properties":{"verdict":{"type":"string","description":"email.verify verdict.","examples":["deliverable"]},"reason":{"type":"string","description":"Why.","examples":["mailbox_exists"]}},"required":["verdict","reason"],"description":"email.verify result (verdict, reason, disposable, role_account, free_provider, did_you_mean...), or null."},"phone":{"type":["object","null"],"properties":{"valid":{"type":"boolean","description":"Valid number.","examples":[true]},"line_type":{"type":"string","description":"Line type.","examples":["fixed_line"]}},"required":["valid","line_type"],"description":"phone.parse result (valid, e164, country, region, carrier, line_type), or null."},"ip":{"type":["object","null"],"properties":{"scope":{"type":"string","description":"public, private, reserved...","examples":["public"]}},"required":["scope"],"description":"ip.lookup result (scope, location, network, reverse_dns, attribution), or null."}},"required":["sanctions","email","phone","ip"],"description":"Each check's result; null when not asked for or failed."},"checks_run":{"type":"array","items":{"type":"string","description":"A check that completed.","examples":["sanctions"]},"description":"Checks that completed.","examples":[["sanctions","email"]]},"checks_failed":{"type":"array","items":{"type":"string","description":"A check that did not complete.","examples":["email"]},"description":"Checks that failed; the rest still ship.","examples":[[]]},"notes":{"type":"array","items":{"type":"string","description":"A note.","examples":["Flags are leads to review, not a determination."]},"description":"Notes.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["input","risk","verification_status","assessment_status","check_statuses","flags","checks","checks_run","checks_failed","notes","checked_at"]},"output_example":{"input":{"name":"Jane Smith","email":"jane@stripe.com","phone":"+44 20 7031 3000","ip":"8.8.8.8","country":"GB","birth_year":1980},"risk":"review","verification_status":"not_verified","assessment_status":"complete","check_statuses":{"sanctions":"complete","email":"not_requested","phone":"not_requested","ip":"not_requested"},"flags":[],"checks":{"sanctions":{"verdict":"no_match","match_count":0},"email":{"verdict":"deliverable","reason":"mailbox_exists"},"phone":{"valid":true,"line_type":"fixed_line"},"ip":{"scope":"public"}},"checks_run":["sanctions","email"],"checks_failed":[],"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"returns":"input{}, risk (low | review | high), verification_status (not_verified), assessment_status (complete | incomplete), check_statuses{}, flags[{code, severity, detail}], checks{sanctions, email, phone, ip}, checks_run[], checks_failed[], notes[], checked_at.","max_seconds":90,"composes":["sanctions.screen","email.verify","phone.parse","ip.lookup"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Screen a name against sanctions lists, evaluate email deliverability and disposable signals, validate a phone number's numbering plan and inspect IP geography/network. Returns findings, per-check completion, and a screening risk indicator. Never proves document authenticity, ownership or liveness, and is NOT complete KYC or identity verification. Inconclusive/failed checks cannot produce a low-risk result. Input: any of name, email, phone, ip; optional country/birth_year.","capabilities":["contact.screen","ContactScreen","SanctionsScreen","EmailVerify","PhoneParse","IpLookup"],"representativeQueries":["screen sanctions and contact signals for a user without claiming identity proof","screen a counterparty's sanctions, email, phone and IP signals before onboarding","is this signup fraudulent: disposable email, VoIP phone, country mismatch","check a person against sanctions lists and validate their contact details"],"tags":["contact-screening","sanctions","onboarding","due-diligence","email","phone","ip","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/contact/screen","method":"POST","compound":true,"max_seconds":90},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:lead.qualify","displayName":"Website opportunity assessment for a supplied URL (lead.qualify)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/lead/qualify","method":"POST","url":"https://hubvibe-io.com/work/lead/qualify","price_usd":0.25,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"The business's website, http(s)."},"business_name":{"type":"string","minLength":1,"maxLength":200,"description":"The business's name, to help the company lookup. Optional."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://example.com"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The URL as given.","examples":["https://example.com"]},"business_name":{"type":["string","null"],"description":"The business name as given.","examples":["Example Inc."]},"domain":{"type":"string","description":"The domain the mail and company reads used: the URL's host without www.","examples":["example.com"]},"site":{"type":"object","properties":{"final_url":{"type":"string","description":"Where the page was served from after redirects.","examples":["https://example.com/"]},"status":{"type":"integer","description":"HTTP status of the page.","examples":[200]},"https":{"type":"boolean","description":"The final URL is HTTPS.","examples":[true]},"redirected":{"type":"boolean","description":"The URL redirected before answering.","examples":[false]},"response_time_ms":{"type":["integer","null"],"description":"Milliseconds to fetch the page, redirects included.","examples":[412]},"content_type":{"type":["string","null"],"description":"Content-Type of the page.","examples":["text/html"]},"bytes":{"type":"integer","description":"Size of the page body.","examples":[1256]},"title":{"type":["string","null"],"description":"The page's <title>.","examples":["Example Domain"]}},"required":["final_url","status","https","redirected","response_time_ms","content_type","bytes","title"],"description":"The one plain HTTP fetch of the page."},"seo":{"type":"object","properties":{"pass":{"type":"boolean","description":"No critical or serious SEO finding.","examples":[false]},"checks":{"type":"string","description":"What was checked.","examples":["title, meta-description, h1-structure, canonical, opengraph, structured-data, lang"]},"findings":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Finding id, as the audit routes name it.","examples":["missing-meta-description"]},"severity":{"type":"string","enum":["critical","serious","moderate","minor"],"description":"Severity.","examples":["critical"]},"detail":{"type":"string","description":"What was found.","examples":["No meta description found"]}},"required":["id","severity","detail"],"description":"One finding."},"description":"SEO findings (the /audit/seo rules), most severe first.","examples":[[{"id":"missing-meta-description","severity":"critical","detail":"No meta description found"}]]}},"required":["pass","checks","findings"],"description":"SEO findings on the raw HTML, the same rules /audit/seo applies."},"security":{"type":"object","properties":{"pass":{"type":"boolean","description":"No critical or serious security finding.","examples":[false]},"checks":{"type":"string","description":"What was checked.","examples":["https, hsts, csp, x-content-type-options, frame-protection, referrer-policy, cors"]},"findings":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Finding id, as the audit routes name it.","examples":["missing-meta-description"]},"severity":{"type":"string","enum":["critical","serious","moderate","minor"],"description":"Severity.","examples":["critical"]},"detail":{"type":"string","description":"What was found.","examples":["No meta description found"]}},"required":["id","severity","detail"],"description":"One finding."},"description":"Security-header findings (the /audit/security rules), most severe first.","examples":[[{"id":"missing-hsts","severity":"serious","detail":"No Strict-Transport-Security header"}]]}},"required":["pass","checks","findings"],"description":"Transport and response-header findings, the same rules /audit/security applies."},"accessibility_signals":{"type":"object","properties":{"images_total":{"type":"integer","description":"Images on the page.","examples":[12]},"images_without_alt":{"type":"integer","description":"Images with no alt attribute (alt=\"\" counts as present).","examples":[3]},"html_lang":{"type":["string","null"],"description":"The <html lang> value.","examples":["en"]},"html_lang_present":{"type":"boolean","description":"<html> declares a language.","examples":[true]},"inputs_total":{"type":"integer","description":"Form fields (inputs, selects, textareas; hidden and buttons excluded).","examples":[4]},"inputs_without_label":{"type":"integer","description":"Form fields with no label, aria-label, aria-labelledby or title.","examples":[1]},"links_total":{"type":"integer","description":"Links with an href.","examples":[30]},"links_without_text":{"type":"integer","description":"Links with no text, image alt, aria-label or title.","examples":[2]},"scope":{"type":"string","description":"What these signals are and are not.","examples":["Static HTML signals only; the full WCAG audit is POST /audit/wcag."]},"full_audit":{"type":"string","description":"The route that runs the full browser WCAG audit.","examples":["/audit/wcag"]}},"required":["images_total","images_without_alt","html_lang","html_lang_present","inputs_total","inputs_without_label","links_total","links_without_text","scope","full_audit"],"description":"Quick static accessibility signals from the HTML; clearly not a WCAG audit."},"tech":{"type":"object","properties":{"platform":{"type":["string","null"],"description":"Site platform or builder detected.","examples":["WordPress"]},"generator":{"type":["string","null"],"description":"The page's meta generator, as written.","examples":[null]},"server":{"type":["string","null"],"description":"Server header.","examples":["nginx"]},"powered_by":{"type":["string","null"],"description":"X-Powered-By header.","examples":[null]},"analytics":{"type":"array","items":{"type":"string","description":"An analytics tag.","examples":["Google Analytics"]},"description":"Analytics tags found.","examples":[["Google Analytics"]]},"ad_pixels":{"type":"array","items":{"type":"string","description":"An advertising pixel or conversion tag.","examples":["Meta Pixel"]},"description":"Ad pixels found.","examples":[[]]},"chat_widgets":{"type":"array","items":{"type":"string","description":"A chat widget.","examples":["Tawk.to"]},"description":"Chat widgets found.","examples":[[]]},"has_analytics":{"type":"boolean","description":"At least one analytics tag.","examples":[true]},"has_ad_pixel":{"type":"boolean","description":"At least one ad pixel.","examples":[false]},"has_chat":{"type":"boolean","description":"At least one chat widget.","examples":[false]},"source":{"type":"string","description":"Where the detection comes from.","examples":["The page's own HTML and response headers only."]}},"required":["platform","generator","server","powered_by","analytics","ad_pixels","chat_widgets","has_analytics","has_ad_pixel","has_chat","source"],"description":"Platform and marketing tags, read from the page itself."},"email_domain":{"type":["object","null"],"properties":{"domain":{"type":"string","description":"Domain queried.","examples":["example.com"]},"exists":{"type":"boolean","description":"The domain exists in DNS.","examples":[true]},"mx_present":{"type":"boolean","description":"The domain publishes a mail server.","examples":[true]},"mx":{"type":"array","items":{"type":"string","description":"An MX host.","examples":["aspmx.l.google.com"]},"description":"MX hosts, highest priority first.","examples":[["aspmx.l.google.com"]]},"mail_provider":{"type":["string","null"],"description":"Mail provider guessed from the MX hosts.","examples":["google"]},"spf":{"type":["object","null"],"properties":{"record":{"type":"string","description":"The SPF record.","examples":["v=spf1 include:_spf.google.com ~all"]},"all":{"type":["string","null"],"enum":["fail","softfail","neutral","pass",null],"description":"What the record says about everyone else.","examples":["softfail"]},"multiple":{"type":"boolean","description":"More than one SPF record (an error).","examples":[false]}},"required":["record","all","multiple"],"description":"SPF; null when there is none."},"dmarc":{"type":["object","null"],"properties":{"record":{"type":"string","description":"The DMARC record.","examples":["v=DMARC1; p=reject"]},"policy":{"type":["string","null"],"description":"p= policy.","examples":["reject"]},"subdomain_policy":{"type":["string","null"],"description":"sp= policy.","examples":[null]},"percent":{"type":["integer","null"],"description":"pct= value.","examples":[100]},"reports_to":{"type":["string","null"],"description":"rua= address.","examples":[null]}},"required":["record","policy","subdomain_policy","percent","reports_to"],"description":"DMARC; null when there is none."}},"required":["domain","exists","mx_present","mx","mail_provider","spf","dmarc"],"description":"The domain's mail setup, via domain.dns; null when that read failed (see notes)."},"company":{"type":["object","null"],"properties":{"name":{"type":["string","null"],"description":"Common name.","examples":["Example Inc."]},"legal_name":{"type":["string","null"],"description":"Registered legal name.","examples":[null]},"description":{"type":["string","null"],"description":"One-line description.","examples":["Example company"]},"website":{"type":["string","null"],"description":"Official website.","examples":["https://example.com/"]},"founded":{"type":["string","null"],"description":"Founding date.","examples":["2010"]},"employees":{"type":["object","null"],"properties":{"count":{"type":"integer","description":"Headcount.","examples":[25]},"as_of":{"type":["string","null"],"description":"Date of the figure.","examples":["2024"]},"source":{"type":"string","description":"Source.","examples":["wikidata"]}},"required":["count","as_of","source"],"description":"Latest known headcount; null when unknown."},"industries":{"type":"array","items":{"type":"string","description":"Industry.","examples":["software"]},"description":"Industries.","examples":[[]]},"headquarters":{"type":"object","properties":{"city":{"type":["string","null"],"description":"City.","examples":["Austin"]},"country":{"type":["string","null"],"description":"Country.","examples":["United States"]},"country_code":{"type":["string","null"],"description":"ISO 3166 code.","examples":["US"]},"address":{"type":["string","null"],"description":"Registered address.","examples":[null]}},"required":["city","country","country_code","address"],"description":"Headquarters."},"socials":{"type":"object","properties":{"x":{"type":["string","null"],"description":"x account.","examples":[null]},"linkedin":{"type":["string","null"],"description":"linkedin account.","examples":[null]},"facebook":{"type":["string","null"],"description":"facebook account.","examples":[null]},"instagram":{"type":["string","null"],"description":"instagram account.","examples":[null]},"github":{"type":["string","null"],"description":"github account.","examples":[null]},"youtube":{"type":["string","null"],"description":"youtube account.","examples":[null]}},"required":["x","linkedin","facebook","instagram","github","youtube"],"description":"Official social accounts found."},"identifiers":{"type":"object","properties":{"wikidata":{"type":["string","null"],"description":"Wikidata item.","examples":["Q1234"]},"lei":{"type":["string","null"],"description":"Legal Entity Identifier.","examples":[null]},"cik":{"type":["string","null"],"description":"SEC Central Index Key.","examples":[null]}},"required":["wikidata","lei","cik"],"description":"Identifiers."},"sources":{"type":"array","items":{"type":"string","description":"A source used.","examples":["Company website (self-declared)"]},"description":"Sources that answered.","examples":[[]]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["Homepage not read."]},"description":"company.enrich's own caveats.","examples":[[]]}},"required":["name","legal_name","description","website","founded","employees","industries","headquarters","socials","identifiers","sources","notes"],"description":"The company behind the site, via company.enrich; null when nothing was found or the read failed (see notes)."},"score":{"type":"integer","minimum":0,"maximum":100,"description":"Opportunity score, 0-100: how much there is for an agency to fix. Computed by score_rule.","examples":[47]},"score_band":{"type":"string","enum":["low","moderate","high","very_high"],"description":"low < 25, moderate < 50, high < 75, very_high from 75.","examples":["moderate"]},"reasons":{"type":"array","items":{"type":"string","description":"A plain-English outreach hook.","examples":["No meta description"]},"description":"Why the score is what it is, biggest first: hooks an outreach agent can use.","examples":[["No meta description","3 images have no alt text"]]},"score_breakdown":{"type":"array","items":{"type":"object","properties":{"rule":{"type":"string","description":"The rule that fired.","examples":["missing-meta-description"]},"points":{"type":"integer","description":"Points it added.","examples":[8]},"detail":{"type":"string","description":"What was found.","examples":["No meta description"]}},"required":["rule","points","detail"],"description":"One scored finding."},"description":"Every point in the score, biggest first.","examples":[[{"rule":"missing-meta-description","points":8,"detail":"No meta description"}]]},"score_rule":{"type":"string","description":"The published scoring rule, so the number can be checked by hand.","examples":["Fixed points per finding, summed and capped at 100."]},"sections_failed":{"type":"array","items":{"type":"string","description":"A section that did not complete.","examples":["company"]},"description":"Sections missing from the result (email_domain, company); the rest still ship.","examples":[[]]},"sources":{"type":"array","items":{"type":"string","description":"A source used.","examples":["One plain HTTP GET of the page, no browser"]},"description":"Where the result comes from.","examples":[["One plain HTTP GET of the page, no browser"]]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["company: No company was found for this domain or name."]},"description":"Failures of supplementary steps and scope caveats.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["url","business_name","domain","site","seo","security","accessibility_signals","tech","email_domain","company","score","score_band","reasons","score_breakdown","score_rule","sections_failed","sources","notes","checked_at"]},"output_example":{"url":"https://example.com","business_name":"Example Inc.","domain":"example.com","site":{"final_url":"https://example.com/","status":200,"https":true,"redirected":false,"response_time_ms":412,"content_type":"text/html","bytes":1256,"title":"Example Domain"},"seo":{"pass":false,"checks":"title, meta-description, h1-structure, canonical, opengraph, structured-data, lang","findings":[{"id":"missing-meta-description","severity":"critical","detail":"No meta description found"}]},"security":{"pass":false,"checks":"https, hsts, csp, x-content-type-options, frame-protection, referrer-policy, cors","findings":[{"id":"missing-hsts","severity":"serious","detail":"No Strict-Transport-Security header"}]},"accessibility_signals":{"images_total":12,"images_without_alt":3,"html_lang":"en","html_lang_present":true,"inputs_total":4,"inputs_without_label":1,"links_total":30,"links_without_text":2,"scope":"Static HTML signals only; the full WCAG audit is POST /audit/wcag.","full_audit":"/audit/wcag"},"tech":{"platform":"WordPress","generator":null,"server":"nginx","powered_by":null,"analytics":["Google Analytics"],"ad_pixels":[],"chat_widgets":[],"has_analytics":true,"has_ad_pixel":false,"has_chat":false,"source":"The page's own HTML and response headers only."},"email_domain":{"domain":"example.com","exists":true,"mx_present":true,"mx":["aspmx.l.google.com"],"mail_provider":"google","spf":{"record":"v=spf1 include:_spf.google.com ~all","all":"softfail","multiple":false},"dmarc":{"record":"v=DMARC1; p=reject","policy":"reject","subdomain_policy":null,"percent":100,"reports_to":null}},"company":{"name":"Example Inc.","legal_name":null,"description":"Example company","website":"https://example.com/","founded":"2010","employees":{"count":25,"as_of":"2024","source":"wikidata"},"industries":[],"headquarters":{"city":"Austin","country":"United States","country_code":"US","address":null},"socials":{"x":null,"linkedin":null,"facebook":null,"instagram":null,"github":null,"youtube":null},"identifiers":{"wikidata":"Q1234","lei":null,"cik":null},"sources":[],"notes":[]},"score":47,"score_band":"moderate","reasons":["No meta description","3 images have no alt text"],"score_breakdown":[{"rule":"missing-meta-description","points":8,"detail":"No meta description"}],"score_rule":"Fixed points per finding, summed and capped at 100.","sections_failed":[],"sources":["One plain HTTP GET of the page, no browser"],"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"returns":"url, business_name, domain, site{final_url, status, https, redirected, response_time_ms, content_type, bytes, title}, seo{pass, checks, findings[]}, security{pass, checks, findings[]}, accessibility_signals{images_total, images_without_alt, html_lang, html_lang_present, inputs_total, inputs_without_label, links_total, links_without_text, scope, full_audit}, tech{platform, generator, server, powered_by, analytics[], ad_pixels[], chat_widgets[], has_analytics, has_ad_pixel, has_chat, source}, email_domain{domain, exists, mx_present, mx[], mail_provider, spf, dmarc}, company{name, legal_name, description, website, founded, employees, industries[], headquarters, socials, identifiers, sources[], notes[]}, score, score_band, reasons[], score_breakdown[{rule, points, detail}], score_rule, sections_failed[], sources[], notes[], checked_at.","max_seconds":20,"composes":["domain.dns","company.enrich"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Assess an existing business website supplied by the caller (not lead discovery). One plain HTTP fetch (no browser) produces SEO and security-header findings, static accessibility signals, platform and marketing tags, domain mail setup (MX, SPF, DMARC), company profile, and a 0-100 website opportunity score with suggested outreach hooks. Input: url; optional business_name. Does not find prospects, contact details, or verify buying intent.","capabilities":["lead.qualify","LeadQualify","DomainDns","CompanyEnrich"],"representativeQueries":["qualify a local business website as a sales lead for an agency","what is wrong with this business's website: SEO, security headers, missing alt text, no tracking pixel","which platform and marketing tags does this website use: WordPress, Shopify, Google Analytics, Meta Pixel","opportunity score and outreach hooks for a prospect's website"],"tags":["website-opportunity","website-assessment","website-audit","tech-stack","agency","seo","standard","pay-per-call"],"metadata":{"price_usd":0.25,"tier":"standard","path":"/work/lead/qualify","method":"POST","compound":true,"max_seconds":20},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:commerce.shipping","displayName":"Shipping options, eligibility and cart total for a product (commerce.shipping)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/commerce/shipping","method":"POST","url":"https://hubvibe-io.com/work/commerce/shipping","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"Product page on the store (…/products/<handle>)."},"variant":{"type":"string","minLength":1,"maxLength":200,"description":"Free-text option to buy (size 10 natural black). Default: first available."},"quantity":{"type":"integer","minimum":1,"maximum":10,"description":"Default 1."},"ship_to":{"type":"object","properties":{"country":{"type":"string","minLength":2,"maxLength":60,"description":"ISO 3166-1 alpha-2 (US, JP) or the country name."},"province":{"type":"string","minLength":1,"maxLength":80,"description":"State / province / prefecture, code or name, when the country needs one."},"postal_code":{"type":"string","minLength":1,"maxLength":20}},"required":["country"],"additionalProperties":false},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["url","ship_to"],"additionalProperties":false},"input_example":{"url":"https://www.allbirds.com/products/mens-wool-runners","variant":"size 10","ship_to":{"country":"US","province":"NY","postal_code":"10001"}},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"Product page as given.","examples":["https://www.allbirds.com/products/mens-wool-runners"]},"store":{"type":"object","properties":{"platform":{"type":"string","const":"shopify","description":"Storefront platform."},"domain":{"type":"string","description":"Store host.","examples":["www.allbirds.com"]},"currency":{"type":["string","null"],"description":"Cart currency.","examples":["USD"]}},"required":["platform","domain","currency"],"description":"The store."},"product":{"type":"object","properties":{"id":{"type":["integer","null"],"description":"Store product id.","examples":[1234567890]},"title":{"type":["string","null"],"description":"Product title.","examples":["Men's Wool Runners"]},"handle":{"type":["string","null"],"description":"Product handle.","examples":["mens-wool-runners"]}},"required":["id","title","handle"],"description":"The product."},"variant":{"type":"object","properties":{"id":{"type":["integer","null"],"description":"Variant id placed in the cart.","examples":[31330825109584]},"name":{"type":["string","null"],"description":"Variant name.","examples":["9"]},"sku":{"type":["string","null"],"description":"SKU.","examples":["WR3MNCW090"]},"price":{"type":["number","null"],"description":"Unit price.","examples":[110.0]},"available":{"type":["boolean","null"],"description":"Store availability flag.","examples":[true]},"requires_shipping":{"type":["boolean","null"],"description":"Physical item.","examples":[true]}},"required":["id","name","sku","price","available","requires_shipping"],"description":"The variant quoted."},"quantity":{"type":"integer","description":"Units in the cart.","examples":[1]},"ship_to":{"type":"object","properties":{"country":{"type":"string","description":"Destination country as given.","examples":["US"]},"province":{"type":["string","null"],"description":"State/province.","examples":["NY"]},"postal_code":{"type":["string","null"],"description":"Postal code.","examples":["10001"]}},"required":["country","province","postal_code"],"description":"Destination."},"cart":{"type":["object","null"],"properties":{"subtotal":{"type":["number","null"],"description":"Items subtotal.","examples":[110.0]},"total":{"type":["number","null"],"description":"Cart total before shipping and tax.","examples":[110.0]},"currency":{"type":["string","null"],"description":"Currency.","examples":["USD"]},"item_count":{"type":["integer","null"],"description":"Units.","examples":[1]},"requires_shipping":{"type":["boolean","null"],"description":"Cart needs shipping.","examples":[true]}},"required":["subtotal","total","currency","item_count","requires_shipping"],"description":"The store's own cart totals; null when the item could not be added."},"eligible":{"type":["boolean","null"],"description":"True: the store offers shipping there. False: it will not (see reasons). Null: the store needs more address fields first.","examples":[true]},"eligibility_reasons":{"type":"array","items":{"type":"string","description":"The store's own words.","examples":["country: Country/region not supported"]},"description":"Why not eligible, or what is missing; empty when eligible.","examples":[[]]},"missing_fields":{"type":"array","items":{"type":"string","description":"A ship_to field the store requires.","examples":["province"]},"description":"Address fields to add and retry.","examples":[[]]},"shipping_options":{"type":"array","items":{"type":"object","properties":{"name":{"type":["string","null"],"description":"Option name.","examples":["Ground Shipping"]},"price":{"type":["number","null"],"description":"Price.","examples":[0.0]},"currency":{"type":["string","null"],"description":"Currency.","examples":["USD"]},"delivery_days_min":{"type":["integer","null"],"description":"Earliest delivery, days.","examples":[3]},"delivery_days_max":{"type":["integer","null"],"description":"Latest delivery, days.","examples":[7]},"description":{"type":["string","null"],"description":"Store's description.","examples":["Arrives in 3-7 business days"]},"carrier":{"type":["string","null"],"description":"Carrier when named.","examples":["ups"]}},"required":["name","price","currency","delivery_days_min","delivery_days_max","description","carrier"],"description":"One shipping option."},"description":"Options the store would show at checkout, cheapest first.","examples":[[]]},"cheapest_shipping":{"type":["object","null"],"properties":{"name":{"type":["string","null"],"description":"Option.","examples":["Ground Shipping"]},"price":{"type":["number","null"],"description":"Price.","examples":[0.0]},"currency":{"type":["string","null"],"description":"Currency.","examples":["USD"]}},"required":["name","price","currency"],"description":"Cheapest option; null when none."},"estimated_total":{"type":["object","null"],"properties":{"amount":{"type":"number","description":"Subtotal plus cheapest shipping.","examples":[110.0]},"currency":{"type":["string","null"],"description":"Currency.","examples":["USD"]},"includes_tax":{"type":"boolean","description":"Always false: tax is computed at checkout.","examples":[false]}},"required":["amount","currency","includes_tax"],"description":"Estimated total before tax; null when not quotable."},"taxes_note":{"type":"string","description":"Where tax comes from.","examples":["Sales tax or VAT is computed by the store at checkout and is not included here."]},"source":{"type":"string","const":"shopify-cart-api","description":"Data source."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["No variant named; the first available option was quoted."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"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"]},"output_example":{"url":"https://www.allbirds.com/products/mens-wool-runners","store":{"platform":"shopify","domain":"www.allbirds.com","currency":"USD"},"product":{"id":1234567890,"title":"Men's Wool Runners","handle":"mens-wool-runners"},"variant":{"id":31330825109584,"name":"9","sku":"WR3MNCW090","price":110.0,"available":true,"requires_shipping":true},"quantity":1,"ship_to":{"country":"US","province":"NY","postal_code":"10001"},"cart":{"subtotal":110.0,"total":110.0,"currency":"USD","item_count":1,"requires_shipping":true},"eligible":true,"eligibility_reasons":[],"missing_fields":[],"shipping_options":[],"cheapest_shipping":{"name":"Ground Shipping","price":0.0,"currency":"USD"},"estimated_total":{"amount":110.0,"currency":"USD","includes_tax":false},"taxes_note":"Sales tax or VAT is computed by the store at checkout and is not included here.","source":"shopify-cart-api","notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":["commerce.availability"],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Shipping cost and delivery check for any Shopify store: the variant goes into a real cart session and the store quotes its shipping options to your destination. Returns options with prices and days, eligibility (or the store's reason, or the address fields still needed), subtotal and total before tax. No order is placed. Input: url, ship_to{country, province, postal_code}; optional variant, quantity.","capabilities":["commerce.shipping","CommerceShipping","CommerceAvailability"],"representativeQueries":["can this product ship to Japan and what would shipping cost","shipping options and delivery days for a size 10 to New York 10001","is this store able to deliver to my country, with the cart total","quote checkout shipping for two units of a variant"],"tags":["shipping","shipping-cost","shopify","ecommerce","checkout","delivery","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/commerce/shipping","method":"POST","compound":true,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:traffic.route","displayName":"Traffic-aware travel time and distance between two places (traffic.route)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/traffic/route","method":"POST","url":"https://hubvibe-io.com/work/traffic/route","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"origin":{"type":"string","minLength":1,"maxLength":300,"description":"Where the trip starts: an address, a place name, or \"lat,lng\"."},"destination":{"type":"string","minLength":1,"maxLength":300,"description":"Where the trip ends: an address, a place name, or \"lat,lng\"."},"travel_mode":{"type":"string","enum":["DRIVE","TWO_WHEELER","WALK","BICYCLE","TRANSIT"],"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."},"traffic":{"type":"string","enum":["aware","optimal","none"],"description":"aware (default): live traffic; optimal: live traffic with the best route quality, slower; none: no traffic."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["origin","destination"],"additionalProperties":false},"input_example":{"origin":"Ferry Building, San Francisco, CA","destination":"Oakland City Hall, Oakland, CA","travel_mode":"DRIVE","traffic":"aware"},"output_schema":{"type":"object","properties":{"origin":{"type":"string","description":"Origin as given.","examples":["Ferry Building, San Francisco, CA"]},"destination":{"type":"string","description":"Destination as given.","examples":["Oakland City Hall, Oakland, CA"]},"travel_mode":{"type":"string","enum":["DRIVE","TWO_WHEELER","WALK","BICYCLE","TRANSIT"],"description":"Travel mode used.","examples":["DRIVE"]},"traffic":{"type":"string","enum":["aware","optimal","none"],"description":"Traffic handling used: aware (live traffic), optimal (live traffic, best route quality), none (no traffic; always none for WALK, BICYCLE and TRANSIT).","examples":["aware"]},"departure_time":{"type":["string","null"],"description":"Departure time sent to Google (RFC 3339, UTC); null when the trip starts now.","examples":["2026-09-27T16:30:00Z"]},"distance_meters":{"type":"integer","description":"Route length in metres.","examples":[17011]},"duration_seconds":{"type":"integer","description":"Travel time in seconds, with traffic when `traffic` is aware or optimal.","examples":[1152]},"static_duration_seconds":{"type":["integer","null"],"description":"Travel time in seconds without traffic; null when Google does not state it.","examples":[1281]},"delay_seconds":{"type":["integer","null"],"description":"duration_seconds minus static_duration_seconds (negative when traffic is lighter than typical); null when either is unknown.","examples":[-129]},"duration_text":{"type":["string","null"],"description":"Google's localized travel time.","examples":["19 mins"]},"static_duration_text":{"type":["string","null"],"description":"Google's localized travel time without traffic.","examples":["21 mins"]},"distance_text":{"type":["string","null"],"description":"Google's localized distance (metric).","examples":["17.0 km"]},"description":{"type":["string","null"],"description":"Route description as Google names it (main roads); null when not given.","examples":["I-80 E and I-580 E"]},"warnings":{"type":"array","items":{"type":"string","description":"A warning Google attaches to the route.","examples":["This route has tolls."]},"description":"Google's warnings for the route, in the order given; empty when none.","examples":[[]]},"advisory":{"type":["object","null"],"properties":{},"required":[],"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."},"source":{"type":"string","const":"google-routes","description":"Data source: Google Routes API computeRoutes."},"as_of":{"type":"string","description":"The departure time the answer was computed for: `departure_time`, else `checked_at`.","examples":["2026-09-27T16:30:00Z"]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"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"]},"output_example":{"origin":"Ferry Building, San Francisco, CA","destination":"Oakland City Hall, Oakland, CA","travel_mode":"DRIVE","traffic":"aware","departure_time":"2026-09-27T16:30:00Z","distance_meters":17011,"duration_seconds":1152,"static_duration_seconds":1281,"delay_seconds":-129,"duration_text":"19 mins","static_duration_text":"21 mins","distance_text":"17.0 km","description":"I-80 E and I-580 E","warnings":[],"advisory":{},"source":"google-routes","as_of":"2026-09-27T16:30:00Z","checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Travel time with live traffic between two places, from the Google Routes API at call time: duration with traffic, duration without, the delay, distance, route description, warnings and advisories. Places as addresses, names or 'lat,lng'. Use it for ETAs, delivery windows and trip planning. Input: origin, destination; optional travel_mode, departure_time, traffic.","capabilities":["traffic.route","TrafficRoute"],"representativeQueries":["how long is the drive from the Ferry Building to Oakland City Hall right now with traffic","traffic-aware ETA and distance between two addresses leaving at 5pm tomorrow","current traffic delay on the drive from SFO to downtown San Jose","walking time and distance from 37.7955,-122.3937 to Union Square, San Francisco","transit travel time between two places at a given departure time"],"tags":["traffic","eta","travel-time","routing","commute","logistics","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/traffic/route","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:video.youtube","displayName":"YouTube search and video statistics, live (video.youtube)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/video/youtube","method":"POST","url":"https://hubvibe-io.com/work/video/youtube","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":300,"description":"Words to search YouTube for, in any language. Use this OR `video_ids`."},"video_ids":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"},"minItems":1,"maxItems":25,"description":"YouTube video ids (11 characters) to look up directly; skips the search."},"max_results":{"type":"integer","minimum":1,"maximum":25,"description":"With query: videos to return, default 10."},"order":{"type":"string","enum":["relevance","date","viewCount","rating","title"],"description":"With query: YouTube's sort, default relevance."},"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."},"region_code":{"type":"string","minLength":2,"maxLength":2,"description":"With query: ISO 3166-1 alpha-2 country whose results to prefer, e.g. US, JP."},"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."}},"required":[],"additionalProperties":false,"oneOf":[{"required":["query"]},{"required":["video_ids"]}]},"input_example":{"query":"open source licensing","max_results":3},"output_schema":{"type":"object","properties":{"query":{"type":["string","null"],"description":"The query as given; null when video_ids were looked up.","examples":["open source licensing"]},"video_ids":{"type":["array","null"],"items":{"type":"string"},"description":"The ids asked for, in order; null when a query was searched.","examples":[["IJhS_fv5Ktk"]]},"total_results":{"type":["integer","null"],"description":"YouTube's estimated total matches for the query (pageInfo.totalResults); null when not sent.","examples":[19113]},"items":{"type":"array","items":{"type":"object","properties":{"video_id":{"type":"string","description":"YouTube video id.","examples":["IJhS_fv5Ktk"]},"url":{"type":"string","description":"Watch URL.","examples":["https://www.youtube.com/watch?v=IJhS_fv5Ktk"]},"title":{"type":["string","null"],"description":"Title.","examples":["Open source licensing explained"]},"description":{"type":["string","null"],"description":"Description, cut at 500 characters; null when empty.","examples":["A short intro to open source licences."]},"channel_id":{"type":["string","null"],"description":"Uploading channel id.","examples":["UCoBPd2jgYzQ5m8k3f1nR9wA"]},"channel_title":{"type":["string","null"],"description":"Uploading channel name.","examples":["Coinbase Developer Platform"]},"published_at":{"type":["string","null"],"description":"Upload time as YouTube states it (ISO 8601).","examples":["2026-05-14T16:00:12Z"]},"duration_seconds":{"type":["integer","null"],"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.","examples":[754]},"view_count":{"type":["integer","null"],"description":"Views; null when YouTube does not send it.","examples":[52004]},"like_count":{"type":["integer","null"],"description":"Likes; null when the uploader hides them.","examples":[2225]},"comment_count":{"type":["integer","null"],"description":"Comments; null when hidden or comments are off.","examples":[112]},"live":{"type":["boolean","null"],"description":"Live or upcoming broadcast (liveBroadcastContent is not none); null when not stated.","examples":[false]},"thumbnail_url":{"type":["string","null"],"description":"Thumbnail URL, the high size when YouTube offers it.","examples":["https://i.ytimg.com/vi/IJhS_fv5Ktk/hqdefault.jpg"]}},"required":["video_id","url","title","description","channel_id","channel_title","published_at","duration_seconds","view_count","like_count","comment_count","live","thumbnail_url"],"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."},"item_count":{"type":"integer","description":"Videos returned.","examples":[3]},"source":{"type":"string","const":"youtube-data-api","description":"Data source."},"as_of":{"type":"string","description":"The same instant as checked_at: YouTube does not stamp its statistics.","examples":["2026-09-27T12:00:00Z"]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","video_ids","total_results","items","item_count","source","as_of","checked_at"]},"output_example":{"query":"open source licensing","video_ids":["IJhS_fv5Ktk"],"total_results":19113,"items":[{"video_id":"IJhS_fv5Ktk","url":"https://www.youtube.com/watch?v=IJhS_fv5Ktk","title":"Open source licensing explained","description":"A short intro to open source licences.","channel_id":"UCoBPd2jgYzQ5m8k3f1nR9wA","channel_title":"Coinbase Developer Platform","published_at":"2026-05-14T16:00:12Z","duration_seconds":754,"view_count":52004,"like_count":2225,"comment_count":112,"live":false,"thumbnail_url":"https://i.ytimg.com/vi/IJhS_fv5Ktk/hqdefault.jpg"}],"item_count":3,"source":"youtube-data-api","as_of":"2026-09-27T12:00:00Z","checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"YouTube search and video stats, live: search YouTube or look up videos by id, each with title, channel, upload time, duration, views, likes, comments, live flag and thumbnail from the YouTube Data API at call time. Sort by relevance, date, views or rating; filter by upload date, country and language. Input: query or video_ids; optional max_results, order, published_after, region_code.","capabilities":["video.youtube","VideoYoutube"],"representativeQueries":["search YouTube for videos about a topic with view counts","how many views, likes and comments does this YouTube video have","latest YouTube videos on a subject uploaded this month","duration, channel and thumbnail of a YouTube video by id","most viewed YouTube videos for a query in Japan"],"tags":["youtube","video-search","video-stats","views","social-media","creators","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/video/youtube","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:social.bluesky","displayName":"Bluesky profile, posts, account search or thread, live (social.bluesky)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/social/bluesky","method":"POST","url":"https://hubvibe-io.com/work/social/bluesky","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"mode":{"type":"string","enum":["profile","search_actors","thread"],"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."},"posts":{"type":"integer","minimum":1,"maximum":50,"description":"Latest posts to return in profile mode, default 10."},"query":{"type":"string","minLength":1,"maxLength":200,"description":"Words to match accounts on; search_actors mode."},"limit":{"type":"integer","minimum":1,"maximum":25,"description":"Accounts to return in search_actors mode, default 10."},"uri":{"type":"string","description":"Post AT-URI, at://did:plc:.../app.bsky.feed.post/<rkey>; thread mode."},"depth":{"type":"integer","minimum":1,"maximum":6,"description":"Reply depth to flatten in thread mode, default 2."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["mode"],"additionalProperties":false},"input_example":{"mode":"profile","actor":"bsky.app","posts":3},"output_schema":{"type":"object","properties":{"mode":{"type":"string","enum":["profile","search_actors","thread"],"description":"Mode run.","examples":["profile"]},"actor":{"type":["string","null"],"description":"Actor asked for (profile mode).","examples":["bsky.app"]},"query":{"type":["string","null"],"description":"Query asked for (search_actors mode).","examples":["coinbase"]},"uri":{"type":["string","null"],"description":"Post AT-URI asked for (thread mode).","examples":["at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a"]},"profile":{"type":["object","null"],"properties":{"did":{"type":["string","null"],"description":"DID.","examples":["did:plc:z72i7hdynmk6r22z27h6tvur"]},"handle":{"type":["string","null"],"description":"Handle.","examples":["bsky.app"]},"display_name":{"type":["string","null"],"description":"Display name.","examples":["Bluesky"]},"description":{"type":["string","null"],"description":"Bio.","examples":["official bluesky account"]},"avatar_url":{"type":["string","null"],"description":"Avatar URL.","examples":["https://cdn.bsky.app/img/avatar/plain/did:plc:z72i7hdynmk6r22z27h6tvur/x@jpeg"]},"followers":{"type":["integer","null"],"description":"Followers.","examples":[4200000]},"follows":{"type":["integer","null"],"description":"Follows.","examples":[3]},"posts":{"type":["integer","null"],"description":"Posts.","examples":[1234]},"created_at":{"type":["string","null"],"description":"Account creation time.","examples":["2023-04-12T04:53:57.057Z"]}},"required":["did","handle","display_name","description","avatar_url","followers","follows","posts","created_at"],"description":"The account, in profile mode; null otherwise."},"posts":{"type":"array","items":{"type":"object","properties":{"uri":{"type":"string","description":"Post AT-URI.","examples":["at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a"]},"cid":{"type":["string","null"],"description":"Content id.","examples":["bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi"]},"url":{"type":["string","null"],"description":"Web URL of the post.","examples":["https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a"]},"author_handle":{"type":["string","null"],"description":"Author handle.","examples":["bsky.app"]},"author_did":{"type":["string","null"],"description":"Author DID.","examples":["did:plc:z72i7hdynmk6r22z27h6tvur"]},"text":{"type":"string","description":"Post text.","examples":["hello world"]},"created_at":{"type":["string","null"],"description":"Author's creation time.","examples":["2026-09-26T20:00:00.000Z"]},"indexed_at":{"type":["string","null"],"description":"AppView indexing time.","examples":["2026-09-26T20:00:00.000Z"]},"likes":{"type":["integer","null"],"description":"Likes.","examples":[90]},"reposts":{"type":["integer","null"],"description":"Reposts.","examples":[7]},"replies":{"type":["integer","null"],"description":"Replies.","examples":[5]},"quotes":{"type":["integer","null"],"description":"Quote posts.","examples":[2]},"langs":{"type":"array","items":{"type":"string","description":"BCP-47 tag.","examples":["en"]},"description":"Languages the author declared.","examples":[["en"]]},"is_repost":{"type":"boolean","description":"Whether this feed item is a repost by the actor.","examples":[false]},"reply_to":{"type":["string","null"],"description":"AT-URI of the parent post when this is a reply.","examples":[null]},"embed_type":{"type":["string","null"],"description":"Embed type ($type) when the post carries one.","examples":["app.bsky.embed.images#view"]}},"required":["uri","cid","url","author_handle","author_did","text","created_at","indexed_at","likes","reposts","replies","quotes","langs","is_repost","reply_to","embed_type"],"description":"One Bluesky post."},"description":"Latest posts in profile mode, newest first; empty otherwise."},"actors":{"type":"array","items":{"type":"object","properties":{"did":{"type":["string","null"],"description":"DID.","examples":["did:plc:coin"]},"handle":{"type":["string","null"],"description":"Handle.","examples":["coinbase.com"]},"display_name":{"type":["string","null"],"description":"Display name.","examples":["Coinbase"]},"description":{"type":["string","null"],"description":"Bio.","examples":["Coinbase on Bluesky"]},"avatar_url":{"type":["string","null"],"description":"Avatar URL.","examples":["https://cdn.bsky.app/img/avatar/plain/did:plc:coin/y@jpeg"]}},"required":["did","handle","display_name","description","avatar_url"],"description":"An account from actor search."},"description":"Accounts found in search_actors mode; empty otherwise."},"thread":{"type":["object","null"],"properties":{"post":{"type":"object","properties":{"uri":{"type":"string","description":"Post AT-URI.","examples":["at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a"]},"cid":{"type":["string","null"],"description":"Content id.","examples":["bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi"]},"url":{"type":["string","null"],"description":"Web URL of the post.","examples":["https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a"]},"author_handle":{"type":["string","null"],"description":"Author handle.","examples":["bsky.app"]},"author_did":{"type":["string","null"],"description":"Author DID.","examples":["did:plc:z72i7hdynmk6r22z27h6tvur"]},"text":{"type":"string","description":"Post text.","examples":["hello world"]},"created_at":{"type":["string","null"],"description":"Author's creation time.","examples":["2026-09-26T20:00:00.000Z"]},"indexed_at":{"type":["string","null"],"description":"AppView indexing time.","examples":["2026-09-26T20:00:00.000Z"]},"likes":{"type":["integer","null"],"description":"Likes.","examples":[90]},"reposts":{"type":["integer","null"],"description":"Reposts.","examples":[7]},"replies":{"type":["integer","null"],"description":"Replies.","examples":[5]},"quotes":{"type":["integer","null"],"description":"Quote posts.","examples":[2]},"langs":{"type":"array","items":{"type":"string","description":"BCP-47 tag.","examples":["en"]},"description":"Languages the author declared.","examples":[["en"]]},"is_repost":{"type":"boolean","description":"Whether this feed item is a repost by the actor.","examples":[false]},"reply_to":{"type":["string","null"],"description":"AT-URI of the parent post when this is a reply.","examples":[null]},"embed_type":{"type":["string","null"],"description":"Embed type ($type) when the post carries one.","examples":["app.bsky.embed.images#view"]}},"required":["uri","cid","url","author_handle","author_did","text","created_at","indexed_at","likes","reposts","replies","quotes","langs","is_repost","reply_to","embed_type"],"description":"One Bluesky post."},"replies":{"type":"array","items":{"type":"object","properties":{"uri":{"type":"string","description":"Post AT-URI.","examples":["at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a"]},"cid":{"type":["string","null"],"description":"Content id.","examples":["bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi"]},"url":{"type":["string","null"],"description":"Web URL of the post.","examples":["https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a"]},"author_handle":{"type":["string","null"],"description":"Author handle.","examples":["bsky.app"]},"author_did":{"type":["string","null"],"description":"Author DID.","examples":["did:plc:z72i7hdynmk6r22z27h6tvur"]},"text":{"type":"string","description":"Post text.","examples":["hello world"]},"created_at":{"type":["string","null"],"description":"Author's creation time.","examples":["2026-09-26T20:00:00.000Z"]},"indexed_at":{"type":["string","null"],"description":"AppView indexing time.","examples":["2026-09-26T20:00:00.000Z"]},"likes":{"type":["integer","null"],"description":"Likes.","examples":[90]},"reposts":{"type":["integer","null"],"description":"Reposts.","examples":[7]},"replies":{"type":["integer","null"],"description":"Replies.","examples":[5]},"quotes":{"type":["integer","null"],"description":"Quote posts.","examples":[2]},"langs":{"type":"array","items":{"type":"string","description":"BCP-47 tag.","examples":["en"]},"description":"Languages the author declared.","examples":[["en"]]},"is_repost":{"type":"boolean","description":"Whether this feed item is a repost by the actor.","examples":[false]},"reply_to":{"type":["string","null"],"description":"AT-URI of the parent post when this is a reply.","examples":[null]},"embed_type":{"type":["string","null"],"description":"Embed type ($type) when the post carries one.","examples":["app.bsky.embed.images#view"]}},"required":["uri","cid","url","author_handle","author_did","text","created_at","indexed_at","likes","reposts","replies","quotes","langs","is_repost","reply_to","embed_type"],"description":"One Bluesky post."},"description":"Replies flattened to the requested depth, in thread order."},"reply_count":{"type":"integer","description":"Replies returned.","examples":[2]}},"required":["post","replies","reply_count"],"description":"The thread, in thread mode; null otherwise."},"post_count":{"type":"integer","description":"Posts returned.","examples":[3]},"actor_count":{"type":"integer","description":"Accounts returned.","examples":[0]},"source":{"type":"string","const":"bluesky-public-appview","description":"Data source."},"as_of":{"type":"string","description":"Indexing time of the newest post returned, else checked_at.","examples":["2026-09-26T20:00:00.000Z"]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["mode","actor","query","uri","profile","posts","actors","thread","post_count","actor_count","source","as_of","checked_at"]},"output_example":{"mode":"profile","actor":"bsky.app","query":"coinbase","uri":"at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a","profile":{"did":"did:plc:z72i7hdynmk6r22z27h6tvur","handle":"bsky.app","display_name":"Bluesky","description":"official bluesky account","avatar_url":"https://cdn.bsky.app/img/avatar/plain/did:plc:z72i7hdynmk6r22z27h6tvur/x@jpeg","followers":4200000,"follows":3,"posts":1234,"created_at":"2023-04-12T04:53:57.057Z"},"posts":[{"uri":"at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a","cid":"bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi","url":"https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a","author_handle":"bsky.app","author_did":"did:plc:z72i7hdynmk6r22z27h6tvur","text":"hello world","created_at":"2026-09-26T20:00:00.000Z","indexed_at":"2026-09-26T20:00:00.000Z","likes":90,"reposts":7,"replies":5,"quotes":2,"langs":["en"],"is_repost":false,"reply_to":null,"embed_type":"app.bsky.embed.images#view"}],"actors":[{"did":"did:plc:coin","handle":"coinbase.com","display_name":"Coinbase","description":"Coinbase on Bluesky","avatar_url":"https://cdn.bsky.app/img/avatar/plain/did:plc:coin/y@jpeg"}],"thread":{"post":{"uri":"at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a","cid":"bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi","url":"https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a","author_handle":"bsky.app","author_did":"did:plc:z72i7hdynmk6r22z27h6tvur","text":"hello world","created_at":"2026-09-26T20:00:00.000Z","indexed_at":"2026-09-26T20:00:00.000Z","likes":90,"reposts":7,"replies":5,"quotes":2,"langs":["en"],"is_repost":false,"reply_to":null,"embed_type":"app.bsky.embed.images#view"},"replies":[{"uri":"at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cdr44fc2a","cid":"bafyreicrjbyelww7gvuymagi7g2rirokyrvedwzeh5vflmsvnwhnwjvnyi","url":"https://bsky.app/profile/bsky.app/post/3mw2cdr44fc2a","author_handle":"bsky.app","author_did":"did:plc:z72i7hdynmk6r22z27h6tvur","text":"hello world","created_at":"2026-09-26T20:00:00.000Z","indexed_at":"2026-09-26T20:00:00.000Z","likes":90,"reposts":7,"replies":5,"quotes":2,"langs":["en"],"is_repost":false,"reply_to":null,"embed_type":"app.bsky.embed.images#view"}],"reply_count":2},"post_count":3,"actor_count":0,"source":"bluesky-public-appview","as_of":"2026-09-26T20:00:00.000Z","checked_at":"2026-09-26T18:00:00Z"},"returns":"mode, actor, query, uri, profile{}, posts[], actors[], thread{}, post_count, actor_count, source, as_of, checked_at.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Bluesky data, live and keyless: a profile with its latest posts and engagement (likes, reposts, replies, quotes), an account search, or a post thread with its replies, from the public AppView. Use it for social listening and influencer checks on Bluesky. Input: mode (profile, search_actors, thread) with actor, query or uri; optional posts, limit, depth.","capabilities":["social.bluesky","SocialBluesky"],"representativeQueries":["latest posts from a Bluesky account with likes and reposts","find Bluesky accounts matching a name","read a Bluesky thread and its replies","Bluesky profile follower count and recent posts"],"tags":["bluesky","social-media","social-listening","posts","profiles","atproto","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/social/bluesky","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:social.mastodon","displayName":"Mastodon hashtag timeline, account, search or trends, live (social.mastodon)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/social/mastodon","method":"POST","url":"https://hubvibe-io.com/work/social/mastodon","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"mode":{"type":"string","enum":["hashtag","account","search","trends"],"description":"hashtag: latest statuses under a tag; account: an account and its statuses; search: accounts or hashtags matching a query; trends: trending hashtags."},"instance":{"type":"string","maxLength":253,"description":"Mastodon server hostname, default mastodon.social."},"tag":{"type":"string","minLength":1,"maxLength":100,"description":"Hashtag without #; hashtag mode."},"acct":{"type":"string","minLength":1,"maxLength":320,"description":"Username, optionally @domain (Gargron or Gargron@mastodon.social); account mode."},"statuses":{"type":"integer","minimum":1,"maximum":40,"description":"Latest statuses to return in account mode, default 10."},"query":{"type":"string","minLength":1,"maxLength":200,"description":"Search words; search mode."},"kind":{"type":"string","enum":["accounts","hashtags"],"description":"What to search for, default accounts."},"limit":{"type":"integer","minimum":1,"maximum":40,"description":"Items to return (hashtag up to 40, search up to 25, trends up to 20), default 10."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["mode"],"additionalProperties":false},"input_example":{"mode":"hashtag","tag":"opensource","limit":3},"output_schema":{"type":"object","properties":{"mode":{"type":"string","enum":["hashtag","account","search","trends"],"description":"Mode run.","examples":["hashtag"]},"instance":{"type":"string","description":"Instance queried.","examples":["mastodon.social"]},"tag":{"type":["string","null"],"description":"Hashtag asked for (hashtag mode).","examples":["opensource"]},"acct":{"type":["string","null"],"description":"Account asked for (account mode).","examples":["Gargron"]},"query":{"type":["string","null"],"description":"Query asked for (search mode).","examples":["opensource"]},"kind":{"type":["string","null"],"description":"accounts or hashtags (search mode).","examples":["accounts"]},"account":{"type":["object","null"],"properties":{"id":{"type":["string","null"],"description":"Account id on the instance.","examples":["1"]},"username":{"type":["string","null"],"description":"Username.","examples":["Gargron"]},"acct":{"type":["string","null"],"description":"acct (username or username@domain).","examples":["Gargron"]},"display_name":{"type":["string","null"],"description":"Display name.","examples":["Eugen Rochko"]},"url":{"type":["string","null"],"description":"Profile URL.","examples":["https://mastodon.social/@Gargron"]},"bio":{"type":"string","description":"Bio as plain text.","examples":["Founder of Mastodon"]},"avatar_url":{"type":["string","null"],"description":"Avatar URL.","examples":["https://files.mastodon.social/accounts/avatars/x.png"]},"followers":{"type":["integer","null"],"description":"Followers.","examples":[500000]},"following":{"type":["integer","null"],"description":"Following.","examples":[400]},"statuses":{"type":["integer","null"],"description":"Statuses posted.","examples":[75000]},"created_at":{"type":["string","null"],"description":"Account creation time.","examples":["2016-03-16T00:00:00.000Z"]},"bot":{"type":["boolean","null"],"description":"Declared as a bot; null when not stated.","examples":[false]}},"required":["id","username","acct","display_name","url","bio","avatar_url","followers","following","statuses","created_at","bot"],"description":"The account, in account mode; null otherwise."},"statuses":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Status id.","examples":["115000000000000001"]},"url":{"type":["string","null"],"description":"Web URL.","examples":["https://mastodon.social/@Gargron/115000000000000001"]},"created_at":{"type":["string","null"],"description":"Creation time.","examples":["2026-09-27T01:00:00.000Z"]},"text":{"type":"string","description":"Plain-text content.","examples":["Open source rocks"]},"content_html":{"type":"string","description":"Content as the instance serves it (sanitized HTML).","examples":["<p>Open source rocks</p>"]},"language":{"type":["string","null"],"description":"Language code.","examples":["en"]},"visibility":{"type":["string","null"],"description":"public, unlisted...","examples":["public"]},"replies":{"type":["integer","null"],"description":"Replies.","examples":[1]},"reblogs":{"type":["integer","null"],"description":"Boosts.","examples":[2]},"favourites":{"type":["integer","null"],"description":"Favourites.","examples":[3]},"is_reblog":{"type":"boolean","description":"Whether this status is a boost of another.","examples":[false]},"reblog_of_url":{"type":["string","null"],"description":"URL of the boosted status when is_reblog.","examples":[null]},"author_acct":{"type":["string","null"],"description":"Author acct.","examples":["Gargron"]},"author_display_name":{"type":["string","null"],"description":"Author display name.","examples":["Eugen Rochko"]},"media":{"type":"array","items":{"type":"object","properties":{"type":{"type":["string","null"],"description":"image, video, gifv, audio...","examples":["image"]},"url":{"type":"string","description":"Media URL.","examples":["https://files.mastodon.social/media_attachments/files/x.png"]}},"required":["type","url"],"description":"One attachment."},"description":"Media attachments.","examples":[[]]},"tags":{"type":"array","items":{"type":"string","description":"Hashtag name.","examples":["opensource"]},"description":"Hashtags on the status.","examples":[["opensource"]]},"sensitive":{"type":"boolean","description":"Marked sensitive.","examples":[false]},"spoiler_text":{"type":"string","description":"Content warning text, empty when none.","examples":[""]}},"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"],"description":"One Mastodon status."},"description":"Statuses, newest first (hashtag and account modes); empty otherwise."},"accounts":{"type":"array","items":{"type":"object","properties":{"id":{"type":["string","null"],"description":"Account id on the instance.","examples":["1"]},"username":{"type":["string","null"],"description":"Username.","examples":["Gargron"]},"acct":{"type":["string","null"],"description":"acct (username or username@domain).","examples":["Gargron"]},"display_name":{"type":["string","null"],"description":"Display name.","examples":["Eugen Rochko"]},"url":{"type":["string","null"],"description":"Profile URL.","examples":["https://mastodon.social/@Gargron"]},"bio":{"type":"string","description":"Bio as plain text.","examples":["Founder of Mastodon"]},"avatar_url":{"type":["string","null"],"description":"Avatar URL.","examples":["https://files.mastodon.social/accounts/avatars/x.png"]},"followers":{"type":["integer","null"],"description":"Followers.","examples":[500000]},"following":{"type":["integer","null"],"description":"Following.","examples":[400]},"statuses":{"type":["integer","null"],"description":"Statuses posted.","examples":[75000]},"created_at":{"type":["string","null"],"description":"Account creation time.","examples":["2016-03-16T00:00:00.000Z"]},"bot":{"type":["boolean","null"],"description":"Declared as a bot; null when not stated.","examples":[false]}},"required":["id","username","acct","display_name","url","bio","avatar_url","followers","following","statuses","created_at","bot"],"description":"A Mastodon account."},"description":"Accounts found (search mode, kind accounts); empty otherwise."},"hashtags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Hashtag name.","examples":["opensource"]},"url":{"type":["string","null"],"description":"Tag URL on the instance.","examples":["https://mastodon.social/tags/opensource"]},"uses_7d":{"type":["integer","null"],"description":"Uses over the history the instance reports (about a week); null when none.","examples":[120]},"accounts_7d":{"type":["integer","null"],"description":"Distinct accounts over that history; null when none.","examples":[90]},"days":{"type":"integer","description":"Days of history the instance reported.","examples":[7]}},"required":["name","url","uses_7d","accounts_7d","days"],"description":"A hashtag with its recent activity."},"description":"Hashtags (search mode, kind hashtags, or trends); empty otherwise."},"status_count":{"type":"integer","description":"Statuses returned.","examples":[3]},"source":{"type":"string","const":"mastodon-public-api","description":"Data source."},"as_of":{"type":"string","description":"Creation time of the newest status returned, else checked_at.","examples":["2026-09-27T01:00:00.000Z"]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["mode","instance","tag","acct","query","kind","account","statuses","accounts","hashtags","status_count","source","as_of","checked_at"]},"output_example":{"mode":"hashtag","instance":"mastodon.social","tag":"opensource","acct":"Gargron","query":"opensource","kind":"accounts","account":{"id":"1","username":"Gargron","acct":"Gargron","display_name":"Eugen Rochko","url":"https://mastodon.social/@Gargron","bio":"Founder of Mastodon","avatar_url":"https://files.mastodon.social/accounts/avatars/x.png","followers":500000,"following":400,"statuses":75000,"created_at":"2016-03-16T00:00:00.000Z","bot":false},"statuses":[{"id":"115000000000000001","url":"https://mastodon.social/@Gargron/115000000000000001","created_at":"2026-09-27T01:00:00.000Z","text":"Open source rocks","content_html":"<p>Open source rocks</p>","language":"en","visibility":"public","replies":1,"reblogs":2,"favourites":3,"is_reblog":false,"reblog_of_url":null,"author_acct":"Gargron","author_display_name":"Eugen Rochko","media":[],"tags":["opensource"],"sensitive":false,"spoiler_text":""}],"accounts":[{"id":"1","username":"Gargron","acct":"Gargron","display_name":"Eugen Rochko","url":"https://mastodon.social/@Gargron","bio":"Founder of Mastodon","avatar_url":"https://files.mastodon.social/accounts/avatars/x.png","followers":500000,"following":400,"statuses":75000,"created_at":"2016-03-16T00:00:00.000Z","bot":false}],"hashtags":[{"name":"opensource","url":"https://mastodon.social/tags/opensource","uses_7d":120,"accounts_7d":90,"days":7}],"status_count":3,"source":"mastodon-public-api","as_of":"2026-09-27T01:00:00.000Z","checked_at":"2026-09-26T18:00:00Z"},"returns":"mode, instance, tag, acct, query, kind, account{}, statuses[], accounts[], hashtags[], status_count, source, as_of, checked_at.","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Mastodon data, live and keyless (any public instance): a hashtag timeline, an account with its latest posts, account or hashtag search, or trending hashtags, each post with text, counts, media and tags. Use it for social listening and trend tracking in the fediverse. Input: mode (hashtag, account, search, trends) with tag, acct or query; optional instance, limit.","capabilities":["social.mastodon","SocialMastodon"],"representativeQueries":["latest Mastodon posts under a hashtag","a Mastodon account's recent statuses and follower count","trending hashtags on mastodon.social right now","search Mastodon for accounts or hashtags"],"tags":["mastodon","fediverse","social-media","trending","hashtags","social-listening","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/social/mastodon","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:social.x_pulse","displayName":"X (Twitter) topic pulse: volume and engagement as aggregates (social.x_pulse)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/social/x_pulse","method":"POST","url":"https://hubvibe-io.com/work/social/x_pulse","price_usd":0.5,"tier":"standard","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":400,"description":"Words or X search operators (\"machine learning\" from:nasa has:links)."},"days":{"type":"integer","minimum":1,"maximum":7,"description":"Window ending now, default 7 (X's recent limit)."},"granularity":{"type":"string","enum":["hour","day"],"description":"Volume buckets, default day."},"sample":{"type":"integer","minimum":0,"maximum":100,"description":"Recent posts read for the engagement aggregates, default 40; 0 = volume only."},"lang":{"type":"string","minLength":2,"maxLength":2,"description":"Restrict to a language (en, ja...)."},"include_retweets":{"type":"boolean","description":"Default false: reposts are excluded from volume and sample."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["query"],"additionalProperties":false},"input_example":{"query":"open source","days":3,"sample":20,"lang":"en"},"output_schema":{"type":"object","properties":{"query":{"type":"string","description":"The query as given.","examples":["open source"]},"effective_query":{"type":"string","description":"The query sent to X (lang: and -is:retweet added unless given).","examples":["open source lang:en -is:retweet"]},"window":{"type":"object","properties":{"start":{"type":"string","description":"Window start (RFC 3339).","examples":["2026-09-24T09:00:00Z"]},"end":{"type":"string","description":"Window end (RFC 3339), a few seconds before the call.","examples":["2026-09-27T08:59:45Z"]},"days":{"type":"integer","description":"Days covered.","examples":[3]}},"required":["start","end","days"],"description":"The window analysed."},"granularity":{"type":"string","enum":["hour","day"],"description":"Volume bucket size.","examples":["day"]},"volume":{"type":"object","properties":{"total":{"type":"integer","description":"Posts matching the query in the window.","examples":[21636]},"buckets":{"type":"array","items":{"type":"object","properties":{"start":{"type":["string","null"],"description":"Bucket start.","examples":["2026-09-26T00:00:00.000Z"]},"end":{"type":["string","null"],"description":"Bucket end.","examples":["2026-09-27T00:00:00.000Z"]},"count":{"type":"integer","description":"Posts in the bucket.","examples":[7200]}},"required":["start","end","count"],"description":"One bucket."},"description":"Counts per bucket, oldest first."},"bucket_count":{"type":"integer","description":"Buckets returned.","examples":[4]}},"required":["total","buckets","bucket_count"],"description":"Post volume from X's recent-counts endpoint."},"sample":{"type":"object","properties":{"requested":{"type":"integer","description":"Posts asked to read.","examples":[20]},"read":{"type":"integer","description":"Posts actually read.","examples":[20]},"pages":{"type":"integer","description":"Search pages fetched.","examples":[1]},"x_cost_usd":{"type":"number","description":"What X bills for the posts read, at $0.005 each.","examples":[0.1]}},"required":["requested","read","pages","x_cost_usd"],"description":"The sample the engagement figures rest on."},"engagement":{"type":["object","null"],"properties":{"posts_read":{"type":"integer","description":"Posts in the sample.","examples":[20]},"likes_total":{"type":["integer","null"],"description":"Likes summed.","examples":[340]},"reposts_total":{"type":["integer","null"],"description":"Reposts summed.","examples":[41]},"replies_total":{"type":["integer","null"],"description":"Replies summed.","examples":[27]},"quotes_total":{"type":["integer","null"],"description":"Quotes summed.","examples":[5]},"impressions_total":{"type":["integer","null"],"description":"Impressions summed.","examples":[51200]},"bookmarks_total":{"type":["integer","null"],"description":"Bookmarks summed.","examples":[12]},"mean_likes":{"type":["number","null"],"description":"Mean likes per post.","examples":[17.0]},"mean_impressions":{"type":["number","null"],"description":"Mean impressions per post.","examples":[2560.0]},"max_likes":{"type":["integer","null"],"description":"Most-liked post's likes.","examples":[120]},"max_impressions":{"type":["integer","null"],"description":"Most-seen post's impressions.","examples":[18000]},"engagement_rate_pct":{"type":["number","null"],"description":"(likes+reposts+replies+quotes)/impressions, percent.","examples":[0.807]},"languages":{"type":"object","properties":{},"required":[],"description":"Posts per language code.","additionalProperties":{"type":"integer"},"examples":[{"en":20}]},"top_hashtags":{"type":"array","items":{"type":"object","properties":{"tag":{"type":"string","description":"Hashtag, lower-cased.","examples":["opensource"]},"posts":{"type":"integer","description":"Posts using it.","examples":[4]}},"required":["tag","posts"],"description":"One hashtag."},"description":"Up to 10 most-used hashtags.","examples":[[{"tag":"opensource","posts":4}]]},"with_hashtags_pct":{"type":["number","null"],"description":"Share of posts with a hashtag.","examples":[35.0]},"with_links_pct":{"type":["number","null"],"description":"Share of posts linking outside X.","examples":[40.0]},"with_media_pct":{"type":["number","null"],"description":"Share of posts with photos or video.","examples":[15.0]},"possibly_sensitive_pct":{"type":["number","null"],"description":"Share X flags as possibly sensitive.","examples":[0.0]}},"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"],"description":"Engagement aggregates over the sample; null when sample is 0."},"source":{"type":"string","const":"x-api-v2","description":"Data source."},"as_of":{"type":"string","description":"End of the window analysed.","examples":["2026-09-27T08:59:45Z"]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","effective_query","window","granularity","volume","sample","engagement","source","as_of","checked_at"]},"output_example":{"query":"open source","effective_query":"open source lang:en -is:retweet","window":{"start":"2026-09-24T09:00:00Z","end":"2026-09-27T08:59:45Z","days":3},"granularity":"day","volume":{"total":21636,"buckets":[{"start":"2026-09-26T00:00:00.000Z","end":"2026-09-27T00:00:00.000Z","count":7200}],"bucket_count":4},"sample":{"requested":20,"read":20,"pages":1,"x_cost_usd":0.1},"engagement":{"posts_read":20,"likes_total":340,"reposts_total":41,"replies_total":27,"quotes_total":5,"impressions_total":51200,"bookmarks_total":12,"mean_likes":17.0,"mean_impressions":2560.0,"max_likes":120,"max_impressions":18000,"engagement_rate_pct":0.807,"languages":{"en":20},"top_hashtags":[{"tag":"opensource","posts":4}],"with_hashtags_pct":35.0,"with_links_pct":40.0,"with_media_pct":15.0,"possibly_sensitive_pct":0.0},"source":"x-api-v2","as_of":"2026-09-27T08:59:45Z","checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Twitter / X sentiment and volume for any topic, as numbers, live: post volume per hour or day over the last 1-7 days, and over a sample of recent posts the engagement totals and rate (likes, reposts, replies, quotes, impressions), language mix, top hashtags and link/media share. Aggregates only: no post text or authors. Input: query (X operators allowed); optional days, granularity, sample, lang.","capabilities":["social.x_pulse","SocialXPulse"],"representativeQueries":["how much is X talking about a topic this week and how engaged is it","post volume per day on X for a keyword","engagement rate, top hashtags and language mix for a topic on Twitter","is a brand trending on X right now, as numbers"],"tags":["twitter","x","social-listening","trend-analysis","engagement","buzz","social-media","standard","pay-per-call"],"metadata":{"price_usd":0.5,"tier":"standard","path":"/work/social/x_pulse","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:security.mcp_inspect","displayName":"Inspect an MCP endpoint (security.mcp_inspect)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/security/mcp_inspect","method":"POST","url":"https://hubvibe-io.com/work/security/mcp_inspect","price_usd":5.0,"tier":"advanced","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"http(s) URL to fetch."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://example.com"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The MCP endpoint inspected.","examples":["https://mcp.example.com/mcp"]},"reachable":{"type":"boolean","description":"Whether the server answered the MCP initialize handshake.","examples":[true]},"requires_auth":{"type":"boolean","description":"Whether an unauthenticated initialize was refused.","examples":[false]},"initialize_status":{"type":"integer","description":"HTTP status of the initialize call.","examples":[200]},"protocol_version":{"type":["string","null"],"description":"MCP protocol version the server negotiated.","examples":["2025-06-18"]},"server_name":{"type":["string","null"],"description":"serverInfo.name.","examples":["example-mcp"]},"server_version":{"type":["string","null"],"description":"serverInfo.version.","examples":["1.0.0"]},"tool_count":{"type":"integer","description":"Tools listed.","examples":[3]},"tools":{"type":"array","items":{"type":"object","properties":{"name":{"type":["string","null"],"description":"Tool name.","examples":["get_weather"]},"description":{"type":["string","null"],"description":"Tool description.","examples":["Current weather for a city."]},"annotations":{"description":"The tool's annotations object, as served.","type":["object","null"],"examples":[{"readOnlyHint":true}]}},"required":["name"],"description":"One tool the inspected server lists."},"description":"Every tool listed, with its annotations."},"tools_without_readonly_annotation":{"type":"array","items":{"type":"string","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.","examples":[["delete_records"]]},"tools_error":{"type":["string","null"],"description":"Why tools/list failed, when it did.","examples":[null]}},"required":["url","reachable","requires_auth","initialize_status","tool_count","tools","tools_without_readonly_annotation"]},"output_example":{"url":"https://mcp.example.com/mcp","reachable":true,"requires_auth":false,"initialize_status":200,"protocol_version":"2025-06-18","server_name":"example-mcp","server_version":"1.0.0","tool_count":3,"tools":[{"name":"get_weather","description":"Current weather for a city.","annotations":{"readOnlyHint":true}}],"tools_without_readonly_annotation":["delete_records"],"tools_error":null},"returns":"reachable, requires_auth, protocol_version, tool_count, tools[], tools_without_readonly_annotation[].","max_seconds":45,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $5.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$5.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$5.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"MCP server security scan: 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. Use it before connecting an agent to an unknown MCP server. Input: url of the MCP endpoint.","capabilities":["security.mcp_inspect","SecurityMcpInspect"],"representativeQueries":["inspect an MCP server for auth and which tools can change state","audit a remote MCP endpoint's tools and annotations","does this MCP server require authentication"],"tags":["mcp","security","audit","agent-safety","scanner","tools","advanced","pay-per-call"],"metadata":{"price_usd":5.0,"tier":"advanced","path":"/work/security/mcp_inspect","method":"POST","compound":false,"max_seconds":45},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:fetch.raw","displayName":"Raw HTTP fetch (fetch.raw)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/fetch/raw","method":"POST","url":"https://hubvibe-io.com/work/fetch/raw","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"url":{"type":"string","description":"http(s) URL to fetch."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["url"],"additionalProperties":false},"input_example":{"url":"https://example.com"},"output_schema":{"type":"object","properties":{"url":{"type":"string","description":"The URL requested.","examples":["https://example.com"]},"final_url":{"type":["string","null"],"description":"The URL after redirects.","examples":["https://example.com/"]},"status":{"type":"integer","description":"HTTP status the target returned; any status is a completed fetch.","examples":[200]},"content_type":{"type":["string","null"],"description":"Content-Type header.","examples":["text/html; charset=UTF-8"]},"bytes":{"type":"integer","description":"Response body size in bytes.","examples":[1256]},"text":{"type":["string","null"],"description":"Body text for textual content types; null for binary.","examples":["<!doctype html><html>..."]},"truncated":{"type":"boolean","description":"Whether `text` was cut at the fetch limit.","examples":[false]},"headers":{"type":"object","properties":{},"required":[],"description":"Response headers, lower-cased names.","additionalProperties":{"type":"string"},"examples":[{"content-type":"text/html; charset=UTF-8","cache-control":"max-age=604800"}]}},"required":["url","status","bytes","truncated","headers"]},"output_example":{"url":"https://example.com","final_url":"https://example.com/","status":200,"content_type":"text/html; charset=UTF-8","bytes":1256,"text":"<!doctype html><html>...","truncated":false,"headers":{"content-type":"text/html; charset=UTF-8","cache-control":"max-age=604800"}},"returns":"url, final_url, status, content_type, bytes, text, truncated, headers{}.","max_seconds":60,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"HTTP fetch / GET any URL: 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. Use it for API checks, uptime probes and raw HTML. Input: url. Readable text from a rendered page: extract.page.","capabilities":["fetch.raw","FetchRaw"],"representativeQueries":["fetch a URL and return the raw status, headers and body","what HTTP status and headers does this URL return","download the raw HTML of a page without rendering"],"tags":["http","fetch","curl","headers","uptime","raw-html","proxy","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/fetch/raw","method":"POST","compound":false,"max_seconds":60},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:chain.rpc","displayName":"Base RPC passthrough (chain.rpc)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/chain/rpc","method":"POST","url":"https://hubvibe-io.com/work/chain/rpc","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"method":{"type":"string","description":"e.g. eth_call, eth_getLogs."},"params":{"type":"array","description":"JSON-RPC positional params. Default []."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["method"],"additionalProperties":false},"input_example":{"method":"eth_blockNumber"},"output_schema":{"type":"object","properties":{"method":{"type":"string","description":"The JSON-RPC method called.","examples":["eth_blockNumber"]},"endpoint":{"type":"string","description":"The RPC endpoint that answered.","examples":["https://mainnet.base.org"]},"result":{"description":"The chain's `result`, verbatim, when the call succeeded.","examples":["0x2751f11"]},"error":{"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.","type":["object","null"],"examples":[{"code":-32000,"message":"execution reverted"}]}},"required":["method","endpoint"]},"output_example":{"method":"eth_blockNumber","endpoint":"https://mainnet.base.org","result":"0x2751f11","error":{"code":-32000,"message":"execution reverted"}},"returns":"method, result or error, endpoint.","max_seconds":30,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Base RPC endpoint, pay per call: any allowlisted read-only JSON-RPC method on Base mainnet (eth_call, eth_getBalance, eth_getLogs, eth_getBlockByNumber, eth_getTransactionReceipt and more) with your own params, no API key. Revert reasons come back as the result. Input: method; optional params.","capabilities":["chain.rpc","ChainRpc"],"representativeQueries":["call eth_getLogs on Base for a contract","raw JSON-RPC read against Base mainnet","eth_call a view function on Base"],"tags":["rpc","base","json-rpc","eth_call","onchain","web3","node","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/chain/rpc","method":"POST","compound":false,"max_seconds":30},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.rates","displayName":"Currency exchange rates (market.rates)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/rates","method":"POST","url":"https://hubvibe-io.com/work/market/rates","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"currency":{"type":"string","description":"e.g. USD, ETH, BTC."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["currency"],"additionalProperties":false},"input_example":{"currency":"USD"},"output_schema":{"type":"object","properties":{"currency":{"type":"string","description":"Base currency of the table.","examples":["USD"]},"rates":{"type":"object","properties":{},"required":[],"description":"Exchange rate per currency code, as decimal strings.","additionalProperties":{"type":"string"},"examples":[{"EUR":"0.92","GBP":"0.78","BTC":"0.0000103"}]},"source":{"type":"string","const":"coinbase-exchange-rates","description":"Data source."}},"required":["currency","rates","source"]},"output_example":{"currency":"USD","rates":{"EUR":"0.92","GBP":"0.78","BTC":"0.0000103"},"source":"coinbase-exchange-rates"},"returns":"currency, rates{}.","max_seconds":20,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Exchange rates / currency conversion table: Coinbase's full rate table for one base currency against every crypto and fiat currency it quotes (USD to BTC, ETH, EUR, GBP, JPY...). Use it to convert amounts between currencies. Input: currency code such as USD.","capabilities":["market.rates","MarketRates"],"representativeQueries":["exchange rates for USD against every currency","how much is one EUR in BTC","current fiat and crypto exchange rate table"],"tags":["exchange-rates","currency-conversion","forex","crypto","fiat","rates","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/market/rates","method":"POST","compound":false,"max_seconds":20},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.ticker","displayName":"Crypto ticker (market.ticker)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/ticker","method":"POST","url":"https://hubvibe-io.com/work/market/ticker","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"product_id":{"type":"string","description":"e.g. BTC-USD."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["product_id"],"additionalProperties":false},"input_example":{"product_id":"BTC-USD"},"output_schema":{"type":"object","properties":{"product_id":{"type":"string","description":"Coinbase product, base-quote.","examples":["BTC-USD"]},"price":{"type":["string","null"],"description":"Last trade price.","examples":["97231.45"]},"bid":{"type":["string","null"],"description":"Best bid.","examples":["97230.10"]},"ask":{"type":["string","null"],"description":"Best ask.","examples":["97232.80"]},"volume":{"type":["string","null"],"description":"24-hour volume in the base currency.","examples":["14231.9"]},"time":{"type":["string","null"],"description":"Exchange timestamp, ISO 8601.","examples":["2026-09-22T04:10:12.345Z"]},"source":{"type":"string","const":"coinbase-exchange","description":"Data source."}},"required":["product_id","price","bid","ask","source"]},"output_example":{"product_id":"BTC-USD","price":"97231.45","bid":"97230.10","ask":"97232.80","volume":"14231.9","time":"2026-09-22T04:10:12.345Z","source":"coinbase-exchange"},"returns":"product_id, price, bid, ask, volume, time.","max_seconds":20,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Crypto ticker / bid and ask: 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.","capabilities":["market.ticker","MarketTicker"],"representativeQueries":["best bid and ask for BTC-USD","live order book top of book for a Coinbase product","bid ask spread on ETH-USD"],"tags":["crypto-ticker","bid-ask","order-book","bitcoin","market-data","live","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/market/ticker","method":"POST","compound":false,"max_seconds":20},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:prediction.market","displayName":"Prediction market by slug (prediction.market)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/prediction/market","method":"POST","url":"https://hubvibe-io.com/work/prediction/market","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"slug":{"type":"string","description":"The market's Polymarket slug."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["slug"],"additionalProperties":false},"input_example":{"slug":"will-lebron-james-win-the-2028-us-presidential-election"},"output_schema":{"type":"object","properties":{"slug":{"type":"string","description":"The slug queried.","examples":["will-btc-close-above-100k"]},"market":{"type":"object","properties":{"id":{"type":"string","description":"Polymarket market id.","examples":["512345"]},"question":{"type":"string","description":"The market question.","examples":["Will BTC close above $100k on Dec 31?"]},"slug":{"type":"string","description":"Polymarket slug.","examples":["will-btc-close-above-100k"]},"active":{"type":"boolean","description":"Whether the market is active.","examples":[true]},"closed":{"type":"boolean","description":"Whether the market is closed.","examples":[false]},"end_date":{"type":["string","null"],"description":"ISO 8601 end date.","examples":["2026-12-31T00:00:00Z"]},"volume":{"type":["number","null"],"description":"Traded volume in USD.","examples":[1834520.5]},"liquidity":{"type":["number","null"],"description":"Liquidity in USD.","examples":[240310.2]},"implied_probabilities":{"type":"array","items":{"type":"object","properties":{"outcome":{"type":"string","description":"Outcome label.","examples":["Yes"]},"probability_pct":{"type":["number","null"],"description":"Implied probability in percent.","examples":[62.5]}},"required":["outcome"],"description":"One outcome and what the market prices it at."},"description":"Each outcome with its implied probability.","examples":[[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]]}},"required":["id","question","implied_probabilities"],"description":"One prediction market."},"source":{"type":"string","const":"polymarket-gamma","description":"Data source."}},"required":["slug","market","source"]},"output_example":{"slug":"will-btc-close-above-100k","market":{"id":"512345","question":"Will BTC close above $100k on Dec 31?","slug":"will-btc-close-above-100k","active":true,"closed":false,"end_date":"2026-12-31T00:00:00Z","volume":1834520.5,"liquidity":240310.2,"implied_probabilities":[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]},"source":"polymarket-gamma"},"returns":"slug, market{question,implied_probabilities[],...}.","max_seconds":20,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"One prediction market by slug: a Polymarket market's question and the current probability of each outcome as a percentage. Use it to track a market you already know. Input: slug. Search markets by topic: market.prediction.","capabilities":["prediction.market","PredictionMarket"],"representativeQueries":["look up a Polymarket market by slug","current probabilities for a specific prediction market"],"tags":["prediction-market","polymarket","odds","probability","market-lookup","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/prediction/market","method":"POST","compound":false,"max_seconds":20},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:prediction.events","displayName":"Prediction market events (prediction.events)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/prediction/events","method":"POST","url":"https://hubvibe-io.com/work/prediction/events","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"limit":{"type":"integer","description":"1-50, default 10."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false},"input_example":{},"output_schema":{"type":"object","properties":{"events":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Event id.","examples":["24011"]},"title":{"type":"string","description":"Event title.","examples":["Bitcoin price on December 31"]},"slug":{"type":"string","description":"Event slug.","examples":["bitcoin-price-on-december-31"]},"volume":{"type":["number","null"],"description":"Traded volume in USD.","examples":[5230100.0]},"end_date":{"type":["string","null"],"description":"ISO 8601 end date.","examples":["2026-12-31T00:00:00Z"]},"market_count":{"type":"integer","description":"Markets grouped under this event.","examples":[6]}},"required":["id","title","slug","market_count"],"description":"One event."},"description":"Events, highest volume first."},"count":{"type":"integer","description":"Number of events returned.","examples":[1]},"source":{"type":"string","const":"polymarket-gamma","description":"Data source."}},"required":["events","count","source"]},"output_example":{"events":[{"id":"24011","title":"Bitcoin price on December 31","slug":"bitcoin-price-on-december-31","volume":5230100.0,"end_date":"2026-12-31T00:00:00Z","market_count":6}],"count":1,"source":"polymarket-gamma"},"returns":"events[{id,title,slug,volume,end_date,market_count}], count.","max_seconds":20,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Top prediction market events: Polymarket events (groups of related markets) ranked by trading volume, with title, slug, end date and market count. Use it to see what the biggest prediction markets are right now. Input: optional limit.","capabilities":["prediction.events","PredictionEvents"],"representativeQueries":["list the biggest prediction market events right now","which Polymarket events have the most volume"],"tags":["prediction-market","polymarket","events","trending","odds","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/prediction/events","method":"POST","compound":false,"max_seconds":20},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:maps.places","displayName":"Find places near a location (maps.places)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/maps/places","method":"POST","url":"https://hubvibe-io.com/work/maps/places","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":300,"description":"What and where: 'coffee near the Ferry Building, San Francisco'."},"near":{"type":"string","maxLength":200,"description":"Where, if not in the query: a place, US address or airport code."},"lat":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude of the center."},"lng":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude of the center."},"radius_m":{"type":"number","minimum":50,"maximum":10000,"description":"Search radius in metres. Default 1000."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Most places to return. Default 10."},"region_code":{"type":"string","description":"Accepted for compatibility; the location decides the area."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["query"],"additionalProperties":false},"input_example":{"query":"coffee near the Ferry Building, San Francisco"},"output_schema":{"type":"object","properties":{"query":{"type":"string","description":"The query as given.","examples":["coffee near the Ferry Building, San Francisco"]},"what":{"type":"string","description":"What was searched for.","examples":["coffee"]},"near":{"type":"object","properties":{"name":{"type":["string","null"],"description":"Where the search centred.","examples":["San Francisco Ferry Building (building in San Francisco)"]},"lat":{"type":"number","description":"Latitude.","examples":[37.7955]},"lon":{"type":"number","description":"Longitude.","examples":[-122.3937]},"source":{"type":"string","description":"How the center was found.","examples":["Wikidata Q1060289"]}},"required":["name","lat","lon","source"],"description":"The search center."},"radius_m":{"type":"integer","description":"Radius searched (widened when nothing was close).","examples":[1000]},"places":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Overture place id (GERS).","examples":["8333e7a5-b1ca-4c61-969d-5543d8de977a"]},"name":{"type":["string","null"],"description":"Name.","examples":["Red Bay Coffee Ferry Building"]},"category":{"type":["string","null"],"description":"Category.","examples":["coffee_shop"]},"distance_m":{"type":"integer","description":"Distance from the center.","examples":[54]},"lat":{"type":["number","null"],"description":"Latitude.","examples":[37.7953]},"lon":{"type":["number","null"],"description":"Longitude.","examples":[-122.3931]},"address":{"type":["string","null"],"description":"Address.","examples":["Ferry Building, 1, San Francisco, CA, 94111"]},"country":{"type":["string","null"],"description":"ISO country.","examples":["US"]},"website":{"type":["string","null"],"description":"Website.","examples":["http://redbaycoffee.com"]},"phone":{"type":["string","null"],"description":"Phone.","examples":["(415) 983-8000"]},"brand":{"type":["string","null"],"description":"Brand.","examples":["Red Bay Coffee"]},"operating_status":{"type":["string","null"],"description":"open, temporarily_closed...","examples":["open"]},"confidence":{"type":"number","description":"Overture's confidence the place exists (0-1).","examples":[0.942]},"sources":{"type":"array","items":{"type":"string","description":"Source dataset.","examples":["meta"]},"description":"Datasets behind this place.","examples":[["meta"]]}},"required":["id","name","category","distance_m","lat","lon","address","country","website","phone","brand","operating_status","confidence","sources"],"description":"A place."},"description":"Places, category matches first, then nearest."},"place_count":{"type":"integer","description":"Places returned.","examples":[10]},"attribution":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string","description":"Credit.","examples":["Places data from Overture Maps Foundation ..."]},"url":{"type":"string","description":"Link.","examples":["https://docs.overturemaps.org/attribution/"]}},"required":["text","url"],"description":"A credit."},"description":"Credits to show with the data."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["Nothing matched within 1000 m; the search was widened to 4000 m."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","what","near","radius_m","places","place_count","attribution","notes","checked_at"]},"output_example":{"query":"coffee near the Ferry Building, San Francisco","what":"coffee","near":{"name":"San Francisco Ferry Building (building in San Francisco)","lat":37.7955,"lon":-122.3937,"source":"Wikidata Q1060289"},"radius_m":1000,"places":[{"id":"8333e7a5-b1ca-4c61-969d-5543d8de977a","name":"Red Bay Coffee Ferry Building","category":"coffee_shop","distance_m":54,"lat":37.7953,"lon":-122.3931,"address":"Ferry Building, 1, San Francisco, CA, 94111","country":"US","website":"http://redbaycoffee.com","phone":"(415) 983-8000","brand":"Red Bay Coffee","operating_status":"open","confidence":0.942,"sources":["meta"]}],"place_count":10,"attribution":[{"text":"Places data from Overture Maps Foundation ...","url":"https://docs.overturemaps.org/attribution/"}],"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":40,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Places near me / local search anywhere: 'coffee near the Ferry Building, San Francisco', 'ramen near Shibuya Station', 'pharmacy' at coordinates. From Overture Maps open places data (80M+ places): name, category, distance, address, website, phone, brand, open status and confidence, nearest first; the area widens when nothing is close. Input: query; optional near, lat and lng, radius_m, limit.","capabilities":["maps.places","MapsPlaces"],"representativeQueries":["find places matching a query near a location","search for restaurants or shops in a city","coffee shops near a landmark with address, phone and website","nearest pharmacy or gas station to coordinates"],"tags":["places","local-search","nearby","poi","restaurants","maps","business-listings","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/maps/places","method":"POST","compound":false,"max_seconds":40},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:maps.route","displayName":"Compute a route (maps.route)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/maps/route","method":"POST","url":"https://hubvibe-io.com/work/maps/route","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"origin":{"type":"string"},"destination":{"type":"string"},"travel_mode":{"type":"string","description":"DRIVE, WALK, BICYCLE or TRANSIT. Default DRIVE."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["origin","destination"],"additionalProperties":false},"input_example":{"origin":"San Francisco, CA","destination":"Oakland, CA"},"output_schema":{"type":"object","properties":{"origin":{"type":"string","description":"Origin as given.","examples":["San Francisco, CA"]},"destination":{"type":"string","description":"Destination as given.","examples":["Oakland, CA"]},"travel_mode":{"type":"string","enum":["DRIVE","WALK","BICYCLE","TRANSIT"],"description":"Travel mode used.","examples":["DRIVE"]},"result":{"description":"The route, in Google Maps Grounding Lite's own response shape.","type":"object","examples":[{"routes":[{"distanceMeters":19870,"duration":"1362s"}]}]}},"required":["origin","destination","travel_mode","result"]},"output_example":{"origin":"San Francisco, CA","destination":"Oakland, CA","travel_mode":"DRIVE","result":{"routes":[{"distanceMeters":19870,"duration":"1362s"}]}},"returns":"origin, destination, travel_mode, result (route, per Maps Grounding Lite's own shape).","max_seconds":40,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Directions between two places: route and travel time by car, walking, bicycle or transit through Google Maps Grounding Lite. Use it for trip planning and ETAs. Input: origin, destination; optional travel_mode (DRIVE, WALK, BICYCLE, TRANSIT; default DRIVE).","capabilities":["maps.route","MapsRoute"],"representativeQueries":["driving route and duration between two addresses","how long does it take to walk from A to B","transit directions between two places"],"tags":["directions","routing","maps","travel-time","navigation","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/maps/route","method":"POST","compound":false,"max_seconds":40},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:maps.weather","displayName":"Weather at a location, now and for seven days (maps.weather)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/maps/weather","method":"POST","url":"https://hubvibe-io.com/work/maps/weather","price_usd":0.1,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"location":{"type":"string","minLength":2,"maxLength":200,"description":"Place name (Kyoto), US street address, or airport code (JFK)."},"lat":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude, instead of a location."},"lng":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude, instead of a location."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":[],"additionalProperties":false,"anyOf":[{"required":["location"]},{"required":["lat","lng"]}]},"input_example":{"location":"Kyoto"},"output_schema":{"type":"object","properties":{"location":{"type":["string","null"],"description":"Location as given; null when coordinates were sent.","examples":["Kyoto"]},"place":{"type":"object","properties":{"name":{"type":["string","null"],"description":"Where it resolved.","examples":["Kyoto (city in Japan)"]},"lat":{"type":"number","description":"Latitude.","examples":[35.0117]},"lon":{"type":"number","description":"Longitude.","examples":[135.7683]},"country":{"type":["string","null"],"description":"ISO country when known.","examples":["US"]},"source":{"type":"string","description":"How the place was found.","examples":["Wikidata Q34600"]}},"required":["name","lat","lon","country","source"],"description":"The point forecast."},"current":{"type":"object","properties":{"time":{"type":["string","null"],"description":"Hour (UTC).","examples":["2026-09-28T16:00:00Z"]},"temperature_c":{"type":["number","null"],"description":"Air temperature.","examples":[14.6]},"wind_speed_ms":{"type":["number","null"],"description":"Wind speed.","examples":[2.7]},"wind_direction_deg":{"type":["number","null"],"description":"Wind from.","examples":[172.4]},"humidity_pct":{"type":["number","null"],"description":"Relative humidity.","examples":[83.7]},"cloud_cover_pct":{"type":["number","null"],"description":"Cloud cover.","examples":[13.3]},"pressure_hpa":{"type":["number","null"],"description":"Sea-level pressure.","examples":[1013.5]},"condition":{"type":["string","null"],"description":"MET symbol code.","examples":["fair_day"]},"precipitation_mm":{"type":["number","null"],"description":"Precipitation in the next hour.","examples":[0.0]}},"required":["time","temperature_c","wind_speed_ms","wind_direction_deg","humidity_pct","cloud_cover_pct","pressure_hpa","condition","precipitation_mm"],"description":"Weather at one hour."},"hourly":{"type":"array","items":{"type":"object","properties":{"time":{"type":["string","null"],"description":"Hour (UTC).","examples":["2026-09-28T16:00:00Z"]},"temperature_c":{"type":["number","null"],"description":"Air temperature.","examples":[14.6]},"wind_speed_ms":{"type":["number","null"],"description":"Wind speed.","examples":[2.7]},"wind_direction_deg":{"type":["number","null"],"description":"Wind from.","examples":[172.4]},"humidity_pct":{"type":["number","null"],"description":"Relative humidity.","examples":[83.7]},"cloud_cover_pct":{"type":["number","null"],"description":"Cloud cover.","examples":[13.3]},"pressure_hpa":{"type":["number","null"],"description":"Sea-level pressure.","examples":[1013.5]},"condition":{"type":["string","null"],"description":"MET symbol code.","examples":["fair_day"]},"precipitation_mm":{"type":["number","null"],"description":"Precipitation in the next hour.","examples":[0.0]}},"required":["time","temperature_c","wind_speed_ms","wind_direction_deg","humidity_pct","cloud_cover_pct","pressure_hpa","condition","precipitation_mm"],"description":"Weather at one hour."},"description":"The next 24 hours."},"daily":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","description":"Day (UTC).","examples":["2026-09-29"]},"min_c":{"type":["number","null"],"description":"Low.","examples":[12.1]},"max_c":{"type":["number","null"],"description":"High.","examples":[21.4]},"precipitation_mm":{"type":"number","description":"Total precipitation.","examples":[1.2]},"condition":{"type":["string","null"],"description":"Midday symbol.","examples":["partlycloudy_day"]}},"required":["date","min_c","max_c","precipitation_mm","condition"],"description":"One day."},"description":"Up to seven days."},"alerts":{"type":"array","items":{"type":"object","properties":{"event":{"type":["string","null"],"description":"Alert type.","examples":["Air Quality Alert"]},"severity":{"type":["string","null"],"description":"Severity.","examples":["Moderate"]},"headline":{"type":["string","null"],"description":"Headline.","examples":["Air Quality Alert issued September 28 ..."]},"effective":{"type":["string","null"],"description":"From.","examples":["2026-09-28T12:00:00-05:00"]},"expires":{"type":["string","null"],"description":"Until.","examples":["2026-09-29T00:00:00-05:00"]}},"required":["event","severity","headline","effective","expires"],"description":"An active NWS alert."},"description":"Active US National Weather Service alerts; empty outside the US or when none.","examples":[[]]},"alerts_covered":{"type":"boolean","description":"Whether alerts were checked (US points).","examples":[true]},"units":{"type":"object","properties":{"temperature":{"type":"string","description":"Unit.","examples":["celsius"]},"wind_speed":{"type":"string","description":"Unit.","examples":["m/s"]},"precipitation":{"type":"string","description":"Unit.","examples":["mm"]},"pressure":{"type":"string","description":"Unit.","examples":["hPa"]}},"required":["temperature","wind_speed","precipitation","pressure"],"description":"Units."},"forecast_updated_at":{"type":["string","null"],"description":"When MET Norway last updated this forecast.","examples":["2026-09-28T13:18:23Z"]},"attribution":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string","description":"Credit.","examples":["Data from MET Norway"]},"url":{"type":"string","description":"Link.","examples":["https://www.met.no/en"]},"license":{"type":"string","description":"Licence.","examples":["CC BY 4.0"]}},"required":["text","url","license"],"description":"A required credit."},"description":"Credits to show with the data."},"sections_failed":{"type":"array","items":{"type":"string","description":"A section whose source did not answer.","examples":["alerts"]},"description":"Empty when none.","examples":[[]]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["alerts: NWS alerts timed out"]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["location","place","current","hourly","daily","alerts","alerts_covered","units","forecast_updated_at","attribution","sections_failed","notes","checked_at"]},"output_example":{"location":"Kyoto","place":{"name":"Kyoto (city in Japan)","lat":35.0117,"lon":135.7683,"country":"US","source":"Wikidata Q34600"},"current":{"time":"2026-09-28T16:00:00Z","temperature_c":14.6,"wind_speed_ms":2.7,"wind_direction_deg":172.4,"humidity_pct":83.7,"cloud_cover_pct":13.3,"pressure_hpa":1013.5,"condition":"fair_day","precipitation_mm":0.0},"hourly":[{"time":"2026-09-28T16:00:00Z","temperature_c":14.6,"wind_speed_ms":2.7,"wind_direction_deg":172.4,"humidity_pct":83.7,"cloud_cover_pct":13.3,"pressure_hpa":1013.5,"condition":"fair_day","precipitation_mm":0.0}],"daily":[{"date":"2026-09-29","min_c":12.1,"max_c":21.4,"precipitation_mm":1.2,"condition":"partlycloudy_day"}],"alerts":[],"alerts_covered":true,"units":{"temperature":"celsius","wind_speed":"m/s","precipitation":"mm","pressure":"hPa"},"forecast_updated_at":"2026-09-28T13:18:23Z","attribution":[{"text":"Data from MET Norway","url":"https://www.met.no/en","license":"CC BY 4.0"}],"sections_failed":[],"notes":[],"checked_at":"2026-09-26T18:00:00Z"},"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.","max_seconds":40,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Weather forecast 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.","capabilities":["maps.weather","MapsWeather"],"representativeQueries":["current weather at a location","what is the temperature in a city right now","seven-day forecast with precipitation for any place on Earth","active weather alerts for a US address"],"tags":["weather","forecast","weather-api","temperature","rain","alerts","utility","pay-per-call"],"metadata":{"price_usd":0.1,"tier":"utility","path":"/work/maps/weather","method":"POST","compound":false,"max_seconds":40},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:video.generate","displayName":"Generate a video (video.generate)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/video/generate","method":"POST","url":"https://hubvibe-io.com/work/video/generate","price_usd":10.0,"tier":"premium","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"prompt":{"type":"string"},"aspect_ratio":{"type":"string","description":"16:9 or 9:16. Default 16:9."},"duration_seconds":{"type":"integer","description":"4, 6 or 8. Default 6."},"generate_audio":{"type":"boolean","description":"Default false."},"inline":{"type":"boolean","description":"Also return the bytes as video_base64. Default false."},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["prompt"],"additionalProperties":false},"input_example":{"prompt":"A single bee landing on a circuit-board flower, slow motion"},"output_schema":{"type":"object","properties":{"prompt":{"type":"string","description":"The prompt.","examples":["A single bee landing on a circuit-board flower, slow motion"]},"aspect_ratio":{"type":"string","description":"Aspect ratio generated.","examples":["16:9"]},"duration_seconds":{"type":"integer","description":"Clip length in seconds.","examples":[4]},"video_url":{"type":["string","null"],"description":"Download link for the clip, valid 48 hours.","examples":["https://hubvibe-io.com/work/media/0f3c9a1e5b7d4c2a8e6f1b3d5a7c9e1f.mp4"]},"video_url_expires_at":{"type":["string","null"],"description":"When video_url stops working (UTC).","examples":["2026-10-03T14:00:00Z"]},"video_base64":{"type":["string","null"],"description":"The video, base64: only when the request set inline=true.","examples":[null]},"gcs_uri":{"type":["string","null"],"description":"Cloud Storage URI, when the provider stored it instead.","examples":[null]},"mime_type":{"type":"string","description":"Video MIME type.","examples":["video/mp4"]},"model":{"type":"string","description":"Video model.","examples":["veo-3.1-fast-generate-001"]}},"required":["prompt","aspect_ratio","duration_seconds","mime_type","model"]},"output_example":{"prompt":"A single bee landing on a circuit-board flower, slow motion","aspect_ratio":"16:9","duration_seconds":4,"video_url":"https://hubvibe-io.com/work/media/0f3c9a1e5b7d4c2a8e6f1b3d5a7c9e1f.mp4","video_url_expires_at":"2026-10-03T14:00:00Z","video_base64":null,"gcs_uri":null,"mime_type":"video/mp4","model":"veo-3.1-fast-generate-001"},"returns":"prompt, aspect_ratio, duration_seconds, video_url (48 h), video_base64 when inline, mime_type, model.","max_seconds":240,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}","buyer_note":"This call costs $10.00, above the $1.00 per-payment default spend cap in the x402 client libraries. Raise the cap before paying -- Python: client.set_spend_controls({'max_amount_per_payment': '$10.00'}); TypeScript: new x402Client({ spendControls: { maxAmountPerPayment: '$10.00' } }). Coinbase's x402_pay tool takes max_amount per call instead."},"description":"AI video generation / text to video: a short clip from a text prompt with Google Veo, returned as a download link (video_url, valid 48 hours) with its MIME type, optionally with generated audio. Input: prompt; optional aspect_ratio (16:9 or 9:16), duration_seconds (4, 6 or 8), generate_audio, inline.","capabilities":["video.generate","VideoGenerate"],"representativeQueries":["generate a short video clip from a text prompt","text to video with Veo","create a four second video from a description"],"tags":["video-generation","text-to-video","veo","ai-video","clips","premium","pay-per-call"],"metadata":{"price_usd":10.0,"tier":"premium","path":"/work/video/generate","method":"POST","compound":false,"max_seconds":240},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.signal","displayName":"Market signal (market.signal)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/signal","method":"POST","url":"https://hubvibe-io.com/work/market/signal","price_usd":0.05,"tier":"utility","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"symbol":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9.-]{0,11}$"},"horizon_days":{"type":"integer","minimum":1,"maximum":60,"default":20},"context":{"type":"array","uniqueItems":true,"items":{"type":"string","enum":["news","sec","polymarket","economic","fred"]},"default":[]},"fred_series":{"type":"string","pattern":"^[A-Z0-9_]{1,40}$","default":"FEDFUNDS"},"history":{"type":"object","properties":{"symbol":{"type":"string"},"source":{"type":"string","minLength":2,"maxLength":200},"authorized":{"type":"boolean","const":true},"data_kind":{"type":"string","const":"equity_prices"},"basis":{"type":"string","const":"split-and-dividend-adjusted"},"as_of":{"type":"string","format":"date"},"observations":{"type":"array","minItems":21,"maxItems":2000,"items":{"type":"object","properties":{"date":{"type":"string","format":"date"},"adjClose":{"type":"number","exclusiveMinimum":0}},"required":["date","adjClose"],"additionalProperties":false}}},"required":["symbol","source","authorized","data_kind","basis","observations"],"additionalProperties":false},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["symbol"],"additionalProperties":false},"input_example":{"symbol":"AAPL"},"output_schema":{"type":"object","properties":{"symbol":{"type":"string","description":"Equity ticker","examples":["AAPL"]},"as_of":{"type":"string","description":"Last history date","examples":["2026-10-16"]},"source":{"type":"string","description":"Equity provider","examples":["nasdaq"]},"return_20d":{"type":"number","description":"Observed twenty-trading-day simple return","examples":[0.03]},"direction":{"type":"string","enum":["up","down","flat"],"description":"Observed direction","examples":["up"]},"annualized_volatility":{"type":"number","description":"Historical annualized volatility","examples":[0.2],"minimum":0},"context":{"type":"object","properties":{"news":{"type":"object","properties":{"query":{"type":["string","null"],"description":"Topic searched, as given; null when only a symbol was asked.","examples":["半導体"]},"symbol":{"type":["string","null"],"description":"Ticker whose company name was searched; null when none.","examples":["AAPL"]},"language":{"type":["string","null"],"description":"BCP-47 language asked for; null when none.","examples":["ja"]},"language_filter":{"type":["string","null"],"description":"Language the articles were limited to; null when every language was searched.","examples":["ja"]},"sources_searched":{"type":"array","items":{"type":"string","description":"Search id.","examples":["gdelt:query"]},"description":"Searches this call ran.","examples":[["gdelt:query"]]},"sources_ok":{"type":"array","items":{"type":"string","description":"Search id.","examples":["gdelt:query"]},"description":"Searches that answered.","examples":[["gdelt:query"]]},"sources_failed":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","description":"Search id.","examples":["gdelt:symbol:7203.T"]},"reason":{"type":"string","description":"Why it did not answer this call.","examples":["Symbol news covers US-listed tickers"]}},"required":["source","reason"],"description":"A search that failed for this call."},"description":"Searches that did not answer, with the reason; never silently dropped.","examples":[[]]},"articles":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Headline in its original language.","examples":["半導体株が反発、関税協議の進展で"]},"url":{"type":"string","description":"The publisher's article link.","examples":["https://www.nikkei.com/article/DGXZQO..."]},"source_name":{"type":["string","null"],"description":"Publisher domain.","examples":["nikkei.com"]},"source_url":{"type":["string","null"],"description":"Publisher site.","examples":["https://nikkei.com"]},"published_at":{"type":["string","null"],"description":"When GDELT first saw it (UTC, 15-minute batches).","examples":["2026-09-27T02:30:00Z"]},"summary":{"type":["string","null"],"description":"Summary; GDELT carries none, so null.","examples":[null]},"language":{"type":["string","null"],"description":"Article language (BCP-47).","examples":["ja"]},"feed":{"type":"string","enum":["gdelt"],"description":"Which source it came from.","examples":["gdelt"]}},"required":["title","url","source_name","source_url","published_at","summary","language","feed"],"description":"One article."},"description":"Articles, newest first, duplicates by title removed."},"article_count":{"type":"integer","description":"Articles returned.","examples":[20]},"limit":{"type":"integer","description":"Most articles asked for.","examples":[20]},"since_hours":{"type":"integer","description":"Window searched, in hours.","examples":[72]},"attribution":{"type":"object","properties":{"text":{"type":"string","description":"Required citation.","examples":["Source: The GDELT Project"]},"url":{"type":"string","description":"Required link.","examples":["https://www.gdeltproject.org/"]}},"required":["text","url"],"description":"The citation GDELT's licence requires with every use."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["GDELT does not record a publisher's country, so region is not a filter."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","symbol","language","language_filter","sources_searched","sources_ok","sources_failed","articles","article_count","limit","since_hours","attribution","notes","checked_at"]},"sec":{"type":"object","properties":{"symbol":{"type":["string","null"],"description":"Ticker as given.","examples":["AAPL"]},"cik":{"type":"integer","description":"SEC Central Index Key.","examples":[320193]},"entity_name":{"type":["string","null"],"description":"Registrant name.","examples":["Apple Inc."]},"concepts":{"type":"object","properties":{},"required":[],"description":"One entry per concept found, keyed by the name asked for.","additionalProperties":{"type":"object","properties":{"concept":{"type":"string","description":"The XBRL concept actually used (an alternate may stand in for the one asked).","examples":["RevenueFromContractWithCustomerExcludingAssessedTax"]},"taxonomy":{"type":"string","description":"us-gaap, ifrs-full or dei.","examples":["us-gaap"]},"label":{"type":["string","null"],"description":"The concept's label.","examples":["Revenue from Contract with Customer, Excluding Assessed Tax"]},"unit":{"type":"string","description":"Unit of every value.","examples":["USD"]},"values":{"type":"array","items":{"type":"object","properties":{"end":{"type":"string","description":"Period end (YYYY-MM-DD).","examples":["2026-06-27"]},"start":{"type":["string","null"],"description":"Period start for flows; null for instants (balance-sheet items).","examples":["2026-03-29"]},"value":{"type":"number","description":"The reported value, in `unit`.","examples":[109417000000]},"unit":{"type":"string","description":"XBRL unit.","examples":["USD"]},"fiscal_year":{"type":["integer","null"],"description":"Filer's fiscal year.","examples":[2026]},"fiscal_period":{"type":["string","null"],"description":"FY, Q1, Q2 or Q3.","examples":["Q3"]},"form":{"type":["string","null"],"description":"Form it was reported on.","examples":["10-Q"]},"filed":{"type":["string","null"],"description":"Filing date.","examples":["2026-07-31"]},"frame":{"type":["string","null"],"description":"SEC calendar frame when assigned.","examples":["CY2026Q2"]}},"required":["end","value","unit"],"description":"One reported value."},"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.","examples":[[{"end":"2026-06-27","start":"2026-03-29","value":109417000000,"unit":"USD","fiscal_year":2026,"fiscal_period":"Q3","form":"10-Q","filed":"2026-07-31","frame":"CY2026Q2"}]]}},"required":["concept","taxonomy","unit","values"],"description":"One concept's reported values."},"examples":[{"Revenues":{"concept":"RevenueFromContractWithCustomerExcludingAssessedTax","taxonomy":"us-gaap","label":"Revenue from Contract with Customer, Excluding Assessed Tax","unit":"USD","values":[{"end":"2026-06-27","start":"2026-03-29","value":109417000000,"unit":"USD","fiscal_year":2026,"fiscal_period":"Q3","form":"10-Q","filed":"2026-07-31","frame":"CY2026Q2"}]}}]},"concepts_missing":{"type":"array","items":{"type":"string","description":"A concept the filer has not reported.","examples":["Liabilities"]},"description":"Concepts asked for that the filer has no facts for.","examples":[[]]},"periods":{"type":"integer","description":"Periods per concept requested.","examples":[8]},"forms":{"type":["array","null"],"items":{"type":"string"},"description":"Form filter applied, or null.","examples":[["10-K","10-Q"]]},"as_of":{"type":["string","null"],"description":"Latest filing date among the values returned.","examples":["2026-07-31"]},"source":{"type":"string","const":"sec-edgar-xbrl-companyfacts","description":"Data source."},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["cik","concepts","concepts_missing","periods","as_of","source","checked_at"]},"polymarket":{"type":"object","properties":{"query":{"type":["string","null"],"description":"The search query, or null for the top markets by volume.","examples":["bitcoin"]},"markets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Polymarket market id.","examples":["512345"]},"question":{"type":"string","description":"The market question.","examples":["Will BTC close above $100k on Dec 31?"]},"slug":{"type":"string","description":"Polymarket slug.","examples":["will-btc-close-above-100k"]},"active":{"type":"boolean","description":"Whether the market is active.","examples":[true]},"closed":{"type":"boolean","description":"Whether the market is closed.","examples":[false]},"end_date":{"type":["string","null"],"description":"ISO 8601 end date.","examples":["2026-12-31T00:00:00Z"]},"volume":{"type":["number","null"],"description":"Traded volume in USD.","examples":[1834520.5]},"liquidity":{"type":["number","null"],"description":"Liquidity in USD.","examples":[240310.2]},"implied_probabilities":{"type":"array","items":{"type":"object","properties":{"outcome":{"type":"string","description":"Outcome label.","examples":["Yes"]},"probability_pct":{"type":["number","null"],"description":"Implied probability in percent.","examples":[62.5]}},"required":["outcome"],"description":"One outcome and what the market prices it at."},"description":"Each outcome with its implied probability.","examples":[[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]]}},"required":["id","question","implied_probabilities"],"description":"One prediction market."},"description":"Matching markets, highest volume first."},"count":{"type":"integer","description":"Number of markets returned.","examples":[1]},"source":{"type":"string","const":"polymarket-gamma","description":"Data source."},"note":{"type":"string","description":"What the numbers are and are not.","examples":["Implied probabilities are what the market is currently pricing, not a forecast by HubVibe."]}},"required":["query","markets","count","source","note"]},"economic":{"type":"object","properties":{"indicator":{"type":"object","properties":{"alias":{"type":["string","null"],"description":"Alias used; null for a raw code.","examples":["inflation"]},"code":{"type":["string","null"],"description":"World Bank indicator code; null for Eurostat monthly series.","examples":["FP.CPI.TOTL.ZG"]},"name":{"type":["string","null"],"description":"The source's name for the series.","examples":["Inflation, consumer prices (annual %)"]},"unit":{"type":["string","null"],"description":"Unit when the source states it.","examples":["% change on a year earlier (HICP)"]}},"required":["alias","code","name","unit"],"description":"What was measured."},"country":{"type":"object","properties":{"code":{"type":"string","description":"Country code as the source spells it.","examples":["JP"]},"name":{"type":["string","null"],"description":"Country name from the source.","examples":["Japan"]}},"required":["code","name"],"description":"Where."},"frequency":{"type":"string","enum":["annual","monthly"],"description":"Period of the observations.","examples":["annual"]},"source":{"type":"string","enum":["world-bank","eurostat"],"description":"Which official source answered.","examples":["world-bank"]},"observations":{"type":"array","items":{"type":"object","properties":{"period":{"type":"string","description":"Year (2025) or month (2026-08).","examples":["2025"]},"value":{"type":["number","null"],"description":"Value; null when not yet published.","examples":[3.17]}},"required":["period","value"],"description":"One observation."},"description":"Oldest first."},"observation_count":{"type":"integer","description":"Observations returned.","examples":[5]},"latest":{"type":["object","null"],"properties":{"period":{"type":"string","description":"Period.","examples":["2025"]},"value":{"type":"number","description":"Value.","examples":[3.17]}},"required":["period","value"],"description":"Most recent published value; null when none in the window."},"previous":{"type":["object","null"],"properties":{"period":{"type":"string","description":"Period.","examples":["2024"]},"value":{"type":"number","description":"Value.","examples":[2.74]}},"required":["period","value"],"description":"The published value before it; null when none."},"change":{"type":["object","null"],"properties":{"absolute":{"type":"number","description":"latest minus previous.","examples":[0.43]},"pct":{"type":["number","null"],"description":"Change as a percentage of previous; null when previous is zero.","examples":[15.69]}},"required":["absolute","pct"],"description":"Latest versus previous; null when either is missing."},"as_of":{"type":["string","null"],"description":"The source's own update stamp.","examples":["2026-07-13"]},"source_url":{"type":["string","null"],"description":"Where the numbers came from.","examples":["https://api.worldbank.org/v2/country/JP/indicator/FP.CPI.TOTL.ZG?format=json"]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["1 of 5 periods have no published value yet."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["indicator","country","frequency","source","observations","observation_count","latest","previous","change","as_of","source_url","notes","checked_at"]},"fred":{"type":"object","properties":{"source":{"type":"string","const":"fred","description":"Source"},"series_id":{"type":"string","description":"FRED series","examples":["FEDFUNDS"]},"observations":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","description":"Observation date","examples":["2026-09-01"]},"value":{"type":"number","description":"Published value","examples":[4.0]}},"required":["date","value"]},"description":"Published observations"},"as_of":{"type":"string","description":"Last observation date","examples":["2026-09-01"]},"missing_values":{"type":"integer","description":"Missing observations omitted, never filled","examples":[0]},"note":{"type":"string","description":"Vintage limitation","examples":["Latest vintage; revisions possible."]}},"required":["source","series_id","observations","as_of","missing_values","note"]}},"required":[],"description":"Explicitly requested context; not used as model predictors.","examples":[{}]},"note":{"type":"string","description":"Limitations","examples":["Observed momentum, not a forecast."]}},"required":["symbol","as_of","source","return_20d","direction","annualized_volatility","context","note"]},"output_example":{"symbol":"AAPL","as_of":"2026-10-16","source":"nasdaq","return_20d":0.03,"direction":"up","annualized_volatility":0.2,"context":{},"note":"Observed momentum, not a forecast."},"returns":"symbol, as_of, source, context, observed momentum and volatility.","max_seconds":240,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"Observed equity momentum and volatility, with optional sourced news, SEC, Polymarket and economic context. Not a probability forecast.","capabilities":["market.signal","MarketSignal"],"representativeQueries":["Observed stock momentum with sourced market context","Twenty day equity signal"],"tags":["market","forecast","financial-data","utility","pay-per-call"],"metadata":{"price_usd":0.05,"tier":"utility","path":"/work/market/signal","method":"POST","compound":false,"max_seconds":240},"version":"1.35.0"},{"identifier":"urn:air:hubvibe-io.com:work:market.forecast","displayName":"Market forecast (market.forecast)","type":"application/vnd.hubvibe.route+json","data":{"path":"/work/market/forecast","method":"POST","url":"https://hubvibe-io.com/work/market/forecast","price_usd":1.0,"tier":"premium","payment":"HTTP 402 per call; rails as listed in /.well-known/agent.json","input_schema":{"type":"object","properties":{"symbol":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9.-]{0,11}$"},"horizon_days":{"type":"integer","minimum":1,"maximum":60,"default":20},"context":{"type":"array","uniqueItems":true,"items":{"type":"string","enum":["news","sec","polymarket","economic","fred"]},"default":[]},"fred_series":{"type":"string","pattern":"^[A-Z0-9_]{1,40}$","default":"FEDFUNDS"},"history":{"type":"object","properties":{"symbol":{"type":"string"},"source":{"type":"string","minLength":2,"maxLength":200},"authorized":{"type":"boolean","const":true},"data_kind":{"type":"string","const":"equity_prices"},"basis":{"type":"string","const":"split-and-dividend-adjusted"},"as_of":{"type":"string","format":"date"},"observations":{"type":"array","minItems":253,"maxItems":2000,"items":{"type":"object","properties":{"date":{"type":"string","format":"date"},"adjClose":{"type":"number","exclusiveMinimum":0}},"required":["date","adjClose"],"additionalProperties":false}}},"required":["symbol","source","authorized","data_kind","basis","observations"],"additionalProperties":false},"language":{"type":"string","maxLength":35,"pattern":"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$","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."}},"required":["symbol"],"additionalProperties":false},"input_example":{"symbol":"AAPL"},"output_schema":{"type":"object","properties":{"symbol":{"type":"string","description":"Equity ticker","examples":["AAPL"]},"as_of":{"type":"string","description":"Last adjusted observation","examples":["2026-10-16"]},"source":{"type":"string","enum":["tiingo-eod","customer-provided"],"description":"Adjusted-price input source","examples":["customer-provided"]},"provenance":{"description":"Authorization basis and customer-data digest; caller data is not independently verified","examples":[{}]},"model":{"type":"object","properties":{"paths":{"type":"integer","const":20000},"horizon_days":{"type":"integer","description":"Trading-day horizon","examples":[20],"minimum":1,"maximum":60},"seed":{"type":"integer","const":0},"method":{"type":"string","const":"circular-block-bootstrap-log-returns-v1","description":"Model version"},"block_days":{"type":"integer","const":5},"observations":{"type":"integer","description":"Daily adjusted observations","examples":[253],"minimum":253},"last_adjusted_close":{"type":"number","description":"Last adjusted price","examples":[100],"exclusiveMinimum":0},"terminal_adjusted_price":{"type":"object","properties":{"p05":{"type":"number","description":"Conditional terminal adjusted-price quantile","examples":[100],"exclusiveMinimum":0},"p50":{"type":"number","description":"Conditional terminal adjusted-price quantile","examples":[100],"exclusiveMinimum":0},"p95":{"type":"number","description":"Conditional terminal adjusted-price quantile","examples":[100],"exclusiveMinimum":0}},"required":["p05","p50","p95"]},"probability_up":{"type":"number","description":"Model frequency of a positive total return","examples":[0.5],"minimum":0,"maximum":1},"probability_mc_se":{"type":"number","description":"Monte Carlo sampling error only","examples":[0.0035],"minimum":0},"annualized_volatility":{"type":"number","description":"Historical volatility, 252 trading days","examples":[0.2],"minimum":0},"validation":{"type":"object","properties":{"status":{"type":"string","enum":["diagnostic_only","insufficient_holdouts"],"description":"Rolling-origin diagnostic status","examples":["insufficient_holdouts"]},"holdouts":{"type":"integer","description":"Non-overlapping out-of-sample windows","examples":[0]},"coverage_90":{"type":["number","null"],"description":"Held-out 90% interval coverage","examples":[null],"minimum":0,"maximum":1},"brier_score":{"type":["number","null"],"description":"Held-out direction Brier score","examples":[null],"minimum":0,"maximum":1},"calibrated":{"type":"boolean","description":"Separate direction recalibration passed chronological diagnostic gate","examples":[false]},"chronological_backtests":{"type":"array","items":{"type":"object","properties":{"training_returns":{"type":"integer","description":"Training prefix length","examples":[252]},"test_start_return":{"type":"integer","description":"First held-out return","examples":[252]},"test_end_return_exclusive":{"type":"integer","description":"Exclusive holdout end","examples":[272]},"probability_up":{"type":"number","description":"Prior-only model frequency","examples":[0.5]},"realized_up":{"type":"boolean","description":"Observed held-out direction","examples":[false]},"coverage_90_hit":{"type":"boolean","description":"Observed coverage","examples":[true]}},"required":["training_returns","test_start_return","test_end_return_exclusive","probability_up","realized_up","coverage_90_hit"]},"description":"Nonoverlapping chronological diagnostics","examples":[[]]}},"required":["status","holdouts","coverage_90","brier_score","calibrated"]},"calibration":{"description":"Earlier-bin calibration evaluated on later untouched windows; no accuracy guarantee","examples":[{}]},"risk":{"type":"object","properties":{"loss_probability":{"type":"number","description":"Terminal loss frequency","examples":[0.5]},"loss_over_5pct_probability":{"type":"number","description":"Terminal loss beyond 5%","examples":[0.2]},"loss_over_10pct_probability":{"type":"number","description":"Terminal loss beyond 10%","examples":[0.05]},"var_95_return_loss":{"type":"number","description":"95% terminal VaR loss fraction","examples":[0.1]},"expected_shortfall_95_return_loss":{"type":"number","description":"Mean terminal tail loss fraction","examples":[0.15]},"scope":{"type":"string","description":"Risk scope","examples":["Terminal horizon loss; not drawdown."]}},"required":["loss_probability","loss_over_5pct_probability","loss_over_10pct_probability","var_95_return_loss","expected_shortfall_95_return_loss","scope"]},"distribution":{"description":"Empirical terminal simple-return quantiles","examples":[{}]},"uncertainty":{"type":"array","items":{"type":"string","description":"Model limitation","examples":["Conditional model; not guaranteed."]},"description":"Explicit model uncertainty"}},"required":["paths","horizon_days","seed","method","block_days","observations","last_adjusted_close","terminal_adjusted_price","probability_up","probability_mc_se","annualized_volatility","validation","uncertainty"]},"context":{"type":"object","properties":{"news":{"type":"object","properties":{"query":{"type":["string","null"],"description":"Topic searched, as given; null when only a symbol was asked.","examples":["半導体"]},"symbol":{"type":["string","null"],"description":"Ticker whose company name was searched; null when none.","examples":["AAPL"]},"language":{"type":["string","null"],"description":"BCP-47 language asked for; null when none.","examples":["ja"]},"language_filter":{"type":["string","null"],"description":"Language the articles were limited to; null when every language was searched.","examples":["ja"]},"sources_searched":{"type":"array","items":{"type":"string","description":"Search id.","examples":["gdelt:query"]},"description":"Searches this call ran.","examples":[["gdelt:query"]]},"sources_ok":{"type":"array","items":{"type":"string","description":"Search id.","examples":["gdelt:query"]},"description":"Searches that answered.","examples":[["gdelt:query"]]},"sources_failed":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","description":"Search id.","examples":["gdelt:symbol:7203.T"]},"reason":{"type":"string","description":"Why it did not answer this call.","examples":["Symbol news covers US-listed tickers"]}},"required":["source","reason"],"description":"A search that failed for this call."},"description":"Searches that did not answer, with the reason; never silently dropped.","examples":[[]]},"articles":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Headline in its original language.","examples":["半導体株が反発、関税協議の進展で"]},"url":{"type":"string","description":"The publisher's article link.","examples":["https://www.nikkei.com/article/DGXZQO..."]},"source_name":{"type":["string","null"],"description":"Publisher domain.","examples":["nikkei.com"]},"source_url":{"type":["string","null"],"description":"Publisher site.","examples":["https://nikkei.com"]},"published_at":{"type":["string","null"],"description":"When GDELT first saw it (UTC, 15-minute batches).","examples":["2026-09-27T02:30:00Z"]},"summary":{"type":["string","null"],"description":"Summary; GDELT carries none, so null.","examples":[null]},"language":{"type":["string","null"],"description":"Article language (BCP-47).","examples":["ja"]},"feed":{"type":"string","enum":["gdelt"],"description":"Which source it came from.","examples":["gdelt"]}},"required":["title","url","source_name","source_url","published_at","summary","language","feed"],"description":"One article."},"description":"Articles, newest first, duplicates by title removed."},"article_count":{"type":"integer","description":"Articles returned.","examples":[20]},"limit":{"type":"integer","description":"Most articles asked for.","examples":[20]},"since_hours":{"type":"integer","description":"Window searched, in hours.","examples":[72]},"attribution":{"type":"object","properties":{"text":{"type":"string","description":"Required citation.","examples":["Source: The GDELT Project"]},"url":{"type":"string","description":"Required link.","examples":["https://www.gdeltproject.org/"]}},"required":["text","url"],"description":"The citation GDELT's licence requires with every use."},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["GDELT does not record a publisher's country, so region is not a filter."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["query","symbol","language","language_filter","sources_searched","sources_ok","sources_failed","articles","article_count","limit","since_hours","attribution","notes","checked_at"]},"sec":{"type":"object","properties":{"symbol":{"type":["string","null"],"description":"Ticker as given.","examples":["AAPL"]},"cik":{"type":"integer","description":"SEC Central Index Key.","examples":[320193]},"entity_name":{"type":["string","null"],"description":"Registrant name.","examples":["Apple Inc."]},"concepts":{"type":"object","properties":{},"required":[],"description":"One entry per concept found, keyed by the name asked for.","additionalProperties":{"type":"object","properties":{"concept":{"type":"string","description":"The XBRL concept actually used (an alternate may stand in for the one asked).","examples":["RevenueFromContractWithCustomerExcludingAssessedTax"]},"taxonomy":{"type":"string","description":"us-gaap, ifrs-full or dei.","examples":["us-gaap"]},"label":{"type":["string","null"],"description":"The concept's label.","examples":["Revenue from Contract with Customer, Excluding Assessed Tax"]},"unit":{"type":"string","description":"Unit of every value.","examples":["USD"]},"values":{"type":"array","items":{"type":"object","properties":{"end":{"type":"string","description":"Period end (YYYY-MM-DD).","examples":["2026-06-27"]},"start":{"type":["string","null"],"description":"Period start for flows; null for instants (balance-sheet items).","examples":["2026-03-29"]},"value":{"type":"number","description":"The reported value, in `unit`.","examples":[109417000000]},"unit":{"type":"string","description":"XBRL unit.","examples":["USD"]},"fiscal_year":{"type":["integer","null"],"description":"Filer's fiscal year.","examples":[2026]},"fiscal_period":{"type":["string","null"],"description":"FY, Q1, Q2 or Q3.","examples":["Q3"]},"form":{"type":["string","null"],"description":"Form it was reported on.","examples":["10-Q"]},"filed":{"type":["string","null"],"description":"Filing date.","examples":["2026-07-31"]},"frame":{"type":["string","null"],"description":"SEC calendar frame when assigned.","examples":["CY2026Q2"]}},"required":["end","value","unit"],"description":"One reported value."},"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.","examples":[[{"end":"2026-06-27","start":"2026-03-29","value":109417000000,"unit":"USD","fiscal_year":2026,"fiscal_period":"Q3","form":"10-Q","filed":"2026-07-31","frame":"CY2026Q2"}]]}},"required":["concept","taxonomy","unit","values"],"description":"One concept's reported values."},"examples":[{"Revenues":{"concept":"RevenueFromContractWithCustomerExcludingAssessedTax","taxonomy":"us-gaap","label":"Revenue from Contract with Customer, Excluding Assessed Tax","unit":"USD","values":[{"end":"2026-06-27","start":"2026-03-29","value":109417000000,"unit":"USD","fiscal_year":2026,"fiscal_period":"Q3","form":"10-Q","filed":"2026-07-31","frame":"CY2026Q2"}]}}]},"concepts_missing":{"type":"array","items":{"type":"string","description":"A concept the filer has not reported.","examples":["Liabilities"]},"description":"Concepts asked for that the filer has no facts for.","examples":[[]]},"periods":{"type":"integer","description":"Periods per concept requested.","examples":[8]},"forms":{"type":["array","null"],"items":{"type":"string"},"description":"Form filter applied, or null.","examples":[["10-K","10-Q"]]},"as_of":{"type":["string","null"],"description":"Latest filing date among the values returned.","examples":["2026-07-31"]},"source":{"type":"string","const":"sec-edgar-xbrl-companyfacts","description":"Data source."},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["cik","concepts","concepts_missing","periods","as_of","source","checked_at"]},"polymarket":{"type":"object","properties":{"query":{"type":["string","null"],"description":"The search query, or null for the top markets by volume.","examples":["bitcoin"]},"markets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Polymarket market id.","examples":["512345"]},"question":{"type":"string","description":"The market question.","examples":["Will BTC close above $100k on Dec 31?"]},"slug":{"type":"string","description":"Polymarket slug.","examples":["will-btc-close-above-100k"]},"active":{"type":"boolean","description":"Whether the market is active.","examples":[true]},"closed":{"type":"boolean","description":"Whether the market is closed.","examples":[false]},"end_date":{"type":["string","null"],"description":"ISO 8601 end date.","examples":["2026-12-31T00:00:00Z"]},"volume":{"type":["number","null"],"description":"Traded volume in USD.","examples":[1834520.5]},"liquidity":{"type":["number","null"],"description":"Liquidity in USD.","examples":[240310.2]},"implied_probabilities":{"type":"array","items":{"type":"object","properties":{"outcome":{"type":"string","description":"Outcome label.","examples":["Yes"]},"probability_pct":{"type":["number","null"],"description":"Implied probability in percent.","examples":[62.5]}},"required":["outcome"],"description":"One outcome and what the market prices it at."},"description":"Each outcome with its implied probability.","examples":[[{"outcome":"Yes","probability_pct":62.5},{"outcome":"No","probability_pct":37.5}]]}},"required":["id","question","implied_probabilities"],"description":"One prediction market."},"description":"Matching markets, highest volume first."},"count":{"type":"integer","description":"Number of markets returned.","examples":[1]},"source":{"type":"string","const":"polymarket-gamma","description":"Data source."},"note":{"type":"string","description":"What the numbers are and are not.","examples":["Implied probabilities are what the market is currently pricing, not a forecast by HubVibe."]}},"required":["query","markets","count","source","note"]},"economic":{"type":"object","properties":{"indicator":{"type":"object","properties":{"alias":{"type":["string","null"],"description":"Alias used; null for a raw code.","examples":["inflation"]},"code":{"type":["string","null"],"description":"World Bank indicator code; null for Eurostat monthly series.","examples":["FP.CPI.TOTL.ZG"]},"name":{"type":["string","null"],"description":"The source's name for the series.","examples":["Inflation, consumer prices (annual %)"]},"unit":{"type":["string","null"],"description":"Unit when the source states it.","examples":["% change on a year earlier (HICP)"]}},"required":["alias","code","name","unit"],"description":"What was measured."},"country":{"type":"object","properties":{"code":{"type":"string","description":"Country code as the source spells it.","examples":["JP"]},"name":{"type":["string","null"],"description":"Country name from the source.","examples":["Japan"]}},"required":["code","name"],"description":"Where."},"frequency":{"type":"string","enum":["annual","monthly"],"description":"Period of the observations.","examples":["annual"]},"source":{"type":"string","enum":["world-bank","eurostat"],"description":"Which official source answered.","examples":["world-bank"]},"observations":{"type":"array","items":{"type":"object","properties":{"period":{"type":"string","description":"Year (2025) or month (2026-08).","examples":["2025"]},"value":{"type":["number","null"],"description":"Value; null when not yet published.","examples":[3.17]}},"required":["period","value"],"description":"One observation."},"description":"Oldest first."},"observation_count":{"type":"integer","description":"Observations returned.","examples":[5]},"latest":{"type":["object","null"],"properties":{"period":{"type":"string","description":"Period.","examples":["2025"]},"value":{"type":"number","description":"Value.","examples":[3.17]}},"required":["period","value"],"description":"Most recent published value; null when none in the window."},"previous":{"type":["object","null"],"properties":{"period":{"type":"string","description":"Period.","examples":["2024"]},"value":{"type":"number","description":"Value.","examples":[2.74]}},"required":["period","value"],"description":"The published value before it; null when none."},"change":{"type":["object","null"],"properties":{"absolute":{"type":"number","description":"latest minus previous.","examples":[0.43]},"pct":{"type":["number","null"],"description":"Change as a percentage of previous; null when previous is zero.","examples":[15.69]}},"required":["absolute","pct"],"description":"Latest versus previous; null when either is missing."},"as_of":{"type":["string","null"],"description":"The source's own update stamp.","examples":["2026-07-13"]},"source_url":{"type":["string","null"],"description":"Where the numbers came from.","examples":["https://api.worldbank.org/v2/country/JP/indicator/FP.CPI.TOTL.ZG?format=json"]},"notes":{"type":"array","items":{"type":"string","description":"A caveat.","examples":["1 of 5 periods have no published value yet."]},"description":"Caveats; empty when none.","examples":[[]]},"checked_at":{"type":"string","format":"date-time","description":"When this node read the source (UTC). Nothing here is cached.","examples":["2026-09-26T18:00:00Z"]}},"required":["indicator","country","frequency","source","observations","observation_count","latest","previous","change","as_of","source_url","notes","checked_at"]},"fred":{"type":"object","properties":{"source":{"type":"string","const":"fred","description":"Source"},"series_id":{"type":"string","description":"FRED series","examples":["FEDFUNDS"]},"observations":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","description":"Observation date","examples":["2026-09-01"]},"value":{"type":"number","description":"Published value","examples":[4.0]}},"required":["date","value"]},"description":"Published observations"},"as_of":{"type":"string","description":"Last observation date","examples":["2026-09-01"]},"missing_values":{"type":"integer","description":"Missing observations omitted, never filled","examples":[0]},"note":{"type":"string","description":"Vintage limitation","examples":["Latest vintage; revisions possible."]}},"required":["source","series_id","observations","as_of","missing_values","note"]}},"required":[],"description":"Explicitly requested context; not used as model predictors.","examples":[{}]}},"required":["symbol","as_of","source","model","context"]},"output_example":{"symbol":"AAPL","as_of":"2026-10-16","source":"customer-provided","provenance":{},"model":{"paths":20000,"horizon_days":20,"seed":0,"method":"circular-block-bootstrap-log-returns-v1","block_days":5,"observations":253,"last_adjusted_close":100,"terminal_adjusted_price":{"p05":100,"p50":100,"p95":100},"probability_up":0.5,"probability_mc_se":0.0035,"annualized_volatility":0.2,"validation":{"status":"insufficient_holdouts","holdouts":0,"coverage_90":null,"brier_score":null,"calibrated":false,"chronological_backtests":[]},"calibration":{},"risk":{"loss_probability":0.5,"loss_over_5pct_probability":0.2,"loss_over_10pct_probability":0.05,"var_95_return_loss":0.1,"expected_shortfall_95_return_loss":0.15,"scope":"Terminal horizon loss; not drawdown."},"distribution":{},"uncertainty":["Conditional model; not guaranteed."]},"context":{}},"returns":"symbol, as_of, source, context, model with 20000 paths and uncertainty.","max_seconds":240,"composes":[],"receipt":"https://hubvibe-io.com/work/receipts/{receipt_id}"},"description":"20000-path adjusted-equity block-bootstrap simulation with explicit uncertainty and rolling-origin diagnostics. Accepts authorized customer-provided adjusted equity history; Tiingo is optional. Chronological calibration diagnostics and terminal-loss estimates; no invented data.","capabilities":["market.forecast","MarketForecast"],"representativeQueries":["20000 path equity return scenarios with uncertainty","Adjusted stock history bootstrap forecast"],"tags":["market","forecast","financial-data","premium","pay-per-call"],"metadata":{"price_usd":1.0,"tier":"premium","path":"/work/market/forecast","method":"POST","compound":false,"max_seconds":240},"version":"1.35.0"}]}