A month ago, we moved GitHub Integrations into pre-release, and today it's available for general release. As this new functionality is the preferred way to extend GitHub, we've renamed it GitHub Apps.
There are a couple of new features and some breaking changes:
Dynamic rate limiting for installations
All GitHub Apps start with a rate limit of 5000 requests per hour. To facilitate growth we have added a dynamic rate limit for installations: organization installations with more than 20 users receive another 50 requests per hour for each user. Installations that have more than 20 repositories receive another 50 requests per hour for each repository. You can check the returned HTTP headers of any API request to see your installation's current rate limit status:
Status: 200 OK X-RateLimit-Limit: 5000 X-RateLimit-Remaining: 4999 X-RateLimit-Reset: 1372700873
More on rate-limiting.
Repo admins can install a GitHub App
Previously only organization admins could install a GitHub App. Now, anyone who can admin a repository can install a GitHub App on it.
With the name change to GitHub Apps, there are some changes to webhook events, payloads and API responses.
The Integrations API has been deprecated in favor of the GitHub Apps API.
integration_installation_repositories event names, used in the Early Access period, have been deprecated in favor of
installation_repositories. All GitHub Apps receive these events to their webhook by default, so all applications are affected by this change.
Webhook payloads and API responses will include an
app_id key, to replace the now deprecated
If your application uses any of the following APIs, then you are affected by this change:
The deprecated Integrations API routes, events and responses will be removed on November 22nd 2017. We advise you to update your application as soon as possible.
How can I try it?
Anyone can register a GitHub App on GitHub via Settings > Developer settings > GitHub Apps, and manage an existing GitHub App from the same place.
More information on getting started can be found in our developer documentation.
Give us your feedback
Come talk to us, in the Platform forum.