---
title: "Course completion report by course or by user"
method: GET
path: "/learn/report"
tags: ["Learn"]
---

# Course completion report by course or by user

`GET /learn/report`

## Request

- Base URL: `https://developer.solofire.com/v1`
- URL: `https://developer.solofire.com/v1/learn/report`
- Auth: HTTP bearer

Requires the `learn.read` scope.

## Query parameters

- `from` string
- `to` string
- `group_by` string
- `course_id` string
- `user_id` string
- `learning_path_id` string

## Response `200`

Success

- object

## Other responses

- `401`: `unauthorized` No credential was presented. `invalid_token` The API key is unknown, revoked or malformed. `token_expired` The API key has passed its expiry.
- `403`: `insufficient_scope` The credential does not carry the required scope. `forbidden` The member this credential acts as lacks the permission. `feature_not_enabled` API access is not enabled for this company.
- `405`: `method_not_allowed` The path exists but not for this method.
- `422`: `validation_failed` A parameter or body field is invalid.
- `429`: `rate_limited` The credential is over its request budget.
- `500`: `internal_error` Something went wrong on our side.

---

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