Changelog

What shipped, month by month — the Public App, the public and Management API, the MCP server, and the SDKs.

September 2026

Improvements

  • Refreshed color palette and typography

    Refreshed the Public App's visual design with a new color palette (green and lime accents replacing sky and emerald) and updated fonts across headings and body text.

    Public App

  • Flag detail screen polish

    Cleaned up several rough edges on the flag detail screen: a JSON column on the Environment Targets table, a click-to-copy context identifier, and clearer empty and loading states.

    Public App

  • Smoother Free plan sign-up

    Choosing the Free plan no longer asks for a credit card, and downgrading to Free now shows what you'll lose before you confirm.

    Public App

  • Expired trials downgrade to Free instead of cancelling

    When a trial ends without converting to a paid plan, the account now moves to the Free plan instead of being cancelled.

    Misc

Bug Fixes

  • Permissions and access fixes

    Fixed several access-control bugs: invited users landing in a no-access dead end, project- and environment-scoped users seeing an incorrectly read-only dashboard, editors seeing actions that then failed, and grant-management actions that returned server errors.

    Public App

  • MCP server protocol-version fix

    Fixed an error some MCP clients hit when connecting with a newer protocol version than the server recognized.

    MCP Server

August 2026

Improvements

  • Faster MCP setup from personal access tokens

    Creating a personal access token now offers a one-click "Connect to MCP" shortcut with a ready-to-paste client config.

    Public App

  • Narrowed environment approval requirement to publishing

    An environment's comment/confirmation approval requirement now applies only to publishing a target, not to every draft edit made through the Management API or MCP.

    Management API

  • Personal access tokens

    Any user can now create, view, and revoke their own personal access tokens from their profile, separate from account-wide API tokens.

    Public App

  • Management API: full target and rollout lifecycle

    The Management API now covers the complete target lifecycle — create, edit, publish (with optional scheduling), and cancel drafts — plus initializing, pausing, resuming, completing, and removing percentage rollouts, reordering targeting rules, managing flag values, and bulk-deleting flags.

    Management API

  • Scope management API tokens to a project or environment

    Management API tokens can now be restricted to a specific project or specific environments from the token UI, and a bug that rejected valid environment-scoped tokens on list/get flag requests is fixed.

    Management API · Public App

  • MCP server launch

    Launched an MCP server so AI assistants can list, read, and manage your flags, projects, and environments through scoped API tokens.

    MCP Server

  • Laravel SDK webhook endpoints

    The Laravel SDK now ships built-in webhook endpoints that trigger a flag re-fetch, instead of relying only on polling.

    SDKs

  • Redesigned reports pages

    Reports now share a consistent layout and headings, with rebuilt usage charts that overlay the previous period as a line instead of a second bar series, a running total for at-a-glance comparison, and the audit log moved under Reports.

    Public App

  • Geographic Exposure Report

    Added a Geographic Exposure Report that shows where flag evaluations are coming from, backed by a new IP-geocoding and rollup pipeline.

    Public App

  • Accessibility improvements

    Improved keyboard navigation and screen-reader support across the app: focus trapping in modals, accessible names on icon-only controls and form errors, labeled search inputs, and modals that close on Escape.

    Public App

Bug Fixes

  • Tighter validation on the flag API

    Flag keys, names, and descriptions are now validated against real database limits, and flag values against per-type formatting rules, so bad input returns a clean validation error instead of a raw database failure or a duplicate key.

    Management API

  • Public App bug fixes

    Fixed a batch of Public App bugs, including crashes on missing route parameters, a stale default-value display, and mutation/validation issues on the Users and Projects screens.

    Public App

  • Fixed missing environment picker for single-project accounts

    Accounts with just one project and environment can now open the environment picker menu, which was previously hidden along with everything else it exposes.

    Public App

  • PHP SDK: fixed defaults being dropped on rule-load failure

    Fixed a bug where the PHP SDK would drop your configured default values entirely if flag-rule loading failed.

    SDKs

  • Standardized SDK request headers and fixed default-value reporting

    Standardized request headers to a consistent X-ZEN- prefix and fixed usage reporting to always include your configured default value, not just when the SDK falls back to it, across all SDKs.

    Public API · SDKs

