{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/github/refs/heads/main/json-schema/github-repo-projects-api-project-schema.json",
  "title": "project",
  "description": "Projects are a way to organize columns and cards of work.",
  "type": "object",
  "properties": {
    "owner_url": {
      "type": "string",
      "format": "uri",
      "example": "https://api.github.com/repos/api-playground/projects-test"
    },
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://api.github.com/projects/1002604"
    },
    "html_url": {
      "type": "string",
      "format": "uri",
      "example": "https://github.com/api-playground/projects-test/projects/12"
    },
    "columns_url": {
      "type": "string",
      "format": "uri",
      "example": "https://api.github.com/projects/1002604/columns"
    },
    "id": {
      "type": "integer",
      "example": 1002604
    },
    "node_id": {
      "type": "string",
      "example": "MDc6UHJvamVjdDEwMDI2MDQ="
    },
    "name": {
      "description": "Name of the project",
      "example": "Week One Sprint",
      "type": "string"
    },
    "body": {
      "description": "Body of the project",
      "example": "This project represents the sprint of the first week in January",
      "type": "string"
    },
    "number": {
      "type": "integer",
      "example": 1
    },
    "state": {
      "description": "State of the project; either 'open' or 'closed'",
      "example": "open",
      "type": "string"
    },
    "creator": {
      "$ref": "#/components/schemas/nullable-simple-user"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2011-04-10T20:09:31Z"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "example": "2014-03-03T18:58:10Z"
    },
    "organization_permission": {
      "description": "The baseline permission that all organization members have on this project. Only present if owner is an organization.",
      "type": "string",
      "enum": [
        "read",
        "write",
        "admin",
        "none"
      ],
      "example": "read"
    },
    "private": {
      "description": "Whether or not this project can be seen by everyone. Only present if owner is an organization.",
      "type": "boolean",
      "example": true
    }
  },
  "required": [
    "id",
    "node_id",
    "number",
    "name",
    "body",
    "state",
    "url",
    "html_url",
    "owner_url",
    "creator",
    "columns_url",
    "created_at",
    "updated_at"
  ]
}