• Documenting details (including endpoints, code samples, error handling) at this point helps iron out questions early • Be strict about what's in scope Pro-tip: use this approach for internal interfaces too @lornajane
No such thing as too much information! Link to other reference materials, feel free to include diagrams • Include detailed examples for each endpoint • A quick-start tl;dr for the more experienced works well @lornajane
first time here, scan this section before you scroll further. The sections on [Client Libraries](libraries.html#-client-libraries), [API Reference](api.html#-api- and [Guides](guides.html#-guides) assume you know some basic things about Cloudant. ## HTTP API All requests to Cloudant go over the web, which means any system that can speak to the web, can speak to Cloudant. All language-specific libraries for Cloudant are really just wrappers that provide some convenience and linguistic niceties to help you work with a simple API. Many users even choose to use raw HTTP libraries for workin @lornajane
JSON objects are called [documents](document.html#documents). All documents must be contained in a database. ### Create > Create a database ```http PUT /$DATABASE HTTP/1.1 HOST: $ACCOUNT.cloudant.com ``` @lornajane
other tools • formed the basis of Open API Spec https://github.com/OAI/OpenAPI-Specification • https://apiary.io/ also with excellent tools, supports API Blueprint and Open API Spec • http://raml.org/ another API description language with great tool support @lornajane
• Write as many of your own tutorials as you can • Share and promote links to tutorials published elsewhere • Tutorials give developers examples they can use pieces from to build something new • Great example: https://www.twilio.com/docs/tutorials @lornajane
easy (ish) Next steps: • Create tests (I use https://www.runscope.com/) including the documented failure behaviours • Very rapidly ship the API in the last 20% of the time this project takes! @lornajane