---
title: "Create an enrollment"
method: POST
path: "/api/v1/enrollments"
tags: ["Enrollments"]
---

# Create an enrollment

`POST /api/v1/enrollments`

## Query parameters

- `create_order` boolean
- `send_email` boolean

## Request body

- object
  - `enrollment` object
    - `listing_id` integer, required — Id of the Listing
    - `canvas_user_id` integer, required — Id of the Canvas user

## Response `201`

enrollment created

- object
  - `enrollment` object, required
    - `id` integer, required — Identifier for this enrollment
    - `user` object, required — The enrolled user
      - `id` integer, required — Corresponding Canvas user id for this enrollment
    - `listing` object, required — The listing enrolled in
      - `id` integer, required — Identifier for the listing
      - `title` string, required — The name of the listing
      - `type` string, required — The type of listing (Course or Program)
      - `canvas_course_id` integer, nullable, required — Canvas course ID (null for Program enrollments)
    - `enrolled_at` string, required — The time of enrollment (UTC)
    - `status` string, required — Enrollment status (active, dropped or concluded)
    - `requirement_details` object, required — Requirement completion details
      - `requirement_count` integer, nullable, required — Total number of requirements for the enrollment
      - `requirement_completed_count` integer, nullable, required — Number of completed requirements
      - `requirement_completed_percentage` integer, nullable, required — Percentage of completed requirements (0-100)

---

[API](https://skmtc.net/instructure/apis/canvas-catalog-api.md) · [All operations](https://skmtc.net/instructure/apis/canvas-catalog-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/instructure/canvas-catalog-api/revisions/78578cd3e37a/schema)
