ExpensesGet my expense totals for a day

Get my expense totals for a day

Returns the caller's number of expenses and their total incl. / excl. VAT, in the system currency, for one day.

A day summary for a "my expenses" view: how many expense rows the CALLER registered with that purchase date and their sum including and excluding VAT, converted to the account's system (base) currency at each expense's save-time rate. Counts both employee expenses and project expenses the caller registered. Always the caller — there is no user parameter.

Use it to:

  • Mobile time/expense client: show 'today: 3 expenses, 1,250.00 DKK' next to the day's time registrations

Not for:

  • The expense lines themselves — GET /v1/employee-expense
  • Reimbursement amounts in the employee's currency — GET /v1/employee-expense-financial-data/get-all-time-total (legal-entity currency, personal expenses only)
  • Another user's totals — not supported

Behaviour:

  • Idempotent.
  • Safe to retry.
  • Changes are visible to the next read immediately.

Next: GET /v1/employee-expense

See also: GET /v1/employee-expense-financial-data/get-by-date-range, GET /v1/employee-expense-financial-data/get-all-time-total, GET /v1/time-registration-financial-data/get-by-date

Not yet documented: examples; response → empty result.

curl -X GET "https://app3.timelog.com/your-account/api/v1/employee-expense-financial-data/get-by-date?date=2024-12-25T10%3A00%3A00Z" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
{
  "Properties": {
    "UserID": 123,
    "Date": "2024-12-25T10:00:00Z",
    "TotalEmployeeExpenseCount": 10,
    "TotalAmount": 3.14,
    "TotalAmountWithoutVat": 3.14,
    "CurrencyID": 123,
    "CurrencyABB": "example_string",
    "CurrencyRate": 3.14
  },
  "Links": [
    {
      "Href": "example_string",
      "Rel": "example_string"
    }
  ],
  "Actions": [
    {}
  ]
}
GET
/v1/employee-expense-financial-data/get-by-date
GET
Base URLstring

Target server for requests. Edit to use your own host.

Bearer Token
Bearer Tokenstring
Required

OAuth 2.0 bearer token, sent as Authorization: Bearer <token>. JWT and reference tokens are both accepted. The token must carry the required scope (default tlp). The token's sub claim is the acting user. A token WITHOUT sub (client-credentials) acts as the system service user. If the sub user cannot log in (inactive, locked, deleted), the request is rejected with 401 — it is no longer let through without a user. > Not yet documented: how to obtain a token. > Not yet documented: token lifetime.

OAuth 2.0 bearer token, sent as Authorization: Bearer <token>. JWT and reference tokens are both accepted. The token must carry the required scope (default tlp). The token's sub claim is the acting user. A token WITHOUT sub (client-credentials) acts as the system service user. If the sub user cannot log in (inactive, locked, deleted), the request is rejected with 401 — it is no longer let through without a user. > Not yet documented: how to obtain a token. > Not yet documented: token lifetime.
query
datestring
Required

The day (the time part is ignored for the day selection). An expense counts when its stored purchase date is EXACTLY midnight of that day — expenses saved with a time part are missed. Omitted → 404. Filters on ProjectExpenseRead.PurchaseDate (eq). Date only — no time component.

Format: date-time
Request Preview
Response

Response will appear here after sending the request

Authentication

header
Authorizationstring
Required

Bearer token. OAuth 2.0 bearer token, sent as Authorization: Bearer <token>. JWT and reference tokens are both accepted. The token must carry the required scope (default tlp).

The token's sub claim is the acting user. A token WITHOUT sub (client-credentials) acts as the system service user. If the sub user cannot log in (inactive, locked, deleted), the request is rejected with 401 — it is no longer let through without a user.

Not yet documented: how to obtain a token.

Not yet documented: token lifetime.

Query Parameters

datestring
Required

The day (the time part is ignored for the day selection). An expense counts when its stored purchase date is EXACTLY midnight of that day — expenses saved with a time part are missed. Omitted → 404.

Filters on ProjectExpenseRead.PurchaseDate (eq).

Date only — no time component.

Responses

Propertiesobject

Expense totals of the CALLER — a count and a sum incl. / excl. VAT — for one day (by-date, and each day of by-date-range) or for an optional period (all-time total). Built for a "my expenses" summary in a mobile/time client. Not a per-expense list (use GET /v1/employee-expense) and not usable for another user.

Linksarray
Actionsobject[]