{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/full-repository",
  "title": "Full Repository",
  "description": "Full Repository",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64",
      "example": 1296269
    },
    "node_id": {
      "type": "string",
      "example": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5"
    },
    "name": {
      "type": "string",
      "example": "Hello-World"
    },
    "full_name": {
      "type": "string",
      "example": "octocat/Hello-World"
    },
    "owner": {
      "$ref": "#/components/schemas/simple-user"
    },
    "private": {
      "type": "boolean"
    },
    "html_url": {
      "type": "string",
      "format": "uri",
      "example": "https://github.com/octocat/Hello-World"
    },
    "description": {
      "type": "string",
      "example": "This your first repo!",
      "nullable": true
    },
    "fork": {
      "type": "boolean"
    },
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://api.github.com/repos/octocat/Hello-World"
    },
    "archive_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"
    },
    "assignees_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/assignees{/user}"
    },
    "blobs_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"
    },
    "branches_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/branches{/branch}"
    },
    "collaborators_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"
    },
    "comments_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/comments{/number}"
    },
    "commits_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/commits{/sha}"
    },
    "compare_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"
    },
    "contents_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/contents/{+path}"
    },
    "contributors_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/contributors"
    },
    "deployments_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/deployments"
    },
    "downloads_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/downloads"
    },
    "events_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/events"
    },
    "forks_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/forks"
    },
    "git_commits_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"
    },
    "git_refs_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"
    },
    "git_tags_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"
    },
    "git_url": {
      "type": "string",
      "example": "git:github.com/octocat/Hello-World.git"
    },
    "issue_comment_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"
    },
    "issue_events_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"
    },
    "issues_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/issues{/number}"
    },
    "keys_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"
    },
    "labels_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/labels{/name}"
    },
    "languages_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/languages"
    },
    "merges_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/merges"
    },
    "milestones_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/milestones{/number}"
    },
    "notifications_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"
    },
    "pulls_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/pulls{/number}"
    },
    "releases_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/releases{/id}"
    },
    "ssh_url": {
      "type": "string",
      "example": "git@github.com:octocat/Hello-World.git"
    },
    "stargazers_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/stargazers"
    },
    "statuses_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"
    },
    "subscribers_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/subscribers"
    },
    "subscription_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/subscription"
    },
    "tags_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/tags"
    },
    "teams_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/teams"
    },
    "trees_url": {
      "type": "string",
      "example": "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"
    },
    "clone_url": {
      "type": "string",
      "example": "https://github.com/octocat/Hello-World.git"
    },
    "mirror_url": {
      "type": "string",
      "format": "uri",
      "example": "git:git.example.com/octocat/Hello-World",
      "nullable": true
    },
    "hooks_url": {
      "type": "string",
      "format": "uri",
      "example": "http://api.github.com/repos/octocat/Hello-World/hooks"
    },
    "svn_url": {
      "type": "string",
      "format": "uri",
      "example": "https://svn.github.com/octocat/Hello-World"
    },
    "homepage": {
      "type": "string",
      "format": "uri",
      "example": "https://github.com",
      "nullable": true
    },
    "language": {
      "type": "string",
      "nullable": true
    },
    "forks_count": {
      "type": "integer",
      "example": 9
    },
    "stargazers_count": {
      "type": "integer",
      "example": 80
    },
    "watchers_count": {
      "type": "integer",
      "example": 80
    },
    "size": {
      "description": "The size of the repository, in kilobytes. Size is calculated hourly. When a repository is initially created, the size is 0.",
      "type": "integer",
      "example": 108
    },
    "default_branch": {
      "type": "string",
      "example": "master"
    },
    "open_issues_count": {
      "type": "integer",
      "example": 0
    },
    "is_template": {
      "type": "boolean",
      "example": true
    },
    "topics": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "octocat",
        "atom",
        "electron",
        "API"
      ]
    },
    "has_issues": {
      "type": "boolean",
      "example": true
    },
    "has_projects": {
      "type": "boolean",
      "example": true
    },
    "has_wiki": {
      "type": "boolean",
      "example": true
    },
    "has_pages": {
      "type": "boolean"
    },
    "has_downloads": {
      "type": "boolean",
      "example": true
    },
    "has_discussions": {
      "type": "boolean",
      "example": true
    },
    "archived": {
      "type": "boolean"
    },
    "disabled": {
      "type": "boolean",
      "description": "Returns whether or not this repository disabled."
    },
    "visibility": {
      "description": "The repository visibility: public, private, or internal.",
      "type": "string",
      "example": "public"
    },
    "pushed_at": {
      "type": "string",
      "format": "date-time",
      "example": "2011-01-26T19:06:43Z"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2011-01-26T19:01:12Z"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "example": "2011-01-26T19:14:43Z"
    },
    "permissions": {
      "type": "object",
      "properties": {
        "admin": {
          "type": "boolean"
        },
        "maintain": {
          "type": "boolean"
        },
        "push": {
          "type": "boolean"
        },
        "triage": {
          "type": "boolean"
        },
        "pull": {
          "type": "boolean"
        }
      },
      "required": [
        "admin",
        "pull",
        "push"
      ]
    },
    "allow_rebase_merge": {
      "type": "boolean",
      "example": true
    },
    "template_repository": {
      "$ref": "#/components/schemas/nullable-repository"
    },
    "temp_clone_token": {
      "type": "string",
      "nullable": true
    },
    "allow_squash_merge": {
      "type": "boolean",
      "example": true
    },
    "allow_auto_merge": {
      "type": "boolean",
      "example": false
    },
    "delete_branch_on_merge": {
      "type": "boolean",
      "example": false
    },
    "allow_merge_commit": {
      "type": "boolean",
      "example": true
    },
    "allow_update_branch": {
      "type": "boolean",
      "example": true
    },
    "use_squash_pr_title_as_default": {
      "type": "boolean",
      "example": false
    },
    "squash_merge_commit_title": {
      "type": "string",
      "example": "PR_TITLE",
      "enum": [
        "PR_TITLE",
        "COMMIT_OR_PR_TITLE"
      ],
      "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."
    },
    "squash_merge_commit_message": {
      "type": "string",
      "example": "PR_BODY",
      "enum": [
        "PR_BODY",
        "COMMIT_MESSAGES",
        "BLANK"
      ],
      "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."
    },
    "merge_commit_title": {
      "type": "string",
      "example": "PR_TITLE",
      "enum": [
        "PR_TITLE",
        "MERGE_MESSAGE"
      ],
      "description": "The default value for a merge commit title.\n\n  - `PR_TITLE` - default to the pull request's title.\n  - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."
    },
    "merge_commit_message": {
      "type": "string",
      "example": "PR_BODY",
      "enum": [
        "PR_BODY",
        "PR_TITLE",
        "BLANK"
      ],
      "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."
    },
    "allow_forking": {
      "type": "boolean",
      "example": true
    },
    "web_commit_signoff_required": {
      "type": "boolean",
      "example": false
    },
    "subscribers_count": {
      "type": "integer",
      "example": 42
    },
    "network_count": {
      "type": "integer",
      "example": 0
    },
    "license": {
      "$ref": "#/components/schemas/nullable-license-simple"
    },
    "organization": {
      "$ref": "#/components/schemas/nullable-simple-user"
    },
    "parent": {
      "$ref": "#/components/schemas/repository"
    },
    "source": {
      "$ref": "#/components/schemas/repository"
    },
    "forks": {
      "type": "integer"
    },
    "master_branch": {
      "type": "string"
    },
    "open_issues": {
      "type": "integer"
    },
    "watchers": {
      "type": "integer"
    },
    "anonymous_access_enabled": {
      "description": "Whether anonymous git access is allowed.",
      "default": true,
      "type": "boolean"
    },
    "code_of_conduct": {
      "$ref": "#/components/schemas/code-of-conduct-simple"
    },
    "security_and_analysis": {
      "$ref": "#/components/schemas/security-and-analysis"
    }
  },
  "required": [
    "archive_url",
    "assignees_url",
    "blobs_url",
    "branches_url",
    "collaborators_url",
    "comments_url",
    "commits_url",
    "compare_url",
    "contents_url",
    "contributors_url",
    "deployments_url",
    "description",
    "downloads_url",
    "events_url",
    "fork",
    "forks_url",
    "full_name",
    "git_commits_url",
    "git_refs_url",
    "git_tags_url",
    "hooks_url",
    "html_url",
    "id",
    "node_id",
    "issue_comment_url",
    "issue_events_url",
    "issues_url",
    "keys_url",
    "labels_url",
    "languages_url",
    "merges_url",
    "milestones_url",
    "name",
    "notifications_url",
    "owner",
    "private",
    "pulls_url",
    "releases_url",
    "stargazers_url",
    "statuses_url",
    "subscribers_url",
    "subscription_url",
    "tags_url",
    "teams_url",
    "trees_url",
    "url",
    "clone_url",
    "default_branch",
    "forks",
    "forks_count",
    "git_url",
    "has_issues",
    "has_projects",
    "has_wiki",
    "has_pages",
    "has_discussions",
    "homepage",
    "language",
    "archived",
    "disabled",
    "mirror_url",
    "open_issues",
    "open_issues_count",
    "license",
    "pushed_at",
    "size",
    "ssh_url",
    "stargazers_count",
    "svn_url",
    "watchers",
    "watchers_count",
    "created_at",
    "updated_at",
    "network_count",
    "subscribers_count"
  ]
}