Skip to content
This repository has been archived by the owner on Apr 27, 2023. It is now read-only.

RFC: API #8

Open
thewilkybarkid opened this issue Jun 29, 2018 · 0 comments
Open

RFC: API #8

thewilkybarkid opened this issue Jun 29, 2018 · 0 comments
Labels
rfc A request for comments

Comments

@thewilkybarkid
Copy link
Contributor

Problem

Libero needs to allow for services to read and modify data in other services.

Suggestion

  • Use standard HTTP methods (GET, POST, PUT, DELETE) as a mechanism to read and modify content
  • Adhere to HTTP, eg:
    • meaningful status codes
    • Content encoding negotiation
    • Language negotiation
  • Use RAML to describe APIs
  • Split entities into multiple endpoints, rather than having monolithic responses
    • eg separate article front matter, body, reference list
  • Contract first rather than implementation
    • Allows replacement of implementations

Concerns

  • RAML is an opinionated choice, but other existing options/standards don’t meet our requirements (eg OpenAPI)
    • eg OpenAPI is purely JSON focused, and doesn’t allow for composing schemas
  • Doesn’t appear to be a way to actually use RAML during testing, which reduces its value a lot
@thewilkybarkid thewilkybarkid added the rfc A request for comments label Jun 29, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
rfc A request for comments
Projects
None yet
Development

No branches or pull requests

1 participant