{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/github-enterprise/json-schema/github-enterprise-team-repository-schema.json",
  "title": "Team Repository",
  "description": "A team's access to a repository.",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/github-enterprise-openapi.yml#/components/schemas/team-repository",
  "type": "object",
  "properties": {
    "id": {
      "description": "Unique identifier of the repository",
      "type": "integer"
    },
    "node_id": {
      "type": "string"
    },
    "name": {
      "description": "The name of the repository.",
      "type": "string"
    },
    "full_name": {
      "type": "string"
    },
    "license": {
      "$ref": "#/$defs/nullable-license-simple"
    },
    "forks": {
      "type": "integer"
    },
    "permissions": {
      "type": "object",
      "properties": {
        "admin": {
          "type": "boolean"
        },
        "pull": {
          "type": "boolean"
        },
        "triage": {
          "type": "boolean"
        },
        "push": {
          "type": "boolean"
        },
        "maintain": {
          "type": "boolean"
        }
      },
      "required": [
        "admin",
        "pull",
        "push"
      ]
    },
    "role_name": {
      "type": "string"
    },
    "owner": {
      "$ref": "#/$defs/nullable-simple-user"
    },
    "private": {
      "description": "Whether the repository is private or public.",
      "default": false,
      "type": "boolean"
    },
    "html_url": {
      "type": "string",
      "format": "uri"
    },
    "description": {
      "type": [
        "string",
        "null"
      ]
    },
    "fork": {
      "type": "boolean"
    },
    "url": {
      "type": "string",
      "format": "uri"
    },
    "archive_url": {
      "type": "string"
    },
    "assignees_url": {
      "type": "string"
    },
    "blobs_url": {
      "type": "string"
    },
    "branches_url": {
      "type": "string"
    },
    "collaborators_url": {
      "type": "string"
    },
    "comments_url": {
      "type": "string"
    },
    "commits_url": {
      "type": "string"
    },
    "compare_url": {
      "type": "string"
    },
    "contents_url": {
      "type": "string"
    },
    "contributors_url": {
      "type": "string",
      "format": "uri"
    },
    "deployments_url": {
      "type": "string",
      "format": "uri"
    },
    "downloads_url": {
      "type": "string",
      "format": "uri"
    },
    "events_url": {
      "type": "string",
      "format": "uri"
    },
    "forks_url": {
      "type": "string",
      "format": "uri"
    },
    "git_commits_url": {
      "type": "string"
    },
    "git_refs_url": {
      "type": "string"
    },
    "git_tags_url": {
      "type": "string"
    },
    "git_url": {
      "type": "string"
    },
    "issue_comment_url": {
      "type": "string"
    },
    "issue_events_url": {
      "type": "string"
    },
    "issues_url": {
      "type": "string"
    },
    "keys_url": {
      "type": "string"
    },
    "labels_url": {
      "type": "string"
    },
    "languages_url": {
      "type": "string",
      "format": "uri"
    },
    "merges_url": {
      "type": "string",
      "format": "uri"
    },
    "milestones_url": {
      "type": "string"
    },
    "notifications_url": {
      "type": "string"
    },
    "pulls_url": {
      "type": "string"
    },
    "releases_url": {
      "type": "string"
    },
    "ssh_url": {
      "type": "string"
    },
    "stargazers_url": {
      "type": "string",
      "format": "uri"
    },
    "statuses_url": {
      "type": "string"
    },
    "subscribers_url": {
      "type": "string",
      "format": "uri"
    },
    "subscription_url": {
      "type": "string",
      "format": "uri"
    },
    "tags_url": {
      "type": "string",
      "format": "uri"
    },
    "teams_url": {
      "type": "string",
      "format": "uri"
    },
    "trees_url": {
      "type": "string"
    },
    "clone_url": {
      "type": "string"
    },
    "mirror_url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    },
    "hooks_url": {
      "type": "string",
      "format": "uri"
    },
    "svn_url": {
      "type": "string",
      "format": "uri"
    },
    "homepage": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri"
    },
    "language": {
      "type": [
        "string",
        "null"
      ]
    },
    "forks_count": {
      "type": "integer"
    },
    "stargazers_count": {
      "type": "integer"
    },
    "watchers_count": {
      "type": "integer"
    },
    "size": {
      "type": "integer"
    },
    "default_branch": {
      "description": "The default branch of the repository.",
      "type": "string"
    },
    "open_issues_count": {
      "type": "integer"
    },
    "is_template": {
      "description": "Whether this repository acts as a template that can be used to generate new repositories.",
      "default": false,
      "type": "boolean"
    },
    "topics": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "has_issues": {
      "description": "Whether issues are enabled.",
      "default": true,
      "type": "boolean"
    },
    "has_projects": {
      "description": "Whether projects are enabled.",
      "default": true,
      "type": "boolean"
    },
    "has_wiki": {
      "description": "Whether the wiki is enabled.",
      "default": true,
      "type": "boolean"
    },
    "has_pages": {
      "type": "boolean"
    },
    "has_downloads": {
      "description": "Whether downloads are enabled.",
      "default": true,
      "type": "boolean"
    },
    "archived": {
      "description": "Whether the repository is archived.",
      "default": false,
      "type": "boolean"
    },
    "disabled": {
      "type": "boolean",
      "description": "Returns whether or not this repository disabled."
    },
    "visibility": {
      "description": "The repository visibility: public, private, or internal.",
      "default": "public",
      "type": "string"
    },
    "pushed_at": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "created_at": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "updated_at": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "allow_rebase_merge": {
      "description": "Whether to allow rebase merges for pull requests.",
      "default": true,
      "type": "boolean"
    },
    "temp_clone_token": {
      "description": "When present and non-empty, a temporary credential for read-only Git access to this repository.\nIt expires five minutes after generation and cannot be used to push changes.\nTreat this value as sensitive and avoid recording it in logs.",
      "type": "string"
    },
    "allow_squash_merge": {
      "description": "Whether to allow squash merges for pull requests.",
      "default": true,
      "type": "boolean"
    },
    "allow_auto_merge": {
      "description": "Whether to allow Auto-merge to be used on pull requests.",
      "default": false,
      "type": "boolean"
    },
    "delete_branch_on_merge": {
      "description": "Whether to delete head branches when pull requests are merged",
      "default": false,
      "type": "boolean"
    },
    "allow_merge_commit": {
      "description": "Whether to allow merge commits for pull requests.",
      "default": true,
      "type": "boolean"
    },
    "allow_forking": {
      "description": "Whether to allow forking this repo",
      "default": false,
      "type": "boolean"
    },
    "web_commit_signoff_required": {
      "description": "Whether to require contributors to sign off on web-based commits",
      "default": false,
      "type": "boolean"
    },
    "subscribers_count": {
      "type": "integer"
    },
    "network_count": {
      "type": "integer"
    },
    "open_issues": {
      "type": "integer"
    },
    "watchers": {
      "type": "integer"
    },
    "master_branch": {
      "type": "string"
    }
  },
  "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_downloads",
    "has_issues",
    "has_projects",
    "has_wiki",
    "has_pages",
    "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"
  ],
  "$defs": {
    "nullable-license-simple": {
      "title": "License Simple",
      "description": "License Simple",
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "key": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "url": {
          "type": [
            "string",
            "null"
          ],
          "format": "uri"
        },
        "spdx_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "node_id": {
          "type": "string"
        },
        "html_url": {
          "type": "string",
          "format": "uri"
        }
      },
      "required": [
        "key",
        "name",
        "url",
        "spdx_id",
        "node_id"
      ]
    },
    "nullable-simple-user": {
      "title": "Simple User",
      "description": "A GitHub user.",
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "name": {
          "type": [
            "string",
            "null"
          ]
        },
        "email": {
          "type": [
            "string",
            "null"
          ]
        },
        "login": {
          "type": "string"
        },
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "node_id": {
          "type": "string"
        },
        "avatar_url": {
          "type": "string",
          "format": "uri"
        },
        "gravatar_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "type": "string",
          "format": "uri"
        },
        "html_url": {
          "type": "string",
          "format": "uri"
        },
        "followers_url": {
          "type": "string",
          "format": "uri"
        },
        "following_url": {
          "type": "string"
        },
        "gists_url": {
          "type": "string"
        },
        "starred_url": {
          "type": "string"
        },
        "subscriptions_url": {
          "type": "string",
          "format": "uri"
        },
        "organizations_url": {
          "type": "string",
          "format": "uri"
        },
        "repos_url": {
          "type": "string",
          "format": "uri"
        },
        "events_url": {
          "type": "string"
        },
        "received_events_url": {
          "type": "string",
          "format": "uri"
        },
        "type": {
          "type": "string"
        },
        "site_admin": {
          "type": "boolean"
        },
        "starred_at": {
          "type": "string"
        },
        "user_view_type": {
          "type": "string"
        }
      },
      "required": [
        "avatar_url",
        "events_url",
        "followers_url",
        "following_url",
        "gists_url",
        "gravatar_id",
        "html_url",
        "id",
        "node_id",
        "login",
        "organizations_url",
        "received_events_url",
        "repos_url",
        "site_admin",
        "starred_url",
        "subscriptions_url",
        "type",
        "url"
      ]
    }
  }
}