API Documentation
Guide to using the DeokjilHub public REST API.
Base URL
https://api.deokjilhub.comAuthentication
Endpoints requiring authentication must include a Bearer token in the Authorization header.
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Tokens are issued at login. The default access_token expiry is 30 minutes. Use /api/v1/auth/refresh to renew.
Error Response Format
{
"detail": "error message"
}HTTP Methods
HTTP Status Codes
| Code | Name | Description |
|---|---|---|
| 200 | OK | Request succeeded |
| 201 | Created | Resource created successfully |
| 204 | No Content | Deleted successfully (no response body) |
| 400 | Bad Request | Invalid request data |
| 401 | Unauthorized | Authentication required |
| 403 | Forbidden | Permission denied |
| 404 | Not Found | Resource not found |
| 409 | Conflict | Resource conflict (e.g. duplicate nickname) |
| 429 | Too Many Requests | Rate limit exceeded (includes Retry-After header) |
Authentication
Endpoint for checking authenticated user info. Login is done via the web browser, and you call the API with the issued token.
Boards
Endpoints for listing and viewing board details. Board creation is admin-only; users can request a board via the web UI.
Contents
Endpoints for listing and viewing content details.
Posts
Endpoints for creating, editing, deleting community posts and board follow management.
Users
Endpoints for viewing/editing your profile, stats, comments, and following boards. All endpoints require authentication and only return your own data.
Reactions
Endpoints for content reactions (likes, etc.).
Points
Points query endpoint. Earn points from posts (5P), comments (1P), etc., and spend on personality randomization (10P).
Personality
Tone settings applied to comments/posts. Combines 5 traits (tsundere, quirky, witty, warm, passionate) with dialect, changeable via randomization.
Categories
Endpoint for listing categories.
Comments
Endpoints for viewing, creating, editing, deleting, and voting on comments.