API Documentation
Expenses - Bulk ¶
Expenses - Bulk ¶
The Expenses Bulk endpoint enables efficient management of multiple expenses simultaneously. This API provides bulk operations for updating and deleting expenses.
Available Actions
-
Update
-
Delete
PATCH /api/v2/expenses
Requests
PATCH /api/v2/expenses
Headers
Accept: application/vnd.api+json; ext=bulk
Content-Type: application/vnd.api+json; ext=bulkBody
{
"data": [
{
"id": 27,
"type": "expenses",
"attributes": {
"name": "name one bulk"
}
},
{
"id": 28,
"type": "expenses",
"attributes": {
"name": "name two bulk"
}
}
]
}Responses
Headers
Content-Type: application/vnd.api+json; charset=utf-8Body
{
"data": [
{
"id": "27",
"type": "expenses",
"attributes": {
"name": "name one bulk",
"date": "2026-01-15",
"pay_on": null,
"paid_on": null,
"position": 1,
"invoiced": false,
"approved": true,
"approved_at": "2026-01-15T05:05:51.029+01:00",
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"deleted_at": null,
"reimbursable": false,
"reimbursed_on": null,
"exchange_rate": "1.25",
"exchange_rate_normalized": "1.0",
"exchange_date": "2026-01-15",
"created_at": "2026-01-15T05:05:51.030+01:00",
"quantity": "1.0",
"quantity_received": "0.0",
"custom_fields": null,
"draft": false,
"exported": false,
"exported_at": null,
"export_integration_type_id": null,
"export_id": null,
"export_url": null,
"company_reference_id": null,
"external_payment_id": null,
"tax_inclusion": false,
"line_items_count": 0,
"currency": "EUR",
"currency_default": "USD",
"currency_normalized": "EUR",
"amount": 10000,
"amount_default": 12500,
"amount_normalized": 10000,
"total_amount": 10000,
"total_amount_default": 12500,
"total_amount_normalized": 10000,
"billable_amount": 0,
"billable_amount_default": 0,
"billable_amount_normalized": 0,
"profit": -10000,
"profit_default": -12500,
"profit_normalized": -10000,
"recognized_revenue": 0,
"recognized_revenue_default": 0,
"recognized_revenue_normalized": 0,
"amount_with_tax": 10000,
"amount_with_tax_default": 12500,
"amount_with_tax_normalized": 10000,
"total_amount_with_tax": 10000,
"total_amount_with_tax_default": 12500,
"total_amount_with_tax_normalized": 10000
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "525"
}
},
"deal": {
"meta": {
"included": false
}
},
"service_type": {
"meta": {
"included": false
}
},
"person": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"vendor": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"purchase_order": {
"meta": {
"included": false
}
},
"tax_rate": {
"meta": {
"included": false
}
},
"invoice_attribution": {
"meta": {
"included": false
}
},
"attachment": {
"meta": {
"included": false
}
},
"custom_field_people": {
"meta": {
"included": false
}
},
"custom_field_attachments": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
},
"expense_line_items": {
"meta": {
"included": false
}
}
}
},
{
"id": "28",
"type": "expenses",
"attributes": {
"name": "name two bulk",
"date": "2026-01-15",
"pay_on": null,
"paid_on": null,
"position": 1,
"invoiced": false,
"approved": true,
"approved_at": "2026-01-15T05:05:51.102+01:00",
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"deleted_at": null,
"reimbursable": false,
"reimbursed_on": null,
"exchange_rate": "1.25",
"exchange_rate_normalized": "1.0",
"exchange_date": "2026-01-15",
"created_at": "2026-01-15T05:05:51.103+01:00",
"quantity": "1.0",
"quantity_received": "0.0",
"custom_fields": null,
"draft": false,
"exported": false,
"exported_at": null,
"export_integration_type_id": null,
"export_id": null,
"export_url": null,
"company_reference_id": null,
"external_payment_id": null,
"tax_inclusion": false,
"line_items_count": 0,
"currency": "EUR",
"currency_default": "USD",
"currency_normalized": "EUR",
"amount": 10000,
"amount_default": 12500,
"amount_normalized": 10000,
"total_amount": 10000,
"total_amount_default": 12500,
"total_amount_normalized": 10000,
"billable_amount": 0,
"billable_amount_default": 0,
"billable_amount_normalized": 0,
"profit": -10000,
"profit_default": -12500,
"profit_normalized": -10000,
"recognized_revenue": 0,
"recognized_revenue_default": 0,
"recognized_revenue_normalized": 0,
"amount_with_tax": 10000,
"amount_with_tax_default": 12500,
"amount_with_tax_normalized": 10000,
"total_amount_with_tax": 10000,
"total_amount_with_tax_default": 12500,
"total_amount_with_tax_normalized": 10000
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "525"
}
},
"deal": {
"meta": {
"included": false
}
},
"service_type": {
"meta": {
"included": false
}
},
"person": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"vendor": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"purchase_order": {
"meta": {
"included": false
}
},
"tax_rate": {
"meta": {
"included": false
}
},
"invoice_attribution": {
"meta": {
"included": false
}
},
"attachment": {
"meta": {
"included": false
}
},
"custom_field_people": {
"meta": {
"included": false
}
},
"custom_field_attachments": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
},
"expense_line_items": {
"meta": {
"included": false
}
}
}
}
],
"meta": {}
}Update expensesPATCH/api/v2/expenses
URI Parameters
- id
number(required) Example: 1expense id
- name
string(optional) Example: Updated+namename
- service_type_id
number(optional) Example: 1service type id
- service_id
number(optional) Example: 1service id
- template_id
number(optional) Example: 1template id
- amount
number(optional) Example: 100amount in cents
- currency
string(optional) Example: EURcurrency
- date
date(optional) Example: 2018-01-01date
- pay_on
date(optional) Example: 2018-01-15pay on date
- paid_on
date(optional) Example: 2018-01-20paid on date
- attachment_id
number(optional) Example: 1attachment id
- person_id
number(optional) Example: 1person id
- reimbursable
boolean(optional) Example: truereimbursable
- vendor_id
number(optional) Example: 1vendor id
- quantity
number(optional) Example: 1quantity
- tax_rate_id
number(optional) Example: 1tax rate id
- approver_id
number(optional) Example: 1approver id
- note
string(optional) Example: Notenote
- tax_inclusion
boolean(optional) Example: falsetax inclusion
- custom_fields
json(optional) Example: %7B%22key%22%3A%22value%22%7Dcustom fields
- position
number(optional) Example: 1position
- rejected_reason
string(optional) Example: Rejected+reasonrejected reason
- reimbursed_on
date(optional) Example: 2018-01-25reimbursed on date
- purchase_order_id
number(optional) Example: 1purchase order id
- billable_amount
number(optional) Example: 100billable amount in cents
DELETE /api/v2/expenses
Requests
DELETE /api/v2/expenses
Headers
Accept: application/vnd.api+json; ext=bulk
Content-Type: application/vnd.api+json; ext=bulkBody
{
"data": [
{
"id": 35,
"type": "expenses"
},
{
"id": 36,
"type": "expenses"
}
]
}Responses
This response has no content.
Generated by aglio on 15 Jan 2026