AVDB APIドキュメント
471,000以上のJAV動画を持つ無料REST API。JSON&XMLサポート、16言語の多言語翻訳、強力な検索とフィルタリング。
⚡ クイックスタート
秒でAPI応答を取得。登録やAPIキーは不要。
1. 最新動画を取得
2. IDで動画を取得
3. JAVコードで検索
🔗 ベースURL
All API requests use the following base URLs. We provide two API formats:
provide API — it has clean, friendly field names like name, actor, category. If you're using Maccms CMS for collection, use provide1 — it matches Maccms's native field names like vod_name, vod_actor.🔓 認証
📡 Standard API — Overview
The Standard API (/provide/vod) returns clean, developer-friendly JSON with simplified field names. This is the recommended API for most integrations.
Response Structure
{
"code": 1,
"msg": "Data list",
"page": 1,
"pagecount": 472,
"limit": "1000",
"total": 471707,
"list": [ ... ],
"class": [ ... ] // Only in list mode
}
Video Object Fields (Detail Mode)
| Field | Type | 説明 |
|---|---|---|
id | int | Unique video ID |
name | string | Video title (English) |
slug | string | URL-friendly slug (usually the JAV code lowercase) |
origin_name | string | Original title |
movie_code | string | JAV code (e.g. MIAA-818) |
category | array | List of categories/tags (e.g. ["Amateur", "Creampie", "HD"]) |
type_name | string | Type (Censored / Uncensored / etc.) |
actor | array | List of actors |
director | array | List of directors |
poster_url | string | Full poster image URL |
thumb_url | string | Thumbnail image URL |
country | array | Country of origin (e.g. ["Japan"]) |
year | string | Release year |
quality | string | Video quality (HD, 4K, etc.) |
status | string | Video status |
time | string | Duration |
description | string | Full description/synopsis |
created_at | string | Publish date |
tag | string | Tags |
episodes | object | Episode/play data with streaming links |
📋 動画一覧
Get a paginated list of all videos. Returns basic information (no descriptions or play URLs) with category index.
List Mode Fields
In list mode, each video only contains: id, name, origin_name, type_name, category, actor, director, movie_code, country, vod_time
class array with all available categories. Use this to build category menus.Example: List with Category Filter
Get page 2 of Censored videos in list mode.
🎬 動画詳細
Get full details of videos including descriptions, streaming URLs, and all metadata.
Parameters
| パラメータ | 必須 | 説明 | 例 |
|---|---|---|---|
ac | 必須 | Action mode: detail or list | detail |
ids | 任意 | Video ID(s), comma-separated for multiple | 134 or 134,135,136 |
t | 任意 | Category type ID (see Categories) | 1 |
pg | 任意 | Page number (default: 1) | 2 |
pagesize | 任意 | Results per page (1–100, default: 1000) | 50 |
h | 任意 | Videos updated in last N hours | 24 |
year | 任意 | Filter by year or year range | 2024 or 2020-2024 |
sort_direction | 任意 | Sort order: asc or desc (default: desc) | asc |
isend | 任意 | Completion status: 1 = completed, 0 = ongoing | 1 |
例
IDで動画を取得:
複数の動画を取得:
2ページ目、50件/ページ:
24時間以内に更新された動画:
Videos from 2023–2024:
古い順:
🔍 検索
Powerful search across multiple fields. Uses FULLTEXT search for fast performance on 471K+ records.
| パラメータ | 説明 | 説明 | 例 |
|---|---|---|---|
wd | Title | Search by keyword in video title. Also matches JAV codes. | wd=beautiful wife |
code | JAV Code | Search by exact JAV code (matches vod_sub and vod_remarks) | code=MIAA-818 |
actor | Actor name | Search by actor/actress name | actor=Yua Mikami |
director | Director name | Search by director name | director=Nagao |
writer | Writer/Studio | Search by writer or production studio | writer=S1 |
category | Category | Search by category tag (e.g. Amateur, Creampie) | category=Amateur |
検索例
Search by JAV code:
Search by actress name:
Search by dedicated code parameter:
カテゴリで検索:
wd for general searches. It uses FULLTEXT indexing for best performance. Use code when you know the exact JAV code. URL-encode spaces as %20.🔧 Filtering & Combining Parameters
You can combine multiple parameters to narrow results. All filters are applied with AND logic.
組合せ例
Censored videos from 2024, page 3:
Amateur videos updated in last 48h, 20 per page:
Search actress in uncensored, oldest first:
📦 レスポンス形式
Here's a complete example response for a detail request:
{
"code": 1,
"msg": "Data list",
"page": 1,
"pagecount": 1,
"limit": "1000",
"total": 1,
"list": [
{
"type_name": "Censored",
"id": 134,
"name": "WPSL-285 A Dirty Mouth Drooling Girl...",
"slug": "wpsl-285",
"origin_name": "WPSL-285 A Dirty Mouth...",
"movie_code": "WPSL-285",
"category": ["Slut", "Cosplay", "Kiss", "HD", "Censored"],
"actor": ["Urara Kanon"],
"director": ["Updating"],
"poster_url": "https://...",
"thumb_url": "https://...",
"country": ["Japan"],
"year": "2025",
"quality": "HD",
"time": "02:19:00",
"description": "Full description text...",
"episodes": {
"server_name": "VIP #1",
"server_data": {
"Full": {
"slug": "full",
"link_embed": "https://..."
}
}
}
}
]
}
🔌 Maccms API — Overview
The Maccms-compatible API (/provide1/vod) returns raw field names that match the Maccms CMS database schema. Use this if you're collecting data into a Maccms-based website.
provide1 API accepts the exact same parameters as provide — ac, ids, t, pg, pagesize, wd, actor, code, category, h, year, sort_direction, isend. The only difference is the response field names.例
Latest videos (Maccms format):
Search by code (Maccms format):
📑 Maccms Field Reference
Key fields returned in the provide1 detail mode:
| Field | Standard API Equivalent | 説明 |
|---|---|---|
vod_id | id | Video ID |
vod_name | name | Video title |
vod_sub | slug | JAV code (lowercase) |
vod_en | origin_name | Original/English title |
vod_class | category | Categories (comma-separated string) |
vod_actor | actor | Actors (comma-separated string) |
vod_director | director | Director |
vod_writer | writer | Writer/Studio |
vod_pic | poster_url | Poster image URL |
vod_remarks | movie_code | JAV code (uppercase) |
vod_area | country | Country |
vod_year | year | Year |
vod_content | description | Full description |
vod_play_url | episodes | Streaming URLs ($$$ delimited) |
vod_play_from | — | Player source names |
vod_duration | time | Video duration |
vod_serial | — | Series title (Japanese) |
vod_tag | tag | Tags |
vod_hits | — | View count |
🌐 Multilingual API New
All API endpoints support 16 languages. Titles, descriptions, categories, and metadata are automatically translated. Simply add the language prefix to the URL.
Supported Languages
| Code | Language | URL Prefix | 例 |
|---|---|---|---|
en | 🇬🇧 English (default) | https://avdbapi.com/api.php/... | No prefix needed |
th | 🇹🇭 ไทย | https://avdbapi.com/th/api.php/... | Try → |
id | 🇮🇩 Indonesia | https://avdbapi.com/id/api.php/... | Try → |
ko | 🇰🇷 한국어 | https://avdbapi.com/ko/api.php/... | Try → |
vi | 🇻🇳 Tiếng Việt | https://avdbapi.com/vi/api.php/... | Try → |
zh | 🇨🇳 中文 | https://avdbapi.com/zh/api.php/... | Try → |
ja | 🇯🇵 日本語 | https://avdbapi.com/ja/api.php/... | Try → |
fr | 🇫🇷 Français | https://avdbapi.com/fr/api.php/... | Try → |
de | 🇩🇪 Deutsch | https://avdbapi.com/de/api.php/... | Try → |
es | 🇪🇸 Español | https://avdbapi.com/es/api.php/... | Try → |
pt | 🇵🇹 Português | https://avdbapi.com/pt/api.php/... | Try → |
ru | 🇷🇺 Русский | https://avdbapi.com/ru/api.php/... | Try → |
ar | 🇸🇦 العربية | https://avdbapi.com/ar/api.php/... | Try → |
tr | 🇹🇷 Türkçe | https://avdbapi.com/tr/api.php/... | Try → |
hi | 🇮🇳 हिन्दी | https://avdbapi.com/hi/api.php/... | Try → |
ms | 🇲🇾 Malay | https://avdbapi.com/ms/api.php/... | Try → |
tl | 🇵🇭 Filipino | https://avdbapi.com/tl/api.php/... | Try → |
lang and lang_name metadata fields.📂 カテゴリ
Use the t parameter to filter videos by category type ID:
| ID | カテゴリ | Example URL |
|---|---|---|
1 | 🎬 Censored | Try → |
2 | 🔓 Uncensored | Try → |
3 | 💥 Uncensored Leaked | Try → |
4 | 🎥 Amateur | Try → |
5 | 🇨🇳 Chinese AV | Try → |
6 | 🎨 Hentai | Try → |
7 | 🔤 English Subtitle | Try → |
📄 ページネーション
The API returns paginated results. Use pg and pagesize to control pagination.
| Response Field | 説明 |
|---|---|
page | Current page number |
pagecount | Total number of pages available |
limit | Results per page (default 1000) |
total | Total number of matching videos |
Pagination Example — Iterate All Pages
async function fetchAllVideos() {
let page = 1, allVideos = [];
while (true) {
const url = `https://avdbapi.com/api.php/provide/vod?ac=detail&pg=${page}&pagesize=100`;
const res = await fetch(url);
const data = await res.json();
allVideos.push(...data.list);
if (page >= data.pagecount) break;
page++;
}
return allVideos; // 471K+ videos
}
📦 XML形式
Both APIs support XML output format. Add at=xml to the URL or use the /at/xml path suffix.
Standard API - XML:
Maccms API - XML:
💻 コード例
Ready-to-use code snippets in popular languages.
# Get latest videos
curl "https://avdbapi.com/api.php/provide/vod?ac=detail"
# Search by JAV code
curl "https://avdbapi.com/api.php/provide/vod?ac=detail&wd=miaa-818"
# Get Vietnamese translation
curl "https://avdbapi.com/vi/api.php/provide/vod?ac=detail&ids=134"
# Get Censored videos, page 2, 50 per page
curl "https://avdbapi.com/api.php/provide/vod?ac=detail&t=1&pg=2&pagesize=50"
# Get XML format
curl "https://avdbapi.com/api.php/provide/vod/at/xml"
// Search for a specific JAV code
async function searchByCode(code) {
const url = `https://avdbapi.com/api.php/provide/vod?ac=detail&wd=${code}`;
const response = await fetch(url);
const data = await response.json();
if (data.list.length > 0) {
const video = data.list[0];
console.log(`Title: ${video.name}`);
console.log(`Code: ${video.movie_code}`);
console.log(`Actor: ${video.actor.join(', ')}`);
console.log(`Categories: ${video.category.join(', ')}`);
console.log(`Poster: ${video.poster_url}`);
}
}
searchByCode('MIAA-818');
// Get Vietnamese translations
const viUrl = 'https://avdbapi.com/vi/api.php/provide/vod?ac=detail&ids=134';
fetch(viUrl).then(r => r.json()).then(data => {
console.log(data.list[0].name); // Vietnamese title
console.log(data.lang); // "vi"
});
import requests
# Search by actress
url = "https://avdbapi.com/api.php/provide/vod"
params = {
"ac": "detail",
"actor": "Yua Mikami",
"pagesize": 20
}
response = requests.get(url, params=params)
data = response.json()
for video in data["list"]:
print(f"{video['movie_code']} - {video['name']}")
print(f" Categories: {', '.join(video['category'])}")
print(f" Poster: {video['poster_url']}")
print()
print(f"Total results: {data['total']}")
print(f"Pages: {data['pagecount']}")
<?php
// Fetch latest censored videos
$url = 'https://avdbapi.com/api.php/provide/vod?ac=detail&t=1&pagesize=20';
$json = file_get_contents($url);
$data = json_decode($json, true);
echo "Total: " . $data['total'] . " videos\n";
foreach ($data['list'] as $video) {
echo $video['movie_code'] . " - " . $video['name'] . "\n";
echo " Actor: " . implode(', ', $video['actor']) . "\n";
echo " Poster: " . $video['poster_url'] . "\n\n";
}
// Maccms format for collection
$maccmsUrl = 'https://avdbapi.com/api.php/provide1/vod?ac=detail&h=24';
$maccmsData = json_decode(file_get_contents($maccmsUrl), true);
echo "Updated in 24h: " . $maccmsData['total'] . " videos\n";
?>
⚙️ Maccms CMSセットアップ
Step-by-step guide for adding this API as a collection source in Maccms CMS.
ステップ1:カスタム収集ソースを追加
- Login to your Maccms admin panel
- Go to Collection → Custom Resources
- Click Add
- Enter the API URL:
ステップ2:パラメータの設定
- Data format: JSON (default)
- If using XML, add
&at=xmlparameter - Collection interval: Set to 1–6 hours for automatic updates
- Incremental mode: Use
&h=24to only collect videos updated in the last 24 hours
provide1 (not provide) for Maccms collection. The provide1 API returns raw vod_* field names that Maccms expects.ステップ3:増分収集
For daily updates, use the hours parameter to only fetch recently updated videos:
This fetches only videos added or updated in the last 24 hours, making collection faster and more efficient.
🎬 Maccms API — 動画詳細
Full detail mode returns all vod_* fields including descriptions, play URLs, and metadata. Same parameters as Standard API.
Parameters (same as Standard API)
| パラメータ | 必須 | 説明 | 例 |
|---|---|---|---|
ac | 必須 | detail = full info, list = basic info | detail |
ids | 任意 | Video ID(s), comma-separated | 134 or 134,135 |
t | 任意 | Category type ID (1–7) | 1 |
pg | 任意 | Page number | 2 |
pagesize | 任意 | Results per page (1–100) | 50 |
wd | 任意 | Keyword search | miaa-818 |
h | 任意 | Videos updated in last N hours | 24 |
year | 任意 | Year or year range | 2024 |
sort_direction | 任意 | asc or desc | asc |
isend | 任意 | Completion: 1 or 0 | 1 |
例
🔍 Maccms API — 検索
All search parameters from the Standard API work with provide1 too.
| パラメータ | 説明 | 例 |
|---|---|---|
wd | Title (vod_name) — keyword/JAV code | wd=miaa-818 |
code | vod_sub / vod_remarks — exact JAV code | code=FNS-053 |
actor | vod_actor — actor/actress name | actor=Yua Mikami |
director | vod_director — director name | director=Nagao |
writer | vod_writer — writer/studio | writer=S1 |
category | vod_class — category tag | category=Amateur |
検索例
🔧 Maccms API — 組合せフィルター
Combine parameters for precise results. All filters are AND logic.
組合せ例
モザイク+2024年+2ページ目:
女優+カテゴリ+古い順:
タイプ別カテゴリ+年範囲+50件/ページ:
/at/xml to any provide1 URL for XML output:/api.php/provide1/vod/at/xml?ac=detail&t=1📦 Maccms API — レスポンス形式
Example response showing the raw vod_* field names used by Maccms CMS:
{
"code": 1,
"msg": "Data list",
"page": 1,
"pagecount": 1,
"limit": "1000",
"total": 1,
"list": [
{
"vod_id": 134,
"type_id": 1,
"type_name": "Censored",
"vod_name": "WPSL-285 A Dirty Mouth...",
"vod_sub": "wpsl-285",
"vod_en": "WPSL-285 A Dirty Mouth...",
"vod_remarks": "WPSL-285",
"vod_class": "Slut,Individual,Cosplay,Kiss,...",
"vod_actor": "Urara Kanon",
"vod_director": "",
"vod_writer": "Waap Entertainment",
"vod_area": "Japan",
"vod_year": "2025",
"vod_serial": "接吻しまくり淫口よだれ女",
"vod_pic": "https://cdn-poster.avdb.pro/...",
"vod_pic_thumb": "https://cdn-poster.avdb.pro/...",
"vod_duration": "02:19:00",
"vod_content": "Full description...",
"vod_play_from": "VIP",
"vod_play_url": "Full$https://surrit.com/...",
"vod_hits": 85,
"vod_time": "2025-04-08 03:38:35",
// ... 60+ more vod_* fields
}
]
}
category→vod_class(comma-separated string, not array)actor→vod_actor(comma-separated string, not array)episodes→vod_play_url($$$ delimited format)- All fields prefixed with
vod_
⏱️ レート制限
To ensure fair usage for all users, the following rate limits apply:
| パラメータ | 制限 | 詳細 |
|---|---|---|
wd (search) | 45 req/min | Keyword search requests |
actor | 30 req/min | Actor search requests |
director | 30 req/min | Director search requests |
code | 45 req/min | Code search requests |
category | 30 req/min | Category search requests |
| Pagination | No limit | Browsing pages by ID or page number |
ids, t, pg) are not rate-limited. Only text-based search parameters have rate limits to prevent abuse.❓ よくある質問
provideとprovide1の違いは?
同じデータ、異なるフィールド名。provideはクリーンな名前(name, actor)、provide1はMaccms形式(vod_name, vod_actor)。
このAPIは無料ですか?
はい、完全無料。登録、APIキー、隠れたコストは一切ありません。
Is there a maximum page size?
Yes, maximum 100 results per page. Default is 1000 if not specified.
データはどのくらいの頻度で更新されますか?
データベースは毎日複数回新作がリリースされ更新されます。
How do I get translated content?
Add the language prefix to the URL. For example, /vi/api.php/... for Vietnamese.
Do you support CORS?
Yes, CORS is enabled for all origins.
商用プロジェクトに使えますか?
はい、個人・商用問わず無料です。
Can I combine multiple search filters?
Yes, all parameters can be combined. They use AND logic.
AVDB API — 471K+ Videos • 16 Languages • Free Forever
Telegram参加