Deprecating routes.json, adding support for OpenAPI
Zuplo is going native in support for the OpenAPI standard. This means we will be deprecating support for our proprietary routes.json
file format.
The old routes.json
file contained both the route information and policies. This will change in the new version with policies being defined in a separate policies.json
file and the routes defined in one or more *.oas.json
files. New projects will automatically get a routes.oas.json
and policies.json
file.
You can still use the old routes.json
format until it is formally deprecated.
We identify new project simply by the presence of *.oas.json
files, so if your project has both a routes.json
file and OpenAPI files the routes.json
will be ignored.
You can delete the routes.json
file by deleting this file in GitHub and doing a Pull Hard.
If you need to create a new project with support for the old routing format, please contact support and we can share a template with you and guidance to recreate an old-format project in GitHub. Note - we will be removing support for routes.json
in mid-2023 when most customers are off-boarded.
We hope you're as excited about our support for open standards like Open API and Problem Details for APIs. As always, join our Discord to chat with the team about any question or concerns you have.
Migrating from routes.json
It's easy to convert your project from the old routes.json
format to use our new OpenAPI support. We have provided a CLI tool that can be invoked via npx
.
Simply execute the following cmd in your root Zuplo folder (at the level of the /config
and /module
folders):
npx @zuplo/cli@latest convert
This will generate a new routes.oas.json
and policies.json
file in your /config
folder based on your routes.json
file. Use git to add these to your repo and do a Pull Hard to sync these changes with your working copy (in portal.zuplo.com). Once your ready and confident everything is working, you can delete the routes.json
file and sync via git/GitHub again.
You're now on the OpenAPI train 🚂 (choo choo).
For more on GitHub Source Control integration see GitHub integration.