Release 26.11 adds partial updates (PATCH) on contacts and budgets. It also aligns the API to the user interface with respect to blocking time entries or blocking all billables on a matter, and budget permissions. Review the changes below to assess the impact on your integration.
New endpoints
PATCH support is being rolled out to more endpoints. The matters, users, contacts, and *budgets endpoints now accept PATCH.
Partial updates on contacts
PATCH /api/v3/contacts/{id}/ updates only the fields present in the request body; omitted fields keep their stored value.
The contact type cannot change through PATCH, so is_debtor and is_organization are read-only. bank_account_iban and bank_account_bic must be sent together. details merges by kind: a kind you omit keeps its value and its email flags, and a kind sent with an empty value or null is removed.
... and on budgets
PATCH /api/v3/matterbudgets/{id}/ and PATCH /api/v3/submatterbudgets/{id}/ update budgets partially: the same rules apply as on the other PATCH endpoints. Coupled fields, such as kind with hours or amount, and begin_date with end_date, are validated against the merged result, so include the hours or amount a new kind needs when you change it. The matter of a matter budget cannot be changed.
Modified endpoints
/api/v3/matters/ blocks time entries and all billables separately: block_time_entry blocks time entries only, and block_billables blocks time entries, disbursements, trust accounting transactions, and scheduled subscription products, matching the matter settings in the web interface. Since they are coupled, sending block_time_entry: false while block_billables: true returns HTTP 400.
The read-only is_billables_blocked field reports block_billables combined with the matter status, and ?is_billables_blocked=true filters on it. /api/v3/chargeables/ and /api/v3/trustaccountingtransactions/ refuse a blocked matter based on is_billables_blocked; is_time_entry_blocked keeps reporting whether time entry is blocked.
/api/v3/matterbudgets/ and /api/v3/submatterbudgets/ check matter access only for a changed relation: PUT and PATCH do not require access to the budget's matter when matter or submatter is omitted or unchanged, matching the budget screens in the web interface. Moving a submatter budget to another submatter requires manage_submatter (HTTP 403 otherwise) and access to the destination matter.
PUT accepts null as a custom field value: PUT requests to /api/v3/contacts/, /api/v3/clients/, /api/v3/matters/ and /api/v3/users/ accept null in custom_fields and clear the field, the same as an empty string, so a GET response can be sent back unchanged. POST and PATCH still reject null.
GET /api/v3/submatters/ returns active submatters by default: the endpoint accepts ?softkill_status=active|archived|deleted|all, like the other endpoints with softkill_status, and the submatters field on /api/v3/matters/ lists active submatters only. Already backported to release 26.10; customers on the latest patch have the fix.
For more information about Legalsense features, please visit our knowledge base.
Comments
0 comments
Article is closed for comments.