{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/github/main/json-schema/github-project-schema.json", "title": "Project", "description": "Projects are a way to organize columns and cards of work.", "x-generated": "2026-10-03", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/github-projects-api-openapi.yml#/components/schemas/project", "type": "object", "properties": { "owner_url": { "type": "string", "format": "uri" }, "url": { "type": "string", "format": "uri" }, "html_url": { "type": "string", "format": "uri" }, "columns_url": { "type": "string", "format": "uri" }, "id": { "type": "integer" }, "node_id": { "type": "string" }, "name": { "description": "Name of the project", "type": "string" }, "body": { "description": "Body of the project", "type": [ "string", "null" ] }, "number": { "type": "integer" }, "state": { "description": "State of the project; either 'open' or 'closed'", "type": "string" }, "creator": { "$ref": "#/$defs/nullable-simple-user" }, "created_at": { "type": "string", "format": "date-time" }, "updated_at": { "type": "string", "format": "date-time" }, "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" ] }, "private": { "description": "Whether or not this project can be seen by everyone. Only present if owner is an organization.", "type": "boolean" } }, "required": [ "id", "node_id", "number", "name", "body", "state", "url", "html_url", "owner_url", "creator", "columns_url", "created_at", "updated_at" ], "$defs": { "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" }, "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" } }, "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" ] } } }