---
title: "Execute Browser feature transformations"
method: POST
path: "/zephr/feature-transformations"
tags: ["Browser Feature Transformations"]
---

# Execute Browser feature transformations

`POST /zephr/feature-transformations`

## Request

- Base URL: `https://demo-site`
- URL: `https://demo-site/zephr/feature-transformations`
- Auth: one of:
  - API key in cookie `blaize_session`
  - API key in query parameter `jwt`
  - API key in header `x-blaize-jwt`
  - API key in header `x-zephr-jwt`
  - HTTP bearer
  - API key in cookie `blaize_jwt`

Zephr HTML Features can be run in the browser by calling this API directly or using the Zephr Browser SDK. For compatibility with CDN, any web headers (Referrer, User-Agent) will be accepted and passed onto the rule engine.


**Providing a JWT**


Supply it as a `jwt` query parameter, an `X-Blaize-Jwt` header, an `X-Zephr-Jwt` header, an `Authorization: Bearer` header, or a `blaize_jwt` cookie. If more than one is present, the first found in that order is used.

## Headers

- `Cookie` string

## Request body

- object
  - `featureIds` unknown[], required: An array of HTML Feature IDs.
    - unknown
  - `session` string: The Zephr Session ID.
  - `referer` string: Browser referer
  - `path` string: Request path, defaults to "/". If available, include the content ID as a query parameter. For example, `/story.html?content_id=abc-123`.
  - `content_metadata` object
    - `content_id` string: Content ID, used to perform requests to a 3rd party API for additional content information used in making a decision.
  - `giftToken` string: Token to provide access to content for one session.
  - `customData` object: Custom data to be used in Feature HTML browser rule. Accepts a JSON object

## Response `200`

OK

- BrowserFeaturesTransformationsResponse
  - `featureResults` object: Map of HTML Feature IDs and feature result transformations
    - `featureX` object
      - `ruleTransformations` object
        - `type` string: The transformation type.
        - `id` string: The rule ID.
        - `contentLength` number: Content length
        - `outcomeId` string: The outcome ID.
        - `outcomeLabel` string: The outcome label.
        - `ruleId` string: The rule ID.
        - `ruleLabel` string: The rule label.
        - `style` string: The transformation style.
        - `url` string: The transformation URL.
        - `value` string: The string transformation value.
      - `zoneRuleTransformations` object
        - `zone` string: The zone type (HEADER, FOOTER, POPUP).
        - `closeable` boolean: Indicates whether the zone can be closed.
        - `css` string: CSS
        - `displayAfter` string: Specifies whether the content should be displayed after a specific condition or event.
        - `scrollable` boolean: Indicates whether the zone is scrollable.
        - `ruleTransformations` unknown[]: Rule transformations
          - unknown
  - `resources` object
    - `forms` object: Forms used in feature results
    - `paymentForms` object: Payment Forms used in feature results
    - `uiComponents` object: UI Components used in feature results

## Changes

- **2026-10-02** `678190d04c40`: 1 breaking, 3 warning, 1 info
  - the `featureIds/items/` request property type changed from `string` to no type
  - removed the request property `jwt`
  - removed the optional property `accessDetails` from the response with the `200` status
  - removed the optional property `featureResults/article` from the response with the `200` status
  - …1 more

[Operation history](https://skmtc.dev/zuora/apis/zuora-2/changes/zephr/feature-transformations/post.md)

---

[API](https://skmtc.dev/zuora/apis/zuora-2.md) - [All operations](https://skmtc.dev/zuora/apis/zuora-2/llms.txt) - [OpenAPI document](https://skmtc.dev/zuora/apis/zuora-2/revisions/678190d04c40?raw)
