A new feature for SilverStripe should be ...

Improve REST/API support

There's two existing modules, both of them fall short of designing a modern API: https://github.com/silverstripe/silverstripe-restfulserver
https://github.com/nyeholt/silverstripe-webservices

The number of API consumers is rising due to increased usage of frontend libraries like Backbone/Ember/Angular, and SilverStripe can be a powerful tool to drive those frontends if it had better API development support.

Specifically, add the following:
- More modularity (RESTfulServer is one monolithic class for all content types)
- Content negotiation
- Caching headers
- More powerful field mapping
- HAL to describe relationships and references
- Pluggable authentication (ship with OAuth by default?)

Alternatively, we might look into creating adapters for external libraries like https://apigility.org/.

73 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    I agree to the terms of service
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    AdminIngo Schommer (Admin, SilverStripe) shared this idea  ·   ·  Admin →
    under review  ·  AdminIngo Schommer (Admin, SilverStripe) responded  · 

    We’re doing some GraphQL API work instead of REST support for SilverStripe 4: http://silverstripe.uservoice.com/forums/251266-new-features/suggestions/16924327-graphql-api-support

    GraphQL is an alternative to REST, and well suited for modern frontend architectures. There’s still valid use cases for REST in SilverStripe, but from a core perspective we’re unlikely to build out core support for a REST layer in parallel to GraphQL, so moving this back from “planned” to “under review”.

    8 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      Submitting...

      Feedback and Knowledge Base