{"components":{"headers":{"Link":{"description":"RFC 5988 `Link` header carrying `prev`, `next`, `first`, `last`\nURLs for the paginated collection.\n","schema":{"type":"string"}},"XTotalCount":{"description":"Total number of items across all pages.","schema":{"minimum":0,"type":"integer"}}},"parameters":{"Number":{"description":"Issue or pull request number, scoped per repository.","in":"path","name":"number","required":true,"schema":{"minimum":1,"type":"integer"}},"Owner":{"description":"Repository owner (username or organization).","in":"path","name":"owner","required":true,"schema":{"type":"string"}},"Page":{"description":"1-based page index.","in":"query","name":"page","schema":{"default":1,"minimum":1,"type":"integer"}},"PerPage":{"description":"Page size (max 100).","in":"query","name":"per_page","schema":{"default":20,"maximum":100,"minimum":1,"type":"integer"}},"Repo":{"description":"Repository name.","in":"path","name":"repo","required":true,"schema":{"type":"string"}},"Username":{"in":"path","name":"username","required":true,"schema":{"type":"string"}}},"responses":{"BadRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Malformed input."},"Forbidden":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Authenticated but not allowed (insufficient scope, not the repo owner, etc.)."},"NotFound":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Resource does not exist or is not visible to the caller."},"Unauthorized":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Missing or invalid credentials."}},"schemas":{"ActivityEntry":{"properties":{"action":{"description":"Verb: push, create_pr, merge_pr, comment, ...","type":"string"},"message":{"type":"string"},"owner_name":{"type":"string"},"ref_name":{"type":"string"},"repo_name":{"type":"string"},"sha":{"type":"string"}},"required":["action","message","repo_name","owner_name","ref_name","sha"],"type":"object"},"Branch":{"properties":{"active":{"description":"True if this branch is the repo's default.","type":"boolean"},"name":{"type":"string"}},"required":["name","active"],"type":"object"},"Comment":{"properties":{"author":{"type":"string"},"body":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"id":{"format":"int64","type":"integer"}},"required":["id","author","body","created_at"],"type":"object"},"CommentCreated":{"properties":{"author":{"type":"string"},"body":{"type":"string"}},"required":["body","author"],"type":"object"},"CommitStatus":{"properties":{"context":{"type":"string"},"description":{"type":"string"},"sha":{"type":"string"},"state":{"enum":["pending","success","failure","error"],"type":"string"},"target_url":{"format":"uri","type":"string"}},"required":["sha","state","context"],"type":"object"},"CommitStatusList":{"properties":{"state":{"description":"Combined state across all `(sha, context)` rows.","enum":["pending","success","failure","error"],"type":"string"},"statuses":{"items":{"properties":{"context":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"description":{"type":"string"},"id":{"format":"int64","type":"integer"},"sha":{"type":"string"},"state":{"enum":["pending","success","failure","error"],"type":"string"},"target_url":{"format":"uri","type":"string"}},"type":"object"},"type":"array"}},"required":["state","statuses"],"type":"object"},"CreateBranch":{"properties":{"name":{"description":"Name of the branch to create.","type":"string"},"source":{"description":"Branch or commit-ish to fork from. Defaults to the repo's default branch.","type":"string"}},"required":["name"],"type":"object"},"CreateComment":{"properties":{"body":{"type":"string"}},"required":["body"],"type":"object"},"CreateCommitStatus":{"properties":{"context":{"default":"default","description":"Logical name of the check (e.g. \"ci/build\", \"lint\"). Per `(sha, context)`, the most recent status wins.","type":"string"},"description":{"type":"string"},"state":{"enum":["pending","success","failure","error"],"type":"string"},"target_url":{"description":"Link to the CI build / details page.","format":"uri","type":"string"}},"required":["state"],"type":"object"},"CreateIssue":{"properties":{"body":{"type":"string"},"labels":{"description":"Comma-separated label names (legacy single-string format).","type":"string"},"title":{"type":"string"}},"required":["title"],"type":"object"},"CreatePullRequest":{"properties":{"base_branch":{"type":"string"},"body":{"type":"string"},"head_branch":{"type":"string"},"is_draft":{"type":"boolean"},"title":{"type":"string"}},"required":["title","head_branch","base_branch"],"type":"object"},"CurrentUser":{"properties":{"avatar_url":{"type":"string"},"bio":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"email":{"format":"email","type":"string"},"full_name":{"type":"string"},"id":{"format":"int64","type":"integer"},"is_admin":{"type":"boolean"},"username":{"type":"string"}},"required":["id","username","email","is_admin","created_at"],"type":"object"},"Error":{"properties":{"error":{"type":"string"}},"required":["error"],"type":"object"},"HeatmapDay":{"properties":{"count":{"minimum":1,"type":"integer"},"date":{"format":"date","type":"string"}},"required":["date","count"],"type":"object"},"Issue":{"allOf":[{"$ref":"#/components/schemas/IssueSummary"},{"properties":{"comments":{"items":{"$ref":"#/components/schemas/Comment"},"type":"array"}},"type":"object"}]},"IssueCreated":{"properties":{"id":{"format":"int64","type":"integer"},"number":{"type":"integer"},"title":{"type":"string"}},"required":["id","number","title"],"type":"object"},"IssueSummary":{"properties":{"author":{"type":"string"},"body":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"id":{"format":"int64","type":"integer"},"label":{"type":"string"},"number":{"type":"integer"},"state":{"enum":["open","closed"],"type":"string"},"title":{"type":"string"},"updated_at":{"format":"date-time","type":"string"}},"required":["id","number","title","state","author","created_at"],"type":"object"},"MoveCard":{"properties":{"column_id":{"description":"Target project column.","format":"int64","type":"integer"},"position":{"description":"Zero-based slot within the target column.","minimum":0,"type":"integer"}},"required":["column_id","position"],"type":"object"},"PRComment":{"properties":{"author":{"type":"string"},"body":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"file_path":{"description":"File the comment is anchored to (line comments only).","type":"string"},"id":{"format":"int64","type":"integer"},"is_system":{"description":"True for CodeVault-generated comments (merge / close / reopen).","type":"boolean"},"line":{"description":"Line number for line comments; 0 otherwise.","type":"integer"}},"required":["id","author","body","created_at"],"type":"object"},"PRReview":{"properties":{"body":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"id":{"format":"int64","type":"integer"},"reviewer":{"type":"string"},"status":{"enum":["approved","changes_requested","comment"],"type":"string"}},"required":["id","reviewer","status","created_at"],"type":"object"},"PullRequest":{"allOf":[{"$ref":"#/components/schemas/PullRequestSummary"},{"properties":{"closed_at":{"format":"date-time","nullable":true,"type":"string"},"comments":{"items":{"$ref":"#/components/schemas/PRComment"},"type":"array"},"merge_commit":{"type":"string"},"merged_at":{"format":"date-time","nullable":true,"type":"string"},"review_count":{"type":"integer"},"reviews":{"items":{"$ref":"#/components/schemas/PRReview"},"type":"array"}},"type":"object"}]},"PullRequestCreated":{"properties":{"base_branch":{"type":"string"},"head_branch":{"type":"string"},"id":{"format":"int64","type":"integer"},"number":{"type":"integer"},"status":{"type":"string"},"title":{"type":"string"}},"required":["id","number","title","head_branch","base_branch","status"],"type":"object"},"PullRequestSummary":{"properties":{"author":{"type":"string"},"base_branch":{"type":"string"},"body":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"head_branch":{"type":"string"},"id":{"format":"int64","type":"integer"},"is_draft":{"type":"boolean"},"number":{"type":"integer"},"status":{"enum":["open","closed","merged"],"type":"string"},"title":{"type":"string"},"updated_at":{"format":"date-time","type":"string"}},"required":["id","number","title","head_branch","base_branch","status","author","created_at"],"type":"object"},"Repository":{"properties":{"created_at":{"format":"date-time","type":"string"},"default_branch":{"type":"string"},"description":{"type":"string"},"empty":{"description":"True when the repo has no refs yet.","type":"boolean"},"forks_count":{"type":"integer"},"full_name":{"description":"`owner/name`.","type":"string"},"id":{"format":"int64","type":"integer"},"name":{"type":"string"},"owner":{"type":"string"},"private":{"type":"boolean"},"stars_count":{"type":"integer"},"updated_at":{"format":"date-time","type":"string"}},"required":["id","owner","name","full_name","private","default_branch","empty"],"type":"object"},"ToggleReaction":{"properties":{"emoji":{"enum":["thumbsup","thumbsdown","heart","hooray","confused","rocket","eyes"],"type":"string"},"target_id":{"description":"ID of the issue / PR / comment row (NOT the public number).","format":"int64","type":"integer"},"target_type":{"enum":["issue","issue_comment","pr","pr_comment"],"type":"string"}},"required":["target_type","target_id","emoji"],"type":"object"},"UserProfile":{"properties":{"avatar_url":{"type":"string"},"bio":{"type":"string"},"created_at":{"format":"date-time","type":"string"},"full_name":{"type":"string"},"id":{"format":"int64","type":"integer"},"username":{"type":"string"}},"required":["id","username","created_at"],"type":"object"}},"securitySchemes":{"BasicAuth":{"description":"HTTP Basic auth using your username and a Personal Access Token as\nthe password. Pure password auth is **not** supported on the API.\n","scheme":"basic","type":"http"},"BearerToken":{"bearerFormat":"CodeVault Personal Access Token","description":"Pass the raw token in the `Authorization: Bearer \u003ctoken\u003e` header.\nTokens are issued at `/settings/tokens`. Tokens with `repo:read`\nscope cannot perform write operations and will receive `403`.\n","scheme":"bearer","type":"http"}}},"info":{"contact":{"name":"CodeVault","url":"https://codevault.example/"},"description":"The `/api/v1/*` REST surface for managing repositories, branches, issues,\npull requests, commit statuses, reactions, and the user's contribution\nheatmap. Authentication is by Personal Access Token issued at\n`/settings/tokens`, presented either as `Authorization: Bearer \u003ctoken\u003e`\nor as the password half of HTTP Basic auth (`username:token`).\n\nThis document covers the JSON REST endpoints under `/api/v1/`. Other\nCodeVault interfaces follow standard external specs and are not described\nhere:\n\n* **Git Smart HTTP** (`/info/refs`, `/git-upload-pack`, `/git-receive-pack`)\n  — see the Git protocol documentation.\n* **Git LFS** (`/info/lfs/objects/*`) — see the Git LFS Batch API spec.\n* **Docker registry v2** (`/v2/*`) — see the OCI Distribution spec.\n* **npm / PyPI registries** — provider-specific conventions.\n\nTokens with the legacy scope `repo` (or new `repo:write`) can perform\nwrite operations. Tokens scoped `repo:read` are denied for any state-\nchanging endpoint with HTTP `403`.\n","license":{"name":"MPL-2.0"},"summary":"Programmatic access to a CodeVault instance.","title":"CodeVault REST API","version":"2.4.1"},"openapi":"3.1.0","paths":{"/api/v1/heatmap":{"get":{"description":"Returns one entry per day for the past year. Authentication is via\nthe session cookie (this endpoint is consumed by the dashboard's\nSVG heatmap), not by Bearer token.\n","operationId":"getHeatmap","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/HeatmapDay"},"type":"array"}}},"description":"Heatmap days (sparse — only days with activity)."},"401":{"$ref":"#/components/responses/Unauthorized"}},"security":[],"summary":"Authenticated user's contribution heatmap","tags":["Activity"]}},"/api/v1/heatmap/{date}":{"get":{"operationId":"getHeatmapDay","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ActivityEntry"},"type":"array"}}},"description":"List of activity entries for that day."},"400":{"description":"Invalid date format."},"401":{"$ref":"#/components/responses/Unauthorized"}},"security":[],"summary":"Activity for a single day","tags":["Activity"]},"parameters":[{"description":"ISO-8601 date (YYYY-MM-DD).","in":"path","name":"date","required":true,"schema":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"}}]},"/api/v1/projects/cards/{cardID}/move":{"parameters":[{"description":"Project card identifier.","in":"path","name":"cardID","required":true,"schema":{"format":"int64","type":"integer"}}],"post":{"operationId":"moveProjectCard","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveCard"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"status":{"example":"ok","type":"string"}},"type":"object"}}},"description":"Card moved."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"Move a project card","tags":["Projects"]}},"/api/v1/reactions":{"post":{"description":"Idempotently adds or removes a single emoji reaction on an issue,\npull request, or comment. Calling twice from the same user with\nthe same body removes the reaction.\n","operationId":"toggleReaction","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToggleReaction"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"integer"},"example":{"heart":1,"rocket":0,"thumbsup":3},"type":"object"}}},"description":"Updated reaction counts for the target."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"}},"summary":"Toggle a reaction","tags":["Reactions"]}},"/api/v1/repos/{owner}/{repo}":{"get":{"operationId":"getRepo","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repository"}}},"description":"Repository metadata."},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"Get repository details","tags":["Repositories"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"}]},"/api/v1/repos/{owner}/{repo}/branches":{"get":{"operationId":"listBranches","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/PerPage"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Branch"},"type":"array"}}},"description":"Page of branches. Pagination via `X-Total-Count` and `Link`.","headers":{"Link":{"$ref":"#/components/headers/Link"},"X-Total-Count":{"$ref":"#/components/headers/XTotalCount"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"List branches","tags":["Repositories"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"}],"post":{"operationId":"createBranch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBranch"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Branch"}}},"description":"Branch created."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Branch already exists or source ref invalid."}},"summary":"Create a branch","tags":["Repositories"]}},"/api/v1/repos/{owner}/{repo}/branches/{branch}":{"delete":{"operationId":"deleteBranch","responses":{"204":{"description":"Branch deleted."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Cannot delete (e.g., default branch, branch has open PRs)."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"Delete a branch","tags":["Repositories"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"},{"description":"Branch name.","in":"path","name":"branch","required":true,"schema":{"type":"string"}}]},"/api/v1/repos/{owner}/{repo}/issues":{"get":{"operationId":"listIssues","parameters":[{"description":"Filter by state. Defaults to `open`.","in":"query","name":"state","schema":{"default":"open","enum":["open","closed"],"type":"string"}},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/PerPage"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/IssueSummary"},"type":"array"}}},"description":"Page of issues.","headers":{"Link":{"$ref":"#/components/headers/Link"},"X-Total-Count":{"$ref":"#/components/headers/XTotalCount"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"List issues","tags":["Issues"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"}],"post":{"operationId":"createIssue","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIssue"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IssueCreated"}}},"description":"Issue created."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"summary":"Create an issue","tags":["Issues"]}},"/api/v1/repos/{owner}/{repo}/issues/{number}":{"get":{"operationId":"getIssue","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Issue"}}},"description":"Issue including comments."},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"Get an issue with comments","tags":["Issues"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"},{"$ref":"#/components/parameters/Number"}]},"/api/v1/repos/{owner}/{repo}/issues/{number}/comments":{"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"},{"$ref":"#/components/parameters/Number"}],"post":{"operationId":"commentOnIssue","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateComment"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentCreated"}}},"description":"Comment created."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"Add a comment to an issue","tags":["Issues"]}},"/api/v1/repos/{owner}/{repo}/pulls":{"get":{"operationId":"listPullRequests","parameters":[{"in":"query","name":"state","schema":{"default":"open","enum":["open","closed","merged"],"type":"string"}},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/PerPage"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PullRequestSummary"},"type":"array"}}},"description":"Page of pull requests.","headers":{"Link":{"$ref":"#/components/headers/Link"},"X-Total-Count":{"$ref":"#/components/headers/XTotalCount"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"List pull requests","tags":["Pull Requests"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"}],"post":{"operationId":"createPullRequest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePullRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PullRequestCreated"}}},"description":"Pull request created."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"summary":"Create a pull request","tags":["Pull Requests"]}},"/api/v1/repos/{owner}/{repo}/pulls/{number}":{"get":{"operationId":"getPullRequest","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PullRequest"}}},"description":"Pull request including review and comment threads."},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"Get a pull request with comments and reviews","tags":["Pull Requests"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"},{"$ref":"#/components/parameters/Number"}]},"/api/v1/repos/{owner}/{repo}/statuses/{sha}":{"get":{"operationId":"getCommitStatuses","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommitStatusList"}}},"description":"All statuses for the SHA plus a combined `state` field."},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}},"summary":"List commit statuses","tags":["Commit Status"]},"parameters":[{"$ref":"#/components/parameters/Owner"},{"$ref":"#/components/parameters/Repo"},{"description":"Commit SHA (full or abbreviated).","in":"path","name":"sha","required":true,"schema":{"pattern":"^[a-f0-9]{4,64}$","type":"string"}}],"post":{"description":"GitHub-compatible commit-status writer. External CI systems POST a\nstatus here for each commit they evaluate; the most-recent status\nper `(sha, context)` pair wins. Branch protection's \"require\nstatus checks\" gate reads the combined state from the matching\nGET endpoint.\n","operationId":"createCommitStatus","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommitStatus"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommitStatus"}}},"description":"Status recorded."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"summary":"Create or update a commit status","tags":["Commit Status"]}},"/api/v1/user":{"get":{"operationId":"getCurrentUser","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CurrentUser"}}},"description":"The user the supplied token belongs to."},"401":{"$ref":"#/components/responses/Unauthorized"}},"summary":"Get the authenticated user","tags":["User"]}},"/api/v1/users/{username}":{"get":{"operationId":"getUser","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserProfile"}}},"description":"The user's public profile."},"404":{"$ref":"#/components/responses/NotFound"}},"security":[],"summary":"Get a user profile","tags":["User"]},"parameters":[{"$ref":"#/components/parameters/Username"}]}},"security":[{"BearerToken":[]},{"BasicAuth":[]}],"servers":[{"description":"Your CodeVault instance","url":"{baseUrl}","variables":{"baseUrl":{"default":"https://codevault.example","description":"Root URL of your CodeVault installation, with no trailing slash."}}}],"tags":[{"description":"The authenticated user and other user profiles.","name":"User"},{"description":"Repository metadata and branches.","name":"Repositories"},{"description":"Issue tracker.","name":"Issues"},{"description":"Pull request lifecycle.","name":"Pull Requests"},{"description":"GitHub-compatible commit-status checks (used by external CI).","name":"Commit Status"},{"description":"Emoji reactions on issues, PRs, and comments.","name":"Reactions"},{"description":"Project board card management.","name":"Projects"},{"description":"The authenticated user's contribution heatmap and per-day activity.","name":"Activity"}]}
