We have released a beta for PDF generation for our enterprise clients! (See a sample here)
We currently build the PDF from the guides section of your projects
How do you use it?
You can request to build a PDF by navigating to the "Versions" page of your project. If you are an enterprise customer, you'll be able to see the "Build PDF" link. Once we've built the PDF, there will be a "Download PDF" link that you can use to retrieve the document.
We've templatized the global landing page! You can build out or update your global landing page to use content from your docs! You can now refer to categories, pages, the selected language, and other data dynamically.
Today we released a new major version of our API Explorer! This release has been months in the making, and adds support for some highly requested features, fixes a ton of bugs and oddities, and more!
allOf Support
This release adds allOf support in both the request and response to our API Explorer! This has been one of our most requested features at ReadMe, and we are very excited to finally release it!
Now no matter what the structure of your request body, ReadMe will do the correct thing and render the parameters as you would expect.
Our goal is to be as compliant to the OpenAPI Spec as possible, and this brings us significantly closer to that goal.
Error Handling
We’ve also added improved error tracking, so we can more easily be notified when an error occurs in the Reference section. When an admin is logged in, all errors will have a unique id that our Support Engineers can use to help debug the issue and get everything running smoothly again.
Last week, we migrated our application cache layer under Cloudflare's proxy umbrella! We already take advantage of their certificate management solution, so the next logical step was to move other pieces of our infrastructure into the same place.
TLDR
Our cache now serves more content and from a wider variety of edge locations! Across the board, all unauthenticated web traffic should see performance increases.
Portion of cached web traffic at our network layer
From Homegrown to Managed
Prior to migrating this cache layer, we owned a self-managed implementation consisting of a set of Nginx caches sitting behind a classic load balancer in AWS. All of the traffic going to our hubs (via standard ReadMe domain, or custom DNS), routed through this layer before settling at our origin servers.
Ultimately, there were a few drawbacks:
Request Protection: We built this a few years ago, so our implementation did not take advantage of some of the Web Application Firewall features AWS has introduced since. As a result, this layer did not have modern content firewall or DDOS protections.
Scaling: This layer, although programmatically scaled behind our load balancer, was a bottle neck. We could only scale it in and out so much.
Access Control: We were not able to dial in access control to the level we desired.
Thankfully, moving to a managed solution alleviated all of these issues! We now have extensive firewall and DDOS protections, that are seamlessly scaled and customizable.
Performance Improvements
From a functional perspective, caches store data in-memory. This allows for a metadata to dictate whether desired information is pulled from a very easily accessible source, or be fetched from the origin (which can take longer). Of course, our previous implementation did this, in part. But, it did it from a set of locations that were not optimized for where the web traffic came from.
We are now caching more, and doing so at edge locations near you. That means that any cached pages that are accessed are closer to you, and to your customers. Because distance travelled is reduced, latency is drastically reduced, and content is served faster!
You can now receive notifications for activity on your ReadMe project in your Slack workspace 🎉 this integration supports the following types of notifications off the bat:
Suggested Edits: when someone suggests new edits to your project
To connect your ReadMe project to your Slack workspace, go to your Project Integrations on ReadMe (Configuration > Integrations), and click the Add to Slack button:
Earlier this year, we purchased the readme.com domain for our homepage. Starting today, the ReadMe dashboard is accessible at dash.readme.com!
We recommend updating your bookmarks and password managers to this domain today. The dashboard is still accessible via the old domain (dash.readme.io), but we'll begin redirecting starting next week.
As part of the rollout of the Changelog and Custom Pages API, we had initially required a x-readme-version header. The Changelog and Custom Page objects are not versioned the same way that they are for standard Guide and API Reference pages and it created problems with existing data in the dashboard, so all versioning has been removed from these sets of endpoints.
Going forward, the x-readme-version header is no longer required for the Changelog and Custom Pages API. If you have any questions, please contact us at [email protected].
We're excited to announce a couple of new updates to the enterprise members' management section.
Providers are now visible
We've decided to display all of the providers in the dashboard. The types that we visualize are: "ReadMe" and "SAML", this will help admins identify where their users are coming from.
SAML Group Mapping
We've also built out a utility feature within SAML integrations (Auth0 only) that allows you to map group attributes from SAML to permissions within ReadMe projects. This will enable admins to do things like: "for a user belonging to this group, I want to provision them with these permissions (ReadOnly, Admin) for these projects". To get started on implementation for this feature, talk to your ReadMe CSM!
We released an iteration to Audit Logs for our enterprise projects! Here are some of the new features we're excited about:
We've added the project column to the audit logs: though you can specify which project you want to filter by via the navigation, it was difficult to tell which log belonged to which project when viewing by "all".
We've added the version column as well: but not all rows will have a version attached to them, since things like editing project-specific settings aren't version-specific.
We now provide links when you are editing pages, so you can easily navigate to that page!
Hey there—just us, ReadMe, again! We've been hard at work polishing the way we display API parameters in our reference sections. The headliner here is an updated layout that's way more flexible, so your community has a great reading experience, even on smaller screens. (And so this doesn't happen anymore... )
Beyond that, we've overhauled array and object fields to simplify how we visualize complex groups of parameters. And we've added a pinch of contrast and a dash of color to make it easier to scan and distinguish between these various fields and groups at a glance. We hope you like the improvements!