openapi: 3.0.0 info: description: Api Documentation version: '1.0' title: Api Documentation Accounts expense-controller-v1 API termsOfService: urn:tos contact: {} license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://service.chromeriver.com tags: - name: expense-controller-v1 description: Retrieve expense report information and create draft expense reports paths: /v1/expense-reports: get: tags: - expense-controller-v1 summary: Get list of reports summary by expense owner description: This web service allows an external application to fetch a list of report summaries by owner. This excludes deleted reports of the owner operationId: getExpenseReportsUsingGET parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: expenseOwnerId in: query description: Unique ID for the owner of the expense report. Either expenseOwnerId or (header) logged-in-user-id is required. required: false allowEmptyValue: false schema: type: string - name: logged-in-user-id in: header description: logged-in-user-id required: false schema: type: string - name: x-api-key in: header description: 'API key for Authentication ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ExpenseReport' '400': description: Customer Code is invalid '401': description: Customer Code is not authorized. '403': description: Logged in user does not exist. '503': description: Service unavailable. deprecated: false post: tags: - expense-controller-v1 summary: Create a draft expense report description: This web service allows an external application to create a draft expense report. operationId: createExpenseReportUsingPOST parameters: - name: chain-id in: header description: Reference used to track the flow of the request required: false schema: type: string - name: creator-user-id in: header description: Unique ID of expense creator required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: logged-in-user-id in: header description: Unique ID of expense owner required: true schema: type: string - name: x-api-key in: header description: 'API key for Authentication ' required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ExpenseReportHeaderCreateModel' description: Expense report to create required: true responses: '200': description: OK content: application/json: schema: type: object '400': description: Customer Code is invalid. '401': description: Customer Code is not authorized. Cannot create expense report. '402': description: Expense draft report cannot be created. '503': description: Service unavailable. deprecated: false /v1/expense-reports/{reportId}: get: tags: - expense-controller-v1 summary: Get details of report description: This web service allows an external application to fetch details of a report. operationId: getExpenseReportUsingGET_2 parameters: - name: chain-id in: header description: Used for tracking the flow of the request. required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River. required: true schema: type: string - name: expenseOwnerId in: query description: Unique ID for the owner of the expense report. required: true allowEmptyValue: false schema: type: string - name: reportId in: path description: Identifier for the expense report. required: true schema: type: string - name: x-api-key in: header description: API key for Authentication. required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ExpenseReport' '400': description: Customer Code is invalid. '401': description: Customer Code is not authorized. '403': description: Expense owner does not exist. '503': description: Service unavailable. deprecated: false /v1/expense-reports/{reportId}/line-items: delete: tags: - expense-controller-v1 summary: Delete an expense report line item description: This web service allows an external application to delete the specified expense report line item. operationId: deleteExpenseReportLineItemUsingDELETE parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: externalTransactionId in: query description: External transaction ID for transaction required: true allowEmptyValue: false schema: type: string - name: logged-in-user-id in: header description: Unique ID for the user logged in making request required: true schema: type: string - name: reportId in: path description: Report ID for report required: true schema: type: string - name: x-api-key in: header description: 'API key for Authentication ' required: true schema: type: string responses: '204': description: No Content. Item successfully deleted content: application/json: schema: type: object '400': description: Cannot delete line item for expense report in this status '401': description: Customer Code is not authorized. Cannot submit expense report. '403': description: Logged in user is not authorized to delete item or Logged in user does not exist. '404': description: Expense report line item does not exist for this report '503': description: Service unavailable. deprecated: false /v1/expense-reports/{reportId}/notes: post: tags: - expense-controller-v1 summary: Add a note to an expense report description: This web service allows an external application to add a note to an expense report. operationId: createExpenseHeaderNoteUsingPOST parameters: - name: chain-id in: header description: Reference used to track the flow of the request required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: logged-in-user-id in: header description: Unique ID of the user logged in making request required: false schema: type: string - name: reportId in: path description: reportId required: true schema: type: string - name: x-api-key in: header description: 'API key for Authentication ' required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ExpenseHeaderNote' description: Expense report Note object to be added required: true responses: '200': description: OK content: application/json: schema: type: object '400': description: Customer Code is invalid. '401': description: Customer Code is not authorized. Cannot create expense report. '402': description: Expense draft report cannot be created. '503': description: Service unavailable. deprecated: false /v1/expense-reports/{reportId}/tracking: get: tags: - expense-controller-v1 summary: Get expense report tracking details description: Returns routing and approval tracking details for the specified expense report. operationId: getReportForTrackingUsingGET parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: reportId in: path description: Identifier for the expense report. required: true schema: type: string - name: x-api-key in: header description: API key for Authentication required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ExpenseRoutingTrackingItem' '400': description: Customer Code is invalid. '401': description: Customer Code is not authorized. '403': description: User is not authorized to use this endpoint. '404': description: Expense report does not exist. '503': description: Service unavailable. deprecated: false /v1/open-expense-reports: get: tags: - expense-controller-v1 summary: Get list of open expense reports description: This web service allows an external application to fetch open expense reports. operationId: getOpenExpenseReportsUsingGET parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: x-api-key in: header description: 'API key for Authentication ' required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenExpenseReport' '400': description: Customer Code is invalid '401': description: Customer Code is not authorized. '503': description: Service unavailable. deprecated: false components: schemas: Entity: type: object properties: code: type: string example: 100 description: Entity code. Max 50 characters extraData1: type: string example: Main description: Extra data field. Max 1000 characters extraData2: type: string example: Office description: Extra data field. Max 1000 characters extraData3: type: string example: 1000 description: Extra data field. Max 1000 characters extraData4: type: string example: 900 description: Extra data field. Max 1000 characters extraData5: type: string example: '0000' description: Extra data field. Max 1000 characters name: type: string example: Los Angeles description: Name of entity. Max 100 characters title: Entity ExpenseReportHeaderCreateModel: type: object required: - currencyCode - reportName properties: currencyCode: type: string example: USD description: Employee's PayMeInCurrency. ISO-4217 reportName: type: string example: Trip to New Orleans 6/6-6/9 description: Name of expense report. Max 45 characters transactionGroupId: type: integer format: int32 example: 1 description: Field used to associate an Expense Transactions Group with the report. title: ExpenseReportHeaderCreateModel Person: type: object properties: firstName: type: string example: Smith description: Person's last name. Max 100 characters lastName: type: string example: Jacob description: Person's first name. Max 100 characters personEntities: type: array description: List of person entities associated with person items: $ref: '#/components/schemas/PersonEntities' personUniqueId: type: string example: jsmith description: Unique identifier for person. Max 100 characters primaryEmailAddress: type: string example: jacob.smith@cpa.org description: Person's primary email address. Max 100 characters reportsToUniqueId: type: string example: lkemp description: Unique identifier for manager person reports to title: type: string example: Associate Accountant description: Person's title. Max 255 characters uniquePersonId: type: string title: Person PaLineItemType: type: object properties: externalRef: type: string example: 4320 description: Reference to an external system's expense types. Max 50 characters id: type: integer format: int32 example: 1398 description: Internal ID of preapproval line item name: type: string example: Airfare description: Expense type of preapproval line item. Max 50 characters type: type: string example: LineItem enum: - LineItem - Header title: PaLineItemType ExpenseReportLineItemPersonGuest: type: object properties: amount: type: number example: 11.98 description: Amount of expense spent by/for guest company: type: string example: CFA Consultants description: Company of guest. Max 100 characters firstName: type: string example: Jennifer description: First name of guest. Max 100 characters guestType: type: string example: InternalGuest description: Type of guest enum: - InternalGuest - ExternalGuest - HealthCareProvider - TemporaryHealthCareProvider - CRMGuest lastName: type: string example: Garth description: Last name of guest. Max 100 characters percentage: type: number example: 10 description: Percentage of expense spent by/for guest title: type: string example: Legal Consultant description: Title of guest. Max 255 characters title: ExpenseReportLineItemPersonGuest ExpenseReportLineItem: type: object properties: allocations: type: array description: List of allocations selected for line item items: $ref: '#/components/schemas/LineItemAllocation' amount: type: number example: 119.81 description: Amount of line item amountApproved: type: number example: 119.81 description: Approved amount due to expense owner amountCustomer: type: number example: 0 description: AmountSpent * customer's exchange rate amountSpent: type: number example: 119.81 description: Amount spent of line item approvalStatus: type: string example: Pending Approval description: NULL for parent line items (parent == true) enum: - Draft - Pending Approval - Approved For Payment - Returned - Exported - Paid - Partially Paid businessPurpose: type: string example: Conference description: Business purpose of expense. Max 2500 characters children: type: array description: List of child expenses. Used for hotel items. items: $ref: '#/components/schemas/ExpenseReportLineItem' comments: type: array description: List of comments attached to line item items: $ref: '#/components/schemas/Comment' complianceItems: type: array description: List of compliance issues associated with the line item items: $ref: '#/components/schemas/ComplianceItem' createDate: type: string format: date-time example: 2022-01-03 05:53:39:000 description: Date expense line item was created on report currencyCodeCustomer: type: string example: USD description: Customer's default ISO-4217 currency code currencySpent: type: string example: USD description: ' ISO-4217 Currency code spent' currentApprovers: type: array description: List of approvers where line item is currently pending items: $ref: '#/components/schemas/Person' description: type: string example: Flight to St. Louis description: Description of expense. Max 2500 characters expenseItemType: type: string example: Airfare description: Expense category of line item. Max 50 characters exportStatus: type: string example: Exported description: Export status of line item enum: - In Export - Waiting for Export - Exported - Paid - Partially Paid feedCode: type: string example: CreditCardAmex description: Name of feed for expense transaction feedName: type: string example: Amex Corporate Card description: Name of feed for expense transaction firmPaid: type: boolean guests: type: array description: List of guests for line item items: $ref: '#/components/schemas/ExpenseReportLineItemPersonGuest' hasReceipt: type: boolean example: true description: Is a receipt attached hasTaxReceipt: type: boolean example: true description: Is a tax receipt attached id: type: string example: b0dd069a-ce1a-45bf-b9dd-48cac24735ff description: Internal ID of expense report line item. 36 characters images: type: array description: Filenames of images attached to this line item items: type: string isCreditCard: type: boolean example: true description: Returns true if feed of expense transaction is a credit card feed paLineItemType: $ref: '#/components/schemas/PaLineItemType' parent: type: boolean perDiemLineItem: $ref: '#/components/schemas/PerDiemLineItem' personal: type: boolean transactionDate: type: string format: date-time example: 2022-01-03 05:53:39:000 description: Date of transaction udas: type: array description: List of line item user defined attributes. items: $ref: '#/components/schemas/UserDefinedAttribute' updateDate: type: string format: date-time example: 2022-01-03 05:53:39:000 description: Date expense line item was last updated on report vatAmount: type: number example: 5.99 description: Amount of VAT tax vatAmount2: type: number example: 5.99 description: Amount of 2nd VAT tax vatAmount3: type: number example: 5.99 description: Amount of 3rd VAT tax vatAmountApplied: type: number example: 5.99 description: VAT amount applied to expense vatAmountApplied2: type: number example: 5.99 description: VAT amount applied to expense vatAmountApplied3: type: number example: 5.99 description: VAT amount applied to expense vatAmountAppliedRemainder: type: number example: 5.99 description: Remainder of VAT amount applied vatAmountAppliedRemainder2: type: number example: 5.99 description: Remainder of VAT amount applied vatAmountAppliedRemainder3: type: number example: 5.99 description: Remainder of VAT amount applied vatAmountEntered: type: number example: 5.99 description: VAT amount as entered by user vatAmountEntered2: type: number example: 5.99 description: VAT amount as entered by user vatAmountEntered3: type: number example: 5.99 description: VAT amount as entered by user vatLocation: type: string example: Canada description: Location of VAT taxation. Max 50 characters vatTaxCode: type: string example: GST description: VAT tax code. Max 10 characters vatTaxCode2: type: string example: HST description: VAT tax code 2. Max 10 characters vatTaxCode3: type: string example: PST description: VAT tax code 3. Max 10 characters vatTaxPercentage: type: number example: 5 description: Rate of VAT tax vatTaxPercentage2: type: number example: 5 description: Rate of 2nd VAT tax vatTaxPercentage3: type: number example: 5 description: Rate of 3rd VAT tax vatTaxPercentageReclaim: type: number example: 100 description: Rate of VAT refund vatTaxPercentageReclaim2: type: number example: 100 description: Rate of VAT refund for 2nd VAT tax code vatTaxPercentageReclaim3: type: number example: 100 description: Rate of VAT refund for 3rd VAT tax code title: ExpenseReportLineItem ExpenseReport: type: object properties: budgetDetails: type: array description: Details of budget encumbrance/liquidation amounts associated with the preapproval attached to the report. Only relevant for customers using encumbrance/liquidation. items: $ref: '#/components/schemas/BudgetDetail' comments: type: array description: List of comments written on the expense report items: $ref: '#/components/schemas/Comment' complianceItems: type: array description: List of compliance item issues associated with the expense report items: $ref: '#/components/schemas/ComplianceItem' createDate: type: string format: date-time example: 2022-01-12 03:34:32:000 description: Date expense report was created currencyCode: type: string example: USD description: Employee's PayMeInCurrency expenseReportUrl: type: string example: https://app.chromeriver.com/expense_reports_app/DEV034334052?customerCode=CF7H description: URL of expense report hasComplianceItems: type: boolean example: false description: Used in expense-report-approval summaries to notify if header, line item, or children items have compliance items images: type: array description: Filenames of images attached to expense report header items: type: string lineItems: type: array description: List of expense report line items items: $ref: '#/components/schemas/ExpenseReportLineItem' numberOfExpenseLineItems: type: integer format: int32 example: 1 description: Number of expense items in report preApprovalReportId: type: string example: 010038294829 description: 12 character ID of preapproval attached to expense report receiptUrl: type: string example: https://chromeriver.com/v2/expense-report-receipts/010034331701?customerCode=ABCD description: URL of receipt attached to report reportId: type: string example: 010083927384 description: 12 character ID of expense report reportName: type: string example: Trip to St. Louis 9/19-9/20 description: Name of expense report. Max 45 characters reportOwner: $ref: '#/components/schemas/Person' reportStatus: type: string example: Submitted description: Status of expense report enum: - New - Draft - Submitted - Deleted - Returned reportTotalAmount: type: number example: 119.81 description: Total of expenses in report reportTotalAmountApproved: type: number example: 119.81 description: Total of approved expenses in report reportTotalFirmPaidAmount: type: number example: 119.81 description: Total of firm paid expenses in report reportTotalPayMeAmount: type: number example: 119.81 description: Total of amount due to expense owner submitDate: type: string format: date-time example: 2022-01-12 05:34:32:000 description: Date expense report was submitted transactionGroupReferenceNumber: type: string example: IBQRNA1 description: Expense transaction group reference number associated with the expense report. Max 255 characters udas: type: array description: Returned on GET requests. POST/PATCH/PUT requests with this field will result in a BAD_REQUEST items: $ref: '#/components/schemas/UserDefinedAttribute' updateDate: type: string format: date-time example: 2022-01-12 05:34:32:000 description: Date expense report was last updated title: ExpenseReport PerDiemLineItem: type: object properties: additionalDeductionAmount: type: number example: 0 description: Any additional amounts that need to be deducted not covered by the itemized line items address: type: string example: 5700 Olympic Blvd description: Address for expense. Max 400 characters allowableAmount: type: number alocholAmount: type: number amountPerDiem: type: number example: 150 description: Amount of per diem expense baseRate: type: number breakfastAmountIMR: type: number example: 11 description: Individual meal rate- breakfast breakfastDeductionAmount: type: number example: 0 description: Amount of breakfast deduction city: type: string example: Los Angeles description: City of expense. Max 100 characters country: type: string example: United States description: Country of expense. Max 50 characters county: type: string example: Los Angeles County description: County of expense. Max 100 characters currencyCode: type: string example: USD description: Currency code of per diem line item. ISO-4217 dinnerAmountIMR: type: number example: 22 description: Individual meal rate- dinner dinnerDeductionAmount: type: number example: 0 description: Amount of dinner deduction endDate: type: string format: date-time description: End date of per diem expense foodAmount: type: number foodOverage: type: number incidentalDeductionAmount: type: number example: 0 description: The dollar amount of any incidental per diem allowance isArriveNextDay: type: boolean example: false description: Indicates whether traveller will arrive the following day isArrivePreviousDay: type: boolean example: false description: Indicates if person arrived previous day isBreakfastDeducted: type: boolean example: false description: Indicates if breakfast deduction is taken isDinnerDeducted: type: boolean example: false description: Indicates if dinner deduction is taken isDiscardedDay: type: boolean isFullTravelDay: type: boolean example: false description: Indicates whether travel is full day isLodgingDeducted: type: boolean example: false description: Indicates if lodging is deducted isLunchDeducted: type: boolean example: false description: Indicates if lunch deduction is taken isOvernightStay: type: boolean example: false description: Indicates if trip had an overnight stay isTravelDayDeducted: type: boolean description: If the travel day deduction is taken, this field will be true latitude: type: number format: double example: 193.29283 description: Latitude of start position lodgingDeductionAmount: type: number example: 0 description: Amount of lodging deduction longitude: type: number format: double example: 30.5445022 description: Longitude of start position lunchAmountIMR: type: number example: 23 description: Individual meal rate- lunch lunchDeductionAmount: type: number example: 0 description: Amount of lunch deduction mealType: type: string example: Dinner description: Meal type for meal expense. Max 15 characters numberOfAttendees: type: integer format: int32 example: Dinner description: Meal type for meal expense. Max 15 characters otherCity: type: string example: San Diego description: Another city where travel took place if trip spans >1 city. Max 50 characters perDiemDayPosition: type: string example: SNGL description: Position of day in trip enum: - FRST - LAST - NORM - SNGL rate: $ref: '#/components/schemas/PerDiemRate' rooms: type: integer format: int32 example: 1 description: Number of rooms for lodging expense startDate: type: string format: date-time description: Start date of per diem expense state: type: string example: CA description: State of expense. Max 50 characters taxTip: type: number totalAlcoholAmount: type: number totalFoodAmount: type: number title: PerDiemLineItem PerDiemRate: type: object properties: amountMaximumPerDiem: type: number city: type: string title: PerDiemRate LineItemAllocation: type: object properties: allocationId: type: string example: 001109-600001_001109 description: Allocation identifier. Max 255 characters allocationRefereceString: type: string example: 1000-7302-FirmPaid description: Concatenated string of all allocation reference values. Max 1650 characters allocationReference: $ref: '#/components/schemas/LineItemAllocationReference' amount: type: number example: 25 description: Amount of total expense due to allocation amountSpentApproved: type: number example: 25 description: Amount of total approved expense due to allocation clientName: type: string example: FIRM FUNCTIONS (CHICAGO) description: Allocation client name. Max 130 characters clientNumber: type: string example: 1000 description: Allocation number. Max 150 characters costCodeOverride: type: string example: 617500 description: Cost code override value. Max 50 characters description: type: string example: Athletics description: Description of allocation. Max 255 characters entityField1: type: string example: 801 description: Entity field. Max 50 characters entityField2: type: string example: 700 description: Entity field. Max 50 characters entityField3: type: string example: 9999 description: Entity field. Max 50 characters glAccount: type: string example: 617500 description: GL account. Max 50 characters isPersonal: type: boolean example: false description: Indicates whether this is a personal allocation matterOnSelect1: type: string description: Matter on select 1. Max 50 characters matterOnSelect2: type: string description: Matter on select 2. Max 50 characters number: type: string example: 001109-600001 description: Allocation number. Max 150 characters percent: type: number example: 50 description: Percent of total expense due to allocation type: type: string example: 1000 description: Allocation type. Max 10 characters udf1: type: string example: General description: User defined field. Max 50 characters udf2: type: string example: PTBSM1 description: User defined field. Max 50 characters udf3: type: string example: RCM2 description: User defined field. Max 50 characters udf4: type: string description: User defined field. Max 50 characters vatAmount: type: number example: 4.33 description: Amount of VAT tax vatAmount2: type: number example: 4.33 description: Amount of VAT tax vatAmount3: type: number example: 4.33 description: Amount of VAT tax vatTaxCode: type: string example: HST description: VAT tax code. Max 10 characters vatTaxCode2: type: string example: GST description: VAT tax code 2. Max 10 characters vatTaxCode3: type: string example: PST description: VAT tax code 3. Max 10 characters vatTaxPercentage: type: number example: 5 description: Rate of VAT tax vatTaxPercentage2: type: number example: 5 description: Rate of VAT tax vatTaxPercentage3: type: number example: 5 description: Rate of VAT tax title: LineItemAllocation Comment: type: object properties: comment: type: string example: Submitted via Chrome River Application. Max 2000 characters createDate: type: string format: date-time example: 2023-01-09 10:57:53+00:00 description: Date of comment creation. creatorName: type: string example: Jason Klein description: Name of comment author title: Comment ExpenseHeaderNote: type: object properties: createDate: type: string format: date-time createDateStr: type: string creatorName: type: string customerID: type: integer format: int32 expenseReportHeaderID: type: string headerNoteID: type: string headerUpdateDate: type: string format: date-time note: type: string personID: type: integer format: int32 submitDate: type: string format: date-time title: ExpenseHeaderNote PersonEntities: type: object properties: entityCode: type: string example: FIN description: Entity code. Max 50 characters entityName: type: string example: Finance description: Entity name. Max 100 characters entityTypeCode: type: string example: DEPT description: Entity type code. Max 32 characters entityTypeName: type: string example: Department description: Entity type name. Max 50 characters roleName: type: string example: Part Of description: Role name for the person-entity relationship. Max 50 characters title: PersonEntities UserDefinedAttribute: type: object properties: booleanValue: type: boolean description: Populated if UDA is a boolean value currencyValue: type: number example: 100 description: Populated if UDA is a monetary value dateValue: type: string format: date-time description: Populated if UDA is a date value entityValue: $ref: '#/components/schemas/Entity' entityValueInt: type: integer format: int32 example: 90 description: Populated if UDA is an entity. ID of entity numberValue: type: number example: 100 description: Populated if UDA is a number value stringValue: type: string example: 1000 North Sunset Road description: Populated if UDA is a String value. Max 1000 characters udaDataType: type: string example: booleanValue description: DataType of UDA enum: - booleanValue - stringValue - numberValue - currencyValue - entityValue - dateValue udaName: type: string description: Name of user defined attribute. Max 60 characters title: UserDefinedAttribute LineItemAllocationReference: type: object properties: allocationSeg1: type: string description: Allocation reference segment 1. Max 100 characters allocationSeg10: type: string description: Allocation reference segment 10. Max 100 characters allocationSeg11: type: string description: Allocation reference segment 11. Max 100 characters allocationSeg12: type: string description: Allocation reference segment 12. Max 100 characters allocationSeg13: type: string description: Allocation reference segment 13. Max 100 characters allocationSeg14: type: string description: Allocation reference segment 14. Max 100 characters allocationSeg15: type: string description: Allocation reference segment 15. Max 100 characters allocationSeg16: type: string description: Allocation reference segment 16. Max 100 characters allocationSeg2: type: string description: Allocation reference segment 2. Max 100 characters allocationSeg3: type: string description: Allocation reference segment 3. Max 100 characters allocationSeg4: type: string description: Allocation reference segment 4. Max 100 characters allocationSeg5: type: string description: Allocation reference segment 5. Max 100 characters allocationSeg6: type: string description: Allocation reference segment 6. Max 100 characters allocationSeg7: type: string description: Allocation reference segment 7. Max 100 characters allocationSeg8: type: string description: Allocation reference segment 8. Max 100 characters allocationSeg9: type: string description: Allocation reference segment 9. Max 100 characters title: LineItemAllocationReference BudgetDetail: type: object properties: amount: type: number budgetId: type: string docLineItemId: type: string docType: type: string encumbered: type: boolean externalReference: type: string ruleCode: type: string type: type: string title: BudgetDetail ComplianceItem: type: object properties: description: type: string example: Receipt must be attached > 10.00 USD description: Description of compliance issue messageCode: type: string example: 422 description: Compliance code that was issued. Max 10 characters response: type: string example: Lost the receipt description: Expense owner's response to compliance issue. Max 255 characters status: type: string example: Validated description: Compliance status enum: - New - Violation - Warning - Validated - NonValidated type: type: integer format: int32 example: 0 enum: - 0 - 1 title: ComplianceItem OpenExpenseReport: type: object properties: dateOfLastChange: type: string example: 2022-10-13T10:29:32.000X description: Date report was last updated personUniqueId: type: string example: jsmith description: Unique ID of report owner. Max 50 characters reportId: type: string example: 010093028019 description: 12 digit report ID title: OpenExpenseReport ExpenseRoutingTrackingItem: type: object properties: amountSpent: type: number amountSpentConverted: type: number approvalMethod: type: string approver: type: string assignedDate: type: string format: date-time assignedTo: type: array items: type: string assignedToEntityCode: type: string assignedToPersonId: type: integer format: int32 assignedToRoleName: type: string children: type: array items: $ref: '#/components/schemas/ExpenseRoutingTrackingItem' completedBy: type: string completedByPersonId: type: integer format: int32 completedByRoleName: type: string completedDate: type: string format: date-time currencyCodeSpent: type: string currencyCodeSpentConverted: type: string displayStatus: type: string expenseReportItemTypeDisplayName: type: string expenseReportItemTypeName: type: string expenseReportLineItemId: type: string expenseReportLineItemStepId: type: integer format: int64 exportDate: type: string format: date-time gateKeeper: type: boolean keepTogetherGroupNum: type: integer format: int32 lastRankFromRules: type: integer format: int32 lineNumber: type: integer format: int32 lineNumber2: type: integer format: int32 name: type: string parent: type: boolean parentId: type: string payMeInCurrencyCode: type: string previousApprovers: type: string reportId: type: string routingStatus: type: string ruleDescription: type: string ruleId: type: string statusApproved: type: string step: type: integer format: int32 title: ExpenseRoutingTrackingItem