aio-epub-managelisted
Install: claude install-skill aiocean/claude-plugins
# EPUB Manage — Book Management
Browse, monitor, and manage EPUB books on the translation server.
> **Hub skill**: Dùng skill này để điều hướng. Cần upload? → `aio-epub-upload`. Cần dịch? → `aio-epub-translate`. Cần kiểm tra? → `aio-epub-quality`. Cần xuất? → `aio-epub-export`.
## API Setup
```python
import json, urllib.request, os
BASE = "https://read-api.aiocean.dev/ListBooks.v1.BookService"
KEY = os.environ.get("AIO_EPUB_API_KEY", "duocnv")
def api(method, body):
data = json.dumps(body).encode('utf-8')
req = urllib.request.Request(f"{BASE}/{method}", data=data, headers={
"Content-Type": "application/json",
"X-License-Key": KEY
})
with urllib.request.urlopen(req) as resp:
return json.loads(resp.read())
```
## Operations
### List Books
```python
books = api("ListBooks", {"pageSize": 50, "pageNumber": 1})
for book in books.get("books", []):
print(f" {book['id'][:40]}...")
print(f" Title: {book['title']}")
print(f" Author: {book['author']}")
```
### Get Book Info
```python
book = api("GetBook", {"bookId": BOOK_ID})
b = book["book"]
print(f"Title: {b['title']}")
print(f"Author: {b['author']}")
print(f"Language: {b['language']}")
print(f"Pages: {b.get('pageCount', 'N/A')}")
```
### View Table of Contents
```python
toc = api("GetTableOfContent", {"bookId": BOOK_ID})
def print_toc(items, indent=0):
for item in items:
prefix = " " * indent
print(f"{prefix}{item['title']} -> {item['filePath'