Background/Goal
Understand the needs and requirements for a v1 of API Guidelines to be shared and workshopped across stakeholders and tested on new API builds. This work will happen alongside T322998: Interview API Producers
API Guidelines | Product Brief
User stories
- As an API Provider, I need to know best practices for making APIs within the Wikimedia ecosystem, so I can make APIs that are fit for purpose, self-service and easy to use, and can be maintained collectively.
- As an API User, I need to know how the APIs are built and maintained, so I can leverage the best practices to suit my needs.
Considerations
- What content critical vs nice-to-have?
- What content will have the biggest impact?
- What content has the most dependencies?
- How can we scope this work in a way that delivers incremental benefits?
- How has WMF already defined API Guidelines?
- What are the current industry standards?
Requirements
draft a potential proposal that includes:
- A brief description of what the use case is
- Bullet list of potential/expected end-user impacts (both positive and negative)
- Bullet other internal/external impacts
- List of what this blocks (if anything) and why. Include examples.
- Lit review of existing WMF API Guidelines and Docs
- Literature review of other API Guidelines and frameworks
- Document links to existing artifacts, tickets, etc.
- Open questions/additional areas to explore
Upon completion of the above:
- Product Manager review
- Once scope completed and agreed to, next steps defined (ex: create Epic w/ subtasks)
Acceptance criteria
- It is clear to see how the work will impact end-users
- It is clear how the work impacts WMF staff
- Impact can be delivered incrementally, without having to wait months or to the end of a project to see impact
- Non-technical audiences can understand why this work matters and how it impacts the community
Documentation for Review
Community/API guidelines
API:Etiquette
Before you build
Use content and data
Use wiki content
Core REST API in Mediawiki/Design principles
Good API, Great API
https://www.mediawiki.org/wiki/API:Main_page
Action API Auto-Docs and Sandbox
Open questions
How will we approach internationalization?
How will we ensure accessibility?