{"id":11453,"name":"QuanticData Data API","description":"QuanticData Data API as an A2A agent: scrape any URL, search the web (SERP), map and crawl sites, run ready-made collectors and build datasets — through a residential, ISP and mobile proxy network. Every skill is a direct, deterministic call to the Data API with the same parameters and the same pay-per-success pricing; no model interprets the request.","card_url":"https://quanticdata.io/.well-known/agent-card.json","endpoint":"https://api.quanticdata.io/a2a","protocol_version":"1.0","first_seen":"2026-10-10T13:01:30.261935+00:00","last_verified":"2026-10-10T20:23:58.851484+00:00","card":{"name":"QuanticData Data API","skills":[{"id":"scrape_url","name":"Scrape a URL","tags":["scrape","extract","markdown","proxy","web"],"examples":["{\"skill\":\"scrape_url\",\"input\":{\"url\":\"https://example.com/pricing\",\"format\":\"markdown\",\"country\":\"us\"}}","{\"skill\":\"scrape_url\",\"input\":{\"url\":\"https://example.com/pricing\",\"extract\":{\"title\":\"h1\",\"price\":\".price\"}}}"],"inputModes":["application/json","text/plain"],"description":"Fetch one page through the proxy network and return it as markdown, html or text, optionally with a structured extraction schema (CSS selectors), a screenshot or browser actions. Same parameters as POST /v1/scrape (url, format, engine, render, country, extract, actions, screenshot …). Completes in the same call.","outputModes":["application/json","text/plain"]},{"id":"web_search","name":"Web search (SERP)","tags":["search","serp","google","bing","duckduckgo"],"examples":["{\"skill\":\"web_search\",\"input\":{\"query\":\"best espresso machines 2026\",\"country\":\"us\",\"num\":10}}","{\"skill\":\"web_search\",\"input\":{\"query\":\"pizzeria napoli\",\"search_type\":\"places\",\"country\":\"it\",\"lang\":\"it\"}}"],"inputModes":["application/json","text/plain"],"description":"Structured search results from Google, Bing or DuckDuckGo: organic results, shopping, images, news, places, maps, jobs, autocomplete and the other verticals. Same parameters as POST /v1/serp (query, engine, search_type, country, lang, num, page, device, location …). Completes in the same call.","outputModes":["application/json","text/plain"]},{"id":"map_site","name":"Map a site","tags":["map","sitemap","urls","discovery"],"examples":["{\"skill\":\"map_site\",\"input\":{\"url\":\"https://example.com\",\"limit\":100,\"search\":\"blog\"}}"],"inputModes":["application/json","text/plain"],"description":"Discover the URLs of a site from its sitemaps and homepage links, with per-section counts. Same parameters as POST /v1/map (url, limit, search, includeSubdomains, sitemapOnly, group_by, country). Completes in the same call.","outputModes":["application/json","text/plain"]},{"id":"crawl_site","name":"Crawl a site","tags":["crawl","spider","markdown","async"],"examples":["{\"skill\":\"crawl_site\",\"input\":{\"url\":\"https://docs.example.com\",\"limit\":50,\"depth\":3,\"include\":[\"/guides/*\"]}}"],"inputModes":["application/json","text/plain"],"description":"Crawl up to 500 pages from a seed URL and return each page as markdown, html or text. Same parameters as POST /v1/crawl (url, limit, depth, format, contentMode, render, include, exclude, country). Asynchronous: the task stays TASK_STATE_WORKING while the job runs; poll it with GetTask, the crawled pages arrive as an artifact when it is TASK_STATE_COMPLETED. CancelTask stops the job.","outputModes":["application/json","text/plain"]},{"id":"run_collector","name":"Run a collector","tags":["collector","dataset","rows","e-commerce","maps","jobs"],"examples":["{\"skill\":\"run_collector\",\"input\":{\"slug\":\"amazon_search\",\"keyword\":\"espresso machine\",\"country\":\"us\",\"max_results\":20}}","{\"skill\":\"run_collector\",\"input\":{\"slug\":\"google_maps_places\",\"query\":\"dentist\",\"location\":\"Milan, Italy\",\"async\":true}}"],"inputModes":["application/json","text/plain"],"description":"Run one of the ready-made collectors (Amazon, Google Maps, app stores, job boards, …) with its semantic input and get typed rows back. Input: {\"slug\": \"<collector slug>\", ...collector input} — same body as POST /v1/scraper/collectors/{slug}/run; the catalog with each collector's input_schema is GET /v1/scraper/collectors. Short runs complete in the same call; long runs return a TASK_STATE_WORKING task to poll with GetTask. Collector runs cannot be canceled.","outputModes":["application/json","text/plain"]},{"id":"build_dataset","name":"Build a dataset","tags":["dataset","pipeline","rows","async"],"examples":["{\"skill\":\"build_dataset\",\"input\":{\"prompt\":\"Italian B2B SaaS companies with pricing pages\",\"columns\":[\"name\",\"website\",\"pricing_url\"],\"country\":\"it\",\"limits\":{\"max_rows\":100}}}"],"inputModes":["application/json","text/plain"],"description":"Build a dataset from a natural-language prompt: the pipeline searches, maps and scrapes the sources and returns validated rows with the requested columns. Same parameters as POST /v1/scraper/datasets (prompt, columns, country, sources, limits, webhook, refresh, refreshUrls). Asynchronous: poll the task with GetTask; the rows and download links arrive as an artifact at TASK_STATE_COMPLETED. CancelTask stops the job.","outputModes":["application/json","text/plain"]}],"version":"1.0.0","provider":{"url":"https://quanticdata.io","organization":"QuanticData"},"description":"QuanticData Data API as an A2A agent: scrape any URL, search the web (SERP), map and crawl sites, run ready-made collectors and build datasets — through a residential, ISP and mobile proxy network. Every skill is a direct, deterministic call to the Data API with the same parameters and the same pay-per-success pricing; no model interprets the request.","capabilities":{"streaming":false,"extendedAgentCard":true,"pushNotifications":false},"securitySchemes":{"apiKey":{"httpAuthSecurityScheme":{"scheme":"bearer","description":"Authorization: Bearer qd_live_<64 hex>. The same key, rate limits and pay-per-success billing as the REST Data API: an A2A call costs what the underlying endpoint costs.","bearerFormat":"QuanticData API key (qd_live_… from https://app.quanticdata.io/api-keys)"}},"oauth2":{"oauth2SecurityScheme":{"flows":{"authorizationCode":{"scopes":{"mcp":"Call the hosted MCP server on behalf of the account"},"tokenUrl":"https://app.quanticdata.io/api/v1/oauth/token","refreshUrl":"https://app.quanticdata.io/api/v1/oauth/token","pkceRequired":true,"authorizationUrl":"https://app.quanticdata.io/oauth/authorize"}},"description":"OAuth 2.1 authorization server of the account (RFC 8414 metadata above, dynamic client registration, PKCE). Its access tokens are accepted today by the MCP endpoint (https://api.quanticdata.io/mcp) only — the A2A endpoint requires the API key scheme. Listed for discovery; not a requirement of this agent.","oauth2MetadataUrl":"https://app.quanticdata.io/.well-known/oauth-authorization-server"}}},"documentationUrl":"https://quanticdata.io/docs/","defaultInputModes":["application/json","text/plain"],"defaultOutputModes":["application/json","text/plain"],"supportedInterfaces":[{"url":"https://api.quanticdata.io/a2a","protocolBinding":"JSONRPC","protocolVersion":"1.0"}],"securityRequirements":[{"schemes":{"apiKey":{"list":[]}}}]},"signature_status":"unsigned","signature_detail":"No card signature supplied","signature_key_url":null,"signature_checked_at":"2026-10-10T20:23:58.851484+00:00","domain_claimed_at":null,"domain_proof_checked_at":null,"source_name":"Agenstry federation","source_url":"https://agenstry.com/docs","last_check":{"checked_at":"2026-10-10T20:23:58.851484+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"also_published_at":[],"history_urls":["https://quanticdata.io/.well-known/agent-card.json"],"skills":[{"skill_id":"build_dataset","name":"Build a dataset","description":"Build a dataset from a natural-language prompt: the pipeline searches, maps and scrapes the sources and returns validated rows with the requested columns. Same parameters as POST /v1/scraper/datasets (prompt, columns, country, sources, limits, webhook, refresh, refreshUrls). Asynchronous: poll the task with GetTask; the rows and download links arrive as an artifact at TASK_STATE_COMPLETED. CancelTask stops the job.","tags":["dataset","pipeline","rows","async"],"quality_warning":false},{"skill_id":"crawl_site","name":"Crawl a site","description":"Crawl up to 500 pages from a seed URL and return each page as markdown, html or text. Same parameters as POST /v1/crawl (url, limit, depth, format, contentMode, render, include, exclude, country). Asynchronous: the task stays TASK_STATE_WORKING while the job runs; poll it with GetTask, the crawled pages arrive as an artifact when it is TASK_STATE_COMPLETED. CancelTask stops the job.","tags":["crawl","spider","markdown","async"],"quality_warning":false},{"skill_id":"map_site","name":"Map a site","description":"Discover the URLs of a site from its sitemaps and homepage links, with per-section counts. Same parameters as POST /v1/map (url, limit, search, includeSubdomains, sitemapOnly, group_by, country). Completes in the same call.","tags":["map","sitemap","urls","discovery"],"quality_warning":false},{"skill_id":"run_collector","name":"Run a collector","description":"Run one of the ready-made collectors (Amazon, Google Maps, app stores, job boards, …) with its semantic input and get typed rows back. Input: {\"slug\": \"<collector slug>\", ...collector input} — same body as POST /v1/scraper/collectors/{slug}/run; the catalog with each collector's input_schema is GET /v1/scraper/collectors. Short runs complete in the same call; long runs return a TASK_STATE_WORKING task to poll with GetTask. Collector runs cannot be canceled.","tags":["collector","dataset","rows","e-commerce","maps","jobs"],"quality_warning":false},{"skill_id":"scrape_url","name":"Scrape a URL","description":"Fetch one page through the proxy network and return it as markdown, html or text, optionally with a structured extraction schema (CSS selectors), a screenshot or browser actions. Same parameters as POST /v1/scrape (url, format, engine, render, country, extract, actions, screenshot …). Completes in the same call.","tags":["scrape","extract","markdown","proxy","web"],"quality_warning":false},{"skill_id":"web_search","name":"Web search (SERP)","description":"Structured search results from Google, Bing or DuckDuckGo: organic results, shopping, images, news, places, maps, jobs, autocomplete and the other verticals. Same parameters as POST /v1/serp (query, engine, search_type, country, lang, num, page, device, location …). Completes in the same call.","tags":["search","serp","google","bing","duckduckgo"],"quality_warning":false}],"quality_flags":[],"check_history":{"checks":4,"passed":4},"recent_checks":[{"card_url":"https://quanticdata.io/.well-known/agent-card.json","checked_at":"2026-10-10T20:23:58.851484+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://quanticdata.io/.well-known/agent-card.json","checked_at":"2026-10-10T18:06:36.263338+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://quanticdata.io/.well-known/agent-card.json","checked_at":"2026-10-10T15:49:21.205448+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://quanticdata.io/.well-known/agent-card.json","checked_at":"2026-10-10T13:01:30.261935+00:00","success":true,"http_status":200,"detail":"Agent Card validated"}],"endpoint_tls_check":{"checked_at":"2026-10-10T20:23:58.851484+00:00","success":true,"detail":"Valid TLS connection to advertised endpoint host; no A2A request sent"},"protocol_check":{"checked_at":"2026-10-10T13:01:30.261935+00:00","state":"auth_required","http_status":401,"detail":"Endpoint requires authentication; A2A response not confirmed"},"events":[],"relationships":[],"verification":{"agent_card_url":"https://quanticdata.io/.well-known/agent-card.json","last_successful_card_check":"2026-10-10T20:23:58.851484+00:00","latest_card_check":{"checked_at":"2026-10-10T20:23:58.851484+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"signature_status":"unsigned","signature_checked_at":"2026-10-10T20:23:58.851484+00:00","task_endpoint_tested":true,"task_execution_tested":false,"endpoint_tls_checked_at":"2026-10-10T20:23:58.851484+00:00","endpoint_tls_reachable":true,"protocol_check_state":"auth_required","protocol_checked_at":"2026-10-10T13:01:30.261935+00:00","provider_identity_verified":false,"domain_claimed_at":null,"domain_proof_checked_at":null}}