# Progress

User progress tracking and goals

## Get user progress

> Returns comprehensive progress information for a specific user including season status, \
> current week, goals progress, available credits, and enrollment status. \
> Requires signed fetch authentication.<br>

```json
{"openapi":"3.1.0","info":{"title":"Credits Server API","version":"1.0.0"},"tags":[{"name":"Progress","description":"User progress tracking and goals"}],"servers":[{"url":"https://credits.decentraland.org","description":"Production environment","variables":{}},{"url":"https://credits.decentraland.zone","description":"Development environment","variables":{}}],"security":[{"SignedFetch":[]}],"components":{"securitySchemes":{"SignedFetch":{"type":"http","scheme":"bearer","description":"Signed fetch authentication using @dcl/platform-crypto-middleware (ADR-44l). \nRequires auth chain headers (x-identity, x-signature, x-timestamp) for signature validation. \nSee http://adr.decentraland.org/adr/ADR-44l for details.\n"}}},"paths":{"/users/{address}/progress":{"get":{"tags":["Progress"],"summary":"Get user progress","description":"Returns comprehensive progress information for a specific user including season status, \ncurrent week, goals progress, available credits, and enrollment status. \nRequires signed fetch authentication.\n","operationId":"getUserProgress","parameters":[{"name":"address","in":"path","required":true,"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"description":"User's Ethereum address"}],"responses":{"200":{"description":"User progress retrieved successfully","content":{"application/json":{"schema":{"type":"object","properties":{"season":{"type":"object","properties":{"timeLeft":{"type":"number","description":"Time remaining in season (seconds)"},"startDate":{"type":"string","format":"date-time"},"endDate":{"type":"string","format":"date-time"},"seasonState":{"type":"string","enum":["NOT_STARTED","ACTIVE","ENDED","PAUSED"]}},"required":["timeLeft","startDate","endDate","seasonState"]},"currentWeek":{"type":"object","properties":{"timeLeft":{"type":"number","description":"Time remaining in current week (seconds)"}},"required":["timeLeft"]},"user":{"type":"object","properties":{"hasStartedProgram":{"type":"boolean","description":"Whether user has started the program"}},"required":["hasStartedProgram"]},"credits":{"type":"object","properties":{"available":{"type":"number","description":"Available credits in MANA"},"expiresIn":{"type":"number","description":"Time until credits expire (seconds)"},"isBlockedForClaiming":{"type":"boolean","description":"Whether user is blocked from claiming credits"}},"required":["available","expiresIn","isBlockedForClaiming"]},"goals":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"thumbnail":{"type":"string"},"progress":{"type":"object","properties":{"totalSteps":{"type":"number"},"completedSteps":{"type":"number"}}},"reward":{"type":"number","description":"Credit reward amount"},"isClaimed":{"type":"boolean"}}}}},"required":["season","currentWeek","user","credits","goals"]}}}},"401":{"description":"Unauthorized - invalid signed fetch","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Error message"},"code":{"type":"string","description":"Error code (optional)"}},"required":["error"]}}}},"403":{"description":"Forbidden - invalid metadata","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Error message"},"code":{"type":"string","description":"Error code (optional)"}},"required":["error"]}}}}}}}}}
```
