Skip to content

Instantly share code, notes, and snippets.

@javiergamarra
Last active February 5, 2019 19:52
Show Gist options
  • Save javiergamarra/cb234ed2f97f3d779e883fd695d4ecb2 to your computer and use it in GitHub Desktop.
Save javiergamarra/cb234ed2f97f3d779e883fd695d4ecb2 to your computer and use it in GitHub Desktop.

New Headless API strategy

As some of you already know, we are focusing our efforts on a new headless API strategy.

This past year we have tested several approaches to simplify API development and offer our users powerful APIs: from extending JAX-RS, through a heavily-typed builder, to using annotations similar to JAX-RS. Along the way, several alternative approaches appeared, pure JAX-RS approaches, GraphQL or OpenAPI-first designs.

Having several API initiatives at the same time, although great for maximizing learning, also meant a difficult time offering a consistent and uniform experience for developers and end users.

That's why Brian decided to unify them in a common approach, trying to get the best of each of them. As of today, the common approach for APIs under liferay will be an OpenAPI first design, with JAX-RS endpoints created by a gradle/java generator. This new approach will be lead by Brian Chan and Peter Shin.

Headless team will migrate existing APIs to the new generator. We are iterating the generator as we go so we can't share a trustworthy estimate, we'll update our progress and estimates in the coming weeks.

After the migration, headless team members will join other portal teams. We think that we can focus on the APIs better and leverage the existing liferay knowledge, integrated under the portal teams.

We thank all the people that contributed to apio architect and the headless APIs. Let's continue building great APIs!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment