---
title: "Either adds or updates a user course entry, based on the user's email and the course's ID."
method: PUT
path: "/skills/usercourse"
tags: ["Skills"]
---

# Either adds or updates a user course entry, based on the user's email and the course's ID.

`PUT /skills/usercourse`

**Requires permission:** *StaffMember*

## Request body

- PutUserCourseRequest
  - `id` integer
  - `userEmail` string, nullable
  - `firstViewedAt` string, date-time, nullable
  - `lastViewedAt` string, date-time, nullable
  - `courseId` string, nullable
  - `courseImage` string, nullable
  - `courseTitle` string, nullable
  - `provider` string, nullable
  - `completed` boolean
  - `completedAt` string, date-time, nullable
  - `hidden` boolean

## Response `204`

Success - Added/updated user course

## Other responses

- `400` — An Error Occurred - Could not add/update user course
- `401` — Unauthorized
- `403` — Forbidden

---

[API](https://skmtc.net/tonbridge/apis/tonbridge-app-api.md) · [All operations](https://skmtc.net/tonbridge/apis/tonbridge-app-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tonbridge/tonbridge-app-api/versions/fab57bf5558a/schema)
