`/apis` support in newer version of Kong 0.14.1

Hi Folks, we were using the older version of Kong 0.11 which has concept of apis, upstreams, plugins etc. We are now upgrading Kong to 0.14. From the docs, looks like /apis route is no longer supported and is replaced with services and routes, But when you make a request for admin endpoint with /apis as the path, it still works. Is it safe to still rely on this path for fetching apis from Kong on version 0.14?

+1 i’m also have same doubts

Apis resource is deprecated, they have not stated when/if they will decom the apis resource. My suggestion would be to move to newer service + routes resources if you have the bandwidth to do so.

That is exactly the case - the /apis endpoint is still present in 0.14.x but it’s considered deprecated - meaning it can be removed in a future version. Everyone is strongly encouraged to move to routes + services.

Is there a migration plan or document to migrate from Apis and upstreams to Services and routes ?

We’ll possibly release some migration docs when we completely drop the /apis endpoint.

In the meantime, here’s a quick guide:

  • For each distinct upstream_url you have on your Apis you will need at least one Service.
  • If two APIs have the same upstream_url, you can either:
    • transform them into two distinct Services, each with one route, or
    • make two routes inside a single Service.

If you “group” APIs under a Service, you will be able to install plugins for that service. If you leave them “separate” and you want to install the same plugin in both, you will have to install the plugin twice, and maintain two independent instances of the plugin.

See this blog post for more details: https://konghq.com/blog/kong-ce-0-13-0-released

Thanks for the suggestions.

We have a CI setup for applying Kong acls to different environments. It was built to support concepts like apis, upstreams and plugins. As suggested by you, we will migrate our CI/CD app to support services, routes so as to use the new Kong 0.14.1 concepts.

My concern is more around, we are planning to go live with Kong 0.14.1 relying on apis, upstreams and plugins concepts from previous versions. We have tested this setup and it works. Wanted to know whether it is a high risk thing to rely on apis, upstreams with Kong 0.14.1 for now ?

Concern is more around, if we go live with apis, upstreams with Kong 0.14.1 (Using this exact version and not changing it), is there possibility of Kong failing or maybe apis, upstreams being removed ?

thanks

no. The 0.14.x will only get backwards compatible changes. As mentioned by others apis are deprecated, but they will not be removed before 0.15 (which will likely contain breaking changes from 0.14.x).

So if you stick to 0.14.x, apis will remain in there.

btw I’ve created a simple python script to migrate APIs to Services/Routes here: https://github.com/pajel/kong-api-to-service-migration feel free to try it out…

We plan on introducing such a migration in our next Enterprise release. Eventually, such a migration would also find its way in the community edition (probably as soon as we are done writing it!).

Cheers,