# API Versioning with JAX-RS

DevFeed: [API Versioning with JAX-RS](<https://devfeed.tech/articles/the-quest-to-api-versioning-with-jax-rs-26088.md>)

Original publisher: [Read original article](<https://blog.arkey.fr/tomb/api-versioning-with-jax-rs/>)

Author: brice.dutheil@gmail.com (Brice Dutheil)

Published: 2017-11-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [The Coffee Workshop](<https://devfeed.tech/sources/the-coffee-workshop.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>), [Java](<https://devfeed.tech/topics/java.md>), [HTTP](<https://devfeed.tech/topics/http.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [http](<https://devfeed.tech/tags/http.md>), [java](<https://devfeed.tech/tags/java.md>), [server](<https://devfeed.tech/tags/server.md>), [versioning](<https://devfeed.tech/tags/versioning.md>)

## AI overview

This article examines API versioning approaches with JAX-RS, including separate backends, URL paths, query parameters, custom request headers, and media types through the Accept header. It focuses on avoiding breaking changes and discusses practical limitations in JAX-RS implementations such as Jersey and RestEasy.

## Source excerpt

The Quest to API versioning with JAX-RS In another post Nottingham adds that we shouldn't use a custom header for versioning and touches on versioning through the Accept header but there is a fundamental thread here: try as hard as possible to not introduce breaking changes so that versioning isn't a big issue.