Boomi DataHub Manager -
Browse and operate Boomi DataHub repositories directly from VS Code.
Universes, sources, channels, golden records, quarantine entries, the
outbound queue, transactions, end-dated records, and a raw-API console
— all in one place, without leaving the editor.
⚠ Unofficial community extension. Not affiliated with, endorsed
by, or sponsored by Boomi, LP. "Boomi" and "Boomi DataHub" are
trademarks of Boomi, LP, used here descriptively to identify the
third-party platform this extension connects to. For official
support of the Boomi DataHub platform, contact Boomi directly.
Highlights
- 🌐 Repository explorer — universes, sources (with live pending /
undeliverable counts), and channels in a familiar tree view.
- 🔎 Golden record search — up to six field filters combined
AND/OR, field-id autocomplete from the universe model, date
range filters, end-date and channel-propagation actions per row.
- ⚠ Quarantine workspace — filter by reason, resolution, and
source; resubmit or purge entries with a single click; colour-coded
reason pills.
- 📤 Outbound queue — both pending and delivered (history)
modes, with op-type colour coding (CREATE / UPDATE / DELETE /
RESTORE / REJECT_DUPLICATE), GRID lookup, and delivery acknowledge.
- 📜 Transactions, end-dated records, raw API — supporting panels
for inbound staging visibility, soft-delete recovery, and arbitrary
REST calls when you need to escape the UI.
- 🔐 Credentials in your OS keychain, never in
settings.json.
Backed by VS Code's SecretStorage — macOS Keychain, Windows DPAPI,
Linux libsecret / GNOME Keyring.
- 🩺 Built-in diagnostics — a request/response trace channel
with timing,
WWW-Authenticate capture, and parse-error context
to make 401s, schema surprises, and network issues self-explanatory.
Quick start
1. Create a connection profile
Click the hub-and-spoke icon in the Activity Bar, then + in the
Profiles view (or run MDH: New profile from the command palette).
Fill in the form:
| Field |
Notes |
| Name |
Anything memorable (e.g. prod, qa-aus). |
| Base URL |
https://<region>.hub.boomi.com — no /mdm suffix, no trailing slash. |
| Account ID |
Your Boomi account ID. For Basic auth this doubles as the username. |
| Auth mode |
Hub Auth Token (Basic) or JWT (Bearer). |
| Repository ID |
Required for JWT, optional for Hub Auth Token. |
| Verify SSL |
Leave on unless you're hitting a dev cluster with a self-signed cert. |
| Token / JWT |
Stored in SecretStorage; never written to disk. |
2. Connect
Click the profile, or run MDH: Connect. The status bar shows
MDH: <profile> and the Repository view appears with your
universes.
3. Search
From any universe row in the Repository view, use the inline icons:
- 🗄 Database icon → Open Golden Records
- ⚠ Warning icon → Open Quarantine
- ✈ Send icon → Open Outbound Queue
The same three actions sit in the Repository view's title bar and in
the right-click menu on each universe. Outbound Queue also has a
per-source inline icon (handy when you want to pre-filter to one
source).
Features in detail
Golden records
- Field filter rows with
EQUALS / NOT_EQUALS / STARTS_WITH / ENDS_WITH / CONTAINS / GREATER_THAN / LESS_THAN / IS_NULL etc.
- Field-ID autocomplete pulled from the universe model on connect.
updatedAfter / updatedBefore ISO-8601 range filters.
- Optional
includeSourceLinks — useful when figuring out which
source contributed which value.
- Per-row actions: end-date (with confirmation), propagate to
channel (opens a channel picker).
- Side-by-side details pane with Attributes, Parsed JSON, and Raw XML
tabs — useful for debugging mappings.
Quarantine
- Filter by reason (PARSE_FAILURE, POSSIBLE_DUPLICATE,
REFERENCE_UNKNOWN, MULTIPLE_MATCHES, …), resolution (PENDING,
RESUBMITTED, PURGED, RESOLVED), and source ID.
- Reason pills are colour-coded so urgent issues stand out at a
glance.
- One-click Resubmit and Purge with modal confirmations
(purge is irreversible).
Outbound queue
- PENDING mode — items waiting to be consumed by their channel.
Filter by
opType, deliveryType (DELIVERABLE / UNDELIVERABLE),
GRID, relative time (PAST_HOUR / PAST_24_HOURS / PAST_WEEK), or an
absolute date range. The Delivery ID field is disabled (Boomi's API
rule, surfaced in the UI).
- HISTORY mode (delivered) — items already consumed. Delivery Type
disables; Delivery ID becomes available for pinpointing one
delivery.
- Source dropdown auto-populates with codes from your repo (e.g. LS,
CRM, DC) including their pending / undeliverable counts.
- Click Open golden record to jump from an outbound entry to its
GRID.
- Acknowledge delivery action for cases where Boomi's automatic
ack got lost.
Transactions, end-dated records, raw API
- Transactions / Staging — query inbound transactions by state
(PROCESSING / QUARANTINED / COMPLETED), source, source entity, or
record ID. Handy when an inbound looks stuck.
- End-dated records — soft-deleted records, with a per-row
Restore action.
- Raw API — pick a method, type a path under
/mdm/, add query
params and an optional XML body. Useful for endpoints the
first-class UI doesn't cover yet, and for poking around when
something looks off.
Requirements
- VS Code 1.84 or newer.
- Network access to a Boomi DataHub repository — Boomi
Cloud (
*.hub.boomi.com)
- A Hub Auth Token or JWT with permission for the endpoints you
intend to use.
Boomi Data Hub Cloud extension handles both, including Hub builds
that wrap universes in <MdmResult> / <UniverseList> or return
per-source statistics under <sourceStats sourceCode="…">.
Commands
| Command |
What it does |
MDH: New profile |
Open the create-profile form |
MDH: Edit profile |
Modify metadata or swap the token |
MDH: Delete profile |
Remove profile + its SecretStorage entry |
MDH: Connect |
Pick a profile and connect |
MDH: Disconnect |
Drop the session |
MDH: Refresh |
Reload universes |
MDH: Open Golden Records |
Filter-driven record search |
MDH: Open Quarantine |
Quarantine entries with resubmit / purge |
MDH: Open Outbound Queue |
PENDING + HISTORY (delivered) modes |
MDH: Open Transactions / Staging |
Inbound transaction queries |
MDH: Open End-dated Records |
Soft-deleted records + restore |
MDH: Open Raw API |
Arbitrary REST console |
MDH: Fetch universe model |
Show the field model for a universe |
MDH: Propagate channel updates… |
Push records to a channel |
MDH: Acknowledge delivery… |
Acknowledge an outbound delivery |
MDH: End-date golden record… |
Soft-delete a golden record |
MDH: Restore golden record… |
Undo an end-date |
MDH: Resubmit quarantine entry… |
Retry quarantined inbound |
MDH: Purge quarantine entry… |
Permanently remove a quarantine entry |
MDH: Show connection status |
Quick status notification |
MDH: Show log |
Open the request/response trace |
Settings
| Setting |
Default |
Purpose |
mdh.requestTimeoutSeconds |
60 |
HTTP timeout for all calls (seconds). |
mdh.defaultQueryLimit |
100 |
Default page size in query panels. |
mdh.profiles |
[] |
Profile metadata (non-secret). Sync-safe — Settings Sync transports this fine, with no risk of leaking credentials. |
Credentials are always stored in vscode.SecretStorage. They
never appear in settings.json, never sync via Settings Sync, and
never appear in logs.
Security & privacy
- No telemetry. The extension makes no outbound calls except to
the Boomi server you configure.
- No third-party services. All requests go directly from your VS
Code instance to your Boomi endpoint.
- Credentials are keychain-stored. macOS Keychain, Windows DPAPI,
Linux libsecret. They never touch disk in plain text.
- Logs are credential-free. The diagnostic trace records URLs,
status codes, and response bodies, but redacts the actual token /
JWT — it only logs its length, for sanity-checking
paste-with-newline bugs.
- No remote auto-update except via VS Code itself. The extension
has no built-in update mechanism.
Troubleshooting
| Symptom |
Try |
401 UNAUTHORIZED on connect |
Run MDH: Show log. Check the www-authenticate header — Basic means your token is wrong; Bearer means switch Auth mode to JWT. Verify Account ID format with your Boomi admin. |
| Repository view empty after connect |
The server returned a response in an unfamiliar shape. The log will show rootTag=…, topKeys=[…]. Share that in an issue. |
| Sources / Channels expand empty |
Same as above — the log will say whether the structured XML parse failed and what the validator pointed at. |
Connection refused / ENOTFOUND |
Check the Base URL, your VPN, and any corporate proxy. The extension respects Node's HTTPS_PROXY if set. |
| Self-signed cert errors |
Edit the profile and uncheck Verify SSL. Use only for dev environments. |
The Output channel (MDH: Show log) is the source of truth for any
HTTP-level issue. It's safe to paste into bug reports — no
credentials leak through.
Compatibility notes
- Boomi Cloud (e.g.
*-aus.hub.boomi.com) — full support.
- MDH versions — tested against current Boomi DataHub APIs.
Older builds with different endpoint paths may need adjustment;
please file an issue with the request trace.
Known issues
- The structured XML parser (fast-xml-parser v4) is strict about
certain inputs. The extension falls back to regex extraction in
those cases, so functionality stays intact, but the details pane's
"Parsed" tab may be empty when the regex path was used. The Raw
XML tab always works.
- The
transactions panel doesn't yet expose date-range filters —
use the Raw API for time-windowed inbound queries.
Contributing & development
Source code is in TypeScript. Issues and pull requests welcome.
Reporting bugs
Please include the request/response trace (MDH: Show log) in any
bug report — it almost always identifies the root cause within
seconds, and contains no credentials.
License
2.0 version of the Apache License. See LICENSE.
Acknowledgements
HTTP via axios, XML via
fast-xml-parser.
| |