Appel Workshop API

Read-only JSON API for levels.

Rate Limiting

Requests are limited per IP address: 60 requests per 60 seconds. Exceeding the limit returns HTTP 429 with a retry_after_seconds value.

Endpoints

  • GET /api/levels/ - Returns all levels (newest first).
  • GET /api/levels/<id>/ - Returns one level by id.
  • GET /api/profiles/<username>/ - Returns one user profile by username (case-insensitive).

Level Object Fields

  • id, name, mod_category, mod_category_label
  • difficulty, difficulty_rating, quality_rating
  • description, original_uploader, other_creators
  • url, video_url, created_at, detail_url
  • creator object with username, display_name, profile_url

Profile Object Fields

  • username, display_name, bio, scratch_username
  • date_joined, difficulty_system, profile_url
  • uploaded_levels_count, approved_completions_count
  • uploaded_levels list and approved_completions list

Example

{
  "id": 123,
  "name": "My Level",
  "creator": {
    "username": "someuser",
    "display_name": "Some User",
    "profile_url": "https://example.com/profile/someuser/"
  },
  "mod_category": "appel",
  "mod_category_label": "Appel",
  "difficulty": 4.5,
  "difficulty_rating": 4.75,
  "quality_rating": 4.4,
  "description": "...",
  "original_uploader": "",
  "other_creators": "friend1, Friend Two",
  "url": "https://example.com",
  "video_url": "https://www.youtube.com/embed/VIDEO_ID",
  "created_at": "2026-04-25T14:35:12.123456+00:00",
  "detail_url": "https://example.com/level/123/"
}

We use cookies

We use cookies to enhance your browsing experience, serve personalized content, and analyze our traffic. By clicking "Accept All", you consent to our use of cookies.

Necessary (Required)
Essential cookies required for the website to function properly. These cannot be disabled.
Analytics
Cookies that help us understand how visitors interact with our website.
Marketing
Cookies used to deliver personalized advertisements.
Functional
Cookies that enable additional functionality like live chat and videos.