Skip to content
API documentation

Changelog

Version 1.2.0

Nine new operations under one new tag, Group challenges, behind two new permissions, group-challenge/read and group-challenge/submit. Nothing that worked against 1.1.1 changes.

Added

  • Group challenges, a new resource under /v1/{organizationId}/group-challenge with the tag "Group challenges" and the permission group-challenge/read (also granted by */read, */* and *): listGroupChallenges and getGroupChallenge read the challenges an organization runs; listGroupChallengeStudents and getGroupChallengeStudent say where each of your students stands (eligible by grade, in a group, the group's state) and give the panelPath to send them to with createSigninLink; listGroupChallengeGroups and getGroupChallengeGroup read the groups your students are in, with each step and its files; listGroupChallengeActivity lists what happened in a group. Only your own students are named: every other person is their role alone. The operations answer 404 on an organization where group challenges are not switched on.
  • Submitting group challenge work for one of your students, behind the new permission group-challenge/submit (also granted by */* and *, not by */read): submitGroupChallengeStep submits a group's open step and opens the next, and submitGroupChallengeWork sends the group's finished work and e-mails its members and teacher. Both take { "studentId": "<studentId>" }, a student of yours who is an active member of the group, and are recorded in the group's history as your account acting for them. Repeating a submit that already happened answers 200 with changed: false.

Changed

Release notes

Version 1.2.0 adds nine operations and removes and changes nothing. Code written against 1.1.1 keeps working without a change.

Group challenges

A group challenge is a project your students do in small groups, formed by their teacher, between two dates. Each group works through the challenge's steps in order, uploading its work in the panel or the app. The new tag, Group challenges, lets you:

Only your own students are named. Everyone else in a group — other members, the teacher, the organizers — is shown by role alone.

New permissions

group-challenge/read grants the seven reads and group-challenge/submit the two submits, on the organization in the path. */read includes group-challenge/read; */* and * include both. See Permissions.

Where it is available

Group challenges are switched on per organization. Where they are not, the nine operations answer 404 not_found, as an unknown path does.

Errors

The two submits are the first operations whose 409 conflict carries error.details.reason, and whose 503 service_unavailable carries details.reason: busy with Retry-After: 1. Both are described on the errors page.

Agent kit

The agent kit gains a seventh skill, following-group-challenges-via-api: it reads where your students stand before it submits anything, never retries a 409 in a loop, and sends a student to a challenge's page with a sign-in link instead of trying to upload for them.

Search the API documentation

Guides, endpoints by name, path or permission, and error codes such as not_found.