AVDB Tài liệu API
API REST miễn phí với hơn 471.000 phim JAV. Hỗ trợ JSON & XML, dịch đa ngôn ngữ 16 ngôn ngữ, tìm kiếm & lọc mạnh mẽ.
⚡ Bắt đầu nhanh
Nhận phản hồi API đầu tiên trong vài giây. Không cần đăng ký hoặc API key.
1. LẤY PHIM MỚI NHẤT
2. LẤY PHIM THEO ID
3. TÌM THEO MÃ JAV
🔗 URL cơ sở
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.🔓 Xác thực
📡 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 | Mô tả |
|---|---|---|
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 |
📋 Danh sách phim
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.
🎬 Chi tiết phim
Get full details of videos including descriptions, streaming URLs, and all metadata.
Parameters
| Tham số | Bắt buộc | Mô tả | Ví dụ |
|---|---|---|---|
ac | Bắt buộc | Action mode: detail or list | detail |
ids | Tùy chọn | Video ID(s), comma-separated for multiple | 134 or 134,135,136 |
t | Tùy chọn | Category type ID (see Categories) | 1 |
pg | Tùy chọn | Page number (default: 1) | 2 |
pagesize | Tùy chọn | Results per page (1–100, default: 1000) | 50 |
h | Tùy chọn | Videos updated in last N hours | 24 |
year | Tùy chọn | Filter by year or year range | 2024 or 2020-2024 |
sort_direction | Tùy chọn | Sort order: asc or desc (default: desc) | asc |
isend | Tùy chọn | Completion status: 1 = completed, 0 = ongoing | 1 |
Ví dụ
Lấy phim theo ID:
Lấy nhiều phim:
Trang 2, 50 mỗi trang:
Phim cập nhật trong 24 giờ:
Videos from 2023–2024:
Cũ nhất trước:
🔍 Tìm kiếm
Powerful search across multiple fields. Uses FULLTEXT search for fast performance on 471K+ records.
| Tham số | Mô tả | Mô tả | Ví dụ |
|---|---|---|---|
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 |
Ví dụ tìm kiếm
Search by JAV code:
Search by actress name:
Search by dedicated code parameter:
Tìm theo thể loại:
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.
Ví dụ kết hợp
Censored videos from 2024, page 3:
Amateur videos updated in last 48h, 20 per page:
Search actress in uncensored, oldest first:
📦 Định dạng phản hồi
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.Ví dụ
Latest videos (Maccms format):
Search by code (Maccms format):
📑 Maccms Field Reference
Key fields returned in the provide1 detail mode:
| Field | Standard API Equivalent | Mô tả |
|---|---|---|
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
| Mã | Ngôn ngữ | URL Prefix | Ví dụ |
|---|---|---|---|
en | 🇬🇧 English (default) | https://avdbapi.com/api.php/... | No prefix needed |
th | 🇹🇭 ไทย | https://avdbapi.com/th/api.php/... | Thử → |
id | 🇮🇩 Indonesia | https://avdbapi.com/id/api.php/... | Thử → |
ko | 🇰🇷 한국어 | https://avdbapi.com/ko/api.php/... | Thử → |
vi | 🇻🇳 Tiếng Việt | https://avdbapi.com/vi/api.php/... | Thử → |
zh | 🇨🇳 中文 | https://avdbapi.com/zh/api.php/... | Thử → |
ja | 🇯🇵 日本語 | https://avdbapi.com/ja/api.php/... | Thử → |
fr | 🇫🇷 Français | https://avdbapi.com/fr/api.php/... | Thử → |
de | 🇩🇪 Deutsch | https://avdbapi.com/de/api.php/... | Thử → |
es | 🇪🇸 Español | https://avdbapi.com/es/api.php/... | Thử → |
pt | 🇵🇹 Português | https://avdbapi.com/pt/api.php/... | Thử → |
ru | 🇷🇺 Русский | https://avdbapi.com/ru/api.php/... | Thử → |
ar | 🇸🇦 العربية | https://avdbapi.com/ar/api.php/... | Thử → |
tr | 🇹🇷 Türkçe | https://avdbapi.com/tr/api.php/... | Thử → |
hi | 🇮🇳 हिन्दी | https://avdbapi.com/hi/api.php/... | Thử → |
ms | 🇲🇾 Malay | https://avdbapi.com/ms/api.php/... | Thử → |
tl | 🇵🇭 Filipino | https://avdbapi.com/tl/api.php/... | Thử → |
lang and lang_name metadata fields.📂 Thể loại
Use the t parameter to filter videos by category type ID:
| ID | Thể loại | URL mẫu |
|---|---|---|
1 | 🎬 Censored | Thử → |
2 | 🔓 Uncensored | Thử → |
3 | 💥 Uncensored Leaked | Thử → |
4 | 🎥 Amateur | Thử → |
5 | 🇨🇳 Chinese AV | Thử → |
6 | 🎨 Hentai | Thử → |
7 | 🔤 English Subtitle | Thử → |
📄 Phân trang
The API returns paginated results. Use pg and pagesize to control pagination.
| Response Field | Mô tả |
|---|---|
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
}
📦 Định dạng 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:
💻 Ví dụ mã
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";
?>
⚙️ Cài đặt CMS Maccms
Hướng dẫn từng bước để thêm API này làm nguồn thu thập trong CMS Maccms.
Bước 1: Thêm Nguồn Thu Thập Tùy Chỉnh
- Login to your Maccms admin panel
- Go to Collection → Custom Resources
- Click Add
- Enter the API URL:
Bước 2: Cấu Hình Tham Số
- 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.Bước 3: Thu Thập Tăng Dần
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.
🎬 API Maccms — Chi tiết phim
Chế độ chi tiết đầy đủ trả về tất cả các trường vod_* bao gồm mô tả, URL phát và metadata. Cùng tham số với API Tiêu chuẩn.
Tham số (giống API Tiêu chuẩn)
| Tham số | Bắt buộc | Mô tả | Ví dụ |
|---|---|---|---|
ac | Bắt buộc | detail = full info, list = basic info | detail |
ids | Tùy chọn | Video ID(s), comma-separated | 134 or 134,135 |
t | Tùy chọn | Category type ID (1–7) | 1 |
pg | Tùy chọn | Page number | 2 |
pagesize | Tùy chọn | Results per page (1–100) | 50 |
wd | Tùy chọn | Keyword search | miaa-818 |
h | Tùy chọn | Videos updated in last N hours | 24 |
year | Tùy chọn | Year or year range | 2024 |
sort_direction | Tùy chọn | asc or desc | asc |
isend | Tùy chọn | Completion: 1 or 0 | 1 |
Ví dụ
Trang 2, 50 mỗi trang:
Khoảng năm (2020–2024):
🔍 API Maccms — Tìm kiếm
Tất cả tham số tìm kiếm từ API Tiêu chuẩn đều hoạt động với provide1.
| Tham số | Mô tả | Ví dụ |
|---|---|---|
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 |
Ví dụ tìm kiếm
Tìm theo mã JAV (từ khóa):
Tìm theo nữ diễn viên:
Tìm theo hãng phim/biên kịch:
🔧 API Maccms — Bộ lọc kết hợp
Kết hợp tham số để có kết quả chính xác. Tất cả bộ lọc dùng logic AND.
Ví dụ kết hợp
Kiểm duyệt + năm 2024 + trang 2:
Không kiểm duyệt + cập nhật 48 giờ:
Nữ diễn viên + thể loại + cũ nhất trước:
Thể loại theo loại + khoảng năm + 50 mỗi trang:
Tìm mã + chỉ đã hoàn thành:
/at/xml to any provide1 URL for XML output:/api.php/provide1/vod/at/xml?ac=detail&t=1📦 API Maccms — Định dạng phản hồi
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_
⏱️ Giới hạn tốc độ
Để đảm bảo sử dụng công bằng, các giới hạn tốc độ sau được áp dụng:
| Tham số | Giới hạn | Chi tiết |
|---|---|---|
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.❓ Câu hỏi thường gặp
Sự khác biệt giữa provide và provide1 là gì?
Cùng dữ liệu, khác tên trường. provide dùng tên sạch (name, actor), provide1 dùng định dạng Maccms (vod_name, vod_actor).
API này có miễn phí không?
Có, hoàn toàn miễn phí. Không cần đăng ký, không cần API key, không có chi phí ẩn.
Có kích thước trang tối đa không?
Có, tối đa 100 kết quả mỗi trang. Mặc định là 1000 nếu không chỉ định.
Dữ liệu được cập nhật bao lâu một lần?
Cơ sở dữ liệu được cập nhật nhiều lần mỗi ngày với bản phát hành mới.
Làm thế nào để lấy nội dung đã dịch?
Thêm tiền tố ngôn ngữ vào URL. Ví dụ: /vi/api.php/... cho tiếng Việt.
Bạn có hỗ trợ CORS không?
Có, CORS được bật cho tất cả các nguồn.
Tôi có thể sử dụng cho dự án thương mại không?
Có, API miễn phí cho cả sử dụng cá nhân và thương mại.
Tôi có thể kết hợp nhiều bộ lọc không?
Có, tất cả tham số có thể kết hợp. Chúng dùng logic AND.
AVDB API — 471K+ Videos • 16 Languages • Free Forever
Tham gia Telegram