openapi: 3.0.1
info:
  title: CounselLink API
  version: 1.0.0
externalDocs:
  description: CounselLink API Documentation
  url: https://clapi.zendesk.com/hc/en-us
tags:
- name: Budgets
  description: The Budgets API is used to retrieve budget details
- name: Invoice Charge
  description: The Invoice Charge API is used for operations on an invoice charge
- name: Client
  description: The Client API is used for operations on clients
- name: Document
  description: "The Document API is used to attach a document or URL to a specific\
    \ matter, invoice or simply uploaded into CounselLink for reference"
- name: Invoice
  description: The Invoice API is used for operations on an invoice
- name: Invoices
  description: The Invoices API is an interface used to retrieve data associated with
    invoices.
- name: Law Firm
  description: The Law Firm API is use to retrieve law firm specific details
- name: Law Firm Office
  description: The Law Firm Office API is used to access law firm office data
- name: Matter
  description: The Matter API is used for operations on a matter
- name: Matters
  description: The Matters API is used to retrieve matters
- name: UCDF
  description: The UCDF API is used for operations on User Customizable Data Field
    (UCDF)
- name: Work Intake
  description: The Work Intake API is used to create new work intakes and update existing
    intakes
paths:
  /budgets/events:
    get:
      tags:
      - Budgets
      summary: Returns all budget events
      description: Returns a paginated list of budget events.
      operationId: getBudgetEvents
      parameters:
      - name: divisionName
        in: query
        description: Division name
        schema:
          maxLength: 255
          type: string
        example: West Division
      - name: startDate
        in: query
        description: Start date for the event search in ISO 8601 format.
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      - name: endDate
        in: query
        description: End date for the event search in ISO 8601 format.
        schema:
          type: string
          format: date-time
        example: '''2022-05-30T19:08:21.916Z'''
      - name: size
        in: query
        description: "Number of events to return. Default and maximum is 200. If size\
          \ is specified as 0, it will be treated as though none is set "
        schema:
          maximum: 200
          minimum: 0
          type: integer
          format: int32
        example: 200
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetBudgetEventHistoryResponse'
              example:
                fetchedCount: 1
                entities:
                - budgetGuid: 16140163-5441-4707-BD05-25D4E88E8390
                  matterGuid: 76140163-5441-4707-BD05-25D4E88E8390
                  eventDate: '''2022-05-25T04:26:11Z'''
                  eventId: BUDCRE
                  eventDescription: Budget Created
                  eventGuid: 16140163-5441-4707-BD05-25D4E88E8390
                  fiscalYearGuid: 55EFE674-0773-4E6F-91E4-EF7C260B3BF7
                  userRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                dateRangeCursorInfo:
                  startDate: '''2022-05-23T16:40:33Z'''
                  endDate: '''2022-05-25T16:40:23Z'''
                  availableCount: 10
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DIVISION_DOES_NOT_EXIST_FOR_CLIENT
                  type: ERROR
                  field: divisionName
                  value: West Division
                  message: Division with name West Division does not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /budgets/{budgetGuid}/financials/{fiscalYearGuid}:
    get:
      tags:
      - Budgets
      summary: Returns all budget financial summary details by fiscal year
      description: Returns budget amounts and actuals for a budget within a single
        fiscal year/
      operationId: getBudgetFinancials
      parameters:
      - name: budgetGuid
        in: path
        description: Unique identifier for Budget. The field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 11D6189B-745F-4EA2-93F9-A7AE57DEC20D
      - name: fiscalYearGuid
        in: path
        description: Unique identifier for Fiscal Year. The field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: EC35014E-F5B8-470F-84EF-DF8138CB6701
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/BudgetFinancials'
              example:
                budgetGuid: 11D6189B-745F-4EA2-93F9-A7AD57DEC20D
                matterGuid: 38033e5e-5ecc-4204-83fd-9b6d9eb945aa
                currentAmount: 33000
                actualAmount: 10288.5
                percentage: 0.311773
                originalAmount: 0
                remainingAmount: 22711.5
                budgetPeriodAmounts:
                - startDate: '''2023-01-01'''
                  endDate: '''2024-12-31'''
                  periodNumber: 0
                  lawFirmOfficeGuid: 43e23251-df12-438d-9ca7-9b6d9eb945aa
                  budgetPeriodDetailType: Fees
                  originalAmount: 0
                  currentAmount: 8000
                  actualAmount: 4005
                  remainingAmount: 3995
                  status: APPROVED
                  statusDate: '''2023-05-21'''
                  commentType: PUBLIC
                  comment: Comment for Example
                  keyMatterAssumptions: Matter Assumption for this example
                  lawFirmOfficeStatus: APPROVED
                  budgetCode: Other fees
                  budgetCodeDescription: Charges for expenses
                  parentBillingCode: ZZ_OTHER_FEES
                  parentBillingCodeDescription: Charges for E110
                  timeframe: Oct-Dec
                  assumptions: Example Assumption
                  timekeeperId: "98765432012"
                  timekeeperName: Jane Examen
                  hours: "52.58"
                  rate: "87.89"
                  budgetPeriodAssumptions: Example Budget Period Assumption
                - startDate: '''2023-01-01'''
                  endDate: '''2024-12-31'''
                  periodNumber: 0
                  lawFirmOfficeGuid: 43e23251-df12-438d-9ca7-9b6d9eb945aa
                  budgetPeriodDetailType: Expenses
                  originalAmount: 0
                  currentAmount: 10000
                  actualAmount: 2705
                  remainingAmount: 7295
                  status: APPROVED
                  statusDate: '''2023-05-21'''
                  commentType: PUBLIC
                  comment: Comment for Another Example
                  keyMatterAssumptions: Matter Assumption for this example
                  lawFirmOfficeStatus: APPROVED
                  budgetCode: Other expenses
                  budgetCodeDescription: Charges for expenses
                  parentBillingCode: ZZ_OTHER_EXPENSES
                  parentBillingCodeDescription: Charges for E119
                  timeframe: Jan-Oct
                  assumptions: Another Example Assumption
                  timekeeperId: "11986543782"
                  timekeeperName: John Examen
                  hours: "72.58"
                  rate: "67.89"
                  budgetPeriodAssumptions: Example Budget Period Assumption
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /budgets/templates:
    get:
      tags:
      - Budgets
      summary: Returns all budget templates
      description: Returns all the available budget templates
      operationId: getBudgetTemplates
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/BudgetTemplateResponse'
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /invoice/charge/adjustment/{chargeAdjustmentRef}/history:
    get:
      tags:
      - Invoice Charge
      summary: Returns charge level adjustment history
      description: Returns charge level adjustment history
      operationId: getChargeAdjustmentHistory
      parameters:
      - name: chargeAdjustmentRef
        in: path
        description: Charge Adjustment Reference
        required: true
        schema:
          type: string
        example: c0tGSTM5N2lCdFpHMThGbUtrN3VJZz09
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ChargeAdjHistoryResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: Field name
                  value: Field value
                  message: Reference Field value does not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVALID_REFERENCE
                  type: ERROR
                  field: Field name
                  value: Field value
                  message: Reference is not valid
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/charge/{chargeRef}/tax:
    get:
      tags:
      - Invoice Charge
      summary: Returns charge level tax
      description: Returns charge level tax
      operationId: getChargeTax
      parameters:
      - name: chargeRef
        in: path
        description: Charge Reference Number
        required: true
        schema:
          type: string
        example: eFlJVHNrcEJkTm1jZS92TGV0SnprQT09
      - name: applyRounding
        in: query
        description: Flag to indicate whether rounding should be applied
        schema:
          type: boolean
        example: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/InvoiceChargeTaxResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: Field name
                  value: Field value
                  message: Reference Field value does not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVALID_REFERENCE
                  type: ERROR
                  field: Field name
                  value: Field value
                  message: Reference is not valid
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/charge/{chargeRef}/taxGroupItems:
    get:
      tags:
      - Invoice Charge
      summary: Returns charge level tax group items
      description: Returns charge level tax group items
      operationId: getChargeTaxGroupItems
      parameters:
      - name: chargeRef
        in: path
        description: Charge Reference
        required: true
        schema:
          type: string
        example: eFlJVHNrcEJkTm1jZS92TGV0SnprQT09
      - name: applyRounding
        in: query
        description: Flag to indicate whether rounding should be applied
        schema:
          type: boolean
        example: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ChargeTaxResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: Field name
                  value: Field value
                  message: Reference Field value does not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVALID_REFERENCE
                  type: ERROR
                  field: Field name
                  value: Field value
                  message: Reference is not valid
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/allocation-contact:
    put:
      tags:
      - Client
      summary: Updates an allocation contact
      description: "Updates an existing allocation contact<p><b>Note: </b></p><ul\
        \ type=\"square\"><li> Below fields are no longer needed for POST/PUT but\
        \ exists on schema for backward compatibility<ul type=\"circle\"><li>allocationLimit,\
        \ wastingLimit, insuredIndemnityPaid, insuredExpensePaid, excludeInsuredIndemnityPaidFromLimit,\
        \ clientIndemnityPaid, clientExpensePaid, excludeCorporateIndemnityPaidFromLimit,\
        \ excludeInsuredIndemnityPaidFromLimit</li></ul></ul>"
      operationId: updateAllocationContact
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AllocationContact_UpdateAllocationContact'
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/AllocationContact_UpdateAllocationContact'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientContactAllocationResponse_UpdateAllocationContact'
              example:
                action: UPDATED
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ClientContactAllocationResponse_UpdateAllocationContact'
              example:
                action: UPDATED
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError_UpdateAllocationContact'
              example:
                messages:
                - code: ENTITY_NOT_FOUND
                  type: ERROR
                  field: id
                  value: "1021"
                  message: Allocation contact with id 1021 not found.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError_UpdateAllocationContact'
              example:
                messages:
                - code: ENTITY_NOT_FOUND
                  type: ERROR
                  field: id
                  value: "1021"
                  message: Allocation contact with id 1021 not found.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError_UpdateAllocationContact'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: allocationLimit
                  value: "12.59"
                  message: Allocation limit amount should be 0 for a non shared allocation
                    contact
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError_UpdateAllocationContact'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: allocationLimit
                  value: "12.59"
                  message: Allocation limit amount should be 0 for a non shared allocation
                    contact
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError_UpdateAllocationContact'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_UpdateAllocationContact'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo_UpdateAllocationContact'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo_UpdateAllocationContact'
    post:
      tags:
      - Client
      summary: Creates an allocation contact
      description: "Creates a new allocation contact <p><b>Note: </b></p><ul type=\"\
        square\"><li> Below fields are no longer needed for POST/PUT but exists on\
        \ schema for backward compatibility<ul type=\"circle\"><li>allocationLimit,\
        \ wastingLimit, insuredIndemnityPaid, insuredExpensePaid, excludeInsuredIndemnityPaidFromLimit,\
        \ clientIndemnityPaid, clientExpensePaid, excludeCorporateIndemnityPaidFromLimit,\
        \ excludeInsuredIndemnityPaidFromLimit</li></ul></ul>"
      operationId: createAllocationContact
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AllocationContact'
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/AllocationContact'
        required: true
      responses:
        "201":
          description: Created. Returns Allocation Contact ID
          content:
            application/json:
              schema:
                type: string
              example: "1234567"
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: string
              example: "1234567"
        "409":
          description: Duplicate Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE_ENTITY
                  type: ERROR
                  field: allocationContactId
                  value: Facility-Group A-Section 3-1245
                  message: Active allocation contact with given allocation contact
                    id already exists.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE_ENTITY
                  type: ERROR
                  field: allocationContactId
                  value: Facility-Group A-Section 3-1245
                  message: Active allocation contact with given allocation contact
                    id already exists.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: allocationLimit
                  value: "12.59"
                  message: Allocation limit amount should be 0 for a non shared allocation
                    contact
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: allocationLimit
                  value: "12.59"
                  message: Allocation limit amount should be 0 for a non shared allocation
                    contact
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/client-contact:
    get:
      tags:
      - Client
      summary: Returns a client contact
      description: Returns information about a contact for the client
      operationId: getContact
      parameters:
      - name: searchFilter
        in: query
        description: Field to filter by
        required: true
        schema:
          type: string
          enum:
          - RECORD_ID
          - CONTACT_ID
        example: CONTACT_ID
      - name: value
        in: query
        description: Value for the chosen searchFilter
        required: true
        schema:
          type: string
        example: 12345678
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GetContact'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GetContact'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: CONTACT_NOT_FOUND
                  type: ERROR
                  field: contactSearchValue
                  value: "530957"
                  message: Contact Id 530957 does not exist.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: CONTACT_NOT_FOUND
                  type: ERROR
                  field: contactSearchValue
                  value: "530957"
                  message: Contact Id 530957 does not exist.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: contactSearchValue
                  value: "1325133"
                  message: Invalid contact id
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: contactSearchValue
                  value: "1325133"
                  message: Invalid contact id
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    put:
      tags:
      - Client
      summary: Updates a client contact
      description: "Updates an existing contact for the client<p><b>Note: </b></p><ul\
        \ type=\"square\"><li>List of possible contact types can be retrieved using\
        \ the GET client/contact-types endpoint<li>'paymentCurrency' field is shown\
        \ on both example and schema, but is not needed </ul>"
      operationId: updateContact
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Contact'
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/Contact'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientResponse'
              example:
                action: UPDATED
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ClientResponse'
              example:
                action: UPDATED
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: id
                  value: "1325133"
                  message: Contact Id 1325133 does not exist.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: id
                  value: "1325133"
                  message: Contact Id 1325133 does not exist.
                action: NO_ACTION
        "409":
          description: Duplicate Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE ENTITY
                  type: ERROR
                  field: email
                  value: alex@gmail.com
                  message: contact already exist with this email address
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE ENTITY
                  type: ERROR
                  field: email
                  value: alex@gmail.com
                  message: contact already exist with this email address
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: country
                  value: UNITED
                  message: Invalid country code.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: country
                  value: UNITED
                  message: Invalid country code.
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Client
      summary: Creates a client contact
      description: "Creates a new contact for the client <p><b>Note: </b></p><ul type=\"\
        square\"><li>List of possible contact types can be retrieved using the GET\
        \ client/contact-types endpoint<li>'paymentCurrency' field is shown on both\
        \ example and schema, but is not needed </ul>"
      operationId: createContact
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Contact'
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/Contact'
        required: true
      responses:
        "201":
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientResponse'
              example:
                action: CREATED
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ClientResponse'
              example:
                action: CREATED
        "409":
          description: Duplicate Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE ENTITY
                  type: ERROR
                  field: email
                  value: alex@gmail.com
                  message: contact already exist with this email address
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE ENTITY
                  type: ERROR
                  field: email
                  value: alex@gmail.com
                  message: contact already exist with this email address
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: country
                  value: UNITED
                  message: Invalid country code.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: country
                  value: UNITED
                  message: Invalid country code.
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/allocation-contacts:
    get:
      tags:
      - Client
      summary: Returns all allocation contacts
      description: "Returns a paginated list of all active and inactive allocation\
        \ contacts<p><b>Note: </b></p><ul type=\"square\"><li>Query parameters 'pageNumber'\
        \ and 'pageSize' are provided as part of 'link' header in the response. <a\
        \ href= https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Pagination\
        \ target=\"_blank\">Link to documentation on Pagination</a></ul>"
      operationId: getAllocationContacts
      parameters:
      - name: status
        in: query
        description: Active or Inactive filter
        schema:
          type: string
          enum:
          - ACTIVE
          - INACTIVE
        example: ACTIVE
      - name: pageNumber
        in: query
        description: "Assigned numerical page identifier. By default, first page will\
          \ be returned"
        schema:
          maximum: 100
          minimum: 1
          type: integer
          format: int32
        example: 1
      - name: pageSize
        in: query
        description: Number of records per page. Default and maximum value is 20
        schema:
          maximum: 20
          minimum: 1
          type: integer
          format: int32
        example: 20
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GetAllocationContactResponse'
              example:
                totalCount: 1
                contacts:
                - id: 54
                  name: Client Suffix -1
                  allocationContactId: Test C/S 1 - 1
                  status: ACTIVE
                  currencyId: USD
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GetAllocationContactResponse'
              example:
                totalCount: 1
                contacts:
                - id: 54
                  name: Client Suffix -1
                  allocationContactId: Test C/S 1 - 1
                  status: ACTIVE
                  currencyId: USD
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/contact-types:
    get:
      tags:
      - Client
      summary: Returns all contact types
      description: Returns both active and inactive contact types
      operationId: getContactTypes
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GetContactType'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GetContactType'
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/client-contacts:
    get:
      tags:
      - Client
      summary: Returns all client contacts
      description: "Returns both active and inactive client contacts, filterable on\
        \ contact type and status"
      operationId: getContacts
      parameters:
      - name: status
        in: query
        description: 'Status search filter. No option selected is equivalent to ALL '
        schema:
          type: string
          enum:
          - ACTIVE
          - INACTIVE
          - ALL
      - name: contactTypeGuid
        in: query
        description: Unique identifier for Contact Type. This field is case sensitive
        schema:
          type: string
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: size
        in: query
        description: Number of contacts to be returned
        schema:
          maximum: 200
          minimum: 0
          type: integer
          format: int32
        example: 200
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Contact'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Contact'
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: contactTypeGuid
                  value: "12345"
                  message: Contact Type Guid does not exist
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: contactTypeGuid
                  value: "12345"
                  message: Contact Type Guid does not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/client-contacts/events:
    get:
      tags:
      - Client
      summary: Returns events on client contacts
      description: "Returns a paginated list of events for the contacts of a client\
        \ <p><b>Notes : </b></p><p>For all polling / Events endpoints, one month plus\
        \ the current time is added to the response of the query. As in this example,\
        \ if the start date entered is 2022-03-30T10:50:00Z, then the end date of\
        \ the returned response is 2022-04-30T10:50:00Z which equates to a one month\
        \ increase.</p><p>Therefore, the following scenarios may apply:</p><ul type=\"\
        square\"><li>For requests where the <strong><em>start date is less than one\
        \ month</em></strong>, all events up to the current date and time, minus ten\
        \ (10) seconds are returned (2022-04-30T10:49:50Z, where 2022-03-30T10:50:00Z\
        \ was used as the start date and time).</li><li>For requests where the <strong><em>start\
        \ date is greater than one month</em></strong>, all events from one month\
        \ back are returned with no 10-second delay (2022-04-30T10:50:00Z, where 2022-03-30T10:50:00Z\
        \ was used as the start date and time).</li></ul>"
      operationId: getContactsEvents
      parameters:
      - name: searchFilter
        in: query
        description: Field to filter by
        required: true
        schema:
          type: string
          enum:
          - CONTACT
          - CONTACT_GROUP
      - name: startDate
        in: query
        description: Start date for the contact event search in ISO 8601 format
        schema:
          type: string
          format: date-time
        example: '''2021-07-30T19:08:21.916Z'''
      - name: size
        in: query
        description: Number of events to return. Default and maximum value is 200
        schema:
          maximum: 200
          minimum: 0
          type: integer
          format: int32
        example: 200
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ClientEventResponse'
              example:
                fetchedCount: 2
                entities:
                - eventRef: SjF0bWlvdCs5Qzhpai8wenBOVU92Zz09
                  contactId: 19962624
                  eventDescription: Contact updated
                  eventDate: '''2022-02-16T13:06:15Z'''
                  userRef: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
                dateRangeCursorInfo:
                  startDate: '''2022-02-16T11:33:59Z'''
                  endDate: '''2022-02-16T18:29:39Z'''
                  availableCount: 2
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ClientEventResponse'
              example:
                fetchedCount: 2
                entities:
                - eventRef: SjF0bWlvdCs5Qzhpai8wenBOVU92Zz09
                  contactId: 19962624
                  eventDescription: Contact updated
                  eventDate: '''2022-02-16T13:06:15Z'''
                  userRef: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
                dateRangeCursorInfo:
                  startDate: '''2022-02-16T11:33:59Z'''
                  endDate: '''2022-02-16T18:29:39Z'''
                  availableCount: 2
        "422":
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: startDate
                  value: '''2099-02-14T20:46:30Z'''
                  message: start date cannot be a date in the future
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: startDate
                  value: '''2099-02-14T20:46:30Z'''
                  message: start date cannot be a date in the future
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/custom-data/{customEntityType}/{id}:
    get:
      tags:
      - Client
      summary: Returns all custom data information based on entity type and identifier
      description: Returns the list of custom data information based on a given entity
        type and identifier
      operationId: getCustomData
      parameters:
      - name: customEntityType
        in: path
        description: Custom Entity Type
        required: true
        schema:
          type: string
          enum:
          - ALLOCATION_CONTACT
        example: ALLOCATION_CONTACT
      - name: id
        in: path
        description: Entity ID of the selected entity type
        required: true
        schema:
          type: integer
          format: int64
        example: 23
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CustomData'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CustomData'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: ENTITY_NOT_FOUND
                  type: ERROR
                  field: id
                  value: "1111"
                  message: Allocation contact with id 1111 not found.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: ENTITY_NOT_FOUND
                  type: ERROR
                  field: id
                  value: "1111"
                  message: Allocation contact with id 1111 not found.
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /client/lawfirm/offices/{fieldName}/{vendorId}:
    get:
      tags:
      - Client
      summary: Returns all law firm offices based on vendor identifier
      description: "Returns the list of all law firm offices based on vendor identifier\
        \ <h3>Note:</h3><p>For customers with multiple vendor numbers or customized\
        \ needs regarding vendor identification, this endpoint can be used to pass\
        \ the identifying custom field name and value in order to obtain the CounselLink\
        \ law firm office identifier. This identifier can then be used to assign a\
        \ law firm office to a matter</p>"
      operationId: getLawFimOfficesByEDIName
      parameters:
      - name: fieldName
        in: path
        description: Inbound EDI Field Name. This field must be a law firm office
          custom data text field
        required: true
        schema:
          type: string
        example: VendorId
      - name: vendorId
        in: path
        description: Law Firm Office Vendor ID
        required: true
        schema:
          type: string
        example: 44
      responses:
        "200":
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LawFirmOffice'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LawFirmOffice'
        "404":
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Law Firm Office Not Found:
                  description: Law Firm Office Not Found
                  value:
                    messages:
                    - code: LAW_FIRM_OFFICE_NOT_FOUND
                      type: ERROR
                      field: lawFirmOfficeGuid
                      value: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                      message: Law Firm Office Not Found
                    action: NO_ACTION
                UCDF Field Not Found:
                  description: UCDF Field Not Found
                  value:
                    messages:
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: ERROR
                      field: fieldName
                      value: VendorId
                      message: UCDF not found for fieldname
                    action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Law Firm Office Not Found:
                  description: Law Firm Office Not Found
                  value:
                    messages:
                    - code: LAW_FIRM_OFFICE_NOT_FOUND
                      type: ERROR
                      field: lawFirmOfficeGuid
                      value: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                      message: Law Firm Office Not Found
                    action: NO_ACTION
                UCDF Field Not Found:
                  description: UCDF Field Not Found
                  value:
                    messages:
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: ERROR
                      field: fieldName
                      value: VendorId
                      message: UCDF not found for fieldname
                    action: NO_ACTION
        "409":
          description: Duplicate active Inbound EDI Name
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE_ENTITY
                  type: ERROR
                  field: fieldName
                  value: VendorID
                  message: Two or more custom fields have been found with the same
                    EDI Field Name. EDI Field Name must be unique for a given active
                    custom field.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: DUPLICATE_ENTITY
                  type: ERROR
                  field: fieldName
                  value: VendorID
                  message: Two or more custom fields have been found with the same
                    EDI Field Name. EDI Field Name must be unique for a given active
                    custom field.
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /document/{documentId}:
    get:
      tags:
      - Document
      summary: Returns the metadata for the specified document.
      description: "Returns the metadata for the specified document<p><b>Important!</b>\
        \  The \"EDI User\" profile must be configured with the 'Document Administrator',\
        \ 'Matter View Administrator', and 'Invoice Administrator' roles at the Corporate\
        \ level.  Please ensure your CounselLink user admin has set these roles.</p>"
      operationId: getDocument
      parameters:
      - name: documentId
        in: path
        description: Document Id
        required: true
        schema:
          maxLength: 11
          minLength: 1
          type: integer
          format: int64
          example: 1234567
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/Document'
        "404":
          description: Document does not exist.
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DOCUMENT_NOT_FOUND
                  type: ERROR
                  field: documentId
                  value: '''123456'''
                  message: Document does not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    delete:
      tags:
      - Document
      summary: Deletes the specified document.
      description: "Deletes the specified document.<p><b>Important!</b>  The \"EDI\
        \ User\" profile must be configured with the 'Document Administrator', 'Matter\
        \ View Administrator', and 'Invoice Administrator' roles at the Corporate\
        \ level.  Please ensure your CounselLink user admin has set these roles.</p>"
      operationId: deleteDocument
      parameters:
      - name: documentId
        in: path
        description: Document Id
        required: true
        schema:
          maxLength: 11
          minLength: 1
          type: integer
          format: int64
          example: 1234567
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
              example:
                action: DELETED
        "404":
          description: Document does not exist.
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DOCUMENT_NOT_FOUND
                  type: ERROR
                  field: documentId
                  value: '''123456'''
                  message: Document does not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Client does not have access to this document:
                  description: Client does not have access to this document
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: documentId
                      value: '''123456'''
                      message: Client does not have access to this document.
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /document/download/{documentId}:
    get:
      tags:
      - Document
      summary: Returns the specified document.
      description: "<p>Returns the specified document as an octet-stream.</p><p>Notes:</p><ul\
        \ type=\"square\"><li>When the response is 200, the content type will be \"\
        application/octet-stream;charset=UTF-8\".</li><li>When the response is <i><b>not</b></i>\
        \ 200, the content type will be \"application/vnd.cl.int.api.v1.0.0+json\"\
        .</li></ul><p><b>Important!</b>  The \"EDI User\" profile must be configured\
        \ with the 'Document Administrator', 'Matter View Administrator', and 'Invoice\
        \ Administrator' roles at the Corporate level.  Please ensure your CounselLink\
        \ user admin has set these roles.</p>"
      operationId: documentDownload
      parameters:
      - name: documentId
        in: path
        description: Document Id
        required: true
        schema:
          maxLength: 11
          minLength: 1
          type: integer
          format: int64
          example: 1234567
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: string
                format: binary
        "404":
          description: Document does not exist.
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Document does not exist:
                  description: Document does not exist
                  value:
                    messages:
                    - code: DOCUMENT_NOT_FOUND
                      type: ERROR
                      field: documentId
                      value: '''123456'''
                      message: Document does not exist
                    action: NO_ACTION
                Document is a URL, cannot download:
                  description: "Document is a URL, cannot download"
                  value:
                    messages:
                    - code: DOCUMENT_NOT_DOWNLOADABLE
                      type: ERROR
                      field: documentId
                      value: '''123456'''
                      message: 'Use the </document/115088> endpoint to get the metadata
                        for the document. '
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /document/uploadUrl:
    post:
      tags:
      - Document
      summary: Add a URL as a CounselLink document.
      description: "<p>Adds a URL as a CounselLink document to the following entity\
        \ types:</p><ul type=\"square\"><li>Entitytype = MATTER --> The document URL\
        \ is attached to the matter specified in the EntityGuid</li><li>Entitytype\
        \ = INVOICE --> The document URL is attached to the invoice specified in the\
        \ EntityGuid</li><li>Entitytype = CHARGE --> The document file is attached\
        \ to the charge specified by the charge reference ID on the invoice specified\
        \ in the EntityGuid</li><li>Entitytype = INTAKE --> The document file is attached\
        \ to the work intake specified in the EntityGuid</li><li>Entitytype = LAW_FIRM\
        \ --> The document file is attached to the Law Firm specified in the EntityGuid</li><li>Entitytype\
        \ = OTHER OR GUIDELINE_SUPPLEMENT --> The document URL is uploaded to CounselLink\
        \ as a reference and not attached to a matter or invoice.  The folder attribute\
        \ is also ignored</li></ul><p>Notes:</p><ul type=\"square\"><li>When the entityType\
        \ is specified as MATTER or INVOICE, then the entityGuid value is required.</li><li>When\
        \ the entityType is specified as CHARGE, then pass Invoice Guid in the entityGuid\
        \ value (invoice to which that charge belongs).</li><li>When the entityType\
        \ is specified as INTAKE, then the entityGuid value is required.</li><li>When\
        \ the entityType is specified as LAW_FIRM, then the entityGuid value is required.</li><li>When\
        \ the entityType is specified as OTHER OR GUIDELINE_SUPPLEMENT, then the entityGuid\
        \ and the folder values are ignored during posting.</li><li>fileName attribute\
        \ is ignored.  The url attribute is required</li><li>When a folder is specified,\
        \ it is a '/' delimited path to where the file should be loaded to.</li><li>To\
        \ specify a standard category, select a value for category other than NONE.</li><li>To\
        \ specify a custom category from the corporate profile Categories page, select\
        \ NONE for category and enter a valid value for categoryName.</li></ul><p><b>Important!</b>\
        \  The \"EDI User\" profile must be configured with the 'Document Administrator',\
        \ 'Matter View Administrator', and 'Invoice Administrator' roles at the Corporate\
        \ level.  Please ensure your CounselLink user admin has set these roles.</p>"
      operationId: documentUpload
      requestBody:
        description: Document URL to be uploaded
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/Document'
        required: true
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PostDocumentResponse'
        "404":
          description: Entity GUID does not exist
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Invoice with given guid does not exist:
                  description: Invoice with given guid does not exist
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      message: Invoice with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
                Matter with given guid does not exist:
                  description: Matter with given guid does not exist
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
                Law Firm with given guid does not exist:
                  description: Law Firm with given guid does not exist
                  value:
                    messages:
                    - code: LAW_FIRM_NOT_FOUND
                      type: ERROR
                      field: lawFirmGuid
                      value: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                      message: Law Firm with guid 67612a08-a0a1-4096-9b71-11ec22b2be0e
                        does not exist
                    action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Field is required:
                  description: Field is required
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: url
                      message: url is required
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /document/upload:
    post:
      tags:
      - Document
      summary: Add a file as a CounselLink document.
      description: "<p>Adds a file as a CounselLink document to the following entity\
        \ types:</p><ul type=\"square\"><li>Entitytype = MATTER --> The document file\
        \ is attached to the matter specified in the EntityGuid</li><li>Entitytype\
        \ = INVOICE --> The document file is attached to the invoice specified in\
        \ the EntityGuid</li><li>Entitytype = CHARGE --> The document file is attached\
        \ to the charge specified by the charge reference ID on the invoice specified\
        \ in the EntityGuid</li><li>Entitytype = INTAKE --> The document file is attached\
        \ to the work intake specified in the EntityGuid</li><li>Entitytype = LAW_FIRM\
        \ --> The document file is attached to the Law Firm specified in the EntityGuid</li><li>Entitytype\
        \ = OTHER OR GUIDELINE_SUPPLEMENT --> The document file is uploaded to CounselLink\
        \ as a reference and not attached to a matter or invoice.  The folder attribute\
        \ is also ignored</li></ul><p>Notes:</p><ul type=\"square\"><li>When the entityType\
        \ is specified as MATTER or INVOICE or CHARGE, then the entityGuid value is\
        \ required.</li><li>When the entityType is specified as CHARGE, then pass\
        \ Invoice Guid in the entityGuid value (invoice to which that charge belongs).</li><li>When\
        \ the entityType is specified as INTAKE, then the entityGuid value is required.</li><li>When\
        \ the entityType is specified as LAW_FIRM, then the entityGuid value is required.</li><li>When\
        \ the entityType is specified as OTHER OR GUIDELINE_SUPPLEMENT, then the entityGuid\
        \ and the folder values are ignored during posting.</li><li>fileName and file\
        \ attributes are required.  The url attribute will be ignored</li><li>The\
        \ attachment is limited to 100MB</li><li>The attachment is not to be loaded\
        \ twice except in separate folders</li><li>When a folder is specified, it\
        \ is a '/' delimited path to where the file should be loaded.</li><li>Remove\
        \ the default Content-Type header and then create a custom Content-Type header\
        \ \"multipart/form-data; boundary=\" + &lt;YourBoundaryDelimiter&gt;.</li><li>When\
        \ generating the string to sign for HMAC, include this new content-type.</li><li>To\
        \ specify a standard category, select a value for category other than NONE.</li><li>To\
        \ specify a custom category from the corporate profile Categories page, select\
        \ NONE for category and enter a valid value for categoryName.</li></ul><p><b>Important!</b>\
        \  The \"EDI User\" profile must be configured with the 'Document Administrator',\
        \ 'Matter View Administrator', and 'Invoice Administrator' roles at the Corporate\
        \ level.  Please ensure your CounselLink user admin has set these roles.</p>"
      operationId: documentUpload_1
      requestBody:
        description: Document To Be Uploaded
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/DocumentUploadForm'
        required: true
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PostDocumentResponse'
        "404":
          description: Entity GUID does not exist
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Invoice with given guid does not exist:
                  description: Invoice with given guid does not exist
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      message: Invoice with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
                Matter with given guid does not exist:
                  description: Matter with given guid does not exist
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
                Law Firm with given guid does not exist:
                  description: Law Firm with given guid does not exist
                  value:
                    messages:
                    - code: LAW_FIRM_NOT_FOUND
                      type: ERROR
                      field: lawFirmGuid
                      value: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                      message: Law Firm with guid 67612a08-a0a1-4096-9b71-11ec22b2be0e
                        does not exist
                    action: NO_ACTION
                Intake with given guid does not exist:
                  description: Intake with given guid does not exist
                  value:
                    messages:
                    - code: INTAKE_GUID_NOT_FOUND
                      type: ERROR
                      field: intakeGuid
                      message: Intake with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Field is required:
                  description: Field is required
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: url
                      message: url is required
                    action: NO_ACTION
                Unsupported File Type:
                  description: Unsupported File Type
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: fileName
                      value: exe
                      message: Unsupported File Type
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /document:
    put:
      tags:
      - Document
      summary: Updates the metadata for the specified document.
      description: "<p>Updates the metadata for the specified CounselLink document:</p><ul><li>When\
        \ the entityType is specified as MATTER or INVOICE, then the entityGuid value\
        \ is required.</li><li>When the entityType is specified as OTHER or GUIDELINE_SUPPLEMENT,\
        \ then the entityGuid and the folder values are ignored.</li><li>sharedIndicator\
        \ and accessLevel fields should be selected only When Enable Document Sharing\
        \ config is OFF.</li><li>Specify documentSharing field only when Enable Document\
        \ Sharing config is ON. It should not be selected when that config is OFF.</li><li>url\
        \ and fileName attributes will be ignored.</li><li>To specify a standard category,\
        \ select a value for category other than NONE.</li><li>To specify a custom\
        \ category from the corporate profile Categories page, select NONE for category\
        \ and enter a valid value for categoryName.</li></ul><p><b>Important!</b>\
        \  The \"EDI User\" profile must be configured with the 'Document Administrator',\
        \ 'Matter View Administrator', and 'Invoice Administrator' roles at the Corporate\
        \ level.  Please ensure your CounselLink user admin has set these roles.</p>"
      operationId: updateDocument
      requestBody:
        description: The Document to update
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/Document'
        required: true
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PutDocumentResponse'
              example:
                action: UPDATED
                documentId: 128453
        "404":
          description: Entity GUID does not exist
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Invoice with given guid does not exist:
                  description: Invoice with given guid does not exist
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      message: Invoice with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
                Matter with given guid does not exist:
                  description: Matter with given guid does not exist
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
                Intake with given guid does not exist:
                  description: Intake with given guid does not exist
                  value:
                    messages:
                    - code: INTAKE_GUID_NOT_FOUND
                      type: ERROR
                      field: intakeGuid
                      message: Intake with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Field is required:
                  description: Field is required
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: url
                      message: url is required
                    action: NO_ACTION
                Unsupported File Type:
                  description: Unsupported File Type
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: fileName
                      value: exe
                      message: Unsupported File Type
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/integration/ack/{status}:
    post:
      tags:
      - Invoice
      summary: Add integration event to an invoice
      description: Add integration success or failure event to an invoice
      operationId: acknowledgeInvoiceIntegration
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: status
        in: path
        description: Invoice Status
        required: true
        schema:
          type: string
          enum:
          - SUCCESS
          - FAILURE
      - name: message
        in: query
        description: Invoice event message
        schema:
          type: string
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              example: {}
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice does not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}:
    get:
      tags:
      - Invoice
      summary: Returns invoice
      description: "Returns invoice overview information based on the GUID.<p><b>Notes\
        \ : </b></p><ul type=\"square\"><li>If the invoice has any approvals (regardless\
        \ of current state/ workflow status), then the netTotal value is Approved\
        \ to date. If the invoice doesn't have any approvals, then the netTotal value\
        \ is Net to pay.</li><li>If the invoice has any approvals (regardless of current\
        \ state/ workflow status), then the netExpenses value is Approved expenses\
        \ + expense prompt pay. If the invoice doesn't have any approvals, then the\
        \ netExpenses value is Expense recommended amount + expense prompt pay.</li><li>If\
        \ the invoice has any approvals (regardless of current state/ workflow status),\
        \ then the netFees value is Approved fees + fee prompt pay. If the invoice\
        \ doesn't have approvals, then the netFees value is Fee recommended amount\
        \ + fee prompt pay.</li><li>vendorId field must be configured at the Law Firm\
        \ Office level, with edifieldNames set to \"VendorID\".</li><li>This field\
        \ must be configured at the Law Firm Office level, with edifieldNames set\
        \ to \"VendorLocation\".</li><li>This field must be configured at the Law\
        \ Firm Office level, with edifieldNames set to \"FastTrackVendorID\".</li>"
      operationId: getByGuid
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: applyRounding
        in: query
        schema:
          type: boolean
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceByGuidResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceByGuidValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA
                  value: Invoice does not exist
        "500":
          description: Internal server error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/charges:
    get:
      tags:
      - Invoice
      summary: Returns invoice charges
      description: Returns invoice charges
      operationId: getCharges
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: size
        in: query
        description: Number of charges to be returned. Default and maximum is 20
        schema:
          type: integer
          format: int32
        example: 20
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      - name: applyRounding
        in: query
        description: "Flag to indicate whether to apply rounding to the amounts. If\
          \ omitted or ‘true’, values will be sent with rounding applied as they appear\
          \ in CounselLink."
        schema:
          type: boolean
          enum:
          - true
          - false
        example: true
      - name: includeChargeHistory
        in: query
        description: Flag to indicate whether to return charge history
        schema:
          type: boolean
          enum:
          - true
          - false
        example: true
      - name: includeChargeAdjustments
        in: query
        description: Flag to indicate whether to return charge adjustments
        schema:
          type: boolean
          enum:
          - true
          - false
        example: true
      - name: includeAppealNotes
        in: query
        description: Flag to indicate whether to return appeal notes. This parameter
          is effective only if 'includeChargeAdjustments' flag is set to true.
        schema:
          type: boolean
          enum:
          - true
          - false
        example: true
      - name: includeTaxes
        in: query
        description: Flag to indicate whether to return tax on charges
        schema:
          type: boolean
          enum:
          - true
          - false
        example: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceChargesResponse'
              example:
                charges:
                - chargeId: 5114551
                  chargeRef: ZnY4anpaSUhxdTJCb2w0b0NmbWUrZz09
                  chargeNumber: 2
                  date: '''2022-05-25T04:26:11Z'''
                  description: Case Administration
                  type: FEE
                  timekeeperUserRef: MnMxYXB4TUlZRVJYZExwdTFHZFZBdz09
                  timekeeperLevelDesc: Other
                  taskCode: B110
                  activityCode: A101
                  units: 10
                  rate: 10
                  vendorAdjustment: 10
                  lineItemAdjustment: -19
                  invoiceAdjustment: 0
                  taxAmount: 10
                  netAmount: 110
                  grossAmount: 100
                  currentUnits: 11
                  currentRate: 10
                  history:
                  - chargeAdjustmentRef: L1Q4RFpLNXFDNUtiNFo5dklITHdvUT09
                    eventTimeStamp: '''2022-05-25T04:26:11Z'''
                    eventDesc: Adjustment added -$19.00 USD
                    eventComment: G41 - Internet Charges
                    userRef: QUR0dWM4YWtQcUxpODFMVWp0UndMUT09
                  adjustments:
                  - adjustmentCalculation: pay
                    adjustmentStatus: Charge Adjustment
                    actionType: add
                    adjustmentOn: units_and_unit_price
                    date: '''2022-05-25T04:26:11Z'''
                    initialUnits: 10
                    initialRate: 10
                    currentUnits: 9
                    currentRate: 9
                    amount: -19
                    userRef: QUR0dWM4YWtQcUxpODFMVWp0UndMUT09
                    appealStatus: Accepting appeal
                    appealUser: L1Q4RFpLNXFDNUtiNFo5dklITHdvUT09
                    adjustmentRef: L1Q4RFpLNXFDNUtiNFo5dklITHdvUT09
                    ruleCode: G41
                    ruleName: Internet Charges
                    description: Law firm charges for internet service or connectivity.
                    appealNotes:
                    - date: '''2022-05-25T04:26:11Z'''
                      typeDescription: Law Firm Acquiesced the Charge Adjustment
                      userRef: QUR0dWM4YWtQcUxpODFMVWp0UndMUT09
                      note: Accepting appeal
                      noteRef: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
                      eventId: CGNTIC
                  tax:
                    type: Sales Tax
                    amount: 4.05
                    rate: 0.05
                    withholdTax: false
                    taxGroupItems: ACTTAX + HST
                links:
                - uri: /user/16140163-5441-4707-BD05-25D4E88E8390
                  rel: user
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceByGuidValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA does
                    not exist
                  message: Invoice with guid does not exist for the client
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/allocations:
    get:
      tags:
      - Invoice
      summary: Returns allocation amounts for an invoice
      description: "Returns the allocation amounts for an invoice based on current\
        \ allocations, regardless of allocations stamped on the invoice when approved."
      operationId: getInvoiceAllocationAmounts
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/InvoiceAllocationResponse'
              example:
                fetchedCount: 2
                entities:
                - allocationContactId: "10001"
                  allocationContactName: ContactName1
                  allocationNetToPayTotal: 15
                  allocationNetToPayFees: 0
                  allocationNetToPayExpenses: 15
                  glCode: "10001"
                - allocationContactId: "10002"
                  allocationContactName: ContactName2
                  allocationNetToPayTotal: 15
                  allocationNetToPayFees: 0
                  allocationNetToPayExpenses: 15
                  glCode: "10002"
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice with guid 67612a08-a0a1-4096-9b71-11ec22b2be0e does
                    not exist
                action: NO_ACTION
        "412":
          description: Invoice not in the correct status
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceValidationError'
              example:
                messages:
                - code: PENDING_INVOICE_ERROR
                  type: ERROR
                  field: invoiceGuid
                  value: 328B0B02-F52D-422F-8805-1D244F352AD1
                  message: Invoice is currently pending and thus not supported within
                    this API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/approvals:
    get:
      tags:
      - Invoice
      summary: Returns invoice approvals
      description: Returns invoice approvals
      operationId: getInvoiceApprovals
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceApprovalByGuidResponse'
              example:
                fetchedCount: 1
                entities:
                - netToPayTotal: 550
                  netToPayFees: 500
                  netToPayExpenses: 50
                  eventRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  date: '''2022-05-25T04:26:11Z'''
                  approvalNumber: 1
                  allocations:
                    allocationContactId: "50321"
                    allocationContactName: John Smith
                    allocationNetToPayTotal: 403.75
                    allocationNetToPayFees: 403.75
                    allocationNetToPayExpenses: 170
                    glCode: "10986"
                  links:
                  - uri: /invoice/16140163-5441-4707-BD05-25D4E88E8390
                    rel: invoice
                lawFirmInvoiceId: BBC02F62-0661-4609-9055-08291B357701
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceByGuidValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  message: Invoice with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                    does not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/documents:
    get:
      tags:
      - Invoice
      summary: Returns the list of document IDs on an invoice
      description: Returns the list of document IDs on an invoice<ul type="square"><li>Default
        behavior returns the list of document IDs attached at the invoice level.</li><li>'documentLevel
        = INVOICE' returns the list of document IDs attached at the invoice level.</li><li>'documentLevel
        = INVOICE_CHARGE' returns the list of document IDs attached to charges on
        the invoice.</li><li>'documentLevel = ALL' returns the list of all document
        IDs attached at the invoice and charge level.</li></ul>
      operationId: getInvoiceDocuments
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: documentLevel
        in: query
        description: "Documents returned at the Invoice level, Charge level or both"
        schema:
          type: array
          items:
            type: string
            enum:
            - INVOICE
            - INVOICE_CHARGE
            - ALL
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  type: integer
                  format: int64
              example:
              - 113576
              - 113577
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceByGuidValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice with guid 67612a08-a0a1-4096-9b71-11ec22b2be0e does
                    not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: startdate
                  value: '''2099-07-30T19:08:21.916Z'''
                  message: start date cannot be a date in the future
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/adjustments:
    get:
      tags:
      - Invoice
      summary: Returns invoice level adjustments
      description: Returns invoice level adjustments
      operationId: getInvoiceLevelAdjustments
      parameters:
      - name: invoiceGuid
        in: path
        description: Invoice GUID
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceAdjustmentResponse'
              example:
                adjustments:
                - description: This is test adjustment
                  chargeType: FEE
                  adjustmentType: FIXED_AMOUNT
                  percentage: 0
                  amount: 5
                  userRef: UGdCZXF5V1dreVlEOVJmckFBSGV0dz09
                  adjustmentRef: cFdsOHNZTDBHS2UzRXlKMndVdrxDZz09
                links:
                - uri: /user/RTU3d1ZCaUVQak1INnJDR3BOcXFhZz09
                  rel: user
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceByGuidValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA does
                    not exist
                  message: Invoice with guid does not exist for the client
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/notes:
    get:
      tags:
      - Invoice
      summary: Returns Invoice Notes
      description: Returns a list of invoice notes.
      operationId: getInvoiceNotes
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/InvoiceNotesResponse'
              example:
                notes:
                - date: '''2024-01-28T12:27:23Z'''
                  type: Internal Note
                  userRef: RTU3d1ZCaUVQak1INnJDR3BOcXFhZz09
                  note: new note
                  noteRef: Y1RLaUd0OUowa005K1NHSTBYT0ZiQT09
                links:
                - uri: /user/RTU3d1ZCaUVQak1INnJDR3BOcXFhZz09
                  rel: user
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice with guid 67612a08-a0a1-4096-9b71-11ec22b2be0e does
                    not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/submission-type:
    get:
      tags:
      - Invoice
      summary: Returns submission type for the invoice
      description: Indicates if the invoice was sent as paper or uploaded electronically
        by the law firm.
      operationId: getInvoiceSubmissionType
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceSubmissionTypeResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice does not exist
                  message: Invoice with guid does not exist for the client
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /invoice/{invoiceGuid}/workflow-events:
    get:
      tags:
      - Invoice
      summary: Returns workflow events on an invoice including the workflow steps
        and selected workflow actions.
      description: Returns workflow events on an invoice including the workflow steps
        and selected workflow actions.
      operationId: getInvoiceWorkflowEvents
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: startDate
        in: query
        description: Start date for the event search in ISO 8601 format.
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceWorkflowEventsResponse'
              example:
                workflowEventList:
                - eventRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  taskName: nonBpelWorkflowBegin
                  eventComment: Re-starting Invoice Workflow
                  eventDate: '''2022-05-25T04:26:11Z'''
                  userRef: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                - eventRef: L2lHSlV1MENwVUdXTC93UWNYWFlNUT09
                  taskName: Client Review Level 1
                  eventComment: Activity -> Begin task completed
                  eventDate: '''2022-08-25T04:26:11Z'''
                  userRef: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                links:
                - uri: /user/c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                  rel: user
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  message: Invoice with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                    does not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/invoice-number/{lawFirmInvoiceId}:
    get:
      tags:
      - Invoice
      summary: Returns invoices for a law firm Invoice ID
      description: Returns invoices for a law firm Invoice ID
      operationId: getInvoicesForInvoiceNumber
      parameters:
      - name: lawFirmInvoiceId
        in: path
        description: Law Firm Invoice ID
        required: true
        schema:
          type: string
        example: 298231
      - name: vendorId
        in: query
        description: "Vendor ID. This field must be configured at the Law Firm Office\
          \ level, with EDIFieldNames set to 'VendorID'"
        schema:
          type: string
        example: 44
      - name: vendorLocation
        in: query
        description: "Vendor Location. This field must be configured at the Law Firm\
          \ Office level, with EDIFieldNames set to 'VendorLocation'"
        schema:
          type: string
        example: Berlin
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoicesOverviewsResponse'
              example:
                fetchedCount: 1
                entities:
                - invoiceId: 298231
                  invoiceGuid: 666fe302-5ace-4506-b8b3-9b6d9eb945aa
                  currency: USD
                  feeStructureId: 2850
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceNumber
                  value: Invoice does not exist
                  message: Invoice with guid does not exist for the client
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/law-firm-office:
    get:
      tags:
      - Invoice
      summary: Returns Law firm office for the invoice
      description: Returns Law firm office Information for the invoice
      operationId: getLawFirmOffice
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceLFOResponse'
              example:
                lawFirmOffice:
                  id: 519343
                  name: Test LFO
                  guid: 7C4243B7-495A-447E-8BFE-E169B5322FEC0
                  lawFirmGuid: 3942E40E-1DD0-44F5-BE6B-9D325511BD0D
                  taxPayerId: "123456"
                  address1: Address1
                  address2: 'Address2 '
                  address3: 'Address3 '
                  city: Raleigh
                  state: NC
                  zip: "27606"
                  country: UNITED STATES
                  phoneNumber: 916-777-777
                  phoneExtension: '123 '
                  faxNumber: '999-999-9999 '
                  remitToAddress1: Address1
                  remitToAddress2: 'Address2 '
                  remitToAddress3: 'Address3 '
                  remitToCity: Raleigh
                  remitToState: NC
                  remitToZip: "27606"
                  remitToCountry: UNITED STATES
                  remitToPhoneNumber: 916-777-7777
                  remitToPhoneExtension: '123 '
                  remitToFaxNumber: '999-999-9999 '
                links:
                - uri: /ucdf/LAWFIRMOFFICE/8CFT3ER-496B-447E-8BFE-E169B5AHGFEC0/TEXT/VendorID
                  rel: get-vendor-id
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice does not exist
                  message: Invoice with guid does not exist for the client
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/payments:
    get:
      tags:
      - Invoice
      summary: Returns invoice payments
      description: Returns invoice payments
      operationId: getPayments
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PaymentExtractSuccessResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  value: Invoice does not exist
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/taxes:
    get:
      tags:
      - Invoice
      summary: Returns the invoice tax summary
      description: Returns the invoice tax summary
      operationId: getTaxSummary
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceTaxByGuidResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceTaxByGuidValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND
                  type: ERROR
                  field: invoiceGuid
                  value: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/workflow-event/{eventRef}:
    get:
      tags:
      - Invoice
      summary: Returns a specific workflow event on an invoice
      description: Returns a specific workflow event on an invoice
      operationId: getWorkflowEvent
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: eventRef
        in: path
        description: Unique reference number for the workflow event
        required: true
        schema:
          maxLength: 32
          minLength: 32
          type: string
          format: uuid
        example: L2lHSlV1MENwVUdXTC93UWNYWFlNUT0
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetWorkflowEventResponse'
              example:
                workflowEvent:
                  eventRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  taskName: nonBpelWorkflowBegin
                  eventComment: Re-starting Invoice Workflow
                  eventDate: '''2022-05-25T04:26:11Z'''
                  userRef: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceValidationError'
              examples:
                Invoice with given guid does not exist:
                  description: Invoice with given guid does not exist
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      message: Invoice with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                        does not exist
                    action: NO_ACTION
                Event with given eventRef does not exist:
                  description: Event with given eventRef does not exist
                  value:
                    messages:
                    - code: EVENT_NOT_FOUND
                      type: ERROR
                      field: eventRef
                      message: Event Ref L2lHSlV1MENwVUdXTC93UWNYWFlNUT0 does not
                        exist
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoice/{invoiceGuid}/history:
    get:
      tags:
      - Invoice
      summary: Returns history of events on an invoice
      description: Returns history of events on the invoice
      operationId: invoiceEventHistory
      parameters:
      - name: invoiceGuid
        in: path
        description: Unique identifier for the invoice. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: startDate
        in: query
        description: "Start date for the fetching events, ISO8601 format."
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceHistoryResponse'
              example:
                invoiceEventHistoryList:
                - eventRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  eventDescription: Invoice created on
                  eventDate: '''2022-05-25T04:26:11Z'''
                  comment: Rules started for 321131
                  userRef: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                - eventRef: C1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  eventDescription: Invoice rules started
                  eventDate: '''2022-06-25T04:26:11Z'''
                  comment: Rules completed for 321131
                  userRef: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                links:
                - uri: /user/c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                  rel: user
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceByGuidValidationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: invoiceGuid
                  message: Invoice with guid D6D43FDA-77C0-49EF-9999-D48CC77FEDE2
                    does not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoices/events/deleted:
    get:
      tags:
      - Invoices
      summary: Returns a paginated list of deleted invoices that occurred since start
        date.
      description: "Returns a paginated list of deleted invoices that occurred since\
        \ start date.</p><p><b>Notes : </b></p><ul type=\"square\"><li> Invoices for\
        \ events deleted more than 90 days prior to the date of invoking this endpoint\
        \ will not be returned.  </li><li><b> Time Delays with Events Endpoints </b>\
        \ - For all Invoice polling/Events endpoints, one month plus the current time\
        \ is added to the response of the query. As in this example, if the start\
        \ date entered is 2022-10-30T10:50:00Z, then the end date of the returned\
        \ response is 2022-11-30T10:50:00Z which equates to a one month increase.\
        \ Therefore, the following scenarios may apply:</li><ul type=\"circle\"><li>\
        \ For requests where the start date is less than one month, all invoices up\
        \ to the current date and time, minus ten (10) seconds are returned (2022-11-30T10:49:50Z,\
        \ where 2022-10-30T10:50:00Z was used as the start date and time). </li><li>\
        \ For requests where the start date is greater than one month, all invoices\
        \ from one month back are returned, with no 10-second delay (2022-11-30T10:50:00Z,\
        \ where 2022-10-30T10:50:00Z was used as the start date and time). </li></ul></ul><p>Default\
        \ and maximum number of events per page is 200. If blank, 0 or greater than\
        \ 200, API will default to 200.</p>"
      operationId: deletedInvoices
      parameters:
      - name: startDate
        in: query
        description: The start date for fetching the events. DateTime is in ISO8601
          format. It cannot be a date in the future.
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      - name: size
        in: query
        description: "Maximum number of events to return per page. Default and maximum\
          \ number of events per page is 200. If blank, 0 or greater than 200, API\
          \ will default to 200."
        schema:
          maximum: 200
          minimum: 0
          type: integer
          format: int32
        example: 200
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      - name: divisionName
        in: query
        description: Name of the division
        schema:
          maxLength: 255
          type: string
        example: West Division
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetDeletedInvoicesEventsResponse'
              example:
                fetchedCount: 1
                entities:
                - invoiceGuid: 16140163-5441-4707-BD05-25D4E88E8390
                  eventDate: '''2022-05-25T04:26:11Z'''
                  userRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  clientOffice:
                    name: Sacramento Office
                    guid: 876552e5-f623-4dde-ac0d-9b6d9eb945aa
                    divisionName: North Division
                    divisionGuid: ec744af6-34b8-4a09-96e1-9b6d9eb945aa
                    roleType: CLIENT_OFFICE
                  links:
                  - uri: /invoice/16140163-5441-4707-BD05-25D4E88E8390
                    rel: invoice
                dateRangeCursorInfo:
                  startDate: '''2022-05-23T16:40:33Z'''
                  endDate: '''2022-05-25T16:40:23Z'''
                  availableCount: 101
        "404":
          description: Division Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DIVISION_DOES_NOT_EXIST_FOR_CLIENT
                  type: ERROR
                  field: divisionName
                  value: West Division
                  message: Division with name West Division does not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: startdate
                  value: '''2099-07-30T19:08:21.916Z'''
                  message: start date cannot be a date in the future
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoices/events:
    get:
      tags:
      - Invoices
      summary: Returns a paginated list of invoice events that occurred since start
        date.
      description: "<p>Returns a paginated list of invoice events that occurred since\
        \ start date.</p><p><b>Notes : </b></p><ul type=\"square\"><li><b> Time Delays\
        \ with Events Endpoints </b> - For all Invoice polling/events endpoints, one\
        \ month plus the current time is added to the response of the query. <br>\
        \ As in this example, if the start date entered is 2022-10-30T10:50:00Z, then\
        \ the end date of the returned response is 2022-11-30T10:50:00Z which equates\
        \ to a one month increase. Therefore, the following scenarios may apply:</li><ul\
        \ type=\"circle\"><li> For requests where the start date is less than one\
        \ month, all invoices up to the current date and time, minus ten (10) seconds\
        \ are returned (2022-11-30T10:49:50Z, where 2022-10-30T10:50:00Z was used\
        \ as the start date and time) </li><li> For requests where the start date\
        \ is greater than one month, all invoices from one month back are returned,\
        \ with no 10-second delay (2022-11-30T10:50:00Z, where 2022-10-30T10:50:00Z\
        \ was used as the start date and time) </li></ul></ul><p>If invoices are not\
        \ being returned by this endpoint as expected, please contact your CounselLink\
        \ API Consultant or CounselLink Customer Care (customercare@lexisnexis.com)\
        \ to confirm that you are correctly configured to receive invoices via the\
        \ CounselLink Integration API.<p>Default and maximum number of events per\
        \ page is 500. If blank, 0 or greater than 500, API will default to 500."
      operationId: invoicesEvents
      parameters:
      - name: startDate
        in: query
        description: The start date for fetching the events. DateTime is in ISO8601
          format. It cannot be a date in the future.
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      - name: size
        in: query
        description: "Maximum number of events to return per page. Default and maximum\
          \ number of events per page is 500. If blank, 0 or greater than 500, API\
          \ will default to 500."
        schema:
          maximum: 500
          minimum: 0
          type: integer
          format: int32
        example: 500
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      - name: invoiceStatuses
        in: query
        description: Name of the event type
        schema:
          type: array
          items:
            type: string
            enum:
            - APPROVED
            - SENT
            - REJECTED
            - APPROVAL_REMOVED
            - RETRIGGERED
            - API_FAILURE
            - API_SUCCESS
            - CUSTOM_DATA_UPDATED
      - name: divisionName
        in: query
        description: Division name
        schema:
          maxLength: 255
          type: string
        example: West Division
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoicesEventsResponse'
              example:
                fetchedCount: 2
                entities:
                - invoiceGuid: 16140163-5441-4707-BD05-25D4E88E8390
                  eventDate: '''2022-05-25T04:26:11Z'''
                  eventRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  invoiceStatus: SENT
                  clientOffice:
                    name: Sacramento Office
                    guid: 876552e5-f623-4dde-ac0d-9b6d9eb945aa
                    divisionName: North Division
                    divisionGuid: ec744af6-34b8-4a09-96e1-9b6d9eb945aa
                    roleType: CLIENT_OFFICE
                  links:
                  - uri: /invoice/16140163-5441-4707-BD05-25D4E88E8390
                    rel: invoice
                - invoiceGuid: 16140163-5441-4707-BD05-25D4E88E8390
                  eventDate: '''2022-05-25T04:26:11Z'''
                  eventRef: S3FNN0tCWkRBWXdERmdIaWtZMllEdz09
                  invoiceStatus: APPROVED
                  clientOffice:
                    name: Sacramento Office
                    guid: 876552e5-f623-4dde-ac0d-9b6d9eb945aa
                    divisionName: North Division
                    divisionGuid: ec744af6-34b8-4a09-96e1-9b6d9eb945aa
                    roleType: CLIENT_OFFICE
                  links:
                  - uri: /invoice/16140163-5441-4707-BD05-25D4E88E8390
                    rel: invoice
                dateRangeCursorInfo:
                  startDate: '''2022-05-23T16:40:33Z'''
                  endDate: '''2022-05-25T16:40:23Z'''
                  availableCount: 1014
        "404":
          description: Division Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DIVISION_DOES_NOT_EXIST_FOR_CLIENT
                  type: ERROR
                  field: divisionName
                  value: West Division
                  message: Division with name West Division does not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: startdate
                  value: '''2099-07-30T19:08:21.916Z'''
                  message: start date cannot be a date in the future
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /invoices/workflow-events:
    get:
      tags:
      - Invoices
      summary: Returns a paginated list of invoice workflow events that occurred since
        start date.
      description: "Returns workflow related events on invoices, including workflow\
        \ task name and workflow action selected when invoices are moved between the\
        \ workflow steps that occurred since start date. <p><b>Notes : </b></p><ul\
        \ type=\"square\"><li><b> Time Delays with Events Endpoints </b> - For all\
        \ Invoice polling/Events endpoints, one month plus the current time is added\
        \ to the response of the query. As in this example, if the start date entered\
        \ is 2022-10-30T10:50:00Z, then the end date of the returned response is 2022-11-30T10:50:00Z\
        \ which equates to a one month increase. Therefore, the following scenarios\
        \ may apply:</li><ul type=\"circle\"><li> For requests where the start date\
        \ is less than one month, all invoices up to the current date and time, minus\
        \ ten (10) seconds are returned (2022-11-30T10:49:50Z, where 2022-10-30T10:50:00Z\
        \ was used as the start date and time). </li><li> For requests where the start\
        \ date is greater than one month, all invoices from one month back are returned,\
        \ with no 10-second delay (2022-11-30T10:50:00Z, where 2022-10-30T10:50:00Z\
        \ was used as the start date and time). </li></ul></ul><p>If invoices are\
        \ not being returned by this endpoint as expected, please contact your CounselLink\
        \ API Consultant or CounselLink Customer Care (customercare@lexisnexis.com)\
        \ to confirm that you are correctly configured to receive invoices via the\
        \ CounselLink Integration API.<p>Default and maximum number of events per\
        \ page is 200. If blank, 0 or greater than 200, API will default to 200.</p>"
      operationId: workflowEvents
      parameters:
      - name: startDate
        in: query
        description: The start date for fetching the events. DateTime is in ISO8601
          format. It cannot be a date in the future.
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      - name: size
        in: query
        description: "Maximum number of events to return per page. Default and maximum\
          \ number of events per page is 200. If blank, 0 or greater than 200, API\
          \ will default to 200."
        schema:
          maximum: 200
          minimum: 0
          type: integer
          format: int32
        example: 200
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      - name: divisionName
        in: query
        description: Division name
        schema:
          maxLength: 255
          type: string
        example: West Division
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoicesWorkflowEventOverviewResponse'
              example:
                fetchedCount: 1
                entities:
                - invoiceGuid: 16140163-5441-4707-BD05-25D4E88E8390
                  eventRef: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
                  eventDate: '''2022-05-25T04:26:11Z'''
                  clientOffice:
                    name: Sacramento Office
                    guid: 876552e5-f623-4dde-ac0d-9b6d9eb945aa
                    divisionName: North Division
                    divisionGuid: ec744af6-34b8-4a09-96e1-9b6d9eb945aa
                    roleType: CLIENT_OFFICE
                  links:
                  - uri: /invoice/16140163-5441-4707-BD05-25D4E88E8390
                    rel: invoice
                dateRangeCursorInfo:
                  startDate: '''2022-05-23T16:40:33Z'''
                  endDate: '''2022-05-25T16:40:23Z'''
                  availableCount: 101
        "404":
          description: Division Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DIVISION_DOES_NOT_EXIST_FOR_CLIENT
                  type: ERROR
                  field: divisionName
                  value: West Division
                  message: Division with name West Division does not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: startdate
                  value: '''2099-07-30T19:08:21.916Z'''
                  message: start date cannot be a date in the future
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /lawfirm/{lawFirmGuid}/documents:
    get:
      tags:
      - Law Firm
      summary: Returns the list of document IDs on a law firm
      description: Returns the list of document identifiers for a law firm.
      operationId: getLawFirmDocuments
      parameters:
      - name: lawFirmGuid
        in: path
        description: Unique identifier for the lawFirm. The field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  type: integer
                  format: int64
              example:
              - 101996
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Document Management is not enabled:
                  description: Document Management is not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Document Management is not enabled for client
                    action: NO_ACTION
                Document Sharing is not enabled:
                  description: Document Sharing is not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Document sharing is not enabled
                    action: NO_ACTION
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationErrors'
              examples:
                Law Firm GUID does not exist:
                  description: Law Firm GUID does not exist
                  value:
                    messages:
                    - code: LAW_FIRM_NOT_FOUND
                      type: ERROR
                      field: lawFirmGuid
                      value: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                      message: Law Firm with guid 67612a08-a0a1-4096-9b71-11ec22b2be0e
                        does not exist
                    action: NO_ACTION
                Law Firm Documents does not exist:
                  description: Law Firm Documents does not exist
                  value:
                    messages:
                    - code: DOCUMENTS_NOT_FOUND
                      type: ERROR
                      message: There are no documents for this firm
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /lawFirmOffice/{lawFirmOfficeGuid}:
    get:
      tags:
      - Law Firm Office
      summary: Returns Law Firm Office
      description: Returns the Law Firm Office Information by Law-Firm-Office Unique
        Identifier.
      operationId: getLawFirmOffice_1
      parameters:
      - name: lawFirmOfficeGuid
        in: path
        description: Unique identifier for law firm office. This field is case sensitive
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetInvoiceLawFirmOfficeResponse'
              example:
                lawFirmOffice:
                  id: 999999
                  name: Test Law Office 12
                  guid: 9c781a81-1yy7-47yy-aa4f-9b6d9eb945aa
                  lawFirmGuid: ce71y426-9246-49y0-9y9c-9b6y9yy945yy
                  taxPayerId: 99-999-999
                  address1: 1 Raleigh Ave
                  address2: ' '
                  address3: ' '
                  city: Raleigh
                  state: NC
                  zip: "99999"
                  country: UNITED STATES
                  phoneNumber: 919-999-9999
                  phoneExtension: "24568"
                  faxNumber: 919-999-3434
                  remitToAddress1: 1 Raleigh Ave
                  remitToAddress2: ' '
                  remitToAddress3: ' '
                  remitToCity: Raleigh
                  remitToState: NC
                  remitToZip: "99999"
                  remitToCountry: UNITED STATES
                  remitToPhoneNumber: 919-999-9999
                  remitToPhoneExtension: "24568"
                  remitToFaxNumber: 919-999-3434
                links:
                - uri: /ucdf/LAWFIRMOFFICE/9y781y81-1y99-47uy-yy4f-9y6y9yy995yy/TEXT/VendorID
                  rel: get-vendor-id
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: LAW_FIRM_OFFICE_NOT_FOUND
                  type: ERROR
                  field: lawFirmOfficeGuid
                  value: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                  message: Law Firm Office Not Found
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /lawFirmOffice/{lawFirmOfficeGuid}/users:
    get:
      tags:
      - Law Firm Office
      summary: Returns Law Firm Office Users
      description: Returns Law Firm Office Users
      operationId: getLawFirmOfficeUsers
      parameters:
      - name: lawFirmOfficeGuid
        in: path
        description: Unique identifier for law firm office. This field is case sensitive
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LawFirmOfficeUser_GetLawFirmOfficeUsers'
              example:
              - userGuid: 57a09yya-d6y7-44yy-9077-ad57yy153203
                userRef: RlNjS2h1R1ZhY1hZS2yyTDlEQy8ydy09
                loginId: ktyytby6
                firstName: User
                lastName: "1"
                email: email_585627@examen.com
                practicingAttorney: false
              - userGuid: 430713YY-496A-4F9Y-B6CB-360Y6Y74677Y
                userRef: ZWt0d1kwTyyyyDBNdUyyy0hWb3QrZz09
                loginId: jnyyytg5
                firstName: John
                middleName: M
                lastName: Doe
                email: johndoe@lexisnexis.com
                practicingAttorney: true
                phone: 919-999-9999
                mobilePhone: "9192340322"
                fax: 919-999-3434
                gender: Male
                race: Decline to State
                veteran: true
                disabled: false
                lgbt: false
                birthDate: 1965-11-12
              - userGuid: 30yyy36y-yb6y-4339-9422-yy57yy153203
                userRef: VUyXY0hidUV0NHNURTRyN1dMdWVyyy09
                loginId: wnryyys6
                firstName: Admin
                lastName: User
                email: email_585635@examen.com
                practicingAttorney: true
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_GetLawFirmOfficeUsers'
              example:
                messages:
                - code: LAW_FIRM_OFFICE_NOT_FOUND
                  type: ERROR
                  field: lawFirmOfficeGuid
                  value: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                  message: Law Firm Office Not Found
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_GetLawFirmOfficeUsers'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo_GetLawFirmOfficeUsers'
  /matter/{matterGuid}/journalEntry:
    post:
      tags:
      - Matter
      summary: Add a journal entry to a matter
      description: Adds a journal entry to a matter
      operationId: addMatterJournalEntry
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      requestBody:
        description: Matter JournalEntry
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/JournalEntry'
        required: true
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/JournalEntry'
              example:
                id: 0
                subject: Test Journal1
                category: Conservation
                date: '''2024-04-10T17:35:59Z'''
                detail: Test Journal details about the matter
                author: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                sharedWithLawFirm: true
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                User Not Found:
                  description: User Not Found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: author
                      value: "Doe, John"
                      message: User not found
                    action: NO_ACTION
                Category Not Found:
                  description: Category Not Found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: category
                      value: Order/Invoic
                      message: Category not found
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/participant:
    post:
      tags:
      - Matter
      summary: Add matter participant with role
      description: "Add participant with role to a matter.<p>Note : The 'contactId'\
        \ for the POST operation must be unique.</p>"
      operationId: addMatterParticipant
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      requestBody:
        description: Matter Participant Relationship
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterParticipantRelationship'
        required: true
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterParticipantAdd'
              example:
                action: CREATED
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: matterGuid
                  message: Matter with guid 16AE6476-12F5-4E40-BDA1-2F45A4A5BF61 does
                    not exist
                action: NO_ACTION
        "409":
          description: Conflict
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_PARTICIPANT_ALREADY_EXISTS
                  type: ERROR
                  field: participantRole
                  message: Matter Participant already exists
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: contactId
                  message: required field
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/allocations:
    get:
      tags:
      - Matter
      summary: Returns matter allocations
      description: Returns matter allocations
      operationId: getAllocations
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterAllocationSuccessResponse'
              example:
                action: RETRIEVED
                allocationGroup:
                  allocations:
                  - id: allocation group id
                    name: allocation contact name
                    feePercent: 10.15
                    expensePercent: 10.15
                    costShare: true
                    feeBalanceRemaining: true
                    expenseBalanceRemaining: false
                    glCode: 121
                    allocationLimit: 5000
                    taxPercent: 10.15
                    taxBalanceRemaining: false
                    trackOverage: false
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    put:
      tags:
      - Matter
      summary: Updates and/or assigns an allocation group to a matter.
      description: "<p>When assigning allocations to a matter, an Allocation Contact\
        \ Name and an Allocation Contact ID can be provided. The behavior of the endpoint\
        \ is dictated by the information provided as follows:</p><table  cellspacing=\"\
        0\">     <col style=\"width: 190px;\" />     <col style=\"width: 220px;\"\
        \ />     <col />       <tr valign=\"top\">          <td style=\"background-color:\
        \ #00bfff;border-top-left-radius: 1px;border-top-right-radius: 1px;border-bottom-right-radius:\
        \ 1px;border-bottom-left-radius: 1px;border-left-style: solid;border-left-width:\
        \ 1px;border-right-style: solid;border-right-width: 1px;border-top-style:\
        \ solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;font-weight: bold;\"><h4><u>Allocation Contact ID</td>          <td\
        \ style=\"background-color: #00bfff;border-top-left-radius: 1px;border-top-right-radius:\
        \ 1px;border-bottom-right-radius: 1px;border-bottom-left-radius: 1px;border-left-style:\
        \ solid;border-left-width: 1px;border-right-style: solid;border-right-width:\
        \ 1px;border-top-style: solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;font-weight: bold;\"><h4><u>Allocation Contact Name</td>          <td\
        \ style=\"background-color: #00bfff;border-top-left-radius: 1px;border-top-right-radius:\
        \ 1px;border-bottom-right-radius: 1px;border-bottom-left-radius: 1px;border-left-style:\
        \ solid;border-left-width: 1px;border-right-style: solid;border-right-width:\
        \ 1px;border-top-style: solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;font-weight: bold;\"><h4><u>Behavior</td>     </tr>     <tr valign=\"\
        top\">          <td style=\"border-left-style: solid;border-left-width: 1px;border-right-style:\
        \ solid;border-right-width: 1px;border-top-style: solid;border-top-width:\
        \ 1px;border-bottom-style: solid;border-bottom-width: 1px;border-top-left-radius:\
        \ 1px;border-top-right-radius: 1px;border-bottom-right-radius: 1px;border-bottom-left-radius:\
        \ 1px;\">Provided</td>          <td style=\"border-left-style: solid;border-left-width:\
        \ 1px;border-right-style: solid;border-right-width: 1px;border-top-style:\
        \ solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;border-top-left-radius: 1px;border-top-right-radius: 1px;border-bottom-right-radius:\
        \ 1px;border-bottom-left-radius: 1px;\">Not Provided</td>          <td style=\"\
        border-left-style: solid;border-left-width: 1px;border-right-style: solid;border-right-width:\
        \ 1px;border-top-style: solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;border-top-left-radius: 1px;border-top-right-radius: 1px;border-bottom-right-radius:\
        \ 1px;border-bottom-left-radius: 1px;\">If the Allocation Contact ID already\
        \ exists in CounselLink, it's applied to the matter. If it does not exist,\
        \ an error is returned.</td>     </tr>     <tr valign=\"top\">          <td\
        \ style=\"border-left-style: solid;border-left-width: 1px;border-right-style:\
        \ solid;border-right-width: 1px;border-top-style: solid;border-top-width:\
        \ 1px;border-bottom-style: solid;border-bottom-width: 1px;border-top-left-radius:\
        \ 1px;border-top-right-radius: 1px;border-bottom-right-radius: 1px;border-bottom-left-radius:\
        \ 1px;\">Not Provided</td>          <td style=\"border-left-style: solid;border-left-width:\
        \ 1px;border-right-style: solid;border-right-width: 1px;border-top-style:\
        \ solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;border-top-left-radius: 1px;border-top-right-radius: 1px;border-bottom-right-radius:\
        \ 1px;border-bottom-left-radius: 1px;\">Provided</td>          <td style=\"\
        border-left-style: solid;border-left-width: 1px;border-right-style: solid;border-right-width:\
        \ 1px;border-top-style: solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;border-top-left-radius: 1px;border-top-right-radius: 1px;border-bottom-right-radius:\
        \ 1px;border-bottom-left-radius: 1px;\">This results in an error since the\
        \ Allocation Contact ID is always required.</td>     </tr>     <tr valign=\"\
        top\">          <td style=\"border-left-style: solid;border-left-width: 1px;border-right-style:\
        \ solid;border-right-width: 1px;border-top-style: solid;border-top-width:\
        \ 1px;border-bottom-style: solid;border-bottom-width: 1px;border-top-left-radius:\
        \ 1px;border-top-right-radius: 1px;border-bottom-right-radius: 1px;border-bottom-left-radius:\
        \ 1px;\">Provided</td>          <td style=\"border-left-style: solid;border-left-width:\
        \ 1px;border-right-style: solid;border-right-width: 1px;border-top-style:\
        \ solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;border-top-left-radius: 1px;border-top-right-radius: 1px;border-bottom-right-radius:\
        \ 1px;border-bottom-left-radius: 1px;\">Provided</td>          <td style=\"\
        border-left-style: solid;border-left-width: 1px;border-right-style: solid;border-right-width:\
        \ 1px;border-top-style: solid;border-top-width: 1px;border-bottom-style: solid;border-bottom-width:\
        \ 1px;border-top-left-radius: 1px;border-top-right-radius: 1px;border-bottom-right-radius:\
        \ 1px;border-bottom-left-radius: 1px;\">If the Allocation Contact ID already\
        \ exists in CounselLink, it's applied to the matter and the name that's sent\
        \ in the API is ignored.  If the Allocation Contact ID does not already exist,\
        \ a new Allocation Contact is created with the provided name and ID.</td>\
        \     </tr></table>"
      operationId: assignAllocations
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      requestBody:
        description: allocation group to be assigned
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterAllocationGroup'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterAllocationSuccessResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterAllocationErrorResponse'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 'MATTER_GUID' does not exist
                action: NO_ACTION
                allocationGroup:
                  allocations:
                  - id: AC45 - 1
                    name: "Alloc Contact #45 - 1"
                    feePercent: "100"
                    expensePercent: "100"
                    costShare: true
                    feeBalanceRemaining: true
                    expenseBalanceRemaining: true
                    glCode: "121"
                    trackOverage: false
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterAllocationErrorResponse'
              examples:
                Duplicate Ids:
                  description: Duplicate Ids
                  value:
                    messages:
                    - code: INVALID_ALLOCATION
                      type: ERROR
                      field: allocations
                      value: <Duplicate Allocation Id>
                      message: Duplicate ids in allocation group.  Group will be ignored.
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                ID Required:
                  description: ID Required
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: "allocations[n].id"
                      message: required field
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                Fee Percent Required:
                  description: Fee Percent Required
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: "allocations[n].feePercent"
                      message: required field
                    action: NO_ACTION
                Expense Percent Required:
                  description: Expense Percent Required
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: "allocations[n].expensePercent"
                      message: required field
                    action: NO_ACTION
                Fee Percent Not 100%:
                  description: Fee Percent Not 100%
                  value:
                    messages:
                    - code: INVALID_ALLOCATION
                      type: ERROR
                      field: allocations
                      message: Fee percentages do not add up to 100%
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                Expense Percent Not 100%:
                  description: Expense Percent Not 100%
                  value:
                    messages:
                    - code: INVALID_ALLOCATION
                      type: ERROR
                      field: allocations
                      message: Exp percentages do not add up to 100%
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                GL Code Not Found:
                  description: GL Code Not Found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: glCode
                      value: <Bad GL Code>
                      message: GL Code not found
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                No Fee Remaining Balance Set:
                  description: No Fee Remaining Balance Set
                  value:
                    messages:
                    - code: INVALID_ALLOCATION
                      type: ERROR
                      field: allocations
                      message: No contact is marked as fee balance remaining contact
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                No Expense Remaining Balance Set:
                  description: No Expense Remaining Balance Set
                  value:
                    messages:
                    - code: INVALID_ALLOCATION
                      type: ERROR
                      field: allocations
                      message: No contact is marked as fee balance remaining contact
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                Multiple Fee Remaining Balance Set:
                  description: Multiple Fee Remaining Balance Set
                  value:
                    messages:
                    - code: INVALID_ALLOCATION
                      type: ERROR
                      field: allocations
                      message: Two contacts in group marked as fee balance remaining
                        contact
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                Multiple Expense Remaining Balance Set:
                  description: Multiple Expense Remaining Balance Set
                  value:
                    messages:
                    - code: INVALID_ALLOCATION
                      type: ERROR
                      field: allocations
                      message: Two contacts in group marked as expense balance remaining
                        contact
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
                Other Validation errors:
                  description: Other Validation errors
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: field name
                      value: field value
                      message: Error Description
                    action: NO_ACTION
                    allocationGroup:
                      allocations:
                      - id: AC45 - 1
                        name: "Alloc Contact #45 - 1"
                        feePercent: "100"
                        expensePercent: "100"
                        costShare: true
                        feeBalanceRemaining: true
                        expenseBalanceRemaining: true
                        glCode: "121"
                        trackOverage: false
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter:
    put:
      tags:
      - Matter
      summary: Updates an existing matter
      description: "Updates an existing matter identified by matter GUID (if supplied),\
        \ otherwise, the matter number. Validates ETag (if supplied) to ensure matter\
        \ has not been updated since ETag was generated.<p><b>Notes : </b></p><p>When\
        \ the <b>'Authentication of SSO ID is case sensitive'</b> setting is set to\
        \ 'Yes', case sensitivity has been activated and must be honored for the SSO\
        \ ID entry. A global unique identifier (Guid) for the matter is returned and\
        \ can be used to reference this specific matter in any future request. </p>"
      operationId: update
      requestBody:
        description: The Matter to update
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterUpdate'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterUpdateResponse'
              example:
                action: UPDATED
                matterNumber: M1234567
                guid: 3ede0aee-8e6c-4432-8acc-9b6d9eb945aa
        "206":
          description: Related matter error. Partial update
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterValidationError'
              example:
                messages:
                - code: RELATED_MATTER_ERROR
                  type: ERROR
                  field: relatedChildGuids
                  message: Unable to add matter 17866999 as a sub-matter because it
                    already belongs to matter 17866888.
                action: UPDATED
                matterNumber: M17890107
                guid: 9022AD1E-BC06-4040-9B15-F5DF849258E7
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "409":
          description: "Matter number is not unique, cannot identify a single matter\
            \ to update, or etag has expired"
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterValidationError'
              example:
                messages:
                - code: MATTER_NUMBER_ALREADY_EXISTS
                  type: ERROR
                  field: matterNumber
                  message: Matter number is already present
                action: NO_ACTION
                matterNumber: M12345666
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterValidationError'
              examples:
                Matter type GUID not found:
                  description: Matter type GUID not found
                  value:
                    messages:
                    - code: MATTER_TYPE_GUID_NOT_FOUND
                      type: ERROR
                      field: matterTypeGuid
                      value: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
                      message: The specified GUID for matter type was not found. See
                        /matter/types for valid type guids.
                    action: NO_ACTION
                    matterNumber: M12345666
                Contact office not found:
                  description: Contact office not found
                  value:
                    messages:
                    - code: CONTACT_OFFICE_NOT_FOUND
                      type: ERROR
                      field: contactOfficeName
                      value: "Performance Law Firm, Raleigh"
                    action: NO_ACTION
                    matterNumber: M12345666
                Login ID not found:
                  description: Login ID not found
                  value:
                    messages:
                    - code: LOGIN_ID_NOT_FOUND
                      type: ERROR
                      field: invoiceContactLoginId
                      value: jsmith
                    action: NO_ACTION
                    matterNumber: M12345666
                Validation Error:
                  description: Validation Error
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: countyName
                      value: US
                      message: Invalid County Name
                    action: NO_ACTION
                    matterNumber: M12345666
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Matter
      summary: Add a new matter
      description: "Creates a new matter<p><b>Notes : </b></p><p>When the <b>'Authentication\
        \ of SSO ID is case sensitive'</b> setting is set to 'Yes', case sensitivity\
        \ has been activated and must be honored for the SSO ID entry. A global unique\
        \ identifier (Guid) for the matter is returned and can be used to reference\
        \ this specific matter in any future request. </p>"
      operationId: create
      requestBody:
        description: The Matter to create
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterCreate'
        required: true
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterUpdateResponse'
              example:
                action: CREATED
                matterNumber: M1234567
                guid: 859655D1-4D6E-4081-B04B-94596A167A4E
        "206":
          description: Related matter error. Partial update
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterValidationError'
              example:
                messages:
                - code: RELATED_MATTER_ERROR
                  type: ERROR
                  field: relatedChildGuids
                  message: Unable to add matter 17866999 as a sub-matter because it
                    already belongs to matter 17866888.
                action: UPDATED
                matterNumber: M17890107
                guid: 9022AD1E-BC06-4040-9B15-F5DF849258E7
        "409":
          description: "Matter number is not unique, cannot identify a single matter\
            \ to update, or etag has expired"
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterValidationError'
              example:
                messages:
                - code: MATTER_NUMBER_ALREADY_EXISTS
                  type: ERROR
                  field: matterNumber
                  message: Matter number is already present
                action: NO_ACTION
                matterNumber: M12345666
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterValidationError'
              examples:
                Matter type GUID not found:
                  description: Matter type GUID not found
                  value:
                    messages:
                    - code: MATTER_TYPE_GUID_NOT_FOUND
                      type: ERROR
                      field: matterTypeGuid
                      value: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
                      message: The specified GUID for matter type was not found. See
                        /matter/types for valid type guids.
                    action: NO_ACTION
                    matterNumber: M12345666
                Contact office not found:
                  description: Contact office not found
                  value:
                    messages:
                    - code: CONTACT_OFFICE_NOT_FOUND
                      type: ERROR
                      field: contactOfficeName
                      value: "Performance Law Firm, Raleigh"
                    action: NO_ACTION
                    matterNumber: M12345666
                Login ID not found:
                  description: Login ID not found
                  value:
                    messages:
                    - code: LOGIN_ID_NOT_FOUND
                      type: ERROR
                      field: invoiceContactLoginId
                      value: jsmith
                    action: NO_ACTION
                    matterNumber: M12345666
                Validation Error:
                  description: Validation Error
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: countyName
                      value: US
                      message: Invalid County Name
                    action: NO_ACTION
                    matterNumber: M12345666
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/reserves/indemnityPayments:
    put:
      tags:
      - Matter
      summary: Update an existing indemnity payment.
      description: "The Indemnity Payment to be updated.<p>Note : matterReserveGuid\
        \ is ignored / not interpreted for this operation.</p>"
      operationId: updateIndemnityPayment
      requestBody:
        description: Indemnity payment to be updated.
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/IndemnityPayment'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/IndemnityPaymentResponseCreateUpdate'
              example:
                action: UPDATED
                indemnityPaymentGuid: BF5F0A4A-606C-487D-8886-E3D258E93D41
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Matter reserves are not enabled
                    action: NO_ACTION
                Indemnity Reserve Payments are not enabled:
                  description: Indemnity Reserve Payments are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserve Payments is not enabled
                    action: NO_ACTION
                Indemnity Reserves are not enabled:
                  description: Indemnity Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserves is not enabled
                    action: NO_ACTION
                Matter reserve not found:
                  description: Matter reserve not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveGuid
                      message: Matter reserve not found
                    action: NO_ACTION
                Indemnity reserve not found:
                  description: Indemnity reserve not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveGuid
                      message: Indemnity reserve not found
                    action: NO_ACTION
                Payment amount cannot be negative:
                  description: Payment amount cannot be negative
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: paymentAmount
                      message: Payment Amount cannot be negative
                    action: NO_ACTION
                Validation errors on matter reserve:
                  description: Validation errors on matter reserve
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: paymentAmount
                      message: Payment Amount is a required field.
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: paymentDate
                      message: Payment Date is a required field.
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Matter
      summary: Add a new indemnity payment
      description: Indemnity payment to be created<p><b>IMPORTANT </b> There must
        be 'Matter Indemnity Reserve' before creating a payment.</p>
      operationId: createIndemnityPayment
      requestBody:
        description: Indemnity payment to be created.
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/IndemnityPayment'
        required: true
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IndemnityPaymentResponseCreateUpdate'
              example:
                action: CREATED
                indemnityPaymentGuid: 67040577-7E2F-4B7C-9E20-38A8EBC9EA8E
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Matter reserves are not enabled
                    action: NO_ACTION
                Indemnity Reserve Payments are not enabled:
                  description: Indemnity Reserve Payments are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserve Payments is not enabled
                    action: NO_ACTION
                Indemnity Reserves are not enabled:
                  description: Indemnity Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserves is not enabled
                    action: NO_ACTION
                Matter reserve not found:
                  description: Matter reserve not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveGuid
                      message: Matter reserve not found
                    action: NO_ACTION
                Indemnity reserve not found:
                  description: Indemnity reserve not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveGuid
                      message: Indemnity reserve not found
                    action: NO_ACTION
                Payment amount cannot be negative:
                  description: Payment amount cannot be negative
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: paymentAmount
                      message: Payment Amount cannot be negative
                    action: NO_ACTION
                Validation errors on matter reserve:
                  description: Validation errors on matter reserve
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: paymentAmount
                      message: Payment Amount is a required field.
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: paymentDate
                      message: Payment Date is a required field.
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/lawfirm-office-assignment:
    get:
      tags:
      - Matter
      summary: Returns vendor assignments on Matter
      description: Returns all vendor assignments on a Matter
      operationId: getLawFirmAssignments
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/LawFirmAssignmentResponseGet'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationErrorMessage'
              example:
                messages:
                - code: MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
                  type: ERROR
                  field: 79905b93-4ece-4467-af45-9b6d9eb945ab
                  value: Matter Assignment cannot be retrieved for the matterGuid
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    put:
      tags:
      - Matter
      summary: Updates vendor assignments on Matter
      description: "Updates the workflow and rule set on an existing vendor assignment.<p><b>Notes\
        \ : </b></p><ul type=\"square\"><li>Before utilizing this endpoint, it is\
        \ important to note that the following Matter endpoints should be accessed\
        \ in order presented below for a given matter. The order that these endpoints\
        \ are accessed should be</li><ul type=\"circle\"><li> PUT /matter/{matterGuid}/lawfirm-office-assignment</li><li>\
        \  PUT /matter/{matterGuid}/change-request/{matterAssignmentRef}/fee-structure</li><li>\
        \ PUT /matter/{matterGuid}/change-request/{matterAssignmentRef}/offered-fee\
        \ </li></ul></ul><p><b>Notes : </b></p><p>When the <b>'Authentication of SSO\
        \ ID is case sensitive'</b> setting is set to 'Yes', case sensitivity has\
        \ been activated and must be honored for the SSO ID entry. A global unique\
        \ identifier (Guid) for the matter is returned and can be used to reference\
        \ this specific matter in any future request. </p>"
      operationId: updateLawFirmAssignment
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/LfoAssignmentRequestBody'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PostLfoAssignmentResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
                  type: ERROR
                  field: matterAssignmentRef
                  value: Matter Assignment cannot be retrieved for the matterGuid
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Either an invalid law firm office or the law firm office has declined the new assignments:
                  description: Either an invalid law firm office or the law firm office
                    has declined the new assignments
                  value:
                    messages:
                    - code: LAWFIRM_OFFICE_HAS_DECLINED_NEW_ASSIGNMENTS
                      type: ERROR
                      field: lawFirmOfficeId
                      value: "5523470"
                      message: Either an invalid lawfirm office or the law firm office
                        has declined the new assignments
                    action: NO_ACTION
                Workflow ID not found:
                  description: Workflow ID not found
                  value:
                    messages:
                    - code: WORKFLOW_ID_NOT_FOUND
                      type: ERROR
                      field: workflowId
                      value: "20001800"
                    action: NO_ACTION
                Ruleset ID not found:
                  description: Ruleset ID not found
                  value:
                    messages:
                    - code: RULESET_ID_NOT_FOUND
                      type: ERROR
                      field: rulesetId
                      value: "30003470"
                    action: NO_ACTION
                Fee Structure ID not found:
                  description: Fee Structure ID not found
                  value:
                    messages:
                    - code: FEE_STRUCTURE_ID_NOT_FOUND
                      type: ERROR
                      field: feeStructureId
                      value: "28490"
                    action: NO_ACTION
                Fee Structure change ignored:
                  description: Fee Structure change ignored
                  value:
                    messages:
                    - code: FEE_STRUCTURE_ID_CHANGE_IGNORED
                      type: WARN
                      field: feeStructureId
                      value: Fee Structure cannot be changed on update. Fee Structure
                        change will be ignored.
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Matter
      summary: Add vendor assignment on Matter
      description: "Assigns a law firm to the matter given the fee structure id, vendor\
        \ id, workflow id and the rule set id.<p><b>Notes : </b></p><ul type=\"square\"\
        ><li>A vendor is identified by the Vendor ID - a single line text custom data\
        \ field is configured on the law firm office profile with an inbound EDI field\
        \ name of “VendorID”. The inbound EDI field name will be set by your business\
        \ consultant.</li><li><b>NOTE: </b> The vendor must have an active fee offer\
        \ on the proposed fee structure.</li>"
      operationId: createLawFirmAssignment
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/LfoAssignmentRequestBody'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PostLfoAssignmentResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
                  type: ERROR
                  field: matterAssignmentRef
                  value: Matter Assignment cannot be retrieved for the matterGuid
                action: NO_ACTION
        "409":
          description: Matter already assigned to Law Firm
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_ALREADY_ASSIGNED_TO_LAW_FIRM
                  type: ERROR
                  field: "LfoAssignment [vendorId=null, lawFirmOfficeId=552347, workflowId=2000180,\
                    \ ruleSetId=3000347, feeStructureId=2849]"
                  value: Matter already assigned to Law Firm
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Either an invalid law firm office or the law firm office has declined the new assignments:
                  description: Either an invalid law firm office or the law firm office
                    has declined the new assignments
                  value:
                    messages:
                    - code: LAWFIRM_OFFICE_HAS_DECLINED_NEW_ASSIGNMENTS
                      type: ERROR
                      field: lawFirmOfficeId
                      value: "5523470"
                      message: Either an invalid lawfirm office or the law firm office
                        has declined the new assignments
                    action: NO_ACTION
                Active Fee Offer not found:
                  description: Active Fee Offer not found
                  value:
                    messages:
                    - code: ACTIVE_FEE_OFFER_NOT_FOUND
                      type: ERROR
                      field: lawFirmOfficeId
                      value: "Vendor assignment cannot be processed, law firm (530988)\
                        \ does not have an active fee offer on fee structure 2849"
                    action: NO_ACTION
                Workflow ID not found:
                  description: Workflow ID not found
                  value:
                    messages:
                    - code: WORKFLOW_ID_NOT_FOUND
                      type: ERROR
                      field: workflowId
                      value: "20001800"
                    action: NO_ACTION
                Ruleset ID not found:
                  description: Ruleset ID not found
                  value:
                    messages:
                    - code: RULESET_ID_NOT_FOUND
                      type: ERROR
                      field: rulesetId
                      value: "30003470"
                    action: NO_ACTION
                Fee Structure ID not found:
                  description: Fee Structure ID not found
                  value:
                    messages:
                    - code: FEE_STRUCTURE_ID_NOT_FOUND
                      type: ERROR
                      field: feeStructureId
                      value: "28490"
                    action: NO_ACTION
                Fee Structure change ignored:
                  description: Fee Structure change ignored
                  value:
                    messages:
                    - code: FEE_STRUCTURE_ID_CHANGE_IGNORED
                      type: WARN
                      field: feeStructureId
                      value: Fee Structure cannot be changed on update. Fee Structure
                        change will be ignored.
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/reserves:
    put:
      tags:
      - Matter
      summary: Update an existing matter reserve
      description: Update an existing matter reserve
      operationId: updateMatterReserve
      requestBody:
        description: The Matter Reserve to update
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterReserve'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: string
                example:
                  action: UPDATED
                  matterReserveGuid: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserves are not enabled
                    action: NO_ACTION
                Matter not found:
                  description: Matter not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Matter not found
                    action: NO_ACTION
                Track Indemnity Reserves is not enabled:
                  description: Track Indemnity Reserves is not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserves is not enabled
                    action: NO_ACTION
                Reserve Contact must have Reserve Administrator role:
                  description: Reserve Contact must have Reserve Administrator role
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: reserveContactId
                      message: Reserve Contact must have Reserve Administrator role
                    action: NO_ACTION
                Reserve Contact not found:
                  description: Reserve Contact not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: reserveContactId
                      message: Reserve Contact not found
                    action: NO_ACTION
                Matter reserve type already exists:
                  description: Matter reserve type already exists
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Matter reserve type INDEMNITY_RESERVE already exists
                        for this matter
                    action: NO_ACTION
                Validation errors on matter reserve:
                  description: Validation errors on matter reserve
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: reserveAmount
                      message: required field
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Matter
      summary: Add new Expense or Indemnity Reserve
      description: Creates new Expense or Indemnity Reserve
      operationId: createMatterReserve
      requestBody:
        description: The Matter Reserve to create
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterReserveCreate'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: string
                example:
                  action: CREATED
                  matterReserveGuid: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserves are not enabled
                    action: NO_ACTION
                Matter not found:
                  description: Matter not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Matter not found
                    action: NO_ACTION
                Track Indemnity Reserves is not enabled:
                  description: Track Indemnity Reserves is not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserves is not enabled
                    action: NO_ACTION
                Reserve Contact must have Reserve Administrator role:
                  description: Reserve Contact must have Reserve Administrator role
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: reserveContactId
                      message: Reserve Contact must have Reserve Administrator role
                    action: NO_ACTION
                Reserve Contact not found:
                  description: Reserve Contact not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: reserveContactId
                      message: Reserve Contact not found
                    action: NO_ACTION
                Matter reserve type already exists:
                  description: Matter reserve type already exists
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Matter reserve type INDEMNITY_RESERVE already exists
                        for this matter
                    action: NO_ACTION
                Validation errors on matter reserve:
                  description: Validation errors on matter reserve
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: reserveAmount
                      message: required field
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/reserves/matterReserveRecovery:
    put:
      tags:
      - Matter
      summary: Update Matter Reserve Recovery
      description: Update an existing Matter Reserve Recovery.
      operationId: updateMatterReserveRecovery
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterReserveRecovery'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MatterReserveRecovery'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserves are not enabled
                    action: NO_ACTION
                Reserve Recovery are not enabled:
                  description: Reserve Recovery are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveRecoveryGuid
                      message: Matter Reserve Recovery Guid does not exist
                    action: NO_ACTION
                Matter reserve recovery not found:
                  description: Matter reserve recovery not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveRecoveryGuid
                      message: Matter Reserve Recovery Guid does not exist
                    action: NO_ACTION
                Validation errors on matter reserve recovery:
                  description: Validation errors on matter reserve recovery
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserve recovery is not enabled
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Matter
      summary: Add a Matter Reserve Recovery
      description: Creates a matter Reserve Recovery.
      operationId: createMatterReserveRecovery
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/MatterReserveRecovery'
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MatterReserveRecovery'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserves are not enabled
                    action: NO_ACTION
                Reserve Recovery are not enabled:
                  description: Reserve Recovery are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserve recovery is not enabled
                    action: NO_ACTION
                Matter reserve not found:
                  description: Matter reserve not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveGuid
                      message: Matter Reserve Guid does not exist
                    action: NO_ACTION
                Validation errors on matter reserve recovery:
                  description: Validation errors on matter reserve recovery
                  value: "{  \"messages\": [    {      \"code\": \"VALIDATION_ERROR\"\
                    ,      \"type\": \"ERROR\",      \"field\": \"field name\",  \
                    \    \"value\": \"field value\",      \"message\": \"Error Description\"\
                    \    }  ],  \"action\": \"NO_ACTION\",    \"matterReserveRecovery\"\
                    : [      {        \"matterReserveGuid\": \"string\",        \"\
                    matterReserveRecoveryType\": \"['SETTLEMENT_REIMBURSEMENT', 'OTHER']\"\
                    ,        \"matterReserveType\": \"['EXPENSE_RESERVE', 'INDEMNITY_RESERVE']\"\
                    ,        \"recoveryDate\": \"2022-03-22T11:09:07.647Z\",     \
                    \   \"recoveryAmount\": 100,        \"payorName\": ,\"string\"\
                    ,      }    ]}"
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/reserves/indemnityPayments/{indemnityPaymentGuid}:
    delete:
      tags:
      - Matter
      summary: Delete an indemnity payment
      description: Delete an indemnity payment by indemnityPaymentGuid.
      operationId: deleteIndemnityPayment
      parameters:
      - name: indemnityPaymentGuid
        in: path
        description: Unique identifier for the indemnity payment. This field is case
          sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 64ECE0D1-634F-4F02-9657-A7A587CECD60
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
              example:
                action: DELETED
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: indemnityPaymentGuid
                  message: Indemnity payment not found.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /matter/{matterGuid}:
    get:
      tags:
      - Matter
      summary: Returns the matter
      description: Returns the matter
      operationId: get
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterGet'
              example:
                guid: A5176949-0644-485D-B571-CD4498B53C0A
                matterNumber: M179922378
                currencyCode: USD
                title: Automation Matter Title
                status: ACTIVE
                invoiceContactSSOId: TEST_SSO1
                matterContactSSOId: TEST_SSO1
                invoiceContactLoginId: TESTADMIN1
                matterContactLoginId: TESTADMIN1
                contactOfficeName: TESTADMIN Office 1
                description: Created by web service
                matterTypeGuid: a33904f1-6d11-4914-9a50-9b6dpob945aa
                createdDate: 2017-05-24T09:01:50Z
                historicalFees: 0
                historicalExpenses: 0
                matterId: 17992278
                assigningOfficeName: Test Office 1
                matterValue: 0
                countyName: N/A
                tableUCDFs:
                  TableWithNoInboundName:
                  - Table1: Test Value1
                  TableUCDF1:
                  - Table2: Test Value2
                  MatTableUcdfFeed:
                  - Table3: Test Value3
                multiLineTextUCDFs:
                  testMultiline: This is the test UCDF value fetched for the example
                    of API endpoint
                textUCDFs:
                  SingleLineUCDF: This is the test UCDF value fetched for the example
                    of API endpoint
                numericUCDFs:
                  BillNumber: 121
                links:
                - uri: /matter/A5176949-0644-485D-B571-CD44A7B53C0A/lawfirm-office-assignment
                  rel: matter-assignments
                - uri: /matter/A5176949-0644-485D-B571-CD44A7B53C0A/allocations
                  rel: matter-allocations
                - uri: /user/c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
                  rel: user
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    delete:
      tags:
      - Matter
      summary: Delete a matter
      description: Delete a matter by matterGuid.
      operationId: deleteMatter
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 3324A1FB-9947-4226-BA30-239B95281B5B
      - name: deleteReason
        in: query
        description: Delete reason
        required: true
        schema:
          type: string
        example: any reason
      - name: includeInvoices
        in: query
        description: "When true, the matter and all related records (including invoices)\
          \ will be deleted. When false (default), deletion will be prevented if the\
          \ matter has invoices."
        schema:
          type: boolean
          default: false
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterUpdateResponse'
              example:
                action: DELETED
                matterNumber: M1234567
                guid: 859655D1-4D6E-4081-B04B-94596A167A4E
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_CANNOT_BE_DELETED
                  type: ERROR
                  field: guid
                  value: 3ede0aee-8e6c-4432-8acc-9b6d9eb945aa
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/reserves/{matterReserveGuid}:
    delete:
      tags:
      - Matter
      summary: Delete a matter reserve
      description: "Delete a matter reserve by matterReserveGuid.\r<h3>Note:</h3><p>If\
        \ an indemnity payment is applied to an indemnity reserve, then deleting the\
        \ indemnity reserve also deletes the payment</p>"
      operationId: deleteMatterReserve
      parameters:
      - name: matterReserveGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: FE764A44-3075-425D-93BF-050BF0BAFB75
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
              example:
                action: DELETED
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: matterReserveGuid
                  message: Matter reserve not found
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /matter/reserves/recovery/{matterReserveRecoveryGUID}:
    delete:
      tags:
      - Matter
      summary: Delete a matter reserve recovery
      description: Delete a matter reserve recovery by recoveryGuid.
      operationId: deleteMatterReserveRecovery
      parameters:
      - name: matterReserveRecoveryGUID
        in: path
        description: Unique identifier for the Reserve Recovery. This field is case
          sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: F8E8F455-B4A6-4D41-B423-D1736B55F43E
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
              example:
                action: DELETED
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: recoveryGuid
                  message: Matter Reserve Recovery not found
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/change-request/{matterAssignmentRef}/fee-structure:
    put:
      tags:
      - Matter
      summary: Changes fee structure on an existing vendor assignment.
      description: "Matter Change Request to change the fee structure on an existing\
        \ vendor assignment.<p><b>Notes : </b></p><ul type=\"square\"><li>Before utilizing\
        \ this endpoint, it is important to note that the following Matter endpoints\
        \ should be accessed in order presented below for a given matter. The order\
        \ that these endpoints are accessed should be</li><ul type=\"circle\"><li>\
        \ PUT /matter/{matterGuid}/lawfirm-office-assignment</li><li>  PUT /matter/{matterGuid}/change-request/{matterAssignmentRef}/fee-structure</li><li>\
        \ PUT /matter/{matterGuid}/change-request/{matterAssignmentRef}/offered-fee\
        \ </li></ul></ul><p><b>IMPORTANT </b> Fee structures with payment plans are\
        \ not supported.</p><p><b>Prerequisite : </b></p><p> A user named 'EDI User'\
        \ (first name 'EDI', last name 'User') must be configured in all offices with\
        \ the 'Matter Change Approval Contact' role. All events related to this endpoint\
        \ will be logged against this user.</p><p><b>Note : </b> The vendor must have\
        \ an active fee offer on the proposed fee structure.</p>"
      operationId: feeStructureChangeRequest
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: matterAssignmentRef
        in: path
        description: The unique reference number for the matter assignment
        required: true
        schema:
          maxLength: 32
          minLength: 32
          type: string
        example: Yk1uS2U2L201elZ2dnJVcGFrSEgvZz09
      requestBody:
        description: Fee Structure Change
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/FeeStructureChange'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/FeeStructureChangeResponsePut'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/FeeStructureChangeResponsePut'
              examples:
                No active fee offer found:
                  description: No active fee offer found
                  value:
                    messages:
                    - code: NO_ACTIVE_FEE_OFFERS_FOUND
                      type: ERROR
                      field: feeStructureId
                      value: Vendor does not have an active fee offer on the proposed
                        fee structure.
                    action: NO_ACTION
                    feeStructureChange:
                      feeStructureId: "28491"
                      reason: OTHER
                      feeStructureChangeDescription: 0916-1327-31
                      allowPendingInvoices: true
                Matter GUID not found:
                  description: Matter GUID not found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: guid
                      value: 879a613c-5787-4efa-afec-9b6d9eb945ab
                Invalid Matter Assignment Ref:
                  description: Invalid Matter Assignment Ref
                  value:
                    messages:
                    - code: MATTER_ASSIGNMENT_REF_INVALID
                      type: ERROR
                      field: matterAssignmentRef
                      value: Invalid Matter Assignment Ref
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/matter-number/{matterNumber}:
    get:
      tags:
      - Matter
      summary: Returns the matter based on the matter number
      description: Returns the matter based on the matter number.
      operationId: getByMatterNumber
      parameters:
      - name: matterNumber
        in: path
        description: Matter number
        required: true
        schema:
          maxLength: 64
          type: string
        example: M9999999
      - name: getDetails
        in: query
        description: "'true' to get matter details, 'false' to return only matter\
          \ guid"
        schema:
          type: boolean
          default: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/Matter'
              examples:
                Returns matter when getDetails is 'true':
                  description: Returns matter when getDetails is 'true'
                  value:
                    guid: 3ede0aee-8e6c-4432-8acc-9b6d9eb945aa
                    matterNumber: M17866584
                    currencyCode: USD
                    title: title
                    status: ACTIVE
                    invoiceContactSSOId: WF1
                    matterContactSSOId: WF2
                    invoiceContactLoginId: loginId
                    matterContactLoginId: loginId
                    contactOfficeName: office
                    description: description
                    createdDate: 2008-10-30T19:54:22Z
                    closedDate: 2016-08-09T15:56:43Z
                    historicalFees: 0
                    historicalExpenses: 0
                    matterId: 17866584
                    matterValue: 0
                    countyName: county
                    textUCDFs:
                      field: value
                    links:
                    - uri: /matter/3ede0aee-8e6c-4432-8acc-9b6d9eb945aa/lawfirm-office-assignment
                      rel: matter-assignments
                    - uri: /matter/3ede0aee-8e6c-4432-8acc-9b6d9eb945aa/allocations
                      rel: matter-allocations
                    - uri: /user/RTU3d1ZCaUVQak1INnJDR3BOcXFhZz09
                      rel: user
                Returns only matter guid when getDetails is 'false':
                  description: Returns only matter guid when getDetails is 'false'
                  value:
                    guid: 3ede0aee-8e6c-4432-8acc-9b6d9eb945aa
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_NUMBER_NOT_FOUND
                  type: ERROR
                  field: matterNumber
                  value: Matter number 'matter_number' does not exist for the client
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/contact-offices:
    get:
      tags:
      - Matter
      summary: Returns contact offices
      description: Returns all contact offices for this client.
      operationId: getContactOffices
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  type: string
              example:
              - New York Office
              - Feed Office
              - Raleigh Office
              - Boston Office
              - Sacramento Office
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/reserves/{matterReserveGuid}/indemnityPayments:
    get:
      tags:
      - Matter
      summary: Returns matter reserve indemnity payments
      description: Returns matter reserve indemnity payments
      operationId: getIndemnityPayments
      parameters:
      - name: matterReserveGuid
        in: path
        description: The matter reserve unique identifier
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 6EBD80B1-D0F9-4CD8-8549-F1AB67AB20E7
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IndemnityPayment'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Matter reserves are not enabled
                    action: NO_ACTION
                Indemnity Reserves are not enabled:
                  description: Indemnity Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserves is not enabled
                    action: NO_ACTION
                Indemnity Reserve Payments are not enabled:
                  description: Indemnity Reserve Payments are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Indemnity Reserve Payments is not enabled
                    action: NO_ACTION
                Matter reserve not found:
                  description: Matter reserve not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterReserveGuid
                      message: Matter reserve not found
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/journalEntries:
    get:
      tags:
      - Matter
      summary: Returns the list of journal entries for a matter
      description: Returns the list of journal entries for a matter based on matter
        unique identifier.
      operationId: getJournalEntries
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/JournalEntry'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/budgets:
    get:
      tags:
      - Matter
      summary: Returns matter budgets
      description: Returns matter budgets
      operationId: getMatterBudgets
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/Budget'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: matterGuid
                  message: Matter not found
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/documents:
    get:
      tags:
      - Matter
      summary: Returns the list of document identifiers on a matter
      description: Returns the list of document identifiers for a matter.
      operationId: getMatterDocuments
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  type: integer
                  format: int64
              example:
              - 101996
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/participants:
    get:
      tags:
      - Matter
      summary: Returns the list of all participants which are assigned to a matter
      description: "Returns the list of all participants which are assigned to a matter.<p>Note\
        \ : If the matter participant is a contact, then 'isContactGroup' is False.If\
        \ the matter participant is a contact group, then the participant name is\
        \ the group name.</p>"
      operationId: getMatterParticipants
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MatterParticipant'
        "404":
          description: "Matter GUID does not exist, cannot retrieve"
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/reserves/changeReasons:
    get:
      tags:
      - Matter
      summary: Returns matter reserve change reasons
      description: Returns an array of all supported Matter Reserve Change Reasons.
      operationId: getMatterReserveChangeReasons
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MatterReserveChangeReason'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  message: Matter reserves are not enabled
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/reserves/history:
    get:
      tags:
      - Matter
      summary: Returns matter reserves history
      description: "Returns the history of adds, updates, and deletes of Expense and\
        \ Indemnity reserves, as well as indemnity payments"
      operationId: getMatterReserveHistory
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GetMatterReserveHistoryResponse'
              example:
              - event: Expense Reserve Created
                eventDate: '''2024-03-30T19:08:21.916Z'''
                oldValue: "0.00"
                newValue: "500.00"
                initiatedBy: "Admin, AUTEDIRESTAPI Admin 1 "
                details: Expense Reserve Created
                matterReserveGuid: 83CA7CD8-034C-43AA-AC01-3E11A2E7127C
                initiatedByUserRef: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserves are not enabled
                    action: NO_ACTION
                Matter not found:
                  description: Matter not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Matter not found
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/reserves:
    get:
      tags:
      - Matter
      summary: Returns matter reserves by matterGuid
      description: Returns matter reserves by matterGuid.
      operationId: getMatterReserves
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterReserveDetails'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserves are not enabled
                    action: NO_ACTION
                Matter not found:
                  description: Matter not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Matter not found
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/reserveRecoveries:
    get:
      tags:
      - Matter
      summary: Returns matter reserve recoveries
      description: Returns matter reserve recoveries. Matter Guid is required
      operationId: getReserveRecoveries
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the Reserve Recovery. This field is case
          sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: F8E8F455-B4A6-4D41-B423-D1736B55F43E
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MatterReserveRecovery'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Matter not found:
                  description: Matter not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Matter not found
                    action: NO_ACTION
                Recoveries are not enabled:
                  description: Recoveries are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Track Recoveries is not enabled
                    action: NO_ACTION
                Reserves are not enabled:
                  description: Reserves are not enabled
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      message: Reserves are not enabled
                    action: NO_ACTION
                Validation errors on matter reserve recovery:
                  description: Validation errors on matter reserve recovery
                  value: "{  \"messages\": [    {      \"code\": \"VALIDATION_ERROR\"\
                    ,      \"type\": \"ERROR\",      \"field\": \"field name\",  \
                    \    \"value\": \"field value\",      \"message\": \"Error Description\"\
                    \    }  ],  \"action\": \"NO_ACTION\",    \"matterReserveRecovery\"\
                    : [      {        \"matterReserveGuid\": \"string\",        \"\
                    matterReserveRecoveryType\": \"['SETTLEMENT_REIMBURSEMENT', 'OTHER']\"\
                    ,        \"matterReserveType\": \"['EXPENSE_RESERVE', 'INDEMNITY_RESERVE']\"\
                    ,        \"recoveryDate\": \"2022-03-22T11:09:07.647Z\",     \
                    \   \"recoveryAmount\": 100,        \"payorName\": ,\"string\"\
                    ,      }    ]}"
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/types:
    get:
      tags:
      - Matter
      summary: Returns matter types
      description: Returns all matter types for client and child entities.
      operationId: getTypes
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterTypesGet'
              example:
                types:
                - guid: 784f5e73-7ec3-425f-9164-9b6d9eb945aa
                  parentGuid: 8E399470-B611-4CEC-B2D1-7B57D1AA933F
                  name: Corp MT Type
                - guid: d2cf81f6-36e8-49ee-9d3e-9b6d9eb945aa
                  parentGuid: b1cca9c1-13c7-4354-92b4-9b6d9eb945aa
                  name: Intellectual Property
                - guid: 8E399470-B611-4CEC-B2D1-7B57D1AA933F
                  name: Finance
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/types/office/{office-name}:
    get:
      tags:
      - Matter
      summary: Returns all matter types for a given office
      description: "Returns all matter types for the office. Divisions are not supported.\r\
        <h3>Note:</h3><p>A list of all contact offices configured in CounselLink can\
        \ be obtained with the GET /matter/contact-offices endpoint</p>"
      operationId: getTypesByOffice
      parameters:
      - name: office-name
        in: path
        description: A valid customer office in CounselLink.
        required: true
        schema:
          maxLength: 255
          minLength: 1
          type: string
        example: New York Office
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterTypesGet'
              example:
                types:
                - guid: 784f5e73-7ec3-425f-9164-9b6d9eb945aa
                  parentGuid: 8E399470-B611-4CEC-B2D1-7B57D1AA933F
                  name: Corp MT Type
                - guid: d2cf81f6-36e8-49ee-9d3e-9b6d9eb945aa
                  parentGuid: b1cca9c1-13c7-4354-92b4-9b6d9eb945aa
                  name: Intellectual Property
                - guid: 8E399470-B611-4CEC-B2D1-7B57D1AA933F
                  name: Finance
        "404":
          description: Invalid office name
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MatterTypesOfficeGet'
              example:
                messages:
                - code: CONTACT_OFFICE_NOT_FOUND
                  type: ERROR
                  field: contactOfficeName
                  value: xxxxxxx
                  message: Office with given name does not exist
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/{matterGuid}/change-request/{matterAssignmentRef}/offered-fee:
    get:
      tags:
      - Matter
      summary: Returns Offered feed details for a client
      description: Returns Offered feed details for a client
      operationId: offeredFeesForVendor
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: matterAssignmentRef
        in: path
        description: Matter Assignment Reference ID. Unique reference number for matter
          assignment
        required: true
        schema:
          maxLength: 32
          minLength: 32
          type: string
        example: Yk1uS2U2L201elZ2dnJVcGFrSEgvZz09
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/OfferedFeesResponseGet'
              example:
                offeredFees:
                  detailedFees:
                    Detail Stage:
                      Associate Rate: 100
                      Partner Rate: 90
                      Paralegal Rate: 100
                      No Level Rates: 10
                  timekeeperFees:
                    Detail Stage:
                      Admin, EDI QA: 10
                      "1, User": 9
                      Law Admin, AUTEDIRESTAPI: 12
                      User, Admin: 11
                      "2, User": 10
                      None: 100
                  flatRateFees:
                    Flat Rate: 200
                  effectiveDate: '''2024-03-11'''
                  currencyCode: USD
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Matter GUID not found:
                  description: Matter GUID not found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: guid
                      value: 879a613c-5787-4efa-afec-9b6d9eb945ab
                Invalid Matter Assignment Ref:
                  description: Invalid Matter Assignment Ref
                  value:
                    messages:
                    - code: MATTER_ASSIGNMENT_REF_INVALID
                      type: ERROR
                      field: matterAssignmentRef
                      value: Invalid Matter Assignment Ref
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    put:
      tags:
      - Matter
      summary: Matter change request to lock the rates on the matter
      description: "Provides Rate Locking of level/stage rates for a given vendor<p><b>Notes\
        \ : </b></p><ul type=\"square\"><li>Before utilizing this endpoint, it is\
        \ important to note that the following Matter endpoints should be accessed\
        \ in order presented below for a given matter. The order that these endpoints\
        \ are accessed should be</li><ul type=\"circle\"><li> PUT /matter/{matterGuid}/lawfirm-office-assignment</li><li>\
        \  PUT /matter/{matterGuid}/change-request/{matterAssignmentRef}/fee-structure</li><li>\
        \ PUT /matter/{matterGuid}/change-request/{matterAssignmentRef}/offered-fee\
        \ </li></ul></ul>"
      operationId: offeredFeeChangeRequest
      parameters:
      - name: matterGuid
        in: path
        description: Unique identifier for the matter. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: matterAssignmentRef
        in: path
        description: Matter Assignment Reference ID
        required: true
        schema:
          maxLength: 32
          minLength: 32
          type: string
        example: Yk1uS2U2L201elZ2dnJVcGFrSEgvZz09
      requestBody:
        description: Fee Offer Change
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/FeeOfferChange'
            example:
              effectiveDate: '''2022-08-01'''
              offeredFees:
                detailedFees:
                  Fee Structure 1:
                    Associate Rate: 1400
                    Partner Rate: 1500
                    Paralegal Rate: 1300
                    No Level Rates: 11
                timekeeperFees:
                  Fee Structure 1:
                    Riker, William: 12
                    Troi, Deanna: 11
                    None: 1300
              proposedCurrency: USD
              reason: OTHER
              reasonDescription: description
              feeStructureId: "4277"
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/FeeOfferChangeResponsePut'
              example:
                action: UPDATED
                feeOfferChange:
                  effectiveDate: '''2024-01-01'''
                  offeredFees:
                    detailedFees:
                      Fee Structure 1:
                        Associate Rate: 1400
                        Partner Rate: 1500
                        Paralegal Rate: 1300
                        No Level Rates: 11
                    timekeeperFees:
                      Fee Structure 1:
                        Riker, William: 12
                        Troi, Deanna: 11
                        None: 1300
                  proposedCurrency: USD
                  reason: OTHER
                  reasonDescription: description
                  feeStructureId: "4277"
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/FeeOfferChangeResponseErrorPut'
              examples:
                Update error:
                  description: Update error
                  value:
                    messages:
                    - code: FEE_STRUCTURE_ID_REQUIRED
                      type: ERROR
                      field: feeStructureId
                      value: Fee Structure Id is required
                    - code: REASON_DESCRIPTION_REQUIRED
                      type: ERROR
                      field: reasonDescription
                      value: Reason Description is a required field
                    - code: CURRENCY_CODE_REQUIRED
                      type: ERROR
                      field: proposedCurrency
                      value: Proposed Currency is a required field
                    action: NO_ACTION
                    feeOfferChange:
                      effectiveDate: '''2022-08-09'''
                      offeredFees:
                        detailedFees:
                          Fee Structure Name:
                            Associate Rate: 1400
                            Partner Rate: 1500
                            Paralegal Rate: 1300
                            No Level Rates: 11
                        timekeeperFees:
                          Fee Structure Name:
                            Riker, William: 12
                            Laforge, Geordi: 11
                            None: 1300
                      reason: OTHER
                Matter GUID not found:
                  description: Matter GUID not found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: guid
                      value: 879a613c-5787-4efa-afec-9b6d9eb945ab
                Invalid Matter Assignment Ref:
                  description: Invalid Matter Assignment Ref
                  value:
                    messages:
                    - code: MATTER_ASSIGNMENT_REF_INVALID
                      type: ERROR
                      field: matterAssignmentRef
                      value: Invalid Matter Assignment Ref
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matter/journalEntry:
    put:
      tags:
      - Matter
      summary: Updates a journal entry
      description: Updates a journal entry
      operationId: updateMatterJournalEntry
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/JournalEntry'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/UpdateResponse'
              example:
                action: UPDATED
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: guid
                  value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab does
                    not exist
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                User Not Found:
                  description: User Not Found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: author
                      value: "Doe, John"
                      message: User not found
                    action: NO_ACTION
                Category Not Found:
                  description: Category Not Found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: category
                      value: Order/Invoic
                      message: Category not found
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matters/reserves/events:
    get:
      tags:
      - Matters
      summary: Returns a paginated list of matter reserve events that occurred since
        start date.
      description: "<p>For all matter polling / Events endpoints, one month plus the\
        \ current time is added to the response of the query. As in this example,\
        \ if the start date entered is 2022-03-30T10:50:00Z, then the end date of\
        \ the returned response is 2022-04-30T10:50:00Z which equates to a one month\
        \ increase.</p><p>Therefore, the following scenarios may apply:</p><ul type=\"\
        square\"><li>For requests where the <strong><em>start date is less than one\
        \ month</em></strong>, all matters up to the current date and time, minus\
        \ ten (10) seconds are returned (2022-04-30T10:49:50Z, where 2022-03-30T10:50:00Z\
        \ was used as the start date and time).</li><li>For requests where the <strong><em>start\
        \ date is greater than one month</em></strong>, all matters from one month\
        \ back are returned with no 10-second delay (2022-04-30T10:50:00Z, where 2022-03-30T10:50:00Z\
        \ was used as the start date and time).</li></ul><p>Default and maximum number\
        \ of events per page is 500. If blank, 0 or greater than 500, API will default\
        \ to 500.</p></ul>"
      operationId: getMatterReserveEvents
      parameters:
      - name: startDate
        in: query
        description: The start date for fetching the events. DateTime is in ISO8601
          format. It cannot be a date in the future.
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      - name: size
        in: query
        description: "Maximum number of events to return per page. Default and maximum\
          \ number of events per page is 500. If blank, 0 or greater than 500, API\
          \ will default to 500."
        schema:
          maximum: 500
          minimum: 0
          type: integer
          format: int32
        example: 500
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      - name: divisionName
        in: query
        description: Division name
        schema:
          maxLength: 255
          type: string
        example: West Division
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MattersReserveEventsSuccessResponse'
              example:
                fetchedCount: 2
                entities:
                - event: Expense Reserve Created
                  eventRef: MTlvVHdFcU9kSVM0OE5BUk8ya1Bmdz09
                  eventDate: '''2022-05-25T04:20:15Z'''
                  oldValue: "1000.0"
                  newValue: "2000.0"
                  initiatedBy: "Smith, John"
                  details: This is an event comment
                  matterReserveGuid: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                  initiatedByUserRef: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
                  matterReserveRecoveryGuid: 2DAF9624-F10F-4D1F-A6AD-E26C2A8F708E
                  indemnityPaymentGuid: 07F79E01-2FCC-4BB6-ABDA-9BDE06AB657D
                - event: Expense Reserve Deleted
                  eventRef: STlvVHdFcU9kSVM0OE5BUk8ya1Bmdz09
                  eventDate: '''2022-05-26T04:20:15Z'''
                  oldValue: "1000.0"
                  newValue: "2000.0"
                  initiatedBy: "Smith, John"
                  details: This is an event comment
                  matterReserveGuid: 55E9359B-19DC-4E06-9FE2-21DFE4926117
                  initiatedByUserRef: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
                  matterReserveRecoveryGuid: 6D886B30-38E8-402B-90C3-914558BEE028
                  indemnityPaymentGuid: BB438441-F425-4432-8760-1355607C6DC4
                dateRangeCursorInfo:
                  startDate: '''2022-05-23T15:58:42Z'''
                  endDate: '''2022-05-26T15:58:32Z'''
                  availableCount: 100
        "404":
          description: Next results not found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Invalid cursor:
                  description: Invalid cursor
                  value:
                    messages:
                    - code: INVALID_CURSOR
                      type: ERROR
                      field: cursor
                      message: Cursor is invalid
                    action: NO_ACTION
        "422":
          description: Validation error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Invalid start date:
                  description: Invalid start date
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: startdate
                      value: '''2099-07-30T19:08:21.916Z'''
                      message: start date cannot be a date in the future
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matters:
    put:
      tags:
      - Matters
      summary: Returns matters by list of matter numbers.
      description: <p>Returns up to a maximum of 100 matters based on the matter number.<p>Note
        that fetchedMatters only returns the following matter details:<ul type="square"><li>guid
        - unique identifier for the matter</li><li>matterNumber - law firm identifier
        for the matter</li><li>title - title for the matter</li></ul>
      operationId: getMatters
      requestBody:
        description: List of matter numbers to return.
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              type: array
              example:
              - M17866727
              items:
                type: string
                example: "[\"M17866727\"]"
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MattersResponseSuccessResponse'
              example:
                fetchedMatters:
                - guid: 6ba556ba-8d30-4418-9181-9b6d9eb945aa
                  matterNumber: M17866727
                  title: Matter Title
                numberOfNotFoundMatters: 0
                numberOfSkippedMatters: 0
                numberOfMattersFetched: 1
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matters/lawFirmMatterId/{matterNumber}/lawFirmOffice/{officeId}:
    get:
      tags:
      - Matters
      summary: Returns list of matters for a given matter number and law firm office
        ID.
      description: Returns the list of matters (one or more) based on the law firm
        office identifier and the law firm's matter number.
      operationId: getMattersByLawFirmMatterNumber
      parameters:
      - name: matterNumber
        in: path
        description: Law firm matter number
        required: true
        schema:
          type: string
        example: M17866727
      - name: officeId
        in: path
        description: Law firm office ID
        required: true
        schema:
          type: integer
          format: int64
        example: 10001
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MattersInformationResponseSuccessResponse'
              example:
                fetchedCount: 1
                entities:
                - matterId: 17866727
                  clientMatterId: CL17866727
                  lawFirmMatterId: M17866727
                  matterTitle: Matter Title
                  feeStructureDescription: Fee Structure
                  feeStructureId: 3067
                  status: ACTIVE
                  statusDate: '''2008-11-05T20:38:43Z'''
                  clientName: Client
                availableCount: 1
        "404":
          description: Law firm office ID does not exist
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MattersInformationResponse'
              example:
                messages:
                - code: LAW_FIRM_OFFICE_NOT_FOUND
                  type: ERROR
                  field: officeId
                  value: "10001"
                  message: Law firm office does not exist
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /matters/events:
    get:
      tags:
      - Matters
      summary: Returns a paginated list of matter events that occurred since start
        date.
      description: "<p>For all matter polling / Events endpoints, one month plus the\
        \ current time is added to the response of the query. As in this example,\
        \ if the start date entered is 2022-03-30T10:50:00Z, then the end date of\
        \ the returned response is 2022-04-30T10:50:00Z which equates to a one month\
        \ increase.</p><p>Therefore, the following scenarios may apply:</p><ul type=\"\
        square\"><li>For requests where the <strong><em>start date is less than one\
        \ month</em></strong>, all matters up to the current date and time, minus\
        \ ten (10) seconds are returned (2022-04-30T10:49:50Z, where 2022-03-30T10:50:00Z\
        \ was used as the start date and time).</li><li>For requests where the <strong><em>start\
        \ date is greater than one month</em></strong>, all matters from one month\
        \ back are returned with no 10-second delay (2022-04-30T10:50:00Z, where 2022-03-30T10:50:00Z\
        \ was used as the start date and time).</li></ul><p>Default and maximum number\
        \ of events per page is 500. If blank, 0 or greater than 500, API will default\
        \ to 500.</p></ul>"
      operationId: getMattersEvents
      parameters:
      - name: startDate
        in: query
        description: The start date for fetching the events. DateTime is in ISO8601
          format. It cannot be a date in the future.
        schema:
          type: string
          format: date-time
        example: '''2022-04-30T19:08:21.916Z'''
      - name: size
        in: query
        description: "Maximum number of events to return per page. Default and maximum\
          \ number of events per page is 500. If blank, 0 or greater than 500, API\
          \ will default to 500."
        schema:
          maximum: 500
          minimum: 0
          type: integer
          format: int32
        example: 500
      - name: cursor
        in: query
        description: Cursor value (<a href=https://clapi.zendesk.com/hc/en-us/articles/26816484827539-CounselLink-Integration-API#Cursors
          target="_blank">Link to documentation on cursor usage</a>)
        schema:
          type: string
        example: eyJzeW5jSWQiOjc3NTg2NSwibW9kZSI6Ik5FWFQiLCJlbmREYXRlIjoxNjMwMzUwNTAxMDAwfQ==
      - name: divisionName
        in: query
        description: Division name
        schema:
          maxLength: 255
          type: string
        example: West Division
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/MattersEventsSuccessResponse'
              example:
                fetchedCount: 2
                entities:
                - eventRef: MTlvVHdFcU9kSVM0OE5BUk8ya1Bmdz09
                  matterGuid: CA016DEF-E8E6-4248-B339-34B901D6E393
                  eventDescription: Document Added
                  eventDate: '''2022-05-25T04:20:15Z'''
                  userRef: bFVFMHRNN1BuZTVsV01WRmN5YU0vdz09
                  clientOffice:
                    name: Sacramento Office
                    guid: 876552e5-f623-4dde-ac0d-9b6d9eb945aa
                    divisionName: North Division
                    divisionGuid: ec744af6-34b8-4a09-96e1-9b6d9eb945aa
                    roleType: CLIENT_OFFICE
                - eventRef: cUZpRXJSbGpUcVBUMnozMjN4dVBVZz09
                  matterGuid: CA016DEF-E8E6-4248-B339-34B901D6E393
                  eventDescription: Document Removed
                  eventDate: '''2022-05-25T04:20:42Z'''
                  userRef: bFVFMHRNN1BuZTVsV01WRmN5YU0vdz09
                  clientOffice:
                    name: Sacramento Office
                    guid: 876552e5-f623-4dde-ac0d-9b6d9eb945aa
                    divisionName: North Division
                    divisionGuid: ec744af6-34b8-4a09-96e1-9b6d9eb945aa
                    roleType: CLIENT_OFFICE
                dateRangeCursorInfo:
                  startDate: '''2022-05-23T15:58:42Z'''
                  endDate: '''2022-05-25T15:58:32Z'''
                  availableCount: 14899
        "404":
          description: Next results not found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Invalid cursor:
                  description: Invalid cursor
                  value:
                    messages:
                    - code: INVALID_CURSOR
                      type: ERROR
                      field: cursor
                      message: Cursor is invalid
                    action: NO_ACTION
        "422":
          description: Validation error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Invalid start date:
                  description: Invalid start date
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: startdate
                      value: '''2099-07-30T19:08:21.916Z'''
                      message: start date cannot be a date in the future
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /payment:
    post:
      tags:
      - Payments
      summary: Adds a new payment using CL Invoice ID or Invoice Guid
      description: |-
        Adds a payment using CL Invoice ID or Invoice Guid as the invoice identifier.
        <p><b>Notes : </b></p><ul type="square"><li>The payment will be posted to the invoice identified by either the `invoiceGuid` or the `invoiceId`.</li><li>The `invoiceid` and the `invoiceGuid` are both required fields, where the 'invoiceGuid' always takes precedence.</li><li>The 'invoiceid' is only applicable if the 'invoiceGuid' is not used, and it is therefore recommended that you do not pass both parameters.</li>
      operationId: create_1
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/Payment'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/SuccessPaymentResponse'
              example:
                action: CREATED
                paymentReference: CF0E4B2A0F36
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND
                  type: ERROR
                  field: invoiceGuid
                  value: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
                action: NO_ACTION
        "409":
          description: Duplicate reference number
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DUPLICATE_PAYMENT
                  type: ERROR
                  field: paymentReference
                  message: Payment already exists for the invoice with the same reference
                    number.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: paymentDate
                  message: required field
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /payment/by-lawfirm-invoice-id:
    post:
      tags:
      - Payments
      summary: Adds a payment using law firm invoice ID
      description: |-
        Adds a payment using law firm invoice ID as the invoice identifier.
        <p><b>Notes : </b></p><ul type="square"><li>The payment will be posted to the invoice identified by the `lawFirmInvoiceId`.</li><li>`vendorId` and `vendorLocation` are optional but can be included in the requestbody for scenarios where multiple invoices share the same Law Firm Invoice ID.</li><li>`vendorId` field must be configured at the Law Firm Office level, with edifieldName set to "VendorID".</li><li>`vendorLocation` field must be configured at the Law Firm Office level, with edifieldName set to "VendorLocation".</li>
      operationId: createWithLawFirmInvoiceId
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/PaymentLawFirmInvoiceId'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/SuccessPaymentResponse'
              example:
                action: CREATED
                paymentReference: CF0E4B2A0F36
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: INVOICE_NOT_FOUND_FOR_CLIENT
                  type: ERROR
                  field: lawFirmInvoiceId
                action: NO_ACTION
        "409":
          description: Duplicate reference number
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: DUPLICATE_PAYMENT
                  type: ERROR
                  field: paymentReference
                  message: Payment already exists for the invoice with the same reference
                    number.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Multiple Invoices Found:
                  description: Multiple invoices found. Include `vendorId` and optionally
                    `vendorLocation` to narrow the result to a single invoice.
                  value:
                    messages:
                    - code: LAW_FIRM_INVOICE_NUMBER_NOT_UNIQUE
                      type: ERROR
                      field: lawFirmInvoiceId
                      value: INV0058
                      message: More than 1 invoice was found for the Law Firm Invoice
                        ID.
                    action: NO_ACTION
                Required Field Missing:
                  description: Required Field Missing
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: paymentDate
                      message: required field
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /ucdf/{entity}/{entityGuid}/table/{tableName}/row:
    put:
      tags:
      - UCDF
      summary: Updates UCDF table row
      description: "Updates a row in UCDF table. Recommendation is to use PUT /ucdf/{entity}/{entityGuid}\
        \ endpoint to reduce the API calls required. <p><b>Notes : </b></p><ul type=\"\
        square\"><li>< * > in schema indicates the name of a UCDF field in a table</li></ul>"
      operationId: updateUCDFTableRow
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (CONTACT is not supported)<br><br> Note : Please\
          \ use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: array
          items:
            type: string
            enum:
            - MATTER
            - INVOICE
            - LAWFIRMOFFICE
            - LAWFIRM
            - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: tableName
        in: path
        description: Table Name
        required: true
        schema:
          type: string
        example: Historical Allocation
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/UCDFRow'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PutUCDFTableResponse'
              example:
                action: UPDATED
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: matterGuid
                  message: Matter with guid 16AE6476-12F5-4E40-BDA1-2F45A4A5BF61 does
                    not exist
                action: NO_ACTION
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  message: Contact UCDF operation is currently not supported by the
                    API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - UCDF
      summary: Adds UCDF table row
      description: "Adds a row to UCDF Table. Recommendation is to use PUT /ucdf/{entity}/{entityGuid}\
        \ endpoint to reduce the API calls required. <p><b>Notes : </b></p><ul type=\"\
        square\"><li>< * > in schema indicates the name of a UCDF field in a table</li></ul>"
      operationId: appendUCDFTableRow
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (CONTACT is not supported)<br><br> Note : Please\
          \ use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: tableName
        in: path
        description: Table Name
        required: true
        schema:
          type: string
        example: Historical Allocation
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/UCDFRow'
      responses:
        "201":
          description: Created
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PutUCDFTableResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF
                        does not exist
                    action: NO_ACTION
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA
                        does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  message: Contact UCDF operation is currently not supported by the
                    API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /ucdf/{entity}/{entityGuid}/{fieldType}/{fieldName}:
    get:
      tags:
      - UCDF
      summary: Returns UCDF Field
      description: "Returns information about a UCDF Field. Recommendation is to use\
        \ GET /ucdf/{entity}/{entityGuid} endpoint to reduce the API calls required. "
      operationId: getUCDFField
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (Contact entity does not support Money UCDFs)<br><br>\
          \ Note : Please use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: fieldType
        in: path
        description: Data Type
        required: true
        schema:
          type: string
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
        example: MULTI_LINE_TEXT
      - name: fieldName
        in: path
        description: Inbound EDI Field Name
        required: true
        schema:
          type: string
        example: Test_Field
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetUCDFFieldResponse'
              example:
                fieldName: InvDivTextField
                fieldType: TEXT
                value: Test for API
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF
                        does not exist
                    action: NO_ACTION
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA
                        does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
                UCDF Field Not Found:
                  description: UCDF Field Not Found
                  value:
                    messages:
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: ERROR
                      field: Percentage UCDF
                      message: UCDF not found for fieldname
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  message: Money UCDF is not supported for Contact
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    put:
      tags:
      - UCDF
      summary: Updates Multi-Option UCDF Field
      description: "Updates Multi-Option UCDF fields of type MULTI_CHECKBOX and MULTI_SELECT_DROPDOWN.\
        \ Recommendation is to use PUT /ucdf/{entity}/{entityGuid} endpoint to reduce\
        \ the API calls required. "
      operationId: updateMultiOptionUCDFField
      parameters:
      - name: entity
        in: path
        description: "Type of Entity<br><br> Note : Please use MATTER entity for Work\
          \ Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: fieldType
        in: path
        description: "Data Type (Supported Values - MULTI_CHECKBOX, MULTI_SELECT_DROPDOWN)"
        required: true
        schema:
          type: string
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
        example: MULTI_SELECT_DROPDOWN
      - name: fieldName
        in: path
        description: EDI Inbound Field Name
        required: true
        schema:
          type: string
        example: fieldName
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              type: array
              example:
              - New York Office
              - Feed Office
              - Raleigh Office
              - Boston Office
              - Sacramento Office
              items:
                type: string
                example: "[\"New York Office\",\"Feed Office\",\"Raleigh Office\"\
                  ,\"Boston Office\",\"Sacramento Office\"]"
        required: true
      responses:
        "200":
          description: "Success (Returns empty response body, hence no Schema is defined)"
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              example: {}
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: guid
                      value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab
                        does not exist
                    action: NO_ACTION
                UCDF Field Not Found:
                  description: UCDF Field Not Found
                  value:
                    messages:
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: ERROR
                      field: Percentage UCDF
                      message: UCDF not found for fieldname
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  field: fieldType
                  value: PERCENTAGE
                  message: Current operation is not supported by the API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    delete:
      tags:
      - UCDF
      summary: Deletes UCDF Field
      description: "Deletes value of a UCDF field. Recommendation is to use PUT /ucdf/{entity}/{entityGuid}\
        \ endpoint to reduce the API calls required. "
      operationId: deleteUCDFField
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (Contact entity does not support Money UCDFs)<br><br>\
          \ Note : Please use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: fieldType
        in: path
        description: Data Type
        required: true
        schema:
          type: string
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
      - name: fieldName
        in: path
        description: Inbound EDI Field Name
        required: true
        schema:
          type: string
        example: Test_Field
      responses:
        "200":
          description: "Success (Returns empty response body, hence no Schema is defined)"
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              example: {}
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF
                        does not exist
                    action: NO_ACTION
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA
                        does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
                UCDF Field Not Found:
                  description: UCDF Field Not Found
                  value:
                    messages:
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: ERROR
                      field: Percentage UCDF
                      message: UCDF not found for fieldname
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  message: Money UCDF is not supported for Contact
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /ucdf/{entity}/configurations:
    get:
      tags:
      - UCDF
      summary: Returns all UCDFs for an entity type
      description: "Returns all UCDFs configured for an entity type<p><b>Notes : </b></p><ul\
        \ type=\"square\"><li>Once a UCDF field has been created, it must be in an\
        \ 'Active' and 'Published' state to be recognized by this endpoint</li><li>Although\
        \ UCDFs are configurable by the user, each field name must have an Inbound\
        \ Electronic Data Interchange (EDI) Field Name set by CounselLink staff in\
        \ order to process through the CL_INT_API</li></ul>"
      operationId: getUCDFConfigurations
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (Contact entity does not support Money UCDFs)<br><br>\
          \ Note : Please use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetUCDFConfigurationResponse'
              example:
                ucdfConfigurations:
                - name: city
                  displayLabel: city
                  inboundEDIName: city
                  fieldType: TEXT
                  officeIds:
                  - 530956
                  matterTypeGuids:
                  - 0E5DA875-0979-48AB-A63B-28FA483A3617
                  contactTypes:
                  - string
                  locationGuids:
                  - 77b3a06d-ddde-4c9f-b2bd-f2f15b3ff36b
                - name: MatterMultiSelectDropdown
                  displayLabel: MatterMultiSelectDropdown
                  inboundEDIName: MatterMultiSelectDropdown
                  fieldType: MULTI_SELECT_DROPDOWN
                  locationGuids:
                  - 77b3a06d-ddde-4c9f-b2bd-f2f15b3ff36b
                  options:
                  - option 1
                  - option 2
                  - option 3
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /ucdf/{entity}/{entityGuid}:
    get:
      tags:
      - UCDF
      summary: Returns all UCDFs for an entity
      description: "Returns all UCDFs configured for an entity<p><b>Notes : </b></p><ul\
        \ type=\"square\"><li>< * > in schema indicates the name of a UCDF field in\
        \ a table</li><br><li>Data for UCDF row field entities are displayed as key-value\
        \ pairs ('type' and 'value'), but for MultiSelectDropDown or MultiCheckbox\
        \ fields, it is represented as 'type' and an array of 'values'</li><br><li>Below\
        \ fields are displayed on the schema, but will not be shown on the actual\
        \ endpoint output</li><ul type=\"circle\"><li>UCDFField, UCDFTable, UCDFBlock\
        \ - messages, action, links</li></ul>"
      operationId: getUCDFInformation
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (Contact entity does not support Money UCDFs)<br><br>\
          \ Note : Please use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/UCDFInformationResponse'
              example:
                fields:
                - fieldName: InvoiceField1
                  fieldType: OPTION
                  value: Yellow
                - fieldName: Multi Select Dropdown
                  fieldType: MULTI_SELECT_DROPDOWN
                  values:
                  - Chicago
                  - Nashville
                  - New York
                tables:
                - name: InvoiceTable
                  guid: 4229e706-c241-4baf-ad9f-459103adc445
                  tableMetaData:
                    columns:
                      InvoiceTableField1: OPTION
                  rows:
                  - rowRef: "1"
                    cells:
                      InvoiceTableField1:
                        type: OPTION
                        value: B
                  - rowRef: "2"
                    cells:
                      Postal Code:
                        type: MULTI_SELECT_DROPDOWN
                        values:
                        - "27519"
                        - "876352343"
                        - "49573495"
                blocks:
                - name: MatterLevelBlock
                  guid: 5f6f9a6f-f0f0-4ee0-8542-a5d8c684f447
                  fields:
                  - fieldName: TextBlockField
                    fieldType: TEXT
                    value: text in a block
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF
                        does not exist
                    action: NO_ACTION
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA
                        does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    put:
      tags:
      - UCDF
      summary: Updates UCDF for an entity
      description: "Updates UCDF information for an entity<p><b>Notes : </b></p><ul\
        \ type=\"square\"><li>To delete a value for a field, send in the field without\
        \ the 'value' attribute</li><br><li>To delete a row from the table, send the\
        \ row data including the 'rowRef', with all 'value' attributes in the cells\
        \ object set to empty strings</li><br><li>If any of the field names passed\
        \ in the request does not exist, remaining fields will be updated and a warning\
        \ message is shown with 200 response code</li><br><li>< * > in schema indicates\
        \ the name of a UCDF field in a table</li><br><li>Data for UCDF row field\
        \ entities are displayed as key-value pairs ('type' and 'value'), but for\
        \ MultiSelectDropDown or MultiCheckbox fields, it is represented as 'type'\
        \ and an array of 'values'</li><br><li>Below fields are displayed on the schema,\
        \ but will not be shown on the actual endpoint output</li><ul type=\"circle\"\
        ><li>messages, action, links</li></ul></ul>"
      operationId: updateUCDFInformation
      parameters:
      - name: entity
        in: path
        description: "Type of entity (Money UCDFs are not supported for the 'CONTACT'\
          \ entity)<br><br> Note : Please use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/UCDFInformation'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/UpdateUCDFInformationResponse'
              examples:
                Success:
                  description: Success
                  value: {}
                Success with warning:
                  description: Success with warning
                  value:
                    messages:
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: WARN
                      field: Percentage UCDF
                      message: UCDF not found for fieldname
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: WARN
                      field: Postal Code1
                      value: "45678"
                      message: UCDF not found for fieldname
                Success with error:
                  description: Success with error
                  value:
                    messages:
                    - code: UCDF_SAVE_ERROR
                      type: ERROR
                      message: message
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Entity GUID Not Found:
                  description: Entity GUID Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF
                        does not exist
                    action: NO_ACTION
                Invoice GUID Not Found:
                  description: Invoice GUID Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /ucdf/{entity}/{entityGuid}/table/{tableName}:
    get:
      tags:
      - UCDF
      summary: Returns UCDF table
      description: "Returns information about UCDF fields in a table. Recommendation\
        \ is to use GET /ucdf/{entity}/{entityGuid} endpoint to reduce the API calls\
        \ required. <p><b>Notes : </b></p><ul type=\"square\"><li>< * > in schema\
        \ indicates the name of a UCDF field in a table</li></ul>"
      operationId: getUCDFTable
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (CONTACT is not supported)<br><br> Note : Please\
          \ use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: tableName
        in: path
        description: Table Name
        required: true
        schema:
          maxLength: 36
          minLength: 2
          type: string
        example: Table2
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/GetUCDFTableResponse'
              example:
                name: Historical Allocation
                guid: 3a20b463-8e24-432d-9f7f-b381fe05095a
                tableMetaData:
                  columns:
                    Allocation Contact Name: TEXT
                    InvTabFeed-MultiSelectUseVal: MULTI_SELECT_DROPDOWN
                    Allocated Amount: NUMBER
                    InvTabFeed-DropdownUseVal: OPTION
                    Cost shared: TEXT
                rows:
                - rowRef: "1"
                  cells:
                    Allocation Contact Name:
                      type: TEXT
                      value: Hello
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF
                        does not exist
                    action: NO_ACTION
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA
                        does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  message: Contact UCDF operation is currently not supported by the
                    API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    put:
      tags:
      - UCDF
      summary: Updates UCDF table
      description: "Updates fields in a UCDF table. Recommendation is to use PUT /ucdf/{entity}/{entityGuid}\
        \ endpoint to reduce the API calls required. <p><b>Notes : </b></p><ul type=\"\
        square\"><li>< * > in schema indicates the name of a UCDF field in a table</li></ul>"
      operationId: updateUCDFTable
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (CONTACT is not supported)<br><br> Note : Please\
          \ use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: tableName
        in: path
        description: Table Name
        required: true
        schema:
          maxLength: 36
          minLength: 2
          type: string
        example: Historical Allocation
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/UCDFTable'
        required: true
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/PutUCDFTableResponse'
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: MATTER_GUID_NOT_FOUND
                  type: ERROR
                  field: matterGuid
                  message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF does
                    not exist
                action: NO_ACTION
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  message: Contact UCDF operation is currently not supported by the
                    API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /ucdf/{entity}/{entityGuid}/table/{tableName}/metadata:
    get:
      tags:
      - UCDF
      summary: Returns UCDF table metadata
      description: "Returns metadata information for UCDF fields in a table. Recommendation\
        \ is to use GET /ucdf/{entity}/{entityGuid} endpoint to reduce the API calls\
        \ required. <p><b>Notes : </b></p><ul type=\"square\"><li>< * > in schema\
        \ indicates the name of a UCDF field in a table</li></ul>"
      operationId: getUCDFTableMetaData
      parameters:
      - name: entity
        in: path
        description: "Type of Entity (CONTACT is not supported)<br><br> Note : Please\
          \ use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: array
          items:
            type: string
            enum:
            - MATTER
            - INVOICE
            - LAWFIRMOFFICE
            - LAWFIRM
            - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: tableName
        in: path
        description: Table Name
        required: true
        schema:
          type: string
        example: Historical Allocation
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/UCDFTableMetaData'
              example:
                columns:
                  MatterTableField: OPTION
                  MatterTableMultiDropdown: MULTI_SELECT_DROPDOWN
                  MatterTableFieldRelatedDropdown1: RELATED_DROPDOWN
                  MatterTableMultiCheckbox: MULTI_CHECKBOX
                  MatterTableText: TEXT
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: matterGuid
                      message: Matter with guid 424F73DF-FCF2-4812-BE39-7E6617CAEABF
                        does not exist
                    action: NO_ACTION
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice with guid 5CB9F34C-FD89-4C6C-BF01-BEA8C4B725EA
                        does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  message: Contact UCDF operation is currently not supported by the
                    API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /ucdf/{entity}/{entityGuid}/{fieldType}/{fieldName}/{value}:
    put:
      tags:
      - UCDF
      summary: Updates UCDF Field
      description: "Updates UCDF Fields except Multi-Options. Recommendation is to\
        \ use PUT /ucdf/{entity}/{entityGuid} endpoint to reduce the API calls required.\
        \ <p><b>Notes : </b></p><ul type=\"square\"><li>MULTI_CHECKBOX, RELATED_DROPDOWN\
        \ and MULTI_SELECT_DROPDOWN fields are not supported by this endpoint</li></ul>"
      operationId: updateUCDFField
      parameters:
      - name: entity
        in: path
        description: "Type of entity (Money UCDFs are not supported for the 'CONTACT'\
          \ entity)<br><br> Note : Please use MATTER entity for Work Intake UCDFs"
        required: true
        schema:
          type: string
          enum:
          - MATTER
          - INVOICE
          - LAWFIRMOFFICE
          - LAWFIRM
          - CONTACT
        example: MATTER
      - name: entityGuid
        in: path
        description: Unique identifier for the entity. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      - name: fieldType
        in: path
        description: Data Type
        required: true
        schema:
          type: string
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
      - name: fieldName
        in: path
        description: EDI Inbound Field Name
        required: true
        schema:
          type: string
        example: Color
      - name: value
        in: path
        description: Value to be updated
        required: true
        schema:
          type: string
        example: Grey
      responses:
        "200":
          description: "Success (Returns empty response body, hence no Schema is defined)"
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              example: {}
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Invoice Entity Not Found:
                  description: Invoice Entity Not Found
                  value:
                    messages:
                    - code: INVOICE_NOT_FOUND_FOR_CLIENT
                      type: ERROR
                      field: invoiceGuid
                      value: Invoice does not exist
                      message: Invoice with guid does not exist for the client
                    action: NO_ACTION
                Matter Entity Not Found:
                  description: Matter Entity Not Found
                  value:
                    messages:
                    - code: MATTER_GUID_NOT_FOUND
                      type: ERROR
                      field: guid
                      value: Matter with guid 3ede0aee-8e6c-4432-8acc-9b6d9eb945ab
                        does not exist
                    action: NO_ACTION
                UCDF FieldName Not Found:
                  description: UCDF FieldName Not Found
                  value:
                    messages:
                    - code: UCDF_FIELDNAME_NOT_FOUND
                      type: ERROR
                      field: Percentage UCDF
                      message: UCDF not found for fieldname
        "501":
          description: Operation Not Supported
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/UCDFValidationError'
              example:
                messages:
                - code: OPERATION_NOT_SUPPORTED
                  type: ERROR
                  field: fieldType
                  value: PERCENTAGE
                  message: Current operation is not supported by the API
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              examples:
                Response with action property:
                  description: Response with action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
                    action: NO_ACTION
                Response without action property:
                  description: Response without action property
                  value:
                    messages:
                    - code: ERROR_CODE
                      type: ERROR
                      field: Field Name
                      value: Field Value
                      message: Error message
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /user/{userRef}:
    get:
      tags:
      - User
      summary: Returns a user by userRef
      description: Returns a user by `userRef`.
      operationId: get_1
      parameters:
      - name: userRef
        in: path
        description: The reference identifier for a client user or law-firm user
        required: true
        schema:
          type: string
        example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/User_GetUser'
              example:
                userRef: c0xyRUh5WTM1YUVFyyyyyyyyUklYUT09
                ssoId: TEST_SSOID
                loginId: TEST_LOGIN1
                firstName: TEST
                lastName: Admin
                userType: CLIENT_INDIVIDUAL
                email: nobody@examen.com
                active: true
                address:
                  line1: 111 Raleigh dr
                  city: Raleigh
                  state: NC
                  country: US
                  zip: "99999"
                  phoneNum: "3456787878"
                  phoneExt: "8991"
                divisions:
                - Test Division 1
                offices:
                - Test Office 1
                - Test Surety Office 1
                - Division 2 Office 1
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/Notification_GetUser'
              example:
                messages:
                - code: USER_NOT_FOUND
                  type: ERROR
                  field: userRef
                  message: User does not exist.
                action: NO_ACTION
        "422":
          description: User Reference is not valid
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo_GetUser'
              example:
                rid: 67612a08-a0a1-4096-9b71-11ec22b2be0e
                info: Request ID (rid) and message values helps in debugging. Please
                  provide these when contacting support about the error!
                message: Reference is not valid
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo_GetUser'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_GetUser'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /user/login-audit:
    get:
      tags:
      - User
      summary: Returns a list of user login metrics
      description: Returns a list of users login metrics. SSO ID won't be returned
        in the list of responses.
      operationId: getLoginAudit
      parameters:
      - name: division
        in: query
        description: Name of the division to filter by
        schema:
          maxLength: 255
          type: string
        example: Eastern
      - name: office
        in: query
        description: Name of the office to filter by
        schema:
          maxLength: 255
          type: string
        example: Atlanta
      - name: active
        in: query
        description: Filter results by the users' active indicators
        schema:
          type: boolean
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User_GetUserLoginAudit'
              example:
              - loginId: sirisha123
                firstName: sirisha
                lastName: rao
                email: email_567996@examen.com
                lastLoginDate: '''2024-04-16T19:55:41Z'''
                numberOfLogins: 1
              - loginId: AUTEDIRESTADMIN1
                firstName: AUTEDIRESTAPI Admin 1
                lastName: Admin
                email: nobody@examen.com
                lastLoginDate: '''2024-04-16T20:19:33Z'''
                numberOfLogins: 161
              - loginId: EDIUSER1
                firstName: EDI
                lastName: User
                email: email_575258@examen.com
                numberOfLogins: 1
              - loginId: swiftapi
                firstName: Rob
                lastName: Swift
                email: email_590587@examen.com
                numberOfLogins: 0
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_GetUserLoginAudit'
              examples:
                Division does not exists:
                  description: Division does not exists
                  value:
                    messages:
                    - code: DIVISION_DOES_NOT_EXIST_FOR_CLIENT
                      type: ERROR
                      field: divisionName
                      value: alpha
                      message: Division with name alpha does not exist
                    action: NO_ACTION
                Office does not exists:
                  description: Office does not exists
                  value:
                    messages:
                    - code: CLIENT_OFFICE_NOT_FOUND
                      type: ERROR
                      field: officeName
                      value: beta
                      message: Client Office beta does not exist for the client
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo_GetUserLoginAudit'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_GetUserLoginAudit'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /user:
    get:
      tags:
      - User
      summary: Returns a user by Login ID or SSO ID
      description: Returns a user by `LOGIN_ID` or `SSO_ID`.
      operationId: getUser
      parameters:
      - name: searchFilter
        in: query
        description: Field to filter by
        required: true
        schema:
          type: string
          enum:
          - LOGIN_ID
          - SSO_ID
        example: LOGIN_ID
      - name: value
        in: query
        description: Value of the chosen `searchFilter`
        required: true
        schema:
          type: string
        example: smithx
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/User_GetUser'
              example:
                userRef: c0xyRUh5WTM1YUVFyyyyyyyyUklYUT09
                ssoId: TEST_SSOID
                loginId: TEST_LOGIN1
                firstName: TEST
                lastName: Admin
                userType: CLIENT_INDIVIDUAL
                email: nobody@examen.com
                active: true
                address:
                  line1: 111 Raleigh dr
                  city: Raleigh
                  state: NC
                  country: US
                  zip: "99999"
                  phoneNum: "3456787878"
                  phoneExt: "8991"
                divisions:
                - Test Division 1
                offices:
                - Test Office 1
                - Test Surety Office 1
                - Division 2 Office 1
        "404":
          description: Not Found
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_GetUser'
              example:
                messages:
                - code: USER_DOES_NOT_EXIST
                  type: ERROR
                  field: userSearchValue
                  value: mississippi
                  message: User does not exist.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo_GetUser'
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError_GetUser'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
  /workIntake/locations/{locationName}:
    post:
      tags:
      - Work Intake
      summary: Creates a new work intake location
      description: Creates a new work intake location.
      operationId: addLocation
      parameters:
      - name: locationName
        in: path
        description: Location name that needs to be created.
        required: true
        schema:
          maxLength: 255
          type: string
        example: New Work Intake Location
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LocationCreateResponse'
              example:
                action: CREATED
                locationGuid: BDA12AC5-6530-41C1-A23D-5DA8C4145D20
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: field name
                  value: field value
                  message: Error message
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /workIntake/{workIntakeGuid}/close:
    put:
      tags:
      - Work Intake
      summary: Updates a work intake to closed
      description: Updates a work intake to closed based on the work intake guid.
      operationId: closeWorkIntake
      parameters:
      - name: workIntakeGuid
        in: path
        description: Unique identifier for the work intake. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 64ECE0D1-634F-4F02-9657-A7A587CECD60
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ClosedResponse'
              example:
                action: CLOSED
                workIntakeGuid: 01803A4B-F6E7-4E8D-BBE2-9AC096189CBE
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Work intake not found:
                  description: Work intake not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Work Intake GUID is Invalid.
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /workIntake:
    put:
      tags:
      - Work Intake
      summary: Updates a work intake
      description: Updates a work intake.
      operationId: updateWorkIntakeBasicInfo
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/WorkIntake'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/UpdateResponse'
              example:
                action: UPDATED
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: field name
                  value: field value
                  message: Error message
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Work Intake
      summary: Creates a new work intake
      description: Creates a new work intake.
      operationId: createIntake
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/WorkIntake'
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/WorkIntakeCreateResponse'
              example:
                action: CREATED
                intakeGuid: BDA12AC5-6530-41C1-A23D-5DA8C4145D20
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: field name
                  value: field value
                  message: Error message
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /workIntake/requestType:
    put:
      tags:
      - Work Intake
      summary: Updates a work intake request type
      description: Updates a work intake request type.
      operationId: updateRequestType
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/WorkIntakeRequestType'
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/UpdateResponse'
              example:
                action: UPDATED
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: field name
                  value: field value
                  message: Error message
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    post:
      tags:
      - Work Intake
      summary: Creates a work intake request type
      description: Creates a work intake request type.
      operationId: createIntakeRequestType
      requestBody:
        content:
          application/vnd.cl.int.api.v1.0.0+json:
            schema:
              $ref: '#/components/schemas/WorkIntakeRequestType'
      responses:
        "201":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/WorkIntakeRequestTypeCreateResponse'
              example:
                action: CREATED
                requestTypeGuid: BDA12AC5-6530-41C1-A23D-5DA8C4145D20
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: VALIDATION_ERROR
                  type: ERROR
                  field: field name
                  value: field value
                  message: Error message
                action: NO_ACTION
        "400":
          description: Bad Request
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/NotificationError'
              example:
                messages:
                - code: BAD_REQUEST
                  type: ERROR
                  message: Error message.
                action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /workIntake/{workIntakeGuid}:
    get:
      tags:
      - Work Intake
      summary: Returns work intake
      description: Returns work intake based on the work intake guid.
      operationId: getWorkIntakeByGuid
      parameters:
      - name: workIntakeGuid
        in: path
        required: true
        schema:
          type: string
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/WorkIntake'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Work Intake is not enabled for client:
                  description: Work Intake is not enabled for client
                  value:
                    messages:
                    - code: WORK_INTAKE_NOT_ENABLED
                      type: ERROR
                      message: Work Intake is not enabled for client
                    action: NO_ACTION
                Work intake not found:
                  description: Work intake not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Work Intake GUID is Invalid.
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
    delete:
      tags:
      - Work Intake
      summary: Deletes a work intake
      description: Deletes a work intake based on the work intake guid.
      operationId: deleteWorkIntake
      parameters:
      - name: workIntakeGuid
        in: path
        description: Unique identifier for the work intake. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 64ECE0D1-634F-4F02-9657-A7A587CECD60
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
              example:
                action: DELETED
                workIntakeGuid: 01803A4B-F6E7-4E8D-BBE2-9AC096189CBE
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Work intake not found:
                  description: Work intake not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Work Intake GUID is Invalid.
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /workIntake/locations:
    get:
      tags:
      - Work Intake
      summary: Returns a list of work intake locations
      description: Returns a list of work intake locations.
      operationId: getLocations
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Location'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Work Intake is not enabled for client:
                  description: Work Intake is not enabled for client
                  value:
                    messages:
                    - code: WORK_INTAKE_NOT_ENABLED
                      type: ERROR
                      message: Work Intake is not enabled for client
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /workIntake/requestTypes:
    get:
      tags:
      - Work Intake
      summary: Returns a list of work intake request types
      description: Returns a list of work intake request types.
      operationId: getRequestTypes
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WorkIntakeRequestType'
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Work Intake is not enabled for client:
                  description: Work Intake is not enabled for client
                  value:
                    messages:
                    - code: WORK_INTAKE_NOT_ENABLED
                      type: ERROR
                      message: Work Intake is not enabled for client
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
  /workIntake/{workIntakeGuid}/reOpen:
    put:
      tags:
      - Work Intake
      summary: Updates a closed work intake to open
      description: Updates a closed work intake to open based on the work intake guid.
      operationId: reOpenWorkIntake
      parameters:
      - name: workIntakeGuid
        in: path
        description: Unique identifier for the work intake. This field is case sensitive.
        required: true
        schema:
          maxLength: 36
          minLength: 36
          type: string
          format: uuid
        example: 64ECE0D1-634F-4F02-9657-A7A587CECD60
      responses:
        "200":
          description: Success
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ReOpenResponse'
              example:
                action: REOPENED
                workIntakeGuid: 01803A4B-F6E7-4E8D-BBE2-9AC096189CBE
        "422":
          description: Validation Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ValidationError'
              examples:
                Work intake not found:
                  description: Work intake not found
                  value:
                    messages:
                    - code: VALIDATION_ERROR
                      type: ERROR
                      field: matterGuid
                      message: Work Intake GUID is Invalid.
                    action: NO_ACTION
        "500":
          description: Internal Server Error
          content:
            application/vnd.cl.int.api.v1.0.0+json:
              schema:
                $ref: '#/components/schemas/ServerErrorInfo'
components:
  schemas:
    Message:
      type: object
      properties:
        code:
          type: string
          description: Code associated with the message
          example: VALIDATION_ERROR
          enum:
          - VALIDATION_ERROR
          - UCDF_FIELDNAME_NOT_FOUND
          - UCDF_VALUE_NOT_FOUND
          - NO_UCDFS_FOUND
          - UCDF_DATATYPE_INCORRECT
          - UCDF_OPTION_VALUE_NOT_FOUND
          - UCDF_MULTI_OPTIONS_NOT_SUPPORTED
          - UCDF_OPERATION_NOT_SUPPORTED
          - UCDF_MULTI_OPTIONS_ONLY_SUPPORTED
          - INVALID_CURRENCY
          - MATTER_SAVE_ERROR
          - MATTER_NUMBER_NOT_FOUND
          - MATTER_NUMBER_REQUIRED
          - MATTER_GUID_NOT_FOUND
          - MATTER_ID_NOT_FOUND
          - MATTER_NUMBER_NOT_UNIQUE
          - MATTER_NUMBER_ALREADY_EXISTS
          - SSO_ID_NOT_FOUND
          - LOGIN_ID_NOT_FOUND
          - CREATED_DATE_AFTER_CLOSED_DATE
          - ENTITY_ROLE_ERROR
          - ENTITY_ID_NOT_FOUND
          - INVALID_CLIENT
          - CONTACT_OFFICE_NOT_FOUND
          - CLIENT_OFFICE_NOT_FOUND
          - FEE_STRUCTURE_NAME_NOT_UNIQUE
          - FEE_STRUCTURE_NAME_NOT_FOUND
          - FEE_STRUCTURE_NODE_NOT_FOUND
          - UCDF_DATE_FORMAT_ERROR
          - UCDF_NUMERIC_FORMAT_ERROR
          - UCDF_PERCENTAGE_FORMAT_ERROR
          - UCDF_MONEY_FORMAT_ERROR
          - UCDF_TABLE_NOT_FOUND
          - UCDF_TABLE_NAME_INCONSISTENT
          - UCDF_TABLE_ROWS_EXCEED_MAXIMUM_ROWS
          - UCDF_TABLE_ROW_NO_INFO
          - UCDF_TABLE_ROW_NOT_DELETED
          - UCDF_TABLE_ROW_NOT_UPDATED
          - UCDF_TABLE_ROW_REF_IGNORED
          - PAYMENT_NOT_ADDED
          - VENDOR_ID_FIELD_NOT_CONFIGURED
          - NO_LAWFIRM_OFFICE_ASSIGNED_TO_VENDOR
          - MULTIPLE_LFO_ASSIGNED_TO_VENDOR_ID
          - ACTIVE_FEE_OFFER_NOT_FOUND
          - INVOICE_NOT_FOUND
          - INVOICE_NOT_APPROVED
          - INVOICE_NUMBER_NOT_UNIQUE
          - WORKFLOW_ID_NOT_FOUND
          - RULESET_ID_NOT_FOUND
          - INVALID_ALLOCATION
          - UNABLE_TO_ASSIGN_LF
          - PAYMENT_REFERENCE_EXISTS_WITH_DIFFERENT_DATE
          - PAYMENT_REFERENCE_EXISTS_FOR_INVOICE_NUMBER
          - DUPLICATE_PAYMENT
          - PAYMENT_DATE_NOT_PROVIDED
          - PAYMENT_AMOUNT_NOT_PROVIDED
          - PAYMENT_CURRENCY_NOT_PROVIDED
          - PAYMENT_REFERENCE_NOT_PROVIDED
          - PAYMENT_REFERENCE_CURRENCY_NOT_MATCHING
          - BATCH_IN_PROGRESS
          - CLIENT_ID_INVALID
          - PAGE_NUMBER_INVALID
          - BATCH_ID_INVALID
          - BATCH_CANNOT_BE_CREATED
          - ECA_ID_REQUIRED
          - ECA_GROUP_REQUIRED
          - PAGE_SIZE_INVALID
          - DEFAULT_PAGE_SIZE_USED
          - FEE_STRUCTURE_REQUIRED
          - FEE_OFFER_REQUIRED
          - MATTER_ALREADY_ASSIGNED_TO_LAW_FIRM
          - LAW_FIRM_CANNOT_BE_ASSIGNED
          - MATTER_TYPE_GUID_NOT_FOUND
          - LAW_FIRM_OFFICE_NOT_FOUND
          - LAW_FIRM_NOT_FOUND
          - MATTER_ASSIGNMENT_REF_REQUIRED
          - MATTER_ASSIGNMENT_REF_IGNORED
          - MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
          - VENDOR_ID_CHANGE_IGNORED
          - FEE_STRUCTURE_ID_CHANGE_IGNORED
          - VENDOR_ID_OR_LAW_FIRM_OFFICE_ID_REQUIRED
          - VENDOR_ID_REQUIRED
          - FEE_STRUCTURE_ID_REQUIRED
          - UNABLE_TO_PERFORM_FEE_STRUCTURE_CHANGE
          - NO_ACTIVE_FEE_OFFERS_FOUND
          - PENDING_BILLS_ON_FEE_STRUCTURE
          - LAW_FIRM_ASSIGNMENT_UNACCEPTED
          - UNABLE_TO_PERFORM_FEE_OFFER_CHANGE
          - UCDF_SAVE_ERROR
          - MATTER_CHANGE_CONFIGURATION
          - OFFER_RATE_INVALID
          - FEE_STRUCTURE_CANNOT_BE_CHANGED
          - INVOICE_NOT_FOUND_FOR_CLIENT
          - INVALID_REFERENCE
          - INVOICE_CHARGES_NOT_PROVIDED
          - INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
          - INVOICE_CHARGE_ADJUSTMENT_NOT_FOUND_FOR_CLIENT
          - OPERATION_NOT_SUPPORTED
          - CURRENCY_CANNOT_BE_CHANGED
          - MATTER_ASSIGNMENT_REF_INVALID
          - INVALID_CURSOR
          - DATE_FORMAT_EXCEPTION
          - UNABLE_TO_RETRIEVE_APPROVED_EVENT
          - UNAPPROVED_EVENT
          - EVENT_NOT_FOUND
          - USER_NOT_FOUND
          - REASON_DESCRIPTION_REQUIRED
          - CURRENCY_CODE_REQUIRED
          - CLIENT_GUID_DOES_NOT_EXIST
          - DIVISION_GUID_DOES_NOT_EXIST
          - ENTITY_NOT_FOUND
          - DIVISION_DOES_NOT_EXIST_FOR_CLIENT
          - UNABLE_TO_ADD_CLIENT_DIVISION
          - USER_NOT_ALLOWED
          - INVALID_GUID
          - UNABLE_TO_RETRIEVE_FEE_OFFER_DETAIL
          - MATTER_TYPE_REQUIRED
          - FEE_STRUCTURE_ID_NOT_FOUND
          - MATTER_CANNOT_BE_DELETED
          - PAPER_PROCESSING_BILLER_TYPE_NOT_FOUND
          - MATTER_NOT_FOUND
          - LAW_FIRM_DOES_NOT_EXIST
          - LAW_FIRM_OFFICE_ID_NOT_FOUND
          - LAW_FIRM_ASSIGNED_NOT_ACTIVE_FOR_MATTER
          - BAD_REQUEST
          - LAWFIRM_OFFICE_HAS_DECLINED_NEW_ASSIGNMENTS
          - COUNSEL_TYPE_NOT_FOUND
          - DUPLICATE_ACCESS_KEY
          - INVALID_ACCESS_KEY
          - INVALID_SECRET_KEY
          - CONTACT_NOT_FOUND
          - CONTACT_NOT_DELETED
          - CONTACT_ASSOCIATED_TO_MATTER_LEGALHOLD
          - CONTACT_CREATED
          - CONTACT_UPDATED
          - PARTICIPANT_ROLE_NOT_FOUND
          - MATTER_PARTICIPANT_ALREADY_EXISTS
          - MATTER_PARTICIPANT_NOT_FOUND
          - MATTER_PARTICIPANT_NOT_DELETED
          - INVALID_EMAIL
          - INVALID_DATE_OF_BIRTH
          - DUPLICATE_ENTITY
          - CANNOT_CREATE_CONTACT
          - USER_DOES_NOT_EXIST
          - DOCUMENT_NOT_FOUND
          - DOCUMENT_NOT_DOWNLOADABLE
          - DOCUMENT_ID_IS_REQUIRED
          - FEE_STRUCTURE_ID_VALID_FOR_OFFICE
          - FEE_STRUCTURE_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - WORKFLOW_ID_VALID_FOR_OFFICE
          - WORKFLOW_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - RULESET_ID_VALID_FOR_OFFICE
          - RULESET_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - INCORRECT_CLIENT_ENTITY_ID
          - MCR_INVALID_EFFECTIVE_DATE
          - MCR_INVALID_FEE_STRUCTURE_EFFECTIVE_DATE
          - LFO_RELATIONSHIP_NOT_FOUND
          - MATTER_TYPE_CONFIG_NOT_ENABLED
          - UCDF_CONFIGURATION_NOT_FOUND_FOR_FIELD
          - MATTER_TYPE_NOT_EXIST_IN_OFFICE
          - MATTER_ASSIGNMENT_NOT_FOUND
          - DISPLAY_ASSIGNING_OFFICE_DURING_MATTER_SETUP_CONFIG_NOT_SET
          - ASSIGNING_OFFICE_IS_REQUIRED_DURING_MATTER_SETUP
          - MATTER_ASSIGNING_OFFICE_ERROR
          - FAST_TRACK_INACTIVE
          - LAW_FIRM_INVOICE_NUMBER_NOT_UNIQUE
          - RELATED_MATTER_ERROR
          - PENDING_INVOICE_ERROR
          - SERVICE_UNAVAILABLE_ERROR
          - FORBIDDEN_ENDPOINT
          - CHARGE_ADJUSTMENT_ERROR
          - CHARGE_NUMBER_NOT_FOUND
          - CHARGE_NUMBER_NOT_ASSOCIATED_WITH_ADJUSTMENT_CHARGE_NUMBER
          - RULE_CODE_INVALID
          - TAX_SUMMARY_ERROR
          - INTAKE_GUID_NOT_FOUND
        type:
          type: string
          description: Type of message
          example: INFO
          enum:
          - INFO
          - WARN
          - ERROR
        field:
          type: string
          description: The field pertaining to the message
          example: divisionName
        value:
          type: string
          description: The value of the field pertaining to the message
          example: West Division
        message:
          type: string
          description: A message is sometimes provided when the code is not sufficient
            to troubleshoot the issue
          example: Division with name West Division does not exist
        values:
          type: array
          items:
            type: string
    NotificationError:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
    ServerErrorInfo:
      type: object
      properties:
        rid:
          maxLength: 36
          minLength: 36
          type: string
          description: Request ID
          example: aa33d504-9ace-4ba4-9796-86b3bc7aa52f
        info:
          type: string
          description: Additional information about the error
          example: Request ID (rid) and message values helps in debugging. Please
            provide these when contacting support about the error!
        message:
          type: string
          description: Error Message
          example: Unexpected error occurred. Request ID = aa33d504-9ace-4ba4-9796-86b3bc7aa52f
    BudgetEventResponse:
      type: object
      properties:
        budgetGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Budget GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        matterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter GUID
          format: uuid
          example: b7612a08-a0a1-4096-9b71-11ec22b2be0e
        eventDate:
          type: string
          description: Date and time of the event
          format: date-time
        eventId:
          maxLength: 6
          type: string
          description: Event ID
          example: BUDCRE
        eventDescription:
          maxLength: 255
          type: string
          description: Event Description
          example: Budget Created
        eventGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Event GUID
          format: uuid
        fiscalYearGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Fiscal Year GUID
          format: uuid
          example: 55efe674-0773-4e6f-91e4-ef7c260b3bf7
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The unique reference number to identify the user related to
            the event
          example: YE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
    DateRangeCursorInfo:
      type: object
      properties:
        startDate:
          type: string
          description: The start date and time of the cursor content
          format: date-time
        endDate:
          type: string
          description: The end date and time of the cursor content
          format: date-time
        availableCount:
          maxLength: 11
          minLength: 1
          type: integer
          description: "The # of items available for the selection criteria"
          format: int64
          example: 134
      description: Provides information about the cursor
    GetBudgetEventHistoryResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/BudgetEventResponse'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    BudgetFinancials:
      type: object
      properties:
        budgetGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Budget GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        matterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        currentAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Current Amount
          format: double
          example: 1000000
        actualAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Actual Amount
          format: double
          example: 1000000
        percentage:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Budget Percentage
          format: double
          example: 1000000
        originalAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Original Amount
          format: double
          example: 1000000
        remainingAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Total Remaining Amount (Current Amount - Actual Amount)
          format: double
          example: 1000000
        budgetPeriodAmounts:
          type: array
          items:
            $ref: '#/components/schemas/BudgetPeriodAmount'
    BudgetPeriodAmount:
      type: object
      properties:
        startDate:
          type: string
          description: Start Date
          format: date-time
        endDate:
          type: string
          description: End Date
          format: date-time
        periodNumber:
          type: integer
          description: Period Number
          format: int32
        lawFirmOfficeGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Law Firm Office GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        budgetPeriodDetailType:
          maxLength: 255
          type: string
          description: Budget Period Detail Type
          example: FEES
          enum:
          - "SUMMARY, FEES, EXPENSES, CUSTOM_CODE_SET"
        originalAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Original Amount
          format: double
          example: 1000000
        currentAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Current Amount
          format: double
          example: 1000000
        actualAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Actual Amount
          format: double
          example: 1000000
        remainingAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Total Remaining Amount (Current Amount - Actual Amount)
          format: double
          example: 1000000
        status:
          maxLength: 255
          type: string
          description: Budget status
          example: PENDING_APPROVAL
          enum:
          - "ACTIVE, APPROVED, DECLINED, DELETED, PENDING_APPROVAL, PENDING_SECOND_APPROVAL,\
            \ PENDING_BUDGET_CLIENT, PENDING_BUDGET_LAWFIRM, NOT_REQUESTED, NOT_ENTERED,\
            \ HISTORY_BUDGET, PERIOD_PENDING_APPROVAL, PERIOD_EDIT, CLOSED"
        statusDate:
          type: string
          description: Status Date
          format: date-time
        commentType:
          maxLength: 255
          type: string
          description: Comment Type
          example: PUBLIC
          enum:
          - "PUBLIC, INTERNAL, SHARED"
        comment:
          maxLength: 255
          type: string
          description: Comment
        keyMatterAssumptions:
          maxLength: 255
          type: string
          description: Key Matter
        lawFirmOfficeStatus:
          maxLength: 255
          type: string
          description: Law Firm Office status
          example: PERIOD_PENDING_APPROVAL
          enum:
          - "ACTIVE, APPROVED, DECLINED, DELETED, PENDING_APPROVAL, PENDING_SECOND_APPROVAL,\
            \ PENDING_BUDGET_CLIENT, PENDING_BUDGET_LAWFIRM, NOT_REQUESTED, NOT_ENTERED,\
            \ HISTORY_BUDGET, PERIOD_PENDING_APPROVAL, PERIOD_EDIT, CLOSED"
        budgetCode:
          maxLength: 255
          type: string
          description: Budget Code
          example: E119
        budgetCodeDescription:
          maxLength: 255
          type: string
          description: Budget Code Description
          example: Court Fees
        parentBillingCode:
          maxLength: 255
          type: string
          description: Parent Billing Code
          example: E119
        parentBillingCodeDescription:
          maxLength: 255
          type: string
          description: Parent Billing Code Description
          example: Expenses
        timeframe:
          maxLength: 40
          type: string
          description: Timeframe
        assumptions:
          maxLength: 1024
          type: string
          description: Assumptions
        timekeeperId:
          maxLength: 11
          type: number
          description: Timekeeper ID
        timekeeperName:
          maxLength: 255
          type: string
          description: Timekeeper Name
        hours:
          multipleOf: 0.00010
          maxLength: 10
          type: number
          description: Timekeeper hours
          format: double
          example: 10.2
        rate:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Timekeeper rate
          format: double
          example: 100.001
        budgetPeriodAssumptions:
          maxLength: 1024
          type: string
          description: Budget Period Assumptions
    BudgetTemplate:
      type: object
      properties:
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Budget Template GUID
          format: uuid
          example: 5c4f1708-9eaa-4f29-86a1-9471faa82225
        name:
          maxLength: 255
          type: string
          description: Budget Name
          example: Budget Template Office level 1
        description:
          maxLength: 255
          type: string
          description: Budget Description
          example: LawFirm Budget - matter
    BudgetTemplateResponse:
      type: object
      properties:
        budgetTemplates:
          type: array
          items:
            $ref: '#/components/schemas/BudgetTemplate'
    AdjustmentDetails:
      type: object
      properties:
        adjustmentCalculation:
          maxLength: 32
          type: string
          description: Indicates if the adjustment was taken by a 'reduce' action
            or a 'pay' action
          example: pay
        adjustmentStatus:
          maxLength: 255
          type: string
          description: Status of the adjustment
          example: Charge Adjustment
          enum:
          - "Charge Adjustment, Charge Flag, Return invoice, Charge Adjustment Accepted\
            \ by Law Firm, Charge Adjustment Acquiesced by Law Firm, Charge Adjustment\
            \ Appeal Accepted by Client (Adjustment amount reduced to 0.00), Charge\
            \ Adjustment In Dispute, Deleted Adjustment or Flag, Charge Adjustment\
            \ and return invoice"
        actionType:
          maxLength: 255
          type: string
          description: The last type of action taken on the adjustment
          example: add
          enum:
          - "add, edit, recalc"
        adjustmentOn:
          maxLength: 255
          type: string
          description: Entities pertaining to the adjustment
          example: units_and_unit_price
          enum:
          - "units, unit_price, units_and_unit_price"
        date:
          type: string
          description: Date of the last modification to the adjustment
          format: date-time
        initialUnits:
          multipleOf: 0.00000000000010
          maxLength: 19
          type: number
          description: Units prior to the adjustment
          format: double
          example: 10
        initialRate:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Rate prior to the adjustment
          format: double
          example: 10
        currentUnits:
          multipleOf: 0.00000000000010
          maxLength: 19
          type: number
          description: Adjusted units
          format: double
          example: 10
        currentRate:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Adjusted rate
          format: double
          example: 10
        amount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Adjusted amount
          format: double
          example: 10
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Identifier of the last user who took action on the adjustment
          example: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
    ChargeAdjHistoryResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        actions:
          type: array
          items:
            $ref: '#/components/schemas/AdjustmentDetails'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    ChargeTaxGroupItem:
      type: object
      properties:
        type:
          type: string
          description: The Type of Tax applied
          example: Excise Tax
        amount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Amount applied
          format: double
          example: 10
        rate:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Rate applied
          format: double
          example: 0.5
        taxCode:
          type: string
          description: The identifier for Tax Type
          example: EXCISE
        withholdTax:
          type: boolean
          description: Tax consist of Withhold Tax or not
          example: false
    InvoiceChargeTaxResponse:
      type: object
      properties:
        type:
          type: string
          description: The Type of Tax applied
          example: Excise Tax
        taxAlias:
          type: string
          description: The Tax Alias for Tax applied
          example: GST-US
        amount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Amount applied
          format: double
          example: 20
        rate:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Rate applied
          format: double
          example: 0.5
        taxCode:
          type: string
          description: The identifier for Tax Type
          example: EXCISE
        withholdTax:
          type: boolean
          description: Tax consist of Withhold Tax or not
          example: false
        taxDescription:
          maxLength: 255
          type: string
          description: Description of the Tax
          example: Tax Description
        taxLawFirmId:
          maxLength: 15
          minLength: 1
          type: string
          description: The identifier Tax Id of Law Firm
          example: "1234"
        taxLawFirmOfficeId:
          maxLength: 15
          minLength: 1
          type: string
          description: The identifier Tax Id of Law Firm Office
          example: "348512"
        taxCountry:
          type: string
          description: Taxing Country
          example: US
        taxStateProvince:
          type: string
          description: Taxing State/Province
          example: MA
        taxOnTax:
          type: integer
          description: The Tax applied on Tax
          format: int64
          example: 2971
        taxHarmonized:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Tax Harmonized Rate when Tax on Tax is applied
          format: double
          example: 0.5
        taxGroupItems:
          type: string
          description: The Tax Items in the Tax Group
          example: ACTTAX + HST + OTHER + GSTTPS
        taxItems:
          type: array
          items:
            $ref: '#/components/schemas/ChargeTaxGroupItem'
    ChargeTax:
      type: object
      properties:
        type:
          type: string
          description: The Type of Tax applied
          example: Excise Tax
        taxAlias:
          type: string
          description: The Tax Alias for Tax applied
          example: GST-US
        amount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Amount applied
          format: double
          example: 20
        rate:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Rate applied
          format: double
          example: 0.5
        taxCode:
          type: string
          description: The identifier for Tax Type
          example: EXCISE
        withholdTax:
          type: boolean
          description: Tax consist of Withhold Tax or not
          example: false
        taxDescription:
          maxLength: 255
          type: string
          description: Description of the Tax
          example: Tax Description
        taxLawFirmId:
          maxLength: 15
          minLength: 1
          type: string
          description: The identifier Tax Id of Law Firm
          example: "1234"
        taxLawFirmOfficeId:
          maxLength: 15
          minLength: 1
          type: string
          description: The identifier Tax Id of Law Firm Office
          example: "348512"
        taxCountry:
          type: string
          description: Taxing Country
          example: US
        taxStateProvince:
          type: string
          description: Taxing State/Province
          example: MA
        taxOnTax:
          type: integer
          description: The Tax applied on Tax
          format: int64
          example: 2971
        taxHarmonized:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Tax Harmonized Rate when Tax on Tax is applied
          format: double
          example: 0.5
        taxGroupItems:
          type: string
          description: The Tax Items in the Tax Group
          example: ACTTAX + HST + OTHER + GSTTPS
        taxItems:
          type: array
          items:
            $ref: '#/components/schemas/ChargeTaxGroupItem'
    ChargeTaxResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        tax:
          $ref: '#/components/schemas/ChargeTax'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    ValidationError:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    Address:
      type: object
      properties:
        line1:
          maxLength: 255
          type: string
          description: Address Line 1
          example: Apt 234
        line2:
          maxLength: 255
          type: string
          description: Address Line 2
          example: 16 Whitemark Ln
        line3:
          maxLength: 255
          type: string
          description: Address Line 3
          example: Suite 3
        city:
          maxLength: 255
          type: string
          description: City
          example: Atlanta
        state:
          maxLength: 40
          type: string
          description: State
          example: GA
        country:
          maxLength: 2
          type: string
          description: Country Code
          example: US
        zip:
          maxLength: 20
          type: string
          description: Zip Code
          example: "30092"
        faxNum:
          maxLength: 30
          type: string
          description: FAX Number
          example: 404-555-1212
        phoneNum:
          maxLength: 30
          type: string
          description: Phone Number
          example: 404-555-1212
        phoneExt:
          maxLength: 6
          type: string
          description: Phone Extension
          example: "5555"
    AllocationContact:
      required:
      - allocationContactId
      - id
      - name
      type: object
      properties:
        id:
          maxLength: 11
          type: integer
          description: Unique identifier for the allocation contact. Required for
            PUT. All other fields except this field can be changed. Ignored for POST
          format: int64
          example: 10183
        name:
          maxLength: 255
          type: string
          description: Name of the allocation contact. Required for POST
          example: Craig R Brown
        allocationContactId:
          maxLength: 128
          minLength: 1
          type: string
          description: Allocation contact identifier. Required for POST
          example: Facility-Group A-Section 3-1245
        status:
          type: string
          description: "Status of the allocation contact. If nothing is passed, then\
            \ allocation contact is created in the 'Inactive' state"
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        emailAddress:
          maxLength: 255
          type: string
          description: Email address
          example: test123@yahoo.com
        allocationLimit:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Limit / maximum amount of the allocation
          format: double
          example: 12.59
        wastingLimit:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Limit / maximum amount of the wasting
          format: double
          example: 0.0
        insuredIndemnityPaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of insured indemnity paid
          format: double
          example: 29220.5
        insuredExpensePaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of insured expense paid
          format: double
          example: 6000.0
        excludeInsuredIndemnityPaidFromLimit:
          maxLength: 1
          type: string
          description: Exclusion indicator for Insured (Y/N)
          example: "N"
        clientIndemnityPaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of the client's indemnity paid
          format: double
          example: 12.59
        clientExpensePaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of the client's expense paid
          format: double
          example: 500.0
        excludeCorporateIndemnityPaidFromLimit:
          maxLength: 1
          type: string
          description: Exclusion indicator for Client (Y/N)
          example: "N"
        sharedContactIndicator:
          maxLength: 1
          type: string
          description: Shared Contact Indicator (Y/N)
          example: "N"
        currencyId:
          maxLength: 3
          minLength: 3
          type: string
          description: Three letter ISO code for the currency
          example: USD
        responsibleParty:
          maxLength: 255
          type: string
          description: Party (entity) responsible for the allocation
          example: Mark Enterprise
        address:
          $ref: '#/components/schemas/Address'
    ClientResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    Contact:
      required:
      - email
      - id
      - recordId
      type: object
      properties:
        id:
          maxLength: 9
          type: integer
          description: CounselLink unique identifier for a contact. Required only
            for PUT and will be omitted for POST
          format: int64
          example: 13251336
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: 'Unique system generated identifier for the contact. Returned
            with GET but not required for POST/PUT '
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        displayName:
          maxLength: 255
          type: string
          description: Contact display name
          example: "Mr. Rod, Alex Hart Jr."
        email:
          maxLength: 255
          type: string
          description: "Contact's email address, unique across all contacts. Required\
            \ for POST"
          example: alex@gmail.com
        status:
          maxLength: 9
          type: string
          description: Status of the contact
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        terminated:
          type: boolean
          description: Employment status of the contact
          example: true
        title:
          maxLength: 255
          type: string
          description: Profession title and / or label used by the contact
          example: Attorney
        recordId:
          maxLength: 120
          type: string
          description: ID or user name in the system external to CounselLink for this
            contact. This field serves as the key field for contacts and must be unique
            across all contacts. Required for POST
          example: REC22-0413240115657
        city:
          maxLength: 255
          type: string
          description: City of the contact's office address
          example: Raleigh
        firstName:
          maxLength: 255
          type: string
          description: First name of the contact
          example: Alex
        businessName:
          maxLength: 255
          type: string
          description: Name of the business that's associated with the contact
          example: AR
        lastName:
          maxLength: 255
          type: string
          description: Last name of the contact
          example: Rod
        phones:
          type: array
          description: Contact's phone number(s)
          items:
            $ref: '#/components/schemas/ContactPhone'
        contactTypes:
          type: array
          description: 'Type(s) of the contact. Must match to a valid Contact Type
            in CounselLink '
          example:
          - Individual
          items:
            type: string
            description: 'Type(s) of the contact. Must match to a valid Contact Type
              in CounselLink '
            example: "[\"Individual\"]"
        middleName:
          maxLength: 255
          type: string
          description: Middle name of the contact
          example: Hart
        prefix:
          maxLength: 4
          type: string
          description: Preceding lettering to the contact name
          example: Mr.
          enum:
          - Dr.
          - Mr.
          - Mrs.
          - Ms.
          - Hon.
        suffix:
          maxLength: 4
          type: string
          description: Appended lettering to the contact name
          example: Jr.
          enum:
          - Jr.
          - Sr.
          - Esq.
        businessUnit:
          maxLength: 255
          type: string
          description: Name of the business unit
          example: US
        manager:
          maxLength: 255
          type: string
          description: Name of the manager of the business unit
          example: ASD
        address:
          maxLength: 255
          type: string
          description: Contact's office address
          example: 111 Hart Road Rd.
        country:
          maxLength: 2
          type: string
          description: "Country of the contact's office address, should map to 2 character\
            \ ISO code"
          example: US
        state:
          maxLength: 2
          type: string
          description: "State of the contact's office address, should map to 2 character\
            \ ISO code"
          example: NC
        postalCode:
          maxLength: 20
          type: string
          description: Postal code of the contact's office address
          example: "27571"
        dateOfBirth:
          type: string
          description: Contact's date of birth
          format: date-time
        description:
          maxLength: 255
          type: string
          description: Textual Notes on Contact
          example: New Contact for Alex
        alternate:
          maxLength: 255
          type: string
          description: Alternative name(s) as used by the contact
          example: Hart
        isEditRestricted:
          type: boolean
          description: "When true, contact information in CounselLink can be edited\
            \ only by individuals with the Contact Admin role"
          example: true
        contactGroupIds:
          type: array
          description: List of group identifiers that the contact is a part of
          example:
          - "23"
          items:
            type: integer
            description: List of group identifiers that the contact is a part of
            format: int64
        lawFirmOfficeId:
          maxLength: 11
          type: integer
          description: "Law firm office identifier. This field is for clients who\
            \ sync their contacts with their firms, not commonly used"
          format: int64
          example: 342545
        paymentCurrency:
          maxLength: 3
          type: string
          description: The currency used for the payment
          example: USD
    ContactPhone:
      type: object
      properties:
        phoneType:
          maxLength: 32
          type: string
          description: The type of phone used by the contact
          example: PHONE
          enum:
          - PHONE
          - ALTERNATE
          - BUSINESS
          - MOBILE
          - FAX
          - PERSONAL
        phoneNumber:
          maxLength: 255
          type: string
          description: The phone number for the contact
          example: (555)555-5555
      description: Contact's phone number(s)
    GetAllocationContact:
      required:
      - allocationContactId
      - id
      - name
      type: object
      properties:
        id:
          maxLength: 11
          type: integer
          description: Unique identifier for the allocation contact. Required for
            PUT. All other fields except this field can be changed. Ignored for POST
          format: int64
          example: 10183
        name:
          maxLength: 255
          type: string
          description: Name of the allocation contact. Required for POST
          example: Craig R Brown
        allocationContactId:
          maxLength: 128
          minLength: 1
          type: string
          description: Allocation contact identifier. Required for POST
          example: Facility-Group A-Section 3-1245
        status:
          type: string
          description: "Status of the allocation contact. If nothing is passed, then\
            \ allocation contact is created in the 'Inactive' state"
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        emailAddress:
          maxLength: 255
          type: string
          description: Email address
          example: test123@yahoo.com
        allocationLimit:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Limit / maximum amount of the allocation
          format: double
          example: 12.59
        wastingLimit:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Limit / maximum amount of the wasting
          format: double
          example: 0.0
        insuredIndemnityPaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of insured indemnity paid
          format: double
          example: 29220.5
        insuredExpensePaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of insured expense paid
          format: double
          example: 6000.0
        excludeInsuredIndemnityPaidFromLimit:
          maxLength: 1
          type: string
          description: Exclusion indicator for Insured (Y/N)
          example: "N"
        clientIndemnityPaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of the client's indemnity paid
          format: double
          example: 12.59
        clientExpensePaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of the client's expense paid
          format: double
          example: 500.0
        excludeCorporateIndemnityPaidFromLimit:
          maxLength: 1
          type: string
          description: Exclusion indicator for Client (Y/N)
          example: "N"
        sharedContactIndicator:
          maxLength: 1
          type: string
          description: Shared Contact Indicator (Y/N)
          example: "N"
        currencyId:
          maxLength: 3
          minLength: 3
          type: string
          description: Three letter ISO code for the currency
          example: USD
        responsibleParty:
          maxLength: 255
          type: string
          description: Party (entity) responsible for the allocation
          example: Mark Enterprise
        address:
          $ref: '#/components/schemas/Address'
    GetAllocationContactResponse:
      type: object
      properties:
        totalCount:
          type: integer
          description: Total number of allocation contacts identified for the client
          format: int32
          example: 10
        contacts:
          type: array
          items:
            $ref: '#/components/schemas/GetAllocationContact'
    GetContact:
      required:
      - email
      - id
      - recordId
      type: object
      properties:
        id:
          maxLength: 9
          type: integer
          description: CounselLink unique identifier for a contact. Required only
            for PUT and will be omitted for POST
          format: int64
          example: 13251336
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: 'Unique system generated identifier for the contact. Returned
            with GET but not required for POST/PUT '
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        displayName:
          maxLength: 255
          type: string
          description: Contact display name
          example: "Mr. Rod, Alex Hart Jr."
        email:
          maxLength: 255
          type: string
          description: "Contact's email address, unique across all contacts. Required\
            \ for POST"
          example: alex@gmail.com
        status:
          maxLength: 9
          type: string
          description: Status of the contact
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        terminated:
          type: boolean
          description: Employment status of the contact
          example: true
        title:
          maxLength: 255
          type: string
          description: Profession title and / or label used by the contact
          example: Attorney
        recordId:
          maxLength: 120
          type: string
          description: ID or user name in the system external to CounselLink for this
            contact. This field serves as the key field for contacts and must be unique
            across all contacts. Required for POST
          example: REC22-0413240115657
        city:
          maxLength: 255
          type: string
          description: City of the contact's office address
          example: Raleigh
        firstName:
          maxLength: 255
          type: string
          description: First name of the contact
          example: Alex
        businessName:
          maxLength: 255
          type: string
          description: Name of the business that's associated with the contact
          example: AR
        lastName:
          maxLength: 255
          type: string
          description: Last name of the contact
          example: Rod
        phones:
          type: array
          description: Contact's phone number(s)
          items:
            $ref: '#/components/schemas/ContactPhone'
        contactTypes:
          type: array
          description: 'Type(s) of the contact. Must match to a valid Contact Type
            in CounselLink '
          example:
          - Individual
          items:
            type: string
            description: 'Type(s) of the contact. Must match to a valid Contact Type
              in CounselLink '
            example: "[\"Individual\"]"
        middleName:
          maxLength: 255
          type: string
          description: Middle name of the contact
          example: Hart
        prefix:
          maxLength: 4
          type: string
          description: Preceding lettering to the contact name
          example: Mr.
          enum:
          - Dr.
          - Mr.
          - Mrs.
          - Ms.
          - Hon.
        suffix:
          maxLength: 4
          type: string
          description: Appended lettering to the contact name
          example: Jr.
          enum:
          - Jr.
          - Sr.
          - Esq.
        businessUnit:
          maxLength: 255
          type: string
          description: Name of the business unit
          example: US
        manager:
          maxLength: 255
          type: string
          description: Name of the manager of the business unit
          example: ASD
        address:
          maxLength: 255
          type: string
          description: Contact's office address
          example: 111 Hart Road Rd.
        country:
          maxLength: 2
          type: string
          description: "Country of the contact's office address, should map to 2 character\
            \ ISO code"
          example: US
        state:
          maxLength: 2
          type: string
          description: "State of the contact's office address, should map to 2 character\
            \ ISO code"
          example: NC
        postalCode:
          maxLength: 20
          type: string
          description: Postal code of the contact's office address
          example: "27571"
        dateOfBirth:
          type: string
          description: Contact's date of birth
          format: date-time
        description:
          maxLength: 255
          type: string
          description: Textual Notes on Contact
          example: New Contact for Alex
        alternate:
          maxLength: 255
          type: string
          description: Alternative name(s) as used by the contact
          example: Hart
        isEditRestricted:
          type: boolean
          description: "When true, contact information in CounselLink can be edited\
            \ only by individuals with the Contact Admin role"
          example: true
        contactGroupIds:
          type: array
          description: List of group identifiers that the contact is a part of
          example:
          - "23"
          items:
            type: integer
            description: List of group identifiers that the contact is a part of
            format: int64
        lawFirmOfficeId:
          maxLength: 11
          type: integer
          description: "Law firm office identifier. This field is for clients who\
            \ sync their contacts with their firms, not commonly used"
          format: int64
          example: 342545
        paymentCurrency:
          maxLength: 3
          type: string
          description: The currency used for the payment
          example: USD
    GetContactType:
      required:
      - guid
      - name
      type: object
      properties:
        name:
          maxLength: 128
          type: string
          description: Contact Type Name
          example: Individual
        description:
          maxLength: 1024
          type: string
          description: Contact Type Description
          example: Individual Contact
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Contact Type GUID
          format: uuid
          example: 05cd3bf7-436d-47f6-96b4-9b6d9eb945aa
        roleType:
          maxLength: 6
          type: string
          description: The category role type.
          example: MTFRLC
        active:
          type: boolean
          description: Active Indicator
          example: true
    ClientEventResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/GetContactEvent'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetContactEvent:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The event reference.
          example: SjF0bWlvdCs5Qzhpai8wenBOVU92Zz09
        contactId:
          maxLength: 64
          type: integer
          description: The contact Id.
          format: int64
          example: 19962624
        eventDescription:
          maxLength: 1024
          type: string
          description: The event description.
          example: Contact updated
        eventDate:
          type: string
          description: The event date.
          format: date-time
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The user reference.
          example: MW4yU1FNeVNianNNR0REZ1pxRkpGUT09
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    CustomData:
      type: object
      properties:
        fieldName:
          type: string
          description: Field name
          example: ALLOC CONTACT LIST
        fieldValue:
          type: string
          description: Field value
          example: "23"
        fieldType:
          type: string
          description: Field type
          example: SELECT
          enum:
          - INPUT
          - SELECT
          - MONEY
          - TEXT
    LawFirmOffice:
      type: object
      properties:
        id:
          maxLength: 11
          type: integer
          description: Law firm office identifier
          format: int64
          example: 5310017
        name:
          maxLength: 255
          type: string
          description: Name of the law firm office
          example: "LNEI_Automated Law Firm PPP, Pune"
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique system generated law firm office identifier
          format: uuid
          example: 43e23251-df12-438d-9ca7-9b6d9eb945aa
        preferredCurrency:
          maxLength: 3
          type: string
          description: The preferred currency used by the law firm
          example: USD
        primaryAddress:
          $ref: '#/components/schemas/Address'
        remitToAddress:
          $ref: '#/components/schemas/Address'
        firmId:
          maxLength: 11
          type: integer
          description: The law firm identifier
          format: int64
          example: 531000
        firmName:
          maxLength: 255
          type: string
          description: The name of the law firm
          example: LNEI_Automated Law Firm PPP
        lawFirmAdminId:
          maxLength: 11
          type: integer
          description: The law firm admin identifier
          format: int64
          example: 1234567
        lawFirmAdminLoginName:
          maxLength: 20
          type: string
          description: The law firm admin login identifier
          example: "1234567"
        remitToAddressSameAsPrimaryAddress:
          type: boolean
          description: The base office address
          example: true
        taxClientsForServices:
          type: boolean
          description: Tax Clients for Services
          example: true
        servicesSubjectToVSTGSTTaxes:
          type: boolean
          description: Services Subject to VAT/GST Taxes
          example: true
        acceptNewAssignments:
          type: boolean
          description: Accept New Assignments
          example: false
        receiveMessageCenterEmails:
          type: boolean
          description: Receive message center emails
          example: false
        addTimekeepersFromInvoiceUploadFile:
          type: boolean
          description: Add Timekeepers from the Invoice Upload File
          example: false
        timeZoneId:
          type: string
          description: Time Zone ID
          example: America/New_York
        taxpayerId:
          maxLength: 15
          type: string
          description: Taxpayer ID
          example: "1234"
        firmTaxpayerId:
          type: string
          description: Taxpayer ID associated with the law firm
          example: "123"
    ClientContactAllocationResponse_UpdateAllocationContact:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message_UpdateAllocationContact'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    Message_UpdateAllocationContact:
      type: object
      properties:
        code:
          type: string
          description: Code associated with the message
          example: VALIDATION_ERROR
          enum:
          - VALIDATION_ERROR
          - UCDF_FIELDNAME_NOT_FOUND
          - UCDF_VALUE_NOT_FOUND
          - NO_UCDFS_FOUND
          - UCDF_DATATYPE_INCORRECT
          - UCDF_OPTION_VALUE_NOT_FOUND
          - UCDF_MULTI_OPTIONS_NOT_SUPPORTED
          - UCDF_OPERATION_NOT_SUPPORTED
          - UCDF_MULTI_OPTIONS_ONLY_SUPPORTED
          - INVALID_CURRENCY
          - MATTER_SAVE_ERROR
          - MATTER_NUMBER_NOT_FOUND
          - MATTER_NUMBER_REQUIRED
          - MATTER_GUID_NOT_FOUND
          - MATTER_ID_NOT_FOUND
          - MATTER_NUMBER_NOT_UNIQUE
          - MATTER_NUMBER_ALREADY_EXISTS
          - SSO_ID_NOT_FOUND
          - LOGIN_ID_NOT_FOUND
          - CREATED_DATE_AFTER_CLOSED_DATE
          - ENTITY_ROLE_ERROR
          - ENTITY_ID_NOT_FOUND
          - INVALID_CLIENT
          - CONTACT_OFFICE_NOT_FOUND
          - CLIENT_OFFICE_NOT_FOUND
          - FEE_STRUCTURE_NAME_NOT_UNIQUE
          - FEE_STRUCTURE_NAME_NOT_FOUND
          - FEE_STRUCTURE_NODE_NOT_FOUND
          - UCDF_DATE_FORMAT_ERROR
          - UCDF_NUMERIC_FORMAT_ERROR
          - UCDF_PERCENTAGE_FORMAT_ERROR
          - UCDF_MONEY_FORMAT_ERROR
          - UCDF_TABLE_NOT_FOUND
          - UCDF_TABLE_NAME_INCONSISTENT
          - UCDF_TABLE_ROWS_EXCEED_MAXIMUM_ROWS
          - UCDF_TABLE_ROW_NO_INFO
          - UCDF_TABLE_ROW_NOT_DELETED
          - UCDF_TABLE_ROW_NOT_UPDATED
          - UCDF_TABLE_ROW_REF_IGNORED
          - PAYMENT_NOT_ADDED
          - VENDOR_ID_FIELD_NOT_CONFIGURED
          - NO_LAWFIRM_OFFICE_ASSIGNED_TO_VENDOR
          - MULTIPLE_LFO_ASSIGNED_TO_VENDOR_ID
          - ACTIVE_FEE_OFFER_NOT_FOUND
          - INVOICE_NOT_FOUND
          - INVOICE_NOT_APPROVED
          - INVOICE_NUMBER_NOT_UNIQUE
          - WORKFLOW_ID_NOT_FOUND
          - RULESET_ID_NOT_FOUND
          - INVALID_ALLOCATION
          - UNABLE_TO_ASSIGN_LF
          - PAYMENT_REFERENCE_EXISTS_WITH_DIFFERENT_DATE
          - PAYMENT_REFERENCE_EXISTS_FOR_INVOICE_NUMBER
          - DUPLICATE_PAYMENT
          - PAYMENT_DATE_NOT_PROVIDED
          - PAYMENT_AMOUNT_NOT_PROVIDED
          - PAYMENT_CURRENCY_NOT_PROVIDED
          - PAYMENT_REFERENCE_NOT_PROVIDED
          - PAYMENT_REFERENCE_CURRENCY_NOT_MATCHING
          - BATCH_IN_PROGRESS
          - CLIENT_ID_INVALID
          - PAGE_NUMBER_INVALID
          - BATCH_ID_INVALID
          - BATCH_CANNOT_BE_CREATED
          - ECA_ID_REQUIRED
          - ECA_GROUP_REQUIRED
          - PAGE_SIZE_INVALID
          - DEFAULT_PAGE_SIZE_USED
          - FEE_STRUCTURE_REQUIRED
          - FEE_OFFER_REQUIRED
          - MATTER_ALREADY_ASSIGNED_TO_LAW_FIRM
          - LAW_FIRM_CANNOT_BE_ASSIGNED
          - MATTER_TYPE_GUID_NOT_FOUND
          - LAW_FIRM_OFFICE_NOT_FOUND
          - LAW_FIRM_NOT_FOUND
          - MATTER_ASSIGNMENT_REF_REQUIRED
          - MATTER_ASSIGNMENT_REF_IGNORED
          - MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
          - VENDOR_ID_CHANGE_IGNORED
          - FEE_STRUCTURE_ID_CHANGE_IGNORED
          - VENDOR_ID_OR_LAW_FIRM_OFFICE_ID_REQUIRED
          - VENDOR_ID_REQUIRED
          - FEE_STRUCTURE_ID_REQUIRED
          - UNABLE_TO_PERFORM_FEE_STRUCTURE_CHANGE
          - NO_ACTIVE_FEE_OFFERS_FOUND
          - PENDING_BILLS_ON_FEE_STRUCTURE
          - LAW_FIRM_ASSIGNMENT_UNACCEPTED
          - UNABLE_TO_PERFORM_FEE_OFFER_CHANGE
          - UCDF_SAVE_ERROR
          - MATTER_CHANGE_CONFIGURATION
          - OFFER_RATE_INVALID
          - FEE_STRUCTURE_CANNOT_BE_CHANGED
          - INVOICE_NOT_FOUND_FOR_CLIENT
          - INVALID_REFERENCE
          - INVOICE_CHARGES_NOT_PROVIDED
          - INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
          - INVOICE_CHARGE_ADJUSTMENT_NOT_FOUND_FOR_CLIENT
          - OPERATION_NOT_SUPPORTED
          - CURRENCY_CANNOT_BE_CHANGED
          - MATTER_ASSIGNMENT_REF_INVALID
          - INVALID_CURSOR
          - DATE_FORMAT_EXCEPTION
          - UNABLE_TO_RETRIEVE_APPROVED_EVENT
          - UNAPPROVED_EVENT
          - EVENT_NOT_FOUND
          - USER_NOT_FOUND
          - REASON_DESCRIPTION_REQUIRED
          - CURRENCY_CODE_REQUIRED
          - CLIENT_GUID_DOES_NOT_EXIST
          - DIVISION_GUID_DOES_NOT_EXIST
          - ENTITY_NOT_FOUND
          - DIVISION_DOES_NOT_EXIST_FOR_CLIENT
          - UNABLE_TO_ADD_CLIENT_DIVISION
          - USER_NOT_ALLOWED
          - INVALID_GUID
          - UNABLE_TO_RETRIEVE_FEE_OFFER_DETAIL
          - MATTER_TYPE_REQUIRED
          - FEE_STRUCTURE_ID_NOT_FOUND
          - MATTER_CANNOT_BE_DELETED
          - PAPER_PROCESSING_BILLER_TYPE_NOT_FOUND
          - MATTER_NOT_FOUND
          - LAW_FIRM_DOES_NOT_EXIST
          - LAW_FIRM_OFFICE_ID_NOT_FOUND
          - LAW_FIRM_ASSIGNED_NOT_ACTIVE_FOR_MATTER
          - BAD_REQUEST
          - LAWFIRM_OFFICE_HAS_DECLINED_NEW_ASSIGNMENTS
          - COUNSEL_TYPE_NOT_FOUND
          - DUPLICATE_ACCESS_KEY
          - INVALID_ACCESS_KEY
          - INVALID_SECRET_KEY
          - CONTACT_NOT_FOUND
          - CONTACT_NOT_DELETED
          - CONTACT_ASSOCIATED_TO_MATTER_LEGALHOLD
          - CONTACT_CREATED
          - CONTACT_UPDATED
          - PARTICIPANT_ROLE_NOT_FOUND
          - MATTER_PARTICIPANT_ALREADY_EXISTS
          - MATTER_PARTICIPANT_NOT_FOUND
          - MATTER_PARTICIPANT_NOT_DELETED
          - INVALID_EMAIL
          - INVALID_DATE_OF_BIRTH
          - DUPLICATE_ENTITY
          - CANNOT_CREATE_CONTACT
          - USER_DOES_NOT_EXIST
          - DOCUMENT_NOT_FOUND
          - DOCUMENT_NOT_DOWNLOADABLE
          - DOCUMENT_ID_IS_REQUIRED
          - FEE_STRUCTURE_ID_VALID_FOR_OFFICE
          - FEE_STRUCTURE_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - WORKFLOW_ID_VALID_FOR_OFFICE
          - WORKFLOW_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - RULESET_ID_VALID_FOR_OFFICE
          - RULESET_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - INCORRECT_CLIENT_ENTITY_ID
          - MCR_INVALID_EFFECTIVE_DATE
          - MCR_INVALID_FEE_STRUCTURE_EFFECTIVE_DATE
          - LFO_RELATIONSHIP_NOT_FOUND
          - MATTER_TYPE_CONFIG_NOT_ENABLED
          - UCDF_CONFIGURATION_NOT_FOUND_FOR_FIELD
          - MATTER_TYPE_NOT_EXIST_IN_OFFICE
          - MATTER_ASSIGNMENT_NOT_FOUND
          - DISPLAY_ASSIGNING_OFFICE_DURING_MATTER_SETUP_CONFIG_NOT_SET
          - ASSIGNING_OFFICE_IS_REQUIRED_DURING_MATTER_SETUP
          - MATTER_ASSIGNING_OFFICE_ERROR
          - FAST_TRACK_INACTIVE
          - LAW_FIRM_INVOICE_NUMBER_NOT_UNIQUE
          - RELATED_MATTER_ERROR
          - PENDING_INVOICE_ERROR
          - SERVICE_UNAVAILABLE_ERROR
          - FORBIDDEN_ENDPOINT
          - CHARGE_ADJUSTMENT_ERROR
          - CHARGE_NUMBER_NOT_FOUND
          - CHARGE_NUMBER_NOT_ASSOCIATED_WITH_ADJUSTMENT_CHARGE_NUMBER
          - RULE_CODE_INVALID
          - TAX_SUMMARY_ERROR
          - INTAKE_GUID_NOT_FOUND
        type:
          type: string
          description: Type of message
          example: INFO
          enum:
          - INFO
          - WARN
          - ERROR
        field:
          type: string
          description: The field pertaining to the message
          example: divisionName
        value:
          type: string
          description: The value of the field pertaining to the message
          example: West Division
        message:
          type: string
          description: A message is sometimes provided when the code is not sufficient
            to troubleshoot the issue
          example: Division with name West Division does not exist
        values:
          type: array
          items:
            type: string
    ValidationError_UpdateAllocationContact:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message_UpdateAllocationContact'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    NotificationError_UpdateAllocationContact:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message_UpdateAllocationContact'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
    ServerErrorInfo_UpdateAllocationContact:
      type: object
      properties:
        rid:
          maxLength: 36
          minLength: 36
          type: string
          description: Request ID
          example: aa33d504-9ace-4ba4-9796-86b3bc7aa52f
        info:
          type: string
          description: Additional information about the error
          example: Request ID (rid) and message values helps in debugging. Please
            provide these when contacting support about the error!
        message:
          type: string
          description: Error Message
          example: Unexpected error occurred. Request ID = aa33d504-9ace-4ba4-9796-86b3bc7aa52f
    Address_UpdateAllocationContact:
      type: object
      properties:
        line1:
          maxLength: 255
          type: string
          description: Address Line 1
          example: Apt 234
        line2:
          maxLength: 255
          type: string
          description: Address Line 2
          example: 16 Whitemark Ln
        line3:
          maxLength: 255
          type: string
          description: Address Line 3
          example: Suite 3
        city:
          maxLength: 255
          type: string
          description: City
          example: Atlanta
        state:
          maxLength: 40
          type: string
          description: State
          example: GA
        country:
          maxLength: 2
          type: string
          description: Country Code
          example: US
        zip:
          maxLength: 20
          type: string
          description: Zip Code
          example: "30092"
        faxNum:
          maxLength: 30
          type: string
          description: FAX Number
          example: 404-555-1212
        phoneNum:
          maxLength: 30
          type: string
          description: Phone Number
          example: 404-555-1212
        phoneExt:
          maxLength: 6
          type: string
          description: Phone Extension
          example: "5555"
    AllocationContact_UpdateAllocationContact:
      required:
      - allocationContactId
      - id
      - name
      type: object
      properties:
        id:
          maxLength: 11
          type: integer
          description: Unique identifier for the allocation contact. Required for
            PUT. All other fields except this field can be changed. Ignored for POST
          format: int64
          example: 10183
        name:
          maxLength: 255
          type: string
          description: Name of the allocation contact. Required for POST
          example: Craig R Brown
        allocationContactId:
          maxLength: 128
          minLength: 1
          type: string
          description: Allocation contact identifier. Required for POST
          example: Facility-Group A-Section 3-1245
        status:
          type: string
          description: "Status of the allocation contact. If nothing is passed, then\
            \ allocation contact is created in the 'Inactive' state"
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        emailAddress:
          maxLength: 255
          type: string
          description: Email address
          example: test123@yahoo.com
        allocationLimit:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Limit / maximum amount of the allocation
          format: double
          example: 12.59
        wastingLimit:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Limit / maximum amount of the wasting
          format: double
          example: 0.0
        insuredIndemnityPaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of insured indemnity paid
          format: double
          example: 29220.5
        insuredExpensePaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of insured expense paid
          format: double
          example: 6000.0
        excludeInsuredIndemnityPaidFromLimit:
          maxLength: 1
          type: string
          description: Exclusion indicator for Insured (Y/N)
          example: "N"
        clientIndemnityPaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of the client's indemnity paid
          format: double
          example: 12.59
        clientExpensePaid:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount of the client's expense paid
          format: double
          example: 500.0
        excludeCorporateIndemnityPaidFromLimit:
          maxLength: 1
          type: string
          description: Exclusion indicator for Client (Y/N)
          example: "N"
        sharedContactIndicator:
          maxLength: 1
          type: string
          description: Shared Contact Indicator (Y/N)
          example: "N"
        currencyId:
          maxLength: 3
          minLength: 3
          type: string
          description: Three letter ISO code for the currency
          example: USD
        responsibleParty:
          maxLength: 255
          type: string
          description: Party (entity) responsible for the allocation
          example: Mark Enterprise
        address:
          $ref: '#/components/schemas/Address_UpdateAllocationContact'
    DeleteResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        workIntakeGuid:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    PostDocumentResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        documentId:
          type: integer
          format: int64
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    Document:
      required:
      - category
      - entityType
      - name
      type: object
      properties:
        id:
          maxLength: 11
          type: integer
          description: The document identifier
          format: int64
          example: 1234567
        name:
          maxLength: 64
          minLength: 1
          type: string
          description: The display name of the document
          example: matter details
        entityType:
          maxLength: 7
          minLength: 5
          type: string
          description: The entity type the document is related to
          enum:
          - MATTER
          - INVOICE
          - CHARGE
          - INTAKE
          - LAW_FIRM
          - GUIDELINE_SUPPLEMENT
          - OTHER
        entityGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The GUID of the entity the document is related to. Pass Invoice
            GUID value in case of CHARGE entity type or Pass Law Firm GUID in case
            of LAW_FIRM entity type
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        category:
          maxLength: 18
          minLength: 4
          type: string
          description: "Category of the document, used for organizational purposes.\
            \ If category and categoryName are both provided, categoryName will be\
            \ used. Standard categories options include: <ul><li>ATTACHED_DOCUMENT</li><li>INVOICE_ATTACHMENT</li><li>NONE</li></ul>"
          enum:
          - ATTACHED_DOCUMENT
          - INVOICE_ATTACHMENT
          - NONE
        categoryName:
          maxLength: 128
          type: string
          description: "Category name of the document, used for organizational purposes.\
            \ Customizable categories can be found on the corporate profile Categories\
            \ page. If category and categoryName are both provided, categoryName will\
            \ be used"
        chargeRef:
          maxLength: 32
          minLength: 32
          type: string
          description: "Charge reference ID, included when document is attached at\
            \ the invoice charge level"
          example: YWRjbHF0b1FPb0pKaHlzY29pTzBDQT09
        documentShared:
          type: string
          description: "Required only when 'Enable Document Sharing' config is ON.\
            \ For customers using updated document security, this field governs who\
            \ can view the imported document. Check with your technical consultant\
            \ to determine if this field should be used. Valid options include: <ul><li>ONLY_ME\
            \ - grants view access to the Document Owner</li><li>EVERYONE - all client\
            \ and law firm users who have access to the object (i.e. matter, invoice,\
            \ etc.)</li><li>CLIENT_USERS - all client users who have access to the\
            \ object (i.e. matter, invoice, etc.)</li></ul>"
          enum:
          - ONLY_ME
          - EVERYONE
          - CLIENT_USERS
        sharedIndicator:
          type: boolean
          description: "Required only when 'Enable Document Sharing' config is OFF.\
            \ For customers using legacy document security, this field controls whether\
            \ law firms can see the documents. Check with your technical consultant\
            \ to determine if this field should be used. Valid options include: <ul><li>true\
            \ – shared with the law firms associated with the object (i.e. matter,\
            \ invoice, etc.)</li><li>false – not shared with law firms associated\
            \ with the object (i.e. matter, invoice, etc.)</li></ul>"
        accessLevel:
          maxLength: 7
          minLength: 6
          type: string
          description: "Required only when 'Enable Document Sharing' config is OFF.\
            \ For customers using legacy document security, this field represents\
            \ “who” can see the document. Check with your technical consultant to\
            \ determine if this field should be used. Valid options include: <ul><li>PUBLIC\
            \ – all customer users having access to the object (i.e. matter, invoice,\
            \ etc.) can access the document.</li><li>PRIVATE – Only the document owner\
            \ and customer users with the document administrator role can access the\
            \ document.</li></ul>"
          enum:
          - PUBLIC
          - PRIVATE
        description:
          maxLength: 255
          type: string
          description: A description of the document
          example: This is my document description
        status:
          maxLength: 15
          minLength: 5
          type: string
          description: "The status of the document, used for informational purposes.\
            \ Status options include: <ul><li>NOT_APPLICABLE</li><li>DRAFT</li><li>UNDER_REVIEW</li><li>DOCUMENT_FINAL</li></ul>"
          enum:
          - NOT_APPLICABLE
          - DRAFT
          - UNDER_REVIEW
          - DOCUMENT_FINAL
        revision:
          maxLength: 24
          type: string
          description: "Used only when 'Enable Document Sharing' config is OFF. For\
            \ customers using legacy document security, Revision is an informational\
            \ field to provide context on what was revised in the document. Check\
            \ with your technical consultant to determine if this field should be\
            \ used"
          example: "1"
        keywords:
          maxLength: 512
          type: string
          description: Set of Keywords associated with the document
          example: Key words related to the document
        folder:
          maxLength: 255
          type: string
          description: Folder to place the document within. Separate multiple levels
            with '/'
          example: FolderA/SubFolderB/SubFolderC
        fileName:
          maxLength: 255
          type: string
          description: The filename with extension
          example: TestDocument.pdf
        url:
          maxLength: 255
          type: string
          description: The URL of the document and its location
          example: https://mydomain.com/TestDocument.pdf
        bypassSharedNotification:
          type: boolean
          description: "Used only when 'Enable Document Sharing' config is ON. For\
            \ customers using updated document security, this field determines whether\
            \ users (who can view that document) will receive the Document Shared\
            \ email notification upon document upload. Check with your technical consultant\
            \ to determine if this field should be used.  Valid options include: <ul><li>True\
            \ – shared users will NOT receive an email notification that the document\
            \ was uploaded</li><li>False – shared users will receive an email notification</li></ul>"
          example: true
    DocumentUploadForm:
      required:
      - category
      - entityType
      - file
      - name
      type: object
      properties:
        id:
          maxLength: 11
          type: integer
          description: The document identifier
          format: int64
          example: 1234567
        name:
          maxLength: 64
          minLength: 1
          type: string
          description: The display name of the document
          example: matter details
        entityType:
          maxLength: 7
          minLength: 5
          type: string
          description: The entity type the document is related to
          enum:
          - MATTER
          - INVOICE
          - CHARGE
          - INTAKE
          - LAW_FIRM
          - GUIDELINE_SUPPLEMENT
          - OTHER
        entityGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The GUID of the entity the document is related to. Pass Invoice
            GUID value in case of CHARGE entity type or Pass Law Firm GUID in case
            of LAW_FIRM entity type
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        category:
          maxLength: 18
          minLength: 4
          type: string
          description: "Category of the document, used for organizational purposes.\
            \ If category and categoryName are both provided, categoryName will be\
            \ used. Standard categories options include: <ul><li>ATTACHED_DOCUMENT</li><li>INVOICE_ATTACHMENT</li><li>NONE</li></ul>"
          enum:
          - ATTACHED_DOCUMENT
          - INVOICE_ATTACHMENT
          - NONE
        categoryName:
          maxLength: 128
          type: string
          description: "Category name of the document, used for organizational purposes.\
            \ Customizable categories can be found on the corporate profile Categories\
            \ page. If category and categoryName are both provided, categoryName will\
            \ be used"
        chargeRef:
          maxLength: 32
          minLength: 32
          type: string
          description: "Charge reference ID, included when document is attached at\
            \ the invoice charge level"
          example: YWRjbHF0b1FPb0pKaHlzY29pTzBDQT09
        documentShared:
          type: string
          description: "Required only when 'Enable Document Sharing' config is ON.\
            \ For customers using updated document security, this field governs who\
            \ can view the imported document. Check with your technical consultant\
            \ to determine if this field should be used. Valid options include: <ul><li>ONLY_ME\
            \ - grants view access to the Document Owner</li><li>EVERYONE - all client\
            \ and law firm users who have access to the object (i.e. matter, invoice,\
            \ etc.)</li><li>CLIENT_USERS - all client users who have access to the\
            \ object (i.e. matter, invoice, etc.)</li></ul>"
          enum:
          - ONLY_ME
          - EVERYONE
          - CLIENT_USERS
        sharedIndicator:
          type: boolean
          description: "Required only when 'Enable Document Sharing' config is OFF.\
            \ For customers using legacy document security, this field controls whether\
            \ law firms can see the documents. Check with your technical consultant\
            \ to determine if this field should be used. Valid options include: <ul><li>true\
            \ – shared with the law firms associated with the object (i.e. matter,\
            \ invoice, etc.)</li><li>false – not shared with law firms associated\
            \ with the object (i.e. matter, invoice, etc.)</li></ul>"
        accessLevel:
          maxLength: 7
          minLength: 6
          type: string
          description: "Required only when 'Enable Document Sharing' config is OFF.\
            \ For customers using legacy document security, this field represents\
            \ “who” can see the document. Check with your technical consultant to\
            \ determine if this field should be used. Valid options include: <ul><li>PUBLIC\
            \ – all customer users having access to the object (i.e. matter, invoice,\
            \ etc.) can access the document.</li><li>PRIVATE – Only the document owner\
            \ and customer users with the document administrator role can access the\
            \ document.</li></ul>"
          enum:
          - PUBLIC
          - PRIVATE
        description:
          maxLength: 255
          type: string
          description: A description of the document
          example: This is my document description
        status:
          maxLength: 15
          minLength: 5
          type: string
          description: "The status of the document, used for informational purposes.\
            \ Status options include: <ul><li>NOT_APPLICABLE</li><li>DRAFT</li><li>UNDER_REVIEW</li><li>DOCUMENT_FINAL</li></ul>"
          enum:
          - NOT_APPLICABLE
          - DRAFT
          - UNDER_REVIEW
          - DOCUMENT_FINAL
        revision:
          maxLength: 24
          type: string
          description: "Used only when 'Enable Document Sharing' config is OFF. For\
            \ customers using legacy document security, Revision is an informational\
            \ field to provide context on what was revised in the document. Check\
            \ with your technical consultant to determine if this field should be\
            \ used"
          example: "1"
        keywords:
          maxLength: 512
          type: string
          description: Set of Keywords associated with the document
          example: Key words related to the document
        folder:
          maxLength: 255
          type: string
          description: Folder to place the document within. Separate multiple levels
            with '/'
          example: FolderA/SubFolderB/SubFolderC
        fileName:
          maxLength: 255
          type: string
          description: The filename with extension
          example: TestDocument.pdf
        url:
          maxLength: 255
          type: string
          description: The URL of the document and its location
          example: https://mydomain.com/TestDocument.pdf
        bypassSharedNotification:
          type: boolean
          description: "Used only when 'Enable Document Sharing' config is ON. For\
            \ customers using updated document security, this field determines whether\
            \ users (who can view that document) will receive the Document Shared\
            \ email notification upon document upload. Check with your technical consultant\
            \ to determine if this field should be used.  Valid options include: <ul><li>True\
            \ – shared users will NOT receive an email notification that the document\
            \ was uploaded</li><li>False – shared users will receive an email notification</li></ul>"
          example: true
        file:
          type: string
          format: byte
    PutDocumentResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        documentId:
          type: integer
          format: int64
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceValidationError:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceByGuidResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        invoiceOverview:
          $ref: '#/components/schemas/InvoiceOverview'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    InvoiceApprovalDetail:
      type: object
      properties:
        eventId:
          maxLength: 11
          minLength: 1
          type: integer
          description: The Invoice approval event ID
          format: int64
          example: 13852723
        approvedAmount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Amount the client has approved
          format: double
          example: 550
        earlyPaymentStatus:
          type: string
          description: Fast Track Early Payment Status
          example: NONE
        earlyPaymentAmount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Fast Track Early Payment Amount
          format: double
          example: 100
        earlyPaymentCurrencyCode:
          maxLength: 3
          minLength: 3
          type: string
          description: Fast Track Early Payment Currency Code
          example: USD
        earlyPaymentMessage:
          maxLength: 1024
          type: string
          description: Fast Track Early Payment Message
          example: Early Payment Message
    InvoiceOverview:
      required:
      - billedExpenses
      - currency
      - exchangeRate
      - invoiceDate
      - matterNumber
      - netExpenses
      - netFees
      - netTotal
      - receivedDate
      - startDate
      type: object
      properties:
        invoiceId:
          maxLength: 11
          minLength: 1
          type: integer
          description: The identifier assigned to the invoice.
          format: int64
          example: 519343
        invoiceGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Unique identifier for the division
          format: uuid
          example: 3c9f7092-aabc-4c35-9f20-cc759a38be4e
        lawFirmInvoiceId:
          maxLength: 64
          type: string
          description: The identifier assigned to the invoice by the law firm or vendor
          example: "123"
        matterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Unique matter identifier
          format: uuid
          example: aaa3ab81-ec4f-4f2d-b4b7-51dfb053249d
        matterNumber:
          maxLength: 64
          type: string
          description: "Client Matter Number, matter identifier set by Customer"
          example: M18188957
        matterTitle:
          maxLength: 255
          type: string
          description: Title of the matter
          example: Test Matter
        invoiceDate:
          type: string
          description: The payment date
          format: date-time
        receivedDate:
          type: string
          description: Date and time the invoice was submitted to CounselLink
          format: date-time
        startDate:
          type: string
          description: Date and time of the earliest charge line in the invoice
          format: date-time
        endDate:
          type: string
          description: Date and time of the latest charge line in the invoice
          format: date-time
        invoiceType:
          maxLength: 64
          type: string
          description: The type of invoice
          example: Non-VAT
        currency:
          maxLength: 3
          minLength: 3
          type: string
          description: ISO 3 character currency code
          example: USD
        exchangeRate:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Exchange rate to convert invoice amounts back to USD
          format: double
          example: 1
        netTotal:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Exchange rate to convert invoice amounts back to USD
          format: double
          example: 560
        netExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Exchange rate to convert invoice amounts back to USD
          format: double
          example: 20
        netFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Exchange rate to convert invoice amounts back to USD
          format: double
          example: 540
        billedTotal:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The invoice billed amount including discounts and taxes
          format: double
          example: 560
        billedExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The invoice expense billed amount including discounts and taxes
          format: double
          example: 20
        billedFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The invoice fee billed amount including discounts and taxes
          format: double
          example: 50
        invoiceDescription:
          maxLength: 15000
          type: string
          description: Invoice description entered by the law firm
          example: Test Invoice
        feeStructureId:
          maxLength: 9
          minLength: 1
          type: integer
          description: The numeric fee structure identifier
          format: int64
          example: 3971
        earlyPaymentStatus:
          maxLength: 32
          type: string
          description: The FastTrack early payment status of the invoice
          example: NONE
        invoiceSubmissionType:
          maxLength: 10
          type: string
          description: The method of submitting the invoice
          example: ELECTRONIC
          enum:
          - PAPER
          - ELECTRONIC
        lawFirmOfficeGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique system generated law firm office identifier
          format: uuid
          example: 9c781a81-1c66-47ac-aa4f-9b6d9eb945aa
        lawFirmGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique system generated law firm identifier
          format: uuid
          example: c0d4d6b5-9b24-41d9-8c15-9b6d9eb945aa
        workflowName:
          maxLength: 64
          type: string
          description: Name of the workflow event
          example: Automated Workflow
        workflowStatus:
          maxLength: 255
          type: string
          description: Name of the current workflow step
          example: Approved
        approved:
          type: boolean
          description: Invoice has at least one approval
        vendorId:
          maxLength: 255
          type: string
          description: Vendor ID set at the Law Firm Office Additional Information
          example: "323413"
        vendorLocation:
          maxLength: 255
          type: string
          description: Vendor Location set at the Law Firm Office Additional Information
          example: New York Office
        fastTrackVendorId:
          maxLength: 255
          type: string
          description: FastTrack Vendor ID set at the Law Firm Office Additional Information
          example: "4324"
        approvals:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceApprovalDetail'
    GetInvoiceByGuidValidationError:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    AppealNote:
      type: object
      properties:
        date:
          type: string
          description: Date and time of the appeal
          format: date-time
        typeDescription:
          maxLength: 255
          type: string
          description: Type of appeal note
          example: Client Accepted the Appeal on Charge Adjustment
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference identifier for user making the appeal
          example: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
        note:
          type: string
          description: Appeal note entered by the client or law firm user
          example: Accepting appeal
        noteRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference identifier for the appeal note
          example: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
        eventId:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference identifier for the appeal event
          example: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
    ChargeAdjustment:
      type: object
      properties:
        adjustmentCalculation:
          maxLength: 32
          type: string
          description: Indicates if the adjustment was taken by a 'reduce' action
            or a 'pay' action
          example: pay
        adjustmentStatus:
          maxLength: 255
          type: string
          description: Status of the adjustment
          example: Charge Adjustment
          enum:
          - "Charge Adjustment, Charge Flag, Return invoice, Charge Adjustment Accepted\
            \ by Law Firm, Charge Adjustment Acquiesced by Law Firm, Charge Adjustment\
            \ Appeal Accepted by Client (Adjustment amount reduced to 0.00), Charge\
            \ Adjustment In Dispute, Deleted Adjustment or Flag, Charge Adjustment\
            \ and return invoice"
        actionType:
          maxLength: 255
          type: string
          description: The last type of action taken on the adjustment
          example: add
          enum:
          - "add, edit, recalc"
        adjustmentOn:
          maxLength: 255
          type: string
          description: Entities pertaining to the adjustment
          example: units_and_unit_price
          enum:
          - "units, unit_price, units_and_unit_price"
        date:
          type: string
          description: Date of the last modification to the adjustment
          format: date-time
        initialUnits:
          multipleOf: 0.00000000000010
          maxLength: 19
          type: number
          description: Units prior to the adjustment
          format: double
          example: 10
        initialRate:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Rate prior to the adjustment
          format: double
          example: 10
        currentUnits:
          multipleOf: 0.00000000000010
          maxLength: 19
          type: number
          description: Adjusted units
          format: double
          example: 10
        currentRate:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Adjusted rate
          format: double
          example: 10
        amount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Adjusted amount
          format: double
          example: 10
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Identifier of the last user who took action on the adjustment
          example: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
        appealStatus:
          type: string
          description: Status of the appeal
          example: Accepting appeal
        appealUser:
          type: string
          description: User making the appeal
        adjustmentRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number identifying the adjustment
          example: ajdZellPQWRkcTgybHBCTzQvSjVpQT09
        ruleCode:
          maxLength: 64
          type: string
          description: CounselLink rule code pertaining to the adjustment
          example: G41
        ruleName:
          maxLength: 255
          type: string
          description: CounselLink rule name pertaining to the adjustment
          example: Internet Charges
        description:
          maxLength: 1024
          type: string
          description: Description of the adjustment
          example: Law firm charges for internet service or connectivity
        appealNotes:
          type: array
          items:
            $ref: '#/components/schemas/AppealNote'
    ChargeHistory:
      type: object
      properties:
        chargeAdjustmentRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference number of the charge adjustment
          example: L1Q4RFpLNXFDNUtiNFo5dklITHdvUT09
        eventTimeStamp:
          type: string
          description: Date when the action was performed
          format: date-time
        eventDesc:
          maxLength: 527
          type: string
          description: Description of the event
          example: Adjustment added -$19.00 USD
        eventComment:
          maxLength: 1024
          type: string
          description: Comment on the event
          example: G41 - Internet Charges
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference number of the user who performed the action
          example: QUR0dWM4YWtQcUxpODFMVWp0UndMUT09
    ChargeTaxItem:
      type: object
      properties:
        type:
          type: string
          description: The Type of Tax applied
          example: Excise Tax
        taxAlias:
          type: string
          description: The Tax Alias for Tax applied
          example: GST-US
        amount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Amount applied
          format: double
          example: 20
        rate:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Rate applied
          format: double
          example: 0.5
        withholdTax:
          type: boolean
          description: Tax consist of Withhold Tax or not
          example: false
        taxGroupItems:
          type: string
          description: The Tax Items in the Tax Group
          example: ACTTAX + HST + OTHER + GSTTPS
    GetInvoiceChargesResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        charges:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceCharge'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    InvoiceCharge:
      type: object
      properties:
        chargeId:
          maxLength: 13
          type: integer
          description: Unique identifier of the charge
          format: int64
          example: 5114546
        chargeRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number for the charge
          example: aGlqSEhhZThaMWFQSGVZa3UwQnNuQT09
        chargeNumber:
          maxLength: 10
          type: integer
          description: Unique line item number of the charge
          format: int64
          example: 1
        date:
          type: string
          description: Charge date
          format: date-time
        description:
          type: string
          description: Description of the charge
          example: Case Administration
        type:
          maxLength: 6
          type: string
          description: Type of charge
          example: FEE
          enum:
          - FEE
          - EXPENSE
          - BOTH
        timekeeperUserRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number for the timekeeper
          example: MnMxYXB4TUlZRVJYZExwdTFHZFZBdz09
        timekeeperLevelDesc:
          maxLength: 255
          type: string
          description: Timekeeper level
          example: Partner
        taskCode:
          maxLength: 30
          type: string
          description: Uniform Task-Based Management System task code
          example: B110
        activityCode:
          maxLength: 30
          type: string
          description: Uniform Task-Based Management System activity code
          example: A101
        units:
          multipleOf: 0.00010
          maxLength: 10
          type: number
          description: Charge Units
          format: double
          example: 10
        rate:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Charge rate
          format: double
          example: 10
        vendorAdjustment:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Vendor adjustment amount
          format: double
          example: 10
        lineItemAdjustment:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Total of adjustment amounts for this charge
          format: double
          example: -10
        invoiceAdjustment:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Invoice adjustments and discounts which apply to this charge.
            This does not include fixed invoice adjustments or prompt pay discounts
          format: double
          example: 10
        taxAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Tax amount
          format: double
          example: 10
        netAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: "Net amount on the charge after law firm submitted discounts,\
            \ adjustments and taxes are applied. This does not include fixed invoice\
            \ adjustments or prompt pay discounts"
          format: double
          example: 10
        grossAmount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Gross charge amount
          format: double
          example: 310
        currentUnits:
          multipleOf: 0.00000000000010
          maxLength: 19
          type: number
          description: Adjusted units
          format: double
          example: 10
        currentRate:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: Adjusted rate
          format: double
          example: 30
        history:
          type: array
          items:
            $ref: '#/components/schemas/ChargeHistory'
        adjustments:
          type: array
          items:
            $ref: '#/components/schemas/ChargeAdjustment'
        tax:
          $ref: '#/components/schemas/ChargeTaxItem'
    InvoiceAllocation:
      type: object
      properties:
        allocationContactId:
          type: string
          description: Contact ID of the allocation
          example: "50321"
        allocationContactName:
          type: string
          description: Contact name of the allocation
          example: John Smith
        allocationNetToPayTotal:
          type: number
          description: NetToPay total of the allocation
          example: 403.75
        allocationNetToPayFees:
          type: number
          description: NetToPay fees of the allocation
          example: 403.75
        allocationNetToPayExpenses:
          type: number
          description: NetToPay expenses of the allocation
          example: 170
        glCode:
          type: string
          description: glCode of the allocation
          example: "10986"
    InvoiceAllocationResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceAllocation'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceApprovalByGuidResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceApproval'
        lawFirmInvoiceId:
          type: string
          description: Law firm invoice ID
          example: "496792"
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    InvoiceApproval:
      type: object
      properties:
        netToPayTotal:
          type: number
          description: netToPay total of the invoice approval
          example: 50321
        netToPayFees:
          type: number
          description: netToPay fees of the invoice approval
          example: 50321
        netToPayExpenses:
          type: number
          description: netToPay expenses of the invoice approval
          example: 50321
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number for the invoice approval
          example: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
        date:
          type: string
          description: Date and time of the invoice approval
          format: date-time
        approvalNumber:
          type: integer
          description: Invoice approval number
          format: int32
          example: 1
        allocations:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceAllocation'
    GetInvoiceAdjustmentResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        adjustments:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceAdjustment'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    InvoiceAdjustment:
      type: object
      properties:
        description:
          maxLength: 255
          type: string
          description: Description of Invoice Adjustment
          example: This Adjustment is for API endpoint example
        chargeType:
          maxLength: 255
          type: string
          description: "Indicates if Adjustment applies to Fees, Expenses or both\
            \ Fees and Expenses"
          example: FEE
          enum:
          - FEE
          - EXPENSE
          - BOTH
        adjustmentType:
          maxLength: 255
          type: string
          description: The type of Invoice Adjustment
          example: FIXED_AMOUNT
          enum:
          - EXPENSE_ADJUSTMENT
          - FEE_ADJUSTMENT
          - FIXED_AMOUNT
          - PROMPT_APPROVAL1
          - PROMPT_APPROVAL2
          - PERCENTAGE_VALUE
          - TERMS
          - PROMPT_APPROVAL
        percentage:
          multipleOf: 0.0000000000000010
          maxLength: 24
          type: number
          description: The Adjustment percentage relevant to percentage of discount
            types
          format: double
          example: 5
        amount:
          multipleOf: 0.0000010
          maxLength: 23
          type: number
          description: The Monetary Invoice Adjustment Amount
          format: double
          example: 100
        userRef:
          maxLength: 32
          type: string
          description: The Unique Encrypted User who Adjusted the Invoice
          example: UGdCZXF5V1dreVlEOVJmckFBSGV0dz09
        adjustmentRef:
          maxLength: 32
          type: string
          description: The Unique Encrypted Reference Number for the Adjustment
          example: cFdsOHNZTDBHS2UzRXlKMndVdrxDZz09
        taxType:
          type: string
        taxAmount:
          type: number
        taxDesc:
          type: string
        taxId:
          type: string
        taxCountry:
          type: string
        taxStateProvince:
          type: string
        taxRate:
          type: number
        taxSummary:
          $ref: '#/components/schemas/TaxSummary'
    TaxSummary:
      type: object
      properties:
        chargeType:
          type: string
          description: The Type of Charge applied on the Tax
          example: FEE
          enum:
          - FEE
          - EXPENSE
        taxType:
          type: string
          description: The Type of Tax applied
          example: Excise Tax
        taxAlias:
          type: string
          description: The Tax Alias for Tax applied
          example: GST-US
        taxRate:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Rate applied
          format: double
          example: 0.5
        taxAmount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Amount applied
          format: double
          example: 20
        taxRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The unique Tax identifier
          example: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
        taxCode:
          type: string
          description: The identifier for Tax Type
          example: EXCISE
        withholdTax:
          type: boolean
          description: Tax consist of Withhold Tax or not
          example: false
        taxDescription:
          maxLength: 255
          type: string
          description: Description of the Tax
          example: Tax Description
        taxLawFirmId:
          maxLength: 15
          minLength: 1
          type: string
          description: The identifier Tax Id of Law Firm
          example: "1234"
        taxLawFirmOfficeId:
          maxLength: 15
          minLength: 1
          type: string
          description: The identifier Tax Id of Law Firm Office
          example: "348512"
        taxCountry:
          type: string
          description: Taxing Country
          example: US
        taxStateProvince:
          type: string
          description: Taxing State/Province
          example: MA
        taxOnTax:
          type: integer
          description: The Tax applied on Tax
          format: int64
          example: 2971
        taxHarmonized:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Tax Harmonized Rate when Tax on Tax is applied
          format: double
          example: 0.5
        taxGroupItems:
          type: string
          description: The Tax Items in the Tax Group
          example: ACTTAX + HST + OTHER + GSTTPS
    InvoiceNote:
      type: object
      properties:
        date:
          type: string
          description: Date and time of the event
          format: date-time
        type:
          type: string
          description: Type of note
          example: Internal Note
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference id for the user creating the note
          example: RTU3d1ZCaUVQak1INnJDR3BOcXFhZz09
        note:
          type: string
          description: Note text
          example: new note
        noteRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference id for the note
          example: Y1RLaUd0OUowa005K1NHSTBYT0ZiQT09
    InvoiceNotesResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        notes:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceNote'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceSubmissionTypeResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        invoiceSubmissionType:
          maxLength: 10
          type: string
          description: Type of Invoice Submission
          example: ELECTRONIC
          enum:
          - PAPER
          - ELECTRONIC
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceWorkflowEventsResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        workflowEventList:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceWorkflowEvent'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    InvoiceWorkflowEvent:
      type: object
      properties:
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number for the invoice workflow event
          example: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
        taskName:
          maxLength: 255
          minLength: 1
          type: string
          description: Workflow task name specific to your custom workflow steps for
            the events between submission and approval. The standard task name of
            initial workflow step is “nonBpelWorkflowBegin” and invoice approval workflow
            step is “nonBpelApproved”
          example: nonBpelWorkflowBegin
        eventComment:
          maxLength: 322
          type: string
          description: A comment describing the event. Workflow action will be captured
            in the format “Activity -> Workflow Action”. Standard ones are 'Activity
            -> Starting Workflow' for initial step and 'Approve Invoice' for invoice
            approval
          example: Re-starting Invoice Workflow
        eventDate:
          type: string
          description: Date and timestamp of the workflow event
          format: date-time
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Identifier of the user taking the action
          example: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
    GetInvoiceOverview:
      required:
      - currency
      type: object
      properties:
        invoiceId:
          maxLength: 11
          minLength: 1
          type: integer
          description: The identifier assigned to the invoice.
          format: int64
          example: 519343
        invoiceGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Unique identifier for the division
          format: uuid
          example: 3c9f7092-aabc-4c35-9f20-cc759a38be4e
        currency:
          maxLength: 3
          minLength: 3
          type: string
          description: ISO 3 character currency code
          example: USD
        feeStructureId:
          maxLength: 9
          minLength: 1
          type: integer
          description: The numeric fee structure identifier
          format: int64
          example: 3971
    GetInvoicesOverviewsResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/GetInvoiceOverview'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceLFOResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        lawFirmOffice:
          $ref: '#/components/schemas/InvoiceLawFirmOffice'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    InvoiceLawFirmOffice:
      type: object
      properties:
        id:
          maxLength: 11
          minLength: 1
          type: integer
          description: The law firm office unique identifier
          format: int64
          example: 519343
        name:
          maxLength: 255
          type: string
          description: Name of the law firm office
          example: TOTONIAN_TEST_LFO
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: The law firm office unique identifier
          format: uuid
          example: 3c9f7092-aabc-4c35-9f20-cc759a38be4e
        lawFirmGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The law firm unique identifier
          format: uuid
          example: c0d4d6b5-9b24-41d9-8c15-9b6d9eb945aa
        taxPayerId:
          maxLength: 15
          type: string
          description: The taxpayer ID associated with the law firm
          example: "123456"
        address1:
          maxLength: 255
          type: string
          description: The first line of the law firm office address
          example: Address 1
        address2:
          maxLength: 255
          type: string
          description: The second line of the law firm office address
          example: Address 2
        address3:
          maxLength: 255
          type: string
          description: The third line of the law firm office address
          example: Address 3
        city:
          maxLength: 255
          type: string
          description: The city of the law firm office address
          example: Raleigh
        state:
          maxLength: 2
          minLength: 2
          type: string
          description: The ISO 2 character state code for the law firm office address
          example: NC
        zip:
          maxLength: 20
          type: string
          description: The zip code of the law firm office address
          example: "27606"
        country:
          maxLength: 100
          type: string
          description: The country of the law firm office address
          example: UNITED STATES
        phoneNumber:
          maxLength: 30
          type: string
          description: The law firm office phone number
          example: 916-777-7777
        phoneExtension:
          maxLength: 6
          type: string
          description: The law firm office phone number extension
          example: "123"
        faxNumber:
          maxLength: 30
          type: string
          description: The law firm office fax number
          example: 999-999-9999
        remitToAddress1:
          maxLength: 255
          type: string
          description: The first line of the 'remit to' law firm office address
          example: Address 1
        remitToAddress2:
          maxLength: 255
          type: string
          description: The second line of the 'remit to' law firm office address
          example: Address 2
        remitToAddress3:
          maxLength: 255
          type: string
          description: The third line of the 'remit to' law firm office address
          example: Address 3
        remitToCity:
          maxLength: 255
          type: string
          description: The city of the 'remit to' law firm office address
          example: Raleigh
        remitToState:
          maxLength: 2
          minLength: 2
          type: string
          description: The ISO 2 character state code for the 'remit to' law firm
            office address
          example: NC
        remitToZip:
          maxLength: 20
          type: string
          description: The zip code of the 'remit to' law firm office address
          example: "27606"
        remitToCountry:
          maxLength: 100
          type: string
          description: The country of the 'remit to' law firm office address
          example: UNITED STATES
        remitToPhoneNumber:
          maxLength: 30
          type: string
          description: The 'remit to' phone number
          example: 916-777-7777
        remitToPhoneExtension:
          maxLength: 6
          type: string
          description: The 'remit to phone number extension
          example: "123"
        remitToFaxNumber:
          maxLength: 30
          type: string
          description: The 'remit to' fax number
          example: 999-999-9999
    Payment:
      required:
      - invoiceGuid
      - invoiceId
      - paymentAmount
      - paymentCurrency
      - paymentDate
      - paymentReference
      - paymentStatus
      type: object
      properties:
        invoiceGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique identifier for the invoice. This field is case sensitive.
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        paymentDate:
          type: string
          description: Date of payment to law firm / vendor
          format: date
        paymentReference:
          maxLength: 128
          minLength: 1
          type: string
          description: "Reference info to be posted about the payment; Check #, wire\
            \ transfer reference, etc."
          example: CF0E4B2A0F36
        paymentAmount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount paid on the invoice
          format: double
          example: 12.59
        paymentCurrency:
          maxLength: 3
          minLength: 3
          type: string
          description: Three letter ISO code for the currency
          example: USD
        invoiceId:
          maxLength: 11
          minLength: 1
          type: integer
          description: CounselLink identifier assigned to the matter
          format: int64
          example: 12345678910
        paymentStatus:
          maxLength: 255
          minLength: 1
          type: string
          description: The current status of the payment
          readOnly: true
          example: Paid
    PaymentExtractSuccessResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        payments:
          type: array
          description: List of invoice payments.
          items:
            $ref: '#/components/schemas/Payment'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceTaxByGuidResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        taxNetAmount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The Tax Net Amount on invoice
          format: double
          example: 160
        taxSummaries:
          type: array
          items:
            $ref: '#/components/schemas/TaxSummary'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceTaxByGuidValidationError:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetWorkflowEventResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        workflowEvent:
          $ref: '#/components/schemas/InvoiceWorkflowEvent'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceHistoryResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        invoiceEventHistoryList:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceEventHistory'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    InvoiceEventHistory:
      type: object
      properties:
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number for the invoice event
          example: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
        eventDescription:
          maxLength: 255
          type: string
          description: Description of the event
          example: Invoice Supplementary Edit
        eventDate:
          type: string
          description: Date and timestamp of the invoice event
          format: date-time
        comment:
          maxLength: 255
          type: string
          description: Comment on the invoice event
          example: Updating invoice due date
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Identifier of the user taking the action
          example: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
    ClientOffice:
      type: object
      properties:
        id:
          maxLength: 11
          minLength: 1
          type: integer
          description: Identifier of the client office
          format: int64
          example: 1
        name:
          maxLength: 255
          minLength: 1
          type: string
          description: Name of the client office
          example: West Office
        clientId:
          maxLength: 11
          minLength: 1
          type: integer
          description: Identifier of the client
          format: int64
          example: 1
        clientName:
          maxLength: 255
          minLength: 1
          type: string
          description: Name of the client
          example: ABC Client
        roleType:
          maxLength: 12
          minLength: 1
          type: string
          description: Roletype of the office to the client
          example: CLIENT_OFFICE
          enum:
          - CLIENT
          - DIVISION
          - CLIENT_OFFICE
          - MATTER_FIRM
          - BILLING_CONTACT
          - INVOICE_CONTACT
          - MATTER_CONTACT
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique identifier for the client office
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        address:
          $ref: '#/components/schemas/Address'
        divisionId:
          maxLength: 11
          minLength: 1
          type: integer
          description: The unique id for the division
          format: int64
          example: 100654
        preferredCurrency:
          maxLength: 255
          minLength: 1
          type: string
          description: The preferred currency for the client office
          example: USD
        divisionName:
          maxLength: 255
          minLength: 1
          type: string
          description: The name of the division
          example: Western Division
        divisionGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique identifier for the division
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
      description: The contact office on the matter
    GetDeletedInvoiceEvent:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        invoiceGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The number/invoice identifier of the specified invoice
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        eventDate:
          type: string
          description: The date and time of the event
          format: date-time
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reference id for a client user or lawfirm user
          example: c0xyRUh5WTM1YUVFUGxEOVozUklYUT09
        clientOffice:
          $ref: '#/components/schemas/ClientOffice'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetDeletedInvoicesEventsResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/GetDeletedInvoiceEvent'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceEvent:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        invoiceGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The number/invoice identifier of the specified invoice
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        eventDate:
          type: string
          description: The date and time of the event
          format: date-time
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The unique reference number to identify the event
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        invoiceStatus:
          type: string
          description: The event which occurred on the invoice
          example: REJECTED
          enum:
          - APPROVED
          - SENT
          - REJECTED
          - DELETED
          - APPROVAL_REMOVED
          - RETRIGGERED
          - API_FAILURE
          - API_SUCCESS
          - CUSTOM_DATA_UPDATED
          - NOT_SUPPORTED
        clientOffice:
          $ref: '#/components/schemas/ClientOffice'
        relatedEventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The reference number to identify the related event
          example: aSs4U2dzTUdkZUlEaXkyQmk0VTY1UT09
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoicesEventsResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/GetInvoiceEvent'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoiceWorkflowEventOverview:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        invoiceGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique invoice identifier
          format: uuid
          example: 16140163-5441-4707-bd05-25d4e88e8390
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number for the workflow event
          example: R1RxcUk5QnJ2cGMrN2J5VlA3aHlGQT09
        eventDate:
          type: string
          description: Date and time of the invoice workflow event
          format: date-time
        clientOffice:
          $ref: '#/components/schemas/ClientOffice'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    GetInvoicesWorkflowEventOverviewResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/GetInvoiceWorkflowEventOverview'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    ErrorInfo:
      type: object
      properties:
        field:
          type: string
        message:
          type: string
    ValidationErrors:
      type: object
      properties:
        errorInfos:
          type: array
          items:
            $ref: '#/components/schemas/ErrorInfo'
    GetInvoiceLawFirmOfficeResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        lawFirmOffice:
          $ref: '#/components/schemas/InvoiceLawFirmOffice'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    LawFirmOfficeUser_GetLawFirmOfficeUsers:
      type: object
      properties:
        userGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The user GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: User Reference
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        ssoId:
          maxLength: 255
          type: string
          description: SSO ID
          example: EC185173
        loginId:
          maxLength: 20
          type: string
          description: Login ID
          example: smithx
        firstName:
          maxLength: 255
          type: string
          description: First Name
          example: James
        middleName:
          maxLength: 255
          type: string
          description: Middle Name
          example: Tiberius
        lastName:
          maxLength: 255
          type: string
          description: Last Name
          example: Kirk
        email:
          maxLength: 255
          type: string
          description: Email Address
          format: email
          example: captain@enterprise.net
        practicingAttorney:
          type: boolean
          description: The practicing attorney indicator
        phone:
          maxLength: 30
          type: string
          description: The user phone number
          example: 555-555-5555
        mobilePhone:
          maxLength: 30
          type: string
          description: The user mobile phone number
          example: 555-555-5555
        fax:
          maxLength: 30
          type: string
          description: The user fax number
          example: 555-555-5555
        gender:
          maxLength: 64
          type: string
          description: The timekeeper gender indicator
          example: American Indian or Alaska Native
        race:
          maxLength: 64
          type: string
          description: The timekeeper race
          example: Decline to State
        veteran:
          type: boolean
          description: The veteran indicator
        disabled:
          type: boolean
          description: The disabled indicator
        lgbt:
          type: boolean
          description: The LGBT indicator
        birthDate:
          type: string
          description: The user birth date
          format: date
    Message_GetLawFirmOfficeUsers:
      type: object
      properties:
        code:
          type: string
          description: Code associated with the message
          example: VALIDATION_ERROR
          enum:
          - VALIDATION_ERROR
          - UCDF_FIELDNAME_NOT_FOUND
          - UCDF_VALUE_NOT_FOUND
          - NO_UCDFS_FOUND
          - UCDF_DATATYPE_INCORRECT
          - UCDF_OPTION_VALUE_NOT_FOUND
          - UCDF_MULTI_OPTIONS_NOT_SUPPORTED
          - UCDF_OPERATION_NOT_SUPPORTED
          - UCDF_MULTI_OPTIONS_ONLY_SUPPORTED
          - INVALID_CURRENCY
          - MATTER_SAVE_ERROR
          - MATTER_NUMBER_NOT_FOUND
          - MATTER_NUMBER_REQUIRED
          - MATTER_GUID_NOT_FOUND
          - MATTER_ID_NOT_FOUND
          - MATTER_NUMBER_NOT_UNIQUE
          - MATTER_NUMBER_ALREADY_EXISTS
          - SSO_ID_NOT_FOUND
          - LOGIN_ID_NOT_FOUND
          - CREATED_DATE_AFTER_CLOSED_DATE
          - ENTITY_ROLE_ERROR
          - ENTITY_ID_NOT_FOUND
          - INVALID_CLIENT
          - CONTACT_OFFICE_NOT_FOUND
          - CLIENT_OFFICE_NOT_FOUND
          - FEE_STRUCTURE_NAME_NOT_UNIQUE
          - FEE_STRUCTURE_NAME_NOT_FOUND
          - FEE_STRUCTURE_NODE_NOT_FOUND
          - UCDF_DATE_FORMAT_ERROR
          - UCDF_NUMERIC_FORMAT_ERROR
          - UCDF_PERCENTAGE_FORMAT_ERROR
          - UCDF_MONEY_FORMAT_ERROR
          - UCDF_TABLE_NOT_FOUND
          - UCDF_TABLE_NAME_INCONSISTENT
          - UCDF_TABLE_ROWS_EXCEED_MAXIMUM_ROWS
          - UCDF_TABLE_ROW_NO_INFO
          - UCDF_TABLE_ROW_NOT_DELETED
          - UCDF_TABLE_ROW_NOT_UPDATED
          - UCDF_TABLE_ROW_REF_IGNORED
          - PAYMENT_NOT_ADDED
          - VENDOR_ID_FIELD_NOT_CONFIGURED
          - NO_LAWFIRM_OFFICE_ASSIGNED_TO_VENDOR
          - MULTIPLE_LFO_ASSIGNED_TO_VENDOR_ID
          - ACTIVE_FEE_OFFER_NOT_FOUND
          - INVOICE_NOT_FOUND
          - INVOICE_NOT_APPROVED
          - INVOICE_NUMBER_NOT_UNIQUE
          - WORKFLOW_ID_NOT_FOUND
          - RULESET_ID_NOT_FOUND
          - INVALID_ALLOCATION
          - UNABLE_TO_ASSIGN_LF
          - PAYMENT_REFERENCE_EXISTS_WITH_DIFFERENT_DATE
          - PAYMENT_REFERENCE_EXISTS_FOR_INVOICE_NUMBER
          - DUPLICATE_PAYMENT
          - PAYMENT_DATE_NOT_PROVIDED
          - PAYMENT_AMOUNT_NOT_PROVIDED
          - PAYMENT_CURRENCY_NOT_PROVIDED
          - PAYMENT_REFERENCE_NOT_PROVIDED
          - PAYMENT_REFERENCE_CURRENCY_NOT_MATCHING
          - BATCH_IN_PROGRESS
          - CLIENT_ID_INVALID
          - PAGE_NUMBER_INVALID
          - BATCH_ID_INVALID
          - BATCH_CANNOT_BE_CREATED
          - ECA_ID_REQUIRED
          - ECA_GROUP_REQUIRED
          - PAGE_SIZE_INVALID
          - DEFAULT_PAGE_SIZE_USED
          - FEE_STRUCTURE_REQUIRED
          - FEE_OFFER_REQUIRED
          - MATTER_ALREADY_ASSIGNED_TO_LAW_FIRM
          - LAW_FIRM_CANNOT_BE_ASSIGNED
          - MATTER_TYPE_GUID_NOT_FOUND
          - LAW_FIRM_OFFICE_NOT_FOUND
          - LAW_FIRM_NOT_FOUND
          - MATTER_ASSIGNMENT_REF_REQUIRED
          - MATTER_ASSIGNMENT_REF_IGNORED
          - MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
          - VENDOR_ID_CHANGE_IGNORED
          - FEE_STRUCTURE_ID_CHANGE_IGNORED
          - VENDOR_ID_OR_LAW_FIRM_OFFICE_ID_REQUIRED
          - VENDOR_ID_REQUIRED
          - FEE_STRUCTURE_ID_REQUIRED
          - UNABLE_TO_PERFORM_FEE_STRUCTURE_CHANGE
          - NO_ACTIVE_FEE_OFFERS_FOUND
          - PENDING_BILLS_ON_FEE_STRUCTURE
          - LAW_FIRM_ASSIGNMENT_UNACCEPTED
          - UNABLE_TO_PERFORM_FEE_OFFER_CHANGE
          - UCDF_SAVE_ERROR
          - MATTER_CHANGE_CONFIGURATION
          - OFFER_RATE_INVALID
          - FEE_STRUCTURE_CANNOT_BE_CHANGED
          - INVOICE_NOT_FOUND_FOR_CLIENT
          - INVALID_REFERENCE
          - INVOICE_CHARGES_NOT_PROVIDED
          - INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
          - INVOICE_CHARGE_ADJUSTMENT_NOT_FOUND_FOR_CLIENT
          - OPERATION_NOT_SUPPORTED
          - CURRENCY_CANNOT_BE_CHANGED
          - MATTER_ASSIGNMENT_REF_INVALID
          - INVALID_CURSOR
          - DATE_FORMAT_EXCEPTION
          - UNABLE_TO_RETRIEVE_APPROVED_EVENT
          - UNAPPROVED_EVENT
          - EVENT_NOT_FOUND
          - USER_NOT_FOUND
          - REASON_DESCRIPTION_REQUIRED
          - CURRENCY_CODE_REQUIRED
          - CLIENT_GUID_DOES_NOT_EXIST
          - DIVISION_GUID_DOES_NOT_EXIST
          - ENTITY_NOT_FOUND
          - DIVISION_DOES_NOT_EXIST_FOR_CLIENT
          - UNABLE_TO_ADD_CLIENT_DIVISION
          - USER_NOT_ALLOWED
          - INVALID_GUID
          - UNABLE_TO_RETRIEVE_FEE_OFFER_DETAIL
          - MATTER_TYPE_REQUIRED
          - FEE_STRUCTURE_ID_NOT_FOUND
          - MATTER_CANNOT_BE_DELETED
          - PAPER_PROCESSING_BILLER_TYPE_NOT_FOUND
          - MATTER_NOT_FOUND
          - LAW_FIRM_DOES_NOT_EXIST
          - LAW_FIRM_OFFICE_ID_NOT_FOUND
          - LAW_FIRM_ASSIGNED_NOT_ACTIVE_FOR_MATTER
          - BAD_REQUEST
          - LAWFIRM_OFFICE_HAS_DECLINED_NEW_ASSIGNMENTS
          - COUNSEL_TYPE_NOT_FOUND
          - DUPLICATE_ACCESS_KEY
          - INVALID_ACCESS_KEY
          - INVALID_SECRET_KEY
          - CONTACT_NOT_FOUND
          - CONTACT_NOT_DELETED
          - CONTACT_ASSOCIATED_TO_MATTER_LEGALHOLD
          - CONTACT_CREATED
          - CONTACT_UPDATED
          - PARTICIPANT_ROLE_NOT_FOUND
          - MATTER_PARTICIPANT_ALREADY_EXISTS
          - MATTER_PARTICIPANT_NOT_FOUND
          - MATTER_PARTICIPANT_NOT_DELETED
          - INVALID_EMAIL
          - INVALID_DATE_OF_BIRTH
          - DUPLICATE_ENTITY
          - CANNOT_CREATE_CONTACT
          - USER_DOES_NOT_EXIST
          - DOCUMENT_NOT_FOUND
          - DOCUMENT_NOT_DOWNLOADABLE
          - DOCUMENT_ID_IS_REQUIRED
          - FEE_STRUCTURE_ID_VALID_FOR_OFFICE
          - FEE_STRUCTURE_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - WORKFLOW_ID_VALID_FOR_OFFICE
          - WORKFLOW_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - RULESET_ID_VALID_FOR_OFFICE
          - RULESET_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - INCORRECT_CLIENT_ENTITY_ID
          - MCR_INVALID_EFFECTIVE_DATE
          - MCR_INVALID_FEE_STRUCTURE_EFFECTIVE_DATE
          - LFO_RELATIONSHIP_NOT_FOUND
          - MATTER_TYPE_CONFIG_NOT_ENABLED
          - UCDF_CONFIGURATION_NOT_FOUND_FOR_FIELD
          - MATTER_TYPE_NOT_EXIST_IN_OFFICE
          - MATTER_ASSIGNMENT_NOT_FOUND
          - DISPLAY_ASSIGNING_OFFICE_DURING_MATTER_SETUP_CONFIG_NOT_SET
          - ASSIGNING_OFFICE_IS_REQUIRED_DURING_MATTER_SETUP
          - MATTER_ASSIGNING_OFFICE_ERROR
          - FAST_TRACK_INACTIVE
          - LAW_FIRM_INVOICE_NUMBER_NOT_UNIQUE
          - RELATED_MATTER_ERROR
          - PENDING_INVOICE_ERROR
          - SERVICE_UNAVAILABLE_ERROR
          - FORBIDDEN_ENDPOINT
          - CHARGE_ADJUSTMENT_ERROR
          - CHARGE_NUMBER_NOT_FOUND
          - CHARGE_NUMBER_NOT_ASSOCIATED_WITH_ADJUSTMENT_CHARGE_NUMBER
          - RULE_CODE_INVALID
          - TAX_SUMMARY_ERROR
          - INTAKE_GUID_NOT_FOUND
        type:
          type: string
          description: Type of message
          example: INFO
          enum:
          - INFO
          - WARN
          - ERROR
        field:
          type: string
          description: The field pertaining to the message
          example: divisionName
        value:
          type: string
          description: The value of the field pertaining to the message
          example: West Division
        message:
          type: string
          description: A message is sometimes provided when the code is not sufficient
            to troubleshoot the issue
          example: Division with name West Division does not exist
        values:
          type: array
          items:
            type: string
    NotificationError_GetLawFirmOfficeUsers:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message_GetLawFirmOfficeUsers'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
    ServerErrorInfo_GetLawFirmOfficeUsers:
      type: object
      properties:
        rid:
          maxLength: 36
          minLength: 36
          type: string
          description: Request ID
          example: aa33d504-9ace-4ba4-9796-86b3bc7aa52f
        info:
          type: string
          description: Additional information about the error
          example: Request ID (rid) and message values helps in debugging. Please
            provide these when contacting support about the error!
        message:
          type: string
          description: Error Message
          example: Unexpected error occurred. Request ID = aa33d504-9ace-4ba4-9796-86b3bc7aa52f
    JournalEntry:
      required:
      - author
      - category
      - date
      - id
      - subject
      type: object
      properties:
        id:
          maxLength: 19
          type: integer
          description: "The journal entry ID. \nIf the 'id' is used for POST operations,\
            \ a zero '0' must be entered as the identifier."
          format: int64
          example: 1234567
        subject:
          maxLength: 255
          type: string
          description: The journal entry subject. Required for POST Operations
          example: Matter Note
        category:
          maxLength: 128
          type: string
          description: The journal entry category. Required for POST Operations
          example: Service of Process
        date:
          type: string
          description: The journal entry date. Required for POST Operations
          format: date
        detail:
          type: string
          description: |-
            The journal entry detail.
            The new line character 'br' is required at the end of each new line to produce additional lines in the detail area.
          example: "Lead Counsel, here's the contract to review..."
        author:
          maxLength: 255
          minLength: 1
          type: string
          description: The journal entry author. Required field for PUT operations.
            The 'author' is identified using the UserRef.
          example: userRef
        sharedWithLawFirm:
          type: boolean
          description: The journal entry shared with law firm indicator. Default value
            is 'false'
    MatterParticipantAdd:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterParticipantRelationship:
      required:
      - contactId
      - participantRole
      type: object
      properties:
        contactId:
          maxLength: 11
          minLength: 1
          type: integer
          description: |-
            The CounselLink contact identifier.
            ContactId for POST Operations must be unique.
          format: int64
          example: 19962624
        participantRole:
          maxLength: 128
          type: string
          description: The Participant Role
          example: Consultant
        lead:
          type: boolean
          description: The role of a lead
        allowLawFirmToView:
          type: boolean
          description: Allow the law firm to view Indicator (No restrictions)
    MatterAllocation:
      required:
      - expensePercent
      - feePercent
      - id
      type: object
      properties:
        id:
          maxLength: 128
          minLength: 1
          type: string
          description: |-
            Allocation contact ID (external). Required to add allocation to the POST matter.
            If the identifier does not exist, the name field can be used to create a new contact.
          example: AC45 - 1
        name:
          maxLength: 255
          type: string
          description: "Allocation contact name. The name of the particular allocation\
            \ as configured in CounselLink. \nIf identifier is not found, a new allocation\
            \ contact is created with this name.\nIf the identifier does exist, this\
            \ field is ignored"
          example: "Alloc Contact #45 - 1"
        feePercent:
          multipleOf: 0.01
          maximum: 100
          minimum: 0
          maxLength: 30
          minLength: 1
          type: number
          description: |-
            Fee percentage (between 0 and 100). The percentage of invoice fee amount to assigned to Allocation Contact. Required to add allocation to the POST matter.
            The maximum size of the field is 8 with a decimal point and 4 decimal places
          format: double
          example: 10.15
        expensePercent:
          multipleOf: 0.01
          maximum: 100
          minimum: 0
          maxLength: 30
          minLength: 1
          type: number
          description: |-
            Expense percentage (between 0 and 100). Required to add allocation to the POST matter.
            The maximum size of the field is 8 with a decimal point and 4 decimal places
          format: double
          example: 10.15
        costShare:
          type: boolean
          description: |-
            Cost share. Indicator for whether or not the allocation is cost shared. A value of “Yes” indicates if contact represents the portion NOT paid by client.
            If the contact has a limit assigned and the limit is not reached, then the Fee/Exp amount will not be included in the Invoice Amounts.
            If the contact has a limit assigned and the limit is breached, then the Fee/Exp amount will be included in the Invoice Amounts.
          example: true
        feeBalanceRemaining:
          type: boolean
          description: |-
            Fee balance remaining. Indicates if contact should take any remaining balance (leftover pennies for split allocation).
            If not specified, will default to True for the first or only allocation contact in the list.
        expenseBalanceRemaining:
          type: boolean
          description: "Expense balance remaining. If not specified, will default\
            \ to True for the first or only allocation contact in the list."
        glCode:
          maxLength: 36
          type: string
          description: GL Code associated with the allocation contact
          example: "121"
        allocationLimit:
          multipleOf: 0.0000010
          maxLength: 30
          minLength: 1
          type: number
          description: The allocation limit amount
          format: double
          example: 5000.0
        taxPercent:
          multipleOf: 0.01
          maximum: 100
          minimum: 0
          maxLength: 30
          minLength: 1
          type: number
          description: Tax percentage (between 0 and 100)
          format: double
          example: 10.15
        taxBalanceRemaining:
          type: boolean
          description: Tax balance remaining.
        trackOverage:
          type: boolean
          description: Track Overage
          deprecated: true
      description: List of Allocation Contacts on the matter
    MatterAllocationGroup:
      type: object
      properties:
        applyToInvoices:
          type: boolean
          description: Whether to apply the allocations to existing invoices?
          writeOnly: true
        allocations:
          type: array
          description: List of Allocation Contacts on the matter
          items:
            $ref: '#/components/schemas/MatterAllocation'
      description: The matter allocation group
    MatterAllocationSuccessResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        allocationGroup:
          $ref: '#/components/schemas/MatterAllocationGroup'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterAllocationErrorResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        allocationGroup:
          $ref: '#/components/schemas/MatterAllocationGroup'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    LfoAssignment:
      required:
      - feeStructureId
      - ruleSetId
      - vendorId
      - workflowId
      type: object
      properties:
        vendorId:
          maxLength: 8000
          type: string
          description: |-
            The unique identifier assigned to a specific vendor / firm. <b>Required for POST</b>. This is a single line text custom data field on the law firm office profile with an inbound EDI Field name of “VendorID”.

            Either the 'vendorId' or the 'lawfirmOfficeId' must be provided and is required to assign a vendor.

            If the 'vendorId' is provided, it is used to validate the law firm office and the 'lawFirmOfficeId' field is ignored.

            If the 'vendorId' is not provided, the API validates the law firm office using the 'lawFirmOfficeId'.
          example: '*12344567'
        lawFirmOfficeId:
          maxLength: 11
          type: integer
          description: "The law firm office identifier. Law firm office ID or vendor\
            \ ID is required. \nEither the 'vendorId' or the 'lawfirmId' must be provided\
            \ and is required to assign a vendor.\n\nIf the 'vendorId' is provided,\
            \ it is used to validate the law firm office and the 'lawFirmOfficeId'\
            \ field is ignored.\n\nIf the 'vendorId' is not provided, the API validates\
            \ the law firm office using the 'lawFirmOfficeId'."
          format: int64
          example: 12344567
        lawFirmOfficeGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The law firm office GUID.
          format: uuid
          example: 957f3bb5-86a4-40a8-b3d2-5867ff1f275c
        lawFirmGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The law firm GUID.
          format: uuid
          example: a57f3bb5-86a4-40a8-b3d2-5867ff1f275c
        workflowId:
          maxLength: 13
          minLength: 1
          type: string
          description: The unique identifier assigned to the specific workflow/vendor
            assignment. Required for POST to assign a vendor
          example: "8001415"
        ruleSetId:
          maxLength: 11
          minLength: 1
          type: string
          description: The unique identifier assigned to the specific rule set that
            applies to all invoices submitted on a matter by a specific vendor. Required
            for POST to assign a vendor
          example: "8001415"
        feeStructureId:
          maxLength: 9
          type: integer
          description: The unique identifier assigned to the fee structure. Required
            for POST to assign a vendor
          format: int64
          example: 3131
        matterAssignmentRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Law Firm assignment Reference. A unique reference number for
            the matter assignment. This is a required field for updates (PUT operations)
            to existing matter assignments.
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        volumeDiscountRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Volume Discount Reference
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        vendorMatterNumber:
          maxLength: 64
          type: string
          description: "Vendor Matter number related to the Matter Assignment. This\
            \ field is set by the Law Firm in CounselLink and can be viewed from a\
            \ GET endpoint, but can not be updated per a POST or a PUT endpoint."
          example: M1234567
        poNumber:
          maxLength: 64
          type: string
          description: PO Number. The Purchase Order number indicating the 'purchase'
            of Law Firm service by a client
          example: "12345467"
        leadCounsel:
          type: boolean
          description: Lead Counsel. Default value is 'false'
        counselType:
          type: string
          description: Counsel Type. Defaults to 'Assigned Law Firm' if not specified
            in request.
          example: Assigned Law Firm
        historicalFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical Billed Fees
          format: double
          example: 500.0
        historicalExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical Billed Expenses
          format: double
          example: 500.0
      description: The matter law firm assignments
    MatterCreate:
      required:
      - contactOfficeName
      - currencyCode
      - guid
      - invoiceContactLoginId
      - matterContactLoginId
      - matterId
      - matterNumber
      - status
      - title
      type: object
      properties:
        guid:
          maxLength: 36
          type: string
          description: "Unique system generated identifier for the matter. This field\
            \ is case sensitive. Matter number or matter ID is required. If matter\
            \ ID isn't provided, guid is required. Required for PUT Operations"
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        matterNumber:
          maxLength: 64
          type: string
          description: "This is the unique identifier for a matter in client system.\
            \ Matter number or matter ID is required. If matter ID isn't provided,\
            \ guid is required."
          example: M1234567
        currencyCode:
          maxLength: 3
          minLength: 3
          type: string
          description: The matter currency code
          example: USD
        title:
          maxLength: 255
          minLength: 1
          type: string
          description: The matter title
          example: Title of the matter
        status:
          maxLength: 45
          minLength: 4
          type: string
          description: "The matter status. If CLOSED, a matter closed event will be\
            \ created if it does not already exist."
          example: ACTIVE
          enum:
          - ACTIVE
          - ABANDONED
          - CLOSED
          - DELETED
          - UNACCEPTED
          - INACTIVE
          - INCOMPLETE
          - UNASSIGNED
          - ASSIGNED
          - ASSIGNED_TO_INTERNAL_COUNSEL
          - FEE_STRUCTURE_CHANGE_REQUESTED
          - MODIFY_FEES_CHANGE_REQUESTED
          - VARIABLE_CHANGE_REQUESTED
          - ASSIGN_VOLUME_DISCOUNT
          - CHANGED_VOLUME_DISCOUNT
          - REMOVE_VOLUME_DISCOUNT
          - PENDING_REMOVAL
          - RELATED_MATTER_ACTIVE
          - RELATED_MATTER_REMOVED
          - PENDING_STAFFING_LIST_APPROVAL
          - PENDING_STAFFING_LIST_SUBMISSION
          - LEGALPRECISION_STATUS_MIGRATED_TO_COUNSELLINK
          - INTAKE
          - NONE
        invoiceContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Invoice contact individual.
            The invoiceContactSSOId or the invoiceContactLoginId is required to create a matter.
          example: WF1
        matterContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Matter contact individual.
            The matterContactSSOId or the matterContactLoginId is required to create a matter.
          example: WF2
        invoiceContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for invoice contact. If no value is provided\
            \ for invoiceContactSSOId, this value will be used to identify the invoice\
            \ contact."
          example: jsmith
        matterContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for the user listed as the contact for the\
            \ matter. If no value is provided for matterContactSSOId, this value will\
            \ be used to identify the matter contact."
          example: jsmith
        contactOfficeName:
          maxLength: 255
          minLength: 1
          type: string
          description: |-
            A value that uniquely identifies the office that assigned matter.
            This value must be mapped to a valid office / division in CounselLink.
          example: "Performance Law Firm, Raleigh"
        description:
          maxLength: 1024
          type: string
          description: Text value that provides an enhanced description of the matter
          example: This matter involves ...
        matterTypeGuid:
          maxLength: 36
          type: string
          description: |-
            The matter type Guid. This field is case sensitive.
            CounselLink does not require a matter type inherently, but this field is required if the customer is configured to require matter type.
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        createdDate:
          type: string
          description: Matter create date in ISO8601 format
          format: date
        closedDate:
          type: string
          description: |-
            Matter closed date in ISO8601 format.
            If the matter status is closed then this date will be set as the closed date.
          format: date
        historicalFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed fees
          format: double
          example: 500.0
        historicalExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed expenses
          format: double
          example: 500.0
        matterId:
          maxLength: 11
          type: integer
          description: "The CounselLink matter tracking identifier. Matter number\
            \ or matter ID is required. If matter ID isn't provided, guid is required."
          format: int64
          example: 1234567
        assigningOfficeName:
          maxLength: 255
          type: string
          description: The matter assigning office name
          example: "Performance Law Firm, Raleigh"
        matterValue:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The matter value
          format: double
          example: 10000.0
        stateCode:
          maxLength: 3
          type: string
          description: The matter state code (Accepts "N/A")
          example: NC
        countyName:
          maxLength: 255
          type: string
          description: The matter county code (Accepts "N/A")
          example: Wake
        shouldTriggerMatterEventRules:
          type: boolean
          description: Should Trigger Matter Event Rule Processing. Default value
            is 'true'
          example: true
        textUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Text user custom data fields
          description: The matter Text user custom data fields
        numericUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Numeric user custom data fields
          description: The matter Numeric user custom data fields
        moneyUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Money user custom data fields
          description: The matter Money user custom data fields
        multiLineTextUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Multi-line Text user custom data fields
          description: The matter Multi-line Text user custom data fields
        dateUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Date user custom data fields
            format: date-time
          description: The matter Date user custom data fields
        optionUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Option user custom data fields
          description: The matter Option user custom data fields
        multiCheckboxUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Multi-checkbox user custom data fields
            items:
              type: string
              description: The matter Multi-checkbox user custom data fields
          description: The matter Multi-checkbox user custom data fields
        tableUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Table user custom data fields
            items:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/UCDFCell'
              description: The matter Table user custom data fields
          description: The matter Table user custom data fields
        lfoAssignments:
          type: array
          description: The matter law firm assignments
          items:
            $ref: '#/components/schemas/LfoAssignment'
        allocationGroup:
          $ref: '#/components/schemas/MatterAllocationGroup'
        relatedParentGuid:
          maxLength: 36
          type: string
          description: The related parent GUID
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        relatedChildGuids:
          maxLength: 36
          type: array
          description: |-
            The related child GUIDs.
            This is an informational field that is ignored for Create and Update.
          format: uuid
          example:
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f35
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f34
          items:
            maxLength: 36
            type: string
            description: |-
              The related child GUIDs.
              This is an informational field that is ignored for Create and Update.
            format: uuid
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFCell:
      type: object
      properties:
        type:
          maxLength: 255
          type: string
          description: Data type of UCDF field
          example: TEXT
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
        value:
          type: string
          description: Value of UCDF field
          example: Grey
    MatterUpdateResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        matterNumber:
          type: string
        guid:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterValidationError:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        matterNumber:
          type: string
        guid:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    Matter:
      required:
      - contactOfficeName
      - currencyCode
      - guid
      - invoiceContactLoginId
      - matterContactLoginId
      - matterId
      - matterNumber
      - status
      - title
      type: object
      properties:
        guid:
          maxLength: 36
          type: string
          description: "Unique system generated identifier for the matter. This field\
            \ is case sensitive. Matter number or matter ID is required. If matter\
            \ ID isn't provided, guid is required. Required for PUT Operations"
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        matterNumber:
          maxLength: 64
          type: string
          description: "This is the unique identifier for a matter in client system.\
            \ Matter number or matter ID is required. If matter ID isn't provided,\
            \ guid is required."
          example: M1234567
        currencyCode:
          maxLength: 3
          minLength: 3
          type: string
          description: The matter currency code
          example: USD
        title:
          maxLength: 255
          minLength: 1
          type: string
          description: The matter title
          example: Title of the matter
        status:
          maxLength: 45
          minLength: 4
          type: string
          description: "The matter status. If CLOSED, a matter closed event will be\
            \ created if it does not already exist."
          example: ACTIVE
          enum:
          - ACTIVE
          - ABANDONED
          - CLOSED
          - DELETED
          - UNACCEPTED
          - INACTIVE
          - INCOMPLETE
          - UNASSIGNED
          - ASSIGNED
          - ASSIGNED_TO_INTERNAL_COUNSEL
          - FEE_STRUCTURE_CHANGE_REQUESTED
          - MODIFY_FEES_CHANGE_REQUESTED
          - VARIABLE_CHANGE_REQUESTED
          - ASSIGN_VOLUME_DISCOUNT
          - CHANGED_VOLUME_DISCOUNT
          - REMOVE_VOLUME_DISCOUNT
          - PENDING_REMOVAL
          - RELATED_MATTER_ACTIVE
          - RELATED_MATTER_REMOVED
          - PENDING_STAFFING_LIST_APPROVAL
          - PENDING_STAFFING_LIST_SUBMISSION
          - LEGALPRECISION_STATUS_MIGRATED_TO_COUNSELLINK
          - INTAKE
          - NONE
        invoiceContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Invoice contact individual.
            The invoiceContactSSOId or the invoiceContactLoginId is required to create a matter.
          example: WF1
        matterContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Matter contact individual.
            The matterContactSSOId or the matterContactLoginId is required to create a matter.
          example: WF2
        invoiceContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for invoice contact. If no value is provided\
            \ for invoiceContactSSOId, this value will be used to identify the invoice\
            \ contact."
          example: jsmith
        matterContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for the user listed as the contact for the\
            \ matter. If no value is provided for matterContactSSOId, this value will\
            \ be used to identify the matter contact."
          example: jsmith
        contactOfficeName:
          maxLength: 255
          minLength: 1
          type: string
          description: |-
            A value that uniquely identifies the office that assigned matter.
            This value must be mapped to a valid office / division in CounselLink.
          example: "Performance Law Firm, Raleigh"
        description:
          maxLength: 1024
          type: string
          description: Text value that provides an enhanced description of the matter
          example: This matter involves ...
        matterTypeGuid:
          maxLength: 36
          type: string
          description: |-
            The matter type Guid. This field is case sensitive.
            CounselLink does not require a matter type inherently, but this field is required if the customer is configured to require matter type.
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        createdDate:
          type: string
          description: Matter create date in ISO8601 format
          format: date
        closedDate:
          type: string
          description: |-
            Matter closed date in ISO8601 format.
            If the matter status is closed then this date will be set as the closed date.
          format: date
        historicalFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed fees
          format: double
          example: 500.0
        historicalExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed expenses
          format: double
          example: 500.0
        matterId:
          maxLength: 11
          type: integer
          description: "The CounselLink matter tracking identifier. Matter number\
            \ or matter ID is required. If matter ID isn't provided, guid is required."
          format: int64
          example: 1234567
        assigningOfficeName:
          maxLength: 255
          type: string
          description: The matter assigning office name
          example: "Performance Law Firm, Raleigh"
        matterValue:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The matter value
          format: double
          example: 10000.0
        stateCode:
          maxLength: 3
          type: string
          description: The matter state code (Accepts "N/A")
          example: NC
        countyName:
          maxLength: 255
          type: string
          description: The matter county code (Accepts "N/A")
          example: Wake
        shouldTriggerMatterEventRules:
          type: boolean
          description: Should Trigger Matter Event Rule Processing. Default value
            is 'true'
          example: true
        textUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Text user custom data fields
          description: The matter Text user custom data fields
        numericUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Numeric user custom data fields
          description: The matter Numeric user custom data fields
        moneyUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Money user custom data fields
          description: The matter Money user custom data fields
        multiLineTextUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Multi-line Text user custom data fields
          description: The matter Multi-line Text user custom data fields
        dateUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Date user custom data fields
            format: date-time
          description: The matter Date user custom data fields
        optionUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Option user custom data fields
          description: The matter Option user custom data fields
        multiCheckboxUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Multi-checkbox user custom data fields
            items:
              type: string
              description: The matter Multi-checkbox user custom data fields
          description: The matter Multi-checkbox user custom data fields
        tableUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Table user custom data fields
            items:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/UCDFCell'
              description: The matter Table user custom data fields
          description: The matter Table user custom data fields
        lfoAssignments:
          type: array
          description: The matter law firm assignments
          items:
            $ref: '#/components/schemas/LfoAssignment'
        allocationGroup:
          $ref: '#/components/schemas/MatterAllocationGroup'
        relatedParentGuid:
          maxLength: 36
          type: string
          description: The related parent GUID
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        relatedChildGuids:
          maxLength: 36
          type: array
          description: |-
            The related child GUIDs.
            This is an informational field that is ignored for Create and Update.
          format: uuid
          example:
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f35
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f34
          items:
            maxLength: 36
            type: string
            description: |-
              The related child GUIDs.
              This is an informational field that is ignored for Create and Update.
            format: uuid
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    IndemnityPaymentResponseCreateUpdate:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        indemnityPaymentGuid:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    IndemnityPayment:
      required:
      - indemnityPaymentGuid
      - matterReserveGuid
      - payeeName
      - paymentAmount
      - paymentDate
      - transactionNumber
      type: object
      properties:
        indemnityPaymentGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Indemnity Payment unique identifier. Required for PUT Operations
          format: uuid
          example: bf5f0a4a-606c-487d-8886-e3d258e93d41
        matterReserveGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: |-
            The matter reserve unique identifier.
            This field is ignored / not interpreted for 'PUT' operations
          format: uuid
          example: 9935fc6c-31a2-4104-9a59-3294491704fb
        paymentDate:
          type: string
          description: The payment date
          format: date-time
        paymentAmount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Payment Amount
          format: double
          example: 250.0
        transactionNumber:
          maxLength: 36
          type: number
          description: Transaction Number
          example: 12345
        payeeName:
          maxLength: 255
          minLength: 1
          type: string
          description: Payee Name
          example: Indemnity Payee 1
        comment:
          maxLength: 1024
          type: string
          description: Payment Comment
          example: Indemnity payment added
        streetAddress:
          maxLength: 255
          type: string
          description: Street Address
          example: Indemnity payment added
        city:
          maxLength: 255
          type: string
          description: City
          example: South City
        stateCode:
          maxLength: 3
          type: string
          description: State Code
          example: NY
        postalCode:
          maxLength: 20
          type: string
          description: Postal Code
          example: "10012"
    PostLfoAssignmentResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        lfoAssignment:
          $ref: '#/components/schemas/LfoAssignment'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    LfoAssignmentRequestBody:
      required:
      - feeStructureId
      - ruleSetId
      - vendorId
      - workflowId
      type: object
      properties:
        vendorId:
          maxLength: 8000
          type: string
          description: |-
            The unique identifier assigned to a specific vendor / firm. <b>Required for POST</b>. This is a single line text custom data field on the law firm office profile with an inbound EDI Field name of “VendorID”.

            Either the 'vendorId' or the 'lawfirmOfficeId' must be provided and is required to assign a vendor.

            If the 'vendorId' is provided, it is used to validate the law firm office and the 'lawFirmOfficeId' field is ignored.

            If the 'vendorId' is not provided, the API validates the law firm office using the 'lawFirmOfficeId'.
          example: '*12344567'
        lawFirmOfficeId:
          maxLength: 11
          type: integer
          description: "The law firm office identifier. Law firm office ID or vendor\
            \ ID is required. \nEither the 'vendorId' or the 'lawfirmId' must be provided\
            \ and is required to assign a vendor.\n\nIf the 'vendorId' is provided,\
            \ it is used to validate the law firm office and the 'lawFirmOfficeId'\
            \ field is ignored.\n\nIf the 'vendorId' is not provided, the API validates\
            \ the law firm office using the 'lawFirmOfficeId'."
          format: int64
          example: 12344567
        lawFirmOfficeGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The law firm office GUID.
          format: uuid
          example: 957f3bb5-86a4-40a8-b3d2-5867ff1f275c
        lawFirmGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The law firm GUID.
          format: uuid
          example: a57f3bb5-86a4-40a8-b3d2-5867ff1f275c
        workflowId:
          maxLength: 13
          minLength: 1
          type: string
          description: The unique identifier assigned to the specific workflow/vendor
            assignment. Required for POST to assign a vendor
          example: "8001415"
        ruleSetId:
          maxLength: 11
          minLength: 1
          type: string
          description: The unique identifier assigned to the specific rule set that
            applies to all invoices submitted on a matter by a specific vendor. Required
            for POST to assign a vendor
          example: "8001415"
        feeStructureId:
          maxLength: 9
          type: integer
          description: The unique identifier assigned to the fee structure. Required
            for POST to assign a vendor
          format: int64
          example: 3131
        matterAssignmentRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Law Firm assignment Reference. A unique reference number for
            the matter assignment. This is a required field for updates (PUT operations)
            to existing matter assignments.
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        volumeDiscountRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Volume Discount Reference
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        vendorMatterNumber:
          maxLength: 64
          type: string
          description: "Vendor Matter number related to the Matter Assignment. This\
            \ field is set by the Law Firm in CounselLink and can be viewed from a\
            \ GET endpoint, but can not be updated per a POST or a PUT endpoint."
          example: M1234567
        poNumber:
          maxLength: 64
          type: string
          description: PO Number. The Purchase Order number indicating the 'purchase'
            of Law Firm service by a client
          example: "12345467"
        leadCounsel:
          type: boolean
          description: Lead Counsel. Default value is 'false'
        counselType:
          type: string
          description: Counsel Type. Defaults to 'Assigned Law Firm' if not specified
            in request.
          example: Assigned Law Firm
        historicalFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical Billed Fees
          format: double
          example: 500.0
        historicalExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical Billed Expenses
          format: double
          example: 500.0
    MatterReserveCreate:
      required:
      - changeReasonGuid
      - matterGuid
      - matterReserveGuid
      - reserveAmount
      - reserveContactId
      - reserveType
      type: object
      properties:
        matterReserveGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The matter reserve unique identifier. Required for PUT Operations
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        matterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The matter unique identifier
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        reserveContactId:
          maxLength: 255
          minLength: 1
          type: string
          description: The reserve contact ID. Either SSO ID or CounselLink login
            ID
          example: jsmith
        reserveType:
          maxLength: 17
          minLength: 15
          type: string
          description: The reserve type
          example: EXPENSE_RESERVE
          enum:
          - EXPENSE_RESERVE
          - INDEMNITY_RESERVE
        reserveAmount:
          multipleOf: 0.0000010
          minimum: 0
          maxLength: 30
          minLength: 1
          type: number
          description: The reserve amount
          format: double
          example: 5000.75
        comments:
          maxLength: 1024
          type: string
          description: The reserve comments
          example: Expense Reserve for XXXX
        sendEmailWhenReserveExceeded:
          type: boolean
          description: Send email when reserves exceeded indicator.
        sendEmailWhenThresholdExceeded:
          type: boolean
          description: Send email when threshold exceeded indicator
        thresholdPercentage1:
          multipleOf: 0.0000010
          maximum: 100
          minimum: 0
          maxLength: 30
          type: number
          description: The threshold percentage 1
          format: double
          example: 10.5
        thresholdPercentage2:
          multipleOf: 0.0000010
          maximum: 100
          minimum: 0
          maxLength: 30
          type: number
          description: The threshold percentage 2
          format: double
          example: 10.5
        thresholdPercentage3:
          multipleOf: 0.0000010
          maximum: 100
          minimum: 0
          maxLength: 30
          type: number
          description: The threshold percentage 3
          format: double
          example: 10.5
        changeReasonGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter reserve change reason unique identifier
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        includeHistoricalSpend:
          type: boolean
          description: Include historical spend values from Matter Overview in Reserve
            Actauls identifier
        reserveDate:
          type: string
          description: The date and time of the reserve event. Defaults to current
            date/time if not supplied or null.
          format: date-time
    MatterReserve:
      required:
      - changeReasonGuid
      - matterGuid
      - matterReserveGuid
      - reserveAmount
      - reserveContactId
      - reserveType
      type: object
      properties:
        matterReserveGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The matter reserve unique identifier. Required for PUT Operations
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        matterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The matter unique identifier
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        reserveContactId:
          maxLength: 255
          minLength: 1
          type: string
          description: The reserve contact ID. Either SSO ID or CounselLink login
            ID
          example: jsmith
        reserveType:
          maxLength: 17
          minLength: 15
          type: string
          description: The reserve type
          example: EXPENSE_RESERVE
          enum:
          - EXPENSE_RESERVE
          - INDEMNITY_RESERVE
        reserveAmount:
          multipleOf: 0.0000010
          minimum: 0
          maxLength: 30
          minLength: 1
          type: number
          description: The reserve amount
          format: double
          example: 5000.75
        comments:
          maxLength: 1024
          type: string
          description: The reserve comments
          example: Expense Reserve for XXXX
        sendEmailWhenReserveExceeded:
          type: boolean
          description: Send email when reserves exceeded indicator.
        sendEmailWhenThresholdExceeded:
          type: boolean
          description: Send email when threshold exceeded indicator
        thresholdPercentage1:
          multipleOf: 0.0000010
          maximum: 100
          minimum: 0
          maxLength: 30
          type: number
          description: The threshold percentage 1
          format: double
          example: 10.5
        thresholdPercentage2:
          multipleOf: 0.0000010
          maximum: 100
          minimum: 0
          maxLength: 30
          type: number
          description: The threshold percentage 2
          format: double
          example: 10.5
        thresholdPercentage3:
          multipleOf: 0.0000010
          maximum: 100
          minimum: 0
          maxLength: 30
          type: number
          description: The threshold percentage 3
          format: double
          example: 10.5
        changeReasonGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter reserve change reason unique identifier
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        includeHistoricalSpend:
          type: boolean
          description: Include historical spend values from Matter Overview in Reserve
            Actauls identifier
        reserveDate:
          type: string
          description: The date and time of the reserve event. Defaults to current
            date/time if not supplied or null.
          format: date-time
    MatterReserveRecovery:
      required:
      - matterReserveGuid
      - matterReserveRecoveryGuid
      - matterReserveRecoveryType
      - matterReserveType
      - payorName
      - recoveryAmount
      - recoveryDate
      type: object
      properties:
        matterReserveGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The matter reserve GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        matterReserveRecoveryGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The matter reserve recovery GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        matterReserveRecoveryType:
          type: string
          description: The recovery type
          example: SETTLEMENT_REIMBURSEMENT
          enum:
          - SETTLEMENT_REIMBURSEMENT
          - CUSTOMER_REIMBURSEMENT
          - INSURANCE
          - LAWSUIT_SETTLEMENT
          - JUDGMENT
          - OTHER
        matterReserveType:
          type: string
          description: The reserve type
          example: INDEMNITY_RESERVE
          enum:
          - EXPENSE_RESERVE
          - INDEMNITY_RESERVE
        recoveryDate:
          type: string
          description: The recovery date in ISO8601 format
          format: date
        recoveryAmount:
          multipleOf: 0.0000010
          minimum: 0
          maxLength: 30
          minLength: 1
          type: number
          description: The recovery amount
          format: double
          example: 5000.75
        payorName:
          maxLength: 255
          minLength: 1
          type: string
          description: The payor name
          example: payor name
        comments:
          maxLength: 1024
          type: string
          description: The recovery comments
          example: Recovery Comment
    FeeStructureChange:
      required:
      - feeStructureId
      type: object
      properties:
        feeStructureId:
          maxLength: 9
          minLength: 1
          type: string
          description: New Fee Structure id to be changed on the assignment
          example: "12"
        reason:
          maxLength: 255
          minLength: 1
          type: string
          description: Reason for the offered fee change
          example: OTHER
          enum:
          - OTHER
          - INCORRECT_FEE_STRUCTURE_ATTACHED
          - INCORRECT_VARIABLE_ATTACHED
          - CONVERSION_FROM_FLAT_FEE_TO_HOURLY
          - PARAMETERS_CHANGED
          - "OTHER, INCORRECT_FEE_STRUCTURE_ATTACHED, INCORRECT_VARIABLE_ATTACHED,\
            \ CONVERSION_FROM_FLAT_FEE_TO_HOURLY, PARAMETERS_CHANGED"
        feeStructureChangeDescription:
          maxLength: 15000
          minLength: 1
          type: string
          description: "Fee Structure change description, free form text describing\
            \ the fee structure change"
          example: Test fee structure description
        allowPendingInvoices:
          type: boolean
          description: Allow fee structure changes on matter with pending invoices
    FeeStructureChangeResponsePut:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        feeStructureChange:
          $ref: '#/components/schemas/FeeStructureChange'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterGet:
      required:
      - contactOfficeName
      - currencyCode
      - guid
      - invoiceContactLoginId
      - matterContactLoginId
      - matterId
      - matterNumber
      - status
      - title
      type: object
      properties:
        guid:
          maxLength: 36
          type: string
          description: "Unique system generated identifier for the matter. This field\
            \ is case sensitive. Matter number or matter ID is required. If matter\
            \ ID isn't provided, guid is required. Required for PUT Operations"
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        matterNumber:
          maxLength: 64
          type: string
          description: "This is the unique identifier for a matter in client system.\
            \ Matter number or matter ID is required. If matter ID isn't provided,\
            \ guid is required."
          example: M1234567
        currencyCode:
          maxLength: 3
          minLength: 3
          type: string
          description: The matter currency code
          example: USD
        title:
          maxLength: 255
          minLength: 1
          type: string
          description: The matter title
          example: Title of the matter
        status:
          maxLength: 45
          minLength: 4
          type: string
          description: "The matter status. If CLOSED, a matter closed event will be\
            \ created if it does not already exist."
          example: ACTIVE
          enum:
          - ACTIVE
          - ABANDONED
          - CLOSED
          - DELETED
          - UNACCEPTED
          - INACTIVE
          - INCOMPLETE
          - UNASSIGNED
          - ASSIGNED
          - ASSIGNED_TO_INTERNAL_COUNSEL
          - FEE_STRUCTURE_CHANGE_REQUESTED
          - MODIFY_FEES_CHANGE_REQUESTED
          - VARIABLE_CHANGE_REQUESTED
          - ASSIGN_VOLUME_DISCOUNT
          - CHANGED_VOLUME_DISCOUNT
          - REMOVE_VOLUME_DISCOUNT
          - PENDING_REMOVAL
          - RELATED_MATTER_ACTIVE
          - RELATED_MATTER_REMOVED
          - PENDING_STAFFING_LIST_APPROVAL
          - PENDING_STAFFING_LIST_SUBMISSION
          - LEGALPRECISION_STATUS_MIGRATED_TO_COUNSELLINK
          - INTAKE
          - NONE
        invoiceContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Invoice contact individual.
            The invoiceContactSSOId or the invoiceContactLoginId is required to create a matter.
          example: WF1
        matterContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Matter contact individual.
            The matterContactSSOId or the matterContactLoginId is required to create a matter.
          example: WF2
        invoiceContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for invoice contact. If no value is provided\
            \ for invoiceContactSSOId, this value will be used to identify the invoice\
            \ contact."
          example: jsmith
        matterContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for the user listed as the contact for the\
            \ matter. If no value is provided for matterContactSSOId, this value will\
            \ be used to identify the matter contact."
          example: jsmith
        contactOfficeName:
          maxLength: 255
          minLength: 1
          type: string
          description: |-
            A value that uniquely identifies the office that assigned matter.
            This value must be mapped to a valid office / division in CounselLink.
          example: "Performance Law Firm, Raleigh"
        description:
          maxLength: 1024
          type: string
          description: Text value that provides an enhanced description of the matter
          example: This matter involves ...
        matterTypeGuid:
          maxLength: 36
          type: string
          description: |-
            The matter type Guid. This field is case sensitive.
            CounselLink does not require a matter type inherently, but this field is required if the customer is configured to require matter type.
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        createdDate:
          type: string
          description: Matter create date in ISO8601 format
          format: date
        closedDate:
          type: string
          description: |-
            Matter closed date in ISO8601 format.
            If the matter status is closed then this date will be set as the closed date.
          format: date
        historicalFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed fees
          format: double
          example: 500.0
        historicalExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed expenses
          format: double
          example: 500.0
        matterId:
          maxLength: 11
          type: integer
          description: "The CounselLink matter tracking identifier. Matter number\
            \ or matter ID is required. If matter ID isn't provided, guid is required."
          format: int64
          example: 1234567
        assigningOfficeName:
          maxLength: 255
          type: string
          description: The matter assigning office name
          example: "Performance Law Firm, Raleigh"
        matterValue:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The matter value
          format: double
          example: 10000.0
        stateCode:
          maxLength: 3
          type: string
          description: The matter state code (Accepts "N/A")
          example: NC
        countyName:
          maxLength: 255
          type: string
          description: The matter county code (Accepts "N/A")
          example: Wake
        shouldTriggerMatterEventRules:
          type: boolean
          description: Should Trigger Matter Event Rule Processing. Default value
            is 'true'
          example: true
        textUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Text user custom data fields
          description: The matter Text user custom data fields
        numericUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Numeric user custom data fields
          description: The matter Numeric user custom data fields
        moneyUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Money user custom data fields
          description: The matter Money user custom data fields
        multiLineTextUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Multi-line Text user custom data fields
          description: The matter Multi-line Text user custom data fields
        dateUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Date user custom data fields
            format: date-time
          description: The matter Date user custom data fields
        optionUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Option user custom data fields
          description: The matter Option user custom data fields
        multiCheckboxUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Multi-checkbox user custom data fields
            items:
              type: string
              description: The matter Multi-checkbox user custom data fields
          description: The matter Multi-checkbox user custom data fields
        tableUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Table user custom data fields
            items:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/UCDFCell'
              description: The matter Table user custom data fields
          description: The matter Table user custom data fields
        lfoAssignments:
          type: array
          description: The matter law firm assignments
          items:
            $ref: '#/components/schemas/LfoAssignment'
        allocationGroup:
          $ref: '#/components/schemas/MatterAllocationGroup'
        relatedParentGuid:
          maxLength: 36
          type: string
          description: The related parent GUID
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        relatedChildGuids:
          maxLength: 36
          type: array
          description: |-
            The related child GUIDs.
            This is an informational field that is ignored for Create and Update.
          format: uuid
          example:
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f35
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f34
          items:
            maxLength: 36
            type: string
            description: |-
              The related child GUIDs.
              This is an informational field that is ignored for Create and Update.
            format: uuid
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    LawFirmAssignmentResponseGet:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        lawFirmAssignments:
          type: array
          items:
            $ref: '#/components/schemas/LfoAssignment'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    NotificationErrorMessage:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
    Budget:
      required:
      - budgetGuid
      - budgetLevel
      - budgetPeriod
      - budgetStatus
      - budgetType
      - emailWhenBudgetExceeded
      - emailWhenThresholdExceeded
      - lawfirmRights
      - startDate
      - statusDate
      - thresholdPercentage1
      - thresholdPercentage2
      - thresholdPercentage3
      type: object
      properties:
        budgetGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Budget GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        title:
          maxLength: 255
          type: string
          description: Budget Title
          example: Budget Title
        matterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter GUID
          format: uuid
        budgetTemplateGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Budget Template GUID
          format: uuid
        budgetAggregationInProgress:
          type: boolean
          description: Is Budget Aggregation in Progress
        primaryBudget:
          type: boolean
          description: Is Budget Aggregation in Progress
        currencyId:
          maxLength: 3
          type: string
          description: Currency Id
          example: USD
        budgetContactRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Budget Contact Reference
          example: 6g7Jc0I0TWRxRUtDdGJPWjdERVV3U3g5
        secondApproverRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Budget Second Approver Reference
          example: Zu3Jc0I0TWRxRUtDdGJPWjdERVV3U8f0
        startDate:
          maxLength: 20
          minLength: 20
          type: string
          description: Budget Start Date
          format: date-time
        statusDate:
          maxLength: 20
          minLength: 20
          type: string
          description: Budget Status Date
          format: date-time
        budgetStatus:
          maxLength: 25
          minLength: 1
          type: string
          description: Budget Status
          example: ACTIVE
        budgetPeriod:
          maxLength: 15
          minLength: 1
          type: string
          description: Budget Period
          example: QUARTER
        budgetLevel:
          maxLength: 25
          minLength: 1
          type: string
          description: Budget Level
          example: TASK_CODE_SET
        budgetType:
          maxLength: 20
          minLength: 1
          type: string
          description: Budget Type
          example: MATTER
        lawfirmRights:
          maxLength: 15
          minLength: 1
          type: string
          description: Lawfirm Rights
          example: NONE
        emailWhenBudgetExceeded:
          type: boolean
          description: Email when Budget Exceeded
        emailWhenThresholdExceeded:
          type: boolean
          description: Email when Threshold Exceeded
        thresholdPercentage1:
          multipleOf: 0.0000010
          minimum: 0
          maxLength: 8
          minLength: 1
          type: number
          description: Email when Budget Exceeded
          format: double
        thresholdPercentage2:
          multipleOf: 0.0000010
          minimum: 0
          maxLength: 8
          minLength: 1
          type: number
          description: Email when Budget Exceeded
          format: double
        thresholdPercentage3:
          multipleOf: 0.0000010
          minimum: 0
          maxLength: 8
          minLength: 1
          type: number
          description: Email when Budget Exceeded
          format: double
        description:
          maxLength: 255
          type: string
          description: Budget Description
          example: Budget Description
        budgetFiscalYears:
          type: array
          description: List of Budget Fiscal Years
          items:
            $ref: '#/components/schemas/BudgetFiscalYear'
    BudgetFiscalYear:
      type: object
      properties:
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Budget Fiscal Year GUID
          format: uuid
          example: 83612a08-6777-4096-9643-11ec22b2be40
        startDate:
          maxLength: 20
          minLength: 20
          type: string
          description: Budget Fiscal Year Start Date
          format: date-time
        endDate:
          maxLength: 20
          minLength: 20
          type: string
          description: Budget Fiscal Year End Date
          format: date-time
      description: List of Budget Fiscal Years
    MatterParticipant:
      required:
      - contactId
      - isContactGroup
      - participantRole
      - participantStatus
      type: object
      properties:
        contactId:
          maxLength: 11
          minLength: 1
          type: integer
          description: The CounselLink contact identifier
          format: int64
          example: 19962624
        recordId:
          maxLength: 120
          type: string
          description: The unique identifier for the record
          example: "180456"
        participantName:
          maxLength: 255
          type: string
          description: Participant Name
          example: AUTEDIRESTAPI Law Office 1 - Contact Group
        businessName:
          maxLength: 255
          type: string
          description: The Business Name
          example: AUTEDIRESTAPI Law Firm
        contactTypes:
          type: array
          description: The type(s) of the contact
          format: array
          example:
          - Company
          items:
            type: string
            description: The type(s) of the contact
            format: array
            example: "[\"Company\"]"
        participantStatus:
          maxLength: 8
          minLength: 6
          type: string
          description: Current status of the participant
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        phone:
          maxLength: 32
          type: string
          description: Participant's phone number
          example: 555-555-5555
        email:
          maxLength: 255
          type: string
          description: Participant's email
          format: email
          example: captain@enterprise.net
        isContactGroup:
          type: boolean
          description: "An indicator to identify whether the matter participant is\
            \ a contact or a contact group. If the matter participant is a contact,\
            \ then it is False."
        participantRole:
          maxLength: 255
          minLength: 1
          type: string
          description: The Participant's current role
          example: Consultant
        lead:
          type: boolean
          description: The indicator for the role of lead
        allowLawFirmToView:
          type: boolean
          description: The indicator for allowing the law firm to view (no restrictions)
    MatterReserveChangeReason:
      type: object
      properties:
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter reserve change reason GUID
          format: uuid
          example: 092e043d-8e8d-44de-855d-1e409dc500af
        reserveType:
          maxLength: 17
          minLength: 15
          type: string
          description: Matter Reserve Type
          example: INDEMNITY_RESERVE
          enum:
          - EXPENSE_RESERVE
          - INDEMNITY_RESERVE
        description:
          maxLength: 255
          minLength: 1
          type: string
          description: Description
          example: Change Reason Description
        status:
          maxLength: 8
          minLength: 6
          type: string
          description: Matter Reserve Change Reason Status
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        standard:
          type: boolean
          description: Is Standard
          example: true
    GetMatterReserveHistoryResponse:
      type: object
      properties:
        event:
          maxLength: 255
          type: string
          description: Event Description
          example: Expense Reserve Created
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number to identify the event
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        eventDate:
          type: string
          description: Event Date and Time in ISO8601 format
          format: date-time
          example: 2022-04-30T19:08:21.916Z
        oldValue:
          maxLength: 1024
          type: string
          description: Old Value (in most cases this will be an amount value)
          example: "1000.0"
        newValue:
          maxLength: 1024
          type: string
          description: New Value (in most cases this will be an amount value)
          example: "2000.0"
        initiatedBy:
          maxLength: 255
          type: string
          description: "Initiated By 'LastName, FirstName'"
          example: "Smith, John"
        details:
          maxLength: 255
          type: string
          description: Event Comment
          example: This is an event comment
        matterReserveGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter Reserve GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        initiatedByUserRef:
          maxLength: 32
          minLength: 32
          type: string
          description: User Reference for who initiated the event.
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        matterReserveRecoveryGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter Reserve Recovery GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        indemnityPaymentGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Indemnity Payment GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
    MatterReserveDetails:
      type: object
      properties:
        matterReserveGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The matter reserve unique identifier
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        reserveType:
          maxLength: 17
          minLength: 15
          type: string
          description: The reserve type
          example: EXPENSE_RESERVE
          enum:
          - EXPENSE_RESERVE
          - INDEMNITY_RESERVE
        currencyId:
          maxLength: 3
          minLength: 3
          type: string
          description: Three letter ISO code for the currency
          example: USD
        originalAmount:
          multipleOf: 0.0000010
          maxLength: 30
          minLength: 1
          type: number
          description: The original amount
          format: double
          example: 12.59
        currentAmount:
          multipleOf: 0.0000010
          maxLength: 30
          minLength: 1
          type: number
          description: The current amount
          format: double
          example: 12.59
        actualAmount:
          multipleOf: 0.0000010
          maxLength: 30
          minLength: 1
          type: number
          description: The actual amount of the reserve
          format: double
          example: 12.59
        remainingAmount:
          multipleOf: 0.0000010
          maxLength: 30
          minLength: 1
          type: number
          description: Remaining amount
          format: double
          example: 12.59
        percentage:
          multipleOf: 0.0000010
          maxLength: 30
          minLength: 1
          type: number
          description: Percentage Amount
          format: double
          example: 10.5
        sendEmailWhenReserveExceeded:
          type: boolean
          description: An email will be sent when the reserve is exceeded
        sendEmailWhenThresholdExceeded:
          type: boolean
          description: An email will be sent when the threshold is exceeded
        thresholdPercentage1:
          multipleOf: 0.0000010
          maxLength: 30
          type: number
          description: Threshold percentage 1
          format: double
          example: 10.5
        thresholdPercentage2:
          multipleOf: 0.0000010
          maxLength: 30
          type: number
          description: Threshold percentage 2
          format: double
          example: 10.5
        thresholdPercentage3:
          multipleOf: 0.0000010
          maxLength: 30
          type: number
          description: Threshold percentage 3
          format: double
          example: 10.5
        reserveContactRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Reserve contact reference id
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        reserveContactName:
          maxLength: 255
          minLength: 1
          type: string
          description: "Reserve contact name 'LastName, FirstName'"
          example: "Smith, John"
        includeHistoricalSpend:
          type: boolean
          description: Includes Historical Spend Values from Matter Overview in Reserve
            Actuals
    MatterType:
      type: object
      properties:
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Unique identifier for the matter type
          format: uuid
          example: 2aa0b4d4-6624-4d0d-9625-9b6d9eb945aa
        parentGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Unique identifier for the parent matter type
          format: uuid
          example: e31ced0a-9b8f-465f-9234-9b6d9eb945aa
        name:
          maxLength: 64
          type: string
          description: Name of the matter type
          example: Account Services
    MatterTypesGet:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        types:
          type: array
          items:
            $ref: '#/components/schemas/MatterType'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterTypesOfficeGet:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    FeeOfferChange:
      required:
      - feeStructureId
      - offeredFees
      - proposedCurrency
      - reasonDescription
      type: object
      properties:
        effectiveDate:
          maxLength: 23
          type: string
          description: The effective date of the Fee Structure
          example: '"''2020-10-05''"'
        offeredFees:
          $ref: '#/components/schemas/FeeOfferInformation'
        proposedCurrency:
          maxLength: 3
          type: string
          description: Three character code indicating the country code and currency
            unit of the matter
          example: USD
        reason:
          maxLength: 255
          minLength: 1
          type: string
          description: Reason for the offered fee change
          example: OTHER
          enum:
          - OTHER
          - INCORRECT_FEE_STRUCTURE_ATTACHED
          - INCORRECT_VARIABLE_ATTACHED
          - CONVERSION_FROM_FLAT_FEE_TO_HOURLY
          - PARAMETERS_CHANGED
          - "OTHER, INCORRECT_FEE_STRUCTURE_ATTACHED, INCORRECT_VARIABLE_ATTACHED,\
            \ CONVERSION_FROM_FLAT_FEE_TO_HOURLY, PARAMETERS_CHANGED"
        reasonDescription:
          maxLength: 15000
          minLength: 1
          type: string
          description: "Fee Structure change description, free form text describing\
            \ the fee structure change"
          example: Test fee structure description
        feeStructureId:
          maxLength: 9
          minLength: 1
          type: string
          description: Numeric Fee Structure identifier. Must correspond to a valid
            fee structure identifier in CounselLink.
          example: "12"
    FeeOfferInformation:
      type: object
      properties:
        detailedFees:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: number
              description: Rate information for “Detail Billing” rate types (detailed
                hourly rates)
            description: Rate information for “Detail Billing” rate types (detailed
              hourly rates)
            example: "\"Stage\": {\"Associate Rate\": 100, \"Partner Rate\": 200}"
          description: Rate information for “Detail Billing” rate types (detailed
            hourly rates)
          example: "\"Stage\": {\"Associate Rate\": 100, \"Partner Rate\": 200}"
        timekeeperFees:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: number
              description: Rate information for timekeepers
            description: Rate information for timekeepers
            example: "\"Stage\": {\"Riker, William\": 100, \"Laforge, Geordi\": 200}"
          description: Rate information for timekeepers
          example: "\"Stage\": {\"Riker, William\": 100, \"Laforge, Geordi\": 200}"
        flatRateFees:
          type: object
          additionalProperties:
            type: number
            description: Rate information for flat rate types (non-detailed hourly)
          description: Rate information for flat rate types (non-detailed hourly)
          example: "\"Stage\": {\"Hourly\": 100, \"Daily\": 200}"
        paymentTerms:
          type: integer
          format: int64
      description: "The proposed rates on the stage rates/level rates. Denotes stage\
        \ name and proposed amount value.\nOffered fees can be detailed level rates\
        \ or flatRateFees. Payment terms are not required in offered fees. "
    FeeOfferChangeResponsePut:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        feeOfferChange:
          $ref: '#/components/schemas/FeeOfferChange'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    FeeOfferChangeResponseErrorPut:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        feeOfferChange:
          $ref: '#/components/schemas/FeeOfferChange'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    OfferedFees:
      type: object
      properties:
        detailedFees:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: number
              description: Rate information for “Detail Billing” rate types (detailed
                hourly rates)
            description: Rate information for “Detail Billing” rate types (detailed
              hourly rates)
            example: "\"Stage\": {\"Associate Rate\": 100, \"Partner Rate\": 200}"
          description: Rate information for “Detail Billing” rate types (detailed
            hourly rates)
          example: "\"Stage\": {\"Associate Rate\": 100, \"Partner Rate\": 200}"
        timekeeperFees:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: number
              description: Rate information for timekeepers
            description: Rate information for timekeepers
            example: "\"Stage\": {\"Riker, William\": 100, \"Laforge, Geordi\": 200}"
          description: Rate information for timekeepers
          example: "\"Stage\": {\"Riker, William\": 100, \"Laforge, Geordi\": 200}"
        flatRateFees:
          type: object
          additionalProperties:
            type: number
            description: Rate information for flat rate types (non-detailed hourly)
          description: Rate information for flat rate types (non-detailed hourly)
          example: "\"Stage\": {\"Hourly\": 100, \"Daily\": 200}"
        paymentTerms:
          type: integer
          format: int64
        effectiveDate:
          type: string
          format: date-time
        currencyCode:
          type: string
          example: USD
        externalFeeOfferId:
          type: string
    OfferedFeesResponseGet:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        offeredFees:
          $ref: '#/components/schemas/OfferedFees'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterUpdate:
      required:
      - contactOfficeName
      - currencyCode
      - guid
      - invoiceContactLoginId
      - matterContactLoginId
      - matterId
      - matterNumber
      - status
      - title
      type: object
      properties:
        guid:
          maxLength: 36
          type: string
          description: "Unique system generated identifier for the matter. This field\
            \ is case sensitive. Matter number or matter ID is required. If matter\
            \ ID isn't provided, guid is required. Required for PUT Operations"
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        matterNumber:
          maxLength: 64
          type: string
          description: "This is the unique identifier for a matter in client system.\
            \ Matter number or matter ID is required. If matter ID isn't provided,\
            \ guid is required."
          example: M1234567
        currencyCode:
          maxLength: 3
          minLength: 3
          type: string
          description: The matter currency code
          example: USD
        title:
          maxLength: 255
          minLength: 1
          type: string
          description: The matter title
          example: Title of the matter
        status:
          maxLength: 45
          minLength: 4
          type: string
          description: "The matter status. If CLOSED, a matter closed event will be\
            \ created if it does not already exist."
          example: ACTIVE
          enum:
          - ACTIVE
          - ABANDONED
          - CLOSED
          - DELETED
          - UNACCEPTED
          - INACTIVE
          - INCOMPLETE
          - UNASSIGNED
          - ASSIGNED
          - ASSIGNED_TO_INTERNAL_COUNSEL
          - FEE_STRUCTURE_CHANGE_REQUESTED
          - MODIFY_FEES_CHANGE_REQUESTED
          - VARIABLE_CHANGE_REQUESTED
          - ASSIGN_VOLUME_DISCOUNT
          - CHANGED_VOLUME_DISCOUNT
          - REMOVE_VOLUME_DISCOUNT
          - PENDING_REMOVAL
          - RELATED_MATTER_ACTIVE
          - RELATED_MATTER_REMOVED
          - PENDING_STAFFING_LIST_APPROVAL
          - PENDING_STAFFING_LIST_SUBMISSION
          - LEGALPRECISION_STATUS_MIGRATED_TO_COUNSELLINK
          - INTAKE
          - NONE
        invoiceContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Invoice contact individual.
            The invoiceContactSSOId or the invoiceContactLoginId is required to create a matter.
          example: WF1
        matterContactSSOId:
          maxLength: 255
          type: string
          description: |-
            Single Sign-On Identifier for Matter contact individual.
            The matterContactSSOId or the matterContactLoginId is required to create a matter.
          example: WF2
        invoiceContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for invoice contact. If no value is provided\
            \ for invoiceContactSSOId, this value will be used to identify the invoice\
            \ contact."
          example: jsmith
        matterContactLoginId:
          maxLength: 20
          minLength: 1
          type: string
          description: "Login identifier for the user listed as the contact for the\
            \ matter. If no value is provided for matterContactSSOId, this value will\
            \ be used to identify the matter contact."
          example: jsmith
        contactOfficeName:
          maxLength: 255
          minLength: 1
          type: string
          description: |-
            A value that uniquely identifies the office that assigned matter.
            This value must be mapped to a valid office / division in CounselLink.
          example: "Performance Law Firm, Raleigh"
        description:
          maxLength: 1024
          type: string
          description: Text value that provides an enhanced description of the matter
          example: This matter involves ...
        matterTypeGuid:
          maxLength: 36
          type: string
          description: |-
            The matter type Guid. This field is case sensitive.
            CounselLink does not require a matter type inherently, but this field is required if the customer is configured to require matter type.
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        createdDate:
          type: string
          description: Matter create date in ISO8601 format
          format: date
        closedDate:
          type: string
          description: |-
            Matter closed date in ISO8601 format.
            If the matter status is closed then this date will be set as the closed date.
          format: date
        historicalFees:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed fees
          format: double
          example: 500.0
        historicalExpenses:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Historical billed expenses
          format: double
          example: 500.0
        matterId:
          maxLength: 11
          type: integer
          description: "The CounselLink matter tracking identifier. Matter number\
            \ or matter ID is required. If matter ID isn't provided, guid is required."
          format: int64
          example: 1234567
        assigningOfficeName:
          maxLength: 255
          type: string
          description: The matter assigning office name
          example: "Performance Law Firm, Raleigh"
        matterValue:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: The matter value
          format: double
          example: 10000.0
        stateCode:
          maxLength: 3
          type: string
          description: The matter state code (Accepts "N/A")
          example: NC
        countyName:
          maxLength: 255
          type: string
          description: The matter county code (Accepts "N/A")
          example: Wake
        shouldTriggerMatterEventRules:
          type: boolean
          description: Should Trigger Matter Event Rule Processing. Default value
            is 'true'
          example: true
        textUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Text user custom data fields
          description: The matter Text user custom data fields
        numericUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Numeric user custom data fields
          description: The matter Numeric user custom data fields
        moneyUCDFs:
          type: object
          additionalProperties:
            type: number
            description: The matter Money user custom data fields
          description: The matter Money user custom data fields
        multiLineTextUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Multi-line Text user custom data fields
          description: The matter Multi-line Text user custom data fields
        dateUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Date user custom data fields
            format: date-time
          description: The matter Date user custom data fields
        optionUCDFs:
          type: object
          additionalProperties:
            type: string
            description: The matter Option user custom data fields
          description: The matter Option user custom data fields
        multiCheckboxUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Multi-checkbox user custom data fields
            items:
              type: string
              description: The matter Multi-checkbox user custom data fields
          description: The matter Multi-checkbox user custom data fields
        tableUCDFs:
          type: object
          additionalProperties:
            type: array
            description: The matter Table user custom data fields
            items:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/UCDFCell'
              description: The matter Table user custom data fields
          description: The matter Table user custom data fields
        lfoAssignments:
          type: array
          description: The matter law firm assignments
          items:
            $ref: '#/components/schemas/LfoAssignment'
        allocationGroup:
          $ref: '#/components/schemas/MatterAllocationGroup'
        relatedParentGuid:
          maxLength: 36
          type: string
          description: The related parent GUID
          format: uuid
          example: 23e86041-6bdd-4022-858e-cf0e4b2a0f36
        relatedChildGuids:
          maxLength: 36
          type: array
          description: |-
            The related child GUIDs.
            This is an informational field that is ignored for Create and Update.
          format: uuid
          example:
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f35
          - 23e86041-6bdd-4022-858e-cf0e4b2a0f34
          items:
            maxLength: 36
            type: string
            description: |-
              The related child GUIDs.
              This is an informational field that is ignored for Create and Update.
            format: uuid
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UpdateResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterReserveHistory:
      type: object
      properties:
        event:
          maxLength: 255
          type: string
          description: Event Description
          example: Expense Reserve Created
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: Unique reference number to identify the event
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        eventDate:
          type: string
          description: Event Date and Time in ISO8601 format
          format: date-time
          example: 2022-04-30T19:08:21.916Z
        oldValue:
          maxLength: 1024
          type: string
          description: Old Value (in most cases this will be an amount value)
          example: "1000.0"
        newValue:
          maxLength: 1024
          type: string
          description: New Value (in most cases this will be an amount value)
          example: "2000.0"
        initiatedBy:
          maxLength: 255
          type: string
          description: "Initiated By 'LastName, FirstName'"
          example: "Smith, John"
        details:
          maxLength: 255
          type: string
          description: Event Comment
          example: This is an event comment
        matterReserveGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter Reserve GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        initiatedByUserRef:
          maxLength: 32
          minLength: 32
          type: string
          description: User Reference for who initiated the event.
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        matterReserveRecoveryGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Matter Reserve Recovery GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        indemnityPaymentGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Indemnity Payment GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
    MattersReserveEventsSuccessResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/MatterReserveHistory'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MattersResponseSuccessResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedMatters:
          type: array
          items:
            $ref: '#/components/schemas/Matter'
        notFoundMatters:
          type: array
          items:
            type: string
        skippedMatters:
          type: array
          items:
            type: string
        numberOfMattersFetched:
          type: integer
          format: int32
        numberOfNotFoundMatters:
          type: integer
          format: int32
        numberOfSkippedMatters:
          type: integer
          format: int32
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterInformation:
      type: object
      properties:
        matterId:
          type: integer
          format: int64
        clientMatterId:
          type: string
        lawFirmMatterId:
          type: string
        matterTitle:
          type: string
        feeStructureDescription:
          type: string
        feeStructureId:
          type: integer
          format: int64
        status:
          type: string
          enum:
          - ACTIVE
          - ABANDONED
          - CLOSED
          - DELETED
          - UNACCEPTED
          - INACTIVE
          - INCOMPLETE
          - UNASSIGNED
          - ASSIGNED
          - ASSIGNED_TO_INTERNAL_COUNSEL
          - FEE_STRUCTURE_CHANGE_REQUESTED
          - MODIFY_FEES_CHANGE_REQUESTED
          - VARIABLE_CHANGE_REQUESTED
          - ASSIGN_VOLUME_DISCOUNT
          - CHANGED_VOLUME_DISCOUNT
          - REMOVE_VOLUME_DISCOUNT
          - PENDING_REMOVAL
          - RELATED_MATTER_ACTIVE
          - RELATED_MATTER_REMOVED
          - PENDING_STAFFING_LIST_APPROVAL
          - PENDING_STAFFING_LIST_SUBMISSION
          - LEGALPRECISION_STATUS_MIGRATED_TO_COUNSELLINK
          - INTAKE
          - NONE
        statusDate:
          type: string
          format: date-time
        clientName:
          type: string
    MattersInformationResponseSuccessResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/MatterInformation'
        availableCount:
          type: integer
          format: int64
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MattersInformationResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/MatterInformation'
        availableCount:
          type: integer
          format: int64
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MatterEvent:
      type: object
      properties:
        eventRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The unique reference number to identify the event
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        matterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique identifier for the matter
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        eventDescription:
          maxLength: 255
          type: string
          description: "The event which occurred on the matter will be one of the\
            \ following values: \"Add Invoice\", \"Allocation Group Deleted\", \"\
            Assign to Internal Counsel\", \"Assigned lead attorney to law firm\",\
            \ \"Assigned to Law Firm\", \"Backup Firm Selected\", \"Calendar Template\
            \ Applied\", \"Client Cancels Request to Withdraw\", \"Client Requests\
            \ Firm Withdrawal\", \"Closed\", \"Comment Added\", \"Comment Removed\"\
            , \"Comments Only\", \"Contract Linked\", \"Contract Removed\", \"Document\
            \ Added\", \"Document Removed\", \"External Reviewer Assigned\", \"External\
            \ Reviewer Removed\", \"Fee Structure Change Approved\", \"Fee Structure\
            \ Change Declined\", \"Fee Structure Change Initiated\", \"Fee Structure\
            \ Change Request Approved with Unresolved Invoices\", \"Fee Structure\
            \ Change Requested\", \"Fee Structure Change Voided\", \"Firm Withdraws\
            \ from Matter\", \"Inactive\", \"Initial Setup\", \"Invoice Workflow Changed\"\
            , \"Invoice deletion\", \"Journal Entry Added\", \"Journal entry deleted\"\
            , \"Journal updated on matter\", \"Law firm assignment was updated on\
            \ matter\", \"Legal Request Linked\", \"Legal Request Task Assigned\"\
            , \"Legal Request Unlinked\", \"MCR Long Term Project - Event Processing\"\
            , \"MCR Re-float with No-op Event Processing\", \"MCR reverted by Client\"\
            , \"Matter Acceptance\", \"Matter Allocation Changed\", \"Matter Assigned\
            \ to Legal Hold\", \"Matter Assignment Accepted\", \"Matter Assignment\
            \ Lapsed\", \"Matter Assignment Lapsed Reassign\", \"Matter Assignment\
            \ Lapsed Removed\", \"Matter Assignment Rejected\", \"Matter Auto Accept\
            \ Email Schedule\", \"Matter Change Request Approved Email\", \"Matter\
            \ Change Request Declined Email\", \"Matter Change Request Email\", \"\
            Matter Change Request Voided Email\", \"Matter Deleted by User\", \"Matter\
            \ Disposition Report Email\", \"Matter Informational\", \"Matter Lapse\
            \ Date\", \"Matter Not Assign by Client\", \"Matter Number Format Type\
            \ Changed\", \"Matter Participant Role Updated\", \"Matter Participant\
            \ Updated\", \"Matter Pending Acceptance\", \"Matter Related\", \"Matter\
            \ Removed from Legal Hold\", \"Matter Request Withdrawl\", \"Matter Reserve\
            \ Updated\", \"Matter Setup Complete\", \"Matter Type Change Accepted\"\
            , \"Matter Type Change Canceled\", \"Matter Type Change Confirmed\", \"\
            Matter Updated\", \"Matter Vendor Overdue Installment Charge\", \"Matter\
            \ Withdraw Lapsed\", \"Matter failed to send in feed\", \"Matter information\
            \ transmitted in feed\", \"Matter inserted or updated via EDI action\"\
            , \"Matter posted fee updated\", \"Matter withdraw by client\", \"Modify\
            \ Fees Change Approved\", \"Modify Fees Change Declined\", \"Modify Fees\
            \ Change Initiated\", \"Modify Fees Change Requested\", \"Modify Fees\
            \ Change Voided\", \"Next Forwarded Bill Date\", \"Next Mandatory Bill\
            \ Date\", \"Participant added\", \"Participant removed\", \"Payment Plan\
            \ Approved\", \"Payment Plan Paid Off\", \"Primary Firm Selected\", \"\
            Proposed Matter Type Change\", \"Re-Opened\", \"Recently Assigned Matters\
            \ Batch Email\", \"Related Matter Moved\", \"Related Matter Removed\"\
            , \"Remove Invoice\", \"Removed lead attorney from law firm\", \"Rule\
            \ Set Changed\", \"Scheduled Reminder Date\", \"Secondary Firm Selected\"\
            , \"Sub Matter Added\", \"Task Assigned\", \"Task Reminder\", \"Task Set\
            \ Added\", \"Task Set Removed\", \"Threshold Approved\", \"Update matter\
            \ search count\", \"Updated lead attorney on law firm\", \"User Re-activated\
            \ Matter\", \"Variable Change Approved\", \"Variable Change Declined\"\
            , \"Variable Change Initiated\", \"Variable Change Requested\", \"Variable\
            \ Change Voided\""
          example: This is a description of the event
        eventDate:
          type: string
          description: The date and time the event happened/occurred
          format: date-time
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: The unique reference number of the user who took action
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        clientOffice:
          $ref: '#/components/schemas/ClientOffice'
    MattersEventsResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/MatterEvent'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        errorResponse:
          $ref: '#/components/schemas/MattersEventsResponse'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    MattersEventsSuccessResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fetchedCount:
          type: integer
          format: int32
        entities:
          type: array
          items:
            $ref: '#/components/schemas/MatterEvent'
        dateRangeCursorInfo:
          $ref: '#/components/schemas/DateRangeCursorInfo'
        errorResponse:
          $ref: '#/components/schemas/MattersEventsResponse'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    SuccessPaymentResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        paymentReference:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    PaymentLawFirmInvoiceId:
      required:
      - lawFirmInvoiceId
      - paymentAmount
      - paymentCurrency
      - paymentDate
      - paymentReference
      type: object
      properties:
        lawFirmInvoiceId:
          maxLength: 64
          minLength: 1
          type: string
          description: Law Firm Invoice ID
          example: INV0058
        vendorId:
          maxLength: 256
          minLength: 1
          type: string
          description: Vendor ID set at the Law Firm Office Additional Information
          example: vendor12345
        vendorLocation:
          maxLength: 256
          minLength: 1
          type: string
          description: Vendor Location set at the Law Firm Office Additional Information
          example: location
        paymentDate:
          type: string
          description: Date of payment to law firm / vendor
          format: date
        paymentReference:
          maxLength: 128
          minLength: 1
          type: string
          description: "Reference info to be posted about the payment; Check #, wire\
            \ transfer reference, etc."
          example: CF0E4B2A0F36
        paymentAmount:
          multipleOf: 0.0000010
          minimum: 0
          type: number
          description: Amount paid on the invoice
          format: double
          example: 12.59
        paymentCurrency:
          maxLength: 3
          minLength: 3
          type: string
          description: Three letter ISO code for the currency
          example: USD
    PutUCDFTableResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFRow:
      required:
      - cells
      - rowRef
      type: object
      properties:
        rowRef:
          maxLength: 32
          minLength: 1
          type: string
          description: Row reference number. Returned in a GET to allow for a row
            update. Should be omitted when creating a new row (POST)
          example: "3"
        cells:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/UCDFCell'
    GetUCDFConfigurationResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        ucdfConfigurations:
          type: array
          items:
            $ref: '#/components/schemas/UCDFConfiguration'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFConfiguration:
      required:
      - name
      type: object
      properties:
        name:
          maxLength: 63
          minLength: 1
          type: string
          description: The word(s) by which a specific UCDF configuration is identified
          example: Related Options UCDF (State)
        displayLabel:
          maxLength: 63
          type: string
          description: The label that displays the 'name' (what's seen) of the UCDF
            configuration
          example: TestField1
        inboundEDIName:
          maxLength: 64
          type: string
          description: The EDI name configured for the UCDF field
          example: Matter Type test field
        fieldType:
          maxLength: 255
          type: string
          description: Describes the field type for the configuration
          example: MULTI_LINE_TEXT
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
        officeIds:
          type: array
          description: The list of client office identifiers in which the UCDF field
            is configured
          example: 530956
          items:
            type: integer
            description: The list of client office identifiers in which the UCDF field
              is configured
            format: int64
            example: 530956
        matterTypeGuids:
          type: array
          description: List of matter type GUIDs
          example: 24e24ab8-77d1-46a3-aa6b-9b6d9eb945aa
          items:
            type: string
            description: List of matter type GUIDs
            example: 24e24ab8-77d1-46a3-aa6b-9b6d9eb945aa
        contactTypes:
          type: array
          description: The type of contact
          example: string
          items:
            type: string
            description: The type of contact
            example: string
        locationGuids:
          type: array
          description: List of Location GUIDs
          example: 77b3a06d-ddde-4c9f-b2bd-f2f15b3ff36b
          items:
            type: string
            description: List of Location GUIDs
            example: 77b3a06d-ddde-4c9f-b2bd-f2f15b3ff36b
    GetUCDFFieldResponse:
      required:
      - fieldName
      - fieldType
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fieldName:
          maxLength: 20
          minLength: 1
          type: string
          description: The EDI inbound field name
          example: Reserve Amount
        fieldType:
          type: string
          description: The data type of the custom field
          example: TEXT
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
        value:
          maxLength: 20
          type: string
          description: "The value of the custom field. Note: Data for entities is\
            \ displayed as key-value pairs ('type' and 'value'), but for MultiSelectDropDown\
            \ or Multi_Checkbox fields, it is represented as 'type' and an array of\
            \ 'values'."
          example: "20000"
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFBlock:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        name:
          type: string
          description: Name of the Block
          example: Dropdown Block
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique identifier
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        fields:
          type: array
          items:
            $ref: '#/components/schemas/UCDFField'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
      description: UCDF custom block data
    UCDFField:
      required:
      - fieldName
      - fieldType
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fieldName:
          maxLength: 20
          minLength: 1
          type: string
          description: The EDI inbound field name
          example: Reserve Amount
        fieldType:
          type: string
          description: The data type of the custom field
          example: TEXT
          enum:
          - TEXT
          - MULTI_LINE_TEXT
          - DATE
          - NUMBER
          - MONEY
          - OPTION
          - PERCENTAGE
          - POSTAL_CODE
          - CHECKBOX_SINGLE
          - MULTI_CHECKBOX
          - RELATED_DROPDOWN
          - MULTI_SELECT_DROPDOWN
          - RADIO
          - PHONE_NUMBER
          - EMAIL_ADDRESS
          - RICHTEXT
          - LOOKUP
          - URL
        value:
          maxLength: 20
          type: string
          description: "The value of the custom field. Note: Data for entities is\
            \ displayed as key-value pairs ('type' and 'value'), but for MultiSelectDropDown\
            \ or Multi_Checkbox fields, it is represented as 'type' and an array of\
            \ 'values'."
          example: "20000"
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFInformationResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fields:
          type: array
          description: UCDF custom field data
          items:
            $ref: '#/components/schemas/UCDFField'
        tables:
          type: array
          description: UCDF custom table data
          items:
            $ref: '#/components/schemas/UCDFTable'
        blocks:
          type: array
          description: UCDF custom block data
          items:
            $ref: '#/components/schemas/UCDFBlock'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFTable:
      required:
      - name
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        name:
          maxLength: 255
          minLength: 1
          type: string
          description: The name of the UCDF table
          example: MultiselectDropdown Table
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique identifier for the matter type
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        tableMetaData:
          $ref: '#/components/schemas/UCDFTableMetaData'
        rows:
          type: array
          description: The row of data in the table
          items:
            $ref: '#/components/schemas/UCDFRow'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
      example:
        name: Historical Allocation
        guid: 3a20b463-8e24-432d-9f7f-b381fe05095a
        tableMetaData:
          columns:
            Allocation Contact Name: TEXT
            InvTabFeed-MultiSelectUseVal: MULTI_SELECT_DROPDOWN
            Allocated Amount: NUMBER
            InvTabFeed-DropdownUseVal: OPTION
            Cost shared: TEXT
        rows:
        - rowRef: "1"
          cells:
            Allocation Contact Name:
              type: TEXT
              value: Hello
    UCDFTableMetaData:
      type: object
      properties:
        columns:
          type: object
          additionalProperties:
            type: string
            description: List of columns in the table with data type
            example: "\"MatterTableField\": \"OPTION\""
            enum:
            - TEXT
            - MULTI_LINE_TEXT
            - DATE
            - NUMBER
            - MONEY
            - OPTION
            - PERCENTAGE
            - POSTAL_CODE
            - CHECKBOX_SINGLE
            - MULTI_CHECKBOX
            - RELATED_DROPDOWN
            - MULTI_SELECT_DROPDOWN
            - RADIO
            - PHONE_NUMBER
            - EMAIL_ADDRESS
            - RICHTEXT
            - LOOKUP
            - URL
          description: List of columns in the table with data type
          example: "\"MatterTableField\": \"OPTION\""
      description: The list of table fields with data types
    GetUCDFTableResponse:
      required:
      - name
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        name:
          maxLength: 255
          minLength: 1
          type: string
          description: The name of the UCDF table
          example: MultiselectDropdown Table
        guid:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique identifier for the matter type
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        tableMetaData:
          $ref: '#/components/schemas/UCDFTableMetaData'
        rows:
          type: array
          description: The row of data in the table
          items:
            $ref: '#/components/schemas/UCDFRow'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFValidationError:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UpdateUCDFInformationResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    UCDFInformation:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        fields:
          type: array
          description: UCDF custom field data
          items:
            $ref: '#/components/schemas/UCDFField'
        tables:
          type: array
          description: UCDF custom table data
          items:
            $ref: '#/components/schemas/UCDFTable'
        blocks:
          type: array
          description: UCDF custom block data
          items:
            $ref: '#/components/schemas/UCDFBlock'
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
      example:
        fields:
        - fieldName: Test 12345
          fieldType: TEXT
          value: Test
        tables:
        - name: TableUCDF1
          guid: 556D0F7E-4A05-4723-AA3B-A39DCDFA63A5
          rows:
          - rowRef: "3"
            cells:
              Multiline Tab1Field:
                type: MULTI_LINE_TEXT
                value: "Updated First row \n Udated Second row"
        - name: Test Table
          guid: 1BC0E8C9-6913-4F2F-97CA-KIJHHYKJH
          rows:
          - rowRef: "1"
            cells:
              Field A:
                type: TEXT
                value: testa
              Field B:
                type: RADIO
                value: Today
              Field C:
                type: NUMBER
                value: "1"
          - rowRef: "2"
            cells:
              Postal Code:
                type: MULTI_SELECT_DROPDOWN
                values:
                - "27519"
                - "876352343"
          - rowRef: "3"
            cells:
              Field A:
                type: TEXT
                value: ""
              Field B:
                type: RADIO
                value: ""
              Field C:
                type: NUMBER
                value: ""
        blocks:
        - name: MatterLevelBlock
          guid: 556D0F7E-4A05-4723-AA3B-A39DCDFA63A5
          fields:
          - fieldName: PercentageField
            fieldType: PERCENTAGE
            value: "5.5"
    Address_GetUser:
      type: object
      properties:
        line1:
          maxLength: 255
          type: string
          description: Address Line 1
          example: Apt 234
        line2:
          maxLength: 255
          type: string
          description: Address Line 2
          example: 16 Whitemark Ln
        line3:
          maxLength: 255
          type: string
          description: Address Line 3
          example: Suite 3
        city:
          maxLength: 255
          type: string
          description: City
          example: Atlanta
        state:
          maxLength: 40
          type: string
          description: State
          example: GA
        country:
          maxLength: 2
          type: string
          description: Country Code
          example: US
        zip:
          maxLength: 20
          type: string
          description: Zip Code
          example: "30092"
        faxNum:
          maxLength: 30
          type: string
          description: FAX Number
          example: 404-555-1212
        phoneNum:
          maxLength: 30
          type: string
          description: Phone Number
          example: 404-555-1212
        phoneExt:
          maxLength: 6
          type: string
          description: Phone Extension
          example: "5555"
    User_GetUser:
      type: object
      properties:
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: User Reference
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        ssoId:
          maxLength: 255
          type: string
          description: SSO ID
          example: EC185173
        loginId:
          maxLength: 20
          type: string
          description: Login ID
          example: smithx
        firstName:
          maxLength: 255
          type: string
          description: First Name
          example: James
        middleName:
          maxLength: 255
          type: string
          description: Middle Name
          example: Tiberius
        lastName:
          maxLength: 255
          type: string
          description: Last Name
          example: Kirk
        userType:
          type: string
          description: User Type
          example: CLIENT_INDIVIDUAL
          enum:
          - CLIENT_INDIVIDUAL
          - LAWFIRM_INDIVIDUAL
          - SYSTEM
          - EMPLOYEE
          - EXTERNAL_REVIEWER
        email:
          maxLength: 255
          type: string
          description: Email Address
          format: email
          example: captain@enterprise.net
        active:
          type: boolean
        address:
          $ref: '#/components/schemas/Address_GetUser'
        divisions:
          type: array
          items:
            maxLength: 255
            type: string
            description: Divisions
            example: East
        offices:
          type: array
          items:
            maxLength: 255
            type: string
            description: Offices
            example: Atlanta
    Message_GetUser:
      type: object
      properties:
        code:
          type: string
          description: Code associated with the message
          example: VALIDATION_ERROR
          enum:
          - VALIDATION_ERROR
          - UCDF_FIELDNAME_NOT_FOUND
          - UCDF_VALUE_NOT_FOUND
          - NO_UCDFS_FOUND
          - UCDF_DATATYPE_INCORRECT
          - UCDF_OPTION_VALUE_NOT_FOUND
          - UCDF_MULTI_OPTIONS_NOT_SUPPORTED
          - UCDF_OPERATION_NOT_SUPPORTED
          - UCDF_MULTI_OPTIONS_ONLY_SUPPORTED
          - INVALID_CURRENCY
          - MATTER_SAVE_ERROR
          - MATTER_NUMBER_NOT_FOUND
          - MATTER_NUMBER_REQUIRED
          - MATTER_GUID_NOT_FOUND
          - MATTER_ID_NOT_FOUND
          - MATTER_NUMBER_NOT_UNIQUE
          - MATTER_NUMBER_ALREADY_EXISTS
          - SSO_ID_NOT_FOUND
          - LOGIN_ID_NOT_FOUND
          - CREATED_DATE_AFTER_CLOSED_DATE
          - ENTITY_ROLE_ERROR
          - ENTITY_ID_NOT_FOUND
          - INVALID_CLIENT
          - CONTACT_OFFICE_NOT_FOUND
          - CLIENT_OFFICE_NOT_FOUND
          - FEE_STRUCTURE_NAME_NOT_UNIQUE
          - FEE_STRUCTURE_NAME_NOT_FOUND
          - FEE_STRUCTURE_NODE_NOT_FOUND
          - UCDF_DATE_FORMAT_ERROR
          - UCDF_NUMERIC_FORMAT_ERROR
          - UCDF_PERCENTAGE_FORMAT_ERROR
          - UCDF_MONEY_FORMAT_ERROR
          - UCDF_TABLE_NOT_FOUND
          - UCDF_TABLE_NAME_INCONSISTENT
          - UCDF_TABLE_ROWS_EXCEED_MAXIMUM_ROWS
          - UCDF_TABLE_ROW_NO_INFO
          - UCDF_TABLE_ROW_NOT_DELETED
          - UCDF_TABLE_ROW_NOT_UPDATED
          - UCDF_TABLE_ROW_REF_IGNORED
          - PAYMENT_NOT_ADDED
          - VENDOR_ID_FIELD_NOT_CONFIGURED
          - NO_LAWFIRM_OFFICE_ASSIGNED_TO_VENDOR
          - MULTIPLE_LFO_ASSIGNED_TO_VENDOR_ID
          - ACTIVE_FEE_OFFER_NOT_FOUND
          - INVOICE_NOT_FOUND
          - INVOICE_NOT_APPROVED
          - INVOICE_NUMBER_NOT_UNIQUE
          - WORKFLOW_ID_NOT_FOUND
          - RULESET_ID_NOT_FOUND
          - INVALID_ALLOCATION
          - UNABLE_TO_ASSIGN_LF
          - PAYMENT_REFERENCE_EXISTS_WITH_DIFFERENT_DATE
          - PAYMENT_REFERENCE_EXISTS_FOR_INVOICE_NUMBER
          - DUPLICATE_PAYMENT
          - PAYMENT_DATE_NOT_PROVIDED
          - PAYMENT_AMOUNT_NOT_PROVIDED
          - PAYMENT_CURRENCY_NOT_PROVIDED
          - PAYMENT_REFERENCE_NOT_PROVIDED
          - PAYMENT_REFERENCE_CURRENCY_NOT_MATCHING
          - BATCH_IN_PROGRESS
          - CLIENT_ID_INVALID
          - PAGE_NUMBER_INVALID
          - BATCH_ID_INVALID
          - BATCH_CANNOT_BE_CREATED
          - ECA_ID_REQUIRED
          - ECA_GROUP_REQUIRED
          - PAGE_SIZE_INVALID
          - DEFAULT_PAGE_SIZE_USED
          - FEE_STRUCTURE_REQUIRED
          - FEE_OFFER_REQUIRED
          - MATTER_ALREADY_ASSIGNED_TO_LAW_FIRM
          - LAW_FIRM_CANNOT_BE_ASSIGNED
          - MATTER_TYPE_GUID_NOT_FOUND
          - LAW_FIRM_OFFICE_NOT_FOUND
          - LAW_FIRM_NOT_FOUND
          - MATTER_ASSIGNMENT_REF_REQUIRED
          - MATTER_ASSIGNMENT_REF_IGNORED
          - MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
          - VENDOR_ID_CHANGE_IGNORED
          - FEE_STRUCTURE_ID_CHANGE_IGNORED
          - VENDOR_ID_OR_LAW_FIRM_OFFICE_ID_REQUIRED
          - VENDOR_ID_REQUIRED
          - FEE_STRUCTURE_ID_REQUIRED
          - UNABLE_TO_PERFORM_FEE_STRUCTURE_CHANGE
          - NO_ACTIVE_FEE_OFFERS_FOUND
          - PENDING_BILLS_ON_FEE_STRUCTURE
          - LAW_FIRM_ASSIGNMENT_UNACCEPTED
          - UNABLE_TO_PERFORM_FEE_OFFER_CHANGE
          - UCDF_SAVE_ERROR
          - MATTER_CHANGE_CONFIGURATION
          - OFFER_RATE_INVALID
          - FEE_STRUCTURE_CANNOT_BE_CHANGED
          - INVOICE_NOT_FOUND_FOR_CLIENT
          - INVALID_REFERENCE
          - INVOICE_CHARGES_NOT_PROVIDED
          - INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
          - INVOICE_CHARGE_ADJUSTMENT_NOT_FOUND_FOR_CLIENT
          - OPERATION_NOT_SUPPORTED
          - CURRENCY_CANNOT_BE_CHANGED
          - MATTER_ASSIGNMENT_REF_INVALID
          - INVALID_CURSOR
          - DATE_FORMAT_EXCEPTION
          - UNABLE_TO_RETRIEVE_APPROVED_EVENT
          - UNAPPROVED_EVENT
          - EVENT_NOT_FOUND
          - USER_NOT_FOUND
          - REASON_DESCRIPTION_REQUIRED
          - CURRENCY_CODE_REQUIRED
          - CLIENT_GUID_DOES_NOT_EXIST
          - DIVISION_GUID_DOES_NOT_EXIST
          - ENTITY_NOT_FOUND
          - DIVISION_DOES_NOT_EXIST_FOR_CLIENT
          - UNABLE_TO_ADD_CLIENT_DIVISION
          - USER_NOT_ALLOWED
          - INVALID_GUID
          - UNABLE_TO_RETRIEVE_FEE_OFFER_DETAIL
          - MATTER_TYPE_REQUIRED
          - FEE_STRUCTURE_ID_NOT_FOUND
          - MATTER_CANNOT_BE_DELETED
          - PAPER_PROCESSING_BILLER_TYPE_NOT_FOUND
          - MATTER_NOT_FOUND
          - LAW_FIRM_DOES_NOT_EXIST
          - LAW_FIRM_OFFICE_ID_NOT_FOUND
          - LAW_FIRM_ASSIGNED_NOT_ACTIVE_FOR_MATTER
          - BAD_REQUEST
          - LAWFIRM_OFFICE_HAS_DECLINED_NEW_ASSIGNMENTS
          - COUNSEL_TYPE_NOT_FOUND
          - DUPLICATE_ACCESS_KEY
          - INVALID_ACCESS_KEY
          - INVALID_SECRET_KEY
          - CONTACT_NOT_FOUND
          - CONTACT_NOT_DELETED
          - CONTACT_ASSOCIATED_TO_MATTER_LEGALHOLD
          - CONTACT_CREATED
          - CONTACT_UPDATED
          - PARTICIPANT_ROLE_NOT_FOUND
          - MATTER_PARTICIPANT_ALREADY_EXISTS
          - MATTER_PARTICIPANT_NOT_FOUND
          - MATTER_PARTICIPANT_NOT_DELETED
          - INVALID_EMAIL
          - INVALID_DATE_OF_BIRTH
          - DUPLICATE_ENTITY
          - CANNOT_CREATE_CONTACT
          - USER_DOES_NOT_EXIST
          - DOCUMENT_NOT_FOUND
          - DOCUMENT_NOT_DOWNLOADABLE
          - DOCUMENT_ID_IS_REQUIRED
          - FEE_STRUCTURE_ID_VALID_FOR_OFFICE
          - FEE_STRUCTURE_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - WORKFLOW_ID_VALID_FOR_OFFICE
          - WORKFLOW_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - RULESET_ID_VALID_FOR_OFFICE
          - RULESET_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - INCORRECT_CLIENT_ENTITY_ID
          - MCR_INVALID_EFFECTIVE_DATE
          - MCR_INVALID_FEE_STRUCTURE_EFFECTIVE_DATE
          - LFO_RELATIONSHIP_NOT_FOUND
          - MATTER_TYPE_CONFIG_NOT_ENABLED
          - UCDF_CONFIGURATION_NOT_FOUND_FOR_FIELD
          - MATTER_TYPE_NOT_EXIST_IN_OFFICE
          - MATTER_ASSIGNMENT_NOT_FOUND
          - DISPLAY_ASSIGNING_OFFICE_DURING_MATTER_SETUP_CONFIG_NOT_SET
          - ASSIGNING_OFFICE_IS_REQUIRED_DURING_MATTER_SETUP
          - MATTER_ASSIGNING_OFFICE_ERROR
          - FAST_TRACK_INACTIVE
          - LAW_FIRM_INVOICE_NUMBER_NOT_UNIQUE
          - RELATED_MATTER_ERROR
          - PENDING_INVOICE_ERROR
          - SERVICE_UNAVAILABLE_ERROR
          - FORBIDDEN_ENDPOINT
          - CHARGE_ADJUSTMENT_ERROR
          - CHARGE_NUMBER_NOT_FOUND
          - CHARGE_NUMBER_NOT_ASSOCIATED_WITH_ADJUSTMENT_CHARGE_NUMBER
          - RULE_CODE_INVALID
          - TAX_SUMMARY_ERROR
          - INTAKE_GUID_NOT_FOUND
        type:
          type: string
          description: Type of message
          example: INFO
          enum:
          - INFO
          - WARN
          - ERROR
        field:
          type: string
          description: The field pertaining to the message
          example: divisionName
        value:
          type: string
          description: The value of the field pertaining to the message
          example: West Division
        message:
          type: string
          description: A message is sometimes provided when the code is not sufficient
            to troubleshoot the issue
          example: Division with name West Division does not exist
        values:
          type: array
          items:
            type: string
    Notification_GetUser:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message_GetUser'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    ServerErrorInfo_GetUser:
      type: object
      properties:
        rid:
          maxLength: 36
          minLength: 36
          type: string
          description: Request ID
          example: aa33d504-9ace-4ba4-9796-86b3bc7aa52f
        info:
          type: string
          description: Additional information about the error
          example: Request ID (rid) and message values helps in debugging. Please
            provide these when contacting support about the error!
        message:
          type: string
          description: Error Message
          example: Unexpected error occurred. Request ID = aa33d504-9ace-4ba4-9796-86b3bc7aa52f
    NotificationError_GetUser:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message_GetUser'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
    User_GetUserLoginAudit:
      type: object
      properties:
        userRef:
          maxLength: 32
          minLength: 32
          type: string
          description: User Reference
          example: ZE9Jc0I0TWRxRUtDdGJPWjdERVV3UT09
        ssoId:
          maxLength: 255
          type: string
          description: SSO ID
          example: EC185173
        loginId:
          maxLength: 20
          type: string
          description: Login ID
          example: smithx
        firstName:
          maxLength: 255
          type: string
          description: First Name
          example: James
        middleName:
          maxLength: 255
          type: string
          description: Middle Name
          example: Tiberius
        lastName:
          maxLength: 255
          type: string
          description: Last Name
          example: Kirk
        email:
          maxLength: 255
          type: string
          description: Email Address
          format: email
          example: captain@enterprise.net
        lastLoginDate:
          type: string
          description: Last login date
          format: date-time
        numberOfLogins:
          type: integer
          description: Number of times the user logged in
          format: int32
          example: 7
    Message_GetUserLoginAudit:
      type: object
      properties:
        code:
          type: string
          description: Code associated with the message
          example: VALIDATION_ERROR
          enum:
          - VALIDATION_ERROR
          - UCDF_FIELDNAME_NOT_FOUND
          - UCDF_VALUE_NOT_FOUND
          - NO_UCDFS_FOUND
          - UCDF_DATATYPE_INCORRECT
          - UCDF_OPTION_VALUE_NOT_FOUND
          - UCDF_MULTI_OPTIONS_NOT_SUPPORTED
          - UCDF_OPERATION_NOT_SUPPORTED
          - UCDF_MULTI_OPTIONS_ONLY_SUPPORTED
          - INVALID_CURRENCY
          - MATTER_SAVE_ERROR
          - MATTER_NUMBER_NOT_FOUND
          - MATTER_NUMBER_REQUIRED
          - MATTER_GUID_NOT_FOUND
          - MATTER_ID_NOT_FOUND
          - MATTER_NUMBER_NOT_UNIQUE
          - MATTER_NUMBER_ALREADY_EXISTS
          - SSO_ID_NOT_FOUND
          - LOGIN_ID_NOT_FOUND
          - CREATED_DATE_AFTER_CLOSED_DATE
          - ENTITY_ROLE_ERROR
          - ENTITY_ID_NOT_FOUND
          - INVALID_CLIENT
          - CONTACT_OFFICE_NOT_FOUND
          - CLIENT_OFFICE_NOT_FOUND
          - FEE_STRUCTURE_NAME_NOT_UNIQUE
          - FEE_STRUCTURE_NAME_NOT_FOUND
          - FEE_STRUCTURE_NODE_NOT_FOUND
          - UCDF_DATE_FORMAT_ERROR
          - UCDF_NUMERIC_FORMAT_ERROR
          - UCDF_PERCENTAGE_FORMAT_ERROR
          - UCDF_MONEY_FORMAT_ERROR
          - UCDF_TABLE_NOT_FOUND
          - UCDF_TABLE_NAME_INCONSISTENT
          - UCDF_TABLE_ROWS_EXCEED_MAXIMUM_ROWS
          - UCDF_TABLE_ROW_NO_INFO
          - UCDF_TABLE_ROW_NOT_DELETED
          - UCDF_TABLE_ROW_NOT_UPDATED
          - UCDF_TABLE_ROW_REF_IGNORED
          - PAYMENT_NOT_ADDED
          - VENDOR_ID_FIELD_NOT_CONFIGURED
          - NO_LAWFIRM_OFFICE_ASSIGNED_TO_VENDOR
          - MULTIPLE_LFO_ASSIGNED_TO_VENDOR_ID
          - ACTIVE_FEE_OFFER_NOT_FOUND
          - INVOICE_NOT_FOUND
          - INVOICE_NOT_APPROVED
          - INVOICE_NUMBER_NOT_UNIQUE
          - WORKFLOW_ID_NOT_FOUND
          - RULESET_ID_NOT_FOUND
          - INVALID_ALLOCATION
          - UNABLE_TO_ASSIGN_LF
          - PAYMENT_REFERENCE_EXISTS_WITH_DIFFERENT_DATE
          - PAYMENT_REFERENCE_EXISTS_FOR_INVOICE_NUMBER
          - DUPLICATE_PAYMENT
          - PAYMENT_DATE_NOT_PROVIDED
          - PAYMENT_AMOUNT_NOT_PROVIDED
          - PAYMENT_CURRENCY_NOT_PROVIDED
          - PAYMENT_REFERENCE_NOT_PROVIDED
          - PAYMENT_REFERENCE_CURRENCY_NOT_MATCHING
          - BATCH_IN_PROGRESS
          - CLIENT_ID_INVALID
          - PAGE_NUMBER_INVALID
          - BATCH_ID_INVALID
          - BATCH_CANNOT_BE_CREATED
          - ECA_ID_REQUIRED
          - ECA_GROUP_REQUIRED
          - PAGE_SIZE_INVALID
          - DEFAULT_PAGE_SIZE_USED
          - FEE_STRUCTURE_REQUIRED
          - FEE_OFFER_REQUIRED
          - MATTER_ALREADY_ASSIGNED_TO_LAW_FIRM
          - LAW_FIRM_CANNOT_BE_ASSIGNED
          - MATTER_TYPE_GUID_NOT_FOUND
          - LAW_FIRM_OFFICE_NOT_FOUND
          - LAW_FIRM_NOT_FOUND
          - MATTER_ASSIGNMENT_REF_REQUIRED
          - MATTER_ASSIGNMENT_REF_IGNORED
          - MATTER_ASSIGNMENT_INFO_CANNOT_BE_RETRIEVED
          - VENDOR_ID_CHANGE_IGNORED
          - FEE_STRUCTURE_ID_CHANGE_IGNORED
          - VENDOR_ID_OR_LAW_FIRM_OFFICE_ID_REQUIRED
          - VENDOR_ID_REQUIRED
          - FEE_STRUCTURE_ID_REQUIRED
          - UNABLE_TO_PERFORM_FEE_STRUCTURE_CHANGE
          - NO_ACTIVE_FEE_OFFERS_FOUND
          - PENDING_BILLS_ON_FEE_STRUCTURE
          - LAW_FIRM_ASSIGNMENT_UNACCEPTED
          - UNABLE_TO_PERFORM_FEE_OFFER_CHANGE
          - UCDF_SAVE_ERROR
          - MATTER_CHANGE_CONFIGURATION
          - OFFER_RATE_INVALID
          - FEE_STRUCTURE_CANNOT_BE_CHANGED
          - INVOICE_NOT_FOUND_FOR_CLIENT
          - INVALID_REFERENCE
          - INVOICE_CHARGES_NOT_PROVIDED
          - INVOICE_CHARGE_NOT_FOUND_FOR_CLIENT
          - INVOICE_CHARGE_ADJUSTMENT_NOT_FOUND_FOR_CLIENT
          - OPERATION_NOT_SUPPORTED
          - CURRENCY_CANNOT_BE_CHANGED
          - MATTER_ASSIGNMENT_REF_INVALID
          - INVALID_CURSOR
          - DATE_FORMAT_EXCEPTION
          - UNABLE_TO_RETRIEVE_APPROVED_EVENT
          - UNAPPROVED_EVENT
          - EVENT_NOT_FOUND
          - USER_NOT_FOUND
          - REASON_DESCRIPTION_REQUIRED
          - CURRENCY_CODE_REQUIRED
          - CLIENT_GUID_DOES_NOT_EXIST
          - DIVISION_GUID_DOES_NOT_EXIST
          - ENTITY_NOT_FOUND
          - DIVISION_DOES_NOT_EXIST_FOR_CLIENT
          - UNABLE_TO_ADD_CLIENT_DIVISION
          - USER_NOT_ALLOWED
          - INVALID_GUID
          - UNABLE_TO_RETRIEVE_FEE_OFFER_DETAIL
          - MATTER_TYPE_REQUIRED
          - FEE_STRUCTURE_ID_NOT_FOUND
          - MATTER_CANNOT_BE_DELETED
          - PAPER_PROCESSING_BILLER_TYPE_NOT_FOUND
          - MATTER_NOT_FOUND
          - LAW_FIRM_DOES_NOT_EXIST
          - LAW_FIRM_OFFICE_ID_NOT_FOUND
          - LAW_FIRM_ASSIGNED_NOT_ACTIVE_FOR_MATTER
          - BAD_REQUEST
          - LAWFIRM_OFFICE_HAS_DECLINED_NEW_ASSIGNMENTS
          - COUNSEL_TYPE_NOT_FOUND
          - DUPLICATE_ACCESS_KEY
          - INVALID_ACCESS_KEY
          - INVALID_SECRET_KEY
          - CONTACT_NOT_FOUND
          - CONTACT_NOT_DELETED
          - CONTACT_ASSOCIATED_TO_MATTER_LEGALHOLD
          - CONTACT_CREATED
          - CONTACT_UPDATED
          - PARTICIPANT_ROLE_NOT_FOUND
          - MATTER_PARTICIPANT_ALREADY_EXISTS
          - MATTER_PARTICIPANT_NOT_FOUND
          - MATTER_PARTICIPANT_NOT_DELETED
          - INVALID_EMAIL
          - INVALID_DATE_OF_BIRTH
          - DUPLICATE_ENTITY
          - CANNOT_CREATE_CONTACT
          - USER_DOES_NOT_EXIST
          - DOCUMENT_NOT_FOUND
          - DOCUMENT_NOT_DOWNLOADABLE
          - DOCUMENT_ID_IS_REQUIRED
          - FEE_STRUCTURE_ID_VALID_FOR_OFFICE
          - FEE_STRUCTURE_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - WORKFLOW_ID_VALID_FOR_OFFICE
          - WORKFLOW_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - RULESET_ID_VALID_FOR_OFFICE
          - RULESET_ID_FOUND_FOR_CLIENT_BUT_NOT_VALID_FOR_OFFICE
          - INCORRECT_CLIENT_ENTITY_ID
          - MCR_INVALID_EFFECTIVE_DATE
          - MCR_INVALID_FEE_STRUCTURE_EFFECTIVE_DATE
          - LFO_RELATIONSHIP_NOT_FOUND
          - MATTER_TYPE_CONFIG_NOT_ENABLED
          - UCDF_CONFIGURATION_NOT_FOUND_FOR_FIELD
          - MATTER_TYPE_NOT_EXIST_IN_OFFICE
          - MATTER_ASSIGNMENT_NOT_FOUND
          - DISPLAY_ASSIGNING_OFFICE_DURING_MATTER_SETUP_CONFIG_NOT_SET
          - ASSIGNING_OFFICE_IS_REQUIRED_DURING_MATTER_SETUP
          - MATTER_ASSIGNING_OFFICE_ERROR
          - FAST_TRACK_INACTIVE
          - LAW_FIRM_INVOICE_NUMBER_NOT_UNIQUE
          - RELATED_MATTER_ERROR
          - PENDING_INVOICE_ERROR
          - SERVICE_UNAVAILABLE_ERROR
          - FORBIDDEN_ENDPOINT
          - CHARGE_ADJUSTMENT_ERROR
          - CHARGE_NUMBER_NOT_FOUND
          - CHARGE_NUMBER_NOT_ASSOCIATED_WITH_ADJUSTMENT_CHARGE_NUMBER
          - RULE_CODE_INVALID
          - TAX_SUMMARY_ERROR
          - INTAKE_GUID_NOT_FOUND
        type:
          type: string
          description: Type of message
          example: INFO
          enum:
          - INFO
          - WARN
          - ERROR
        field:
          type: string
          description: The field pertaining to the message
          example: divisionName
        value:
          type: string
          description: The value of the field pertaining to the message
          example: West Division
        message:
          type: string
          description: A message is sometimes provided when the code is not sufficient
            to troubleshoot the issue
          example: Division with name West Division does not exist
        values:
          type: array
          items:
            type: string
    NotificationError_GetUserLoginAudit:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message_GetUserLoginAudit'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
    ServerErrorInfo_GetUserLoginAudit:
      type: object
      properties:
        rid:
          maxLength: 36
          minLength: 36
          type: string
          description: Request ID
          example: aa33d504-9ace-4ba4-9796-86b3bc7aa52f
        info:
          type: string
          description: Additional information about the error
          example: Request ID (rid) and message values helps in debugging. Please
            provide these when contacting support about the error!
        message:
          type: string
          description: Error Message
          example: Unexpected error occurred. Request ID = aa33d504-9ace-4ba4-9796-86b3bc7aa52f
    LocationCreateResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        locationGuid:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    ClosedResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    WorkIntakeCreateResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        intakeGuid:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    WorkIntake:
      required:
      - description
      - requestTypeGuid
      - title
      type: object
      properties:
        intakeId:
          type: integer
          description: WorkIntake Id
          format: int64
          example: 17920759
        requestTypeGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Request Type GUID. Required for POST/PUT operations.
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        title:
          maxLength: 255
          type: string
          description: Title. Required for POST/PUT operations.
          example: New Intake Title
        description:
          maxLength: 1024
          type: string
          description: Description. Required for POST/PUT operations.
          example: Work Intake Description
        requestTypeName:
          maxLength: 255
          type: string
          description: requestTypeName
          example: WorkIntake_Type
        intakeOwnerGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: WorkIntake Owner GUID
          format: uuid
          example: d41a4198-a609-41ef-b093-b6832aebe5b4
        createdOn:
          type: string
          description: Created Date
          format: date-time
        status:
          type: string
          description: WorkIntake Status
          example: INTAKE
          enum:
          - ACTIVE
          - ABANDONED
          - CLOSED
          - DELETED
          - UNACCEPTED
          - INACTIVE
          - INCOMPLETE
          - UNASSIGNED
          - ASSIGNED
          - ASSIGNED_TO_INTERNAL_COUNSEL
          - FEE_STRUCTURE_CHANGE_REQUESTED
          - MODIFY_FEES_CHANGE_REQUESTED
          - VARIABLE_CHANGE_REQUESTED
          - ASSIGN_VOLUME_DISCOUNT
          - CHANGED_VOLUME_DISCOUNT
          - REMOVE_VOLUME_DISCOUNT
          - PENDING_REMOVAL
          - RELATED_MATTER_ACTIVE
          - RELATED_MATTER_REMOVED
          - PENDING_STAFFING_LIST_APPROVAL
          - PENDING_STAFFING_LIST_SUBMISSION
          - LEGALPRECISION_STATUS_MIGRATED_TO_COUNSELLINK
          - INTAKE
          - NONE
        workIntakeGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: WorkIntake GUID. Required for PUT operations
          format: uuid
          example: d41a4198-a609-41ef-b093-b6832aebe5b4
        requesterGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Requester GUID
          format: uuid
          example: d41a4198-a609-41ef-b093-b6832aebe5b4
    WorkIntakeRequestTypeCreateResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        requestTypeGuid:
          type: string
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
    WorkIntakeRequestType:
      required:
      - assignedToGuid
      - locationGuid
      - requestTypeName
      type: object
      properties:
        requestTypeGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Request Type GUID. Required for PUT operations
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        locationGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Location GUID
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        locationName:
          maxLength: 255
          type: string
          description: Location Name
          example: Work Intake Location
        assignedToGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: Assigned To Guid
          format: uuid
          example: 67612a08-a0a1-4096-9b71-11ec22b2be0e
        assignToType:
          maxLength: 255
          type: string
          description: Assign To Type
          example: Client Individual
        requestTypeName:
          maxLength: 255
          minLength: 1
          type: string
          description: The Intake request type name
          example: New API Request Type
        isDocumentRequired:
          type: boolean
          description: Is document required for the intake
          example: true
        isConvertToMatter:
          type: boolean
          description: Convert to matter
          example: false
        isActive:
          type: boolean
          description: Is Active
          example: true
    Location:
      type: object
      properties:
        locationGuid:
          maxLength: 36
          minLength: 36
          type: string
          description: The Unique identifier for the location
          format: uuid
          example: 77b3a06d-ddde-4c9f-b2bd-f2f15b3ff36b
        locationName:
          maxLength: 255
          type: string
          description: Name of the location
          example: Sacramento
    ReOpenResponse:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
        action:
          type: string
          description: Action performed on the resource
          example: CREATED
          enum:
          - UNKNOWN
          - CREATED
          - UPDATED
          - DELETED
          - NO_ACTION
          - ONLY_CUSTOM_DATA_UPDATED
          - RETRIEVED
          - CLOSED
          - REOPENED
        links:
          type: array
          xml:
            name: link
            namespace: http://www.w3.org/2005/Atom
          items:
            type: object
            properties:
              params:
                type: object
                additionalProperties:
                  type: string
              type:
                type: string
              uri:
                type: string
                format: uri
              rel:
                type: string
              title:
                type: string
              uriBuilder:
                type: object
              rels:
                type: array
                items:
                  type: string
