---
title: "Mark all of a teacher's entries in a step complete, by UPI"
method: PATCH
path: "/reports/steps/{stepId}/staff/{staffUpi}/complete"
tags: ["Reports"]
---

# Mark all of a teacher's entries in a step complete, by UPI

`PATCH /reports/steps/{stepId}/staff/{staffUpi}/complete`

## Request

- Base URL: `https://api.tonbridge.school`
- URL: `https://api.tonbridge.school/reports/steps/{stepId}/staff/{staffUpi}/complete`
- Auth: HTTP bearer

**Requires permission:** *ReportAdmins*

Marks every incomplete entry in the step that belongs to the teacher complete: entries carrying their UPI, and entries from before UPIs whose STAFF_ID is theirs. The same entries the Reports Admin progress table counts for them. Report-admin only.

## Path parameters

- `stepId` integer, required
- `staffUpi` string, guid, required

## Response `200`

Success - Marked complete

## Other responses

- `204`: No Content
- `401`: Unauthorized
- `403`: Forbidden

## Changes

- **2026-10-12** `e4fd3de7bd5c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/tonbridge/apis/tonbridge-app-api/changes/reports/steps/:stepId/staff/:staffUpi/complete/patch.md)

---

[API](https://skmtc.dev/tonbridge/apis/tonbridge-app-api.md) · [All operations](https://skmtc.dev/tonbridge/apis/tonbridge-app-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tonbridge/apis/tonbridge-app-api/revisions/d7f60d54b9de?raw)
