{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/github/main/json-schema/github-issue-comment-schema.json", "title": "Issue Comment", "description": "Comments provide a way for people to collaborate on an issue.", "x-generated": "2026-10-03", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/github-issues-api-openapi.yml#/components/schemas/issue-comment", "type": "object", "properties": { "id": { "description": "Unique identifier of the issue comment", "type": "integer", "format": "int64" }, "node_id": { "type": "string" }, "url": { "description": "URL for the issue comment", "type": "string", "format": "uri" }, "body": { "description": "Contents of the issue comment", "type": "string" }, "body_text": { "type": "string" }, "body_html": { "type": "string" }, "html_url": { "type": "string", "format": "uri" }, "user": { "$ref": "#/$defs/nullable-simple-user" }, "created_at": { "type": "string", "format": "date-time" }, "updated_at": { "type": "string", "format": "date-time" }, "issue_url": { "type": "string", "format": "uri" }, "author_association": { "$ref": "#/$defs/author-association" }, "performed_via_github_app": { "$ref": "#/$defs/nullable-integration" }, "reactions": { "$ref": "#/$defs/reaction-rollup" } }, "required": [ "id", "node_id", "html_url", "issue_url", "author_association", "user", "url", "created_at", "updated_at" ], "$defs": { "author-association": { "title": "author_association", "type": "string", "description": "How the author is associated with the repository.", "enum": [ "COLLABORATOR", "CONTRIBUTOR", "FIRST_TIMER", "FIRST_TIME_CONTRIBUTOR", "MANNEQUIN", "MEMBER", "NONE", "OWNER" ] }, "nullable-integration": { "title": "GitHub app", "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", "type": [ "object", "null" ], "properties": { "id": { "description": "Unique identifier of the GitHub app", "type": "integer" }, "slug": { "description": "The slug name of the GitHub app", "type": "string" }, "node_id": { "type": "string" }, "owner": { "$ref": "#/$defs/nullable-simple-user" }, "name": { "description": "The name of the GitHub app", "type": "string" }, "description": { "type": [ "string", "null" ] }, "external_url": { "type": "string", "format": "uri" }, "html_url": { "type": "string", "format": "uri" }, "created_at": { "type": "string", "format": "date-time" }, "updated_at": { "type": "string", "format": "date-time" }, "permissions": { "description": "The set of permissions for the GitHub app", "type": "object", "properties": { "issues": { "type": "string" }, "checks": { "type": "string" }, "metadata": { "type": "string" }, "contents": { "type": "string" }, "deployments": { "type": "string" } }, "additionalProperties": { "type": "string" } }, "events": { "description": "The list of events for the GitHub app", "type": "array", "items": { "type": "string" } }, "installations_count": { "description": "The number of installations associated with the GitHub app", "type": "integer" }, "client_id": { "type": "string" }, "client_secret": { "type": "string" }, "webhook_secret": { "type": [ "string", "null" ] }, "pem": { "type": "string" } }, "required": [ "id", "node_id", "owner", "name", "description", "external_url", "html_url", "created_at", "updated_at", "permissions", "events" ] }, "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" ] }, "reaction-rollup": { "title": "Reaction Rollup", "type": "object", "properties": { "url": { "type": "string", "format": "uri" }, "total_count": { "type": "integer" }, "+1": { "type": "integer" }, "-1": { "type": "integer" }, "laugh": { "type": "integer" }, "confused": { "type": "integer" }, "heart": { "type": "integer" }, "hooray": { "type": "integer" }, "eyes": { "type": "integer" }, "rocket": { "type": "integer" } }, "required": [ "url", "total_count", "+1", "-1", "laugh", "confused", "heart", "hooray", "eyes", "rocket" ] } } }