Release 9.4 of Cequence App and API Protection (AAP) is a big one. You can now see every AI agent that calls your applications and decide what happens to each one with a single click. Ask Cequence, a new AI assistant in the console, answers questions from your own data and proposes fixes you approve. API Security gets one inventory that puts discovery, risk, and threats side by side, plus a Definitions page you can finally edit in place. Bot Management gets honest headline numbers, policies that act on geography from the very first request, and a Biometric Challenge that now reaches single-page and mobile apps. This article walks through each of these in a bit more depth than the release notes do.
One thing to plan for first: AAP 9.4 requires Cequence Defender release 6.5.0 or later. Upgrade Defender before, or together with, your AAP upgrade.
Take control of AI agents
AI agents are a growing share of application traffic. Some copy content to train models. Some index content for AI search. Some act for your customers, often signed in with the customer's own account. AAP could already detect these agents, but acting on one meant building a mitigation policy by hand. In 9.4, the Agents page becomes the one place to see every agent, understand what the agent is doing, and decide what happens to its traffic.
Start by getting the lay of the land. Each agent is labeled by type (Training Crawler, AI Agent, Indexer, or MCP Client), and you can filter by type or group by type to see traffic and mitigation totals for each kind of agent. New columns show threat activity, such as scraping or inventory abuse, and any suspicious behaviors. Expand an agent for detection confidence, traffic over time, Detection Highlights, and the agent's top URIs, IP addresses, and user agents. Agents that present a verified identity show their issuer right under the agent name.
When you're ready to act, one-click mitigation puts the decision in the Mitigation column. Choose Block, Rate limit, or Insert header, and apply the action to all applications or only to selected application tags. Not ready to enforce yet? Save the policy as disabled, watch the traffic, and turn the policy on later from the same panel. Each policy applies to one agent, and matches the agent's requests rather than the IP addresses the agent might share with your real users. Policies created this way show up in Mitigation Policies as Agent: <action> <agent name>, so nothing is hidden.
A few things to keep in mind. Insert header lets traffic through, so that traffic counts as Flagged, not Mitigated. Traffic counts on the Agents page are estimates from sampled traffic, but policies are enforced on all traffic. Some agents, including unclassified agents, don't offer one-click mitigation, and Mitigation Policies is still the place for those.
Detection keeps up, too. AAP 9.4 recognizes more AI agents, including coding agents, AI search crawlers, and AI browsing assistants, along with agentic and MCP client traffic. Detection uses behavior, network, and browser signals as well as the user agent, so AAP catches agents that pose as an ordinary browser and impersonators that borrow a well-known agent's name.
Meet Ask Cequence (Beta)
Ask Cequence is an AI assistant built into the console. Open the assistant from any page, ask a question in plain language, and Ask Cequence answers from your live tenant data across API Security and Bot Management. Ask Cequence calls the same services the console uses, so the numbers match what you see on the page. Ask Cequence replaces the API Security Assistant from earlier releases.
Ask Cequence starts from the page you're on, with suggested prompts and starter tiles for common tasks such as inventory cleanup, risk review, sensitive data, and authentication. Here are some things to try.
- Ask why an endpoint was flagged, and get the findings, the affected fields, and the supporting evidence.
- Ask which high-risk endpoints expose sensitive data without authentication.
- Resolve "no authentication" findings caused by a custom authentication header, with the related issues updated in the same flow.
- Have Ask Cequence create a block policy for an IP address or fingerprint you're investigating.
Ask Cequence never changes your configuration without your approval. Reads run immediately, but every write shows a confirmation card first, and higher-risk changes need a stronger confirmation. Every request runs with your permissions and is scoped to your tenant, and every change lands in Audit Logs marked as AI-assisted.
On SaaS, Ask Cequence runs on Anthropic Claude models hosted on Amazon Bedrock by Cequence, so there's nothing to set up. You can also bring your own Anthropic model through Customer Success. Support for on-premises deployments is planned for a future release.
Because Ask Cequence is in Beta, a few habits help. Include the time range in your question, and start a new thread when you change topics. Check rankings and long lists against the console before you act on them. Some actions stay console-only for now, including generating API definitions, deleting mitigation policies and traffic filters, editing or deleting existing configuration, and creating ITSM tickets.
One inventory for every endpoint
Answering "is this API at risk, is it being attacked, and is that attack being stopped?" used to mean hopping between the inventory, risk views, and bot mitigation dashboards. The Endpoints page under Discovery > Inventory now answers all of that on one row.
Across the top, summary tiles break the inventory down three ways: by source type (Internal, External, Third Party, Undetermined), by risk posture (High Risk, Shadow, Sensitive Data, No Auth), and by threat protection (Mitigated, Flagged, Unprotected, Agentic Traffic). Select any chip to filter the table. The Unprotected chip is a great place to start, because it shows endpoints that are receiving malicious traffic that no policy is acting on.
Each row shows traffic and error rate, first and last seen times, the traffic source, the threats seen and the action taken, the linked API definition, and any AI agent traffic. Time frames help you find what's active in the last 24 hours, week, or two weeks, and what's gone quiet for 30 or 90 days. Open any endpoint for Summary, Threats, Risks, Request, Response, and Transactions tabs, and step through endpoints with Previous and Next. When you need the data somewhere else, export to CSV.
Expect your endpoint count to grow a little after the upgrade. AAP now tracks endpoints for each method, host, and path, so the same path served on several hosts appears as separate endpoints. Per-endpoint error rates come from Cequence Defender release 6.5.0.
API definitions you can keep current
API definitions are only useful while they match the APIs they describe. Until now, keeping them current meant editing files outside AAP and uploading them again, one at a time. In 9.4, the Definitions page is rebuilt to manage definitions over their whole lifecycle.
The definitions list shows each definition's owner, team, source, version, documented and shadow endpoint counts, open issues, and last update. Summary cards for total, shadow, stale, authentication, and risk counts double as filters. Open a definition to compare its hosts, base paths, and endpoints against what AAP actually observes in traffic, including authentication, sensitive data, and last-seen time.
From there, the everyday edits happen in place.
- Update the name, title, owner, team, contact, and description.
- Add or remove hosts, base paths, and endpoints.
- Set authentication to Required, Optional, or None, and manage required and optional headers.
- Pull shadow endpoints into the definition, so the endpoints become documented without a round trip through a file.
And when you have dozens or hundreds of definitions, bulk operations handle the volume. Import many OpenAPI 3.0, 3.1, 3.2, and Swagger 2.0 files at once, matched to existing definitions or added as new ones, and pause, resume, skip, cancel, or retry the job as needed. Download a selection as a single archive, or delete several definitions at once and optionally clear their issues. Every edit, import, and delete is recorded with who made the change and when, and the same operations are available through the API.
Mitigated now means stopped
Every security dashboard has a headline number, and for bot management that number was Mitigated. The catch was that Mitigated counted every policy action, including actions such as Allow and Insert Header that let the request through. The number looked bigger than the traffic that was actually stopped, which made it hard to tell how well your policies were working.
In 9.4, the single bucket splits in two.
| Category | What happened to the request | Actions included |
| Mitigated | Stopped or diverted before the request reached your application. | Blocked, Rate-Limited, Honey-Trapped, Challenged (Fail) |
| Flagged | Allowed through and marked so you can act on the request downstream. | Header-Inserted, Allow (Logged), Challenged (Pass) |
You see the split everywhere the numbers appear: Summary, Detection, Mitigation, and Bot Policies, where each policy now shows its own Mitigated and Flagged counts. The refreshed Application Bot Protection Summary Report uses the same split and opens with an executive summary of the traffic Cequence acted on.
Expect your Mitigated numbers to drop after the upgrade. Nothing about your protection has changed. Traffic that was allowed or tagged has moved to Flagged, and Mitigated plus Flagged equals the old Mitigated total. The split is also a handy tuning tool: a policy with a high Flagged count and no Mitigated count only observes, and might be ready to move to enforcement.
Geo-based mitigation from the first request
Policies that targeted a country or an ISP used to take effect only after Cequence Defender had already seen the client IP address. The first request from every new IP address got through, which is exactly the gap that attackers who rotate IP addresses rely on.
The new Geo Location criterion closes that gap. Defender looks up each request's country, organization, and autonomous system number (ASN) and applies the policy right away, including for IP addresses Defender has never seen. Pick values from a searchable list, so a typo can't create a policy that never matches, and match values in the list or everything not in the list. Combine the geo criterion with path, method, host, or header criteria to scope a policy to the endpoints that matter, such as login, sign-up, or checkout. Defender keeps the geolocation data current automatically.
A few things to keep in mind. Geo Location criteria require Cequence Defender release 6.5.0 or later. A "not in" criterion also matches requests from IP addresses with an unknown location, so scope negated policies to specific endpoints. An organization is the entity that an IP range is registered to, which isn't always the network operator, so use the ASN when you want to target a whole provider. And when Defender sits behind a CDN or load balancer, verify that client IP extraction is configured so that Defender sees the original client IP address.
A Biometric Challenge for every kind of app
The transfers, checkouts, and account changes that attackers want now run as API calls from single-page apps and native mobile apps. In 9.4, Biometric Challenge follows them there. Cequence Defender detects the client type and responds accordingly: browsers get the challenge page as before, while SPAs and iOS and Android apps get a 401 JSON response with a challenge URL. Your app opens the URL (in a popup for SPAs, or in the system browser for mobile apps), the user passes a passkey check, and later requests go through until the session expires. Your app team handles the 401 response, so loop them in early.
The challenge page also speaks your users' language now. Publish the page in any of 13 languages (Arabic, Bengali, English, French, German, Hindi, Japanese, Persian, Portuguese, Spanish, Tamil, Telugu, and Turkish), and the page picks the language from the user's browser, with English as the fallback.
And when the standard look doesn't match your brand, switch the template to Custom HTML and write your own HTML and CSS, with a live preview as you go. Cequence still adds and runs the verification box when the page is served. Scripts, forms, and frames aren't allowed, which keeps the verification secure.
One note on templates: Defender serves one challenge page, so 9.4 supports one challenge template for each installation, and a Custom HTML template replaces the Simple template. When you had more than one template before the upgrade, the upgrade keeps the most-used template and points every policy at that template. For SPAs, the SPA and the API must share a registrable domain, and users need a passkey-capable device.
And a few more things
Beyond the headline features, 9.4 includes a long list of improvements. Here are some worth knowing about.
- On the Mitigation dashboard, you can enable, disable, or edit a policy right from its details panel.
- Detection Highlights on the Detection dashboard summarize the strongest signals behind a detection.
- The Risk Rules page pins enabled categories at the top, rule names drop framework references, and Risk Posture shows only the categories you've enabled.
- The API Security Summary Report now shows trends over time and tracks how issues are opened and resolved.
- Long-term retention of issues and issue evidence is back.
- On-premises installs use less storage for high-volume data, and the Helm chart no longer contains static passwords.