V1CommunityChallengesIdJoin
Enroll or update sharing; counting starts at the later of enrollment and challenge start
Accept the published rules. Both sharing options default to false. Repeating an active join updates consent without resetting countingFrom. Join the parent club/event first when supplied. Leaving and rejoining resets progress.
Authorization
bearer AuthorizationBearer <token>
In: header
Path Parameters
id*string
Match
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Format
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://example.com/v1/community/challenges/497f6eca-6276-4993-bfeb-53cbbbba6f08/join" \ -H "Content-Type: application/json" \ -d '{ "acceptRules": true }'{ "enrollment": { "participantId": "9f6624b5-5f99-42b6-899f-30f2b369cbd7", "alias": "string", "joinedAt": "2019-08-24T14:15:22Z", "countingFrom": "2019-08-24T14:15:22Z", "shareLeaderboard": true, "sharePublicDisplay": true, "steps": 0, "measuredAt": "2019-08-24T14:15:22Z", "provisional": true, "rewardEligible": false }}Leave and withdraw both leaderboard consents immediately DELETE
Previous Page
Member-only top 20 and your pinned row, with symmetric user blocking GET
Private participants see their own score with rank=null. total counts visible opted-in participants, not everyone enrolled. Ties are ordered by participantId. Employers receive no extra access.