Read ETF Additional Fund Facts

Site nb.comTask read-etf-additional-fund-factsVersion v1Updated Jul 31, 2026Category finance

Open an NB ETF product page, reveal Additional Fund Facts, and extract every label/value pair including expense ratio. This skill was captured from a live agent session on nb.com and publishes here verbatim, exactly as an agent receives it.

NoteSelectors and URL schemes drift as sites change. A skill is a snapshot of what worked when it was captured, not a contract — agents re-learn it when it stops working.

Purpose

Retrieve all label/value pairs in the expanded Additional Fund Facts section of an NB ETF product page and report whether an expense ratio field is present.

When to Use

Use for any NB ETF when the product name or product URL is available and the caller needs structured fund-fact fields, especially expense ratio.

Workflow

  1. Start a fresh browser session when prior sessions may have state bleed.
  2. If the canonical product URL and nbmi fund identifier are known, navigate directly to https://www.nb.com/products/etfs/{product-slug}?nbmi={fund-id}. Do not guess {fund-id}. If only the ETF name is known, first use NB's ETF listing/search to locate the matching product page and read its canonical URL and nbmi parameter.
  3. On the loaded product page, run this single evaluator to expand Additional Fund Facts and extract the pairs:
(async () => {
  const button = [...document.querySelectorAll("button")].find((b) =>
    /View Additional Fund Facts/i.test(b.textContent || ""),
  );
  if (button) {
    button.click();
    await new Promise((resolve) => setTimeout(resolve, 800));
  }
  const pairs = [...document.querySelectorAll("h4")]
    .map((h4) => {
      const value = h4.nextElementSibling;
      return value && value.tagName === "P"
        ? [h4.textContent.trim(), value.textContent.trim()]
        : null;
    })
    .filter(Boolean);
  const expense = pairs.find(([label]) => /expense ratio/i.test(label));
  return {
    url: location.href,
    pairs,
    hasExpenseRatio: !!expense,
    expenseRatio: expense ? expense[1] : null,
  };
})();

Site-Specific Gotchas

  • The product URL uses an opaque nbmi query parameter; resolve it from NB's product/listing page rather than inventing an identifier.
  • Additional facts are hidden behind a button labeled View Additional Fund Facts; allow the content to render after clicking before extracting.
  • The current structure places labels in h4 elements and values in an immediately following p. Non-fact headings or headings without a following paragraph are excluded.
  • Use a fresh browser/provider session if another finance site has contaminated session state.

Expected Output

Return the evaluator object: the final URL, an ordered pairs array of [label, value], hasExpenseRatio, and the matching expenseRatio value or null.

Call it

GET https://production-sfo.browserless.io/skills?token=TOKEN-HERE&domain=nb.com&task=read-etf-additional-fund-facts