Contribute One-Click Services via a Github Pull Request

Before today, to add a one-click service to DNSimple, it was always up to us to add record templates to our database manually and possibly write new application logic, making integration of services a slow process. There was no way for customers and service providers to add their service other than to email us and have us build it.

Starting today that changes.

You can now fork our DNSimple Services project on Github, develop your service integration and issue a pull request. Once the pull request is accepted and a new version of DNSimple is deployed, your service integration will be live immediately, greatly reducing the friction of adding a new one-click service to DNSimple.

What is a One-Click Service?

One-click services in DNSimple are templates which help configure your DNS records for a particular service, such as Google Apps, Heroku or Github Pages. You add the service, possibly enter a few configuration details (like the project name) and we take care of setting up the appropriate records for you.

This can be taken a step further with deeper integration through a hook URL. When the service is set up we will invoke the URL, passing along a bit of important data (like the domain name) and a web service can do things such as provision an account, alter configuration on the service or whatever else the service needs.

We've already created one example of this with our improved Cloudflare integration, which now generates a random host name for the destination, making it much more difficult to guess the unprotected hostname that Cloudflare resolves to.

How do I get started?

If you operate a service and we do not yet have a one-click template, then read through the README on the DNSimple Services project, fork the project, implement the configuration JSON and possibly the hook, and submit a pull request. We will review the pull request and if everything looks correct then we will merge your change in and deploy it.

If there are any issues with the pull request then we will communicate back with you through the pull request comments. If a customer has an issue with your service integration once it is deployed then we will open a Github issue on the project to bring it to your attention.