This page summarizes the most common problems and their fixes. If you don't find your case here, check the basics: the server is running, the host/port/protocol match, a filter or pause isn't hiding the dump, and you have the right token.
Nothing appears after sending a dump
Go through these in order:
- Is the server running? In Settings → Servers it should have
runningstatus, orcurl http://127.0.0.1:21234/healthreturns{"ok":true,…}. - Do the host/port/protocol match? The default is HTTP on
127.0.0.1:21234. If the server is TCP, an HTTPPOSTwon't reach it (and vice versa). - Is a filter hiding it? A server/flag/channel/type filter or the search query can hide new dumps. Clear the filters, or check the count in the header —
filtered/totalreveals that dumps are being filtered out. - Is pause on? A frozen stream buffers new dumps behind the "N new" banner instead of showing them. Resume, or click the banner.
- Is a token required? If you set a token, every dump must carry it (see below).
- Use Send test dump. Settings → Servers → Send test dump verifies the ingest path independently of your app.
The port is already in use
1Port 21234 is already in use
Another process (or a second Dumpio server) is holding the port. Change the port in Settings → Servers, or stop the conflicting service. Two servers can't share the same host:port.
My JSON shows up as a red "raw" dump
The body wasn't valid JSON, so Dumpio kept it verbatim and marked it red instead of discarding it. The detail shows the exact parser error. Fix the JSON your app sends (common causes: trailing commas, unescaped quotes, sending form-encoded data).
401 / token rejected
A token is configured, but the request is missing it or it's wrong.
- HTTP: send
Authorization: Bearer <token>orX-Dumpio-Token: <token>. - TCP: put
"token": "<token>"as a field in the JSON content.
Copy the exact token from Settings → Security.
403 Forbidden (HTTP)
A security check rejected the request:
- Invalid Host header – you're targeting a loopback server with a non-loopback
Host. Use127.0.0.1/localhost. - Cross-origin / cross-site – the request carried an
Originheader orSec-Fetch-Site: cross-site(typically a browserfetch). Send from a server-side or CLI client. See Security.
413 Payload too large
The body exceeded Max payload size (Settings → Security, default 1024 KB). Raise the limit or send less. html/mail dump content has a larger internal string limit, but the whole request still has to fit under the size limit.
429 Rate limit exceeded
You're sending faster than the Rate limit per client (default 1000/s). Raise it, set it to 0 to disable, or combine dumps into a single array and send them in one POST. Changes take effect immediately without restarting the server.
A network server won't start
A server bound to 0.0.0.0 (Network availability) won't start without a shared token — the token is required once the port is reachable from the LAN. Set a token in Settings → Security. Prefer an SSH tunnel over direct exposure (see Security).
The app is slow with many dumps
Lower Maximum dumps in memory (Settings → Data) or clear the list. Very large single content is trimmed for display (deep nesting, huge strings, thousands of keys), but a very high memory limit still costs RAM.
Dumps disappear after a restart
Persistence is off by default. Enable Automatically save dumps to disk or Force save dumps when application exits in Settings → Data so dumps are kept between runs. See Storage.
Jump to editor does nothing
Choose an editor in Settings → Appearance → Editor (the default is Off). Only a fixed list of editors is supported (VS Code / Insiders, Cursor, PhpStorm, WebStorm, IntelliJ IDEA, Sublime Text, TextMate, Zed), and your OS must have its URL handler registered.