Skip to content

Instantly share code, notes, and snippets.

@abhiaiyer91
Created December 15, 2023 19:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save abhiaiyer91/b5db416e64b15ca9f97e5af4a5e3a629 to your computer and use it in GitHub Desktop.
Save abhiaiyer91/b5db416e64b15ca9f97e5af4a5e3a629 to your computer and use it in GitHub Desktop.
{
"openapi": "3.0.0",
"info": {
"version": "2.26.0",
"title": "Netlify's API documentation",
"description": "Netlify is a hosting service for the programmable web. It understands your documents and provides an API to handle atomic deploys of websites, manage form submissions, inject JavaScript snippets, and much more. This is a REST-style API that uses JSON for serialization and OAuth 2 for authentication.\n\nThis document is an OpenAPI reference for the Netlify API that you can explore. For more detailed instructions for common uses, please visit the [online documentation](https://www.netlify.com/docs/api/). Visit our Community forum to join the conversation about [understanding and using Netlify’s API](https://community.netlify.com/t/common-issue-understanding-and-using-netlifys-api/160).\n\nAdditionally, we have two API clients for your convenience:\n- [Go Client](https://github.com/netlify/open-api#go-client)\n- [JS Client](https://github.com/netlify/build/tree/main/packages/js-client)",
"termsOfService": "https://www.netlify.com/legal/terms-of-use/",
"x-logo": {
"url": "netlify-logo.png",
"href": "https://www.netlify.com/docs/",
"altText": "Netlify"
}
},
"security": [
{
"netlifyAuth": []
}
],
"tags": [
{
"name": "ticket",
"x-displayName": "Ticket"
},
{
"name": "accessToken",
"x-displayName": "Access token"
},
{
"name": "user",
"x-displayName": "User"
},
{
"name": "accountMembership",
"x-displayName": "Accounts"
},
{
"name": "member",
"x-displayName": "Member"
},
{
"name": "accountType",
"x-displayName": "Access type"
},
{
"name": "paymentMethod",
"x-displayName": "Payment method"
},
{
"name": "auditLog",
"x-displayName": "Audit log"
},
{
"name": "site",
"x-displayName": "Site"
},
{
"name": "environmentVariables",
"x-displayName": "Environment variables"
},
{
"name": "file",
"x-displayName": "File"
},
{
"name": "metadata",
"x-displayName": "Metadata"
},
{
"name": "snippet",
"x-displayName": "Snippet"
},
{
"name": "purge",
"x-displayName": "Cache purge"
},
{
"name": "dnsZone",
"x-displayName": "DNS zone"
},
{
"name": "sniCertificate",
"x-displayName": "SNI certificate"
},
{
"name": "deploy",
"x-displayName": "Deploy"
},
{
"name": "deployedBranch",
"x-displayName": "Deployed branch"
},
{
"name": "deployKey",
"x-displayName": "Deploy key"
},
{
"name": "build",
"x-displayName": "Build"
},
{
"name": "buildLogMsg",
"x-displayName": "Build log message"
},
{
"name": "hook",
"x-displayName": "Hook"
},
{
"name": "hookType",
"x-displayName": "Hook type"
},
{
"name": "buildHook",
"x-displayName": "Build hook"
},
{
"name": "service",
"x-displayName": "Service"
},
{
"name": "serviceInstance",
"x-displayName": "Service instance"
},
{
"name": "function",
"x-displayName": "Function"
},
{
"name": "form",
"x-displayName": "Form"
},
{
"name": "submission",
"x-displayName": "Form submission"
},
{
"name": "splitTest",
"x-displayName": "Split test"
},
{
"name": "asset",
"x-displayName": "Asset"
},
{
"name": "assetPublicSignature",
"x-displayName": "Asset public signature"
}
],
"externalDocs": {
"url": "https://www.netlify.com/docs/api/",
"description": "Online documentation"
},
"paths": {
"/sites": {
"get": {
"operationId": "listSites",
"tags": [
"site"
],
"parameters": [
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "filter",
"in": "query",
"schema": {
"type": "string",
"enum": [
"all",
"owner",
"guest"
]
}
},
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/site"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "**Note:** Environment variable keys and values have moved from `build_settings.env` and `repo.env` to a new endpoint. Please use [getEnvVars](#tag/environmentVariables/operation/getEnvVars) to retrieve site environment variables."
},
"post": {
"operationId": "createSite",
"tags": [
"site"
],
"parameters": [
{
"name": "configure_dns",
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"requestBody": {
"$ref": "#/components/requestBodies/siteSetup"
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/site"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "**Note:** Environment variable keys and values have moved from `build_settings.env` and `repo.env` to a new endpoint. Please use [createEnvVars](#tag/environmentVariables/operation/createEnvVars) to create environment variables for a site."
}
},
"/sites/{site_id}": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getSite",
"tags": [
"site"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/site"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "**Note:** Environment variable keys and values have moved from `build_settings.env` and `repo.env` to a new endpoint. Please use [getEnvVars](#tag/environmentVariables/operation/getEnvVars) to retrieve site environment variables."
},
"patch": {
"operationId": "updateSite",
"tags": [
"site"
],
"requestBody": {
"$ref": "#/components/requestBodies/siteSetup"
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/site"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "**Note:** Environment variable keys and values have moved from `build_settings.env` and `repo.env` to a new endpoint. Please use [updateEnvVar](#tag/environmentVariables/operation/updateEnvVar) to update a site's environment variables."
},
"delete": {
"operationId": "deleteSite",
"tags": [
"site"
],
"responses": {
"204": {
"description": "Deleted"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/ssl": {
"post": {
"operationId": "provisionSiteTLSCertificate",
"tags": [
"sniCertificate"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "certificate",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "ca_certificates",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/sniCertificate"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"get": {
"operationId": "showSiteTLSCertificate",
"tags": [
"sniCertificate"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/sniCertificate"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/accounts/{account_id}/env": {
"get": {
"tags": [
"environmentVariables"
],
"operationId": "getEnvVars",
"parameters": [
{
"name": "account_id",
"description": "Scope response to account_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "context_name",
"description": "Filter by deploy context",
"required": false,
"in": "query",
"schema": {
"type": "string",
"enum": [
"all",
"dev",
"branch-deploy",
"deploy-preview",
"production"
]
}
},
{
"name": "scope",
"description": "Filter by scope",
"required": false,
"in": "query",
"schema": {
"type": "string",
"enum": [
"builds",
"functions",
"runtime",
"post-processing"
]
}
},
{
"name": "site_id",
"description": "If specified, only return environment variables set on this site",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/envVar"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "Returns all environment variables for an account or site. An account corresponds to a team in the Netlify UI. To use this endpoint, your site must no longer be using the <a href=\"https://docs.netlify.com/environment-variables/classic-experience/\">classic environment variables experience</a>. Migrate now with the Netlify UI."
},
"post": {
"tags": [
"environmentVariables"
],
"operationId": "createEnvVars",
"description": "Creates new environment variables. Granular scopes are available on Pro plans and above. To use this endpoint, your site must no longer be using the <a href=\"https://docs.netlify.com/environment-variables/classic-experience/\">classic environment variables experience</a>. Migrate now with the Netlify UI.",
"parameters": [
{
"name": "account_id",
"description": "Scope response to account_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "site_id",
"description": "If provided, create an environment variable on the site level, not the account level",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The existing or new name of the key, if you wish to rename it (case-sensitive)"
},
"scopes": {
"description": "The scopes that this environment variable is set to (Pro plans and above)",
"type": "array",
"items": {
"type": "string",
"enum": [
"builds",
"functions",
"runtime",
"post-processing"
]
}
},
"values": {
"type": "array",
"items": {
"$ref": "#/components/schemas/envVarValue"
}
},
"is_secret": {
"type": "boolean",
"description": "Secret values are only readable by code running on Netlify’s systems. With secrets, only the local development context values are readable from the UI, API, and CLI. By default, environment variable values are not secret. (Enterprise plans only)"
}
}
}
}
}
}
},
"responses": {
"201": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/envVar"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/api/v1/sites/{site_id}/env": {
"get": {
"tags": [
"environmentVariables"
],
"operationId": "getSiteEnvVars",
"parameters": [
{
"name": "context_name",
"description": "Filter by deploy context",
"required": false,
"in": "query",
"schema": {
"type": "string",
"enum": [
"all",
"dev",
"branch-deploy",
"deploy-preview",
"production"
]
}
},
{
"name": "scope",
"description": "Filter by scope",
"required": false,
"in": "query",
"schema": {
"type": "string",
"enum": [
"builds",
"functions",
"runtime",
"post_processing"
]
}
},
{
"name": "site_id",
"description": "Scope response to site_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/envVar"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "Returns all environment variables for a site. This convenience method behaves the same as `getEnvVars` but doesn't require an `account_id` as input."
}
},
"/accounts/{account_id}/env/{key}": {
"get": {
"tags": [
"environmentVariables"
],
"operationId": "getEnvVar",
"parameters": [
{
"name": "account_id",
"description": "Scope response to account_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "key",
"description": "The environment variable key (case-sensitive)",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "site_id",
"description": "If provided, return the environment variable for a specific site (no merging is performed)",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/envVar"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "Returns an individual environment variable. To use this endpoint, your site must no longer be using the <a href=\"https://docs.netlify.com/environment-variables/classic-experience/\">classic environment variables experience</a>. Migrate now with the Netlify UI."
},
"put": {
"tags": [
"environmentVariables"
],
"operationId": "updateEnvVar",
"description": "Updates an existing environment variable and all of its values. Existing values will be replaced by values provided. To use this endpoint, your site must no longer be using the <a href=\"https://docs.netlify.com/environment-variables/classic-experience/\">classic environment variables experience</a>. Migrate now with the Netlify UI.",
"parameters": [
{
"name": "account_id",
"description": "Scope response to account_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "key",
"description": "The existing environment variable key name (case-sensitive)",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "site_id",
"description": "If provided, update an environment variable set on this site",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The existing or new name of the key, if you wish to rename it (case-sensitive)"
},
"scopes": {
"description": "The scopes that this environment variable is set to (Pro plans and above)",
"type": "array",
"items": {
"type": "string",
"enum": [
"builds",
"functions",
"runtime",
"post-processing"
]
}
},
"values": {
"type": "array",
"items": {
"$ref": "#/components/schemas/envVarValue"
}
},
"is_secret": {
"type": "boolean",
"description": "Secret values are only readable by code running on Netlify’s systems. With secrets, only the local development context values are readable from the UI, API, and CLI. By default, environment variable values are not secret. (Enterprise plans only)"
}
}
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/envVar"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"patch": {
"tags": [
"environmentVariables"
],
"operationId": "setEnvVarValue",
"description": "Updates or creates a new value for an existing environment variable. To use this endpoint, your site must no longer be using the <a href=\"https://docs.netlify.com/environment-variables/classic-experience/\">classic environment variables experience</a>. Migrate now with the Netlify UI.",
"parameters": [
{
"name": "account_id",
"description": "Scope response to account_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "key",
"description": "The existing environment variable key name (case-sensitive)",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "site_id",
"description": "If provided, update an environment variable set on this site",
"in": "query",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"context": {
"description": "The deploy context in which this value will be used. `dev` refers to local development when running `netlify dev`. `branch` must be provided with a value in `context_parameter`.",
"type": "string",
"enum": [
"all",
"dev",
"branch-deploy",
"deploy-preview",
"production",
"branch"
]
},
"context_parameter": {
"description": "An additional parameter for custom branches. Currently, this is used for providing a branch name when `context=branch`.",
"type": "string"
},
"value": {
"description": "The environment variable's unencrypted value",
"type": "string"
}
}
}
}
}
},
"responses": {
"201": {
"description": "Created (success)",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/envVar"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"tags": [
"environmentVariables"
],
"operationId": "deleteEnvVar",
"parameters": [
{
"name": "account_id",
"description": "Scope response to account_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "key",
"description": "The environment variable key (case-sensitive)",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "site_id",
"description": "If provided, delete the environment variable from this site",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "No Content (success)"
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "Deletes an environment variable. To use this endpoint, your site must no longer be using the <a href=\"https://docs.netlify.com/environment-variables/classic-experience/\">classic environment variables experience</a>. Migrate now with the Netlify UI."
}
},
"/accounts/{account_id}/env/{key}/value/{id}": {
"delete": {
"tags": [
"environmentVariables"
],
"operationId": "deleteEnvVarValue",
"parameters": [
{
"name": "account_id",
"description": "Scope response to account_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "id",
"description": "The environment variable value's ID",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "key",
"description": "The environment variable key name (case-sensitive)",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "site_id",
"description": "If provided, delete the value from an environment variable on this site",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "No Content (success)"
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "Deletes a specific environment variable value. To use this endpoint, your site must no longer be using the <a href=\"https://docs.netlify.com/environment-variables/classic-experience/\">classic environment variables experience</a>. Migrate now with the Netlify UI."
}
},
"/sites/{site_id}/functions": {
"get": {
"operationId": "searchSiteFunctions",
"tags": [
"function"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "filter",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/siteFunction"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/forms": {
"get": {
"operationId": "listSiteForms",
"tags": [
"form"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/form"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/forms/{form_id}": {
"delete": {
"operationId": "deleteSiteForm",
"tags": [
"form"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "form_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "Deleted"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/submissions": {
"get": {
"operationId": "listSiteSubmissions",
"tags": [
"submission"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/submission"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/files": {
"get": {
"operationId": "listSiteFiles",
"tags": [
"file"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/file"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/assets": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listSiteAssets",
"tags": [
"asset"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/asset"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createSiteAsset",
"tags": [
"asset"
],
"parameters": [
{
"name": "name",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "size",
"in": "query",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "content_type",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "visibility",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/assetSignature"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/assets/{asset_id}": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "asset_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getSiteAssetInfo",
"tags": [
"asset"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/asset"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateSiteAsset",
"tags": [
"asset"
],
"parameters": [
{
"name": "state",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Updated",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/asset"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteSiteAsset",
"tags": [
"asset"
],
"responses": {
"204": {
"description": "Deleted"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/assets/{asset_id}/public_signature": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "asset_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getSiteAssetPublicSignature",
"tags": [
"assetPublicSignature"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/assetPublicSignature"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/files/{file_path}": {
"get": {
"operationId": "getSiteFileByPathName",
"tags": [
"file"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "file_path",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/file"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/purge": {
"post": {
"operationId": "purgeCache",
"description": "Purges cached content from Netlify's CDN. Supports purging by Cache-Tag.",
"tags": [
"purge"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/purge"
}
}
},
"required": true
},
"responses": {
"202": {
"description": "OK"
},
"400": {
"description": "Invalid request parameters"
},
"404": {
"description": "Site not found"
}
}
}
},
"/sites/{site_id}/snippets": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listSiteSnippets",
"tags": [
"snippet"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/snippet"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createSiteSnippet",
"tags": [
"snippet"
],
"requestBody": {
"$ref": "#/components/requestBodies/snippet"
},
"responses": {
"201": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/snippet"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/snippets/{snippet_id}": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "snippet_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getSiteSnippet",
"tags": [
"snippet"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/snippet"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateSiteSnippet",
"tags": [
"snippet"
],
"requestBody": {
"$ref": "#/components/requestBodies/snippet"
},
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteSiteSnippet",
"tags": [
"snippet"
],
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/metadata": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getSiteMetadata",
"tags": [
"metadata"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/metadata"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateSiteMetadata",
"tags": [
"metadata"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/metadata"
}
}
},
"required": true
},
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/build_hooks": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listSiteBuildHooks",
"tags": [
"buildHook"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/buildHook"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createSiteBuildHook",
"tags": [
"buildHook"
],
"requestBody": {
"$ref": "#/components/requestBodies/buildHookSetup"
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/buildHook"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/build_hooks/{id}": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getSiteBuildHook",
"tags": [
"buildHook"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/buildHook"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateSiteBuildHook",
"tags": [
"buildHook"
],
"requestBody": {
"$ref": "#/components/requestBodies/buildHookSetup"
},
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteSiteBuildHook",
"tags": [
"buildHook"
],
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/deploys": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "deploy-previews",
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "production",
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "state",
"in": "query",
"schema": {
"type": "string",
"enum": [
"new",
"pending_review",
"accepted",
"rejected",
"enqueued",
"building",
"uploading",
"uploaded",
"preparing",
"prepared",
"processing",
"processed",
"ready",
"error",
"retrying"
]
}
},
{
"name": "branch",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "latest-published",
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"get": {
"operationId": "listSiteDeploys",
"tags": [
"deploy"
],
"parameters": [
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/deploy"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createSiteDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "title",
"in": "query",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"$ref": "#/components/requestBodies/deployFiles"
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/deploys/{deploy_id}": {
"get": {
"operationId": "getSiteDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateSiteDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"$ref": "#/components/requestBodies/deployFiles"
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteSiteDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploys/{deploy_id}/cancel": {
"post": {
"operationId": "cancelSiteDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"201": {
"description": "Cancelled",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/deploys/{deploy_id}/restore": {
"post": {
"operationId": "restoreSiteDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/builds": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listSiteBuilds",
"tags": [
"build"
],
"parameters": [
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/build"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createSiteBuild",
"tags": [
"build"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/buildSetup"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/build"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/deployed-branches": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listSiteDeployedBranches",
"tags": [
"deployedBranch"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/deployedBranch"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/unlink_repo": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"put": {
"operationId": "unlinkSiteRepo",
"tags": [
"site"
],
"description": "[Beta] Unlinks the repo from the site.\n\nThis action will also:\n- Delete associated deploy keys\n- Delete outgoing webhooks for the repo\n- Delete the site's build hooks",
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/site"
}
}
}
},
"404": {
"description": "Site not found"
}
}
}
},
"/builds/{build_id}": {
"parameters": [
{
"name": "build_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getSiteBuild",
"tags": [
"build"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/build"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/builds/{build_id}/log": {
"parameters": [
{
"name": "build_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"post": {
"operationId": "updateSiteBuildLog",
"tags": [
"buildLogMsg"
],
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/builds/{build_id}/start": {
"parameters": [
{
"name": "build_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "buildbot_version",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "build_version",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"post": {
"operationId": "notifyBuildStart",
"tags": [
"build"
],
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/{account_id}/builds/status": {
"parameters": [
{
"name": "account_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getAccountBuildStatus",
"tags": [
"build"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/buildStatus"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/dns": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getDNSForSite",
"tags": [
"dnsZone"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/dnsZone"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "configureDNSForSite",
"tags": [
"dnsZone"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/dnsZone"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/rollback": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"put": {
"operationId": "rollbackSiteDeploy",
"tags": [
"deploy"
],
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploys/{deploy_id}": {
"get": {
"operationId": "getDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "No content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploys/{deploy_id}/lock": {
"post": {
"operationId": "lockDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploys/{deploy_id}/unlock": {
"post": {
"operationId": "unlockDeploy",
"tags": [
"deploy"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deploy"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploys/{deploy_id}/files/{path}": {
"put": {
"operationId": "uploadDeployFile",
"tags": [
"file"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "path",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "size",
"in": "query",
"schema": {
"type": "integer"
}
}
],
"requestBody": {
"$ref": "#/components/requestBodies/uploadDeployFileFileBody"
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/file"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploys/{deploy_id}/functions/{name}": {
"put": {
"operationId": "uploadDeployFunction",
"tags": [
"function"
],
"parameters": [
{
"name": "deploy_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "runtime",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "invocation_mode",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "size",
"in": "query",
"schema": {
"type": "integer"
}
},
{
"$ref": "#/components/parameters/retryCount"
}
],
"requestBody": {
"$ref": "#/components/requestBodies/uploadDeployFileFileBody"
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/function"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/forms/{form_id}/submissions": {
"get": {
"operationId": "listFormSubmissions",
"tags": [
"submission"
],
"parameters": [
{
"name": "form_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/submission"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/hooks": {
"get": {
"operationId": "listHooksBySiteId",
"tags": [
"hook"
],
"parameters": [
{
"name": "site_id",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/hook"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createHookBySiteId",
"tags": [
"hook"
],
"parameters": [
{
"name": "site_id",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"$ref": "#/components/requestBodies/hook"
},
"responses": {
"201": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/hook"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/hooks/{hook_id}": {
"parameters": [
{
"name": "hook_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getHook",
"tags": [
"hook"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/hook"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateHook",
"tags": [
"hook"
],
"requestBody": {
"$ref": "#/components/requestBodies/hook"
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/hook"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteHook",
"tags": [
"hook"
],
"responses": {
"204": {
"description": "No content"
}
}
}
},
"/hooks/{hook_id}/enable": {
"parameters": [
{
"name": "hook_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"post": {
"operationId": "enableHook",
"tags": [
"hook"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/hook"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/hooks/types": {
"get": {
"operationId": "listHookTypes",
"tags": [
"hookType"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/hookType"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/oauth/tickets": {
"post": {
"operationId": "createTicket",
"tags": [
"ticket"
],
"parameters": [
{
"name": "client_id",
"in": "query",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"201": {
"description": "ok",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ticket"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/oauth/tickets/{ticket_id}": {
"get": {
"operationId": "showTicket",
"tags": [
"ticket"
],
"parameters": [
{
"name": "ticket_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "ok",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ticket"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/oauth/tickets/{ticket_id}/exchange": {
"post": {
"operationId": "exchangeTicket",
"tags": [
"accessToken"
],
"parameters": [
{
"name": "ticket_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"201": {
"description": "ok",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/accessToken"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploy_keys": {
"get": {
"operationId": "listDeployKeys",
"tags": [
"deployKey"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/deployKey"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createDeployKey",
"tags": [
"deployKey"
],
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deployKey"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/deploy_keys/{key_id}": {
"parameters": [
{
"name": "key_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getDeployKey",
"tags": [
"deployKey"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deployKey"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteDeployKey",
"tags": [
"deployKey"
],
"responses": {
"204": {
"description": "Not Content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/{account_slug}/sites": {
"post": {
"operationId": "createSiteInTeam",
"tags": [
"site"
],
"parameters": [
{
"name": "configure_dns",
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "account_slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/siteSetup"
}
}
}
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/site"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "**Note:** Environment variable keys and values have moved from `build_settings.env` and `repo.env` to a new endpoint. Please use [createEnvVars](#tag/environmentVariables/operation/createEnvVars) to create environment variables for a site."
},
"get": {
"operationId": "listSitesForAccount",
"tags": [
"site"
],
"parameters": [
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "account_slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/site"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
},
"description": "**Note:** Environment variable keys and values have moved from `build_settings.env` and `repo.env` to a new endpoint. Please use [getEnvVars](#tag/environmentVariables/operation/getEnvVars) to retrieve site environment variables."
}
},
"/{account_slug}/members": {
"parameters": [
{
"name": "account_slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listMembersForAccount",
"tags": [
"member"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/member"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "addMemberToAccount",
"tags": [
"member"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/accountAddMemberSetup"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/member"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/{account_slug}/members/{member_id}": {
"parameters": [
{
"name": "account_slug",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "member_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getAccountMember",
"tags": [
"member"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/member"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateAccountMember",
"tags": [
"member"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/accountUpdateMemberSetup"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/member"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "removeAccountMember",
"tags": [
"member"
],
"responses": {
"204": {
"description": "Not Content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/billing/payment_methods": {
"get": {
"operationId": "listPaymentMethodsForUser",
"tags": [
"paymentMethod"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/paymentMethod"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/accounts/types": {
"get": {
"operationId": "listAccountTypesForUser",
"tags": [
"accountType"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/accountType"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/accounts": {
"get": {
"operationId": "listAccountsForUser",
"tags": [
"accountMembership"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/accountMembership"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createAccount",
"tags": [
"accountMembership"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/accountSetup"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/accountMembership"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/accounts/{account_id}": {
"parameters": [
{
"name": "account_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getAccount",
"tags": [
"accountMembership"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/accountMembership"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateAccount",
"tags": [
"accountMembership"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/accountUpdateSetup"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/accountMembership"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "cancelAccount",
"tags": [
"accountMembership"
],
"responses": {
"204": {
"description": "Not Content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/accounts/{account_id}/audit": {
"parameters": [
{
"name": "account_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listAccountAuditEvents",
"tags": [
"auditLog"
],
"parameters": [
{
"name": "query",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "log_type",
"in": "query",
"schema": {
"type": "string"
}
},
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/auditLog"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/submissions/{submission_id}": {
"parameters": [
{
"name": "submission_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listFormSubmission",
"tags": [
"submission"
],
"parameters": [
{
"name": "query",
"in": "query",
"schema": {
"type": "string"
}
},
{
"$ref": "#/components/parameters/page"
},
{
"$ref": "#/components/parameters/perPage"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/submission"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteSubmission",
"tags": [
"submission"
],
"responses": {
"204": {
"description": "Deleted"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/service-instances": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "listServiceInstancesForSite",
"tags": [
"serviceInstance"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/serviceInstance"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/services/{addon}/instances": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "addon",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"post": {
"operationId": "createServiceInstance",
"tags": [
"serviceInstance"
],
"requestBody": {
"$ref": "#/components/requestBodies/createServiceInstanceConfig"
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/serviceInstance"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/services/{addon}/instances/{instance_id}": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "addon",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "instance_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "showServiceInstance",
"tags": [
"serviceInstance"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/serviceInstance"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"put": {
"operationId": "updateServiceInstance",
"tags": [
"serviceInstance"
],
"requestBody": {
"$ref": "#/components/requestBodies/createServiceInstanceConfig"
},
"responses": {
"204": {
"description": "No Content"
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteServiceInstance",
"tags": [
"serviceInstance"
],
"responses": {
"204": {
"description": "Deleted"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/services/": {
"parameters": [
{
"name": "search",
"in": "query",
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getServices",
"tags": [
"service"
],
"responses": {
"200": {
"description": "services",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/service"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/services/{addonName}": {
"parameters": [
{
"name": "addonName",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "showService",
"tags": [
"service"
],
"responses": {
"200": {
"description": "services",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/service"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/services/{addonName}/manifest": {
"parameters": [
{
"name": "addonName",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "showServiceManifest",
"tags": [
"service"
],
"responses": {
"201": {
"description": "retrieving from provider",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/user": {
"get": {
"operationId": "getCurrentUser",
"tags": [
"user"
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/user"
}
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/traffic_splits": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"post": {
"operationId": "createSplitTest",
"tags": [
"splitTest"
],
"requestBody": {
"$ref": "#/components/requestBodies/splitTestSetup"
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/splitTest"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"get": {
"operationId": "getSplitTests",
"tags": [
"splitTest"
],
"responses": {
"200": {
"description": "split_tests",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/splitTests"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/traffic_splits/{split_test_id}": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "split_test_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"put": {
"operationId": "updateSplitTest",
"tags": [
"splitTest"
],
"requestBody": {
"$ref": "#/components/requestBodies/splitTestSetup"
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/splitTest"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"get": {
"operationId": "getSplitTest",
"tags": [
"splitTest"
],
"responses": {
"200": {
"description": "split_test",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/splitTest"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/traffic_splits/{split_test_id}/publish": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "split_test_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"post": {
"operationId": "enableSplitTest",
"tags": [
"splitTest"
],
"responses": {
"204": {
"description": "enable"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/sites/{site_id}/traffic_splits/{split_test_id}/unpublish": {
"parameters": [
{
"name": "site_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "split_test_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"post": {
"operationId": "disableSplitTest",
"tags": [
"splitTest"
],
"responses": {
"204": {
"description": "disabled"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/dns_zones": {
"post": {
"operationId": "createDnsZone",
"tags": [
"dnsZone"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsZoneSetup"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsZone"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"get": {
"operationId": "getDnsZones",
"tags": [
"dnsZone"
],
"parameters": [
{
"name": "account_slug",
"in": "query",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "get all DNS zones the user has access to",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsZones"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/dns_zones/{zone_id}": {
"parameters": [
{
"name": "zone_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getDnsZone",
"tags": [
"dnsZone"
],
"responses": {
"200": {
"description": "get a single DNS zone",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsZone"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteDnsZone",
"tags": [
"dnsZone"
],
"responses": {
"204": {
"description": "delete a single DNS zone"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/dns_zones/{zone_id}/transfer": {
"parameters": [
{
"name": "zone_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "account_id",
"in": "query",
"description": "the account of the dns zone",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "transfer_account_id",
"in": "query",
"description": "the account you want to transfer the dns zone to",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "transfer_user_id",
"in": "query",
"description": "the user you want to transfer the dns zone to",
"required": true,
"schema": {
"type": "string"
}
}
],
"put": {
"operationId": "transferDnsZone",
"tags": [
"dnsZone"
],
"responses": {
"200": {
"description": "transfer a DNS zone to another account",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsZone"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/dns_zones/{zone_id}/dns_records": {
"parameters": [
{
"name": "zone_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getDnsRecords",
"tags": [
"dnsZone"
],
"responses": {
"200": {
"description": "get all DNS records for a single DNS zone",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsRecords"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"post": {
"operationId": "createDnsRecord",
"tags": [
"dnsZone"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsRecordCreate"
}
}
},
"required": true
},
"responses": {
"201": {
"description": "Created",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsRecord"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
},
"/dns_zones/{zone_id}/dns_records/{dns_record_id}": {
"parameters": [
{
"name": "zone_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "dns_record_id",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"get": {
"operationId": "getIndividualDnsRecord",
"tags": [
"dnsZone"
],
"responses": {
"200": {
"description": "get a single DNS record",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/dnsRecord"
}
}
}
},
"default": {
"$ref": "#/components/responses/error"
}
}
},
"delete": {
"operationId": "deleteDnsRecord",
"tags": [
"dnsZone"
],
"responses": {
"204": {
"description": "record deleted"
},
"default": {
"$ref": "#/components/responses/error"
}
}
}
}
},
"x-tagGroups": [
{
"name": "OAuth",
"tags": [
"ticket",
"accessToken"
]
},
{
"name": "User accounts",
"tags": [
"user",
"accountMembership",
"member",
"accountType",
"paymentMethod",
"auditLog"
]
},
{
"name": "Site",
"tags": [
"site",
"environmentVariables",
"file",
"metadata",
"purge",
"snippet"
]
},
{
"name": "Domain names",
"tags": [
"dnsZone",
"sniCertificate"
]
},
{
"name": "Deploys",
"tags": [
"deploy",
"deployedBranch",
"deployKey"
]
},
{
"name": "Builds",
"tags": [
"build",
"buildLogMsg"
]
},
{
"name": "Webhooks and notifications",
"tags": [
"hook",
"hookType",
"buildHook"
]
},
{
"name": "Services",
"tags": [
"service",
"serviceInstance"
]
},
{
"name": "Functions",
"tags": [
"function"
]
},
{
"name": "Forms",
"tags": [
"form",
"submission"
]
},
{
"name": "Split tests",
"tags": [
"splitTest"
]
},
{
"name": "Large media",
"tags": [
"asset",
"assetPublicSignature"
]
}
],
"servers": [
{
"url": "https://api.netlify.com/api/v1"
}
],
"components": {
"parameters": {
"page": {
"name": "page",
"required": false,
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
"perPage": {
"name": "per_page",
"required": false,
"in": "query",
"schema": {
"type": "integer",
"format": "int32"
}
},
"retryCount": {
"name": "X-Nf-Retry-Count",
"in": "header",
"schema": {
"type": "integer"
}
}
},
"responses": {
"error": {
"description": "error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/error"
}
}
}
}
},
"requestBodies": {
"createServiceInstanceConfig": {
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
},
"required": true
},
"snippet": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/snippet"
}
}
},
"required": true
},
"deployFiles": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/deployFiles"
}
}
},
"required": true
},
"uploadDeployFileFileBody": {
"content": {
"application/octet-stream": {
"schema": {
"type": "string",
"format": "binary"
}
}
},
"required": true
},
"siteSetup": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/siteSetup"
}
}
},
"required": true
},
"buildHookSetup": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/buildHookSetup"
}
}
},
"required": true
},
"hook": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/hook"
}
}
},
"required": true
},
"splitTestSetup": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/splitTestSetup"
}
}
},
"required": true
}
},
"securitySchemes": {
"netlifyAuth": {
"type": "oauth2",
"flows": {
"implicit": {
"authorizationUrl": "https://app.netlify.com/authorize",
"scopes": {}
}
}
}
},
"schemas": {
"splitTestSetup": {
"type": "object",
"properties": {
"branch_tests": {
"type": "object"
}
}
},
"splitTests": {
"type": "array",
"items": {
"$ref": "#/components/schemas/splitTest"
}
},
"splitTest": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"site_id": {
"type": "string"
},
"name": {
"type": "string"
},
"path": {
"type": "string"
},
"branches": {
"type": "array",
"items": {
"type": "object"
}
},
"active": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
},
"unpublished_at": {
"type": "string",
"format": "dateTime"
}
}
},
"serviceInstance": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"config": {
"type": "object"
},
"external_attributes": {
"type": "object"
},
"service_slug": {
"type": "string"
},
"service_path": {
"type": "string"
},
"service_name": {
"type": "string"
},
"env": {
"type": "object"
},
"snippets": {
"type": "array",
"items": {
"type": "object"
}
},
"auth_url": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
}
}
},
"service": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"service_path": {
"type": "string"
},
"long_description": {
"type": "string"
},
"description": {
"type": "string"
},
"events": {
"type": "array",
"items": {
"type": "object"
}
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"icon": {
"type": "string"
},
"manifest_url": {
"type": "string"
},
"environments": {
"type": "array",
"items": {
"type": "string"
}
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
}
}
},
"site": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"state": {
"type": "string"
},
"plan": {
"type": "string"
},
"name": {
"type": "string"
},
"custom_domain": {
"type": "string"
},
"domain_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"branch_deploy_custom_domain": {
"type": "string"
},
"deploy_preview_custom_domain": {
"type": "string"
},
"password": {
"type": "string"
},
"notification_email": {
"type": "string"
},
"url": {
"type": "string"
},
"ssl_url": {
"type": "string"
},
"admin_url": {
"type": "string"
},
"screenshot_url": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
},
"user_id": {
"type": "string"
},
"session_id": {
"type": "string"
},
"ssl": {
"type": "boolean"
},
"force_ssl": {
"type": "boolean"
},
"managed_dns": {
"type": "boolean"
},
"deploy_url": {
"type": "string"
},
"published_deploy": {
"$ref": "#/components/schemas/deploy"
},
"account_name": {
"type": "string"
},
"account_slug": {
"type": "string"
},
"git_provider": {
"type": "string"
},
"deploy_hook": {
"type": "string"
},
"capabilities": {
"type": "object",
"additionalProperties": {
"type": "object"
}
},
"processing_settings": {
"type": "object",
"properties": {
"html": {
"type": "object",
"properties": {
"pretty_urls": {
"type": "boolean"
}
}
}
}
},
"build_settings": {
"$ref": "#/components/schemas/repoInfo"
},
"id_domain": {
"type": "string"
},
"default_hooks_data": {
"type": "object",
"properties": {
"access_token": {
"type": "string"
}
}
},
"build_image": {
"type": "string"
},
"prerender": {
"type": "string"
},
"functions_region": {
"type": "string"
}
}
},
"siteSetup": {
"allOf": [
{
"$ref": "#/components/schemas/site"
},
{
"properties": {
"repo": {
"$ref": "#/components/schemas/repoInfo"
}
}
}
]
},
"repoInfo": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"provider": {
"type": "string"
},
"deploy_key_id": {
"type": "string"
},
"repo_path": {
"type": "string"
},
"repo_branch": {
"type": "string"
},
"dir": {
"type": "string"
},
"functions_dir": {
"type": "string"
},
"cmd": {
"type": "string"
},
"allowed_branches": {
"type": "array",
"items": {
"type": "string"
}
},
"public_repo": {
"type": "boolean"
},
"private_logs": {
"type": "boolean"
},
"repo_url": {
"type": "string"
},
"env": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"installation_id": {
"type": "integer"
},
"stop_builds": {
"type": "boolean"
}
}
},
"submission": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"number": {
"type": "integer",
"format": "int32"
},
"email": {
"type": "string"
},
"name": {
"type": "string"
},
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
},
"company": {
"type": "string"
},
"summary": {
"type": "string"
},
"body": {
"type": "string"
},
"data": {
"type": "object"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"site_url": {
"type": "string"
}
}
},
"envVar": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The environment variable key, like ALGOLIA_ID (case-sensitive)",
"x-faker": "commerce.productName"
},
"scopes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"builds",
"functions",
"runtime",
"post-processing"
]
},
"description": "The scopes that this environment variable is set to"
},
"values": {
"type": "array",
"items": {
"$ref": "#/components/schemas/envVarValue"
},
"description": "An array of Value objects containing values and metadata",
"x-faker": "internet.password"
},
"is_secret": {
"type": "boolean",
"description": "Secret values are only readable by code running on Netlify’s systems. With secrets, only the local development context values are readable from the UI, API, and CLI. By default, environment variable values are not secret. (Enterprise plans only)"
},
"updated_at": {
"type": "string",
"format": "date-time",
"description": "The timestamp of when the value was last updated",
"x-faker": "date.past"
},
"updated_by": {
"$ref": "#/components/schemas/envVarUser"
}
},
"description": "Environment variable model definition"
},
"envVarValue": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The environment variable value's universally unique ID",
"x-faker": "datatype.uuid"
},
"value": {
"type": "string",
"description": "The environment variable's unencrypted value",
"x-faker": "internet.password"
},
"context": {
"type": "string",
"enum": [
"all",
"dev",
"branch-deploy",
"deploy-preview",
"production",
"branch"
],
"description": "The deploy context in which this value will be used. `dev` refers to local development when running `netlify dev`."
},
"context_parameter": {
"type": "string",
"description": "An additional parameter for custom branches. Currently, this is used for specifying a branch name when `context=branch`."
}
},
"description": "Environment variable value model definition"
},
"envVarUser": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The user's unique identifier",
"x-faker": "datatype.number"
},
"full_name": {
"type": "string",
"description": "The user's full name (first and last)",
"x-faker": "name.findName"
},
"email": {
"type": "string",
"description": "The user's email address",
"x-faker": "internet.email"
},
"avatar_url": {
"type": "string",
"description": "A URL pointing to the user's avatar",
"x-faker": "internet.avatar"
}
}
},
"form": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"site_id": {
"type": "string"
},
"name": {
"type": "string"
},
"paths": {
"type": "array",
"items": {
"type": "string"
}
},
"submission_count": {
"type": "integer",
"format": "int32"
},
"fields": {
"type": "array",
"items": {
"type": "object"
}
},
"created_at": {
"type": "string",
"format": "dateTime"
}
}
},
"hookType": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"events": {
"type": "array",
"items": {
"type": "string"
}
},
"fields": {
"type": "array",
"items": {
"type": "object"
}
}
}
},
"hook": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"site_id": {
"type": "string"
},
"type": {
"type": "string"
},
"event": {
"type": "string"
},
"data": {
"type": "object"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
},
"disabled": {
"type": "boolean"
}
}
},
"file": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"path": {
"type": "string"
},
"sha": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int64"
}
}
},
"function": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"sha": {
"type": "string"
}
}
},
"snippet": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"site_id": {
"type": "string"
},
"title": {
"type": "string"
},
"general": {
"type": "string"
},
"general_position": {
"type": "string"
},
"goal": {
"type": "string"
},
"goal_position": {
"type": "string"
}
}
},
"purge": {
"type": "object",
"properties": {
"site_id": {
"type": "string"
},
"site_slug": {
"type": "string"
},
"cache_tags": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"deploy": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"site_id": {
"type": "string"
},
"user_id": {
"type": "string"
},
"build_id": {
"type": "string"
},
"state": {
"type": "string"
},
"name": {
"type": "string"
},
"url": {
"type": "string"
},
"ssl_url": {
"type": "string"
},
"admin_url": {
"type": "string"
},
"deploy_url": {
"type": "string"
},
"deploy_ssl_url": {
"type": "string"
},
"screenshot_url": {
"type": "string"
},
"review_id": {
"type": "number"
},
"draft": {
"type": "boolean"
},
"required": {
"type": "array",
"items": {
"type": "string"
}
},
"required_functions": {
"type": "array",
"items": {
"type": "string"
}
},
"error_message": {
"type": "string"
},
"branch": {
"type": "string"
},
"commit_ref": {
"type": "string"
},
"commit_url": {
"type": "string"
},
"skipped": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
},
"published_at": {
"type": "string",
"format": "dateTime"
},
"title": {
"type": "string"
},
"context": {
"type": "string"
},
"locked": {
"type": "boolean"
},
"review_url": {
"type": "string"
},
"site_capabilities": {
"type": "object",
"properties": {
"large_media_enabled": {
"type": "boolean"
}
}
},
"framework": {
"type": "string"
},
"function_schedules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/functionSchedule"
}
}
}
},
"deployFiles": {
"type": "object",
"properties": {
"files": {
"type": "object"
},
"draft": {
"type": "boolean"
},
"async": {
"type": "boolean"
},
"functions": {
"type": "object"
},
"function_schedules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/functionSchedule"
}
},
"functions_config": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/functionConfig"
}
},
"branch": {
"type": "string"
},
"framework": {
"type": "string"
},
"framework_version": {
"type": "string"
}
}
},
"pluginParams": {
"type": "object",
"properties": {
"pinned_version": {
"type": "string"
}
}
},
"plugin": {
"type": "object",
"properties": {
"package": {
"type": "string"
},
"pinned_version": {
"type": "string"
}
}
},
"buildStatus": {
"type": "object",
"properties": {
"active": {
"type": "integer"
},
"pending_concurrency": {
"type": "integer"
},
"enqueued": {
"type": "integer"
},
"build_count": {
"type": "integer"
},
"minutes": {
"type": "object",
"properties": {
"current": {
"type": "integer"
},
"current_average_sec": {
"type": "integer"
},
"previous": {
"type": "integer"
},
"period_start_date": {
"type": "string",
"format": "dateTime"
},
"period_end_date": {
"type": "string",
"format": "dateTime"
},
"last_updated_at": {
"type": "string",
"format": "dateTime"
},
"included_minutes": {
"type": "string"
},
"included_minutes_with_packs": {
"type": "string"
}
}
}
}
},
"build": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"deploy_id": {
"type": "string"
},
"sha": {
"type": "string"
},
"done": {
"type": "boolean"
},
"error": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
}
}
},
"buildLogMsg": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"error": {
"type": "boolean"
},
"section": {
"type": "string",
"enum": [
"initializing",
"building",
"deploying",
"cleanup",
"postprocessing"
]
}
}
},
"pluginRunData": {
"type": "object",
"properties": {
"package": {
"type": "string"
},
"version": {
"type": "string"
},
"state": {
"type": "string"
},
"reporting_event": {
"type": "string"
},
"title": {
"type": "string"
},
"summary": {
"type": "string"
},
"text": {
"type": "string"
}
}
},
"pluginRun": {
"allOf": [
{
"$ref": "#/components/schemas/pluginRunData"
},
{
"type": "object",
"properties": {
"deploy_id": {
"type": "string"
}
}
}
]
},
"metadata": {
"type": "object"
},
"dnsZoneSetup": {
"type": "object",
"properties": {
"account_slug": {
"type": "string"
},
"site_id": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"dnsZones": {
"type": "array",
"items": {
"$ref": "#/components/schemas/dnsZone"
}
},
"dnsZone": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"errors": {
"type": "array",
"items": {
"type": "string"
}
},
"supported_record_types": {
"type": "array",
"items": {
"type": "string"
}
},
"user_id": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
},
"records": {
"type": "array",
"items": {
"$ref": "#/components/schemas/dnsRecord"
}
},
"dns_servers": {
"type": "array",
"items": {
"type": "string"
}
},
"account_id": {
"type": "string"
},
"site_id": {
"type": "string"
},
"account_slug": {
"type": "string"
},
"account_name": {
"type": "string"
},
"domain": {
"type": "string"
},
"ipv6_enabled": {
"type": "boolean"
},
"dedicated": {
"type": "boolean"
}
}
},
"dnsRecordCreate": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"hostname": {
"type": "string"
},
"value": {
"type": "string"
},
"ttl": {
"type": "integer",
"format": "int64"
},
"priority": {
"type": "integer",
"format": "int64"
},
"weight": {
"type": "integer",
"format": "int64"
},
"port": {
"type": "integer",
"format": "int64"
},
"flag": {
"type": "integer",
"format": "int64"
},
"tag": {
"type": "string"
}
}
},
"dnsRecords": {
"type": "array",
"items": {
"$ref": "#/components/schemas/dnsRecord"
}
},
"dnsRecord": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"hostname": {
"type": "string"
},
"type": {
"type": "string"
},
"value": {
"type": "string"
},
"ttl": {
"type": "integer",
"format": "int64"
},
"priority": {
"type": "integer",
"format": "int64"
},
"dns_zone_id": {
"type": "string"
},
"site_id": {
"type": "string"
},
"flag": {
"type": "integer"
},
"tag": {
"type": "string"
},
"managed": {
"type": "boolean"
}
}
},
"sniCertificate": {
"type": "object",
"properties": {
"state": {
"type": "string"
},
"domains": {
"type": "array",
"items": {
"type": "string"
}
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
},
"expires_at": {
"type": "string",
"format": "dateTime"
}
}
},
"ticket": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"client_id": {
"type": "string"
},
"authorized": {
"type": "boolean"
},
"created_at": {
"type": "string",
"format": "dateTime"
}
}
},
"accessToken": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"access_token": {
"type": "string"
},
"user_id": {
"type": "string"
},
"user_email": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
}
}
},
"asset": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"site_id": {
"type": "string"
},
"creator_id": {
"type": "string"
},
"name": {
"type": "string"
},
"state": {
"type": "string"
},
"content_type": {
"type": "string"
},
"url": {
"type": "string"
},
"key": {
"type": "string"
},
"visibility": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int64"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
}
}
},
"assetForm": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"fields": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"assetSignature": {
"type": "object",
"properties": {
"form": {
"$ref": "#/components/schemas/assetForm"
},
"asset": {
"$ref": "#/components/schemas/asset"
}
}
},
"assetPublicSignature": {
"type": "object",
"properties": {
"url": {
"type": "string"
}
}
},
"deployKey": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"public_key": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
}
}
},
"member": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"full_name": {
"type": "string"
},
"email": {
"type": "string"
},
"avatar": {
"type": "string"
},
"role": {
"type": "string"
}
}
},
"paymentMethod": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"method_name": {
"type": "string"
},
"type": {
"type": "string"
},
"state": {
"type": "string"
},
"data": {
"type": "object",
"properties": {
"card_type": {
"type": "string"
},
"last4": {
"type": "string"
},
"email": {
"type": "string"
}
}
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
}
}
},
"accountType": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"capabilities": {
"type": "object"
},
"monthly_dollar_price": {
"type": "integer"
},
"yearly_dollar_price": {
"type": "integer"
},
"monthly_seats_addon_dollar_price": {
"type": "integer"
},
"yearly_seats_addon_dollar_price": {
"type": "integer"
}
}
},
"accountSetup": {
"type": "object",
"required": [
"name",
"type_id"
],
"properties": {
"name": {
"type": "string"
},
"type_id": {
"type": "string"
},
"payment_method_id": {
"type": "string"
},
"period": {
"type": "string",
"enum": [
"monthly",
"yearly"
]
},
"extra_seats_block": {
"type": "integer"
}
}
},
"accountUpdateSetup": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"type_id": {
"type": "string"
},
"extra_seats_block": {
"type": "integer"
},
"billing_name": {
"type": "string"
},
"billing_email": {
"type": "string"
},
"billing_details": {
"type": "string"
}
}
},
"accountAddMemberSetup": {
"type": "object",
"properties": {
"role": {
"type": "string",
"enum": [
"Owner",
"Collaborator",
"Controller"
]
},
"email": {
"type": "string"
}
}
},
"accountUpdateMemberSetup": {
"type": "object",
"properties": {
"role": {
"type": "string",
"enum": [
"Owner",
"Collaborator",
"Controller"
]
},
"site_access": {
"type": "string",
"enum": [
"all",
"none",
"selected"
]
},
"site_ids": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"accountMembership": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"type": {
"type": "string"
},
"capabilities": {
"type": "object",
"properties": {
"sites": {
"$ref": "#/components/schemas/accountUsageCapability"
},
"collaborators": {
"$ref": "#/components/schemas/accountUsageCapability"
}
}
},
"billing_name": {
"type": "string"
},
"billing_email": {
"type": "string"
},
"billing_details": {
"type": "string"
},
"billing_period": {
"type": "string"
},
"payment_method_id": {
"type": "string"
},
"type_name": {
"type": "string"
},
"type_id": {
"type": "string"
},
"owner_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"roles_allowed": {
"type": "array",
"items": {
"type": "string"
}
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"updated_at": {
"type": "string",
"format": "dateTime"
}
}
},
"auditLog": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"account_id": {
"type": "string"
},
"payload": {
"type": "object",
"properties": {
"actor_id": {
"type": "string"
},
"actor_name": {
"type": "string"
},
"actor_email": {
"type": "string"
},
"action": {
"type": "string"
},
"timestamp": {
"type": "string",
"format": "dateTime"
},
"log_type": {
"type": "string"
}
},
"additionalProperties": {
"type": "object"
}
}
}
},
"accountUsageCapability": {
"type": "object",
"properties": {
"included": {
"type": "integer"
},
"used": {
"type": "integer"
}
}
},
"buildSetup": {
"type": "object",
"properties": {
"image": {
"type": "string"
},
"clear_cache": {
"type": "boolean"
}
}
},
"buildHookSetup": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"branch": {
"type": "string"
}
}
},
"buildHook": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"branch": {
"type": "string"
},
"url": {
"type": "string"
},
"site_id": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
}
}
},
"deployedBranch": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"deploy_id": {
"type": "string"
},
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"url": {
"type": "string"
},
"ssl_url": {
"type": "string"
}
}
},
"user": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"uid": {
"type": "string"
},
"full_name": {
"type": "string"
},
"avatar_url": {
"type": "string"
},
"email": {
"type": "string"
},
"affiliate_id": {
"type": "string"
},
"site_count": {
"type": "integer",
"format": "int64"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"last_login": {
"type": "string",
"format": "dateTime"
},
"login_providers": {
"type": "array",
"items": {
"type": "string"
}
},
"onboarding_progress": {
"type": "object",
"properties": {
"slides": {
"type": "string"
}
}
}
}
},
"error": {
"type": "object",
"required": [
"message"
],
"properties": {
"code": {
"type": "integer",
"format": "int64"
},
"message": {
"type": "string",
"nullable": false
}
}
},
"functionSchedule": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"cron": {
"type": "string"
}
}
},
"functionConfig": {
"type": "object",
"properties": {
"display_name": {
"type": "string"
},
"generator": {
"type": "string"
},
"build_data": {
"type": "object"
},
"routes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/functionRoute"
}
}
}
},
"functionRoute": {
"type": "object",
"properties": {
"pattern": {
"type": "string"
},
"literal": {
"type": "string"
},
"expression": {
"type": "string"
},
"methods": {
"type": "array",
"items": {
"type": "string",
"enum": [
"GET",
"POST",
"PUT",
"PATCH",
"DELETE",
"OPTIONS"
]
}
},
"prefer_static": {
"type": "boolean"
}
}
},
"siteFunction": {
"type": "object",
"properties": {
"branch": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "dateTime"
},
"functions": {
"type": "array",
"items": {
"type": "object"
}
},
"id": {
"type": "string"
},
"log_type": {
"type": "string"
},
"provider": {
"type": "string"
}
}
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment