Mihon and tracker integrations
Map Comick's OAuth and HID-based library API to a Mihon tracker and understand remaining limitations.
Integration status
Comick provides the API building blocks for a tracker. Adding these endpoints does not automatically add Comick to Mihon's tracking-service menu. A Comick tracker adapter and OAuth callback integration must still be implemented in Mihon and accepted/distributed by that project. This is distinct from a manga-source extension used to browse and read chapters.
This mapping was checked against Mihon's Tracker interface and MangaBaka adapter. Mihon tracks manga; Comick's anime endpoints are available for other clients.
Adapter mapping
| Mihon operation | Comick request |
|---|---|
| Login | Public/native OAuth client, system browser, S256 PKCE, state validation; request library:read library:write offline_access. |
search | GET /titles?q=...&media_type=manga; let the user choose a result. |
| Title details | GET /titles/{hid}. |
bind | GET /me/library/{hid}; keep existing remote progress/status, or PUT a new entry after 404. |
update | PATCH /me/library/{hid} with supplied status/progress/rating only. |
refresh | GET /me/library/{hid}. |
| Optional delete support | DELETE /me/library/{hid} following an explicit user action. |
Use the five Comick statuses. Progress is the last read chapter number, sent as a string such as "12.5" or "0", not a chapter ID. Preserve unknown or nonnumeric progress; do not silently reset it to zero. Number-only progress does not require a Comick chapter entry. Do not lower remote progress during initial binding just because the local library is empty.
Remaining differences to handle
- HIDs: Mihon's Track model uses a numeric
remoteId; Comick uses opaque string HIDs. The adapter needs persistent, collision-safe local mapping or upstream support for string remote identifiers. Never parse a HID as a number, use an unchecked hash, or request internal Comick database IDs. Keep the original HID for every API request; slugs and titles can change. - Ratings: use
ratingfrom library entries andPATCH /me/library/{hid}with{ "rating": 1 }through{ "rating": 10 }, or{ "rating": null }to clear. Map the tracker's unrated value to null. Do not send zero or silently round decimal imported scores; preserve the remote value until the user chooses a supported integer score. - Dates/privacy: start/finish reading dates and per-entry private flags are unsupported. Disable Mihon's reading-date and private-tracking capabilities.
progressed_atis the last progress update time, not a start/finish date. - Rereading: Comick has no separate rereading status or reread count; map to reading only with a clear product decision, rather than inventing status 6.
- Totals: final manga chapter counts are unknown. Do not treat latest released chapter or release-row count as the final total. Unknown totals disable automatic completion based on a total.
- Identity: OpenID Connect identity scopes and ID tokens are unavailable. No email is exposed.
- Refresh: serialize refresh requests, atomically save both rotated tokens, and reconnect if the authorizing Comick session expires or is revoked. Thirty days is the refresh-token maximum, not a guarantee of uninterrupted access.
- Conflicts: updates use last accepted values. There are no webhooks, bulk-write endpoint, conditional versions, or offline conflict protocol. Reconcile carefully and respect the shared per-app/per-user limits.
A production adapter should test cancellation, rejected write permission, connections from other eligible users, decimal/unknown progress, token rotation, disconnect, and removing an entry. Follow the mobile quickstart and library reference. Developers do not need Better Auth in their own apps.