Akamai (BYOCDN)

This configuration routes agentic traffic (requests from AI bots and LLM user agents) to the Edge Optimize backend service (live.edgeoptimize.net). Human visitors and SEO bots continue to be served from your origin as usual. To test the configuration, after the setup is complete, look for the header x-edgeoptimize-request-id in the response.

Prerequisites

Before you set up the Akamai Property Manager rules, ensure you have:

  • Access to Akamai Property Manager for your domain.
  • An Edge Optimize API key retrieved from the Adobe Brand Visibility UI. For steps, see Retrieve your API keys.
  • (Optional) To test staging routing, see Staging API key.

Setup options

There are two ways to configure Akamai for Optimize at Edge:

Option 1: Guided setup in Adobe Brand Visibility

Guided setup requires an Akamai EdgeGrid API client in your own Akamai account, with Property Manager (PAPI) — READ-WRITE access to the target property’s group and contract and permission to activate property versions on Akamai Staging and Production. Adobe Brand Visibility uses these credentials only for the setup and does not store them.

Prepare the Akamai EdgeGrid API client

If you do not already have a suitable API client, create one in Akamai Control Center:

  1. Open Administration > Identity & access.
  2. On Users and API Clients, select Create API client.
  3. Select Myself, then Advanced. Limit the client to Property Manager (PAPI) — READ-WRITE, retain only the target group and contract, and confirm permission to activate on Staging and Production.
  4. Create the client, then immediately download or copy the credential file. You need the client secret, API host, access token, and client token. The client secret is shown only once.

Create an API client in Akamai Identity and Access Management

Restrict the API client to Property Manager (PAPI) READ-WRITE

NOTE
Store the credential file in your organization-approved secrets manager. Adobe Brand Visibility does not store these credentials; they remain in your browser session and are cleared when you close the deployment dashboard.

Deploy the routing configuration

  1. Open CDN Configuration for the URL you want to configure.
  2. In Deploy Optimizations to AI Agents, select Enable if needed.
  3. Select Deploy routing in Akamai (Beta).
  4. Paste the EdgeGrid credential file, or enter the client secret, API host, access token, and client token individually, then connect.
  5. Select the Akamai property, review the proposed changes, and follow the guided steps to deploy. Obtain approval before activating the new property version.

Deploy routing in Akamai from Adobe Brand Visibility

NOTE
Guided setup is available as an early access feature for eligible accounts. For onboarding assistance, contact your Adobe account team or email llmo-at-edge@adobe.com.

Option 2: Manual setup

Use the following steps to configure the Akamai Property Manager rules manually.

Configuration

The following Akamai Property Manager rule routes agentic HTML page traffic to Edge Optimize. The configuration includes the following steps:

1. Set routing criteria (User-Agent and HTML traffic matching)

Set routing for the following user agents:

 *AdobeEdgeOptimize-AI*
 *ChatGPT-User*
 *GPTBot*
 *OAI-SearchBot*
 *PerplexityBot*
 *Perplexity-User*
 *ClaudeBot*
 *Claude-User*
 *Claude-SearchBot*
NOTE
Apply the Optimize at Edge routing rule only to agentic HTML page traffic. A common setup is to use request-side criteria such as File Extension to match html and EMPTY_STRING for extensionless page URLs. If your site serves HTML from other URL patterns, or includes extensionless non-page routes such as API endpoints, refine the rule with additional path-based criteria.

Set routing criteria

2. Set Origin and SSL behavior

Set origin as live.edgeoptimize.net and Match SAN to *.edgeoptimize.net

NOTE
If property activation fails after you add the Optimize at Edge rule, check whether the rule uses a different Origin Server SSL verification mode than the default rule. If it does, update the Optimize at Edge rule to match the default rule. For example, if the default rule uses Platform Settings, use Platform Settings here as well. If you cannot use the required setting, contact Akamai support.

Set Origin and SSL behavior

3. Set Cache Key Variable

Set the cache key variable PMUSER_EDGE_OPTIMIZE_CACHE_KEY to LLMCLIENT=TRUE;X_FORWARDED_HOST={{builtin.AK_HOST}}

Set Cache Key Variable

4. Caching Rules

Caching Rules

5. Modify Incoming Request Headers

Set the following incoming request headers:
x-edgeoptimize-api-key to the API Key retrieved from LLMO
x-edgeoptimize-config to LLMCLIENT=TRUE;
x-edgeoptimize-url to {{builtin.AK_URL}}

