Nuxeo Server

Contributing a New Endpoint

It is possible to contribute a new endpoint to the API by creating new web objects.

Thanks to WebEngine and its pluggability, we've provided a way to add other root endpoints that benefit from the same infrastructure. It's just a matter of providing a web object in another bundle, like the following:

public class ProductRoot {

    public List getProducts() throws ClientException {
        ProductService ps = Framework.getLocalService(ProductService.class);
        return ps.getAllProducts(getContext().getCoreSession());

    public Object getProduct(@PathParam("productId") String productId) {
       return newObject("product", productId);


This will expose two new APIs:

GET /nuxeo/api/v1/product
GET /nuxeo/api/v1/product/{productId}

Since Document Adapters are used as return types, the API will automatically benefit from the integrated adapter serializations (readers and writers). That means that it's very easy to build your own API and you inherit all the other pluggability mechanisms.

2 months ago Manon Lumeau Fix typo on HTTPs
6 years ago Solen Guitter 7
6 years ago Solen Guitter 6
6 years ago Alain Escaffre 5
6 years ago Alain Escaffre 2
6 years ago Alain Escaffre 3
6 years ago Alain Escaffre 4
6 years ago Alain Escaffre 1
History: Created by Alain Escaffre

We'd love to hear your thoughts!

All fields required