Authentication
All API endpoints require authentication. Use JWT tokens to authenticate your requests.
How to Authenticate
-
1
Obtain Access Token
POST to
/api/v1/auth/token/with your username and password -
2
Include Token in Header
Add the Authorization header to all requests
-
3
Refresh When Expired
Access tokens expire in 30 minutes. Use the refresh endpoint to get a new one.
# Step 1: Get tokens
curl -X POST https://your-domain.com/api/v1/auth/token/ \
-H "Content-Type: application/json" \
-d '{"username": "your_username", "password": "your_password"}'
# Response:
{
"access": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...",
"refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..."
}
# Step 2: Use token in requests
curl https://your-domain.com/api/v1/resources/ \
-H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..."
Rate Limiting
API requests are rate limited to ensure fair usage.
| User Type | Rate Limit |
|---|---|
| Authenticated Users | 1000 requests/hour |
Response Codes
Standard HTTP response codes used by this API.
Authentication Endpoints
Endpoints for obtaining and managing JWT tokens.
Request Body
| Parameter | Type | Description |
|---|---|---|
| username required | string | User's username |
| password required | string | User's password |
Request Body
| Parameter | Type | Description |
|---|---|---|
| refresh required | string | The refresh token obtained from login |
Request Body
| Parameter | Type | Description |
|---|---|---|
| refresh required | string | The refresh token to blacklist |
Resources
Manage video resources and educational content.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| category | string | Filter by category slug |
| tag | string | Filter by tag slug |
| search | string | Search in title |
| page | integer | Page number (default: 1) |
Create a new resource. Requires admin privileges.
Blog Posts
Manage blog posts with SEO optimization.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| category | string | Filter by category slug |
| tag | string | Filter by tag slug |
| author | string | Filter by author username |
| featured | boolean | Filter featured posts (true/false) |
| search | string | Search in title and excerpt |
Blog Categories
Templates Store
Manage Next.js and mobile app templates.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| category | string | Filter by category slug |
| featured | boolean | Filter featured templates |
| free | boolean | Filter free templates |
| paid | boolean | Filter paid templates |
| sort | string | Sort by: price_asc, price_desc, name, oldest |
| search | string | Search in name and description |