Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Hydrafetch API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fhydrafetch.com%2Fhydrafetch" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fhydrafetch.com%2Fhydrafetch" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Hydrafetch API.
Scrape one URL to clean Markdown, cleaned or raw HTML, links, or the page's own structured data
Crawl a whole site or scrape an explicit URL list as one asynchronous job, with webhook callbacks and delivery history
Map a site's URLs from links and sitemaps without scraping them
Search the web for a query and optionally scrape every result in the same call
GET STARTED
Extract schema-shaped JSON from pages with per-field confidence and the source passage for each value
Resolve a company's brand by domain, including logos for light and dark backgrounds and its colours, for up to 50 domains at once
Read a site's rendered styleguide and capture a full-page screenshot
Patterns agents use Hydrafetch API for, with concrete tasks.
★ Web reading for agents through Jentic
A developer's agent needs to read pages without wading through navigation, banners, and boilerplate. Through Jentic it finds the Markdown or extract operation by intent and gets clean content back; the X-API-Key credential is injected by the developer's own Jentic One instance, and a rule can keep the agent to single-page reads so it cannot start credit-heavy crawls.
Search Jentic for 'get a web page as markdown', call POST /v1/web/markdown with url https://acme.com/pricing and onlyMainContent true, and summarise the plan names and prices
Documentation site ingestion
Load a documentation site into a retrieval index. The crawl call takes a start url with limit, maxDepth, includePaths, and excludePaths, returns a crawl id immediately, and either takes a webhook or is polled for per-page results; the deliveries call shows each webhook attempt and its last response if a callback fails.
Call POST /v1/web/crawl with url https://docs.example.dev, limit 200, and includePaths ['/guides/*'], then poll GET /v1/web/crawl/{id} until it completes and store each page's Markdown
Schema-shaped extraction with sources
Pull the same fields from many pages without writing per-site parsers. The extract call takes urls plus a JSON schema and or a prompt, can add web search to find more sources, and with showConfidence and showSources returns per-field confidence and the passage each value came from, so low-confidence fields can be checked.
Call POST /v1/web/extract with five product URLs, a schema with name, price, and inStock, showConfidence true, and showSources true, and flag any field with low confidence
Brand assets for a company picker
Render company logos and colours in an app without maintaining an asset library. Brand search turns what a user typed into a domain without billing, the brand call resolves logos for light and dark backgrounds, colours, and social presence, and the batch form resolves up to 50 domains, billing only the brands it resolves.
Call GET /v1/web/brand/search with query Stripe to get the domain, then GET /v1/web/brand with that domain and return the dark-background logo URL and primary colour
24 endpoints — the hydrafetch api turns web pages into data an agent can use: send a url and get back clean markdown, cleaned or raw html, links, the page's own json-ld, microdata, opengraph, and rdfa, images, or a full-page png screenshot.
METHOD
PATH
DESCRIPTION
/v1/web/scrape
Scrape a URL
/v1/web/markdown
Scrape to Markdown
/v1/web/crawl
Start a crawl
/v1/web/crawl/{id}
Get crawl status
/v1/web/search
Search the web
/v1/web/extract
Extract structured data from URLs
/v1/web/brand
Resolve a brand
/v1/web/map
Map a site
/v1/web/scrape
Scrape a URL
/v1/web/markdown
Scrape to Markdown
/v1/web/crawl
Start a crawl
/v1/web/crawl/{id}
Get crawl status
/v1/web/search
Search the web
/v1/web/extract
Extract structured data from URLs
/v1/web/brand
Resolve a brand
/v1/web/map
Map a site
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the Hydrafetch API by hand means sending the `X-API-Key` header, choosing between synchronous scrapes and async jobs you poll or receive by webhook, and throttling to the RateLimit headers. Through Jentic you install once, import Hydrafetch from the API Directory, store the key once, and your agent calls it.
Permission scoping
Hydrafetch carries the target URL inside the request body, so rules bound which operations your agent may call, not which sites it fetches. You choose the operations it may call, so credit-heavy crawls, batches, and extraction are not included unless you add them.
Credential isolation
Your Hydrafetch API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'scrape a page to markdown' or 'crawl a website', and Jentic returns the matching Hydrafetch operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using Hydrafetch API through Jentic.
What authentication does the Hydrafetch API use?
Per its OpenAPI spec, the Hydrafetch API takes an API key in the `X-API-Key` header, scoped to a workspace and carrying its credit balance. The logo-serving call, GET /v1/web/logo/{domain}, also requires a publishable key in the `token` query parameter so it can be used from a browser. Through Jentic the API key is stored encrypted by your own Jentic One instance and injected per call.
How are Hydrafetch calls billed?
The spec says calls are billed in credits and charged only on success. A standard scrape is one credit, a site map is one credit, a crawl or batch is one credit per page or URL scraped, and a search is one credit plus one more per result when scrapeResults is true. Richer formats and the extraction tier cost more, and each response reports what it consumed.
What are the rate limits for the Hydrafetch API?
Hydrafetch's spec states that limits are per workspace, not per key, over a 60 second window, with the ceiling set by your plan. Every response carries RateLimit-Policy and RateLimit headers giving the quota, remaining requests, and seconds until reset, and a 429 includes Retry-After in seconds.
Can Hydrafetch crawl a site asynchronously?
Yes. POST /v1/web/crawl discovers and scrapes a whole site as one asynchronous job and returns a crawl id immediately. Poll GET /v1/web/crawl/{id} for progress and per-page results, or register a webhook and check GET /v1/web/crawl/{id}/deliveries to see each callback attempt and its last response.
How do I scrape a page to Markdown with the Hydrafetch API through Jentic?
Search Jentic for 'get a web page as markdown' to get POST /v1/web/markdown, then send the url, optionally with onlyMainContent and blockAds. To run it on your own infrastructure, install Jentic One from its GitHub repo and store your Hydrafetch API key once.
Is there a Hydrafetch MCP server?
You don't need an MCP server to give your agent Hydrafetch. Jentic connects it directly from the API Directory: import it, store your API key once, and your agent calls the operations you allow, discovered when needed instead of preloaded into its context.
Can I limit what my agent is allowed to do with the Hydrafetch API?
Yes. For example, allow only POST /v1/web/markdown and POST /v1/web/search, so the agent can read single pages and search but cannot start crawls or batches that spend credits per page. Your Jentic One instance logs the calls it makes.
For Agents
Scrape a URL to Markdown, HTML, links, structured data, or a screenshot, crawl or batch-scrape sites, search the web, extract schema-shaped JSON with source passages, and resolve company brands and logos with Hydrafetch.
Use for: Get the pricing page of acme.com as Markdown, Crawl the docs site and give me every page, Search the web for recent reviews of a product and scrape the results, Extract product name, price, and availability from these five URLs
Not supported: Does not host or edit websites, bypass logins you do not hold, or store pages as a document archive. Use for fetching, crawling, searching, and extracting public web content and brand data only.
The Hydrafetch API turns web pages into data an agent can use: send a URL and get back clean Markdown, cleaned or raw HTML, links, the page's own JSON-LD, microdata, OpenGraph, and RDFa, images, or a full-page PNG screenshot. It maps a site's URLs, crawls a whole site or scrapes an explicit URL list as asynchronous jobs with webhook callbacks, runs web searches with optional scraping of each result, and extracts schema-shaped JSON from one or many pages with per-field confidence and the source passage behind each value. Brand endpoints resolve a company's logos, colours, and social presence by domain, and the styleguide call reads the colours and type scale a site actually renders. Calls are billed in credits and charged only on success.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>