API7 Enterprise Release Notes
3.8.9
Release Date: 2025-08-11
Features
Data Plane
- Supported Kubernetes 1.18 in API7 Enterprise Ingress Controller.
- Backported Chaitin WAF plugin from APISIX to API7 Enterprise.
Plugins
- JWT Auth
- Added
store_in_ctx
parameter to store validated JWT object in request context. When set to true (default is false), the plugin stores the validated JWT object in the request context, useful for custom plugins that need to parse JWT to extract permissions.
- Added
- Workflow
- Added support for
limit-conn
plugin integration, allowing dynamic connection limit strategies based on user requests and current APISIX load pressure.
- Added support for
Dashboard
- Added audit log record TTL configuration option, allowing users to set automatic deletion time for audit log table data. Default value is 60 days.
- Optimized Dataplane manager SQL statements when updating cached Consumer data.
Developer Portal
- Added support for CAS login.
Fixes
Data Plane
- Fixed issue: Error information could not be properly recorded when reading request body in
ctx
variables.
Plugins
- OAS Validator
- Fixed issue: Adjusted error level for detailed response errors from
error
towarn
whenverbose_errors
is enabled.
- Fixed issue: Adjusted error level for detailed response errors from
- JWT Auth
- Fixed issue: Plugin failed to validate
exp
claim whenclaims_to_verify: ["exp"]
is set.
- Fixed issue: Plugin failed to validate
- Consumer Restriction
- Fixed issue: Improved error messages when using
consumer-restriction
withbasic-auth
plugin. Whentype
is set toconsumer_group_id
with blacklist configuration, non-blacklisted consumers now receive appropriate error messages.
- Fixed issue: Improved error messages when using
- Kafka Logger
- Fixed issue: Performance degradation when
max_pending_entries
is enabled in service configuration with many routes. The issue was caused by each route creating separate batch processor buffers due to plugin conf deepcopy during service and route merging.
- Fixed issue: Performance degradation when
- Limit Count Advanced
- Fixed issue: Plugin panic triggering shared memory deadlock.
Dashboard
- Fixed issue: Chinese labels imported from OpenAPI files were displayed as Chinese pinyin instead of original Chinese characters.
- Fixed issue: Route information occasionally stuck in loading state after frequent route switching.
- Fixed issue: PUT API could create credentials for non-existent consumers.
- Fixed issue: Language switching inconsistency where switching to English on login page would revert to Chinese after login.
Developer Portal
- Fixed issue: SAML/OIDC logout did not properly sign out from IDP login state. After SSO logout, only Control Plane login state was cleared while IDP login state remained, causing automatic login success when clicking SSO login button again.
3.8.8
Release Date: 2025-07-28
Features
Data Plane
- Supported Consul service discovery deduplication and node sorting.
- Supported accessing
uri_param_*
variables when usingradixtree_uri_with_parameter
router. - Upgraded the base image for the API7-EE-3-Gateway to Ubuntu 24.04.
Developer Portal
- Supported viewing current API usage statistics for developers in applications.
- Upgraded Scalar to version 0.7.25.
Dependencies
- Upgraded Casbin to version 1.41.9.
Dashboard
- Optimized Ingress gateway group deployment scripts by adding
config.controllerName
.
Fixes
Data Plane
- Fixed issue: Corrupt data in
routes()
response due to health checker data. - Fixed issue:
grpc-web
responses could contain duplicate trailer chunks. - Fixed issue: Inconsistent response headers for different strategies in the
proxy-cache
plugin.
Plugins
- API Breaker
- Fixed issue: The
api-breaker
plugin failed to trigger correctly due to an inaccurate time point (breaker_time
) in the implementation.
- Fixed issue: The
- AI Proxy
- Fixed issue: Fix
upstream_response_time
being empty by addingapisix_upstream_response_time
variable to measure the time APISIX takes to communicate with the upstream and receive the response.
- Fixed issue: Fix
Dashboard
- Fixed issue: Concurrent requests to generate deployment scripts for a new gateway group could result in duplicate keys.
- Fixed issue: Repeatedly clicking "View ID" across different routes would accumulate route IDs.
- Fixed issue: Creation and update timestamps were incorrectly positioned in the resource details.
- Fixed issue: Audit logs were not recorded for plugin operations (create/delete/edit) in published services.
- Fixed issue: Infinite redirect during CAS login caused by an abnormal server timestamp.
- Fixed issue: Resource selector on the monitoring page was too narrow, causing text truncation.
3.8.7
Release Date: 2025-07-17
Features
Data Plane
- Supported component upgrade sequence control to ensure dp-manager waits for database migration before startup.
Plugins
- Limit Count Advanced
- Added support for Redis Sentinel mode.
Dashboard
- Supported OpenAPI editor pre-fills previous data for service OpenAPI specifications, avoiding full re-entry for simple modifications.
- Supported configuring and enabling Content Security Policy (CSP) by default.
- Supported displaying both Gateway API and Ingress deployment scripts for Ingress Controller gateway groups.
Developer Portal
- Supported deleting developers in the Provider Portal.
- Introduced an "Application" resource to manage API product subscriptions and credentials at the application level.
Fixes
Security
- Fixed issue: Some Control Plane APIs (
/api/license
,/api/system_infos
,/api/developer-portal-url
) could be accessed without authorization.
Data Plane
- Fixed issue:
delay_encode
could only be used once per log line. - Fixed issue: Metrics failed to report after startup due to certificate issues.
Plugins
- Zipkin
- Fixed issue:
zipkin_trace_id
appeared garbled inaccess.log
.
- Fixed issue:
- Forward Auth
- Fixed issue: Forwarding POST requests with
forward-auth
plugin may result in 504 errors caused by the request body being lost. Resolved by introducingextra_headers
.
- Fixed issue: Forwarding POST requests with
Dashboard
- Fixed issue: Deleting source code while editing a custom plugin cleared the entire form.
Developer Portal
- Fixed issue: Unauthenticated users could see non-subscribable products after filtering for subscribed API products.
- Fixed issue: The "Clear All" button has been removed for API products with a single filter, as its function overlaps with selecting "All" conditions.
3.8.6
Release Date: 2025-06-27
Features
Plugins
- Elasticsearch Logger
- Added support for Elasticsearch 9.0.2.
Fixes
Data Plane
- Fixed issue: Worker process not exiting when executing quit or reload command.
- Fixed issue: Port values greater than 65535 were incorrectly accepted.
- Fixed issue: etcd data sync failure when keys contain special characters.
- Fixed issue: Kubernetes service discovery performance degradation due to watch progress re-listing all data.
- Fixed issue: Memory leak in Kafka Logger causing nginx worker crashes.
Plugins
- OpenID Connect
- Fixed issue: Sessions not properly closed on errors, leading to resource leaks.
Dashboard
- Fixed issue: Clicking "Delete" on plugins only disabled them instead of removing them.
- Fixed issue: Incorrect or missing namespace/service data in upstream when using Kubernetes service discovery.
Security
- Fixed issue: TLSv1.3 cross-SNI session resumption vulnerability (backported HTTP fixes from nginx 1.21.4).
3.8.5
Release Date: 2025-06-16
Features
Dashboard
- Added route URI information to alert messages for status code-related alert events.
Fixes
Dependencies
- Upgraded OpenSSL from version 3.2.3 to 3.2.4.
- Upgraded Debian base image to Bookworm.
Data Plane
- Fixed issue: Severe performance impact occurred when OAS plugin spec files are too large.
- Fixed issue:
post_arg
matching fails when content-type contains charset. - Fixed issue: Consumers did not share the same counter in the
limit-count
plugin. - Fixed issue: Missing etcd
init_dir
prevents listing resources. - Fixed issue:
real_payload
can be overridden by malicious payload in thejwt-auth
plugin. - Fixed issue: Incorrect variables and redundant TLS configs in
upstream_schema
.
Dashboard
- Fixed issue: Route plugin updates in services mistakenly override existing plugins.
3.8.4
Release Date: 2025-06-11
Fixes
Data Plane
- Optimized the performance of large table data migration during control plane upgrades.
- Added caching logic to
post_arg
to optimize performance and prevent repeated inefficient parsing. - Fixed issue: The cache for
ctx
variables prefixed withhttp_
andgraph_
is not effective. - Fixed issue: Prometheus metrics are not properly retained after degradation and recovery.
Dashboard
- Fixed issue: The plugin's editing method (form or code) is not displayed correctly.
- Fixed issue: Error in the code suggestions in the Response Rewrite plugin editor.
3.8.3
Release Date: 2025-06-04
Features
Data Plane
- Supported the configuration of
apisix.disable_upstream_healthcheck
inconf/config.yaml
to disable all health checks with a single switch. - Optimized Prometheus performance by mitigating high memory consumption.
- Released API7 Ingress Controller 2.0.
Plugins
- Automatically inserted
_meta
into the schemas of custom plugins.
Dashboard
- Optimized the deployment process for ingress controller type of gateway groups.
- Added alert policy event trigger "license will expire".
Fixes
Data Plane
- Fixed issue: Occasional route matching error when reading body for GraphQL requests with
post_arg
.
Dashboard
- Fixed issue: Upgrade dependencies
ramda
to0.30.1
andcross-spawn
to7.0.5
to avoid high-risk vulnerabilities. - Fixed issue: The
max-age
field is displayed incorrectly when configuring thecors
plugin details using the dashboard form. - Fixed issue: After upgrading ADC from version 17.x to 19.x, the Dashboard continues displaying outdated configurations when multiple routes under the same service are updated simultaneously.
- Fixed issue: Unable to view plugin configurations within a service with the
gateway:GetPublishedService
orgateway:GetServiceTemplate
permissions in the dashboard. - Fixed issue: API7 Enterprise built-in plugins do not work properly when two custom plugins contain faulty code.
- Fixed issue: Kubernetes service discovery experiences performance issues with a high number of upstream nodes.
- Fixed issue: Headers have inconsistent casing. They are standardized to title case.
3.8.2
Release Date: 2025-05-19
Features
AI Plugins
- AI Proxy Multi
- Added retry logic for 429/5xx response codes to improve request success rate.
AI Gateway
- Added support for reverse proxying AzureAI services.
Dashboard
- Supported CAS as an SSO login option for API7 Enterprise.
Fixes
Dashboard
- Fixed issue: Failed to update basic information of published services.
- Fixed issue:
retry_timeout
andretries
cannot be edited in the stream service upstream. - Fixed issue: Page crash when gateway instance is missing compatibility field.
Data Plane
- Fixed issue: Long startup time for standalone mode with large configuration files.
- Fixed issue: OAS Validator plugin incorrectly rejecting numbers between 1.11-1.19 with
multipleOf: 0.01
rule. - Fixed issue: AI Proxy plugin would accept invalid endpoint URLs (e.g. missing colon in "http//localhost").
3.8.1
Release Date: 2025-05-07
Features
Dashboard
- Specified the validity period of the gateway instance certificate when adding a gateway instance.
- Added a warning in the gateway instance list when the certificate is about to expire.
- Supported viewing the certificate renew method for gateway instances in the dashboard and generating new gateway instance certificates.
Fixes
Data Plane
- Fixed issue: Health checks do not work as expected when using TCP services, and requests are still forwarded to unhealthy upstream nodes.
- Fixed issue: High latency in gateway requests due to Redis service failures.
- Fixed issue: Error in determining the default value of
llm_time_to_first_token
in AI Gateway.
Plugins
- Removed the
snowflake
algorithm frome therequest-id
plugin due to potential risks.
Dashboard
- Fixed issue: The total bandwidth chart data on the monitoring page was inconsistent with Prometheus.
- Fixed issue: When forced publishing is enabled, modifications to the Route’s timeout and plugin configurations are not allowed in the published service.
3.8.0
Release Date: 2025-04-22
Features
Data Plane
- Supported using values from an array object within the user request body in routing conditions. While
post_arg
was already permitted in routing conditions, this update introduces support for array scenarios for the type field's location. - Supported the recording of additional AI request context information within access logs.
- Supported adding a request type identifier to Prometheus metrics to collect more granular data on AI requests.
Plugins
- AI Proxy
- Implemented new identifier fields
logging
andsummaries
for collecting LLM request and response content.
- Implemented new identifier fields
- AI Proxy Multi
- Supported HTTP POST method for health checks.
- Displayed a record at the warning log level if the fallback was triggered.
- Implemented a new identifier field for collecting LLM request and response content.
- AI Aliyun Content Moderation
- Added support for streaming (HTTP SSE) scenarios.
- AI Prompt Guard
- Introduced new plugin.
- Kafka Logger
- Supported reading the user request and response body content cached in
ctx
and pushing it to the specified Kafka service.
- Supported reading the user request and response body content cached in
Dashboard
- Added detailed statistics for service name and route name in status code alert messages.
- Optimized plugin configuration: When configuring Traffic Split plugin on a service or route, verify that the
upstream_id
configured indeed belongs to the current service's upstreams. - Aligned the upstream connection configuration field names with the API in published services.
- Introduced a form-based UI for CORS plugin configuration.
Fixes
Data Plane
- Fixed issue: When the upstream type was Kubernetes service discovery, nodes in health checks were not updated after node changes, resulting in many health check failure logs.
- Fixes issue: An error occurred when the
shared_size
parameter for Kubernetes service discovery was adjusted to 100m.#11857 - Fixed issue: APISIX/API7 Enterprise with Kubernetes discovery will fail after token file expires. #11779
- Fixed issue: After updating the
prefix
of Vault secret provider, the data plane continued to use the old configuration.
Dashboard
- Fixed issue: The
retries
field in the upstream was incorrectly set as required. - Fixed issue: An error occurred on the published service page due to lack of service template permissions.
- Fixed issue: Updating the service discovery service name in published services did not take effect.
- Fixed issue: Creating multiple records with rapid clicks.
- Fixed issue: High database CPU utilization when using large scale of consumers.
- Optimized the wildcard configuration method for Permission Policy:
- Wildcard configuration using
*
is now supported in authorization statements, with the same meaning as the current<.*>
; - The asterisk
*
is restricted and not allowed in any resource ID fields to prevent authorization failures.
- Wildcard configuration using