Modify Incoming Request Headers

Allow Optimize at Edge through firewall rules (optional)

If your CDN uses a WAF or Bot Manager:

  • Allowlist the *AdobeEdgeOptimize/1.0* user agent in your WAF or Bot Manager so the Optimize at Edge service can fetch your origin content.

  • If your firewall requires additional verification beyond user agent, generate a secret (for example, openssl rand -hex 32) and:

    • Add x-edgeoptimize-fetcher-key with the secret in your routing rules alongside the other x-edgeoptimize-* headers.
    • Add a WAF or Bot Manager rule to allow requests where x-edgeoptimize-fetcher-key matches the same secret.
  • Optimize at Edge forwards this header as-is — you own the full key lifecycle.

Set x-edgeoptimize-fetcher-key header in Property Manager

NOTE
Also allowlist the *AdobeEdgeOptimize/1.0* user agent and the x-edgeoptimize-fetcher-key header in Akamai Bot Manager.

6. Modify Incoming Response Headers

Modify Incoming Response Headers

7. Cache ID Modification

Cache ID Modification

8. Modify Outgoing Request Headers

Set x-forwarded-host header to {{builtin.AK_HOST}}

Modify Outgoing Request Headers

9. Site Failover

The Site Failover configuration has two parts: a failover behavior inside the main Optimize at Edge routing rule and a sibling rule that adds a response header when fallback occurs.

9a. Configure the Site Failover behavior

Inside the main Optimize at Edge routing rule, create a child rule named Site Failover Behavior. Set it to Match Any and add these criteria:

  • Response Status Code is in the range 400 through 599.
  • Origin Timeout is Yes.

Site Failover

Configure the Site Failover behavior

9b. Configure the failover response header rule

IMPORTANT
Create the EdgeOptimize Failover - Test Header rule as a sibling (at the same level) of the routing rules — not nested inside them. In the Akamai Property Manager rule tree, the hierarchy should look like:
code language-none
▼ Optimize at Edge                         ← parent rule group
     ▼ Optimize at Edge Routing               ← routing child
       Site Failover Behavior                 ← nested child
     EdgeOptimize Failover - Test Header      ← sibling of routing child
The sibling rule is evaluated when Akamai recreates the failed request for the original hostname. The API-key criterion on the routing rule prevents that request from being sent to Edge Optimize again.
Also ensure the Optimize at Edge Routing rule is not overridden by any later matching rule that changes the origin, caching behavior, or cache ID for the same requests. If another matching rule resets these behaviors, Optimize at Edge routing or caching may not work as expected.

Configure the failover response header rule

Site Failover ensures that if Edge Optimize returns an error or times out, Akamai recreates the request for your original hostname so the visitor still receives the site’s normal response.

Scenario
Behavior
Edge Optimize returns 2XX or 3XX
The optimized response is served. x-edgeoptimize-request-id is present.
Edge Optimize returns 4XX5XX, or the origin times out
The request is recreated for the original hostname. The response includes x-edgeoptimize-fo: true.

Verify the setup

After completing the setup, verify that bot traffic is being routed to Edge Optimize and that human traffic remains unaffected.

1. Test bot traffic (should be optimized)

Simulate an AI bot request using an agentic user-agent:

curl -svo /dev/null https://www.example.com/page.html \
  --header "user-agent: chatgpt-user"

A successful response includes the x-edgeoptimize-request-id header, confirming that the request was routed through Edge Optimize:

< HTTP/2 200
< x-edgeoptimize-request-id: 50fce12d-0519-4fc6-af78-d928785c1b85

2. Test human traffic (should NOT be affected)

Simulate a regular human browser request:

curl -svo /dev/null https://www.example.com/page.html \
  --header "user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"

The response should not contain the x-edgeoptimize-request-id header. The page content and response time should remain identical to before enabling Optimize at Edge.

3. How to differentiate between the two scenarios

Header
Bot traffic (optimized)
Human traffic (unaffected)
x-edgeoptimize-request-id
Present — contains a unique request ID
Absent
x-edgeoptimize-fo
Present only if failover occurred (value: true)
Absent

The status of the traffic routing can also be checked in the Adobe Brand Visibility UI. Navigate to Customer configuration and select the CDN configuration tab.

Deploy optimizations to AI agents — completed

To learn more about Optimize at Edge, including available opportunities, auto-optimization workflows, and FAQs, return to the Optimize at Edge overview.

recommendation-more-help
brand-visibility-help-main-toc