July 2026

Improvements

  • Searchable pickers on the API Tokens screen

    The API Tokens screen now uses searchable project/environment pickers instead of free-text ID fields, and fixed token actions being rejected for valid lowercase IDs.

    Public App

  • Webhooks for management changes

    Added outbound webhooks so external systems can be notified when changes are made through the Management API, not just when flags change.

    Management API

  • OpenAPI spec and Swagger UI explorer

    Published an OpenAPI spec and an interactive Swagger UI explorer for the public API, with several spec inaccuracies fixed.

    Public API

Bug Fixes

  • Public App bug fixes

    Fixed a batch of Public App bugs, including a context page that reset your project/environment on refresh, a flag list that jumped scroll position, team grants not showing on the teams list, and percentage-rollout sliders allowing 0% when the API rejected it.

    Public App

June 2026

Improvements

  • Public API: manage targets and rules

    The public API now supports creating and managing targets and targeting rules directly, not just reading flags.

    Public API

  • Rate limiting, request IDs, and idempotency keys

    The public API now enforces rate limits and supports request IDs and idempotency keys, so a retried write can't be applied twice.

    Public API

  • Public REST API launch

    Launched a public REST API (v1) for creating, reading, updating, and deleting flags programmatically.

    Public API

  • Scoped management API tokens

    Added scoped management API tokens, so an integration can be granted only the specific permissions it needs instead of full account access.

    Management API

  • Proration for mid-cycle plan changes

    Switching plans or billing periods mid-cycle now prorates the difference instead of charging or crediting the full amount.

    Misc

  • Redesigned invoice PDFs

    Redesigned invoice PDFs with a cleaner, Stripe-style layout that now also shows whether you're on monthly or annual billing.

    Misc

  • New account onboarding experience

    New accounts now get a guided first-run experience: signup personalization, an interactive product tour, a "Connect your SDK" wizard with live connection detection, a getting-started checklist, a trial status banner, and an activation-nudge email sequence.

    Public App

May 2026

Improvements

  • More targeting-rule operators

    Added targeting-rule operators for matching context-attribute strings that weren't previously supported.

    Misc

Bug Fixes

  • Public App bug fixes

    Fixed a batch of Public App bugs, including dashes being stripped from generated slugs, broken IN/NOT IN context-attribute rule editing, a flag list that didn't scroll a clicked flag into view, and a login redirect that showed the wrong environment.

    Public App

  • Fixed percentage rollouts not working in the Public App

    Fixed a critical bug where the Public App wasn't honoring percentage-rollout settings at all.

    Public App

April 2026

Improvements

  • Role-based permissions and audit log

    Launched scoped, role-based permissions with a centralized authorization engine, plus a filterable, exportable audit log — covering project/environment administration, key management, and flag lifecycle actions.

    Public App

Bug Fixes

  • Fixed inconsistent anonymous flag evaluation

    Fixed inconsistent handling of flag-evaluation requests made without an identified user.

    Public API

March 2026

Improvements

  • Target and segment on contexts that don't exist yet

    Targeting rules and segments can now reference context attributes and contexts that haven't been seen yet, instead of requiring them to already exist.

    Public App

  • Richer flag history

    Flag history now shows the actual target-value change and any rules involved, not just that a change happened.

    Public App

  • Flag usage visibility

    Flag detail pages now show usage information for that flag directly in the app.

    Public App

Bug Fixes

  • Debug console shows more activity

    The debug console now also shows flag-JSON fetches and flag-usage events reported by the frontend, not just server-recorded activity.

    Public App

  • Fixed false-positive webhook URL validation

    Fixed webhook creation rejecting some valid URLs as invalid.

    Management API

January 2026

Improvements

  • Laravel SDK launch

    Launched an official Laravel SDK, published on Packagist, with a sample project to get started from.

    SDKs

  • PHP SDK launch

    Launched an official PHP SDK, published on Packagist, with a sample project to get started from.

    SDKs

  • No password-reset emails for inactive accounts

    Forgot-password emails are no longer sent for accounts that aren't active.

    Misc