{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/page",
  "title": "GitHub Pages",
  "description": "The configuration for GitHub Pages for a repository.",
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "The API address for accessing this Page resource.",
      "format": "uri",
      "example": "https://api.github.com/repos/github/hello-world/pages"
    },
    "status": {
      "type": "string",
      "description": "The status of the most recent build of the Page.",
      "example": "built",
      "enum": [
        "built",
        "building",
        "errored"
      ],
      "nullable": true
    },
    "cname": {
      "description": "The Pages site's custom domain",
      "example": "example.com",
      "type": "string",
      "nullable": true
    },
    "protected_domain_state": {
      "type": "string",
      "description": "The state if the domain is verified",
      "example": "pending",
      "nullable": true,
      "enum": [
        "pending",
        "verified",
        "unverified"
      ]
    },
    "pending_domain_unverified_at": {
      "type": "string",
      "description": "The timestamp when a pending domain becomes unverified.",
      "nullable": true,
      "format": "date-time"
    },
    "custom_404": {
      "type": "boolean",
      "description": "Whether the Page has a custom 404 page.",
      "example": false,
      "default": false
    },
    "html_url": {
      "type": "string",
      "description": "The web address the Page can be accessed from.",
      "format": "uri",
      "example": "https://example.com"
    },
    "build_type": {
      "type": "string",
      "description": "The process in which the Page will be built.",
      "example": "legacy",
      "nullable": true,
      "enum": [
        "legacy",
        "workflow"
      ]
    },
    "source": {
      "$ref": "#/components/schemas/pages-source-hash"
    },
    "public": {
      "type": "boolean",
      "description": "Whether the GitHub Pages site is publicly visible. If set to `true`, the site is accessible to anyone on the internet. If set to `false`, the site will only be accessible to users who have at least `read` access to the repository that published the site.",
      "example": true
    },
    "https_certificate": {
      "$ref": "#/components/schemas/pages-https-certificate"
    },
    "https_enforced": {
      "type": "boolean",
      "description": "Whether https is enabled on the domain",
      "example": true
    }
  },
  "required": [
    "url",
    "status",
    "cname",
    "custom_404",
    "public"
  ]
}