Changes and updates

New endpoints, smarter extraction, MCP server updates and fixes. Everything we ship for the API, in the order we shipped it.

  1. Fixed

    Dark sites now extract as dark

    Asking a dark-themed site for a section could return a white one: theme values scoped to a root attribute like [data-theme="dark"] were read without regard for which theme was active, so the losing theme overwrote the winning one. Extraction now follows the theme the page actually declares, and a new theme=light|dark parameter lets you pick. Every response reports which theme you got.

    Code endpoint
  2. Fixed

    Broken CSS no longer reaches extracted components

    When a page built a value from custom properties the extraction could not see, the missing pieces collapsed to nothing and shipped an unparseable declaration - a transform reading calc( - - calc(calc( - ) / 2) * 2), which browsers drop silently. Those declarations are now dropped the way a browser drops them, so the rest of the component still renders.

    Code endpoint
  3. Improved

    Extracted cards now come back with the card

    When a section's background, border, radius and shadow live on an unlabelled wrapper above it - the usual pattern for a card in a grid - extraction returned the contents with no shell, leaving you to invent those four values. It now climbs to the element that carries them, and echoes back the selector it actually used.

    Code endpoint
  4. New

    Design tokens tell you when a page mixes two themes

    Token counts are tallied across the whole stylesheet, so a site shipping both light and dark returns the union of the two with neither labelled - which is how a "most-used background" can be a colour no one ever sees. Responses now include colorSchemes, so you know when that is happening.

    Design tokens endpoint
  5. Improved

    Headers and footers are now in the sections list

    Every /v1/code response lists the page sections you can extract - but headers and footers were missing from that list, so asking for one meant hand-writing a selector and paying for each guess. They are now included, labelled "Header / navigation" and "Footer", without changing which section gets auto-detected when you omit a selector.

    Code endpoint
  6. Fixed

    Renaming a component no longer costs credits

    The name parameter was part of the cache key, so calling the same URL and selector with a different component name re-ran the whole extraction at full price. It now reuses the cached result and renames on the way out - a rename costs 0 credits. A failed selector on a rendered call also stopped claiming that JavaScript was not executed.

    Code endpoint
  7. Improved

    The free tier tripled: 300 credits a month

    Every free key now gets 300 credits a month instead of 100 - existing keys included, nothing to do. Real usage showed 100 credits runs out mid-evaluation (it is barely four rendered code calls); 300 covers a proper trial: twenty brand extractions, twelve full section-to-code calls, or a thirty-page asset sweep. Still no card, still every endpoint.

    Get a free key
  8. New

    Screenshots: see the page next to its data

    Any rendered call can now take screenshot=true (1440x900 viewport) or screenshot=full (the entire page): the same browser that renders the page captures the shot, and the response gains a screenshot field with a public image URL that stays live for 7 days. No extra credits beyond the render surcharge - useful for verifying an extraction at a glance or showing a human what the agent extracted.

    API docs

Building with the API? Read the docs or grab a free key - 300 credits a month, no card.