Netlify · Authentication Profile
Netlify Authentication
Authentication
Netlify secures its APIs with oauth2 across 1 declared security scheme, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the implicit flow(s).
CDNCloudContinuous DeploymentEdge ComputingJAMstackServerlessServerless FunctionsStatic SitesWeb HostingWebsites
Methods: oauth2
Schemes: 1
OAuth flows: implicit
API key in:
Security Schemes
netlifyAuth oauth2
· flows: implicit
Source
Authentication Profile
generated: '2026-08-27'
method: searched
source: openapi/netlify-accesstoken-api-openapi.yml, openapi/netlify-accountmembership-api-openapi.yml,
openapi/netlify-accounttype-api-openapi.yml, openapi/netlify-asset-api-openapi.yml, openapi/netlify-assetpublicsignature-api-openapi.yml,
openapi/netlify-auditlog-api-openapi.yml, openapi/netlify-build-api-openapi.yml, openapi/netlify-buildhook-api-openapi.yml,
openapi/netlify-buildlogmsg-api-openapi.yml, openapi/netlify-deploy-api-openapi.yml, openapi/netlify-deployedbranch-api-openapi.yml,
openapi/netlify-deploykey-api-openapi.yml ...
summary:
types:
- oauth2
oauth2_flows:
- implicit
schemes:
- name: netlifyAuth
type: oauth2
flows:
- flow: implicit
authorizationUrl: https://app.netlify.com/authorize
scopes: 0
sources:
- openapi/netlify-accesstoken-api-openapi.yml
- openapi/netlify-accountmembership-api-openapi.yml
- openapi/netlify-accounttype-api-openapi.yml
- openapi/netlify-asset-api-openapi.yml
- openapi/netlify-assetpublicsignature-api-openapi.yml
- openapi/netlify-auditlog-api-openapi.yml
- openapi/netlify-build-api-openapi.yml
- openapi/netlify-buildhook-api-openapi.yml
- openapi/netlify-buildlogmsg-api-openapi.yml
- openapi/netlify-deploy-api-openapi.yml
- openapi/netlify-deployedbranch-api-openapi.yml
- openapi/netlify-deploykey-api-openapi.yml
- openapi/netlify-devserver-api-openapi.yml
- openapi/netlify-devserverhook-api-openapi.yml
- openapi/netlify-dnszone-api-openapi.yml
- openapi/netlify-environmentvariables-api-openapi.yml
- openapi/netlify-file-api-openapi.yml
- openapi/netlify-form-api-openapi.yml
- openapi/netlify-function-api-openapi.yml
- openapi/netlify-hook-api-openapi.yml
- openapi/netlify-hooktype-api-openapi.yml
- openapi/netlify-member-api-openapi.yml
- openapi/netlify-metadata-api-openapi.yml
- openapi/netlify-paymentmethod-api-openapi.yml
- openapi/netlify-purge-api-openapi.yml
- openapi/netlify-serviceinstance-api-openapi.yml
- openapi/netlify-services-api-openapi.yml
- openapi/netlify-site-api-openapi.yml
- openapi/netlify-snicertificate-api-openapi.yml
- openapi/netlify-snippet-api-openapi.yml
- openapi/netlify-splittest-api-openapi.yml
- openapi/netlify-submission-api-openapi.yml
- openapi/netlify-ticket-api-openapi.yml
- openapi/netlify-user-api-openapi.yml
- openapi/netlify-x-internal-api-openapi.yml
docs: https://docs.netlify.com/api-and-cli-guides/api-guides/get-started-with-api/#authentication
upgraded: '2026-08-27: derived profile enriched from Netlify''s own API guide (fetched as Markdown) and
from live unauthenticated responses against https://api.netlify.com/api/v1.'
profile:
primary: OAuth 2.0 Bearer token
header: 'Authorization: Bearer <token>'
transport: HTTPS only. All requests must use HTTPS.
token_types:
- name: personal access token (PAT)
issued_at: https://app.netlify.com/user/applications#personal-access-tokens
prefix: null
note: Generated by hand in user settings. No prefix distinguishes a PAT from an OAuth token.
- name: OAuth 2.0 access token
authorization_endpoint: https://app.netlify.com/authorize
registration: https://app.netlify.com/applications
note: Required for public integrations, so an end user can authorize an app without pasting a token.
declared_flow: implicit
declared_flow_note: 'The OpenAPI declares flow: implicit. RFC 9700 (OAuth 2.0 Security BCP) recommends
against the implicit flow; authorization code with PKCE is current guidance. Netlify''s MCP authorization
server, by contrast, advertises response_types_supported ["code"].'
scopes: none — see scopes/netlify-scopes.yml
mtls: false
api_key_header: false
basic_auth: false
operational_constraints:
- A Netlify password reset permanently invalidates every PAT and OAuth token created before it.
- Under team SAML SSO, a PAT is denied access to the team by default. Access must be granted when the
token is generated, while signed in to that team with SSO.
- CLI tokens appear under Authorized applications as "Netlify CLI" and can be revoked there independently
of PATs.
observed:
url: https://api.netlify.com/api/v1/sites
method: GET
no_credential: true
http_status: 401
body: '{"code":401,"message":"Access Denied"}'
checked: '2026-08-27'
related:
mcp: The Netlify MCP server uses a separate OAuth 2.0 authorization server with dynamic client registration
and a read/write scope split. See mcp/netlify-mcp.yml and well-known/netlify-mcp-oauth-authorization-server.json.
conventions: conventions/netlify-conventions.yml
scopes: scopes/netlify-scopes.yml
Work with this as data
Every security artifact here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for security posture
4 MCP tools reach this
find_securityBrowse and filter every security artifact in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/netlify-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.