It is a custom authoring solutions for API documents to enable the creation of clean, structured, and easily maintainable API documentation. It leverages OpenAPI, React and Markdoc's extensibility with Markdown syntax to streamline collaboration and improve developer onboarding experiences and ease of consuming APIs.
Background
Freshworks has several SaaS solutions such as Freshdesk, Freshservice, Freshchat, Freshworks CRM, Freshteam and so on. Each of these product has a developer ecosystem powered by Freshworks Neo Platform. Each of these products offer API documents available for public consumption.
The API Documents are available as part of Freshworks Products API docs respectively available as separate sites as listed below
Despite having multiple produts they are all built and served via single platform. The website content as written as plain HTML ruby files powered by Middleman server. The tech stack got deprecated in 2019 and required manual build and deployments resulting in longer rollout windows and delayed production timelines. Furthermore the API docs are written in non-user friendly manner, creating confusion and increased customer/developer churn rate.
To overcome this problem, we built a custom in house tool for API documentation powered by OpenAPI, Markdoc and React. It utlises modern tech stack and deployment principles with reduced complexity and granular control over the UX and DX of developer docs.
Benefits for Freshworks
- Improved Developer Experience: Developers can easily find the resources they need, reducing friction in integration and app development.
- Accelerated Adoption: Streamlined resources encourage more developers to adopt and build solutions using Freshworks' APIs and platforms.
- Consistency: A unified solution ensures uniformity in documentation style, quality, and branding across all products.
- Scalability: Supports rapid updates and scalability as Freshworks introduces new APIs, features, and products.
- Collaboration: Enables cross-functional teams (product, support, DevRel) to collaborate on maintaining up-to-date and helpful documentation.