Search depreciation policies

Operation ID: searchDepreciationPolicies

Group: Accounting › Asset Management › Depreciation Policies

Open in the interactive reference

POST /depreciation-policies/search

Read-only: A read that takes its filters in the body. Changes nothing, and ignores Idempotency-Key.

Searches depreciation policies. Each policy returned has the same fields as GET depreciation-policies/:id.

To filter by depreciation method, depreciation interval, account, active status, or lastModifiedDate, use GET depreciation-policies.

Parameters

Name In Type Required Description
Api-Version header string · v1 yes The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1.

Request body

Required, application/json: searchDepreciationPoliciesInput.

Field Type Required Description
filters object no The filters to apply. A policy must match every filter you send. Omit to return all depreciation policies. If you send an empty list for a filter, that filter is ignored. Example: {"nameContains":"equipment","bookIds":["b7c19e04-3f52-4a86-9d13-5e8f2a6c0b47"]}.
filters.id string no Limits results to the depreciation policy with this id. The match is exact.
filters.depreciationPolicyNumber string no Limits results to the policy with this policy number. The match is exact. Example: 'DP-0007'.
filters.name string no Limits results to the policy with this name. The match is exact and case-sensitive. When sent, nameContains is ignored.
filters.nameContains string no Limits results to policies whose name contains this text. The match is case-insensitive, and % and _ match as ordinary characters. Ignored if the request also includes the name filter.
filters.descriptionContains string no Limits results to policies whose description contains this text. The match is case-insensitive, and % and _ match as ordinary characters. A policy with no description never matches.
filters.bookIds array<string> no Limits results to policies that apply to any of these accounting books. The match is exact. See id on GET accounting/books/:id.
page object no The page of results to return. Omit for the first page. Example: {"size":50}.
page.cursor string no The cursor from the previous response's pagination.nextCursor. Omit on the first request.
page.size number no The number of depreciation policies per page, between 1 and 200. Defaults to 50. A value above 200 is treated as 200, and a value below 1 as 1, not rejected.
{
  "filters": {
    "nameContains": "equipment",
    "bookIds": [
      "b7c19e04-3f52-4a86-9d13-5e8f2a6c0b47"
    ]
  },
  "page": {
    "size": 50
  }
}

Response

200 Success

Under data (searchDepreciationPoliciesOutput):

