openapi: 3.0.0 info: description: Api Documentation version: "1.0" title: Api Documentation termsOfService: urn:tos contact: {} license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0 tags: - name: expense-controller-v3 description: Retrieve expense reports by filter(s) - name: expense-controller-v1 description: Retrieve expense report information and create draft expense reports - name: expense-approval-controller-v2 description: Approve, return and reassign expense reports using username or email of approver. - name: expense-approval-controller-v1 description: Approve, return and reassign expense reports. - name: expense-receipts-controller description: Retrieve expense receipt PDF - name: expense-types-controller description: Retrieve expense type information - name: expense-report-line-item-controller description: Retrieve expense report line items - name: returned-payments-controller description: Retrieve information concerning returned payments paths: "/v1/expense-receipts/{reportId}": get: tags: - expense-receipts-controller summary: Retrieve an expense receipt PDF description: This web service allows an external application to fetch a receipt PDF. operationId: getExpenseReceiptsUsingGET parameters: - name: customer-id in: header description: customer-id required: true schema: type: integer format: int32 - name: person-id in: header description: person-id required: true schema: type: integer format: int32 - name: reportId in: path description: reportId required: true schema: type: string responses: "200": description: OK content: application/pdf: schema: type: string format: byte deprecated: false /v1/expense-report-approvals: get: tags: - expense-approval-controller-v1 summary: Get list of reports for approval description: This web service allows an external application to get a list of expense reports awaiting approval by a user operationId: getApprovalsUsingGET 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: logged-in-user-id in: header description: Unique ID of the approver logged in making request 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/ExpenseReport" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot get list of expense reports for approval. "403": description: Logged in user does not exist. "503": description: Service unavailable. deprecated: false /v1/expense-report-approvals/count: get: tags: - expense-approval-controller-v1 summary: Get count of reports for approval description: This web service allows an external application to a count of expense reports awaiting approval by a user. operationId: getExpenseReportCountUsingGET 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: logged-in-user-id in: header description: Unique ID of the approver logged in making request 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/CountModel" "400": description: Customer Code is invalid "401": description: Customer Code is not authorized. Cannot get expense report count. "403": description: Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v1/expense-report-approvals/{reportId}": get: tags: - expense-approval-controller-v1 summary: Get expense report details description: This web service allows an external application to get the details of an expense report operationId: getExpenseReportUsingGET 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: logged-in-user-id in: header description: Unique ID of the approver 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: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/ExpenseReport" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot get expense report. "403": description: Logged in user is not allowed to view details expense report or Logged in user does not exist "404": description: Expense Report does not exist. "503": description: Service unavailable. deprecated: false "/v1/expense-report-approvals/{reportId}/submit": post: tags: - expense-approval-controller-v1 summary: Submit an expense report for approval description: This web service allows an external application to submit the specified expense report for approval operationId: submitExpenseReportForApprovalUsingPOST parameters: - name: approver-id in: header description: Unique ID of the approver who currently has the report and wants to submit it further required: true schema: type: string - 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: 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 requestBody: $ref: "#/components/requestBodies/ExpenseSubmit" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" "400": description: Required query parameters are missing or invalid "422": description: Expense report has not been submitted. Report have some business rules violations content: application/json: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" "503": description: Service unavailable. deprecated: false /v1/expense-report-line-item-search: get: tags: - expense-report-line-item-controller summary: getLineItems operationId: getLineItemsUsingGET_1 parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: createDate in: query description: Filter by line item created this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-04-21 schema: type: string format: date-time - name: expenseReportHeaderIds in: query description: Filter to only include line items that belong to a list of comma-separated list of expense report header IDs required: false allowEmptyValue: false explode: true schema: type: array items: type: string - name: exportDate in: query description: Filter by line item exported this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-04-21 schema: type: string format: date-time - name: hasComplianceItems in: query description: Filter by whether a line item has compliance items required: false allowEmptyValue: false schema: type: boolean enum: - "true" - "false" - name: includeMergedTransactions in: query description: Return child transactions in the expenseTransaction data (for merge sets) required: false allowEmptyValue: false schema: type: boolean enum: - "true" - "false" - name: isCreatedByAces in: query description: Filter by whether a line item was created by the ACES (Accelerated Expense Service) required: false allowEmptyValue: false schema: type: boolean enum: - "true" - "false" - name: lineItemStatus in: query description: Filter by line item status required: false allowEmptyValue: false example: Returned schema: type: string enum: - Draft - Pending Approval - Approved - Returned - Exported - Paid - name: reportId in: query description: Filter by line item's header report ID required: false allowEmptyValue: false example: DEV028700864 schema: type: string - name: submitDate in: query description: Filter by line item submitted this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-04-21 schema: type: string format: date-time responses: "200": description: OK content: application/json;charset=UTF-8: schema: type: array items: $ref: "#/components/schemas/ExpenseReportLineItemV3" deprecated: false /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/{report-id}/line-items/{report-line-item-id}/approve": post: tags: - expense-approval-controller-v1 summary: Approve an expense report line item description: This web service allows an external application to approve the specified expense report line item. operationId: approveExpenseReportLineItemUsingPOST 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: logged-in-user-id in: header description: Unique ID for the approver logged in making request required: true schema: type: string - name: report-id in: path description: Report ID for report required: true schema: type: string - name: report-line-item-id in: path description: Report Line Item ID for report 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/NotesModel" description: Optional note tied to Line Item Approval responses: "200": description: OK content: application/json: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot approve expense report line item. "403": description: Logged in user is not authorized to approve line item or Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v1/expense-reports/{report-id}/line-items/{report-line-item-id}/reassign": post: tags: - expense-approval-controller-v1 summary: Reassign an expense report line item description: This web service allows an external application to reassign the specified expense report line item to another approver for review operationId: reassignExpenseReportLineItemUsingPOST 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: logged-in-user-id in: header description: Unique ID for the approver logged in making request required: true schema: type: string - name: report-id in: path description: Report ID for report required: true schema: type: string - name: report-line-item-id in: path description: Report Line Item ID for report required: true schema: type: string - name: x-api-key in: header description: "API key for Authentication " required: true schema: type: string requestBody: $ref: "#/components/requestBodies/ReassignModelV1" responses: "200": description: OK content: application/json: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot reassign expense report line item. "403": description: Logged in user is not authorized to reassign report line item or Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v1/expense-reports/{report-id}/line-items/{report-line-item-id}/return": post: tags: - expense-approval-controller-v1 summary: Return an expense report line item description: This web service allows an external application to return the specified expense report line item. operationId: returnExpenseReportLineItemUsingPOST 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: logged-in-user-id in: header description: Unique ID for the approver logged in making request required: true schema: type: string - name: report-id in: path description: Report ID for report required: true schema: type: string - name: report-line-item-id in: path description: Report Line Item ID for report 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/NotesModel" description: Note tied to Line Item Return 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 return expense report line item. "403": description: Logged in user is not authorized to return report or Logged in user does not exist. "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 delete: tags: - expense-approval-controller-v1 summary: Delete an expense report description: This web service allows an external application to delete the specified expense report operationId: deleteExpenseReportUsingDELETE 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: logged-in-user-id in: header description: Unique ID for the submitter 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. Expense report successfully deleted content: application/json: schema: type: object "401": description: Customer Code is not authorized. Cannot delete expense report. "403": description: Logged in user is not authorized to delete report or Logged in user does not exist. "404": description: Expense report not found "503": description: Service unavailable. deprecated: false "/v1/expense-reports/{reportId}/approve": post: tags: - expense-approval-controller-v1 summary: Approve an expense report description: This web service allows an external application to approve the specified expense report operationId: approveExpenseReportUsingPOST 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: logged-in-user-id in: header description: Unique ID for the approver 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 requestBody: $ref: "#/components/requestBodies/NotesModel2" responses: "200": description: OK content: application/json: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot approve expense report. "403": description: Logged in user is not authorized to approve report or Logged in user 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}/reassign": post: tags: - expense-approval-controller-v1 summary: Reassign an expense report description: This web service allows an external application to reassign the specified expense report to another approver for review operationId: reassignExpenseReportUsingPOST 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: logged-in-user-id in: header description: Unique ID for the approver 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 requestBody: $ref: "#/components/requestBodies/ReassignModelV1" responses: "200": description: OK content: application/json: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot reassign expense report. "403": description: Logged in user is not authorized to reassign report or Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v1/expense-reports/{reportId}/return": post: tags: - expense-approval-controller-v1 summary: Return an expense report description: This web service allows an external application to return the specified expense report to the expense owner operationId: returnExpenseReportUsingPOST 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: logged-in-user-id in: header description: Unique ID for the approver 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 requestBody: $ref: "#/components/requestBodies/NotesModel" responses: "200": description: OK content: application/json: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot return expense report. "403": description: Logged in user is not authorized to return report or Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v1/expense-reports/{reportId}/submit": post: tags: - expense-approval-controller-v1 summary: Submit an expense report description: This web service allows an external application to submit the specified expense report operationId: submitExpenseReportUsingPOST 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: logged-in-user-id in: header description: Unique ID for the submitter 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 requestBody: $ref: "#/components/requestBodies/ExpenseSubmit" responses: "200": description: OK content: application/json: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot submit expense report. "403": description: Logged in user is not authorized to submit report or Logged in user does not exist. "422": description: Expense report has not been submitted. Report have some business rules violations content: application/json: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" "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/expense-types: get: tags: - expense-types-controller summary: Expose expense types of a customer user description: This web service allows an external application to operate on expense types. operationId: getExpenseTypesUsingGET parameters: - name: chain-id in: header description: Tracking identifier for logging request flow required: false schema: type: string - name: customer-code in: header description: Unique customer code provided by Chrome River required: true schema: type: string - name: logged-in-user-id in: header description: Unique person identifier provided by external client 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/ExpenseTypes" "400": description: Customer Code is invalid "401": description: Unauthorized Customer code. "403": description: Customer code is forbidden to get expense types "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 /v1/returned-payment-expense-reports/lite: get: tags: - returned-payments-controller summary: Get list of expense report ids with returned payments description: Expense report ids are associated with payment group beneficiaries that have been returned since fromDate for given customer. Returns empty list if none found. operationId: getReturnedPaymentExpenseReportHeaderIdsUsingGET 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: fromDate in: query description: "Date checking back to for returned payments. Timezone UTC. Format: yyyy-MM-dd HH:mm:ss:SSS" 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: object "400": description: fromDate must be in format yyyy-MM-dd HH:mm:ss:SSS deprecated: false /v1/trip-reports-summary: get: tags: - expense-approval-controller-v1 summary: Get trips and expense reports summary details description: This web service allows an external application to get trips and expense reports summary details operationId: getTripReportsSummaryUsingGET parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: true 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 for the user logged in making request 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/TripReportSummaryHeader" "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 /v2/expense-report-approvals: get: tags: - expense-approval-controller-v2 summary: Get list of reports for approval description: This web service allows an external application to get a list of expense reports awaiting approval by a user operationId: getApprovalsUsingGET_1 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: email-address in: header description: Unique email of the approver making a request required: false schema: type: string - name: person-unique-id in: header description: Unique ID of the approver making a request required: false schema: type: string - name: username in: header description: Unique user-name of the approver making a request 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;charset=UTF-8: schema: type: array items: $ref: "#/components/schemas/ExpenseReport" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot get list of expense reports for approval. "403": description: Logged in user does not exist. "503": description: Service unavailable. deprecated: false /v2/expense-report-approvals/count: get: tags: - expense-approval-controller-v2 summary: Get count of reports for approval description: This web service returns a count of expense reports awaiting approval by a user. operationId: getExpenseReportCountUsingGET_1 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: email-address in: header description: Unique email of the approver making a request required: false schema: type: string - name: person-unique-id in: header description: Unique ID of the approver making a request required: false schema: type: string - name: username in: header description: Unique user-name of the approver making a request 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;charset=UTF-8: schema: $ref: "#/components/schemas/CountModel" "400": description: Customer Code is invalid "401": description: Customer Code is not authorized. Cannot get expense report count. "403": description: Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v2/expense-report-approvals/{reportId}": get: tags: - expense-approval-controller-v2 summary: Get expense report details description: This web service allows an external application to get the details of an expense report operationId: getExpenseReportUsingGET_1 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: email-address in: header description: Unique email of the approver making a request required: false schema: type: string - name: person-unique-id in: header description: Unique ID of the approver making a request required: false schema: type: string - name: reportId in: path description: Report ID for report required: true schema: type: string - name: username in: header description: Unique user-name of the approver making a request 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;charset=UTF-8: schema: $ref: "#/components/schemas/ExpenseReport" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot get expense report. "403": description: Logged in user is not allowed to view details expense report or Logged in user does not exist "404": description: Expense Report does not exist. "503": description: Service unavailable. deprecated: false "/v2/expense-reports/{reportId}/approve": post: tags: - expense-approval-controller-v2 summary: Approve an expense report description: This web service allows an external application to approve a specified expense report operationId: approveExpenseReportUsingPOST_1 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: email-address in: header description: Unique email of the approver making a request required: false schema: type: string - name: person-unique-id in: header description: Unique ID of the approver making a request required: false schema: type: string - name: reportId in: path description: Report ID for report required: true schema: type: string - name: username in: header description: Unique user-name of the approver making a request required: false schema: type: string - name: x-api-key in: header description: "API key for Authentication " required: true schema: type: string requestBody: $ref: "#/components/requestBodies/NotesModel2" responses: "200": description: OK content: application/json;charset=UTF-8: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot approve expense report. "403": description: Logged in user is not authorized to approve report or Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v2/expense-reports/{reportId}/reassign": post: tags: - expense-approval-controller-v2 summary: Reassign an expense report description: This web service allows an external application to reassign a specified expense report to another approver for review operationId: reassignExpenseReportUsingPOST_1 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: email-address in: header description: Unique email of the approver making a request required: false schema: type: string - name: person-unique-id in: header description: Unique ID of the approver making a request required: false schema: type: string - name: reportId in: path description: Report ID for report required: true schema: type: string - name: username in: header description: Unique user-name of the approver making a request required: false 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/ReassignModelV2" description: Payload required to do a reassign required: true responses: "200": description: OK content: application/json;charset=UTF-8: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot reassign expense report. "403": description: Logged in user is not authorized to reassign report or Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v2/expense-reports/{reportId}/return": post: tags: - expense-approval-controller-v2 summary: Return an expense report description: This web service allows an external application to return a specified expense report to the expense owner operationId: returnExpenseReportUsingPOST_1 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: email-address in: header description: Unique email of the approver making a request required: false schema: type: string - name: person-unique-id in: header description: Unique ID of the approver making a request required: false schema: type: string - name: reportId in: path description: Report ID for report required: true schema: type: string - name: username in: header description: Unique user-name of the approver making a request required: false schema: type: string - name: x-api-key in: header description: "API key for Authentication " required: true schema: type: string requestBody: $ref: "#/components/requestBodies/NotesModel" responses: "200": description: OK content: application/json;charset=UTF-8: schema: type: object "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot return expense report. "403": description: Logged in user is not authorized to return report or Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v2/expense-reports/{reportId}/submit": post: tags: - expense-approval-controller-v2 summary: Submit an expense report description: This web service allows an external application to submit a specified expense report operationId: submitExpenseReportUsingPOST_1 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: email-address in: header description: Unique email of the submitter making a request required: false schema: type: string - name: person-unique-id in: header description: Unique ID of the submitter making a request required: false schema: type: string - name: reportId in: path description: Report ID for report required: true schema: type: string - name: username in: header description: Unique user-name of the submitter making a request required: false schema: type: string - name: x-api-key in: header description: "API key for Authentication " required: true schema: type: string requestBody: $ref: "#/components/requestBodies/ExpenseSubmit" responses: "200": description: OK content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" application/json: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot submit expense report. "403": description: Logged in user is not authorized to submit report or Logged in user does not exist. "422": description: Expense report has not been submitted. Report have some business rules violations content: application/json;charset=UTF-8: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" application/json: schema: $ref: "#/components/schemas/ExpenseSubmitResponse" "503": description: Service unavailable. deprecated: false /v3/expense-reports: get: tags: - expense-controller-v3 summary: Get list of reports by filter(s) description: This web service allows an external application to get a list of expense reports using different criteria operationId: getExpenseReportsUsingGET_1 parameters: - name: approverEmailAddress in: query description: Unique email of the approver making a request required: false allowEmptyValue: false example: emailAddress@gmail.com schema: type: string - name: approverUniqueId in: query description: Unique ID of the approver making a request required: false allowEmptyValue: false example: personUniqueId schema: type: string - name: approverUserName in: query description: Unique user-name of the approver making a request required: false allowEmptyValue: false example: userName schema: type: string - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: createDate in: query description: Filter by reports created this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-03-21 schema: type: string format: date-time - name: createSource in: query description: How the report was created required: false allowEmptyValue: false example: AUTOMATIC schema: type: string - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: exportDate in: query description: Filter by reports exported this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-03-21 schema: type: string format: date-time - name: getPDFReport in: query description: Flag to indicate if PDF report should be included required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: getPDFReportWithNotes in: query description: Flag to indicate if PDF report with notes should be included required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: imageFirst in: query description: Flag to indicate if image should be retrieved first required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: includeCollections in: query description: List of collections to include in the report required: false allowEmptyValue: false explode: true schema: type: array items: type: string enum: - HEADER_COMPLIANCE_ITEMS - HEADER_IMAGES - LINE_ITEMS - HEADER_NOTES - HEADER_UDAS - LINE_ITEM_MATTERS - LINE_ITEM_COMPLIANCE_ITEMS - LINE_ITEM_IMAGES - LINE_ITEM_CHILDREN - LINE_ITEM_NOTES - LINE_ITEM_UDAS - LINE_ITEM_TRIPS - LINE_ITEM_STEPS - HEADER_PAYMENT_ACCOUNT - name: limit in: query description: Maximum number of results to return. If no value is passed, it will be taken from the configurable property file, where this value is equal to 10 by default required: false schema: type: ref - name: offset in: query description: The (zero-based) offset of the first item returned in the collection. If no value is passed, it will be taken from the configurable property file, where this value is equal to 10 by default. This value is limited to 100 to ensure reasonable use of system resources. required: false schema: type: ref - name: ownerCountryAlpha2 in: query description: Reports owner countryAlpha2 required: false allowEmptyValue: false example: US schema: type: string - name: ownerEmailAddress in: query description: Unique email of the expense owner making a request required: false allowEmptyValue: false example: emailAddress@gmail.com schema: type: string - name: ownerUniqueId in: query description: Unique ID of the expense owner making a request required: false allowEmptyValue: false example: personUniqueId schema: type: string - name: ownerUserName in: query description: Unique user-name of the expense owner making a request required: false allowEmptyValue: false example: userName schema: type: string - name: reportStatus in: query description: Filter by report status required: false allowEmptyValue: false example: Returned schema: type: string enum: - Draft - Pending Approval - Approved - Returned - Exported - Paid - Partially Paid - Deleted - name: submitDate in: query description: Filter by reports submitted this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-03-21 schema: type: string format: date-time - name: voucherInvoice in: query description: Voucher Invoice parameter required: false allowEmptyValue: 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;charset=UTF-8: schema: type: array items: $ref: "#/components/schemas/ExpenseReportV3" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot get list of expense reports. "403": description: Logged in user does not exist. "503": description: Service unavailable. deprecated: false "/v3/expense-reports/{reportId}": get: tags: - expense-controller-v3 summary: Get expense report details description: This web service allows an external application to get details of expense report by ReportID (including reports with deleted status) operationId: getExpenseReportUsingGET_3 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: getPDFReport in: query description: Flag to indicate if PDF report should be included required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: getPDFReportWithNotes in: query description: Flag to indicate if PDF report with notes should be included required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: imageFirst in: query description: Flag to indicate if image should be retrieved first required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: reportId in: path description: Identifier for the expense report. required: true schema: type: string - name: voucherInvoice in: query description: Voucher Invoice parameter required: false allowEmptyValue: 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;charset=UTF-8: schema: type: array items: $ref: "#/components/schemas/ExpenseReportV3" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot get details of expense report. "403": description: Logged in user does not exist. "404": description: Report with provided reportId does not exist. "503": description: Service unavailable. deprecated: false "/v3/expense-reports/{reportId}/line-items": get: tags: - expense-controller-v3 summary: Get expense report line item details description: This web service allows an external application to get line item details of expense report by ReportID operationId: getLineItemsUsingGET parameters: - name: chain-id in: header description: Used for tracking the flow of the request required: false schema: type: string - name: createDate in: query description: Filter by line item created this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-04-21 schema: type: string format: date-time - name: customer-code in: header description: Unique customer identifier provided by Chrome River required: true schema: type: string - name: downloadImages in: query description: Flag to indicate if images should be downloaded required: false allowEmptyValue: false schema: type: boolean default: true - name: exportDate in: query description: Filter by line item exported this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-04-21 schema: type: string format: date-time - name: getMileageCoverPage in: query description: Voucher Invoice parameter required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: getPDFReport in: query description: Flag to indicate if PDF report should be included required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: getPDFReportWithNotes in: query description: Flag to indicate if PDF report with notes should be included required: false allowEmptyValue: false example: false schema: type: boolean default: false - name: imageFirst in: query description: Flag to indicate if image should be retrieved first required: false allowEmptyValue: false schema: type: boolean default: true - name: limit in: query description: Maximum number of results to return. If no value is passed, it will be taken from the configurable property file, where this value is equal to 10 by default required: false schema: type: ref - name: lineItemStatus in: query description: Filter by line item status required: false allowEmptyValue: false example: Returned schema: type: string enum: - Draft - Pending Approval - Approved - Returned - Exported - Paid - name: offset in: query description: The (zero-based) offset of the first item returned in the collection. If no value is passed, it will be taken from the configurable property file, where this value is equal to 10 by default. This value is limited to 100 to ensure reasonable use of system resources. required: false schema: type: ref - name: reportId in: path description: reportId required: true schema: type: string - name: submitDate in: query description: Filter by line item submitted this date (yyyy-MM-dd) required: false allowEmptyValue: false example: 2021-04-21 schema: type: string format: date-time - name: x-api-key in: header description: "API key for Authentication " required: true schema: type: string responses: "200": description: OK content: application/json;charset=UTF-8: schema: type: array items: $ref: "#/components/schemas/ExpenseReportLineItemV3" "400": description: Customer Code is invalid. "401": description: Customer Code is not authorized. Cannot get details of line items. "503": description: Service unavailable. deprecated: false servers: - url: https://service.chromeriver.com components: requestBodies: ExpenseSubmit: content: application/json: schema: $ref: "#/components/schemas/ExpenseSubmit" description: Optional body NotesModel: content: application/json: schema: $ref: "#/components/schemas/NotesModel" description: Note tied to Return required: true ReassignModelV1: content: application/json: schema: $ref: "#/components/schemas/ReassignModelV1" description: Payload required to do a reassign required: true NotesModel2: content: application/json: schema: $ref: "#/components/schemas/NotesModel" description: Optional note tied to Approval schemas: 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 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.000Z description: Date of comment creation. creatorName: type: string example: Jason Klein description: Name of comment author title: Comment 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 CountModel: type: object properties: reportsToApprove: type: integer format: int32 example: 9 description: The number of expense reports awaiting approval by approver. title: CountModel CurrentApprover: type: object properties: assignedDate: type: string format: date-time description: Date line item was assigned to approver emailAddress: type: string example: larry.kemp@crane.com description: Email address of current approver. Max 100 characters firstName: type: string example: Larry description: First name of current approver. Max 50 characters lastName: type: string example: Kemp description: Last name of current approver. Max 50 characters personUniqueId: type: string example: lkemp description: Person unique ID of current approver. Max 100 characters title: type: string example: Sr. Manager description: Title of current approver. Max 255 characters title: CurrentApprover 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 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 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 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 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 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 ExpenseReportLineItemV3: type: object properties: allocations: type: array description: List of allocations selected for line item items: $ref: "#/components/schemas/LineItemAllocation" amountApproved: type: number example: 0 description: Amount approved 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 amountSpentConverted: type: number example: 119.81 description: Amount spent of line item converted to customer currency code amountSpentPersonal: type: number example: 0 description: Amount of line item due to personal expenses businessPurpose: type: string example: Conference description: Business purpose of expense. Max 2500 characters childLineItemIds: type: array description: List of line item IDs for child expenses. Used for hotel items. items: type: string children: type: array description: List of child expenses. Used for hotel items. items: $ref: "#/components/schemas/ExpenseReportLineItemV3" 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 currencyCustomer: type: string example: USD description: Customer's default ISO-4217 currency code currencySpent: type: string example: USD description: " ISO-4217 Currency code spent" currencySpentApproved: type: string example: USD description: Currency code approved currencySpentConverted: type: string currencySpentPersonal: type: string example: USD description: Currency of personal expenses (ISO-4217) currentApprover: type: array description: List of current approvers where line item is pending items: $ref: "#/components/schemas/CurrentApprover" description: type: string example: Flight to St. Louis description: Description of expense. Max 2500 characters expenseItemType: type: string example: Breakfast description: Expense category of line item. Max 50 characters expenseItemTypeDisplayName: type: string example: Meal - Breakfast description: Display name of expense category of line item. Max 50 characters expenseItemTypeIcon: type: string example: coffee.png description: File name of icon that represents the item type of this line item expenseTransactions: $ref: "#/components/schemas/ExpenseTransaction" exportDate: type: string format: date-time example: 2022-01-04 05:53:39:000 description: Date expense line item was exported exportStatus: type: string example: Exported description: Export status of line item enum: - In Export - Waiting for Export - Exported - Paid - Partially Paid feed: $ref: "#/components/schemas/FeedDetail" 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 imagesUrl: type: string example: file:///receipts/receipt2.pdf description: Images url attached to line item lineItemId: type: string example: b0dd069a-ce1a-45bf-b9dd-48cac24735ff description: Internal ID of expense report line item. 36 characters lineItemStatus: 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 lineNumber: type: integer format: int32 example: 1 description: Used for primary or parent expenses. lineNumber2: type: integer format: int32 example: 1.1 description: This column is used exclusively for hotel (child) expenses. merchant: type: string description: Name of merchant/vendor of line item mileageDetails: $ref: "#/components/schemas/Mileage" paLineItemType: $ref: "#/components/schemas/PaLineItemType" parent: type: boolean parentId: type: string perDiemLineItem: $ref: "#/components/schemas/PerDiemLineItem" personal: type: boolean previousApprover: type: array description: List of previous approvers of line item items: $ref: "#/components/schemas/PreviousApprover" 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 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 voucherInvoice: type: string example: "0000006010110241" description: Voucher invoice number associated with the line item. Max 20 characters title: ExpenseReportLineItemV3 ExpenseReportV3: 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 on expense report items: $ref: "#/components/schemas/Comment" complianceItems: type: array description: List of all compliance issues associated with 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 expenseReportApprovalUrl: type: string example: https://app.chromeriver.com/expense_reports_app/DEV034334052/approve?customerCode=CF7H description: URL to approve expense report expenseReportHeaderId: type: string example: 000007c2-dc70-41dc-95d1-e80c6f671d36 description: UUID key of expense report expenseReportUrl: type: string example: https://app.chromeriver.com/dispatch/expense_reports_app/DEV034334052?redirect=true&customerCode=CF7H description: URL of expense report hasComplianceItems: type: boolean description: Used in expense-report-approval summaries to notify if header, line item, or children items have compliance items imagesUrl: type: string description: Images url attached to header lineItemIds: type: array description: List of line item IDs in expense report items: type: string lineItems: type: array description: Expense report line items items: $ref: "#/components/schemas/ExpenseReportLineItem" payMeCurrency: type: string description: Employee's PayMeInCurrency code (ISO-4217) paymentAccount: $ref: "#/components/schemas/PaymentAccount" 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 reportCreator: $ref: "#/components/schemas/Person" 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 reportTotalPersonalAmount: type: number example: 321.45 description: Total of personal paid expenses in report submitDate: type: string format: date-time example: 2022-01-12 05:34:32:000 description: Date expense report was submitted 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: ExpenseReportV3 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 ExpenseSubmit: type: object properties: comment: type: string example: Submitted via API description: Comment to add to report submission. Max 10000 characters moveIncompleteLineItemsToNewReport: type: boolean example: true description: Flag to indicate that incomplete line items should be moved to a new report before submission responsesForWarnings: type: object description: 'Compliance warning responses. (ie. "302": "OK with no receipt")' additionalProperties: type: string title: ExpenseSubmit ExpenseSubmitResponse: type: object properties: complianceItems: type: array description: List of compliance issues associated with report items: $ref: "#/components/schemas/ComplianceItem" hasComplianceItems: type: boolean description: Indicates if compliance issues are associated with report submitted: type: boolean title: ExpenseSubmitResponse ExpenseTransaction: type: object properties: amountEditable: type: boolean example: false description: Property to signal if the amount spent on the transaction is updatable amountOriginal: type: number example: 100 description: Converted amount spent for expense transaction in original currency amountSpent: type: number example: 100 description: Amount spent for expense transaction childrenMergedTransactions: type: array description: Any mergeset children attached to this expense transaction items: $ref: "#/components/schemas/ExpenseTransaction" createDate: type: string format: date-time example: 2023-11-30 05:23:39:000 description: Date of expense transaction created currencyCodeOriginal: type: string example: USD description: Currency code of original currency (ISO-4217) currencyCodeSpent: type: string example: USD description: Currency spent (ISO-4217) currencyEditable: type: boolean example: false description: Property to signal if the currency code on the transaction is updatable dateEditable: type: boolean example: false description: Property to signal if the transaction date on the transaction is updatable expenseTypePredictions: type: array description: Value of ExpenseTypePredictions for each transaction items: $ref: "#/components/schemas/ExpenseTypePrediction" feedTransactionUniqueID: type: string example: 5q6CFwAKlPRZoQT0PbbD-39454187904441-1 description: Unique identifier for expense transaction. Max 360 characters merchant: type: string example: Amazon.com Services LLC description: Name of merchant of transaction. Max 255 characters merchantUda: type: string example: Amazon.com Services LLC description: Name of merchant of transaction. Max 255 characters numImages: type: integer format: int32 example: 1 description: The number of images attached to the expense primaryTransactionDate: type: string format: date-time description: Date of expense transaction transactionId: type: integer format: int32 description: Unique identifier for expense transaction title: ExpenseTransaction ExpenseTypePrediction: type: object properties: confidence: type: number format: double expenseReportItemTypeId: type: integer format: int32 name: type: string value: type: string title: ExpenseTypePrediction ExpenseTypes: type: object properties: expenseBarId: type: integer format: int32 example: 100 description: Identifier for a mosaic of expense types expenseTypes: type: array example: Airfare, Hotel, ... description: List of expense type. items: type: string title: ExpenseTypes FeedDetail: type: object properties: code: type: string example: CreditCardAmex description: Feed code. Max 21 characters financialInstitution: type: string example: Amex description: Financial institution for the feed. Max 20 characters isCreditCard: type: boolean example: true description: True if this is a credit card feed name: type: string example: Amex Credit Card Feed description: Feed name. Max 50 characters typeName: type: string example: Credit Card description: Feed type name. Max 20 characters title: FeedDetail 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 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 MapTripPoint: type: object properties: address: type: string example: 500 North Wilshire Blvd. description: Address. Max 400 characters amount: type: number example: 115.53 description: Amount spent at trip point calculatedMiles: type: number format: double example: 15 description: Calculated miles distance category: type: string example: Business- Travel description: Category of trip. Max 255 characters deductionAmount: type: number example: 15 description: Deduction amount deductionDistance: type: number format: double example: 15 description: Deduction distance distanceUnit: type: string example: miles description: Distance unit of trip calculation latitude: type: number format: double example: 30.29048912 description: Latitude of trip point longitude: type: number format: double example: 93.2894802 description: Longitude of trip point miles: type: number format: double example: 15 description: Miles distance personalTrip: type: boolean example: false description: Indicates if this is a personal trip roundTrip: type: boolean example: false description: Indicates if this is a round trip tripStep: type: integer format: int32 example: 1 description: Which step in trip is this point minimum: -128 maximum: 127 title: MapTripPoint Mileage: type: object properties: carPlanModifierGroup: type: string example: Passengers_CA description: Car plan modifier group. Max 20 characters carPlanName: type: string example: US Personal Car description: Name of car plan. Max 50 characters carPlanTierName: type: string example: < 1000 KM description: Name of car plan tier. Max 50 characters mapImageURL: type: string rate: type: number example: 50 description: Rate of mileage trips: type: array description: List of trip points items: $ref: "#/components/schemas/MapTripPoint" title: Mileage NotesModel: type: object properties: note: type: string example: Returned due to missing receipts description: Any comment/note that will be tied with the Approval/Return. Max 2000 characters title: NotesModel 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 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 PaymentAccount: type: object properties: accountNumberLast4: type: string example: 9829 description: Last 4 digits of payment account nickName: type: string example: John's AMEX description: Nickname for payment account title: PaymentAccount 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 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 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 PreviousApprover: type: object properties: assignedDate: type: string format: date-time description: Date line item was assigned to approver completedDate: type: string format: date-time description: Date line item was reviewed by approver emailAddress: type: string example: larry.kemp@crane.com description: Email address of current approver. Max 100 characters firstName: type: string example: Larry description: First name of current approver. Max 50 characters lastName: type: string example: Kemp description: Last name of current approver. Max 50 characters personUniqueId: type: string example: lkemp description: Person unique ID of current approver. Max 100 characters statusApproved: type: string description: Action of approver at that step enum: - DRAFT - PENDING - APPROVED_FOR_PAYMENT - RETURNED - NO_ACTION - NO_ACTION_MOVED - NO_ACTION_VACATION - REASSIGNED stepNumber: type: integer format: int32 description: Step number of approver in approval process title: type: string example: Sr. Manager description: Title of current approver. Max 255 characters title: PreviousApprover ReassignModelV1: type: object required: - note properties: assignedEntityCode: type: string example: 4404291000 description: Entity Code for the group to which the report is assigned. Must be used with assignedRoleName, and assignedEntityTypeCode. Max 50 characters assignedEntityTypeCode: type: string example: DEPT description: Entity Type Code for the group to which the report is assigned. Must be used with assignedRoleName, and assignedEntityCode. Max 32 characters assignedRoleName: type: string example: Part Of description: Role Name for the group to which the report is assigned. Must be used with assignedEntityCode, and assignedEntityTypeCode. Max 50 characters assignedUser: type: string example: lsuarez description: Unique ID for user to whom the report is assigned to. Max 100 characters note: type: string example: Please review this pre-approval report description: Any comment/note that will be tied with the Reassign. Max 2000 characters title: ReassignModelV1 ReassignModelV2: type: object required: - note properties: assignedEntityCode: type: string example: 4404291000 description: Entity Code for the group to which the report is assigned. Must be used with assignedRoleName, and assignedEntityTypeCode. Max 50 characters assignedEntityTypeCode: type: string example: DEPT description: Entity Type Code for the group to which the report is assigned. Must be used with assignedRoleName, and assignedEntityCode. Max 32 characters assignedRoleName: type: string example: Part Of description: Role Name for the group to which the report is assigned. Must be used with assignedEntityCode, and assignedEntityTypeCode. Max 50 characters assignedUserEmailAddress: type: string example: lsuarez@chromeriver.com description: Unique Email for user to whom the report is assigned to. If provided, 'assignedUserName' and 'assignedUserUniqueId' are not required. Max 100 characters assignedUserName: type: string example: lsuarez description: Unique username for user to whom the report is assigned to. If provided, 'assignedUserUniqueId' and 'assignedUserEmailAddress' are not required. Max 50 characters assignedUserUniqueId: type: string example: lsuarez description: Unique ID for user to whom the report is assigned to. If provided, 'assignedUserName' and 'assignedUserEmailAddress' are not required. Max 100 characters note: type: string example: Please review this pre-approval report description: Any comment/note that will be tied with the Reassign. Max 2000 characters title: ReassignModelV2 RecordLocator: type: object properties: recordLocator: type: string example: GCY3PL description: Record locator value type: type: string example: RAIL description: Type of trip title: RecordLocator TripReportSummary: type: object properties: amount: type: number example: 155.98 description: Total amount of expenses during trip createDate: type: string format: date-time currency: type: string example: USD description: Currency of expenses during trip (ISO-4217) miscellaneous: type: array description: List of record locators for trip segments (ie. Air/Rail segments) items: $ref: "#/components/schemas/RecordLocator" name: type: string example: Trip to N.Z. 2023/10 description: Name of trip report. Max 45 characters numberOfExpenseItems: type: integer format: int32 example: 3 description: Number of expense items during trip reportDate: type: string format: date-time description: Date report created reportNumber: type: string example: "010009384720" description: 12 digit report ID reportType: type: string example: report description: Type of report status: type: string example: Pending Approval description: Status of trip report tripEndDate: type: string format: date-time description: End date of trip tripStartDate: type: string format: date-time description: Start date of trip updateDate: type: string format: date-time title: TripReportSummary TripReportSummaryHeader: type: object properties: totalRecords: type: integer format: int32 example: 1 description: Total number of records in trip report tripReportSummaries: type: array description: List of trip report summaries items: $ref: "#/components/schemas/TripReportSummary" title: TripReportSummaryHeader 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