Challenge Attempt

The challenge attempt resource.

Basehttps://rest.carbon.ms/challengeAttempt
GET/challengeAttempt

List challenge attempts

Retrieve a paginated list of challenge attempts. Filter, order, and select columns with PostgREST query parameters.

Query parameters

selectstring

Comma-separated columns to return. Defaults to all.

orderstring

Column to sort by, e.g. `createdAt.desc`.

limitinteger

Maximum rows to return.

offsetinteger

Rows to skip, for pagination.

GEThttps://rest.carbon.ms/challengeAttempt
curl --request GET \
  --url 'https://rest.carbon.ms/challengeAttempt?select=*&limit=10' \
  --header 'Authorization: Bearer <api-key>'
Response
[
  {
    "id": 0,
    "userId": "xyz789",
    "courseId": "xyz789",
    "passed": true,
    "topicId": "xyz789",
    "createdAt": "2026-01-01T00:00:00Z"
  }
]
GET/challengeAttempt

Retrieve a challenge attempt

Fetch a single challenge attempt by filtering on `id`.

Query parameters

idstring

Match on the challenge attempt's `id`, e.g. `eq.{id}`.

GEThttps://rest.carbon.ms/challengeAttempt
curl --request GET \
  --url 'https://rest.carbon.ms/challengeAttempt?id=eq.%7Bid%7D' \
  --header 'Authorization: Bearer <api-key>'
Response
{
  "id": 0,
  "userId": "xyz789",
  "courseId": "xyz789",
  "passed": true,
  "topicId": "xyz789",
  "createdAt": "2026-01-01T00:00:00Z"
}
POST/challengeAttempt

Create a challenge attempt

Create a new challenge attempt.

Body parameters

userIdstringrequired

References user.id

courseIdstringrequired
passedbooleanrequired
topicIdstringrequired
POSThttps://rest.carbon.ms/challengeAttempt
curl --request POST \
  --url https://rest.carbon.ms/challengeAttempt \
  --header 'Authorization: Bearer <api-key>' \
  --header 'Content-Type: application/json' \
  --header 'Prefer: return=representation' \
  --data '{"userId":"xyz789","courseId":"xyz789","passed":true,"topicId":"xyz789"}'
Response
{
  "id": 0,
  "userId": "xyz789",
  "courseId": "xyz789",
  "passed": true,
  "topicId": "xyz789",
  "createdAt": "2026-01-01T00:00:00Z"
}
PATCH/challengeAttempt

Update a challenge attempt

Update an existing challenge attempt, matched on `id`.

Body parameters

userIdstringrequired

References user.id

courseIdstringrequired
passedbooleanrequired
topicIdstringrequired
PATCHhttps://rest.carbon.ms/challengeAttempt
curl --request PATCH \
  --url 'https://rest.carbon.ms/challengeAttempt?id=eq.%7Bid%7D' \
  --header 'Authorization: Bearer <api-key>' \
  --header 'Content-Type: application/json' \
  --header 'Prefer: return=representation' \
  --data '{"userId":"xyz789"}'
Response
{
  "id": 0,
  "userId": "xyz789",
  "courseId": "xyz789",
  "passed": true,
  "topicId": "xyz789",
  "createdAt": "2026-01-01T00:00:00Z"
}
DELETE/challengeAttempt

Delete a challenge attempt

Delete a challenge attempt, matched on `id`. Returns 204 No Content.

Query parameters

idstring

The `id` of the challenge attempt to delete, e.g. `eq.{id}`.

DELETEhttps://rest.carbon.ms/challengeAttempt
curl --request DELETE \
  --url 'https://rest.carbon.ms/challengeAttempt?id=eq.%7Bid%7D' \
  --header 'Authorization: Bearer <api-key>'
204 No Content