You can now create invoices independently of contracts:
POST /invoicesnow supports creating standalone invoices with full item details- Added
send_to_customerparameter to automatically email invoices upon creation
You can now create invoices independently of contracts:
POST /invoices now supports creating standalone invoices with full item detailssend_to_customer parameter to automatically email invoices upon creationBreaking Change: The API now uses snake_case consistently for all field names and SNAKE_CASE for enum values.
Examples of changed fields:
priceType → price_typeexternalId → external_idcustomerId → customer_idUpdate your integration to use the new field names.
Full accounts payable management is now available:
Vendors
GET /vendors - List all vendorsPOST /vendors - Create a vendorGET /vendors/{id} - Retrieve a vendorPUT /vendors/{id} - Update a vendorDELETE /vendors/{id} - Delete a vendorBills
GET /bills - List all billsPOST /bills - Create a billGET /bills/{id} - Retrieve a billPUT /bills/{id} - Update a billDELETE /bills/{id} - Delete a billAll list endpoints now support cursor-based pagination:
limit parameter to control page size (default varies by endpoint)cursor parameter to retrieve subsequent pagespagination object with a cursor field for the next pageThis applies to: /products, /customers, /contracts, /invoices, /vendors, /bills
Breaking Change: All list endpoints now return an object wrapper instead of a raw array.
Before:
[{ "id": "..." }, { "id": "..." }]After:
{
"data": [{ "id": "..." }, { "id": "..." }],
"pagination": { "cursor": "..." }
}Update your integration to access the data property for the list of items.
Added support for usage-based pricing models:
All major entities now support external references, allowing you to link Rillet records to your external systems:
external_references arraytype, id, and optional urlYou can now amend existing contracts through the API:
POST /contracts/{id}/amendments - Amend a contractThe amendment request allows you to add new items, modify existing items, and update contract terms including dates and invoicing schedules.
Track usage-based billing with the new usage records endpoints:
POST /contract-items/{id}/usage - Create a usage recordGET /contract-items/{id}/usage - List all usage records for a contract itemDELETE /contract-items/{id}/usage - Delete a usage recordFull invoice lifecycle management is now available:
GET /invoices - List all invoicesPOST /invoices - Create an invoiceGET /invoices/{id} - Retrieve an invoicePUT /invoices/{id} - Update an invoiceDELETE /invoices/{id} - Delete an invoice