{
  "openapi": "3.0.0",
  "info": {
    "version": "2.34.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"
    },
    {
      "name": "devServer",
      "x-displayName": "Dev server"
    },
    {
      "name": "devServerHook",
      "x-displayName": "Dev server hook"
    }
  ],
  "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."
      },
      "post": {
        "tags": [
          "environmentVariables"
        ],
        "operationId": "createEnvVars",
        "description": "Creates new environment variables. Granular scopes are available on Pro plans and above.",
        "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."
      },
      "put": {
        "tags": [
          "environmentVariables"
        ],
        "operationId": "updateEnvVar",
        "description": "Updates an existing environment variable and all of its values. Existing values will be replaced by values provided.",
        "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.",
        "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"
      }
    },
    "/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."
      }
    },
    "/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": "timeout",
            "in": "query",
            "schema": {
              "type": "integer"
            }
          },
          {
            "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"
          }
        }
      }
    },
    "/sites/{site_id}/dev_servers": {
      "parameters": [
        {
          "name": "site_id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "get": {
        "operationId": "listSiteDevServers",
        "tags": [
          "devServer"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/page"
          },
          {
            "$ref": "#/components/parameters/perPage"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/devServer"
                  }
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/error"
          }
        }
      },
      "post": {
        "operationId": "createSiteDevServer",
        "tags": [
          "devServer"
        ],
        "parameters": [
          {
            "name": "branch",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/devServer"
                  }
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/error"
          }
        }
      },
      "delete": {
        "operationId": "deleteSiteDevServers",
        "tags": [
          "devServer"
        ],
        "parameters": [
          {
            "name": "branch",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "202": {
            "description": "OK"
          },
          "default": {
            "$ref": "#/components/responses/error"
          }
        }
      }
    },
    "/sites/{site_id}/dev_servers/{dev_server_id}": {
      "parameters": [
        {
          "name": "site_id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "dev_server_id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "get": {
        "operationId": "getSiteDevServer",
        "tags": [
          "devServer"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/devServer"
                }
              }
            }
          }
        }
      }
    },
    "/sites/{site_id}/dev_servers/{dev_server_id}/activity": {
      "parameters": [
        {
          "name": "site_id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "dev_server_id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ]
    },
    "/sites/{site_id}/dev_server_hooks": {
      "parameters": [
        {
          "name": "site_id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "get": {
        "operationId": "listSiteDevServerHooks",
        "tags": [
          "devServerHook"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/devServerHook"
                  }
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/error"
          }
        }
      },
      "post": {
        "operationId": "createSiteDevServerHook",
        "tags": [
          "devServerHook"
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/devServerHookSetup"
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/devServerHook"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/error"
          }
        }
      }
    },
    "/sites/{site_id}/dev_server_hooks/{id}": {
      "parameters": [
        {
          "name": "site_id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        },
        {
          "name": "id",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          }
        }
      ],
      "get": {
        "operationId": "getSiteDevServerHook",
        "tags": [
          "devServerHook"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/devServerHook"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/error"
          }
        }
      },
      "put": {
        "operationId": "updateSiteDevServerHook",
        "tags": [
          "devServerHook"
        ],
        "requestBody": {
          "$ref": "#/components/requestBodies/devServerHookSetup"
        },
        "responses": {
          "204": {
            "description": "No content"
          },
          "default": {
            "$ref": "#/components/responses/error"
          }
        }
      },
      "delete": {
        "operationId": "deleteSiteDevServerHook",
        "tags": [
          "devServerHook"
        ],
        "responses": {
          "204": {
            "description": "No content"
          },
          "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": "Dev servers",
      "tags": [
        "devServer"
      ]
    },
    {
      "name": "Webhooks and notifications",
      "tags": [
        "hook",
        "hookType",
        "buildHook",
        "devServerHook"
      ]
    },
    {
      "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": {
      "devServerHookSetup": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/devServerHookSetup"
            }
          }
        },
        "required": true
      },
      "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_id": {
            "type": "string"
          },
          "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"
          },
          "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",
              "Developer",
              "Billing Admin",
              "Reviewer"
            ]
          },
          "email": {
            "type": "string"
          }
        }
      },
      "accountUpdateMemberSetup": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "Owner",
              "Developer",
              "Billing Admin",
              "Reviewer"
            ]
          },
          "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"
            }
          },
          "excluded_routes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/excludedFunctionRoute"
            }
          },
          "priority": {
            "type": "integer"
          },
          "traffic_rules": {
            "$ref": "#/components/schemas/trafficRulesConfig"
          }
        }
      },
      "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"
          }
        }
      },
      "excludedFunctionRoute": {
        "type": "object",
        "properties": {
          "pattern": {
            "type": "string"
          },
          "literal": {
            "type": "string"
          },
          "expression": {
            "type": "string"
          }
        }
      },
      "trafficRulesConfig": {
        "type": "object",
        "properties": {
          "action": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string"
              },
              "config": {
                "type": "object",
                "properties": {
                  "to": {
                    "type": "string"
                  },
                  "rate_limit_config": {
                    "$ref": "#/components/schemas/trafficRulesRateLimitConfig"
                  },
                  "aggregate": {
                    "$ref": "#/components/schemas/trafficRulesAggregateConfig"
                  }
                }
              }
            }
          }
        }
      },
      "trafficRulesRateLimitConfig": {
        "type": "object",
        "properties": {
          "algorithm": {
            "type": "string",
            "enum": [
              "sliding_window"
            ]
          },
          "window_size": {
            "type": "integer"
          },
          "window_limit": {
            "type": "integer"
          }
        }
      },
      "trafficRulesAggregateConfig": {
        "type": "object",
        "properties": {
          "keys": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string",
                  "enum": [
                    "ip",
                    "domain"
                  ]
                }
              }
            }
          }
        }
      },
      "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"
          }
        }
      },
      "devServer": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "site_id": {
            "type": "string"
          },
          "branch": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "created_at": {
            "type": "string",
            "format": "dateTime"
          },
          "updated_at": {
            "type": "string",
            "format": "dateTime"
          },
          "starting_at": {
            "type": "string",
            "format": "dateTime"
          },
          "error_at": {
            "type": "string",
            "format": "dateTime"
          },
          "live_at": {
            "type": "string",
            "format": "dateTime"
          },
          "done_at": {
            "type": "string",
            "format": "dateTime"
          },
          "title": {
            "type": "string"
          }
        }
      },
      "devServerHook": {
        "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"
          },
          "type": {
            "type": "string",
            "enum": [
              "new_dev_server",
              "content_refresh"
            ]
          }
        }
      },
      "devServerHookSetup": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "branch": {
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "new_dev_server",
              "content_refresh"
            ]
          }
        }
      }
    }
  }
}