Page MenuHomePhabricator

Design information architecture for cross-collection API docs navigation flows
Open, Stalled, MediumPublic

Description

This task focuses on defining a navigation and content structure for Wikimedia API documentation, to better help users:

  • understand the available APIs and more easily identify one that is likely to meet their needs
  • navigate to API documentation (including API sandboxes) for any Wikimedia API from a central entry point
  • more easily find API documentation regardless of where it is published (on-wiki, on a generated site, etc)
  • build a consistent mental model that makes it easier to anticipate where a given piece of information about an API is likely to be found --------------------------

Background context from listening tour / roadmap
Pain point: "We have work ahead of us to more clearly document and differentiate our APIs and intended use cases. All of the listening tour participants expressed confusion about the differences between the REST and Action APIs, or when one should be used over the other in instances where they offer similar capabilities. To re-emphasize this point, nearly ⅔ (59%) of developer satisfaction survey respondents also disagreed with the statement “It’s clear which endpoint or API I should use; they are easy to differentiate.” 

Opportunity: Differentiate API purpose and use cases

  • "Our docs should provide more opinionated guidance for when one solution should be used instead of or in parallel with another. E.g., in high volume situations we may recommend using the REST API over the Action API as a more performant and sustainable solution.
  • Clearly document and differentiate our APIs and intended use cases: API catalog/entry point should introduce the purpose and intended use of each API, clearly differentiating it from others.
  • Clearly describe and differentiate endpoints: Provide clear endpoint definitions and specify intent, introduce recommended use cases." **

Background / context from related historical API portal projects**:

  • https://wikitech.wikimedia.org/wiki/API_Portal/Retrospective: Emphasizes information architecture based on two main pathways to discover information: "Learn" pathway focused on understanding the Wikimedia ecosystem and finding the right endpoints for your use case. Hides the underlying complexity of the different APIs available and the boundaries between them. "Catalog" pathway intentionally exposes the complexity that the Learn path hides. It lists each API separately with an API homepage and reference docs.
  • https://www.mediawiki.org/wiki/Web_APIs_hub: IA based around three sections: Inspire, Explore, Build. Explore: where users can play with the API(s) in functional sandboxes; Build: where all the static official documentation and pointers to data sets reside. "Documentation at different technical levels" and "An organized list of APIs and datasets available."

Details

Other Assignee
Sarai-WMF

Event Timeline

TBurmeister changed the task status from Open to In Progress.
TBurmeister claimed this task.
TBurmeister triaged this task as Medium priority.
TBurmeister added a project: OKR-Work.
TBurmeister moved this task from Backlog to Active projects on the Tech-Docs-Team board.
TBurmeister moved this task from Active projects to In progress on the Tech-Docs-Team board.
TBurmeister renamed this task from Design initial information architecture for standardized API documentation to Design information architecture for cross-collection API docs navigation flows.Aug 12 2025, 3:31 PM
TBurmeister removed a project: OKR-Work.
TBurmeister updated the task description. (Show Details)

Note to self: when defining collection-level IA for API docs collections, revisit and consider how/whether to integrate this guidance and structure: https://wikitech.wikimedia.org/wiki/API_Portal#Self-service_process, and also how that guidance should or shouldn't be included in any API doc guidelines or style guidance.

Early, work in progress brainstorming doc for how we may benefit from a data model that describes Wikimedia APIs in a standard way, and ideas for how having that could enable different on-wiki browse options for discovering APIs without having to understand all of them: https://docs.google.com/document/d/18SnHnLi2hJBoEPePRoX0Ca7tWXGRN7TWIE0HyynZLtQ/edit?tab=t.0 (Google doc, publicly visible and open to comments)