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

# Groups Search

`POST /curricular-skills/groups/search`

Lets you retrieve all Groups that fit a set of parameters. There are a wide range of filter options including a text based search. You can also sort across multiple properties (ascending or descending as you see fit).

## Request body

- GroupSearchRequest
  - `data` object, required
    - `type` string, required
    - `attributes` object, required
      - `options` object
        - `includeProgramSkills` boolean — Example: `true`
      - `filter` object, required
        - `site` object, required
          - `in` string[], required — Example: `"in": ["site1", "site2"]`
        - `ids` union
          - object
            - `in` string[], required — Example: `"in": ["000000000000000000000000", "012345678901234567890123"]`
            - `exclude` string[] — Example: `"exclude": ["000000000000000000000000", "012345678901234567890123"]`
          - object
            - `in` string[] — Example: `"in": ["000000000000000000000000", "012345678901234567890123"]`
            - `exclude` string[], required — Example: `"exclude": ["000000000000000000000000", "012345678901234567890123"]`
        - `textFilter` object
          - `query` string, required
          - `fields` string[]
        - `text` union — Example: <br/>`"text": "search string"` <br/>`"text": "\"exact match search\""` <br/>`"text": {"query": "search string", "fields": ["title", "description"]}`
          - string
          - object
            - `query` string, required
            - `fields` string[]
        - `academicUnit` object
          - `in` string[], required — Example: `"in": ["f9b1b90a-f05b-4a49-a0df-5062d626821c", "0ee7075c-31a6-4492-9559-aef9eab62baf"]
        - `groupType` object
          - `in` string[], required — Example: `"in": ["5d782386a05145a6a0fa20bf", "8yt82386a05145a6a0fa23be"]
        - `groupTypeClass` object
          - `in` string[], required — Example: `"in": ["5d782386a05145a6a0fa20bf", "8yt82386a05145a6a0fa23be"]`
        - `courses` union
          - object
            - `all` string[], required — Example: `"all": ["5d782386a05145a6a0fa20bf", "8yt82386a05145a6a0fa23be"]`
            - `in` string[] — Example: `"in": ["5d782386a05145a6a0fa20bf", "8yt82386a05145a6a0fa23be"]`
          - object
            - `all` string[] — Example: `"all": ["5d782386a05145a6a0fa20bf", "8yt82386a05145a6a0fa23be"]`
            - `in` string[], required — Example: `"in": ["5d782386a05145a6a0fa20bf", "8yt82386a05145a6a0fa23be"]`
        - `isPublished` boolean — Example: `"isPublished": true`
        - `groupSkills` union
          - object
            - `all` string[], required — Example: `"all": ["skillId1", "skillId2"]`
            - `in` string[] — Example: `"in": ["skillId1", "skillId2"]`
            - `and` union[] — **See the Example Request to see it in action.**
              - …
          - object
            - `all` string[] — Example: `"all": ["skillId1", "skillId2"]`
            - `in` string[], required — Example: `"in": ["skillId1", "skillId2"]`
            - `and` union[] — **See the Example Request to see it in action.**
              - …
          - object
            - `all` string[] — Example: `"all": ["skillId1", "skillId2"]`
            - `in` string[] — Example: `"in": ["skillId1", "skillId2"]`
            - `and` union[], required — **See the Example Request to see it in action.**
              - …
        - `skills` union
          - object
            - `all` string[], required — Example: `"all": ["skillId1", "skillId2"]`
            - `in` string[] — Example: `"in": ["skillId1", "skillId2"]`
            - `and` union[] — **See the Example Request to see it in action.**
              - …
          - object
            - `all` string[] — Example: `"all": ["skillId1", "skillId2"]`
            - `in` string[], required — Example: `"in": ["skillId1", "skillId2"]`
            - `and` union[] — **See the Example Request to see it in action.**
              - …
          - object
            - `all` string[] — Example: `"all": ["skillId1", "skillId2"]`
            - `in` string[] — Example: `"in": ["skillId1", "skillId2"]`
            - `and` union[], required — **See the Example Request to see it in action.**
              - …
      - `sort` array[] — Example:<br/> `[ ["title", "ascending"], ["courses", "descending"] ]`
        - string[]
      - `limit` number, required
      - `offset` number

## Response `200`

OK

- GroupSearchResponse
  - `meta` unknown
  - `data` object[]
    - `type` string, required
    - `id` string, required
    - `attributes` object, required
      - `groupType` object, required
        - `id` string, required
        - `groupTypeClass` object, required
          - `id` string, required
          - `name` string, required
          - `sortOrder` number
        - `label` string, required
      - `academicUnit` object
        - `id` string, required
        - `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
      - `description` string
      - `learningObjectiveText` string
      - `url` string
      - `reviewAssignedTo` string
      - `reviewStatus` string
      - `reviewNotes` string
      - `isPublished` boolean, required
      - `isMarkedRevisit` boolean
      - `skills` object[], required
        - `id` string, required
        - `isLearningObjective` boolean, required
      - `benchmarks` string[]
      - `savedBenchmarks` object
        - `emsiClusters` object[]
          - `id` string
          - `selected` boolean
        - `custom` object[]
          - `id` string
          - `selected` boolean
        - `lightcastOccupations` object[]
          - `id` string
          - `type` 'career_area' | 'specialized_occupation' | 'occupation' | 'occupation_group'
          - `selected` boolean
      - `targetOccupations` object[]
        - `id` string, required
        - `taxonomyId` string, required
        - `level` string
      - `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)
