---
title: "Groups"
method: POST
path: "/curricular-skills/groups"
tags: ["Groups"]
---

# Groups

`POST /curricular-skills/groups`

Provides functionality for creating individual groups one at a time. You may create a single group by making a POST request with a valid group object to the `/curricular-skills/groups` endpoint. The group object must contain, at the minimum, a valid `groupType` id, a `site`, a `title` and an `isPublished`. `id` is not a valid attribute as it is automatically generated and cannot be changed.

## Request body

- GroupPostRequest
  - `data` object, required
    - `type` string, required
    - `attributes` object, required
      - `site` string, required
      - `groupType` string, required
      - `title` string, required
      - `cipCode` string
      - `courses` union
        - object[]
          - `id` string, required
          - `isRequired` boolean
        - string[]
      - `description` string
      - `url` string
      - `isPublished` boolean, required
      - `benchmarks` string[]
      - `savedBenchmarks` object
        - `emsiClusters` object[]
          - `id` string, required
          - `selected` boolean, required
        - `custom` object[]
          - `id` string, required
          - `selected` boolean, required
        - `lightcastOccupations` object[]
          - `id` string, required
          - `type` 'career_area' | 'specialized_occupation' | 'occupation' | 'occupation_group', required
          - `selected` boolean, required

## Response `201`

OK

- SingleGroupResponse
  - `data` object
    - `type` string, required
    - `id` string, required
    - `attributes` object, required
      - `groupType` object
        - `id` string, required
        - `groupTypeClass` object, required
          - `id` string, required
          - `name` string, required
          - `sortOrder` number
        - `label` string, required
      - `courses` object[]
        - `id` string, required
        - `title` string, required
        - `isRequired` boolean, required
        - `attributes` object, required
          - `title` string, required
      - `title` string, required
      - `cipCode` string
      - `site` string, required
      - `subdomain` string
      - `description` string
      - `url` string
      - `benchmarks` string[]
      - `savedBenchmarks` object
        - `emsiClusters` object[]
          - `id` string, required
          - `selected` boolean, required
        - `custom` object[]
          - `id` string
          - `selected` boolean
        - `lightcastOccupations` object[]
          - `id` string
          - `type` 'career_area' | 'specialized_occupation' | 'occupation' | 'occupation_group'
          - `selected` boolean
      - `isPublished` boolean, required
      - `createdAt` string
      - `updatedAt` string
    - `meta` object
      - `skillsInProgram` string[]

## Other responses

- `400` — bad request
- `403` — You don't have access to traveltime data.

---

[API](https://skmtc.net/lightcast/apis/alumni-pathways-2-0.md) · [All operations](https://skmtc.net/lightcast/apis/alumni-pathways-2-0/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lightcast/alumni-pathways-2-0/revisions/fc66b9877391/schema)
