{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/check-suite",
  "title": "CheckSuite",
  "description": "A suite of checks performed on the code of a given code change",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "example": 5
    },
    "node_id": {
      "type": "string",
      "example": "MDEwOkNoZWNrU3VpdGU1"
    },
    "head_branch": {
      "type": "string",
      "example": "master",
      "nullable": true
    },
    "head_sha": {
      "description": "The SHA of the head commit that is being checked.",
      "example": "009b8a3a9ccbb128af87f9b1c0f4c62e8a304f6d",
      "type": "string"
    },
    "status": {
      "type": "string",
      "description": "The phase of the lifecycle that the check suite is currently in. Statuses of waiting, requested, and pending are reserved for GitHub Actions check suites.",
      "example": "completed",
      "enum": [
        "queued",
        "in_progress",
        "completed",
        "waiting",
        "requested",
        "pending"
      ],
      "nullable": true
    },
    "conclusion": {
      "type": "string",
      "example": "neutral",
      "enum": [
        "success",
        "failure",
        "neutral",
        "cancelled",
        "skipped",
        "timed_out",
        "action_required",
        "startup_failure",
        "stale",
        null
      ],
      "nullable": true
    },
    "url": {
      "type": "string",
      "example": "https://api.github.com/repos/github/hello-world/check-suites/5",
      "nullable": true
    },
    "before": {
      "type": "string",
      "example": "146e867f55c26428e5f9fade55a9bbf5e95a7912",
      "nullable": true
    },
    "after": {
      "type": "string",
      "example": "d6fde92930d4715a2b49857d24b940956b26d2d3",
      "nullable": true
    },
    "pull_requests": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pull-request-minimal"
      },
      "nullable": true
    },
    "app": {
      "$ref": "#/components/schemas/nullable-integration"
    },
    "repository": {
      "$ref": "#/components/schemas/minimal-repository"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "head_commit": {
      "$ref": "#/components/schemas/simple-commit"
    },
    "latest_check_runs_count": {
      "type": "integer"
    },
    "check_runs_url": {
      "type": "string"
    },
    "rerequestable": {
      "type": "boolean"
    },
    "runs_rerequestable": {
      "type": "boolean"
    }
  },
  "required": [
    "id",
    "node_id",
    "head_branch",
    "status",
    "conclusion",
    "head_sha",
    "url",
    "before",
    "after",
    "created_at",
    "updated_at",
    "app",
    "head_commit",
    "repository",
    "latest_check_runs_count",
    "check_runs_url",
    "pull_requests"
  ]
}