Test data your tests can count on.
Databucket is an open-source test data management tool: one place where teams store, share and reserve test data, so parallel tests never fight over the same records.
$ curl -X POST \ "$DATABUCKET/api/bucket/dev-users/reserve?limit=1" \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{"rules": [ ["$.account.status", "==", "active"], {"or": [["$.payment.method", "==", "card"], ["$.payment.balance", ">", 0]]} ]}' { "reserved": 1, "available": 847, "data": [{ "id": 1, "owner": "demo-robot", "properties": { "auth": { "login": "jsmith", … }, "account": { "status": "active", … }, "payment": { "method": "card", … } } }] }
Sound familiar?
Test data is often the least managed part of testing, and it shows up as random failures and lost time.
Data is scattered
Accounts, orders and configs live in spreadsheets, shared databases and in testers' heads. Nobody knows which data is still usable on which environment.
Parallel tests collide
Two tests grab the same user account at the same time and one of them fails – at random, and hard to reproduce.
No trace of changes
A record was changed, but who did it, when, and what did it look like before? Without history every investigation starts from zero.
One source of truth for test data
Databucket gives manual testers, automated tests and CI pipelines the same, well-organised data – and makes sure they don't get in each other's way.
No more data collisions
Tests reserve records through the REST API. Each record goes to exactly one test at a time, even when hundreds run in parallel.
Flexible data buckets
Keep data of any shape as JSON in buckets – per project, per environment (DEV, INT, PRD), per team. No schema migrations when your test data changes.
Full history and audit
Every change is recorded: who changed what and when, with a side-by-side diff of the data before and after.
Find the right data fast
Tags, saved filters, a visual rule builder and tailored views help everyone find exactly the records they need – also inside nested JSON.
Runs inside your company
Self-hosted: a single jar and PostgreSQL. Single sign-on (OpenID Connect), roles, and robot accounts for CI. Your data never leaves your network.
Open and free
MIT license, no per-user fees, no vendor lock-in. A documented REST API with Swagger works with any test framework and language.
See it in action
Screenshots from the DEMO dataset that ships with Databucket – import it and try everything yourself.
Build filters visually
Combine rules on any field, also deep inside nested JSON. Databucket shows the resulting query and how many records match – before you apply it. Save filters to reuse them in views and tasks.
Everything about a record
Open a record to read and edit its JSON with syntax colours, next to who created and changed it, and when. Share a direct link to it with your team.
Ready for AI agents
Give your AI assistant a robot account: it can find, reserve and prepare test data through the documented API – with its own permissions, and every change it makes recorded in history.
Tests without hard-coded data
An agent writing tests reserves the data it needs from Databucket instead of hard-coding it into the code.
Data for a new feature
An agent generates the records a new feature needs and puts them into a bucket – ready for testers and pipelines.
Under control
The agent sees only what its role allows, takes data the same way tests do, and history shows exactly what it changed and when.
How it works
Three steps from scattered spreadsheets to data your whole team – and your pipelines – can rely on.
Organise
Create a project and buckets for your environments and data sets. Describe the data with columns, tags, enums and views.
Load data
Add records in the UI, import CSV files, push them through the REST API, or start from a ready-made dataset.
Use it in tests
Tests reserve the records they need, change them and release them. Testers see the same data in the browser, with full history.
Get started
Try Databucket on your machine in a few minutes – with demo data, single sign-on and a mail catcher included.
git clone https://github.com/databucket/databucket-server.git
cd databucket-server/docker
docker compose up --build
# open http://databucket.localhost
# sign in as super / super
# Management → Projects → import the DEMO dataset
Using Databucket in your company?
Questions about adoption, integration with your test automation, or a feature you need? Let's talk.