Providers
Sources javinfo aggregates, what each returns, and how to pin one with `providers`.
A provider is a source javinfo aggregates and normalizes. Each search fans out across them and returns the first structured hit — metadata, magnets, streams — in one call, no scrapers to maintain. Let the API pick, or pin a source.
The roster
| Provider | Best for | Returns | Endpoints |
|---|---|---|---|
fanza, dmm | Richest structured metadata & filtering | Metadata, jackets, sample images (censored catalog) | /movie, /query, /random |
missav | Streams & the broadest filters | .m3u8 stream URLs, Japanese genres, runtime + release ranges | /movie, /query |
javdb | Download links & sorting | Magnets / download links, ratings, availability | /movie, /query |
javdatabase | Descriptions & images | Description text, sample images, archive browsing | /movie, /query |
sextb | Streams & uncensored titles | .m3u8 streams, metadata, censored + uncensored | /movie, /query |
javlibrary | Deep-catalog fallback | Metadata, cover, sample images | /movie, /query |
javbus | Torrents & Japanese metadata | Metadata, cover, gallery images, magnets | /movie, /query |
fanza and dmm are the two DMM + FANZA storefronts. Query ids: query:fanza,
query:dmm, query:javdatabase, query:sextb, query:javlibrary, query:javbus,
query:missav, query:javdb.
Selecting a provider
Default: fan-out
Omit providers and every registered provider is a candidate, tried in order; the first
that fully satisfies the request wins:
FANZA → DMM → javdatabase → sextb → javlibrary → javbus → missav → javdbThe first seven, through missav, come from our own index, answering in milliseconds.
javdb is fetched live as the fallback tier; /movie swaps the last two, putting javdb
ahead of missav.
On /query, a provider that can't satisfy the filter/sort is skipped. /movie and
/random take no filters: first hit wins. The winner is echoed as source:
{ "q": "SSIS-001", "source": "fanza", "result": { "...": "..." } }Pin with providers
Send providers to force a source or set: an array or comma list, with or without the
query: prefix:
curl -s -X POST https://api.javinfo.dev/query \
-H "x-javinfo-key: $KEY" -H 'content-type: application/json' \
-d '{ "q": "ABP", "providers": ["javdb"], "sort": "rating" }'"providers": "javdb", ["fanza","missav"] and "query:javdb" are all valid. A pinned
provider that can't satisfy a /query request fails the call with 422 and a message
naming the reason. Unknown id: 400. See Errors.
Pinning, the waterfall and per-filter capability matter most on /query; the per-provider
filter/sort matrix is in the capability matrix. /movie and
/random just echo the winner as source. The MCP server takes its own
providers argument, where javdb is movie-only.
The providers
fanza / dmm
The DMM + FANZA storefronts and the richest structured source: all named dimensions
(genre, actress, maker, series, director, label, actor), freely combined,
English values, minute-based runtime filters, sort: release, pagination.
Censored only; uncensored excludes them.
missav
The broadest filters and the stream source (.m3u8). Every named dimension (genres in
Japanese, e.g. 巨乳), both ranges, censored both ways. No sort (relevance only), no real
pagination (always page 1).
javdb
No per-field filters, but the best sorting and the download source: coarse censored (both
ways), availability (playable / magnets / subtitle / single), rich sort
(relevance / release / update / rating). Paginated.
javdatabase
Our catalog of the English site. Full filtering: every named dimension combined, both
ranges, censored and uncensored. English values only, no auto-slugifying; a Japanese q is
skipped. Paginated, sort: release works.
sextb
Streams from our catalog: every named dimension, both ranges, censored both ways. Titles
carry .m3u8 stream URLs alongside the usual metadata. Paginated, sort: release works.
javlibrary
A deep catalog, all ours. /movie is a code lookup: title, cast, genres, runtime, release
date, studio, cover and sample images (no magnets or streams). /query is a full search:
every named dimension, both ranges, sort: release, censored only. Paginated. Reach for it
when storefronts miss a code.
javbus
Our crawled javbus catalog: about 663,000 titles, censored and uncensored, from our own index with no hourly cap. It carries English and Japanese titles, cast, genres, maker, label, series, director, cover, gallery images.
/query supports every named dimension except actor, both ranges, and censored both
ways. Actress, maker and genre values match Japanese or English (三上悠亜 and
Yua Mikami both work). Sorting is relevance or release only; results paginate. No
availability.
/movie adds torrents: each magnet is an entry in result.extra.downloadLinks with name,
info hash, magnet URI, size in bytes, hd, cnsub, createdAt.
curl -s 'https://api.javinfo.dev/movie?q=BEB-001&providers=javbus' \
-H "x-javinfo-key: jvi_your_key_here"{
"q": "BEB-001",
"source": "javbus",
"result": {
"contentId": null,
"dvdId": "BEB-001",
"titleEn": "Hot kiss and embrace JULIA of Bijin Older Sister living in the neighbor",
"titleJa": "隣に住んでいる美人お姉さんの、熱い接吻と抱擁 JULIA",
"commentEn": null,
"commentJa": null,
"runtimeMins": 118,
"releaseDate": "2010-12-19",
"makers": ["Bi"],
"label": "Bicchi",
"series": "Hotkissandembraceof○○OlderSisterlivingin",
"categories": ["Slut", "Threesome / Foursome"],
"actresses": ["JULIA"],
"actors": [],
"directors": ["Sion."],
"authors": [],
"jacketFullUrl": "https://www.javbus.com/pics/cover/18gl_b.jpg",
"jacketThumbUrl": "https://www.javbus.com/pics/thumb/18gl.jpg",
"site": "javbus",
"serviceCode": null,
"extra": {
"actressesRich": [
{
"name": "JULIA",
"image": "https://www.javbus.com/pics/actress/2de_a.jpg"
}
],
"sampleUrl": null,
"galleryFull": [
"https://pics.dmm.co.jp/digital/video/beb00001/beb00001jp-1.jpg",
"https://pics.dmm.co.jp/digital/video/beb00001/beb00001jp-2.jpg"
],
"galleryThumb": [
"https://pics.dmm.co.jp/digital/video/beb00001/beb00001-1.jpg",
"https://pics.dmm.co.jp/digital/video/beb00001/beb00001-2.jpg"
],
"downloadLinks": [
{
"name": "BEB-001",
"hash": "0d640b95d94676448e6faa075b88e701191037d9",
"magnet": "magnet:?xt=urn:btih:0D640B95D94676448E6FAA075B88E701191037D9&dn=BEB-001",
"url": null,
"size": 1642824991,
"hd": false,
"cnsub": false,
"filesCount": null,
"createdAt": "2026-09-11"
}
],
"pageUrl": "https://www.javbus.com/en/BEB-001"
}
}
}Arrays are trimmed to the first item or two.
Next
- Filtering: the full capability matrix and
/querycheat sheet. - MCP server: providers as tool arguments.
- API reference: every endpoint with a live playground.