Skip to main content

Earn Level Configuration

Returns the points thresholds and Earn subscription quota weights for each Earn Level (L0–L5).

GET /points/earn-level-config

No authentication required.

Response

{
"success": true,
"data": [
{ "level": 0, "points_min": 0, "points_max": 999, "weight": 4, "updated_at": "2026-01-01T00:00:00Z", "updated_by": null },
{ "level": 1, "points_min": 1000, "points_max": 9999, "weight": 8, "updated_at": "2026-01-01T00:00:00Z", "updated_by": null },
{ "level": 2, "points_min": 10000, "points_max": 49999, "weight": 12, "updated_at": "2026-01-01T00:00:00Z", "updated_by": null },
{ "level": 3, "points_min": 50000, "points_max": 199999, "weight": 25, "updated_at": "2026-01-01T00:00:00Z", "updated_by": null },
{ "level": 4, "points_min": 200000, "points_max": 499999, "weight": 60, "updated_at": "2026-01-01T00:00:00Z", "updated_by": null },
{ "level": 5, "points_min": 500000, "points_max": null, "weight": 120, "updated_at": "2026-01-01T00:00:00Z", "updated_by": null }
],
"error": null,
"timestamp": 1745280000
}

Response Fields

FieldTypeDescription
levelintEarn Level (0–5)
points_minintMinimum total points to reach this level (inclusive)
points_maxint | nullMaximum total points for this level; null for L5 (no upper bound)
weightintEarn subscription quota weight multiplier
updated_atstringWhen this config row was last modified (ISO 8601)
updated_bystring | nullAdmin who last modified the row; null if never edited

Field names are points_min / points_max (not min_points / max_points).

Code Examples

Python

import requests

BASE_URL = "https://api.prex.world/api/v1"

resp = requests.get(f"{BASE_URL}/points/earn-level-config")
levels = resp.json()["data"]

for lvl in levels:
upper = lvl['points_max'] if lvl['points_max'] else "∞"
print(f"L{lvl['level']}: {lvl['points_min']:,}{upper} weight={lvl['weight']}")