Docs: Create a template for consistent REST API documentation
Result
https://docs.gitlab.com/ee/development/documentation/restful_api_styleguide.html#api-topic-template
Problem to solve
Should we create a complete template with examples for our API docs, so that they're all consistent? We have quite different patterns in the API docs so I propose that we write a complete template to add to what we have so we can all follow the same standard.
Further details
Examples of inconsistencies:
- https://docs.gitlab.com/ee/api/pipelines.html
- https://docs.gitlab.com/ee/api/releases/links.html
- https://docs.gitlab.com/ee/api/search.html
- https://docs.gitlab.com/ee/api/users.html
- https://docs.gitlab.com/ee/api/wikis.html
Proposal
Evaluate the information included across resources and how it's presented, and use that to formulate a template. Offer the template to the TW Style Committee and to Ecosystem backend engineers for review, add it to the documentation guidelines, and plan issues to improve API resource pages to match.
Now that we have an OpenAPI-based endpoint, based on !35868 (merged), we should be able to use that to set up the desired template.
Who can address the issue
Docs guidelines folks.
Notes
Permissions and limitations
@mjang1 mentioned the use of Limitations here !37767 (diffs). @mikelewis said "I could see us converting the Valid Access Levels info to a table where the parameter-specific limitations would be part of each access level, OR building the limitations in to the parameter tables themselves." But will review other resource pages to get a more complete picture.