---
title: "Get enrollment"
method: GET
path: "/v2/enrollments/{id}"
tags: ["Enrollments"]
---

# Get enrollment

`GET /v2/enrollments/{id}`

Retrieve a single enrollment by ID.

**Required OAuth scope:** `enrollments:read`

## Path parameters

- `id` string, required

## Query parameters

- `include` string, nullable

## Response `200`

OK

- EnrollmentDetailResponse — Single enrollment resource response for GET /v2/enrollments/{id}/.
  - `data` EnrollmentResource, required — JSON:API resource object for an enrollment row.
    - `type` string — Always "enrollments".
    - `id` string, required — Opaque enrollment ID. Use in URL paths.
    - `attributes` EnrollmentAttributes, required — Attributes of an enrollment resource in the enrollments list response.
      - `enrolled_at` string, date-time, required — Timestamp when the student was enrolled.
      - `expires_at` string, date-time, nullable — Timestamp when access expires, or null for no expiry.
      - `due_at` string, date-time, nullable — Timestamp the course is due, or null when no due date.
      - `active` boolean, required — Whether this enrollment row is currently active.
      - `channel` string, required — The channel the enrollment was created through, e.g. api, platform, import.
      - `source` string, required — Derived origin: purchased, self-enrolled, or assigned.
      - `progress_status` string, required — Progress state: completed, in_progress, or not_started.
      - `completed_at` string, date-time, nullable — Timestamp the course was completed, or null.
      - `score` integer, nullable — Student's stored score for the course, or null.
      - `max_score` integer, nullable — Maximum possible stored score for the course, or null.
      - `success_status` string, required — Derived success state: passed, failed, pending (graded content without an outcome yet), or not_applicable (no graded content).
      - `domain_name` string, required — Hostname of the published course's domain.
      - `has_certificate` boolean, required — True when a certificate is linked to this enrollment row, regardless of its progress state. Unrelated to whether the course is configured to issue certificates.
      - `rating` integer, nullable — Student's course rating, or null when unrated.
      - `rating_scale` integer, nullable — Scale the rating was given on (5 or 10), or null when unrated.
      - `feedback` string, nullable — Free-text rating feedback, or null when none was left.
    - `relationships` EnrollmentRelationships, required — Relationships of an enrollment resource.
      - `student` StudentRelationship, required — To-one linkage to a student; ``data`` is null when there is no student.
        - `data` StudentIdentifier — JSON:API resource identifier for a student.
          - `type` string — Always "students".
          - `id` string, required — Opaque student ID.
      - `published-course` PublishedCourseRelationship, required — To-one linkage to a published course.
        - `data` PublishedCourseIdentifier, required — JSON:API resource identifier for a published course.
          - `type` string — Always "published-courses".
          - `id` string, required — Opaque published-course ID.
      - `purchase` PurchaseRelationship, required — To-one linkage to a purchase; ``data`` is null when there is no purchase.
        - `data` PurchaseIdentifier — JSON:API resource identifier for a purchase.
          - `type` string — Always "purchases".
          - `id` string, required — Opaque purchase ID.
      - `certificate` CertificateRelationship, required — To-one linkage to a certificate; ``data`` is null when there is no certificate.
        - `data` CertificateIdentifier — JSON:API resource identifier for a certificate.
          - `type` string — Always "certificates".
          - `id` string, required — Opaque certificate ID.
    - `links` object, nullable — Self link.
  - `included` union[], nullable — Related resources requested via ?include=. Absent when not requested.
    - union
      - PurchaseResource — JSON:API resource object for a purchase included via ?include=purchase.
        - `type` string — Always "purchases".
        - `id` string, required — Opaque purchase ID.
        - `attributes` PurchaseAttributes, required — Attributes of a purchase resource included via ?include=purchase.
          - `order_id` string, required — Human-facing order number of the purchase.
          - `offer_price` Money — A monetary amount in a specific currency.
            - `amount` string, required — Decimal amount as a string, e.g. "25.50".
            - `currency_code` string, required — ISO 4217 currency code, e.g. USD.
          - `purchase_price` Money, required — A monetary amount in a specific currency.
            - `amount` string, required — Decimal amount as a string, e.g. "25.50".
            - `currency_code` string, required — ISO 4217 currency code, e.g. USD.
          - `quantity` integer, required — Number of seats purchased.
          - `purchase_state` string, required — Purchase state, e.g. CREATED, SUCCESS, REFUNDED.
          - `payment_processor` string, required — Payment processor, e.g. NONE, STRIPE, PAYPAL.
          - `purchased_at` string, date-time, required — Timestamp the purchase was made.
          - `tax_price_cents` integer, nullable — Tax in cents, or null when not recorded.
      - StudentResource — JSON:API resource object for a student.
        - `type` string — Always "students".
        - `id` string, required — Opaque student ID. Use in URL paths.
        - `attributes` StudentAttributes, required — Attributes of a student resource object.
          - `email` string, required — Student's email address.
          - `first_name` string, required — Student's given name.
          - `last_name` string, required — Student's family name.
          - `is_inactive` boolean, required — True if the student has been deactivated.
          - `external_id` string, required — Stable UUID5 for cross-system correlation.
          - `date_joined` string, date-time, required — Timestamp when the student joined.
        - `relationships` object, nullable — Related resource links.
        - `links` object, nullable — Self and related links.
      - CertificateResource — JSON:API resource object for a certificate.
        - `type` string — Always "certificates".
        - `id` string, required — Opaque certificate ID.
        - `attributes` CertificateAttributes, required — Attributes of a certificate resource.
          - `code` string, required — Unique code identifying the certificate.
          - `issued_at` string, date-time, required — Timestamp the certificate was issued.
          - `expires_at` string, date-time, nullable — Timestamp the certificate expires, or null when it does not expire.
          - `score_as_percent` integer, nullable — Student's course score as a percentage, or null when not recorded.
        - `relationships` CertificateRelationships, required — Relationships of a certificate resource.
          - `student` StudentRelationship, required — To-one linkage to a student; ``data`` is null when there is no student.
            - `data` StudentIdentifier — JSON:API resource identifier for a student.
              - …
          - `course` CourseRelationship, required — To-one linkage to the course being published.
            - `data` CourseIdentifier, required — JSON:API resource identifier for a course.
              - …
        - `links` object, nullable — Self link.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found

---

[API](https://skmtc.net/skilljar/apis/skilljar-api-v2.md) · [All operations](https://skmtc.net/skilljar/apis/skilljar-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/skilljar/skilljar-api-v2/revisions/f8025de20169/schema)
