[Support Guide] Understanding and using Netlify's API

Did you know that Netlify has an extensive public API? Anything that you configure in our Admin UI at https://app.netlify.com is managed using this same API, and you’re welcome to use it to create and configure your site(s) and perform most other operations on your account.

We have an article on API Usage in our official documentation which shows how to do some common tasks like deploying your site and configuring it in great detail. It also talks about your options for authentication (since most endpoints require authentication), and also gives examples of usage with the command line http tool curl, so this article won’t rehash that information.

Some details not covered in that article that will be useful as you explore the API:

  • https://open-api.netlify.com has a fairly thorough list of the available calls but is always a work in progress (it may not be entirely complete; if you see something missing, please file an issue here), since it has to be manually updated with new and changed endpoints.
  • Be aware of our API rate limits as documented in this article.
  • Unless you get officially branded as a reseller, you cannot manage users, subscriptions or payment methods - those are basically the only things our API does which you cannot do unless your account is configured as reseller. Curious about charging your customers for hosting a site on Netlify? Please contact our sales team to discuss special pricing and ability to manage users and accounts on our platform.

The most important advice I can give you about using our API is to watch how we do it! Our entire admin UI works via this API, so checking to see how we use the API in-app will be the best guide to using every feature. You can use your browser’s developer tools to accomplish this! While we do try to keep our documentation up to date - you can be sure that what is live in production works today! :slight_smile: . This can also help you understand what the normal "order of operations" is when creating a site - you’ll see the endpoints and HTTP methods used, and discover many of the options you can set.

You may also be interested in this article about linking a repo via the API. And, always be sure to exercise great care with handling your API tokens, since they have the same access to all sites/accounts that you do in our admin UI!

Let us know what you think.

6 Likes
How to dynamically create a subdomain?
Build & Deploy via webhook only
Netlify API for adding DNS record
Configure site DNS through API
List of Netlify IP adresses for whitelisting
Split testing Under the Hood?
Test and production environments
Oauth/tickets create ticket API endpoint returns a ticket with Authorized: null
How to Export all Identity User Data?
Generate the .CSV file with all the submissions (verified and spam)
Transfer custom domain to AWS
Netlify API is not fetching all DNS records of site
Canceling Deployment
Enable Identity via Netlify API
Feature request: import environment variables
Automatically deploy branches that match name pattern
List of Users from the Identity API
Deploy previews setting via netlify API
Automatically create <branch>.mydomain.com subdomain?
Netlify/js-client API method createSiteBuildHook(): Not able to set 'title' and 'branch'
Custom domains for users, with Netlify
Netlify + Wildcard domains + Cloudflare
Is it possible to write build data back to, eg, environmental variables?
List and edit form submissions using netlify-cli
GitHub & site integration using API
Custom draft URLs for manual deploys
Speeding up calling api endpoint to get deploys for a site
Receiving HTTP/2 401 respone despite specifiying Authorization header
Membership Site for Email Subscribers
How to control a Netlify build and deploy via CI
Cannot create DNS record via HTTP API
How to Add ENV vars using the CLI
Can you deploy existing build to another site?
Copying env vars from one site to another