Why isn't the Discourse API fully documented?

As with anything, it’s a matter of resources and priority. The API surface is huge. Technically, it’s everything - everything is accessed via the API, hence why reverse engineering works. We’ve chosen to focus our finite engineering time on fixes, features, performance etc, rather than on documentation. Our product direction is largely driven by our customers, and our community. To my knowledge, no customer has ever asked for 100% API documentation coverage. When customers do ask about something that is missing or unclear, we add it. Therefore, 100% coverage it hasn’t been a priority.

At this time, the API docs are manually curated. This is obviously not a sustainable method, but at the moment it’s what we have. Refactoring the API docs system to be generated programmatically is a “todo” item, but it’s not currently slated for any specific release, so there’s no timeline for completion.