RESTful API Plugin

  • Tags: /
  • Latest: 0.10.0
  • Last Updated: 31 July 2014
  • Grails version: 2.2.0 > *
0 vote
Dependency:
compile ":restful-api:0.10.0"

 Documentation  Source  Issues

Summary

The resful-api plugin facilitates exposing a non-trivial, versioned RESTful API. The plugin provides a DSL that may be used to declaratively specify how resources should be marshalled. Please see the README.md for details.

Installation

Description

See https://github.com/restfulapi/restful-api/blob/master/README.md for complete documentation.

Key features of this plugin include:

  • A DSL-based configuration that is used to expose resources
  • Use of custom media types to identify representations (and versioning)
  • Declarative marshaling and extraction of versioned representations (JSON and XML)
  • Include, omit, and rename properties
  • Group and reuse marshalers
  • Add affordances (support HATEOAS)
  • Ability to configure custom marshallers and extractors when declarative configuration is not sufficient (e.g., PDF, iCalendar, binary formats)
  • Route API requests to a single controller that delegates to transactional services based on naming convention or configuration
  • An ability to configure service adapters to accomodate services exposing a different contract
  • Consistent use of HTTP status codes and headers, including caching headers and CORS
  • Ability to 'query by POST' (to allow query criteria to be provided within the request body)
  • Support for developing functional tests using Spock
  • Extensive regression tests to provide confidence when adopting this plugin