Skip to content

Backup Parse

POST
/api/v1/import/backup/parse
curl --request POST \
--url https://example.com/api/v1/import/backup/parse \
--header 'Content-Type: multipart/form-data' \
--form file=example

Parse a JSON backup file and return a read-only preview.

Matches institutions, categories, and accounts against existing data to show which entries are new vs matched. Does NOT write anything.

Media typemultipart/form-data
Body_backup_parse_api_v1_import_backup_parse_post
object
file
required
File
string

Successful Response

Media typeapplication/json
BackupPreview

Response from POST /api/v1/import/backup/parse.

A read-only preview of a JSON backup file — parsed and matched against existing data, but nothing is written to the DB. The user reviews this before confirming the actual import.

object
version
Version
integer
default: 1
exported_at
Any of:
string
user
Any of:
object
key
additional properties
any
summary
BackupPreviewSummary

Aggregate counts for all sections in a backup.

recurring_transactions/bills: only populated when previewing a v4-or- earlier backup (the pre-merge section split). A v5+ backup instead populates planned_transactions, the section that replaced both.

object
institutions
Institutions
integer
0
categories
Categories
integer
0
subcategories
Subcategories
integer
0
accounts
Accounts
integer
0
snapshots
Snapshots
integer
0
funding_schedules
Funding Schedules
integer
0
goal_templates
Goal Templates
integer
0
savings_goals
Savings Goals
integer
0
transactions
Transactions
integer
0
budgets
Budgets
integer
0
holdings
Holdings
integer
0
recurring_snapshots
Recurring Snapshots
integer
0
recurring_transactions
Recurring Transactions
integer
0
exchange_rates
Exchange Rates
integer
0
net_worth_thresholds
Net Worth Thresholds
integer
0
tags
Tags
integer
0
categorization_rules
Categorization Rules
integer
0
bills
Bills
integer
0
planned_transactions
Planned Transactions
integer
0
chart_annotations
Chart Annotations
integer
0
envelopes
Envelopes
integer
0
saved_filters
Saved Filters
integer
0
report_settings
Report Settings
integer
0
saved_reports
Saved Reports
integer
0
payees
Payees
integer
0
dashboards
Dashboards
integer
0
alert_rules
Alert Rules
integer
0
notification_preferences
Notification Preferences
integer
0
institutions
Institutions
Array<object>
BackupPreviewInstitution

Institution entry in a backup preview.

object
name
required
Name
string
color
Any of:
string
is_default
Is Default
boolean
is_new
Is New
boolean
categories
Categories
Array<object>
BackupPreviewCategory

Category entry in a backup preview.

object
name
required
Name
string
color
Any of:
string
is_new
Is New
boolean
subcategories
Subcategories
Array<object>
BackupPreviewSubcategory

Subcategory entry in a backup preview.

object
category_name
required
Category Name
string
name
required
Name
string
is_new
Is New
boolean
accounts
Accounts
Array<object>
BackupPreviewAccount

Account entry in a backup preview with snapshot count.

object
name
required
Name
string
institution
Any of:
string
account_type
Account Type
string
default: other
currency
Currency
string
default: EUR
snapshot_count
Snapshot Count
integer
0
is_new
Is New
boolean
matched_account_id
Any of:
integer

Example

{
"version": 1,
"summary": {
"institutions": 0,
"categories": 0,
"subcategories": 0,
"accounts": 0,
"snapshots": 0,
"funding_schedules": 0,
"goal_templates": 0,
"savings_goals": 0,
"transactions": 0,
"budgets": 0,
"holdings": 0,
"recurring_snapshots": 0,
"recurring_transactions": 0,
"exchange_rates": 0,
"net_worth_thresholds": 0,
"tags": 0,
"categorization_rules": 0,
"bills": 0,
"planned_transactions": 0,
"chart_annotations": 0,
"envelopes": 0,
"saved_filters": 0,
"report_settings": 0,
"saved_reports": 0,
"payees": 0,
"dashboards": 0,
"alert_rules": 0,
"notification_preferences": 0
},
"institutions": [
{
"is_default": false,
"is_new": false
}
],
"categories": [
{
"is_new": false
}
],
"subcategories": [
{
"is_new": false
}
],
"accounts": [
{
"account_type": "other",
"currency": "EUR",
"snapshot_count": 0,
"is_new": false
}
]
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object

Example generated

{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}