openapi: 3.0.1
info:
  title: eModal TermOps Pregate Gateway API
  description: eModal TermOps Pregate Gateway API
  version: v1
  x-metadata:
    product: Pregate
paths:
  /api/External/about:
    get:
      tags:
        - External
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetTerminalInfoByMTO_Cd:
    get:
      tags:
        - External
      parameters:
        - name: mtoCd
          in: query
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TerminalData'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetVisitsData:
    get:
      tags:
        - External
      parameters:
        - name: sVisitId
          in: query
          schema:
            type: string
        - name: facilityId
          in: query
          schema:
            type: integer
            format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientVisit'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetVisitbyMoveIdentifier:
    get:
      tags:
        - External
      parameters:
        - name: sMoveIdentifier
          in: query
          schema:
            type: string
        - name: facilityId
          in: query
          schema:
            type: integer
            format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientVisit'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetTerminalData:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FacilityStep1ConfigRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Step1Configuration'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetTruckingCompanyAppointments:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompanyAppointmentsInputModel'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TruckingCompanyAppointments'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetTruckingCompanyBySCAC:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompanyAppointmentsInputModel'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TruckingCompanyAppointments'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetContainerAppointmentStatus:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContainerAppointmentStatusInputModel'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerAppointments'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetAvailableSlots:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateVisitsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IndexedClientVisitsWithSlots'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/GetSlots:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateVisitsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/CreateUpdateVisits:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IndexedClientVisits'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IndexedClientVisitsWithSlots'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/External/CancelMove:
    post:
      tags:
        - External
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelApptRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SlotAvailability'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/about:
    get:
      tags:
        - Pregate
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/facilities:
    get:
      tags:
        - Pregate
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetMasterData:
    get:
      tags:
        - Pregate
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetFacilityStep1Config:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FacilityStep1ConfigRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetContainerAvailabilityDetailsAppt:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContainerAvailabilityDetailsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetGroupCodeDetailsAppt:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupCodeDetailsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetApptBookingDetails:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApptBookingDetailsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetGateOrderDetails:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApptBookingDetailsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetDrayUnitGateOrderDetails:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DrayUnitDetailsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetDrayUnitDetails:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DrayUnitDetailsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/ValidateRules:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NextGenVisit'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/ValidateRulesV2:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateVisitsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/CreateUpdateVisits:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IndexedClientVisits'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetVisitsData:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FacilityStep1ConfigRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetSlotAvailability:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SlotAvailabilityRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SlotAvailability'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetSystemProfiles:
    get:
      tags:
        - Pregate
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SystemProfileValue'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetMoveMessages:
    get:
      tags:
        - Pregate
      parameters:
        - name: GateAppt_Id
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MoveMessage'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/CancelMoves:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelApptRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SlotAvailability'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/GetPersistedContainerState:
    get:
      tags:
        - Pregate
      parameters:
        - name: GateAppt_Id
          in: query
          schema:
            type: integer
            format: int64
        - name: Facility_Id
          in: query
          schema:
            type: integer
            format: int32
      responses:
        '200':
          description: OK
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
  /api/pregate/RouteToBreApi:
    post:
      tags:
        - Pregate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RouteToBreApiRequest'
      responses:
        '200':
          description: OK
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
components:
  schemas:
    AppointmentStatusData:
      type: object
      properties:
        container_Num:
          type: string
          nullable: true
        mtO_Id:
          type: integer
          format: int64
        mtO_Cd:
          type: string
          nullable: true
        mtO_Nm:
          type: string
          nullable: true
        mtoDisplay_Cd:
          type: string
          nullable: true
        apptType_Cd:
          type: string
          nullable: true
        apptType_Dsc:
          type: string
          nullable: true
        apptStatus_Cd:
          type: string
          nullable: true
        apptStatus_Dsc:
          type: string
          nullable: true
        apptFrom_DtTm:
          type: string
          format: date-time
        apptTo_DtTm:
          type: string
          format: date-time
        scac:
          type: string
          nullable: true
        create_DtTm:
          type: string
          format: date-time
        modify_DtTm:
          type: string
          format: date-time
      additionalProperties: false
    ApptBookingDetailsRequest:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int64
        bookingNumbers:
          type: array
          items:
            type: string
          nullable: true
        tradeType:
          type: string
          nullable: true
        apptTypeCd:
          type: string
          nullable: true
      additionalProperties: false
    ApptRequest:
      type: object
      properties:
        id:
          type: integer
          format: int64
        mtO_Id:
          type: integer
          format: int32
        mtO_Cd:
          type: string
          nullable: true
      additionalProperties: false
    ApptResponseSeverity:
      enum:
        - 0
        - 1
        - 2
        - 3
      type: integer
      format: int32
    ApptTariffFee:
      type: object
      properties:
        tariff_Id:
          type: integer
          format: int32
        mtO_Id:
          type: integer
          format: int32
        tariffFee_Id:
          type: integer
          format: int32
        terminalFee_Cd:
          type: integer
          format: int32
        fee_Id:
          type: integer
          format: int32
        fee_Cd:
          type: string
          nullable: true
        fee_Dsc:
          type: string
          nullable: true
        fee_Amount:
          type: number
          format: double
        matchWeight:
          type: integer
          format: int32
        moveType:
          type: string
          nullable: true
        feeExemption:
          type: boolean
        tempMove_Id:
          type: integer
          format: int32
        reschDisp:
          type: string
          nullable: true
        gateApptReschDisp:
          type: integer
          format: int64
      additionalProperties: false
    ApptType:
      type: object
      properties:
        apptType_Cd:
          type: string
          nullable: true
        apptType_Dsc:
          type: string
          nullable: true
        scheduleGroup_Num:
          type: integer
          format: int32
        apptSvc_Cd:
          type: string
          nullable: true
        preAdvice_Flg:
          type: boolean
      additionalProperties: false
    AssociatedPool:
      type: object
      properties:
        poolId:
          type: integer
          format: int32
        availableCount:
          type: integer
          format: int32
        slotScheduleTimeSlotRule_Id:
          type: integer
          format: int32
        movePoolIds:
          type: array
          items:
            type: integer
            format: int32
          nullable: true
        recommended:
          type: boolean
        isEquipmentTypeRTG:
          type: boolean
        asscociatedMovePoolIds:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    BookingEDOState:
      type: object
      properties:
        bookingEDO_Num:
          type: string
          nullable: true
        truckingCompany_SCAC:
          type: string
          nullable: true
        totalOrdered_Qty:
          type: integer
          format: int32
        diff_Flg:
          type: string
          nullable: true
        equipmentSzTypeCd:
          type: string
          nullable: true
        ecpIdentifier:
          type: string
          format: uuid
          nullable: true
        conPrefix_Cd:
          type: string
          nullable: true
        con_Num:
          type: string
          nullable: true
        conChkDigit:
          type: string
          nullable: true
        blockType_Cd:
          type: string
          nullable: true
        bookingEdoType_Cd:
          type: string
          nullable: true
        shippingLine_SCAC:
          type: string
          nullable: true
        isHaz:
          type: boolean
        isOD:
          type: boolean
        isReefer:
          type: boolean
        usdaInspectionRequired_Flg:
          type: boolean
        fumigationReqd_Flg:
          type: boolean
        noSubstitution_Flg:
          type: boolean
        cutoffOverride_Flg:
          type: boolean
        containerGroup_Cd:
          type: string
          nullable: true
        truckerPool_Cd:
          type: string
          nullable: true
        dispatchStart_DtTm:
          type: string
          format: date-time
          nullable: true
        dispatchEnd_DtTm:
          type: string
          format: date-time
          nullable: true
        cargoCutOff_DtTm:
          type: string
          format: date-time
          nullable: true
        beginRcvd_DtTm:
          type: string
          format: date-time
          nullable: true
        reeferCutoff_DtTm:
          type: string
          format: date-time
          nullable: true
        hazmatCutoff_DtTm:
          type: string
          format: date-time
          nullable: true
        odCutoff_DtTm:
          type: string
          format: date-time
          nullable: true
        dep_Dt:
          type: string
          format: date-time
          nullable: true
        utcTerminalLastModified_DtTm:
          type: string
          format: date-time
          nullable: true
      additionalProperties: false
    CancelApptRequest:
      type: object
      properties:
        gateApptIdList:
          type: array
          items:
            $ref: '#/components/schemas/ApptRequest'
          nullable: true
        truckVisitIdList:
          type: array
          items:
            $ref: '#/components/schemas/ApptRequest'
          nullable: true
      additionalProperties: false
    ChassisSizeType:
      type: object
      properties:
        unitSize_Cd:
          type: string
          nullable: true
        unitType_Cd:
          type: string
          nullable: true
        unitSizeType_Cd:
          type: string
          nullable: true
      additionalProperties: false
    CheckInConfig:
      type: object
      properties:
        apptType_Cd:
          type: string
          nullable: true
        cutOffTime:
          type: integer
          format: int64
      additionalProperties: false
    CheckInConfiguration:
      type: object
      properties:
        preAdviceMsg:
          type: string
          nullable: true
        pregateMsg:
          type: string
          nullable: true
        configs:
          type: array
          items:
            $ref: '#/components/schemas/CheckInConfig'
          nullable: true
      additionalProperties: false
    ClaimFeesCat:
      type: object
      properties:
        feeCat:
          type: string
          nullable: true
        isMandatory:
          type: boolean
        isChecked:
          type: boolean
      additionalProperties: false
    ClientVisit:
      type: object
      properties:
        action:
          type: string
          nullable: true
        activeTerminal:
          type: string
          nullable: true
        associatedCompany:
          type: integer
          format: int64
        associatedCompanyName:
          type: string
          nullable: true
        truckingCompany_Uid:
          type: string
          nullable: true
        editVisibility:
          type: array
          items:
            type: integer
            format: int32
          nullable: true
        selectedSlot:
          $ref: '#/components/schemas/TextValuePair'
        visit:
          $ref: '#/components/schemas/TruckVisit'
        moves:
          type: array
          items:
            $ref: '#/components/schemas/TruckVisitMove'
          nullable: true
        generalMessages:
          type: array
          items:
            $ref: '#/components/schemas/GateResponseMessage'
          nullable: true
        isDisplayFeeCat:
          type: boolean
        claimFeesCat:
          type: array
          items:
            $ref: '#/components/schemas/ClaimFeesCat'
          nullable: true
        allowFeePayments:
          type: boolean
        feeItems:
          type: array
          items:
            $ref: '#/components/schemas/ApptTariffFee'
          nullable: true
        addToCartFeeCodes:
          type: array
          items:
            type: string
          nullable: true
        availableTerminalList:
          type: array
          items:
            $ref: '#/components/schemas/TextValuePair'
          nullable: true
        scacless:
          type: boolean
          nullable: true
      additionalProperties: false
    CompanyAppointmentsInputModel:
      type: object
      properties:
        apptType_Cd:
          type: string
          nullable: true
        mto_Cd:
          type: string
          nullable: true
        truckingCompany_Uids:
          type: string
          nullable: true
        scaC_Cds:
          type: string
          nullable: true
      additionalProperties: false
    ContainerAppointmentStatusInputModel:
      type: object
      properties:
        container_Num:
          type: string
          nullable: true
        apptType_Cd:
          type: string
          nullable: true
        from_Date:
          type: string
          nullable: true
      additionalProperties: false
    ContainerAppointments:
      type: object
      properties:
        container_Num:
          type: string
          nullable: true
        apptType_Cd:
          type: string
          nullable: true
        from_Date:
          type: string
          format: date-time
        appointmentStatusData:
          type: array
          items:
            $ref: '#/components/schemas/AppointmentStatusData'
          nullable: true
      additionalProperties: false
    ContainerAvailabilityDetailsRequest:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int32
        containers:
          type: array
          items:
            type: string
          nullable: true
        moveType:
          type: string
          nullable: true
        profileParameter_Cds:
          type: array
          items:
            type: string
          nullable: true
        companyName:
          type: string
          nullable: true
      additionalProperties: false
    DrayUnitDetail:
      type: object
      properties:
        ref_Num:
          type: string
          nullable: true
        containers:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    DrayUnitDetailsRequest:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int32
        drayUnitDetails:
          type: array
          items:
            $ref: '#/components/schemas/DrayUnitDetail'
          nullable: true
        moveType:
          type: string
          nullable: true
        isGetConfigs:
          type: boolean
        profileParameter_Cds:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    FacilityIsoArchType:
      type: object
      properties:
        facility_Cd:
          type: string
          nullable: true
        unitISO_Cd:
          type: string
          nullable: true
        unitArchISO_Cd:
          type: string
          nullable: true
        unitSzType_Cd:
          type: string
          nullable: true
        unitHgt_Cd:
          type: string
          nullable: true
      additionalProperties: false
    FacilityMoveTypeProfileValue:
      type: object
      properties:
        moveTypeCode:
          type: string
          nullable: true
        moveTypeDescription:
          type: string
          nullable: true
        profileParameter_Cd:
          type: string
          nullable: true
        profileParameter_Val:
          type: string
          nullable: true
      additionalProperties: false
    FacilityProfileValue:
      type: object
      properties:
        profileParameter_Cd:
          type: string
          nullable: true
        profileParameter_Val:
          type: string
          nullable: true
      additionalProperties: false
    FacilityStep1ConfigRequest:
      type: object
      properties:
        facilityId:
          type: integer
          format: int32
        profileParameter_Cds:
          type: array
          items:
            type: string
          nullable: true
        userAction:
          type: string
          nullable: true
        visitIds:
          type: array
          items:
            type: string
          nullable: true
        isSingleVisit:
          type: boolean
        truckingCompanyName:
          type: string
          nullable: true
      additionalProperties: false
    GateResponseMessage:
      type: object
      properties:
        severity:
          type: integer
          format: int32
          readOnly: true
        messageid:
          type: string
          nullable: true
        messageseverity:
          $ref: '#/components/schemas/ApptResponseSeverity'
        messagetext:
          type: string
          nullable: true
        messagedetail:
          type: string
          nullable: true
      additionalProperties: false
    GateResponseMessages:
      type: object
      properties:
        severity:
          type: integer
          format: int32
          readOnly: true
        messageid:
          type: string
          nullable: true
        messageseverity:
          $ref: '#/components/schemas/ApptResponseSeverity'
        messagetext:
          type: string
          nullable: true
        messagedetail:
          type: string
          nullable: true
        messageservicecd:
          type: string
          nullable: true
      additionalProperties: false
    GroupCodeDetailsRequest:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int32
        groupCodes:
          type: array
          items:
            type: string
          nullable: true
        moveType:
          type: string
          nullable: true
        profileParameter_Cds:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    IndexedClientVisits:
      type: object
      properties:
        indexedClientVisitRequests:
          type: array
          items:
            $ref: '#/components/schemas/ClientVisit'
          nullable: true
      additionalProperties: false
    IndexedClientVisitsWithSlots:
      type: object
      properties:
        visits:
          $ref: '#/components/schemas/IndexedClientVisits'
        slots:
          type: array
          items:
            $ref: '#/components/schemas/Slots'
          nullable: true
      additionalProperties: false
    IsoArcheType:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int64
        isoArch_Cd:
          type: string
          nullable: true
        conSz:
          type: string
          nullable: true
        conTp:
          type: string
          nullable: true
        conHt:
          type: string
          nullable: true
      additionalProperties: false
    JsonNode:
      type: object
      properties:
        options:
          $ref: '#/components/schemas/JsonNodeOptions'
        parent:
          $ref: '#/components/schemas/JsonNode'
        root:
          $ref: '#/components/schemas/JsonNode'
      additionalProperties: false
    JsonNodeOptions:
      type: object
      properties:
        propertyNameCaseInsensitive:
          type: boolean
      additionalProperties: false
    MoveFeeClaim:
      type: object
      properties:
        feeCat:
          type: string
          nullable: true
        isMandatory:
          type: boolean
        isChecked:
          type: boolean
        apptType_Cds:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    MoveMessage:
      type: object
      properties:
        messageId:
          type: string
          nullable: true
        messageSeverity:
          $ref: '#/components/schemas/ResponseSeverity'
        messageText:
          type: string
          nullable: true
        messageDetail:
          type: string
          nullable: true
        messageServiceCd:
          type: string
          nullable: true
      additionalProperties: false
    MoveTypeAddAppt:
      type: object
      properties:
        apptType_Cd:
          type: string
          nullable: true
        apptType_Dsc:
          type: string
          nullable: true
        scheduleGroup_Num:
          type: integer
          format: int32
        apptSvc_Cd:
          type: string
          nullable: true
        preAdvice_Flg:
          type: boolean
        mtO_Id:
          type: integer
          format: int64
      additionalProperties: false
    NextGenTruckVisit:
      type: object
      properties:
        visitUIId:
          type: integer
          format: int32
        plate:
          type: string
          nullable: true
        driverName:
          type: string
          nullable: true
      additionalProperties: false
    NextGenVisit:
      type: object
      properties:
        facilityId:
          type: integer
          format: int32
        visits:
          type: array
          items:
            $ref: '#/components/schemas/Visit'
          nullable: true
        ruleStage:
          type: string
          nullable: true
      additionalProperties: false
    ProblemDetails:
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
      additionalProperties: {}
    ResponseSeverity:
      enum:
        - 0
        - 1
        - 2
        - 3
      type: integer
      format: int32
    RouteToBreApiRequest:
      type: object
      properties:
        data:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/JsonNode'
          nullable: true
        controllerPath:
          type: string
          nullable: true
        requestType:
          type: string
          nullable: true
        checkFacilityProfile:
          type: boolean
        facilityId:
          type: integer
          format: int32
      additionalProperties: false
    Rule:
      type: object
      properties:
        ruleId:
          type: integer
          format: int32
        facilityId:
          type: integer
          format: int32
        moveTypeCd:
          type: string
          nullable: true
        ruleNum:
          type: string
          nullable: true
      additionalProperties: false
    ShippingLines:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int64
        list:
          type: array
          items:
            $ref: '#/components/schemas/TextValuePair'
          nullable: true
      additionalProperties: false
    SlotAvailability:
      type: object
      properties:
        today:
          type: array
          items:
            $ref: '#/components/schemas/TimeSlot'
          nullable: true
        tomorrow:
          type: array
          items:
            $ref: '#/components/schemas/TimeSlot'
          nullable: true
      additionalProperties: false
    SlotAvailabilityRequest:
      type: object
      properties:
        moveTypeCode:
          type: string
          nullable: true
        terminalId:
          type: integer
          format: int64
        associatedCompany:
          type: integer
          format: int64
      additionalProperties: false
    Slots:
      type: object
      properties:
        visitUIId:
          type: integer
          format: int32
        visitSlots:
          type: array
          items:
            $ref: '#/components/schemas/TextValuePair'
          nullable: true
        associatedPools:
          type: array
          items:
            $ref: '#/components/schemas/AssociatedPool'
          nullable: true
      additionalProperties: false
    SpecialHandlingInstructions:
      type: object
      properties:
        key:
          type: string
          nullable: true
        value:
          nullable: true
      additionalProperties: false
    Step1Configuration:
      type: object
      properties:
        moveTypeAddAppts:
          type: array
          items:
            $ref: '#/components/schemas/MoveTypeAddAppt'
          nullable: true
        shippingLines:
          $ref: '#/components/schemas/ShippingLines'
        chassisSizeTypeList:
          type: array
          items:
            $ref: '#/components/schemas/ChassisSizeType'
          nullable: true
        isoArcheTypesList:
          type: array
          items:
            $ref: '#/components/schemas/IsoArcheType'
          nullable: true
        claimFeeCatList:
          type: array
          items:
            $ref: '#/components/schemas/MoveFeeClaim'
          nullable: true
        facilityProfileValues:
          type: array
          items:
            $ref: '#/components/schemas/FacilityProfileValue'
          nullable: true
        facilityMoveTypeProfileValues:
          type: array
          items:
            $ref: '#/components/schemas/FacilityMoveTypeProfileValue'
          nullable: true
        checkInConfigs:
          $ref: '#/components/schemas/CheckInConfiguration'
        uomDetails:
          type: array
          items:
            $ref: '#/components/schemas/TextValuePair'
          nullable: true
        facilityIsoArchTypesList:
          type: array
          items:
            $ref: '#/components/schemas/FacilityIsoArchType'
          nullable: true
        inventoryRules:
          type: array
          items:
            $ref: '#/components/schemas/Rule'
          nullable: true
        truckPlateList:
          $ref: '#/components/schemas/TruckPlates'
        step1Configs:
          type: array
          items:
            $ref: '#/components/schemas/UIConfigStep1'
          nullable: true
        allConfigStep:
          type: array
          items:
            $ref: '#/components/schemas/UIConfigAllStep'
          nullable: true
      additionalProperties: false
    SystemProfileValue:
      type: object
      properties:
        profileParameter_Cd:
          type: string
          nullable: true
        profileParameter_Val:
          type: string
          nullable: true
      additionalProperties: false
    TerminalData:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int64
        mtO_Cd:
          type: string
          nullable: true
        mtO_Nm:
          type: string
          nullable: true
        mtoDisplay_Cd:
          type: string
          nullable: true
        port_cd:
          type: string
          nullable: true
        location_Cd:
          type: string
          nullable: true
        ecpMto_Cd:
          type: string
          nullable: true
        tiPartner_Cd:
          type: string
          nullable: true
        company_Id:
          type: integer
          format: int64
        apptTypes:
          type: array
          items:
            $ref: '#/components/schemas/ApptType'
          nullable: true
      additionalProperties: false
    TextValuePair:
      type: object
      properties:
        text:
          type: string
          nullable: true
        value:
          nullable: true
      additionalProperties: false
    TimeSlot:
      type: object
      properties:
        startTime:
          type: string
          nullable: true
        endTime:
          type: string
          nullable: true
        color:
          type: string
          nullable: true
      additionalProperties: false
    TruckPlates:
      type: object
      properties:
        companyName:
          type: string
          nullable: true
        plateNames:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    TruckVisit:
      type: object
      properties:
        visitUIId:
          type: integer
          format: int32
        truckGroup_UId:
          type: string
          format: uuid
          nullable: true
        truckGroup_Name:
          type: string
          nullable: true
        mtO_Id:
          type: integer
          format: int64
        mtoDisplay_Cd:
          type: string
          nullable: true
        truckVisit_Id:
          type: integer
          format: int64
        truckvisitFeeResponsibleParty_Id:
          type: integer
          format: int64
        responsiblePartyCompany_Uid:
          type: string
          nullable: true
        claimAllFees_Flg:
          type: string
          nullable: true
        visitDisplay_Nm:
          type: string
          nullable: true
        truckPlate_Num:
          type: string
          nullable: true
        rfiD_Cd:
          type: string
          nullable: true
        pool_Cd:
          type: string
          nullable: true
        apptPool_Id:
          type: integer
          format: int64
        apptSlotSchedule_Id:
          type: integer
          format: int64
        request_Identifier:
          type: string
          format: uuid
          nullable: true
        request_Source:
          type: string
          nullable: true
        request_Source_Identifier:
          type: string
          nullable: true
        visitMoveDate:
          type: string
          nullable: true
        trucker_FirstName:
          type: string
          nullable: true
        messages:
          type: array
          items:
            $ref: '#/components/schemas/GateResponseMessages'
          nullable: true
        createUser_Id:
          type: integer
          format: int64
        create_DtTm:
          type: string
          format: date-time
        initialSS_Id:
          type: integer
          format: int64
        userAction:
          type: string
          nullable: true
        visitBusn_Dt:
          type: string
          format: date-time
        visitFrom_Tm:
          type: string
          format: date-time
        visitTo_Tm:
          type: string
          format: date-time
        visitFrom_DtTm:
          type: string
          format: date-time
        visitTo_DtTm:
          type: string
          format: date-time
        company_Id:
          type: integer
          format: int64
        company_Uid:
          type: string
          nullable: true
        isRecommendedSlot:
          type: boolean
      additionalProperties: false
    TruckVisitMove:
      type: object
      properties:
        moveUIId:
          type: integer
          format: int32
        mtoDisplay_Cd:
          type: string
          nullable: true
        mtO_Id:
          type: integer
          format: int64
        con_Cd:
          type: string
          nullable: true
        equipmentIso_Cd:
          type: string
          nullable: true
        gateAppt_Id:
          type: integer
          format: int64
        apptPool_Id:
          type: integer
          format: int64
        apptSlotSchedule_Id:
          type: integer
          format: int64
        slotScheduleTimeSlotRule_Id:
          type: integer
          format: int32
        associatedPools:
          type: string
          nullable: true
        container_Num:
          type: string
          nullable: true
        apptType_Cd:
          type: string
          nullable: true
        apptType_Dsc:
          type: string
          nullable: true
        tradeType:
          type: string
          nullable: true
        cargoRef_Num:
          type: string
          nullable: true
        errSeverity_Ind:
          type: integer
          format: int32
        overallSeverity_Ind:
          type: integer
          format: int32
        cancelBy:
          type: string
          nullable: true
        createUser_Id:
          type: integer
          format: int64
          nullable: true
        vessel_Nm:
          type: string
          nullable: true
        voy_Num:
          type: string
          nullable: true
        dual_Flg:
          type: string
          nullable: true
        isDualTransactionOverrideCapacity:
          type: boolean
        dualOverrideCapacity_Flg:
          type: string
          nullable: true
        create_DtTm:
          type: string
          format: date-time
        lastModify_DtTm:
          type: string
          format: date-time
        apptTosStatus:
          type: string
          nullable: true
        terminalStatusCd:
          type: string
          nullable: true
        timeSlotMandatory:
          type: boolean
        terminalStatusDesc:
          type: string
          nullable: true
        externalApptRef_Nbr:
          type: string
          nullable: true
        isHaz:
          type: boolean
        isHaz_Old:
          type: boolean
        isReefer_Old:
          type: boolean
        isReefer:
          type: boolean
        isOD_Old:
          type: boolean
        isOD:
          type: boolean
        isOwnChs:
          type: boolean
        seal1_Num:
          type: string
          nullable: true
        seal2_Num:
          type: string
          nullable: true
        seal3_Num:
          type: string
          nullable: true
        seal4_Num:
          type: string
          nullable: true
        seal5_Num:
          type: string
          nullable: true
        seal6_Num:
          type: string
          nullable: true
        seal7_Num:
          type: string
          nullable: true
        seal8_Num:
          type: string
          nullable: true
        specialHandleInstr:
          type: string
          nullable: true
        apptStatus_Cd:
          type: string
          nullable: true
        tosApptStatus:
          type: string
          nullable: true
        apptStatus_Dsc:
          type: string
          nullable: true
        shippingLine_Cd:
          type: string
          nullable: true
        shippingLine_Nm:
          type: string
          nullable: true
        ship_Cd:
          type: string
          nullable: true
        pod:
          type: string
          nullable: true
        pdl:
          type: string
          nullable: true
        remarks:
          type: string
          nullable: true
        cancelByUser_Id:
          type: integer
          format: int64
        gateApptCon_Id:
          type: integer
          format: int64
        con_Num:
          type: string
          nullable: true
        chassis:
          type: string
          nullable: true
        chassis_Num:
          type: string
          nullable: true
        conChkDigit:
          type: string
          nullable: true
        container_Len:
          type: integer
          format: int32
        conPrefix_Cd:
          type: string
          nullable: true
        shippingLine_Id:
          type: integer
          format: int64
        truckVisit_Id:
          type: integer
          format: int64
        piN_Num:
          type: string
          nullable: true
        genset_Num:
          type: string
          nullable: true
        sChassisWeight:
          type: string
          nullable: true
        specialInst:
          type: string
          nullable: true
        chassisSzTyp:
          type: string
          nullable: true
        move_Request_Identifier:
          type: string
          format: uuid
          nullable: true
        messages:
          type: array
          items:
            $ref: '#/components/schemas/GateResponseMessages'
          nullable: true
        mode:
          type: string
          nullable: true
        apptSlotScheduleDetails_Id:
          type: integer
          format: int64
        availability:
          nullable: true
        bookingEDOState:
          $ref: '#/components/schemas/BookingEDOState'
        initialCTEU:
          type: integer
          format: int32
        isoList:
          type: array
          items:
            $ref: '#/components/schemas/TextValuePair'
          nullable: true
        initialSS_Id:
          type: integer
          format: int64
        initialSSD_Id:
          type: integer
          format: int64
        preExist:
          type: boolean
        intialBookingEDO_Num:
          type: string
          nullable: true
        oldContainer_Num:
          type: string
          nullable: true
        moveIdentifier:
          type: string
          format: uuid
        newMoveIdentifier:
          type: string
          format: uuid
        isRebookAllowed:
          type: boolean
        isRebookApplied:
          type: boolean
        userAction:
          type: string
          nullable: true
        oldPIN_Num:
          type: string
          nullable: true
        offdkCarrTpInd:
          type: boolean
        specialHandlingInstructions:
          type: array
          items:
            $ref: '#/components/schemas/SpecialHandlingInstructions'
          nullable: true
        isCheckIn:
          type: boolean
        ref_Type:
          type: string
          nullable: true
        sVgm_Weight:
          type: string
          nullable: true
        uom:
          type: string
          nullable: true
        sizeTypeList:
          type: array
          items:
            $ref: '#/components/schemas/TextValuePair'
          nullable: true
        preAdviceFlag:
          type: boolean
        blockType_Cd:
          type: string
          nullable: true
        billofLadingNumber:
          type: string
          nullable: true
        isNextGenPregateWebCall:
          type: boolean
        lloyds_Num:
          type: string
          nullable: true
        scaC_CD:
          type: string
          nullable: true
        truckingCompany_Nm:
          type: string
          nullable: true
        visibilityEndPoint:
          type: string
          nullable: true
        scacless:
          type: string
          nullable: true
      additionalProperties: false
    TruckingCompanyAppointments:
      type: object
      properties:
        companyID:
          type: integer
          format: int32
        truckingCompanyUID:
          type: string
          format: uuid
        companyName:
          type: string
          nullable: true
        mto_Cd:
          type: string
          nullable: true
        ecpMto_Cd:
          type: string
          nullable: true
        apptType_Cd:
          type: string
          nullable: true
        scac:
          type: string
          nullable: true
        apptStatus_Cd:
          type: string
          nullable: true
      additionalProperties: false
    UIConfigAllStep:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int64
        apptType_Cd:
          type: string
          nullable: true
        step1Config:
          type: string
          nullable: true
        step2Config:
          type: string
          nullable: true
        step3Config:
          type: string
          nullable: true
        step4Config:
          type: string
          nullable: true
      additionalProperties: false
    UIConfigStep1:
      type: object
      properties:
        mtO_Id:
          type: integer
          format: int64
        apptType_Cd:
          type: string
          nullable: true
        step1Config:
          type: string
          nullable: true
      additionalProperties: false
    ValidateVisitsRequest:
      type: object
      properties:
        visits:
          type: array
          items:
            $ref: '#/components/schemas/ClientVisit'
          nullable: true
        ruleStage:
          type: string
          nullable: true
      additionalProperties: false
    Visit:
      type: object
      properties:
        terminalId:
          type: integer
          format: int32
        terminalName:
          type: string
          nullable: true
        truckingCompanyId:
          type: integer
          format: int32
        truckingCompanyName:
          type: string
          nullable: true
        visitMoves:
          type: array
          items:
            $ref: '#/components/schemas/VisitMove'
          nullable: true
        truckVisit:
          $ref: '#/components/schemas/NextGenTruckVisit'
        isDisplayFeeCat:
          type: boolean
        claimFeesCat:
          type: array
          items:
            $ref: '#/components/schemas/ClaimFeesCat'
          nullable: true
        allowFeePayments:
          type: boolean
        feeItems:
          type: array
          items:
            $ref: '#/components/schemas/ApptTariffFee'
          nullable: true
        addToCartFeeCodes:
          type: array
          items:
            type: string
          nullable: true
      additionalProperties: false
    VisitMove:
      type: object
      properties:
        moveUIId:
          type: integer
          format: int32
        moveTypeCode:
          type: string
          nullable: true
        reference:
          type: string
          nullable: true
        containerNumber:
          type: string
          nullable: true
        chassis_Num:
          type: string
          nullable: true
        line:
          type: string
          nullable: true
        iso:
          type: string
          nullable: true
        archType:
          type: string
          nullable: true
        szTpHt:
          type: string
          nullable: true
        pin:
          type: string
          nullable: true
        genset:
          type: string
          nullable: true
        isOD:
          type: boolean
        chassisWeight:
          type: string
          nullable: true
        specialInstructions:
          type: string
          nullable: true
        isHaz:
          type: boolean
        isReefer:
          type: boolean
        ownChassis:
          type: boolean
        seal1_Num:
          type: string
          nullable: true
        seal2_Num:
          type: string
          nullable: true
        seal3_Num:
          type: string
          nullable: true
        seal4_Num:
          type: string
          nullable: true
        seal5_Num:
          type: string
          nullable: true
        seal6_Num:
          type: string
          nullable: true
        seal7_Num:
          type: string
          nullable: true
        seal8_Num:
          type: string
          nullable: true
        chassisType:
          type: string
          nullable: true
      additionalProperties: false
