[{"data":1,"prerenderedAt":948},["ShallowReactive",2],{"navigation_docs":3,"-guide-pull-requests":80,"-guide-pull-requests-surround":943},[4,56],{"title":5,"path":6,"stem":7,"children":8,"icon":55},"Guide","\u002Fguide","1.guide\u002F01.index",[9,11,15,19,23,27,31,35,39,43,47,51],{"title":10,"path":6,"stem":7},"Getting Started",{"title":12,"path":13,"stem":14},"Authentication","\u002Fguide\u002Fauth","1.guide\u002F02.auth",{"title":16,"path":17,"stem":18},"Repositories","\u002Fguide\u002Frepositories","1.guide\u002F03.repositories",{"title":20,"path":21,"stem":22},"Issues","\u002Fguide\u002Fissues","1.guide\u002F04.issues",{"title":24,"path":25,"stem":26},"Pull requests","\u002Fguide\u002Fpull-requests","1.guide\u002F05.pull-requests",{"title":28,"path":29,"stem":30},"Review threads","\u002Fguide\u002Fthreads","1.guide\u002F06.threads",{"title":32,"path":33,"stem":34},"Commits and CI","\u002Fguide\u002Fcommits","1.guide\u002F07.commits",{"title":36,"path":37,"stem":38},"Contribution templates","\u002Fguide\u002Ftemplates","1.guide\u002F08.templates",{"title":40,"path":41,"stem":42},"Code search","\u002Fguide\u002Fcode-search","1.guide\u002F09.code-search",{"title":44,"path":45,"stem":46},"Agents","\u002Fguide\u002Fagents","1.guide\u002F10.agents",{"title":48,"path":49,"stem":50},"Custom providers","\u002Fguide\u002Fcustom","1.guide\u002F11.custom",{"title":52,"path":53,"stem":54},"Explorer","\u002Fguide\u002Fexplorer","1.guide\u002F12.explorer","i-lucide-book-open",{"title":57,"path":58,"stem":59,"children":60,"icon":79},"Platforms","\u002Fplatforms","2.platforms\u002F0.index",[61,63,67,71,75],{"title":62,"path":58,"stem":59},"Overview",{"title":64,"path":65,"stem":66},"GitHub","\u002Fplatforms\u002Fgithub","2.platforms\u002F01.github",{"title":68,"path":69,"stem":70},"GitLab","\u002Fplatforms\u002Fgitlab","2.platforms\u002F02.gitlab",{"title":72,"path":73,"stem":74},"Gitea","\u002Fplatforms\u002Fgitea","2.platforms\u002F03.gitea",{"title":76,"path":77,"stem":78},"GitBucket","\u002Fplatforms\u002Fgitbucket","2.platforms\u002F04.gitbucket","i-lucide-library",{"id":81,"title":24,"body":82,"description":936,"extension":937,"links":938,"meta":939,"navigation":429,"path":25,"seo":941,"stem":26,"__hash__":942},"docs\u002F1.guide\u002F05.pull-requests.md",{"type":83,"value":84,"toc":928},"minimark",[85,90,561,565,699,721,725,749,753,758,879,886,890,912,916,924],[86,87,89],"h2",{"id":88},"calls","Calls",[91,92,97],"pre",{"className":93,"code":94,"language":95,"meta":96,"style":96},"language-ts shiki shiki-themes github-light github-light poimandres","const open = await forge.pullRequests.list(\"owner\", \"repo\", { state: \"open\" });\nconst pr = await forge.pullRequests.get(\"owner\", \"repo\", 1234);\nconst found = await forge.pullRequests.search(\"owner\", \"repo\", \"renovate\");\nconst files = await forge.pullRequests.listFiles(\"owner\", \"repo\", 1234, { perPage: 100 });\nconst checks = await forge.pullRequests.listChecks(\"owner\", \"repo\", 1234);\nconst comments = await forge.pullRequests.listComments(\"owner\", \"repo\", 1234);\n\nconst created = await forge.pullRequests.create(\"owner\", \"repo\", {\n  title: \"docs: fix the deploy link\",\n  body: \"Closes #42.\",\n  sourceBranch: \"fix\u002Fdeploy-link\",\n  targetBranch: \"main\",\n  draft: true,\n});\n","ts","",[98,99,100,181,229,279,334,379,424,431,473,491,508,525,542,555],"code",{"__ignoreMap":96},[101,102,105,109,113,116,120,124,128,131,133,137,140,144,148,150,153,155,158,160,163,167,170,173,176,178],"span",{"class":103,"line":104},"line",1,[101,106,108],{"class":107},"s1TYA","const",[101,110,112],{"class":111},"saoiD"," open",[101,114,115],{"class":107}," =",[101,117,119],{"class":118},"sZW6a"," await",[101,121,123],{"class":122},"spVlQ"," forge",[101,125,127],{"class":126},"sKlNE",".",[101,129,130],{"class":122},"pullRequests",[101,132,127],{"class":126},[101,134,136],{"class":135},"sULi6","list",[101,138,139],{"class":126},"(",[101,141,143],{"class":142},"scVjq","\"",[101,145,147],{"class":146},"sQ7BG","owner",[101,149,143],{"class":142},[101,151,152],{"class":126},", ",[101,154,143],{"class":142},[101,156,157],{"class":146},"repo",[101,159,143],{"class":142},[101,161,162],{"class":126},", {",[101,164,166],{"class":165},"snHMy"," state",[101,168,169],{"class":126},":",[101,171,172],{"class":142}," \"",[101,174,175],{"class":146},"open",[101,177,143],{"class":142},[101,179,180],{"class":126}," });\n",[101,182,184,186,189,191,193,195,197,199,201,204,206,208,210,212,214,216,218,220,222,226],{"class":103,"line":183},2,[101,185,108],{"class":107},[101,187,188],{"class":111}," pr",[101,190,115],{"class":107},[101,192,119],{"class":118},[101,194,123],{"class":122},[101,196,127],{"class":126},[101,198,130],{"class":122},[101,200,127],{"class":126},[101,202,203],{"class":135},"get",[101,205,139],{"class":126},[101,207,143],{"class":142},[101,209,147],{"class":146},[101,211,143],{"class":142},[101,213,152],{"class":126},[101,215,143],{"class":142},[101,217,157],{"class":146},[101,219,143],{"class":142},[101,221,152],{"class":126},[101,223,225],{"class":224},"siHFe","1234",[101,227,228],{"class":126},");\n",[101,230,232,234,237,239,241,243,245,247,249,252,254,256,258,260,262,264,266,268,270,272,275,277],{"class":103,"line":231},3,[101,233,108],{"class":107},[101,235,236],{"class":111}," found",[101,238,115],{"class":107},[101,240,119],{"class":118},[101,242,123],{"class":122},[101,244,127],{"class":126},[101,246,130],{"class":122},[101,248,127],{"class":126},[101,250,251],{"class":135},"search",[101,253,139],{"class":126},[101,255,143],{"class":142},[101,257,147],{"class":146},[101,259,143],{"class":142},[101,261,152],{"class":126},[101,263,143],{"class":142},[101,265,157],{"class":146},[101,267,143],{"class":142},[101,269,152],{"class":126},[101,271,143],{"class":142},[101,273,274],{"class":146},"renovate",[101,276,143],{"class":142},[101,278,228],{"class":126},[101,280,282,284,287,289,291,293,295,297,299,302,304,306,308,310,312,314,316,318,320,322,324,327,329,332],{"class":103,"line":281},4,[101,283,108],{"class":107},[101,285,286],{"class":111}," files",[101,288,115],{"class":107},[101,290,119],{"class":118},[101,292,123],{"class":122},[101,294,127],{"class":126},[101,296,130],{"class":122},[101,298,127],{"class":126},[101,300,301],{"class":135},"listFiles",[101,303,139],{"class":126},[101,305,143],{"class":142},[101,307,147],{"class":146},[101,309,143],{"class":142},[101,311,152],{"class":126},[101,313,143],{"class":142},[101,315,157],{"class":146},[101,317,143],{"class":142},[101,319,152],{"class":126},[101,321,225],{"class":224},[101,323,162],{"class":126},[101,325,326],{"class":165}," perPage",[101,328,169],{"class":126},[101,330,331],{"class":224}," 100",[101,333,180],{"class":126},[101,335,337,339,342,344,346,348,350,352,354,357,359,361,363,365,367,369,371,373,375,377],{"class":103,"line":336},5,[101,338,108],{"class":107},[101,340,341],{"class":111}," checks",[101,343,115],{"class":107},[101,345,119],{"class":118},[101,347,123],{"class":122},[101,349,127],{"class":126},[101,351,130],{"class":122},[101,353,127],{"class":126},[101,355,356],{"class":135},"listChecks",[101,358,139],{"class":126},[101,360,143],{"class":142},[101,362,147],{"class":146},[101,364,143],{"class":142},[101,366,152],{"class":126},[101,368,143],{"class":142},[101,370,157],{"class":146},[101,372,143],{"class":142},[101,374,152],{"class":126},[101,376,225],{"class":224},[101,378,228],{"class":126},[101,380,382,384,387,389,391,393,395,397,399,402,404,406,408,410,412,414,416,418,420,422],{"class":103,"line":381},6,[101,383,108],{"class":107},[101,385,386],{"class":111}," comments",[101,388,115],{"class":107},[101,390,119],{"class":118},[101,392,123],{"class":122},[101,394,127],{"class":126},[101,396,130],{"class":122},[101,398,127],{"class":126},[101,400,401],{"class":135},"listComments",[101,403,139],{"class":126},[101,405,143],{"class":142},[101,407,147],{"class":146},[101,409,143],{"class":142},[101,411,152],{"class":126},[101,413,143],{"class":142},[101,415,157],{"class":146},[101,417,143],{"class":142},[101,419,152],{"class":126},[101,421,225],{"class":224},[101,423,228],{"class":126},[101,425,427],{"class":103,"line":426},7,[101,428,430],{"emptyLinePlaceholder":429},true,"\n",[101,432,434,436,439,441,443,445,447,449,451,454,456,458,460,462,464,466,468,470],{"class":103,"line":433},8,[101,435,108],{"class":107},[101,437,438],{"class":111}," created",[101,440,115],{"class":107},[101,442,119],{"class":118},[101,444,123],{"class":122},[101,446,127],{"class":126},[101,448,130],{"class":122},[101,450,127],{"class":126},[101,452,453],{"class":135},"create",[101,455,139],{"class":126},[101,457,143],{"class":142},[101,459,147],{"class":146},[101,461,143],{"class":142},[101,463,152],{"class":126},[101,465,143],{"class":142},[101,467,157],{"class":146},[101,469,143],{"class":142},[101,471,472],{"class":126},", {\n",[101,474,476,479,481,483,486,488],{"class":103,"line":475},9,[101,477,478],{"class":165},"  title",[101,480,169],{"class":126},[101,482,172],{"class":142},[101,484,485],{"class":146},"docs: fix the deploy link",[101,487,143],{"class":142},[101,489,490],{"class":126},",\n",[101,492,494,497,499,501,504,506],{"class":103,"line":493},10,[101,495,496],{"class":165},"  body",[101,498,169],{"class":126},[101,500,172],{"class":142},[101,502,503],{"class":146},"Closes #42.",[101,505,143],{"class":142},[101,507,490],{"class":126},[101,509,511,514,516,518,521,523],{"class":103,"line":510},11,[101,512,513],{"class":165},"  sourceBranch",[101,515,169],{"class":126},[101,517,172],{"class":142},[101,519,520],{"class":146},"fix\u002Fdeploy-link",[101,522,143],{"class":142},[101,524,490],{"class":126},[101,526,528,531,533,535,538,540],{"class":103,"line":527},12,[101,529,530],{"class":165},"  targetBranch",[101,532,169],{"class":126},[101,534,172],{"class":142},[101,536,537],{"class":146},"main",[101,539,143],{"class":142},[101,541,490],{"class":126},[101,543,545,548,550,553],{"class":103,"line":544},13,[101,546,547],{"class":165},"  draft",[101,549,169],{"class":126},[101,551,552],{"class":224}," true",[101,554,490],{"class":126},[101,556,558],{"class":103,"line":557},14,[101,559,560],{"class":126},"});\n",[86,562,564],{"id":563},"the-shape","The shape",[91,566,568],{"className":93,"code":567,"language":95,"meta":96,"style":96},"interface PullRequest extends Issue {\n  merged: boolean;\n  draft: boolean;\n  sourceBranch: string;\n  targetBranch: string;\n  mergeCommitSha: string;\n  headSha: string;\n  mergeable: boolean | null; \u002F\u002F null while the platform is still computing it\n  mergeStatus: string; \u002F\u002F the platform's own word\n}\n",[98,569,570,590,605,615,626,636,647,658,680,694],{"__ignoreMap":96},[101,571,572,575,579,583,587],{"class":103,"line":104},[101,573,574],{"class":107},"interface",[101,576,578],{"class":577},"sCrqT"," PullRequest",[101,580,582],{"class":581},"sP0CR"," extends",[101,584,586],{"class":585},"scZRh"," Issue",[101,588,589],{"class":126}," {\n",[101,591,592,596,598,602],{"class":103,"line":183},[101,593,595],{"class":594},"s0VbO","  merged",[101,597,169],{"class":107},[101,599,601],{"class":600},"s8yaW"," boolean",[101,603,604],{"class":126},";\n",[101,606,607,609,611,613],{"class":103,"line":231},[101,608,547],{"class":594},[101,610,169],{"class":107},[101,612,601],{"class":600},[101,614,604],{"class":126},[101,616,617,619,621,624],{"class":103,"line":281},[101,618,513],{"class":594},[101,620,169],{"class":107},[101,622,623],{"class":600}," string",[101,625,604],{"class":126},[101,627,628,630,632,634],{"class":103,"line":336},[101,629,530],{"class":594},[101,631,169],{"class":107},[101,633,623],{"class":600},[101,635,604],{"class":126},[101,637,638,641,643,645],{"class":103,"line":381},[101,639,640],{"class":594},"  mergeCommitSha",[101,642,169],{"class":107},[101,644,623],{"class":600},[101,646,604],{"class":126},[101,648,649,652,654,656],{"class":103,"line":426},[101,650,651],{"class":594},"  headSha",[101,653,169],{"class":107},[101,655,623],{"class":600},[101,657,604],{"class":126},[101,659,660,663,665,667,670,673,676],{"class":103,"line":433},[101,661,662],{"class":594},"  mergeable",[101,664,169],{"class":107},[101,666,601],{"class":600},[101,668,669],{"class":107}," |",[101,671,672],{"class":600}," null",[101,674,675],{"class":126},"; ",[101,677,679],{"class":678},"sjhu3","\u002F\u002F null while the platform is still computing it\n",[101,681,682,685,687,689,691],{"class":103,"line":475},[101,683,684],{"class":594},"  mergeStatus",[101,686,169],{"class":107},[101,688,623],{"class":600},[101,690,675],{"class":126},[101,692,693],{"class":678},"\u002F\u002F the platform's own word\n",[101,695,696],{"class":103,"line":493},[101,697,698],{"class":126},"}\n",[700,701,702,703,706,707,710,711,152,714,152,717,720],"p",{},"A GitLab merge request has an ",[98,704,705],{},"iid",", that is ",[98,708,709],{},"number"," here. A GitHub pull request is also an issue, so ",[98,712,713],{},"id",[98,715,716],{},"labels",[98,718,719],{},"author"," and the dates come from the same place issues get them.",[86,722,724],{"id":723},"search-returns-less","Search returns less",[700,726,727,729,730,733,734,737,738,741,742,745,746,748],{},[98,728,251],{}," gives you ",[98,731,732],{},"PullRequestSearchItem",": the ",[98,735,736],{},"Issue"," fields plus ",[98,739,740],{},"merged"," and ",[98,743,744],{},"draft",". No branches, no head SHA, no mergeability. GitHub and Gitea search responses simply do not carry them, and fetching them per row would make one search page cost a whole page of requests. Call ",[98,747,203],{}," for the row you actually care about.",[86,750,752],{"id":751},"changed-files","Changed files",[700,754,755,757],{},[98,756,301],{}," turns each changed file into a path, a status and two counts:",[91,759,761],{"className":93,"code":760,"language":95,"meta":96,"style":96},"interface PullRequestFile {\n  path: string;\n  status: \"added\" | \"modified\" | \"removed\" | \"renamed\" | \"copied\" | \"unknown\";\n  additions: number | null;\n  deletions: number | null;\n}\n",[98,762,763,772,783,844,860,875],{"__ignoreMap":96},[101,764,765,767,770],{"class":103,"line":104},[101,766,574],{"class":107},[101,768,769],{"class":577}," PullRequestFile",[101,771,589],{"class":126},[101,773,774,777,779,781],{"class":103,"line":183},[101,775,776],{"class":594},"  path",[101,778,169],{"class":107},[101,780,623],{"class":600},[101,782,604],{"class":126},[101,784,785,788,790,792,795,797,799,801,804,806,808,810,813,815,817,819,822,824,826,828,831,833,835,837,840,842],{"class":103,"line":231},[101,786,787],{"class":594},"  status",[101,789,169],{"class":107},[101,791,172],{"class":142},[101,793,794],{"class":146},"added",[101,796,143],{"class":142},[101,798,669],{"class":107},[101,800,172],{"class":142},[101,802,803],{"class":146},"modified",[101,805,143],{"class":142},[101,807,669],{"class":107},[101,809,172],{"class":142},[101,811,812],{"class":146},"removed",[101,814,143],{"class":142},[101,816,669],{"class":107},[101,818,172],{"class":142},[101,820,821],{"class":146},"renamed",[101,823,143],{"class":142},[101,825,669],{"class":107},[101,827,172],{"class":142},[101,829,830],{"class":146},"copied",[101,832,143],{"class":142},[101,834,669],{"class":107},[101,836,172],{"class":142},[101,838,839],{"class":146},"unknown",[101,841,143],{"class":142},[101,843,604],{"class":126},[101,845,846,849,851,854,856,858],{"class":103,"line":281},[101,847,848],{"class":594},"  additions",[101,850,169],{"class":107},[101,852,853],{"class":600}," number",[101,855,669],{"class":107},[101,857,672],{"class":600},[101,859,604],{"class":126},[101,861,862,865,867,869,871,873],{"class":103,"line":336},[101,863,864],{"class":594},"  deletions",[101,866,169],{"class":107},[101,868,853],{"class":600},[101,870,669],{"class":107},[101,872,672],{"class":600},[101,874,604],{"class":126},[101,876,877],{"class":103,"line":381},[101,878,698],{"class":126},[700,880,881,882,885],{},"No patches. GitLab withholds counts for a collapsed or oversized diff, and those come back as ",[98,883,884],{},"null",". Never as zero, zero would be a lie.",[86,887,889],{"id":888},"checks","Checks",[700,891,892,894,895,898,899,902,903,906,907,911],{},[98,893,356],{}," reads whatever the platform pins to the head revision: GitHub check runs for the head SHA, GitLab merge request pipelines for the current head, Gitea commit statuses. Each one is a ",[98,896,897],{},"PullRequestCheck"," with a name, a lifecycle ",[98,900,901],{},"status"," and a terminal ",[98,904,905],{},"conclusion",", the same two enums ",[908,909,910],"a",{"href":33},"CI runs"," use.",[86,913,915],{"id":914},"comments","Comments",[700,917,918,920,921,127],{},[98,919,401],{}," on a pull request is the discussion, not the review threads. On GitHub and Gitea it is the same endpoint as issue comments. Inline review comments live under ",[908,922,923],{"href":29},"threads",[925,926,927],"style",{},"html pre.shiki code .s1TYA, html code.shiki .s1TYA{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#91B4D5}html pre.shiki code .saoiD, html code.shiki .saoiD{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#E4F0FB}html pre.shiki code .sZW6a, html code.shiki .sZW6a{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#5DE4C7C0}html pre.shiki code .spVlQ, html code.shiki .spVlQ{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#E4F0FB}html pre.shiki code .sKlNE, html code.shiki .sKlNE{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#A6ACCD}html pre.shiki code .sULi6, html code.shiki .sULi6{--shiki-light:#6F42C1;--shiki-default:#6F42C1;--shiki-dark:#E4F0FBD0}html pre.shiki code .scVjq, html code.shiki .scVjq{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#A6ACCD}html pre.shiki code .sQ7BG, html code.shiki .sQ7BG{--shiki-light:#032F62;--shiki-default:#032F62;--shiki-dark:#5DE4C7}html pre.shiki code .snHMy, html code.shiki .snHMy{--shiki-light:#24292E;--shiki-default:#24292E;--shiki-dark:#ADD7FF}html pre.shiki code .siHFe, html code.shiki .siHFe{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#5DE4C7}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sCrqT, html code.shiki .sCrqT{--shiki-light:#6F42C1;--shiki-default:#6F42C1;--shiki-dark:#A6ACCDC0}html pre.shiki code .sP0CR, html code.shiki .sP0CR{--shiki-light:#D73A49;--shiki-default:#D73A49;--shiki-dark:#5DE4C7}html pre.shiki code .scZRh, html code.shiki .scZRh{--shiki-light:#6F42C1;--shiki-default:#6F42C1;--shiki-dark:#ADD7FF}html pre.shiki code .s0VbO, html code.shiki .s0VbO{--shiki-light:#E36209;--shiki-default:#E36209;--shiki-dark:#A6ACCD}html pre.shiki code .s8yaW, html code.shiki .s8yaW{--shiki-light:#005CC5;--shiki-default:#005CC5;--shiki-dark:#A6ACCDC0}html pre.shiki code .sjhu3, html code.shiki .sjhu3{--shiki-light:#6A737D;--shiki-light-font-style:inherit;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#767C9DB0;--shiki-dark-font-style:italic}",{"title":96,"searchDepth":183,"depth":183,"links":929},[930,931,932,933,934,935],{"id":88,"depth":183,"text":89},{"id":563,"depth":183,"text":564},{"id":723,"depth":183,"text":724},{"id":751,"depth":183,"text":752},{"id":888,"depth":183,"text":889},{"id":914,"depth":183,"text":915},"Merge requests and pull requests as one PullRequest, with branches, head SHA, mergeability, changed files and checks.","md",null,{"icon":940},"i-lucide-git-pull-request",{"title":24,"description":936},"-0vOymWPxBw4P-x2sjftArNQxZaBJ-LmCnHh8fCPijc",[944,946],{"title":20,"path":21,"stem":22,"description":945,"children":-1},"List, search, read, create and comment on issues with the same options on every platform.",{"title":28,"path":29,"stem":30,"description":947,"children":-1},"Inline review conversations as one Thread, with reply, resolve and unresolve that take the same id back.",1788525966686]