Get Expenses

Returns the user's expenses and extra income, a page at a time. These are the amounts entered by hand in Owner Statements, per listing, including internal expenses (the manager's own costs, chargeTo: internal); booking income and channel payouts aren't included. Entries on listings turned off or hidden are returned too, as owner statements count them. Requires the ownerStatements:read scope.

Send either a date range or updatedSince:

  • startDate and endDate return the entries dated in the range, oldest date first, with total. listingIDs, listingGroupIDs, kind and chargeTo narrow them.
  • updatedSince returns every entry created, changed or deleted at or after that time, whatever its date, oldest change first. A deleted entry comes back once more, with deletedAt, so a copy you keep can drop it. Use it to keep a copy in sync instead of reading every range again: save the time just before each call, minus a minute for clock differences, and pass it as updatedSince on the next call. It takes no other filter, since an entry moved to another listing, date or kind would otherwise drop out of the filter unseen. An entry changed while you page moves to a later page, so it is read again rather than missed. There's no webhook for expenses yet, so poll with updatedSince to pick up changes.

Amounts are numbers in the listing's currency (currency), always above 0: kind says whether an entry is an expense or extra income.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
string

First date (YYYY-MM-DD), compared with each entry's date. Required unless you send updatedSince.

string

Last date (YYYY-MM-DD), included. Required unless you send updatedSince.

date-time

Instead of a date range: every entry created, changed or deleted at or after this time (ISO 8601 date-time), deleted ones with deletedAt. Can't be combined with startDate, endDate, listingIDs, listingGroupIDs, kind or chargeTo; a request that does returns 400.

string

Only these listings: ids separated by commas, or the parameter repeated. Sent with no id, it returns 400.

string

Only the listings in these listing groups (from Get Listing Groups): ids separated by commas, or the parameter repeated. Sent with no id, it returns 400.

string
enum

Only expenses, or only extra income

Allowed:
string
enum

Only expenses charged to the owner, or only internal ones. Extra income counts as charged to the owner.

Allowed:
integer
1 to 200
Defaults to 100

Maximum number of entries in one page (1-200). Defaults to 100.

string

The nextCursor value from the previous page, sent with the same other parameters. Treat it as an opaque string: don't build or change it yourself.

Headers
string

Partner API key (deprecated — use OAuth 2.0 for new integrations)

string

User's authentication token (legacy). Use Authorization Bearer header for new integrations.

Responses

403

The OAuth token doesn't have the ownerStatements:read scope

429

Too many requests

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json