We have an internal API that is specifically for our website and internal applications, and we are planning to release a public api exposing some of the endpoints in our internal API.

We are using semantic versioning and our internal API is at version 6, would it make sense to just create a new project and start at version 1?

1 Answer 1


Since you said "some" of the endpoints, that means the internal API and the public API are already meaningfully different interfaces, in addition to having completely different user bases. Therefore, it's entirely possible that one may need to change in ways that should not have any effect on the other. So yes, it makes perfect sense to use separate version numbers for each API.

Just make sure that the way you expose these endpoints is sufficiently flexible that you will be able to make changes to the public API or the internal API without affecting the other, if you so choose. And you should have two completely distinct "public API declarations" (whether that means header files or API documentation or something else for your project).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.