> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cedarai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a class list

> Creates a new class list (switch list) with the specified equipment moves.

Usage notes:
- Each item represents an equipment move to a target track location.
- The jobId is a user-specified label for the class list.



## OpenAPI

````yaml /user-docs/api-reference/external-openapi.json post /ims/work-orders/class-lists/create
openapi: 3.1.0
info:
  title: ARMS External API
  version: 1.0.0
  description: >-
    OpenAPI specification generated from external API schemas. Endpoints require
    query parameter carrierId and headers x-arms-api-key and x-arms-assume-user.
  license:
    name: Proprietary
    url: https://cedarai.com
servers:
  - url: https://api-lg.arms.cedarai.com
    description: Production (US)
  - url: https://api-lg.arms.cedarai.se
    description: Production (EU)
security:
  - ApiKeyAuth: []
    AssumeUser: []
paths:
  /ims/work-orders/class-lists/create:
    post:
      summary: Create a class list
      description: >-
        Creates a new class list (switch list) with the specified equipment
        moves.


        Usage notes:

        - Each item represents an equipment move to a target track location.

        - The jobId is a user-specified label for the class list.
      operationId: createClassList
      parameters:
        - $ref: '#/components/parameters/CarrierId'
        - $ref: '#/components/parameters/ViewAsUserGroup'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateClassListInput'
            examples:
              basic:
                summary: Create a class list with two equipment moves
                value:
                  carrierId: 1234
                  jobId: SWITCH-001
                  items:
                    - equipmentId: 100
                      location:
                        grouping:
                          resourceId: 10
                          resourceType: Grouping
                        groupingIndex: 0
                    - equipmentId: 200
                      location:
                        grouping:
                          resourceId: 10
                          resourceType: Grouping
                        groupingIndex: 1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassList'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '500':
          description: Internal Server Error
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  parameters:
    CarrierId:
      name: carrierId
      in: query
      required: true
      schema:
        type: integer
      description: Carrier identifier; required for all endpoints
    ViewAsUserGroup:
      name: viewAsUserGroup
      in: query
      required: false
      schema:
        type: string
      description: Optional user group context
  schemas:
    CreateClassListInput:
      type: object
      description: Input for creating a class list (switch list).
      properties:
        carrierId:
          type: integer
          description: Carrier identifier
        jobId:
          type: string
          description: The job ID for the class list
        items:
          type: array
          description: The list of equipment moves to include in the class list
          items:
            type: object
            properties:
              equipmentId:
                type: integer
                description: The equipment resource ID
              location:
                type: object
                description: The inventory location to move the equipment to
                properties:
                  grouping:
                    $ref: '#/components/schemas/GroupingResource'
                  groupingIndex:
                    type: integer
                    description: An index within the grouping (0 = front, -1 = back)
            required:
              - equipmentId
              - location
      required:
        - carrierId
        - jobId
        - items
    ClassList:
      type: object
      description: >-
        A class list (switch list) represents a work order for switching
        operations.
      properties:
        resourceId:
          type: integer
        uuid:
          type: string
          description: UUID that complements the legacy numeric resourceId.
        jobId:
          type: string
          description: User-specified label for the class list
        status:
          type: string
          enum:
            - ACTIVE
            - ARCHIVED
          description: Status of the class list
        createdAt:
          type: string
          format: date-time
          description: When the class list was created
        cuts:
          type: array
          items:
            type: integer
          description: Cut positions in the class list
        isBack:
          type: boolean
          description: True if switching from the back of the track
        carrier:
          $ref: '#/components/schemas/CarrierResource'
        createdBy:
          $ref: '#/components/schemas/UserResource'
    Error:
      type: object
      properties:
        message:
          type: string
    GroupingResource:
      type: object
      properties:
        resourceType:
          type: string
          enum:
            - Grouping
        resourceId:
          type: integer
        uuid:
          type: string
          description: UUID that complements the legacy numeric resourceId.
        name:
          type: string
        groupingType:
          type: string
        sortOrder:
          type: integer
        colorToken:
          type: string
    CarrierResource:
      type: object
      properties:
        resourceType:
          type: string
          enum:
            - Carrier
        resourceId:
          type: integer
        uuid:
          type: string
          description: UUID that complements the legacy numeric resourceId.
        carrierCode:
          type: string
        name:
          type: string
    UserResource:
      type: object
      properties:
        resourceType:
          type: string
          enum:
            - User
        resourceId:
          type: integer
        uuid:
          type: string
          description: UUID that complements the legacy numeric resourceId.
        displayName:
          type: string
        email:
          type: string
          format: email
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-arms-api-key
      description: Your ARMS API key
    AssumeUser:
      type: apiKey
      in: header
      name: x-arms-assume-user
      description: Email of a user assigned to the appropriate user group

````