> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Complete Lesson

> Marks a lesson as completed for the authenticated customer.

# Complete Lesson

Marks a specific lesson as completed for the authenticated customer. Progress is tracked per customer per course. Once all lessons are completed, the course is considered finished.

## Authentication

Requires a valid customer bearer token.

## Path Parameters

<ParamField path="courseId" type="number" required>
  Numeric identifier of the course.
</ParamField>

<ParamField path="lessonUniqueId" type="string" required>
  The UUID (`UniqueId`) of the lesson to mark as complete. Obtained from `GET /api/public/courses/v2/{courseId}/lessons/{lessonId}`.
</ParamField>

## Request Body

No request body required.

## Response

Returns a `200 OK` on success.

## Examples

### Mark a lesson as complete

```http theme={null}
POST /api/public/courses/42/lessons/a1b2c3d4-e5f6-7890-abcd-ef1234567890/complete
Authorization: Bearer {token}
```

```
HTTP/1.1 200 OK
```

## TypeScript Integration

```typescript theme={null}
import endpoints from '@/api/endpoints'

await httpClient.post(endpoints.courses.completeLesson(42, 'a1b2c3d4-e5f6-7890-abcd-ef1234567890').url)
```
