TODO¶
The following are tasks -priority ordered- that need to be done to complete the API guidelines. Each task should be following with the plan and responsible to complete the task.
- ✓ Consider using entity versions
- ✓ Consider requiring schema.org (decision: schema.org not suitable)
- ✗ Consider requiring another naming conventions
- ✗ Lots of little edits (see list below)
- ✗ Much more details around security (authentication, delegation, authorisation)
- ✗ Create a summary for the busy developer.
- ✗ Add more clarity around having multiple APIs acting together as one
- ✗ Add more stuff about non-json responses.
- ✗ Define a change procedure for these guidelines.
- ✗ Recommendations for (semi-)public developer portal.
- ✗ Consider adding information on testing
- ✗ Volume filtering.
- ✗ Bulk endpoint for mobile optimizations.
- ✗ Streaming endpoints.
- ✗ JSONP
- ✗ CORS?
Lots of small edits¶
- URL, URI
- ✓ Documentation should point to HAL documentation
- ✓ underscore means meta parameters (reserved for API)
- ✓ X-HTTP-Method-override
- ✓ _body parameters applies to every call
- ✓ PATCH/DELETE not being supported by browsers => Remove
- ✓ Clearer use of MUST/SHOULD/CAN (consistent)
- ✓ _include/ _exclude needs major revamp
- Resource Format
- ✓ Add something about that RFC martin just mentioned (URL templates), MUST
- ✓ Remove serialization from URLs
- ✓ Language of errors more clear
- ✓ Add status code as field for errors
- ? _link.help.href is pointing to an invalid URL (and more URLs)
- ✓ Link to type table
- ? help.href vs describedby, don’t know why. For now just documented that it is so.
- ✓ clarify the help page link
- ✓ Add link to currying in HAL
- ✓ Clarify section on custom link relation types
- ✓ Fieldnames cannot be duplicate
- ✗ Come up with field-names standard
- Interaction
- ✗ OPTION / HEAD calls missing
- ✗ TRACE not supported (security)
- ✗ Resource without etag => clarify body response is an error response
- ✗ GZIP/Deflate
- Documentation Requirements
- ✗ Recommend order of headers, documentation tools
- ✗ Clean up stuff at the bottom
- ✓ Expand further
- Versioning
- ✓ Requires follow-up
- Postponed:
- ✗ DELETE call => No more fetch
- GLOBAL:
- ✓ HTTPS on all examples
- ✗ fix all todos
- ✓ re-do the documentation in RST