Skip to main content

Request Body Validation Policy

The new Request Body Validation policy allows validating incoming request bodies based on the schema in your OpenAPI file. This policy can be configured to reject requests with invalid body schemas or write logs to your preferred logging provider.

Mock API Response Policy

The Mock API Response policy enables rapid mocking of an API using the examples inside of your OpenAPI document. Return a single example or random examples to build a proof-of-concept for your API or enable clients to begin development while the backend is being built out.

Firebase Upstream Authentication Policies

Proxy data or services from Firestore through Zuplo using two new policies.

API Analytics

Enterprise customers can now access rich analytics through the Analytics tab in the dashboard. Analytics make it easy to view:

  • Requests by response status
  • Top Users
  • Users who hit rate limits
  • Request latency

Portal Improvements

Over the past few weeks we have shipped a number of improvements to the portal including:

  • A new test running right in the Route designer
  • A project info page in the settings tab
  • Performance improvements when editing large OpenAPI files
  • Subfolder support in the modules directory

Account API Keys

API Keys for your Zuplo account can be created from the Zuplo Portal. These keys are used with the Zuplo CLI or the Zuplo Developer API.

Open API Handler

The new Open API handler allows serving the public version of your OpenAPI file through a route of your choice.

Open API from ZuploContext (Alpha)

The context.route property on the ZuploContext object now exposes the raw Open API operation JSON for use in handlers or policies.

export async function myHandler(request: ZuploRequest, context: ZuploContext) {
const raw = context.route.raw();
return raw;
}

Additional Geolocation Properties

The incomingRequestProperties property on the ZuploContext route now exposes several additional values:

  • postalCode - Postal code of the incoming request, for example, "78701".
  • metroCode - Metro code (DMA) of the incoming request, for example, "635".
  • region - If known, the ISO 3166-2 name for the first level region associated with the IP address of the incoming request, for example, "Texas".
  • regionCode - If known, the ISO 3166-2 code for the first-level region associated with the IP address of the incoming request, for example, "TX".
  • timezone - Timezone of the incoming request, for example, "America/Chicago".

Improved Policy Usage Visibility

The policy.json editor in the Zuplo Portal now shows when a policy is used inside of a composite policy.

Secure Tunnel Management

Secure Tunnels can now be managed using the Zuplo CLI or using the Developer API

String interpolated environment variables

When using environment variables in with string interpolation in routes.json or your OpenAPI file, i.e. "option": "my-$env(ENV_VAR)-value" undefined environment variables would result in the string "undefined" (Javascript's result of ${undefined}). Instead undefined variables will now result in an empty string.

Developer Portal Enhancements

Developer portal has been updated for improved performance and better error handling. Documentation improvements.

Environment Variable API + CLI

Environment variables can now be managed via the Zuplo CLI or the Developer API

New Account Settings section in Portal

Zuplo Portal now includes an account level settings with settings for billing.

Other

  • Added bcrypt.js library

  • Zuplo portal now supports sub-folders in the modules directory
  • Zuplo CLI now includes the ability to manage secure tunnels (Enterprise Only)
  • Environments can now be marked as "Protected" to prevent accidental deletions. Contact support@zuplo.com to enable protection on your environments.