Field Type Required Description
items array<object> yes The depreciation policies on this page, most recently created first. An empty array when nothing matches. Example: [{"id":"b1d4c8f2-5a37-4e91-8c62-9f0a3d7e14b5","depreciationPolicyNumber":"DP-0007","name":"Office Equipment — 5 Year Straight Line","description":"Standard straight-line write-down for office equipment over five years.","depreciationMethod":"StraightLine","depreciationConvention":"FullMonth","depreciationInterval":"Monthly","bookId":"b7c19e04-3f52-4a86-9d13-5e8f2a6c0b47","assetAccountId":"3a5f81c6-9d24-4b70-8e15-6c2b7f094d38","accumulatedDepreciationAccountId":"9e14d7b2-6c83-4f51-a027-8d3b5e199c61","depreciationExpenseAccountId":"5c2b8a41-7e96-4d03-b158-2f7a9c4e60d5","gainAccountId":"8f0b3d27-4a19-4c62-9e73-1b5d8a2f7c04","lossAccountId":"2d7e9a15-8b34-4f07-a5c1-6e0f3b9d472a","active":true,"lastModifiedDate":"2026-08-14T09:12:33.000Z"}].
items[].id string yes The unique identifier for the depreciation policy.
items[].depreciationPolicyNumber string no The depreciation policy number. Unique within the tenant. Example: 'DP-0007'.
items[].name string yes The name of the depreciation policy. Unique within the tenant.
items[].description string no A description of the depreciation policy.
items[].depreciationMethod string yes The method used to spread depreciation over an asset's useful life. When a fixed asset of one of these types is set up, it takes this method. The method can then be changed on the fixed asset. Possible values: 'StraightLine' (equal amounts each period), 'Degressive' (declining balance at the fixed asset's annual degressionRate, switching to straight line when that gives a higher amount), 'Immediate' (the whole depreciable amount in the first period), 'Bypassed' (no depreciation schedule is created). How the method treats time is depreciationConvention.
items[].depreciationConvention string no How the method treats time: how the first and last periods are measured and how an amount is spread across periods. Possible values: 'FullMonth' (the in-service month counts as a full month; every period takes an equal share), 'MidMonth' (in service on or before the 15th: the full first month; after the 15th: depreciation starts the following month), 'MidYear' (year one and the year after the useful life each take half the annual amount), 'SixMonthRule' (the full annual amount in year one when in service more than six months of the fiscal year, otherwise half of it), 'ProrateFirstLast' (the partial first and last periods are prorated by days), 'ActualDays' (every period is weighted by its actual number of days). Present for 'StraightLine' (any value) and 'Degressive' (only 'FullMonth'); absent for 'Immediate' and 'Bypassed', which take none.
items[].depreciationInterval string yes The length of each depreciation period. Possible values: 'Monthly', 'Quarterly', 'Yearly'.
items[].bookId string no The accounting book the depreciation policy applies to. A policy applies to one book only, so each book needs its own policies. See id on GET accounting/books/:id. Absent when the book no longer exists.
items[].assetAccountId string no The balance sheet account that holds the cost of fixed assets under this policy. Disposing of a fixed asset credits its acquisition value to this account. See id on GET accounting/accounts/:id. Absent when the account no longer exists.
items[].accumulatedDepreciationAccountId string no The accumulated depreciation account, a contra-asset account. Recording depreciation credits this account. See id on GET accounting/accounts/:id. Absent when the account no longer exists.
items[].depreciationExpenseAccountId string no The depreciation expense account. Recording depreciation debits this account. See id on GET accounting/accounts/:id. Absent when the account no longer exists.
items[].gainAccountId string no The account for gains when an asset under this policy is sold for more than its net book value. It is used only on books that keep gains and losses in separate accounts, such as HGB books. On such a sale, the asset's net book value and the sale amount go to this account. If the fixed asset has a revenueAccountId, the sale amount goes there instead. On most books, gainAccountId and lossAccountId are the same account, set in Lensing as one gain or loss account. See id on GET accounting/accounts/:id. Absent when the account no longer exists.
items[].lossAccountId string no The account for losses when an asset under this policy is disposed of. The asset's net book value goes to this account. On a sale, the sale amount also goes here, unless the fixed asset has a revenueAccountId. On books that keep gains and losses in separate accounts, a sale for more than the net book value goes to gainAccountId instead. On most books, gainAccountId and lossAccountId are the same account, set in Lensing as one gain or loss account. See id on GET accounting/accounts/:id. Absent when the account no longer exists.
items[].active boolean no Whether the depreciation policy is active. Only active policies are offered when a fixed asset type is chosen for a fixed asset. Depreciation already scheduled under an inactive policy is still recorded.
items[].lastModifiedDate date-time yes The date and time the depreciation policy last changed, in UTC. Format: YYYY-MM-DDTHH:mm:ss.sssZ.
pagination object yes Whether more depreciation policies match, and the cursor for the next page. Example: {"hasMore":false}.
pagination.nextCursor string no The cursor for the next page. Pass it as page.cursor. Absent on the last page.
pagination.hasMore boolean yes Whether more depreciation policies match after this page.
{
  "data": {
    "items": [
      {
        "id": "b1d4c8f2-5a37-4e91-8c62-9f0a3d7e14b5",
        "depreciationPolicyNumber": "DP-0007",
        "name": "Office Equipment — 5 Year Straight Line",
        "description": "Standard straight-line write-down for office equipment over five years.",
        "depreciationMethod": "StraightLine",
        "depreciationConvention": "FullMonth",
        "depreciationInterval": "Monthly",
        "bookId": "b7c19e04-3f52-4a86-9d13-5e8f2a6c0b47",
        "assetAccountId": "3a5f81c6-9d24-4b70-8e15-6c2b7f094d38",
        "accumulatedDepreciationAccountId": "9e14d7b2-6c83-4f51-a027-8d3b5e199c61",
        "depreciationExpenseAccountId": "5c2b8a41-7e96-4d03-b158-2f7a9c4e60d5",
        "gainAccountId": "8f0b3d27-4a19-4c62-9e73-1b5d8a2f7c04",
        "lossAccountId": "2d7e9a15-8b34-4f07-a5c1-6e0f3b9d472a",
        "active": true,
        "lastModifiedDate": "2026-08-14T09:12:33.000Z"
      }
    ],
    "pagination": {
      "hasMore": false
    }
  },
  "diagnostics": [
    {
      "code": "<code>",
      "message": "<message>",
      "severity": "error",
      "path": [
        "<path>"
      ],
      "details": "<details>"
    }
  ]
}

Errors

Code Status
INVALID_CURSOR 400

Statuses