Brokerage

Interactive Brokers (IBKR) Flex Query

Ember reads your IBKR portfolio via the Flex Web Service — a read-only API that returns exactly the data you configure in a query template. No trade access, no order permissions.

IBKR sync needs the Ember plan or above — up to 3 live broker/crypto connections; Blaze is uncapped.

What you'll need

  • ·An IBKR account with Client Portal access
  • ·A Flex Web Service token (generated once per account)
  • ·A NAV Flex Query ID (one per connection / account slice)
  • ·(Optional) A Positions Flex Query ID — enables per-holding breakdown in Ember's Investments page
1

Create a NAV Flex Query

  1. Log in to IBKR Client Portal Reports Flex Queries.
  2. Click Create next to Activity Flex Query.
  3. Give it a name, e.g. Ember NAV.
  4. Under Sections, expand Net Asset Value and tick Total Net Asset Value and Total Long Stock Value.
  5. Set Date to Last Business Day and Format to XML.
  6. Click Save. The query now appears in your list with a numeric ID — copy it (you'll need it shortly).
2

(Optional) Create a Positions Flex Query

Skip this step if you only need the portfolio total. A Positions query populates Ember's Investments page with per-ticker rows.

  1. Back in Flex Queries, create a second Activity Flex Query, name it e.g. Ember Positions.
  2. Under Sections, expand Open Positions and tick Position, Market Value, Currency, and Asset Category.
  3. Same date + XML format settings, then Save. Copy the Positions Query ID.
3

Generate a Flex Web Service token

  1. In Client Portal, go to Settings Account Settings.
  2. Find the Flex Web Service section and click Configure (or Generate Token if one doesn't exist yet).
  3. Copy the token — it's a long alphanumeric string. Treat it like a password.
One token per account. All your Flex Queries share the same token. If you regenerate it, update every Ember connection that uses it.
4

Add the connection in Ember

  1. Go to Settings → Integrations and click Add connection.
  2. Select IBKR from the provider list.
  3. Paste your Flex Token, NAV Query ID, and (optionally) the Positions Query ID.
  4. Give the connection a label (e.g. IBKR — Main account), then save.
  5. Link it to an asset — this is how Ember knows which row in your Assets list to update when the sync runs.
5

Test the connection

Click Sync now on the connection row. A successful sync updates the linked asset's value and marks the status ok. Going forward, Ember syncs automatically each day at 09:00 UTC.


Multiple accounts or sub-accounts

Create one Flex Query per account or account slice. Each query gets its own Ember connection (same Flex Token, different Query IDs). Link each connection to a separate asset.

Manual XML import

If you prefer not to store API credentials, you can export an XML from IBKR manually and upload it on the Integrations page via Manual import. The same NAV and positions data is extracted from the file.