Skip to main content
PUT

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

organizationId
string
required

The unique identifier of the organization. String, UUID format (32-character hexadecimal). Required. UUID without dashes (32-character hex string)

Pattern: ^[0-9a-fA-F]{32}$
Example:

"05b8daba9ba14a49846fe77883248cf0"

Query Parameters

action
enum<string>
required

Action to perform on the expense reports listed in the request body. String, enum. Required. Accepted values: send, setPaid, sendApproverReminders, setStatus, moveToNextStep. moveToNextStep is restricted to the developer role.

Available options:
send,
setPaid,
sendApproverReminders,
setStatus,
moveToNextStep

Body

application/json

Request body for the send action on the reports collection. Sends the listed reports as one batch: every report is validated first, nothing is sent unless all of them can be sent, and the batch becomes a single send job.

expenseReportIds
string[]
required

The expense reports to send. Array of strings, UUID format (32-character hexadecimal), 1-100 items. Required.

Required array length: 1 - 100 elements

UUID without dashes (32-character hex string)

Pattern: ^[0-9a-fA-F]{32}$
date
string

Booking date for the batch. String, format yyyy-MM-dd'T'HH:mm:ssZ. Optional, defaults to the time the request is handled.

recipientId
string

Recipient the batch is sent to. String, UUID format (32-character hexadecimal). Optional, but the pre-check that every report is in a status the recipient accepts only runs when it is given.

Response

The action was carried out, with two documented exceptions. A setPaid where a report owner has no bank account number answers 200 with missingBankAccountNumber filled in and nothing was paid, mirroring the legacy setpaid endpoint where only invalidReports turns the response into a 400. A sendApproverReminders answers 200 with only the ids a reminder was actually sent for, the reports that were not waiting for an approver are left out.

Result of the batch send action. Nothing is sent when invalidReports is non-empty, and the response status is 400 in that case.

reports
object[]

The reports that were handed to the send job. Empty when nothing was sent.

invalidReports
object[]

Reports that are not in a status the recipient accepts, which is why nothing was sent.

jobIds
string[]

Identifiers of the send jobs the batch became, for following their progress. Normally one, but a recipient configured to take each report separately turns the batch into one job per report. Array of strings, empty when nothing was sent.