REST API#

A RESTful API for Plone.

https://github.com/plone/plone.restapi/workflows/Plone%20RESTAPI%20CI/badge.svg https://coveralls.io/repos/github/plone/plone.restapi/badge.svg?branch=master https://readthedocs.org/projects/pip/badge https://img.shields.io/pypi/v/plone.restapi.svg

Introduction#

plone.restapi is a RESTful hypermedia API for Plone.

Getting started#

A live demo of Plone 6 with the latest plone.restapi release is available at:

https://6.demo.plone.org/

An example GET request on the portal root is the following.

curl -i https://6.demo.plone.org/ -H "Accept: application/json"

An example POST request to create a new document is the following.

curl -i -X POST https://6.demo.plone.org/ \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -H "Authorization: Basic YOUR_BASIC_AUTH_TOKEN" \
    --data-raw '{"@type": "Document", "title": "My Document"}' \
    --user admin:admin

Note

You will need some kind of API browser application to explore the API. You will also need to first obtain a basic authorization token. We recommend using Postman which makes it easier to obtain a basic authorization token.

Installation#

Install plone.restapi by adding it to your buildout.

[buildout]

# ...

eggs =
    plone.restapi

…and then running bin/buildout.

Examples#

plone.restapi has been used in production since its first alpha release. It can be seen in action at the following sites:

Support#

If you are having issues, please let us know via the issue tracker.

If you require professional support, here is a list of Plone solution providers that contributed significantly to plone.restapi in the past.

License#

The project is licensed under the GPLv2.

Appendix and Glossary#

Index#