Skip to content

Personal expenses

10 endpoints at a glance
MethodPathSummary
GET/personal-expensesList Personal Expenses
POST/personal-expensesCreate Personal Expense
DELETE/personal-expenses/{expense_id}Delete Personal Expense
GET/personal-expenses/{expense_id}Get Personal Expense
PATCH/personal-expenses/{expense_id}Update Personal Expense
POST/personal-expenses/{expense_id}/paidSet Personal Paid
POST/personal-expenses/captureCapture Personal
POST/personal-expenses/capture-from-emailCapture Personal From Email
GET/personal-expenses/categoriesList Categories
GET/personal-expenses/summaryPersonal Summary

personal


List Personal Expenses

GET
/personal-expenses

Parameters

Header Parameters

authorization

Query Parameters

paid
category
q
linked
page
Type
integer
Default
1
limit
Type
integer
Default
50

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Variables
Key
Value

Samples


Create Personal Expense

POST
/personal-expenses

Parameters

Header Parameters

authorization

Request Body

application/json
JSON
{
  
"date": "string",
  
"merchant": "",
  
"amount_cents": 0,
  
"category": "string",
  
"description": "string",
  
"currency": "EUR",
  
"notes": "string",
  
"paid": false,
  
"party_ref": {
  
  
"type": "string",
  
  
"id": "string",
  
  
"ref": {
  
  
  
"additionalProperties": "string"
  
  
},
  
  
"label": "string"
  
}
}

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Body

Samples


List Categories

GET
/personal-expenses/categories

Parameters

Header Parameters

authorization

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers

Samples


Personal Summary

GET
/personal-expenses/summary

Parameters

Header Parameters

authorization

Query Parameters

year

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Variables
Key
Value

Samples


Capture Personal

POST
/personal-expenses/capture

Upload a receipt (image or PDF) → prefilled personal record with the
receipt attached. Digital PDFs read their text layer (no OCR); images/scans
use tesseract (501 when it's not installed).

Parameters

Header Parameters

authorization

Request Body

multipart/form-data

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Body

Samples


Capture Personal From Email

POST
/personal-expenses/capture-from-email

Capture a receipt straight from an email attachment (PDF/image) into a
prefilled personal record, and tag the source email personal.

Parameters

Header Parameters

authorization

Request Body

application/json
JSON
{
  
"email_id": "string",
  
"part_id": "string"
}

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Body

Samples


Get Personal Expense

GET
/personal-expenses/{expense_id}

Parameters

Header Parameters

authorization

Path Parameters

expense_id*
Type
string
Required

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Variables
Key
Value

Samples


Delete Personal Expense

DELETE
/personal-expenses/{expense_id}

Parameters

Header Parameters

authorization

Path Parameters

expense_id*
Type
string
Required

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Variables
Key
Value

Samples


Update Personal Expense

PATCH
/personal-expenses/{expense_id}

Parameters

Header Parameters

authorization

Path Parameters

expense_id*
Type
string
Required

Request Body

application/json
JSON
{
  
"date": "string",
  
"merchant": "string",
  
"amount_cents": 0,
  
"category": "string",
  
"description": "string",
  
"currency": "string",
  
"notes": "string",
  
"paid": true,
  
"party_ref": {
  
  
"type": "string",
  
  
"id": "string",
  
  
"ref": {
  
  
  
"additionalProperties": "string"
  
  
},
  
  
"label": "string"
  
}
}

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Variables
Key
Value
Body

Samples


Set Personal Paid

POST
/personal-expenses/{expense_id}/paid

Parameters

Header Parameters

authorization

Path Parameters

expense_id*
Type
string
Required

Request Body

application/json
JSON
{
  
"paid": true
}

Responses

Successful Response

application/json
JSON
{
  
"additionalProperties": "string"
}

Playground

Headers
Variables
Key
Value
Body

Samples


Kancil — one workspace for contacts, work and money.