From c38bbfd616d324650a5716d259e7a82f9ef56cfa Mon Sep 17 00:00:00 2001 From: hubwriter Date: Tue, 20 Apr 2021 10:43:51 +0100 Subject: [PATCH 1/7] Add versioning for `[skip ci]`, previously omitted (#18875) * Add versioning, previously missed out * Update content/actions/guides/about-continuous-integration.md Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com> Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com> --- content/actions/guides/about-continuous-integration.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/content/actions/guides/about-continuous-integration.md b/content/actions/guides/about-continuous-integration.md index 305d9cbdee9d..afc06b4bdd14 100644 --- a/content/actions/guides/about-continuous-integration.md +++ b/content/actions/guides/about-continuous-integration.md @@ -53,6 +53,7 @@ For a definition of common terms, see "[Core concepts for {% data variables.prod Browse the complete list of CI workflow templates offered by {% data variables.product.product_name %} in the {% if currentVersion == "free-pro-team@latest" %}[actions/starter-workflows](https://github.com/actions/starter-workflows/tree/main/ci) repository{% else %} `actions/starter-workflows` repository on {% data variables.product.product_location %}{% endif %}. +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" or currentVersion == "github-ae@next" %} ### Skipping workflow runs If you want to temporarily prevent a workflow from being triggered, you can add a skip instruction to the commit message. Workflows that would otherwise be triggered `on: push` or `on: pull_request`, won't be triggered if you add any any of the following strings to the commit message in a push, or the HEAD commit of a pull request: @@ -72,6 +73,7 @@ You won't be able to merge the pull request if your repository is configured to **Note:** Skip instructions only apply to the `push` and `pull_request` events. For example, adding `[skip ci]` to a commit message won't stop a workflow that's triggered `on: pull_request_target` from running. {% endnote %} +{% endif %} ### Notifications for workflow runs From 317872ff9099c918a188d5f3914709b6c90cabd9 Mon Sep 17 00:00:00 2001 From: Matt Pollard Date: Tue, 20 Apr 2021 17:35:07 +0200 Subject: [PATCH 2/7] Remove outdated mention of sharing SMTP credentials with GitHub for GitHub AE email configuration (#18877) --- .../configuration/about-enterprise-configuration.md | 6 ++---- content/admin/configuration/initializing-github-ae.md | 10 +++++----- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/content/admin/configuration/about-enterprise-configuration.md b/content/admin/configuration/about-enterprise-configuration.md index 1436036526e0..6abfe5a55b4e 100644 --- a/content/admin/configuration/about-enterprise-configuration.md +++ b/content/admin/configuration/about-enterprise-configuration.md @@ -17,9 +17,7 @@ topics: {% endif %} {% if currentVersion == "github-ae@latest" %} -The first time you access your enterprise, you will complete an initial configuration to get {% data variables.product.product_name %} ready to use. The initial configuration includes connecting your enterprise with an idP, authenticating with SAML SSO, and configuring policies for repositories and organizations in your enterprise. For more information, see "[Initializing {% data variables.product.prodname_ghe_managed %}](/admin/configuration/initializing-github-ae)." - -For users to receive any emails from {% data variables.product.product_name %} after the initial configuration, you must ask {% data variables.contact.github_support %} to configure outbound email support with your SMTP server. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-email-for-notifications)." +The first time you access your enterprise, you will complete an initial configuration to get {% data variables.product.product_name %} ready to use. The initial configuration includes connecting your enterprise with an identity provider (IdP), authenticating with SAML SSO, configuring policies for repositories and organizations in your enterprise, and configuring SMTP for outbound email. For more information, see "[Initializing {% data variables.product.prodname_ghe_managed %}](/admin/configuration/initializing-github-ae)." Later, you can use the site admin dashboard and enterprise settings to further configure your enterprise, manage users, organizations and repositories, and set policies that reduce risk and increase quality. @@ -29,4 +27,4 @@ All enterprises are configured with subdomain isolation and support for TLS 1.2 ### Further reading - "[Managing users, organizations, and repositories](/admin/user-management)" -- "[Setting policies for your enterprise](/admin/policies)" +- "[Setting policies for your enterprise](/admin/policies)" \ No newline at end of file diff --git a/content/admin/configuration/initializing-github-ae.md b/content/admin/configuration/initializing-github-ae.md index 8be6d29791d6..2b9276c0bc42 100644 --- a/content/admin/configuration/initializing-github-ae.md +++ b/content/admin/configuration/initializing-github-ae.md @@ -103,11 +103,11 @@ Once this is initialized, you can reconfigure any settings after the initializat settings to allow incoming emails](/admin/configuration/configuring-email-for-notifications#configuring-dns-and-firewall-settings-to-allow-incoming-emails)." !["Enable" checkbox for email settings configuration](/assets/images/enterprise/configuration/ae-enable-email-configure.png) 3. Complete your email server settings: - - In the **Server address** field, type the address of your SMTP server. - - In the **Port** field, type the port that your SMTP server uses to send email. - - In the **Domain** field, type the domain name that your SMTP server will send with a HELO response, if any. - - In the **Authentication** dropdown, choose the type of encryption used by your SMTP server. - - In the **No-reply email address** field, type the email address to use in the From and To fields for all notification emails. + - In the **Server address** field, type the address of your SMTP server. + - In the **Port** field, type the port that your SMTP server uses to send email. + - In the **Domain** field, type the domain name that your SMTP server will send with a HELO response, if any. + - In the **Authentication** dropdown, choose the type of encryption used by your SMTP server. + - In the **No-reply email address** field, type the email address to use in the From and To fields for all notification emails. 4. If you want to discard all incoming emails that are addressed to the no-reply email address, select **Discard email addressed to the no-reply email address**. !["Discard" checkbox for email settings configuration](/assets/images/enterprise/configuration/ae-discard-email.png) From de28b750d14f6e1b2f820e5debea8701c1b94744 Mon Sep 17 00:00:00 2001 From: hubwriter Date: Tue, 20 Apr 2021 16:49:38 +0100 Subject: [PATCH 3/7] Configure `GITHUB_TOKEN` permissions (#18348) * Add 'permissions' to reference page * Final set of pre-review changes * Update content/actions/learn-github-actions/security-hardening-for-github-actions.md Co-authored-by: Sarah Edwards * Update content/actions/reference/authentication-in-a-workflow.md Co-authored-by: Sarah Edwards * Update content/actions/reference/authentication-in-a-workflow.md Co-authored-by: Sarah Edwards * Update content/actions/reference/authentication-in-a-workflow.md Co-authored-by: Sarah Edwards * Update content/actions/reference/authentication-in-a-workflow.md Co-authored-by: Sarah Edwards * Update data/reusables/github-actions/workflow-permissions-intro.md Co-authored-by: Sarah Edwards * Update content/actions/reference/authentication-in-a-workflow.md Co-authored-by: Sarah Edwards * Update content/actions/reference/authentication-in-a-workflow.md Co-authored-by: Sarah Edwards * Update data/reusables/github-actions/publish-to-packages-workflow-step.md Co-authored-by: Sarah Edwards * Update content/actions/guides/publishing-nodejs-packages.md * Update content/actions/guides/publishing-java-packages-with-gradle.md * Update content/actions/guides/publishing-java-packages-with-maven.md * Update content/actions/guides/publishing-nodejs-packages.md * Update content/actions/reference/authentication-in-a-workflow.md * Update content/actions/reference/authentication-in-a-workflow.md * Update content/actions/reference/authentication-in-a-workflow.md * Update content/actions/reference/authentication-in-a-workflow.md * Update content/actions/learn-github-actions/security-hardening-for-github-actions.md * Update content/actions/reference/authentication-in-a-workflow.md * Update content/actions/reference/workflow-syntax-for-github-actions.md * Update content/actions/reference/workflow-syntax-for-github-actions.md * Update content/actions/reference/workflow-syntax-for-github-actions.md * Update content/github/administering-a-repository/disabling-or-limiting-github-actions-for-a-repository.md * Update content/github/setting-up-and-managing-organizations-and-teams/disabling-or-limiting-github-actions-for-your-organization.md * Update content/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account.md * Update content/packages/guides/using-github-packages-with-github-actions.md * Make review comment changes (locally) * Resolve conflicts caused by remotely made review changes * Remove translation file changes from PR. * Remove rogue indentation in Important box * Remove sentence about default being set to restricted. This *will* be the case for new repos in future, but that isn't being shipped at the moment. * Add permissions to workflow examples (#18393) Co-authored-by: Sarah Edwards --- ...ctions-workflow-permissions-enterprise.png | Bin 0 -> 129105 bytes ...ions-workflow-permissions-organization.png | Bin 0 -> 127576 bytes ...ctions-workflow-permissions-repository.png | Bin 0 -> 110675 bytes .../actions/guides/adding-labels-to-issues.md | 7 +- .../guides/building-and-testing-net.md | 9 +- .../guides/building-and-testing-ruby.md | 11 +- .../actions/guides/closing-inactive-issues.md | 10 +- ...nting-on-an-issue-when-a-label-is-added.md | 9 +- ...ing-to-amazon-elastic-container-service.md | 12 +- .../guides/publishing-docker-images.md | 26 ++-- .../publishing-java-packages-with-gradle.md | 26 ++-- .../publishing-java-packages-with-maven.md | 24 +-- .../guides/publishing-nodejs-packages.md | 25 ++-- ...card-is-added-to-a-project-board-column.md | 8 +- .../guides/scheduling-issue-creation.md | 9 +- .../security-hardening-for-github-actions.md | 11 +- .../reference/authentication-in-a-workflow.md | 141 ++++++++++++------ .../workflow-syntax-for-github-actions.md | 54 +++++++ .../configuring-code-scanning.md | 5 +- ...ing-codeql-code-scanning-in-a-container.md | 5 +- .../troubleshooting-the-codeql-workflow.md | 5 +- .../uploading-a-sarif-file-to-github.md | 7 +- ...imiting-github-actions-for-a-repository.md | 19 +++ .../configuring-code-scanning.md | 45 ++++++ ...ing-codeql-code-scanning-in-a-container.md | 5 +- .../troubleshooting-the-codeql-workflow.md | 5 +- .../uploading-a-sarif-file-to-github.md | 7 +- ...ons-policies-in-your-enterprise-account.md | 17 +++ ...ng-github-actions-for-your-organization.md | 20 +++ ...ing-github-packages-with-github-actions.md | 50 +++++-- content/packages/quickstart.md | 5 +- .../github-actions/forked-write-permission.md | 1 + .../github-token-available-permissions.md | 23 +++ .../github-token-permissions.md | 1 + .../publish-to-packages-workflow-step.md | 2 +- .../workflow-permissions-intro.md | 1 + .../workflow-permissions-modifying.md | 1 + 37 files changed, 455 insertions(+), 151 deletions(-) create mode 100644 assets/images/help/settings/actions-workflow-permissions-enterprise.png create mode 100644 assets/images/help/settings/actions-workflow-permissions-organization.png create mode 100644 assets/images/help/settings/actions-workflow-permissions-repository.png create mode 100644 data/reusables/github-actions/forked-write-permission.md create mode 100644 data/reusables/github-actions/github-token-available-permissions.md create mode 100644 data/reusables/github-actions/github-token-permissions.md create mode 100644 data/reusables/github-actions/workflow-permissions-intro.md create mode 100644 data/reusables/github-actions/workflow-permissions-modifying.md diff --git a/assets/images/help/settings/actions-workflow-permissions-enterprise.png b/assets/images/help/settings/actions-workflow-permissions-enterprise.png new file mode 100644 index 0000000000000000000000000000000000000000..408d7be4c6decd61e9db1f76e065ea12931205e8 GIT binary patch literal 129105 zcmeFZc{p3`_CMTKOSQ$*R;wsF8Co?Ip~fgJHPuYbZB-CrsHudgDylWKT2svPJQXoZ zRZ9&q1wlmGsu&|BBqSnlp7Z^l^E>bF^m+b%uj@UoE7{x5y{&z(du82geLic6HMytD zbxh#cfddD)^zPm^J8*#g%7FuiLXWbuuE3~$Zmh#WKQmpe1Jy(4ms!6&b-AwxGBP@F zjdgzXz~O@e2afzXg!R%mDEO~)or4kw*#2?-(18On?gtM4@0fe6AcpL&nrfN2ln;tID|dVkK|!TKQLz(G##!-xOSJaF*$Z+GpVJ-hwmv*%xZ{^yNH@A{nh>*si; z`Qy;xE2qRkY=85xnwrm@|4zgyz6%%L-n=3Bm(R)i;Lxe_e<$Ki^MQl0pJS*0N?(7f z>5n(x&i##uh|fok-o0{fko~XqrTOgH;oiR!aYb5F^OEl)#lKsX!&h$pornv*thvUX zuK$ZA`^N+>T=kv_QjI{y0o z+K-_O)NML7-lq1OO#P&-2V6*S{Q<(gHUKQ|w}_G_FEY~w<{Cg;<}FVa#$~<#kg$qi z?$d{bv3U4Qqat9nvi@G(I%tl*Jy3&$2m39i)3#R^I!?%6`dvWyrtsr6#nbD^D@t!X zaIg7f6uU{#k9!O%u*^n~H1k!#eO3aHIh^5|4ec6CyCDx)70dASOt`uBX52@^TZ5lj z7EJA+n%7&|RwXGfznC8cSDf*lCA{fYO_S-Q$u$mR>;s~dS6+6Tb-Qd3u(796E$T9g zPScvV6$0usI;7Xq1v;$hk*M)9bMtN`+{p0x=5YEyCZ!WGjNBR9YOhUAzv=#@7V0p3 z6ScLpAO5AeBAAEpz{$U9$%*iw%;(az4LI z$R$!?q_H_@qm;yj4HA+GAE;@**1%o0`iw${119fxS1B&8b|-3pvO{UpBcbBLn5zo* zdu%R(PG;=Hx4r)N>QO&ypN=Ba#cl{kS~UBaUH^$1~zP-?|gWda90I z?&)Mcobl@1@3C{AKNs=4R75lQ_;u>D7aBelDNy1>s+3Wx9vX z4x)?0y)wRq2*Z2L;Up0^LNxXV?8!Z-(P6N_* z-Zl89>$EFhv#;+$QE7tStxd{Kz3~Qk$NJ*71^ent!@ssM%V9cdPnfdkIgpo^C9-q+ z6TA4N4V3uG@T04p-r*rNBJcbV6+BU%ZXn(IalEv%@7V70s#i;tGAXlu(AJ}xe=S^6 zFxSLM=E}c^tN%**Qkp(KA!%zJ$ndg7m;UU)^KVY^Xvk(IsH>C=*C6*nKb~{inlMBL zv*ocC_`;B(?RF9O>^td6+bdq_el4%mB2{SH=!+ae4-{wIw8MExCrkf0q=F%d1iG4B zcFQWaG+LOjcFF@{_!U1s`LU6OatdccCY`)H&d};>$-hgF&*xmoDt+uSNa!WgS_!|7# zp|_GDvY*1lJu2(iyNMH(S4Le?7m&XQ^Nf=LmZ2?Bi#cELj5*@a$+5Vn$V^ ze|TI~4?=NQ!8YGtCA{0niR#&<3&2gDM_e^8nI?vNvE8mm#ih#=Vb>J_9^x9ZYj43}&UmOLXE_l<5cW|5`jm-flW=K2X_71B2*9gb|l(2zgrx4?l8z zU*D+O3F+0va39Q48s7WWJvgp1?ixXvE)ogf>kHkOu)c+M#!oxn7M)x5w8HK~KyU!I z>a*xBpOo!m4cgPpbQK6ZeZTvJ{4gBS{5{$Ley@IYuBxvZ)Hw0PN#Fw!3D+0gB}mBQ zgqx6in-w;$SpkE64haTXr>7Hw1EhhQs3z1FDO{FZ`F5y`-41dlR0cdJB`syYQ)7DC z`JI?C!tveU-flQNUTN;@c$ovX!M!8K#=9e6{;WYfok7JDKbV_!uU6Yll*&Zg>#;lc zw7XhlxXrbT#Cs}DJz%Tv>k)*D#S1Q~f#xTj&aP(O^iA6B7HA%Suu21=io*1pebXHc zpu(-&AXN>8Vexq&S9M-JXjl;(QiG_9u&kL&DPBKom)45ltg^J0y6#xLITX%|KYrwj1^S01R@o0>NZ zH>T&65(R@a=?qWR^{l}mRpOG)m(Fb5d?KI!Qtu`ipjIhC5e_6=;NHhB zZF6+Kw|{8)WdchnCl6oCN6$wyX{$BgW}8>Dzuy9d&#DPn7tneLg{O^cS2g53!~$pc zsYnV~-tB7@=xbF|N!5NX+f2!!Q@*`>EXU_Y<7u8g(MH{GaKXJ?X9g83GaBA$cctAR zB>+;X%YrMBJt&gn@JdKDYv(XjN~6$TsSitkSj;fMPJNs8GX@ga(T>QvTa_L)$k8~M zIFw6jJ6_)HV*scP;>Xd_|0FBxo|@}%_Wb0$BGC8N9}U$VbT}fc_dBP%AY*d> z=BE_)G%uwGZ2Z$F7f z{ZzLtnyG0esQC5sGgIZy$waxbY~B(l(d*#MZiCjL|Y? z3}kvH0C)Y-SkP<*;TEFs0v>?DJy6N=`CxjLs+A0lqZbF@S zc7H4G%4B*#yfJ*fH4{#zm3{PYV{j`BBhPVX>R6Y~(_R*+uy^Iz zcO8|2_Tst+H^j5R{@HJT2e0-!<(3{gg~|YMaY~>qQ8AD8y%V`pOTDoOBiYq#MC@5$ z$Mz(4|G^R?v&9cBCvUeVJjWxIOL)euzUg+l%IKu6O>_i|!I3sl)2`AzzBPIc0Mr;$ zFr(Q=#hc3h$TxtNOvJfO=eM*tFI}i7*m|5rd@>uVGBk0~#8W?NAF0uc$mY&!P1_BZ z_DIr^bU*92XPBX=K2LKwWz8mPePMpycV2tdA|CDuxTYoV%D>aA*tZ?-nv-g^Dn4-O zR(yU!Z`OOzcNuvP%6Y$^H?p2TO8{zM=)<09r5KTki=;tpB1GO~8m#mfJ2!&$8kUT7 zS{-S*F_?Y1yh?trlcT;$QGtk1T|ai{bl%$|-0fTa9)z*Euw(Z9X^yE54{7+Perr$k zD&+&UZ(M$NlgC-{bew<(TUe?+%%!-mZvIT@Ag`KYj-S=Fq{aP2f|w_j|9!sJ#-7+=JSn3nZzmb6s1#eP#H7~*%8^veRc}Y^-jzP zkzUACn5-4PGuk`2ju6wLGbo%@s$LgtpLbYRoJAboA3~(V`w7E$#X@H{M}5HJwr8FqYV0kQ3&p7^QA=o4JYk0)X019l$fO(@NXLj5fA(mM_U z1bH#D@p4qv05z4JA!{2KOKk5a9s(y;{BDEdAfHp1yVp6{k*&_HALF(Y9Fes1>2652 z)NvlYVvtkk&Su3(9U&!ndBHj!p5H$n&7g~fE`hilsbGwlg8f*;$-p+4S^cdn)c{#L zuexAa+pZQ45n2w>`iDU{;(~VIQdLkId016kVUEilBtKHn`@T3}eX46IvkY+yKt{^| zIT|g5pDvwjy8o-(dB4Aco}L%!bu2zn@THe?NtVD2Xi6X>-qVTOk1)tN^tO3HVF=h{ zfi5%3m;_bOwx4TU9Dk2l3c??k3h6eA)anL*0wcpH$7slr;LT}1r!+p@_N23(7Jg>E z!eQ^H-3qw02NvaXJ?`N>=tZbi?WWx^)N4V+SVQq(^U{MZ-Ij^IGx~jq;^T(pO&@s=nQuFEhXF=grm;yD2OZK zCKd-d0}8RM%*f;_EE%N!qgH$Du*R;!Y|Dq44tzO`@jxRWK>(Fz70wH}3=mf!>x#tC z6HUaz&R~@rbH)enDrj5q=Tc{HC{%gBI@_is&x+!EW?_r!gyLJ;dlQEt;}!L5h79u; zAOu_g&-Pr`#CDZ)3DT?44zfS4W&|&mAQZcUMvNHRIgL*i`fn9iXOLR>98b8clV)r4 z+`Z}E5)iYP5jOT>rJRC&4sP|Ixg#qX3SPW%=5z{prq8%v&Du#2{G`7q5JEjctnZ{Q zso>h3FQw0VwI6!q6vhbfY-9eJZqM)m0f}X%^TslLbV=#9DgQMe!_t~KoaZ|WT_NAJ z;Gf}%B@@l2AZlLB`7{-dSw+i?pQt9?macD>5eceZLg)R@5{*Z8^Ast@s^m(OGQWvS zroW6AK^l5tVYABqK0^tG^OFJF$*CF62`ZNWW!u71MyaP0Wu_F-QIpnm~u|gM`e&Qs6DVhj%B*FppDh1GogV^CcpGC zdD)BE5DK`-b>wjda$g+cQ-z6AH!n!K?+RW}p1Tq(48k_hCU)@J)EUhw_PpuwnEpHp zXQI!NYK?9X)^w*QZ#O`AM-MZhE7GpS`_T%2dje~vq>?by@$HfPk0NWc*AfRx z#d7lLZ{ZP2zuT={q)jZ06qnJBZk^C2?F5+k?DcmUJ40zcvCADZjehT*Te}$2mvJZ3 zhYRq*m>j9E&6~QVh>ygeIb!0mImvlRbKU9WYnE~>d;w5(+QG#iD74J00{LQ~TPnZy z8q!nrTtU?6n2tS&-ewY=o%7yC_35|xyaz9U>dRCfjXk#+F|XD5m&OTV#ZX*>J&hc%6RvO&h>vNurasD}>NR@ive1rL(DQIoVhX}ti$v^WTCF06( zw_(Nvb^95kQ|`z?UjJ2)>V?GOGV_uco#oa_u`hf6pC59>JU_Xw;GkQx5|$3U_LMp8 z`aPf!_3`L$GQ$YDGZL-OZr2wZX^EJiLPNbXh_S^=_!F*T6`;r*+a~ZbPceX07z;*p zd(Y|4TSRslgD1sjc#VwhY?Z3{uZAmk02%M!4T2gyqI7`dwbyyy4cYi8YD$XQD(Jn@ zjca{1Fv)zQ+|s_%2qj7r3RorVP-q`Lu?}rmE=@sL^+nK|hFciLh~U(29`&0FIr>cI z=4wruZ~tM+yM!DO(BLoKBcyP~c9TiYvC%PRI!(y*^dp#A?&IwV17U?tOc51KDD58A z)zK~C3aUkMmjz1#J7j;j6p(O5v8Tn005;>8NzJckuA6{1iaMnID>xk|+9!vRd#42W zlzd{j^2;nj^v2vv{QFv`gsW@|jexYTmr*@}koSsn@h0Nb@>}0aY!JJpNrlaXu}Mcs zx~ux~=Xpb9XP8;|;`U9+hUGsOMl(91aJc(K2Ef`ru&m6qAf&jjYiCF(Q7=OS5_0oG z-UAPXD$>N8*n8;O1p4m$-o^i1TGkO)!DWP<6vg;aAu2yd+0415f1cs8WOZv#Y1vhvkiRBW{u|9>K!FYC6s|!6 z)*4Cd0!}mx>LK0-cj}?2x6yWvMjU{qGhEW2w@;rUa^y2Q>E|ZS`|2?g_V(!{FWGGs z3d4t!Y9)o1?=zQA{f0^}$%5B??m((cd|H0GX1ZT`;bZXuxIs;PXm^d5Ix%*0OBedo>#9{1MP8wnnEu`tj!8frnhnTW;)fUqJ;Qp@BKh&XMg_B&qf=u$QczBjrGEQ-C8og zChv!8OgSQ=U|KXuZD3s4abKg8=#hl(yUdeBif5LUGY&h_0!IR;;B9}?wJ9R*Vk!h-+cjp;_CTP72 z!}^8Td!Gxo+7eiBemVk<0V4Lky(lh=-w#DH10aioEA}(Sc;*{N^yi%FT?1QkvEI91 zh`sGrsz*&n3N#}GRq_H#yem~S{^>~P^wnZ_>Fua7;u?8S6`|K0&SW%w1k4EB;H;F- z$&yGU%eIOf+tHy%yd0X3R>HR@Kn2_P85pO$hg=FCr>c!gG)doegXE|uki#rcP89c8stvWa5s>+ z{A;G7M&X(zvK^h-0*nsK`_7FOOny0}R0fO?Yg3eC!NRuSw=6uqXl~WWPtg9C`PR;8 zL#k7lI^Z?smS~Y(@wSs(kHp=Dv7e;k7vP{$u|yRUnTkTjeQ4E|A=PlT#x7`}L61z3 zQbmAJ>4Na;3lrA(P{BX(;@M^&RG|n2Rp?pPQw*p#8d8xm&pBkn_u;hlaKZ8oA$ga# zyoIJF;xj+f67Dd{*!4Z2D0gtAWPITC7tan$M&_dZsnx;7`jp<_b2y%?rd=^)4k?T_Azk+S}IJ%{_sa^P>3w&7S{-zu&dbm0&y7c1Nz- zVl!ZJO}SWS+vvI3%4K}0>fzJGuTw^|ICjOotx0SF>QfYxy-|ET<{8|0(;R&_*3KwH zi1V&R1tJ1@*O4@l_yTW;&b-SW;wX9bi(&ZmP{ShQ=5VPxVcIq}JH478 zHjWg!K;p6W&@hn!uenjBCd&PryOdA5D`MR5|pH2u~a`b}sMZxQ&dBmGA$(msL^v5|Q zMc@aA3Jx*BJN+`%k#k?+-oaOF6uit*rTR=^rkzfWUM1Qoe3rg>lcxad;EV#~7w7}p zaR@A&72#mcqnBSyZI_}~bLUsvVve9EzSCgPrg|eqA$Yw=^3)l*Q@`^Pp(4`!@Z5-`&jSr z<}Z=fNT*jLFRrtVCV0=Qd_aA8S|+~imoqVc$b1YzHt1lRJGP$�$!aRr6<$oVdZ} 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 literal 0 HcmV?d00001 diff --git a/assets/images/help/settings/actions-workflow-permissions-organization.png b/assets/images/help/settings/actions-workflow-permissions-organization.png new file mode 100644 index 0000000000000000000000000000000000000000..8c234f7fd46090c91fdf164c140e3f0eb64abec4 GIT binary patch literal 127576 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%0ArIVmbo|%=RSSH5jVC{g-zEtjw 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

i`cW!$G3Qjv7pV-g zbvQ6|(uzEgp;aLo$<`D;sIiw8qij_#1S<^|>1k+u+VjdO*>%`JS-|kaW7;;4>Zmy# z0Jd9Pee=*jH@sny{6^?1XK-oj>_!{WW>AfJSW+cvRb_wK+zKUOe<~SEBlYTZj(LVv zmZf3U`4O3fDH1R@rHjxz-d|w;Crs}(GQos{rkMaAbPWZP`mSF$SAbO(Pt!qHk#1S5 zh}Fqh5*N@M>^5m`;j*ixbC>OU>(&WAEp)I?l!aQ;vY}9m%A>uN1KwzVo7>P#EQz0u ze(K`kdP1oY0QszCq#fI?zrUD*=-o&TOb{|O5&l4OUgmTb;8C6hcsZ=v7W17i!-=Wy zj{^Q*)X{HB6NqskZ#%~UKr-?OcZ!#u6c(9~uv9heyMIh)$dRzySQDu(IRjI|8HPSs zcy+ulbor{$z0bI2QCq)lWc6$8p7*M;EI~OAoP71L@!RPG5_r`Oo0#8}dzLkb#1hyAAmrR{NyLsIpWpAg{5dXjb{MAl#5 zK%SFF z?xu18v=NsX@q@~Cy$WN^6nH6!=$`!v&cdzqlm+8G6Fb-||1g1k^@E;BMYlE3A@(;Hrm*MhbVoMX-VTx>Ax-}24jViuF6hDy+2@;z2>o^wV{BlLp@!>h_ zZ~q82OTPd}5Ua3s<>O~G#1qpM{$9k}d!ThZ{Cu+Mi0`9CZ^Tc3@}+A`%K*3VWiL-G z(=}PSO?obw8gURm=KXS`@K))X2{L{Ps6&3z6xpX>booj zzN9@+f_Tx3b*iHDUBXHuNJ65+?%Do`#Rmvm%|=X`{L=FPI@|sacg1>atFcvqdsfT< zorJiRzMYPTNqQ&V#Tm+5*Q4JoPZsljWYu$@gdpE1zk^C%J^IA+BA#xhldIc zM)^_J9B8#^&V^MTepJ zjpv)@&NF5)=K|r*o4;{(5_HvPfh%^4-u<^ZQ_2G%SIG@|({ujs0Sf1w3=IAM>w%r6 z@A>LXIwZga0X_Mb==o|Dnnx*2+?|DT=g%*0NG#tvE49?uA1MG7d7jJtObeAEuizYw zYeiajI@-^dnQW9qpcdzuiqQjH_*Nl#@3s30IQ8m3({Dg>Gq%4UoafmBLgda08vw1s zjJ(fGs}u!dzILU8fYUJ61UL(q16?Hgwg3M+RW0CSaOmLxgGW2WY@pm6ky1t`kdkhz*EL2P@p4Js9ntKveb(l-l8`Vd1Bg| zawM7|npyYe{8{JaU12YJLC?d}H&kqZjynWgTvB`J9i1W3X2_kVrcnX`JHS=Zb-D$7 z1)%dSNS|@|u3_r` zwZK&uRAD__kW+=_EO~CX2sf-9INI!hfxkv)Q&e(0PTsl%5Cb|vohz@Pdi}N-%9iTBfoY#V+bKpS0areJvVeGhAe4JybL!ov)Lx zj)y)7hFBD%)KNSpjT6vT{d&tXJxgD9Rz>wfZ6%E+V6q$f`~)> z*JP=xm!50&ILQuYDL5U)?m?={x@e`6QlV}%z)0Nv0)I4vg)LZ zd5qZkv YZw!_t4tPUw0r-=XQhrwQ#Ps$50bu&i*Z=?k literal 0 HcmV?d00001 diff --git a/content/actions/guides/adding-labels-to-issues.md b/content/actions/guides/adding-labels-to-issues.md index 618af66b80e5..fd0a99b7fc5e 100644 --- a/content/actions/guides/adding-labels-to-issues.md +++ b/content/actions/guides/adding-labels-to-issues.md @@ -29,7 +29,6 @@ In the tutorial, you will first make a workflow file that uses the [`andymckay/l 2. {% data reusables.actions.make-workflow-file %} 3. Copy the following YAML contents into your workflow file. - {% raw %} ```yaml{:copy} name: Label issues on: @@ -39,14 +38,16 @@ In the tutorial, you will first make a workflow file that uses the [`andymckay/l - opened jobs: label_issues: - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + issues: write{% endif %} steps: - name: Label issues uses: andymckay/labeler@1.0.2 with: add-labels: "triage" ``` - {% endraw %} + 4. Customize the parameters in your workflow file: - Change the value for `add-labels` to the list of labels that you want to add to the issue. Separate multiple labels with commas. For example, `"help wanted, good first issue"`. For more information about labels, see "[Managing labels](/github/managing-your-work-on-github/managing-labels#applying-labels-to-issues-and-pull-requests)." 5. {% data reusables.actions.commit-workflow %} diff --git a/content/actions/guides/building-and-testing-net.md b/content/actions/guides/building-and-testing-net.md index a8c32c9cad79..d734043f7177 100644 --- a/content/actions/guides/building-and-testing-net.md +++ b/content/actions/guides/building-and-testing-net.md @@ -227,7 +227,6 @@ jobs: You can configure your workflow to publish your Dotnet package to a package registry when your CI tests pass. You can use repository secrets to store any tokens or credentials needed to publish your binary. The following example creates and publishes a package to {% data variables.product.prodname_registry %} using `dotnet core cli`. -{% raw %} ```yaml name: Upload dotnet package @@ -237,7 +236,10 @@ on: jobs: deploy: - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + packages: write + contents: read{% endif %} steps: - uses: actions/checkout@v2 - uses: actions/setup-dotnet@v1 @@ -245,11 +247,10 @@ jobs: dotnet-version: '3.1.x' # SDK Version to use. source-url: https://nuget.pkg.github.com//index.json env: - NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}} + NUGET_AUTH_TOKEN: {% raw %}${{secrets.GITHUB_TOKEN}}{% endraw %} - run: dotnet build --configuration Release - name: Create the package run: dotnet pack --configuration Release - name: Publish the package to GPR run: dotnet nuget push /bin/Release/*.nupkg ``` -{% endraw %} diff --git a/content/actions/guides/building-and-testing-ruby.md b/content/actions/guides/building-and-testing-ruby.md index 79faf88e3967..d450f2450343 100644 --- a/content/actions/guides/building-and-testing-ruby.md +++ b/content/actions/guides/building-and-testing-ruby.md @@ -264,7 +264,6 @@ You can configure your workflow to publish your Ruby package to any package regi You can store any access tokens or credentials needed to publish your package using repository secrets. The following example creates and publishes a package to `GitHub Package Registry` and `RubyGems`. -{% raw %} ```yaml name: Ruby Gem @@ -281,9 +280,12 @@ on: jobs: build: name: Build + Publish - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + packages: write + contents: read{% endif %} - steps: + steps:{% raw %} - uses: actions/checkout@v2 - name: Set up Ruby 2.6 uses: ruby/setup-ruby@v1 @@ -312,6 +314,5 @@ jobs: gem build *.gemspec gem push *.gem env: - GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}" + GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"{% endraw %} ``` -{% endraw %} diff --git a/content/actions/guides/closing-inactive-issues.md b/content/actions/guides/closing-inactive-issues.md index 461ef0aca2ff..9df2821fb26d 100644 --- a/content/actions/guides/closing-inactive-issues.md +++ b/content/actions/guides/closing-inactive-issues.md @@ -29,7 +29,6 @@ In the tutorial, you will first make a workflow file that uses the [`actions/sta 2. {% data reusables.actions.make-workflow-file %} 3. Copy the following YAML contents into your workflow file. - {% raw %} ```yaml{:copy} name: Close inactive issues on: @@ -38,7 +37,10 @@ In the tutorial, you will first make a workflow file that uses the [`actions/sta jobs: close-issues: - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + issues: write + pull-requests: write{% endif %} steps: - uses: actions/stale@v3 with: @@ -49,9 +51,9 @@ In the tutorial, you will first make a workflow file that uses the [`actions/sta close-issue-message: "This issue was closed because it has been inactive for 14 days since being marked as stale." days-before-pr-stale: -1 days-before-pr-close: -1 - repo-token: ${{ secrets.GITHUB_TOKEN }} + repo-token: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` - {% endraw %} + 4. Customize the parameters in your workflow file: - Change the value for `on.schedule` to dictate when you want this workflow to run. In the example above, the workflow will run every day at 1:30 UTC. For more information about scheduled workflows, see "[Scheduled events](/actions/reference/events-that-trigger-workflows#scheduled-events)." - Change the value for `days-before-issue-stale` to the number of days without activity before the `actions/stale` action labels an issue. If you never want this action to label issues, set this value to `-1`. diff --git a/content/actions/guides/commenting-on-an-issue-when-a-label-is-added.md b/content/actions/guides/commenting-on-an-issue-when-a-label-is-added.md index 50f5ad45a416..092804c1adb6 100644 --- a/content/actions/guides/commenting-on-an-issue-when-a-label-is-added.md +++ b/content/actions/guides/commenting-on-an-issue-when-a-label-is-added.md @@ -29,7 +29,6 @@ In the tutorial, you will first make a workflow file that uses the [`peter-evans 2. {% data reusables.actions.make-workflow-file %} 3. Copy the following YAML contents into your workflow file. - {% raw %} ```yaml{:copy} name: Add comment on: @@ -39,16 +38,18 @@ In the tutorial, you will first make a workflow file that uses the [`peter-evans jobs: add-comment: if: github.event.label.name == 'help-wanted' - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + issues: write{% endif %} steps: - name: Add comment uses: peter-evans/create-or-update-comment@v1 with: - issue-number: ${{ github.event.issue.number }} + issue-number: {% raw %}${{ github.event.issue.number }}{% endraw %} body: | This issue is available for anyone to work on. **Make sure to reference this issue in your pull request.** :sparkles: Thank you for your contribution! :sparkles: ``` - {% endraw %} + 4. Customize the parameters in your workflow file: - Replace `help-wanted` in `if: github.event.label.name == 'help-wanted'` with the label that you want to act on. If you want to act on more than one label, separate the conditions with `||`. For example, `if: github.event.label.name == 'bug' || github.event.label.name == 'fix me'` will comment whenever the `bug` or `fix me` labels are added to an issue. - Change the value for `body` to the comment that you want to add. GitHub flavored markdown is supported. For more information about markdown, see "[Basic writing and formatting syntax](/github/writing-on-github/basic-writing-and-formatting-syntax)." diff --git a/content/actions/guides/deploying-to-amazon-elastic-container-service.md b/content/actions/guides/deploying-to-amazon-elastic-container-service.md index 6e32e331f37d..532118e628b6 100644 --- a/content/actions/guides/deploying-to-amazon-elastic-container-service.md +++ b/content/actions/guides/deploying-to-amazon-elastic-container-service.md @@ -73,7 +73,6 @@ The following example workflow demonstrates how to build a container image and p Ensure that you provide your own values for all the variables in the `env` key of the workflow. -{% raw %} ```yaml{:copy} name: Deploy to Amazon ECS @@ -98,9 +97,12 @@ defaults: jobs: deploy: name: Deploy - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + packages: write + contents: read{% endif %} - steps: + {% raw %}steps: - name: Checkout uses: actions/checkout@v2 @@ -142,9 +144,9 @@ jobs: task-definition: ${{ steps.task-def.outputs.task-definition }} service: ${{ env.ECS_SERVICE }} cluster: ${{ env.ECS_CLUSTER }} - wait-for-service-stability: true + wait-for-service-stability: true{% endraw %} ``` -{% endraw %} + ### Additional resources diff --git a/content/actions/guides/publishing-docker-images.md b/content/actions/guides/publishing-docker-images.md index 0421ca4cf9cb..c09641b5774a 100644 --- a/content/actions/guides/publishing-docker-images.md +++ b/content/actions/guides/publishing-docker-images.md @@ -98,7 +98,6 @@ The `build-push-action` options required for {% data variables.product.prodname_ * `registry`: Must be set to `docker.pkg.github.com`. * `repository`: Must be set in the format `OWNER/REPOSITORY/IMAGE_NAME`. For example, for an image named `octo-image` stored on {% data variables.product.prodname_dotcom %} at `http://github.com/octo-org/octo-repo`, the `repository` option should be set to `octo-org/octo-repo/octo-image`. -{% raw %} ```yaml{:copy} name: Publish Docker image on: @@ -107,21 +106,23 @@ on: jobs: push_to_registry: name: Push Docker image to GitHub Packages - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + packages: write + contents: read{% endif %} steps: - name: Check out the repo uses: actions/checkout@v2 - name: Push to GitHub Packages uses: docker/build-push-action@v1 with: - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} + username: {% raw %}${{ github.actor }}{% endraw %} + password: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} registry: docker.pkg.github.com repository: my-org/my-repo/my-image tag_with_ref: true ``` -{% endraw %} {% data reusables.github-actions.docker-tag-with-ref %} @@ -131,7 +132,6 @@ In a single workflow, you can publish your Docker image to multiple registries b The following example workflow uses the `build-push-action` steps from the previous sections ("[Publishing images to Docker Hub](#publishing-images-to-docker-hub)" and "[Publishing images to {% data variables.product.prodname_registry %}](#publishing-images-to-github-packages)") to create a single workflow that pushes to both registries. -{% raw %} ```yaml{:copy} name: Publish Docker image on: @@ -140,26 +140,28 @@ on: jobs: push_to_registries: name: Push Docker image to multiple registries - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + packages: write + contents: read{% endif %} steps: - name: Check out the repo uses: actions/checkout@v2 - name: Push to Docker Hub uses: docker/build-push-action@v1 with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} + username: {% raw %}${{ secrets.DOCKER_USERNAME }}{% endraw %} + password: {% raw %}${{ secrets.DOCKER_PASSWORD }}{% endraw %} repository: my-docker-hub-namespace/my-docker-hub-repository tag_with_ref: true - name: Push to GitHub Packages uses: docker/build-push-action@v1 with: - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} + username: {% raw %}${{ github.actor }}{% endraw %} + password: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} registry: docker.pkg.github.com repository: my-org/my-repo/my-image tag_with_ref: true ``` -{% endraw %} The above workflow checks out the {% data variables.product.prodname_dotcom %} repository, and uses the `build-push-action` action twice to build and push the Docker image to Docker Hub and {% data variables.product.prodname_registry %}. For both steps, it sets the `build-push-action` option [`tag_with_ref`](https://github.com/marketplace/actions/build-and-push-docker-images#tag_with_ref) to automatically tag the built Docker image with the Git reference of the workflow event. This workflow is triggered on publishing a {% data variables.product.prodname_dotcom %} release, so the reference for both registries will be the Git tag for the release. diff --git a/content/actions/guides/publishing-java-packages-with-gradle.md b/content/actions/guides/publishing-java-packages-with-gradle.md index 6a7f10ecd511..8e0fc734ca9c 100644 --- a/content/actions/guides/publishing-java-packages-with-gradle.md +++ b/content/actions/guides/publishing-java-packages-with-gradle.md @@ -108,7 +108,7 @@ Each time you create a new release, you can trigger a workflow to publish your p You can define a new Maven repository in the publishing block of your _build.gradle_ that points to {% data variables.product.prodname_registry %}. In that repository configuration, you can also take advantage of environment variables set in your CI workflow run. You can use the `GITHUB_ACTOR` environment variable as a username, and you can set the `GITHUB_TOKEN` environment variable with your `GITHUB_TOKEN` secret. -The `GITHUB_TOKEN` exists in your repository by default and has read and write permissions for packages in the repository where the workflow runs. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." +{% data reusables.github-actions.github-token-permissions %} For example, if your organization is named "octocat" and your repository is named "hello-world", then the {% data variables.product.prodname_registry %} configuration in _build.gradle_ would look similar to the below example. @@ -133,7 +133,6 @@ publishing { With this configuration, you can create a workflow that publishes your package to the Maven Central Repository by running the `gradle publish` command. -{% raw %} ```yaml{:copy} name: Publish package to GitHub Packages on: @@ -141,7 +140,10 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + contents: read + packages: write {% endif %} steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v2 @@ -151,12 +153,11 @@ jobs: - name: Publish package run: gradle publish env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` -{% endraw %} {% data reusables.github-actions.gradle-workflow-steps %} -1. Runs the `gradle publish` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. +1. Runs the `gradle publish` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}The `permissions` key specifies the access that the `GITHUB_TOKEN` secret will allow.{% endif %} For more information about using secrets in your workflow, see "[Creating and using encrypted secrets](/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." @@ -199,7 +200,6 @@ publishing { With this configuration, you can create a workflow that publishes your package to both the Maven Central Repository and {% data variables.product.prodname_registry %} by running the `gradle publish` command. -{% raw %} ```yaml{:copy} name: Publish package to the Maven Central Repository and GitHub Packages on: @@ -207,7 +207,10 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + contents: read + packages: write {% endif %} steps: - uses: actions/checkout@v2 - name: Set up Java @@ -217,14 +220,13 @@ jobs: distribution: 'adopt' - name: Publish to the Maven Central Repository run: gradle publish - env: + env: {% raw %} MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }} MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` -{% endraw %} {% data reusables.github-actions.gradle-workflow-steps %} -1. Runs the `gradle publish` command to publish to the `OSSRH` Maven repository and {% data variables.product.prodname_registry %}. The `MAVEN_USERNAME` environment variable will be set with the contents of your `OSSRH_USERNAME` secret, and the `MAVEN_PASSWORD` environment variable will be set with the contents of your `OSSRH_TOKEN` secret. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. +1. Runs the `gradle publish` command to publish to the `OSSRH` Maven repository and {% data variables.product.prodname_registry %}. The `MAVEN_USERNAME` environment variable will be set with the contents of your `OSSRH_USERNAME` secret, and the `MAVEN_PASSWORD` environment variable will be set with the contents of your `OSSRH_TOKEN` secret. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}The `permissions` key specifies the access that the `GITHUB_TOKEN` secret will allow.{% endif %} For more information about using secrets in your workflow, see "[Creating and using encrypted secrets](/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." diff --git a/content/actions/guides/publishing-java-packages-with-maven.md b/content/actions/guides/publishing-java-packages-with-maven.md index d9fad33466fc..7b3d6fbe481a 100644 --- a/content/actions/guides/publishing-java-packages-with-maven.md +++ b/content/actions/guides/publishing-java-packages-with-maven.md @@ -112,9 +112,9 @@ This workflow performs the following steps: Each time you create a new release, you can trigger a workflow to publish your package. The workflow in the example below runs when the `release` event triggers with type `created`. The workflow publishes the package to {% data variables.product.prodname_registry %} if CI tests pass. For more information on the `release` event, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows#release)." -In this workflow, you can use the `setup-java` action. This action installs the given version of the JDK into the `PATH`, and also sets up a Maven _settings.xml_ for publishing the package to {% data variables.product.prodname_registry %}. The generated _settings.xml_ defines authentication for a server with an `id` of `github`, using the `GITHUB_ACTOR` environment variable as the username and the `GITHUB_TOKEN` environment variable as the password. +In this workflow, you can use the `setup-java` action. This action installs the given version of the JDK into the `PATH`, and also sets up a Maven _settings.xml_ for publishing the package to {% data variables.product.prodname_registry %}. The generated _settings.xml_ defines authentication for a server with an `id` of `github`, using the `GITHUB_ACTOR` environment variable as the username and the `GITHUB_TOKEN` environment variable as the password. The `GITHUB_TOKEN` environment variable is assigned the value of the special `GITHUB_TOKEN` secret. -The `GITHUB_TOKEN` exists in your repository by default and has read and write permissions for packages in the repository where the workflow runs. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." +{% data reusables.github-actions.github-token-permissions %} For a Maven-based project, you can make use of these settings by creating a distribution repository in your _pom.xml_ file with an `id` of `github` that points to your {% data variables.product.prodname_registry %} endpoint. @@ -137,7 +137,6 @@ For example, if your organization is named "octocat" and your repository is name With this configuration, you can create a workflow that publishes your package to {% data variables.product.prodname_registry %} by making use of the automatically generated _settings.xml_. -{% raw %} ```yaml{:copy} name: Publish package to GitHub Packages on: @@ -145,7 +144,10 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + contents: read + packages: write {% endif %} steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v2 @@ -155,9 +157,8 @@ jobs: - name: Publish package run: mvn --batch-mode deploy env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` -{% endraw %} This workflow performs the following steps: @@ -173,7 +174,6 @@ You can publish your packages to both the Maven Central Repository and {% data v Ensure your _pom.xml_ file includes a distribution management repository for both your {% data variables.product.prodname_dotcom %} repository and your Maven Central Repository provider. For example, if you deploy to the Central Repository through the OSSRH hosting project, you might want to specify it in a distribution management repository with the `id` set to `ossrh`, and you might want to specify {% data variables.product.prodname_registry %} in a distribution management repository with the `id` set to `github`. -{% raw %} ```yaml{:copy} name: Publish package to the Maven Central Repository and GitHub Packages on: @@ -181,7 +181,10 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + contents: read + packages: write {% endif %} steps: - uses: actions/checkout@v2 - name: Set up Java for publishing to Maven Central Repository @@ -194,7 +197,7 @@ jobs: server-password: MAVEN_PASSWORD - name: Publish to the Maven Central Repository run: mvn --batch-mode deploy - env: + env:{% raw %} MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }} MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }} - name: Set up Java for publishing to GitHub Packages @@ -205,9 +208,8 @@ jobs: - name: Publish to GitHub Packages run: mvn --batch-mode deploy env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` -{% endraw %} This workflow calls the `setup-java` action twice. Each time the `setup-java` action runs, it overwrites the Maven _settings.xml_ file for publishing packages. For authentication to the repository, the _settings.xml_ file references the distribution management repository `id`, and the username and password. diff --git a/content/actions/guides/publishing-nodejs-packages.md b/content/actions/guides/publishing-nodejs-packages.md index 3e359adce879..58aff7c38ab6 100644 --- a/content/actions/guides/publishing-nodejs-packages.md +++ b/content/actions/guides/publishing-nodejs-packages.md @@ -112,7 +112,7 @@ However, if you do provide the `repository` key, then the repository in that key #### Authenticating to the destination repository -To authenticate to the {% data variables.product.prodname_registry %} registry in your workflow, you can use the `GITHUB_TOKEN` from your repository. It is created automatically and has _read_ and _write_ permissions for packages in the repository where the workflow runs. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)." +To perform authenticated operations against the {% data variables.product.prodname_registry %} registry in your workflow, you can use the `GITHUB_TOKEN`. {% data reusables.github-actions.github-token-permissions %} If you want to publish your package to a different repository, you must use a personal access token (PAT) that has permission to write to packages in the destination repository. For more information, see "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)" and "[Encrypted secrets](/actions/reference/encrypted-secrets)." @@ -120,7 +120,6 @@ If you want to publish your package to a different repository, you must use a pe This example stores the `GITHUB_TOKEN` secret in the `NODE_AUTH_TOKEN` environment variable. When the `setup-node` action creates an *.npmrc* file, it references the token from the `NODE_AUTH_TOKEN` environment variable. -{% raw %} ```yaml{:copy} name: Node.js Package on: @@ -128,7 +127,10 @@ on: types: [created] jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + contents: read + packages: write {% endif %} steps: - uses: actions/checkout@v2 # Setup .npmrc file to publish to GitHub Packages @@ -141,9 +143,8 @@ jobs: - run: npm install - run: npm publish env: - NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NODE_AUTH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` -{% endraw %} The `setup-node` action creates an *.npmrc* file on the runner. When you use the `scope` input to the `setup-node` action, the *.npmrc* file includes the scope prefix. By default, the `setup-node` action sets the scope in the *.npmrc* file to the account that contains that workflow file. @@ -196,13 +197,13 @@ If you publish a package to both registries, you'll need to ensure that your sco Ensure your *package.json* file includes the scope of your {% data variables.product.prodname_dotcom %} repository and npm registry. For example, if you plan to publish a package in the `octocat/npm-hello-world-test` repository to {% data variables.product.prodname_dotcom %} and https://www.npmjs.com/package/@octocat/npm-hello-world-test, the name in your *package.json* file would be `"name": "@octocat/npm-hello-world-test"`. -To perform authenticated operations against the {% data variables.product.prodname_registry %} registry in your workflow, you can use the `GITHUB_TOKEN`. The `GITHUB_TOKEN` exists in your repository by default and has read and write permissions for packages in the repository where the workflow runs. For more information, see "[Creating and using encrypted secrets](/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." +To perform authenticated operations against the {% data variables.product.prodname_registry %} registry in your workflow, you can use the `GITHUB_TOKEN`. {% data reusables.github-actions.github-token-permissions %} When you use the `scope` input to the `setup-node` action, the action creates an *.npmrc* file that includes the scope prefix. By default, the `setup-node` action sets the scope in the *.npmrc* file to the user or organization that owns the workflow file. This workflow calls the `setup-node` action two times. Each time the `setup-node` action runs, it overwrites the *.npmrc* file. The *.npmrc* file references the token that allows you to perform authenticated operations against the package registry from the `NODE_AUTH_TOKEN` environment variable. The workflow sets the `NODE_AUTH_TOKEN` environment variable each time the `npm publish` command is run, first with a token to publish to npm (`NPM_TOKEN`) and then with a token to publish to {% data variables.product.prodname_registry %} (`GITHUB_TOKEN`). -{% raw %} + ```yaml{:copy} name: Node.js Package on: @@ -210,7 +211,10 @@ on: types: [created] jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + contents: read + packages: write {% endif %} steps: - uses: actions/checkout@v2 # Setup .npmrc file to publish to npm @@ -221,7 +225,7 @@ jobs: - run: npm install # Publish to npm - run: npm publish --access public - env: + env:{% raw %} NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} # Setup .npmrc file to publish to GitHub Packages - uses: actions/setup-node@v1 @@ -232,6 +236,5 @@ jobs: # Publish to GitHub Packages - run: npm publish env: - NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` -{% endraw %} diff --git a/content/actions/guides/removing-a-label-when-a-card-is-added-to-a-project-board-column.md b/content/actions/guides/removing-a-label-when-a-card-is-added-to-a-project-board-column.md index 7ab58f630856..00d6c5987565 100644 --- a/content/actions/guides/removing-a-label-when-a-card-is-added-to-a-project-board-column.md +++ b/content/actions/guides/removing-a-label-when-a-card-is-added-to-a-project-board-column.md @@ -30,7 +30,6 @@ In the tutorial, you will first make a workflow file that uses the [`andymckay/l 3. {% data reusables.actions.make-workflow-file %} 4. Copy the following YAML contents into your workflow file. - {% raw %} ```yaml{:copy} name: Remove labels on: @@ -40,14 +39,17 @@ In the tutorial, you will first make a workflow file that uses the [`andymckay/l jobs: remove_labels: if: github.event.project_card.column_id == '12345678' - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + issues: write + pull-requests: write{% endif %} steps: - name: remove labels uses: andymckay/labeler@master with: remove-labels: "needs review" ``` - {% endraw %} + 5. Customize the parameters in your workflow file: - In `github.event.project_card.column_id == '12345678'`, replace `12345678` with the ID of the column where you want to un-label issues and pull requests that are moved there. diff --git a/content/actions/guides/scheduling-issue-creation.md b/content/actions/guides/scheduling-issue-creation.md index b261b2a6671a..bae7e295617e 100644 --- a/content/actions/guides/scheduling-issue-creation.md +++ b/content/actions/guides/scheduling-issue-creation.md @@ -29,7 +29,6 @@ In the tutorial, you will first make a workflow file that uses the [`imjohnbo/is 2. {% data reusables.actions.make-workflow-file %} 3. Copy the following YAML contents into your workflow file. - {% raw %} ```yaml{:copy} name: Weekly Team Sync on: @@ -39,7 +38,9 @@ In the tutorial, you will first make a workflow file that uses the [`imjohnbo/is jobs: create_issue: name: Create team sync issue - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + issues: write{% endif %} steps: - name: Create team sync issue uses: imjohnbo/issue-bot@v3.0 @@ -62,9 +63,9 @@ In the tutorial, you will first make a workflow file that uses the [`imjohnbo/is pinned: false close-previous: false env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} ``` - {% endraw %} + 4. Customize the parameters in your workflow file: - Change the value for `on.schedule` to dictate when you want this workflow to run. In the example above, the workflow will run every Monday at 7:20 UTC. For more information about scheduled workflows, see "[Scheduled events](/actions/reference/events-that-trigger-workflows#scheduled-events)." - Change the value for `assignees` to the list of {% data variables.product.prodname_dotcom %} usernames that you want to assign to the issue. diff --git a/content/actions/learn-github-actions/security-hardening-for-github-actions.md b/content/actions/learn-github-actions/security-hardening-for-github-actions.md index c35f54956477..81cb9d1f7ea3 100644 --- a/content/actions/learn-github-actions/security-hardening-for-github-actions.md +++ b/content/actions/learn-github-actions/security-hardening-for-github-actions.md @@ -39,7 +39,8 @@ To help prevent accidental disclosure, {% data variables.product.product_name %} - Audit how secrets are used, to help ensure they’re being handled as expected. You can do this by reviewing the source code of the repository executing the workflow, and checking any actions used in the workflow. For example, check that they’re not sent to unintended hosts, or explicitly being printed to log output. - View the run logs for your workflow after testing valid/invalid inputs, and check that secrets are properly redacted, or not shown. It's not always obvious how a command or tool you’re invoking will send errors to `STDOUT` and `STDERR`, and secrets might subsequently end up in error logs. As a result, it is good practice to manually review the workflow logs after testing valid and invalid inputs. - **Use credentials that are minimally scoped** - - Make sure the credentials being used within workflows have the least privileges required, and be mindful that any user with write access to your repository has read access to all secrets configured in your repository. + - Make sure the credentials being used within workflows have the least privileges required, and be mindful that any user with write access to your repository has read access to all secrets configured in your repository. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + - Actions can use the `GITHUB_TOKEN` by accessing it from the `github.token` context. For more information, see "[Context and expression syntax for {% data variables.product.prodname_actions %}](/actions/reference/context-and-expression-syntax-for-github-actions#github-context)." You should therefore make sure that the `GITHUB_TOKEN` is granted the minimum required permissions. It's good security practice to set the default permission for the `GITHUB_TOKEN` to read access only for repository contents. The permissions can then be increased, as required, for individual jobs within the workflow file. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)." {% endif %} - **Audit and rotate registered secrets** - Periodically review the registered secrets to confirm they are still required. Remove those that are no longer needed. - Rotate secrets periodically to reduce the window of time during which a compromised secret is valid. @@ -52,7 +53,7 @@ To help prevent accidental disclosure, {% data variables.product.product_name %} The individual jobs in a workflow can interact with (and compromise) other jobs. For example, a job querying the environment variables used by a later job, writing files to a shared directory that a later job processes, or even more directly by interacting with the Docker socket and inspecting other running containers and executing commands in them. -This means that a compromise of a single action within a workflow can be very significant, as that compromised action would have access to all secrets configured on your repository, and can use the `GITHUB_TOKEN` to write to the repository. Consequently, there is significant risk in sourcing actions from third-party repositories on {% data variables.product.prodname_dotcom %}. You can help mitigate this risk by following these good practices: +This means that a compromise of a single action within a workflow can be very significant, as that compromised action would have access to all secrets configured on your repository, and may be able to use the `GITHUB_TOKEN` to write to the repository. Consequently, there is significant risk in sourcing actions from third-party repositories on {% data variables.product.prodname_dotcom %}. You can help mitigate this risk by following these good practices: * **Pin actions to a full length commit SHA** @@ -77,14 +78,14 @@ This means that a compromise of a single action within a workflow can be very si ### Considering cross-repository access -{% data variables.product.prodname_actions %} is intentionally scoped for a single repository at a time. The `GITHUB_TOKEN` grants the same level of access as a write-access user, because any write-access user can access this token by creating or modifying workflow files. Users have specific permissions for each repository, so allowing the `GITHUB_TOKEN` for one repository to grant access to another would impact the {% data variables.product.prodname_dotcom %} permission model if not implemented carefully. Similarly, caution must be taken when adding {% data variables.product.prodname_dotcom %} authentication tokens to a workflow, because this can also affect the {% data variables.product.prodname_dotcom %} permission model by inadvertently granting broad access to collaborators. +{% data variables.product.prodname_actions %} is intentionally scoped for a single repository at a time. The `GITHUB_TOKEN` grants the same level of access as a write-access user, because any write-access user can access this token by creating or modifying a workflow file{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}, elevating the permissions of the `GITHUB_TOKEN` if necessary{% endif %}. Users have specific permissions for each repository, so allowing the `GITHUB_TOKEN` for one repository to grant access to another would impact the {% data variables.product.prodname_dotcom %} permission model if not implemented carefully. Similarly, caution must be taken when adding {% data variables.product.prodname_dotcom %} authentication tokens to a workflow, because this can also affect the {% data variables.product.prodname_dotcom %} permission model by inadvertently granting broad access to collaborators. We have [a plan on the {% data variables.product.prodname_dotcom %} roadmap](https://github.com/github/roadmap/issues/74) to support a flow that allows cross-repository access within {% data variables.product.product_name %}, but this is not yet a supported feature. Currently, the only way to perform privileged cross-repository interactions is to place a {% data variables.product.prodname_dotcom %} authentication token or SSH key as a secret within the workflow. Because many authentication token types do not allow for granular access to specific resources, there is significant risk in using the wrong token type, as it can grant much broader access than intended. This list describes the recommended approaches for accessing repository data within a workflow, in descending order of preference: 1. **The `GITHUB_TOKEN`** - - This token is intentionally scoped to the single repository that invoked the workflow, and has the same level of access as a write-access user on the repository. The token is created before each job begins and expires when the job is finished. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." + - This token is intentionally scoped to the single repository that invoked the workflow, and {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}can have {% else %}has {% endif %}the same level of access as a write-access user on the repository. The token is created before each job begins and expires when the job is finished. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." - The `GITHUB_TOKEN` should be used whenever possible. 2. **Repository deploy key** - Deploy keys are one of the only credential types that grant read or write access to a single repository, and can be used to interact with another repository within a workflow. For more information, see "[Managing deploy keys](/developers/overview/managing-deploy-keys#deploy-keys)." @@ -103,7 +104,7 @@ This list describes the recommended approaches for accessing repository data wit **Self-hosted** runners on {% data variables.product.product_name %} do not have guarantees around running in ephemeral clean virtual machines, and can be persistently compromised by untrusted code in a workflow. -As a result, self-hosted runners should almost [never be used for public repositories](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories) on {% data variables.product.product_name %}, because any user can open pull requests against the repository and compromise the environment. Similarly, be cautious when using self-hosted runners on private repositories, as anyone who can fork the repository and open a PR (generally those with read-access to the repository) are able to compromise the self-hosted runner environment, including gaining access to secrets and the more privileged `GITHUB_TOKEN` which grants write-access permissions on the repository. +As a result, self-hosted runners should almost [never be used for public repositories](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories) on {% data variables.product.product_name %}, because any user can open pull requests against the repository and compromise the environment. Similarly, be cautious when using self-hosted runners on private repositories, as anyone who can fork the repository and open a pull request (generally those with read-access to the repository) are able to compromise the self-hosted runner environment, including gaining access to secrets and the `GITHUB_TOKEN` which{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}, depending on its settings, can grant {% else %} grants {% endif %}write-access permissions on the repository. When a self-hosted runner is defined at the organization or enterprise level, {% data variables.product.product_name %} can schedule workflows from multiple repositories onto the same runner. Consequently, a security compromise of these environments can result in a wide impact. To help reduce the scope of a compromise, you can create boundaries by organizing your self-hosted runners into separate groups. For more information, see "[Managing access to self-hosted runners using groups](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups)." diff --git a/content/actions/reference/authentication-in-a-workflow.md b/content/actions/reference/authentication-in-a-workflow.md index eac1b060d025..8fbd46a17f5d 100644 --- a/content/actions/reference/authentication-in-a-workflow.md +++ b/content/actions/reference/authentication-in-a-workflow.md @@ -28,63 +28,95 @@ The token is also available in the `github.token` context. For more information, ### Using the `GITHUB_TOKEN` in a workflow -To use the `GITHUB_TOKEN` secret, you must reference it in your workflow file. Using a token might include passing the token as an input to an action that requires it, or making authenticated {% data variables.product.prodname_dotcom %} API calls. +You can use the `GITHUB_TOKEN` by using the standard syntax for referencing secrets: {%raw%}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. Examples of using the `GITHUB_TOKEN` include passing the token as an input to an action, or using it to make an authenticated {% data variables.product.prodname_dotcom %} API request. + +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} +{% note %} + +**Important:** An action can access the `GITHUB_TOKEN` through the `github.token` context even if the workflow does not explicitly pass the `GITHUB_TOKEN` to the action. As a good security practice, you should always make sure that actions only have the minimum access they require by limiting the permissions granted to the `GITHUB_TOKEN`. For more information, see "[Permissions for the `GITHUB_TOKEN`](#permissions-for-the-github_token)." + +{% endnote %} +{% endif %} {% data reusables.github-actions.actions-do-not-trigger-workflows %} -#### Example passing `GITHUB_TOKEN` as an input +#### Example 1: passing the `GITHUB_TOKEN` as an input This example workflow uses the [labeler action](https://github.com/actions/labeler), which requires the `GITHUB_TOKEN` as the value for the `repo-token` input parameter: - {% raw %} - ```yaml - name: Pull request labeler - on: - - pull_request_target - jobs: - triage: - runs-on: ubuntu-latest - steps: - - uses: actions/labeler@v2 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - ``` - {% endraw %} - -#### Example calling the REST API + +```yaml +name: Pull request labeler + +on: [ pull_request_target ] + +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}permissions: + contents: read + pull-requests: write + +{% endif %} +jobs: + triage: + runs-on: ubuntu-latest + steps: + - uses: actions/labeler@v2 + with: + repo-token: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} +``` + + +#### Example 2: calling the REST API You can use the `GITHUB_TOKEN` to make authenticated API calls. This example workflow creates an issue using the {% data variables.product.prodname_dotcom %} REST API: - {% raw %} - ```yaml - name: Create issue on commit - on: - - push - jobs: - create_commit: - runs-on: ubuntu-latest - steps: - - name: Create issue using REST API - run: | - curl --request POST \ - --url https://api.github.com/repos/${{ github.repository }}/issues \ - --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \ - --header 'content-type: application/json' \ - --data '{ - "title": "Automated issue for commit: ${{ github.sha }}", - "body": "This issue was automatically created by the GitHub Action workflow **${{ github.workflow }}**. \n\n The commit hash was: _${{ github.sha }}_." - }' \ - --fail - ``` - {% endraw %} +```yaml +name: Create issue on commit + +on: [ push ] + +jobs: + create_commit: + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + issues: write {% endif %} + steps: + - name: Create issue using REST API + run: {% raw %}| + curl --request POST \ + --url https://api.github.com/repos/${{ github.repository }}/issues \ + --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \ + --header 'content-type: application/json' \ + --data '{ + "title": "Automated issue for commit: ${{ github.sha }}", + "body": "This issue was automatically created by the GitHub Action workflow **${{ github.workflow }}**. \n\n The commit hash was: _${{ github.sha }}_." + }' \ + --fail{% endraw %} +``` ### Permissions for the `GITHUB_TOKEN` For information about the API endpoints {% data variables.product.prodname_github_apps %} can access with each permission, see "[{% data variables.product.prodname_github_app %} Permissions](/rest/reference/permissions-required-for-github-apps)." -| Permission | Access type | Access by forked repos | -|------------|-------------|--------------------------| -| actions | read/write | read | +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} +The following table shows the permissions granted to the `GITHUB_TOKEN` by default. People with admin permissions to an enterprise, organization, or repository can set the default permissions to be either permissive or restricted. For information on how to set the default permissions for the `GITHUB_TOKEN` for your enterprise, organization, or repository, see "[Enforcing {% data variables.product.prodname_actions %} policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account#setting-the-permissions-of-the-github_token-for-your-enterprise)," "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/github/setting-up-and-managing-organizations-and-teams/disabling-or-limiting-github-actions-for-your-organization#setting-the-permissions-of-the-github_token-for-your-organization)," or "[Disabling or limiting {% data variables.product.prodname_actions %} for a repository](/github/administering-a-repository/disabling-or-limiting-github-actions-for-a-repository#setting-the-permissions-of-the-github_token-for-a-repository)." + +| Scope | Default access
(permissive) | Default access
(restricted) | Maximum access
by forked repos | +|---------------|-----------------------------|-----------------------------|--------------------------------| +| actions | read/write | none | read | +| checks | read/write | none | read | +| contents | read/write | read | read | +| deployments | read/write | none | read | +| issues | read/write | none | read | +| metadata | read | read | read | +| packages | read/write | none | read | +| pull requests | read/write | none | read | +| repository projects | read/write | none | read | +| security events | read/write | none | read | +| statuses | read/write | none | read | +{% else %} +| Scope | Access type | Access by forked repos | +|----------|-------------|--------------------------| +| actions | read/write | read | | checks | read/write | read | | contents | read/write | read | | deployments | read/write | read | @@ -94,9 +126,32 @@ For information about the API endpoints {% data variables.product.prodname_githu | pull requests | read/write | read | | repository projects | read/write | read | | statuses | read/write | read | +{% endif %} {% data reusables.actions.workflow-runs-dependabot-note %} +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} +#### Modifying the permissions for the `GITHUB_TOKEN` + +You can modify the permissions for the `GITHUB_TOKEN` in individual workflow files. If the default permissions for the `GITHUB_TOKEN` are restrictive, you may have to elevate the permissions to allow some actions and commands to run successfully. If the default permissions are permissive, you can edit the workflow file to remove some permissions from the `GITHUB_TOKEN`. As a good security practice, you should grant the `GITHUB_TOKEN` the least required access. + +You can see the permissions that `GITHUB_TOKEN` had for a specific job in the "Set up job" section of the workflow run log. For more information, see "[Using workflow run logs](/actions/managing-workflow-runs/using-workflow-run-logs)." + +You can use the `permissions` key in your workflow file to modify permissions for the `GITHUB_TOKEN` for an entire workflow or for individual jobs. This allows you to configure the minimum required permissions for a workflow or job. When the `permissions` key is used, all unspecified permissions are set to no access, with the exception of the `metadata` scope, which always gets read access. + +{% data reusables.github-actions.forked-write-permission %} + +The two workflow examples earlier in this article show the `permissions` key being used at the workflow level, and at the job level. In [Example 1](#example-1-passing-the-github_token-as-an-input) the two permissions are specified for the entire workflow. In [Example 2](#example-2-calling-the-rest-api) write access is granted for one scope for a single job. + +For full details of the `permissions` key, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/actions/reference/workflow-syntax-for-github-actions#permissions)." + +##### How the permissions are calculated for a workflow job + +The permissions for the `GITHUB_TOKEN` are initially set to the default setting for the enterprise, organization, or repository. If the default is set to the restricted permissions at any of these levels then this will apply to the relevant repositories. For example, if you choose the restricted default at the organization level then all repositories in that organization will use the restricted permissions as the default. The permissions are then adjusted based on any configuration within the workflow file, first at the workflow level and then at the job level. Finally, if the workflow was triggered by a pull request from a forked repository, and the **Send write tokens to workflows from pull requests** setting is not selected, the permissions are adjusted to change any write permissions to read only. + +#### Granting additional permissions +{% endif %} + If you need a token that requires permissions that aren't available in the `GITHUB_TOKEN`, you can create a personal access token and set it as a secret in your repository: 1. Use or create a token with the appropriate permissions for that repository. For more information, see "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)." diff --git a/content/actions/reference/workflow-syntax-for-github-actions.md b/content/actions/reference/workflow-syntax-for-github-actions.md index db1e7f8bdf3a..ab5a7c8b9710 100644 --- a/content/actions/reference/workflow-syntax-for-github-actions.md +++ b/content/actions/reference/workflow-syntax-for-github-actions.md @@ -187,6 +187,32 @@ For more information, see "[About comparing branches in pull requests](/articles For more information about cron syntax, see "[Events that trigger workflows](/actions/automating-your-workflow-with-github-actions/events-that-trigger-workflows#scheduled-events)." +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} +### `permissions` + +You can modify the default permissions granted to the `GITHUB_TOKEN`, adding or removing access as required, so that you only allow the minimum required access. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)." + +You can use `permissions` either as a top-level key, to apply to all jobs in the workflow, or within specific jobs. When you add the `permissions` key within a specific job, all actions and run commands within that job that use the `GITHUB_TOKEN` gain the access rights you specify. For more information, see [`jobs..permissions`](#jobsjob_idpermissions). + +{% data reusables.github-actions.github-token-available-permissions %} +{% data reusables.github-actions.forked-write-permission %} + +#### Example + +This example shows permissions being set for the `GITHUB_TOKEN` that will apply to all jobs in the workflow. All permissions are granted read access. + +```yaml +name: "My workflow" + +on: [ push ] + +permissions: read-all + +jobs: + ... +``` +{% endif %} + ### `env` A `map` of environment variables that are available to the steps of all jobs in the workflow. You can also set environment variables that are only available to the steps of a single job or to a single step. For more information, see [`jobs..env`](#jobsjob_idenv) and [`jobs..steps[*].env`](#jobsjob_idstepsenv). @@ -351,6 +377,34 @@ runs-on: [self-hosted, linux] For more information, see "[About self-hosted runners](/github/automating-your-workflow-with-github-actions/about-self-hosted-runners)" and "[Using self-hosted runners in a workflow](/github/automating-your-workflow-with-github-actions/using-self-hosted-runners-in-a-workflow)." +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} +### `jobs..permissions` + +You can modify the default permissions granted to the `GITHUB_TOKEN`, adding or removing access as required, so that you only allow the minimum required access. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)." + +By specifying the permission within a job definition, you can configure a different set of permissions for the `GITHUB_TOKEN` for each job, if required. Alternatively, you can specify the permissions for all jobs in the workflow. For information on defining permissions at the workflow level, see [`permissions`](#permissions). + +{% data reusables.github-actions.github-token-available-permissions %} +{% data reusables.github-actions.forked-write-permission %} + +#### Example + +This example shows permissions being set for the `GITHUB_TOKEN` that will only apply to the job named `stale`. Write access is granted for the `issues` and `pull-requests` scopes. All other scopes will have no access. + +```yaml +jobs: + stale: + runs-on: ubuntu-latest + + permissions: + issues: write + pull-requests: write + + steps: + - uses: actions/stale@v3 +``` +{% endif %} + {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.0" or currentVersion == "github-ae@latest" %} ### `jobs..environment` diff --git a/content/code-security/secure-coding/configuring-code-scanning.md b/content/code-security/secure-coding/configuring-code-scanning.md index 5c8ac92041ca..0078ca4b8e65 100644 --- a/content/code-security/secure-coding/configuring-code-scanning.md +++ b/content/code-security/secure-coding/configuring-code-scanning.md @@ -187,7 +187,10 @@ Alternatively, you can install Python dependencies manually on any operating sys jobs: CodeQL-Build: - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write + actions: read{% endif %} steps: - name: Checkout repository diff --git a/content/code-security/secure-coding/running-codeql-code-scanning-in-a-container.md b/content/code-security/secure-coding/running-codeql-code-scanning-in-a-container.md index 0838bf8d03a9..dfe591b6277e 100644 --- a/content/code-security/secure-coding/running-codeql-code-scanning-in-a-container.md +++ b/content/code-security/secure-coding/running-codeql-code-scanning-in-a-container.md @@ -48,7 +48,10 @@ on: jobs: analyze: name: Analyze - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write + actions: read{% endif %} strategy: fail-fast: false diff --git a/content/code-security/secure-coding/troubleshooting-the-codeql-workflow.md b/content/code-security/secure-coding/troubleshooting-the-codeql-workflow.md index 09891aae6970..bd3a877dee42 100644 --- a/content/code-security/secure-coding/troubleshooting-the-codeql-workflow.md +++ b/content/code-security/secure-coding/troubleshooting-the-codeql-workflow.md @@ -34,7 +34,10 @@ If an automatic build of code for a compiled language within your project fails, ```yaml jobs: - analyze: + analyze:{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write + actions: read{% endif %} ... strategy: fail-fast: false diff --git a/content/code-security/secure-coding/uploading-a-sarif-file-to-github.md b/content/code-security/secure-coding/uploading-a-sarif-file-to-github.md index 6706d947f666..cc5471267daa 100644 --- a/content/code-security/secure-coding/uploading-a-sarif-file-to-github.md +++ b/content/code-security/secure-coding/uploading-a-sarif-file-to-github.md @@ -68,7 +68,9 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write{% endif %} steps: # This step checks out a copy of your repository. - name: Checkout repository @@ -100,6 +102,9 @@ on: jobs: build: + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write{% endif %} steps: - uses: actions/checkout@v2 - name: Run npm install diff --git a/content/github/administering-a-repository/disabling-or-limiting-github-actions-for-a-repository.md b/content/github/administering-a-repository/disabling-or-limiting-github-actions-for-a-repository.md index 68990facf812..beb9a8185612 100644 --- a/content/github/administering-a-repository/disabling-or-limiting-github-actions-for-a-repository.md +++ b/content/github/administering-a-repository/disabling-or-limiting-github-actions-for-a-repository.md @@ -85,3 +85,22 @@ You can disable all workflows for a repository or set a policy that configures w {% data reusables.repositories.settings-sidebar-actions %} {% data reusables.github-actions.private-repository-forks-configure %} {% endif %} + +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} +### Setting the permissions of the `GITHUB_TOKEN` for your repository + +{% data reusables.github-actions.workflow-permissions-intro %} + +The default permissions can also be configured in the organization settings. If the more restricted default has been selected in the organization settings, the same option is auto-selected in your repository settings and the permissive option is disabled. + +{% data reusables.github-actions.workflow-permissions-modifying %} + +#### Configuring the default `GITHUB_TOKEN` permissions + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.sidebar-settings %} +{% data reusables.repositories.settings-sidebar-actions %} +1. Under **Workflow permissions**, choose whether you want the `GITHUB_TOKEN` to have read and write access for all scopes, or just read access for the `contents` scope. + ![Set GITHUB_TOKEN permissions for this repository](/assets/images/help/settings/actions-workflow-permissions-repository.png) +1. Click **Save** to apply the settings. +{% endif %} diff --git a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning.md b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning.md index c7fbdb2ec2bc..a9ac4683849b 100644 --- a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning.md +++ b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning.md @@ -154,6 +154,51 @@ If your workflow does not contain a matrix called `language`, then {% data varia with: languages: cpp, csharp, python ``` +{% if currentVersion == "free-pro-team@latest" %} +### Analyzing Python dependencies + +For GitHub-hosted runners that use Linux only, the {% data variables.product.prodname_codeql_workflow %} will try to auto-install Python dependencies to give more results for the CodeQL analysis. You can control this behavior by specifying the `setup-python-dependencies` parameter for the action called by the "Initialize CodeQL" step. By default, this parameter is set to `true`: + +- If the repository contains code written in Python, the "Initialize CodeQL" step installs the necessary dependencies on the GitHub-hosted runner. If the auto-install succeeds, the action also sets the environment variable `CODEQL_PYTHON` to the Python executable file that includes the dependencies. + +- If the repository doesn't have any Python dependencies, or the dependencies are specified in an unexpected way, you'll get a warning and the action will continue with the remaining jobs. The action can run successfully even when there are problems interpreting dependencies, but the results may be incomplete. + +Alternatively, you can install Python dependencies manually on any operating system. You will need to add `setup-python-dependencies` and set it to `false`, as well as set `CODEQL_PYTHON` to the Python executable that includes the dependencies, as shown in this workflow extract: + +```yaml +jobs: + CodeQL-Build: + + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write + actions: read{% endif %} + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.x' + - name: Install dependencies + run: | + python -m pip install --upgrade pip + if [ -f requirements.txt ]; + then pip install -r requirements.txt; + fi + # Set the `CODEQL-PYTHON` environment variable to the Python executable + # that includes the dependencies + echo "CODEQL_PYTHON=$(which python)" >> $GITHUB_ENV + - name: Initialize CodeQL + uses: github/codeql-action/init@v1 + with: + languages: python + # Override the default behavior so that the action doesn't attempt + # to auto-install Python dependencies + setup-python-dependencies: false +``` +{% endif %} ### Running additional queries diff --git a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/running-codeql-code-scanning-in-a-container.md b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/running-codeql-code-scanning-in-a-container.md index ad4b931e8908..281e290fdc97 100644 --- a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/running-codeql-code-scanning-in-a-container.md +++ b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/running-codeql-code-scanning-in-a-container.md @@ -44,7 +44,10 @@ on: jobs: analyze: name: Analyze - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write + actions: read{% endif %} strategy: fail-fast: false diff --git a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/troubleshooting-the-codeql-workflow.md b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/troubleshooting-the-codeql-workflow.md index af6461511be2..17e674e6be85 100644 --- a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/troubleshooting-the-codeql-workflow.md +++ b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/troubleshooting-the-codeql-workflow.md @@ -29,7 +29,10 @@ If an automatic build of code for a compiled language within your project fails, ```yaml jobs: - analyze: + analyze:{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write + actions: read{% endif %} ... strategy: fail-fast: false diff --git a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/uploading-a-sarif-file-to-github.md b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/uploading-a-sarif-file-to-github.md index 5adc5c83f04b..077bd7be60d7 100644 --- a/content/github/finding-security-vulnerabilities-and-errors-in-your-code/uploading-a-sarif-file-to-github.md +++ b/content/github/finding-security-vulnerabilities-and-errors-in-your-code/uploading-a-sarif-file-to-github.md @@ -63,7 +63,9 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write{% endif %} steps: # This step checks out a copy of your repository. - name: Checkout repository @@ -95,6 +97,9 @@ on: jobs: build: + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + security-events: write{% endif %} steps: - uses: actions/checkout@v2 - name: Run npm install diff --git a/content/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account.md index 99413f99b7a7..6c23eff62e94 100644 --- a/content/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account.md +++ b/content/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account.md @@ -49,3 +49,20 @@ You can disable all workflows for an enterprise or set a policy that configures {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.actions-tab %} {% data reusables.github-actions.private-repository-forks-configure %} + +### Setting the permissions of the `GITHUB_TOKEN` for your enterprise + +{% data reusables.github-actions.workflow-permissions-intro %} + +You can set the default permissions for the `GITHUB_TOKEN` in the settings for your enterprise, organizations, or repositories. If you choose the restricted option as the default in your enterprise settings, this prevents the more permissive setting being chosen in the organization or repository settings. + +{% data reusables.github-actions.workflow-permissions-modifying %} + +#### Configuring the default `GITHUB_TOKEN` permissions + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +1. Under **Workflow permissions**, choose whether you want the `GITHUB_TOKEN` to have read and write access for all scopes, or just read access for the `contents` scope. + ![Set GITHUB_TOKEN permissions for this enterprise](/assets/images/help/settings/actions-workflow-permissions-enterprise.png) +1. Click **Save** to apply the settings. diff --git a/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md b/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md index ca813fdfe197..aef1f3772bba 100644 --- a/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md +++ b/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md @@ -86,3 +86,23 @@ You can disable all workflows for an organization or set a policy that configure {% data reusables.organizations.settings-sidebar-actions %} {% data reusables.github-actions.private-repository-forks-configure %} {% endif %} + +{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} +### Setting the permissions of the `GITHUB_TOKEN` for your organization + +{% data reusables.github-actions.workflow-permissions-intro %} + +You can set the default permissions for the `GITHUB_TOKEN` in the settings for your organization or your repositories. If you choose the restricted option as the default in your organization settings, the same option is auto-selected in the settings for repositories within your organization, and the permissive option is disabled. If your organization belongs to a {% data variables.product.prodname_enterprise %} account and the more restricted default has been selected in the enterprise settings, you won't be able to choose the more permissive default in your organization settings. + +{% data reusables.github-actions.workflow-permissions-modifying %} + +#### Configuring the default `GITHUB_TOKEN` permissions + +{% data reusables.profile.access_profile %} +{% data reusables.profile.access_org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions %} +1. Under **Workflow permissions**, choose whether you want the `GITHUB_TOKEN` to have read and write access for all scopes, or just read access for the `contents` scope. + ![Set GITHUB_TOKEN permissions for this organization](/assets/images/help/settings/actions-workflow-permissions-organization.png) +1. Click **Save** to apply the settings. +{% endif %} diff --git a/content/packages/guides/using-github-packages-with-github-actions.md b/content/packages/guides/using-github-packages-with-github-actions.md index 3b32b1103bda..1a608d613359 100644 --- a/content/packages/guides/using-github-packages-with-github-actions.md +++ b/content/packages/guides/using-github-packages-with-github-actions.md @@ -35,7 +35,7 @@ For an authentication example, see "[Authenticating with the {% data variables.p #### Authenticating to package registries on {% data variables.product.prodname_dotcom %} -{% if currentVersion == "free-pro-team@latest" %}If you want your workflow to authenticate to {% data variables.product.prodname_registry %} to access a package registry other than the {% data variables.product.prodname_container_registry %} on {% data variables.product.product_name %}, then{% else %}To authenticate to package registries on {% data variables.product.product_name %},{% endif %} we recommend using the `GITHUB_TOKEN` that {% data variables.product.product_name %} automatically creates for your repository when you enable {% data variables.product.prodname_actions %} instead of a personal access token for authentication. The `GITHUB_TOKEN` has `read:packages` and `write:packages` scopes to the current repository. For forks, the token also has the `read:packages` scope for the parent repository. +{% if currentVersion == "free-pro-team@latest" %}If you want your workflow to authenticate to {% data variables.product.prodname_registry %} to access a package registry other than the {% data variables.product.prodname_container_registry %} on {% data variables.product.product_name %}, then{% else %}To authenticate to package registries on {% data variables.product.product_name %},{% endif %} we recommend using the `GITHUB_TOKEN` that {% data variables.product.product_name %} automatically creates for your repository when you enable {% data variables.product.prodname_actions %} instead of a personal access token for authentication. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}You should set the permissions for this access token in the workflow file to grant read access for the `contents` scope and write access for the `packages` scope. {% else %}It has read and write permissions for packages in the repository where the workflow runs. {% endif %}For forks, the `GITHUB_TOKEN` is granted read access for the parent repository. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." You can reference the `GITHUB_TOKEN` in your workflow file using the {% raw %}`{{secrets.GITHUB_TOKEN}}`{% endraw %} context. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/automating-your-workflow-with-github-actions/authenticating-with-the-github_token)." @@ -87,7 +87,6 @@ You can use {% data variables.product.prodname_actions %} to automatically publi The following example demonstrates how you can use {% data variables.product.prodname_actions %} to build and test your app, and then automatically create a Docker image and publish it to {% data variables.product.prodname_registry %}: - Create a new workflow file in your repository (such as `.github/workflows/deploy-image.yml`), and add the following YAML: - {% raw %} ```yaml{:copy} name: Create and publish a package on: @@ -114,12 +113,12 @@ The following example demonstrates how you can use {% data variables.product.pro matrix: os: [ubuntu-latest] node-version: [12.x, 14.x] - steps: + steps: {% raw %} - uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: - node-version: ${{ matrix.node-version }} + node-version: ${{ matrix.node-version }}{% endraw %} - uses: actions/download-artifact@main with: name: webpack artifacts @@ -132,22 +131,24 @@ The following example demonstrates how you can use {% data variables.product.pro CI: true build-and-push-image: - runs-on: ubuntu-latest + runs-on: ubuntu-latest {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + contents: read + packages: write {% endif %} needs: run-npm-test steps: - name: Checkout uses: actions/checkout@v2 - name: Build container image uses: docker/build-push-action@v1 - with: + with: {% raw %} username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} registry: {% endraw %}{% if currentVersion == "github-ae@latest" %}docker.YOUR-HOSTNAME.com{% else %}docker.pkg.github.com{% endif %}{% raw %} - repository: ${{ github.repository }}/octo-image + repository: ${{ github.repository }}/octo-image {% endraw %} tag_with_sha: true - tag_with_ref: true + tag_with_ref: true ``` - {% endraw %} The relevant settings are explained in the following table: @@ -225,7 +226,22 @@ on: This job uses npm test to test the code. The needs: run-npm-build command makes this job dependent on the run-npm-build job. - + {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + + + +{% raw %} + ```yaml + permissions: + contents: read + packages: write + ``` +{% endraw %} + + + Sets the permissions granted to the GITHUB_TOKEN for the actions in this job. + + {% endif %} @@ -351,9 +367,10 @@ tag_with_ref: true You can install packages as part of your CI flow using {% data variables.product.prodname_actions %}. For example, you could configure a workflow so that anytime a developer pushes code to a pull request, the workflow resolves dependencies by downloading and installing packages hosted by {% data variables.product.prodname_registry %}. Then, the workflow can run CI tests that require the dependencies. -Installing packages hosted by the {% data variables.product.prodname_registry %} through {% data variables.product.prodname_actions %} requires minimal configuration or additional authentication when you use the `GITHUB_TOKEN`.{% if currentVersion == "free-pro-team@latest" %} Data transfer is also free when an action installs a package. For more information, see "[About billing for {% data variables.product.prodname_registry %}](/github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-packages)."{% endif %} +Installing packages hosted by {% data variables.product.prodname_registry %} through {% data variables.product.prodname_actions %} requires minimal configuration or additional authentication when you use the `GITHUB_TOKEN`.{% if currentVersion == "free-pro-team@latest" %} Data transfer is also free when an action installs a package. For more information, see "[About billing for {% data variables.product.prodname_registry %}](/github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-packages)."{% endif %} {% if currentVersion == "free-pro-team@latest" %} +The `GITHUB_TOKEN` cannot install packages from any private repository besides the repository where the action runs. You cannot currently use the `GITHUB_TOKEN` to authenticate to {% data variables.product.prodname_github_container_registry %}. {% endif %} {% data reusables.package_registry.actions-configuration %} @@ -381,7 +398,6 @@ Using the `GITHUB_TOKEN` instead of a PAT, which includes the `repo` scope, incr For example, this workflow publishes a Docker container using {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. -{% raw %} ```yaml{:copy} name: Demo Push @@ -406,9 +422,12 @@ jobs: # Push image to GitHub Packages. # See also https://docs.docker.com/docker-hub/builds/ push: - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + packages: write + contents: read{% endif %} - steps: + {% raw %}steps: - uses: actions/checkout@v2 - name: Build image @@ -433,8 +452,7 @@ jobs: echo IMAGE_ID=$IMAGE_ID echo VERSION=$VERSION docker tag $IMAGE_NAME $IMAGE_ID:$VERSION - docker push $IMAGE_ID:$VERSION + docker push $IMAGE_ID:$VERSION{% endraw %} ``` -{% endraw %} {% endif %} diff --git a/content/packages/quickstart.md b/content/packages/quickstart.md index cb593588cf3c..9bde44268b9e 100644 --- a/content/packages/quickstart.md +++ b/content/packages/quickstart.md @@ -71,7 +71,10 @@ In this guide, you'll create a {% data variables.product.prodname_actions %} wor publish-gpr: needs: build - runs-on: ubuntu-latest + runs-on: ubuntu-latest{% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %} + permissions: + packages: write + contents: read{% endif %} steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v1 diff --git a/data/reusables/github-actions/forked-write-permission.md b/data/reusables/github-actions/forked-write-permission.md new file mode 100644 index 000000000000..3fe98042464c --- /dev/null +++ b/data/reusables/github-actions/forked-write-permission.md @@ -0,0 +1 @@ +You can use the `permissions` key to add and remove read permissions for forked repositories, but typically you can't grant write access. The exception to this behavior is where an admin user has selected the **Send write tokens to workflows from pull requests** option in the {% data variables.product.prodname_actions %} settings. For more information, see "[Disabling or limiting {% data variables.product.prodname_actions %} for a repository](/github/administering-a-repository/disabling-or-limiting-github-actions-for-a-repository#enabling-workflows-for-private-repository-forks)." \ No newline at end of file diff --git a/data/reusables/github-actions/github-token-available-permissions.md b/data/reusables/github-actions/github-token-available-permissions.md new file mode 100644 index 000000000000..7e331c7601df --- /dev/null +++ b/data/reusables/github-actions/github-token-available-permissions.md @@ -0,0 +1,23 @@ +Available scopes and access values: + +```yaml +permissions: + actions: read|write|none + checks: read|write|none + contents: read|write|none + deployments: read|write|none + issues: read|write|none + packages: read|write|none + pull-requests: read|write|none + repository-projects: read|write|none + security-events: read|write|none + statuses: read|write|none +``` + +If you specify the access for any of these scopes, all of those that are not specified are set to `none`. + +You can use the following syntax to define read or write access for all of the available scopes: + +```yaml +permissions: read-all|write-all +``` \ No newline at end of file diff --git a/data/reusables/github-actions/github-token-permissions.md b/data/reusables/github-actions/github-token-permissions.md new file mode 100644 index 000000000000..88604df1dcaa --- /dev/null +++ b/data/reusables/github-actions/github-token-permissions.md @@ -0,0 +1 @@ +The `GITHUB_TOKEN` secret is set to an access token for the repository each time a job in a workflow begins. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}You should set the permissions for this access token in the workflow file to grant read access for the `contents` scope and write access for the `packages` scope. {% else %}It has read and write permissions for packages in the repository where the workflow runs. {% endif %}For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." \ No newline at end of file diff --git a/data/reusables/github-actions/publish-to-packages-workflow-step.md b/data/reusables/github-actions/publish-to-packages-workflow-step.md index 743020588dc6..c5a1bf2f4528 100644 --- a/data/reusables/github-actions/publish-to-packages-workflow-step.md +++ b/data/reusables/github-actions/publish-to-packages-workflow-step.md @@ -1 +1 @@ -Runs the `mvn --batch-mode deploy` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the contents of the `GITHUB_TOKEN` secret. +Runs the `mvn --batch-mode deploy` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the contents of the `GITHUB_TOKEN` secret. {% if currentVersion == "free-pro-team@latest" or currentVersion ver_gt "enterprise-server@3.1" or currentVersion == "github-ae@next" %}The `permissions` key specifies the access granted to the `GITHUB_TOKEN`.{% endif %} diff --git a/data/reusables/github-actions/workflow-permissions-intro.md b/data/reusables/github-actions/workflow-permissions-intro.md new file mode 100644 index 000000000000..88382e0d54f0 --- /dev/null +++ b/data/reusables/github-actions/workflow-permissions-intro.md @@ -0,0 +1 @@ +You can set the default permissions granted to the `GITHUB_TOKEN`. For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)." You can choose between a restricted set of permissions as the default or a permissive setting. diff --git a/data/reusables/github-actions/workflow-permissions-modifying.md b/data/reusables/github-actions/workflow-permissions-modifying.md new file mode 100644 index 000000000000..14ee1f9279e8 --- /dev/null +++ b/data/reusables/github-actions/workflow-permissions-modifying.md @@ -0,0 +1 @@ +Anyone with write access to a repository can modify the permissions granted to the `GITHUB_TOKEN`, adding or removing access as required, by editing the `permissions` key in the workflow file. For more information, see [`permissions`](/actions/reference/workflow-syntax-for-github-actions#permissions). \ No newline at end of file From 0c383063fb1bfe1804bf14105346e911c2ca9725 Mon Sep 17 00:00:00 2001 From: rachmari Date: Tue, 20 Apr 2021 16:38:33 +0000 Subject: [PATCH 4/7] Action ran graphql script"update-files" --- data/graphql/ghae/schema.docs-ghae.graphql | 40 +++++++++++++ data/graphql/schema.docs.graphql | 40 +++++++++++++ lib/graphql/static/changelog.json | 15 +++++ .../static/prerendered-input-objects.json | 14 ++++- lib/graphql/static/schema-dotcom.json | 60 +++++++++++++++++++ lib/graphql/static/schema-ghae.json | 60 +++++++++++++++++++ 6 files changed, 227 insertions(+), 2 deletions(-) diff --git a/data/graphql/ghae/schema.docs-ghae.graphql b/data/graphql/ghae/schema.docs-ghae.graphql index 0a3dcff91bf5..456cf7ecf277 100644 --- a/data/graphql/ghae/schema.docs-ghae.graphql +++ b/data/graphql/ghae/schema.docs-ghae.graphql @@ -4723,6 +4723,36 @@ type ConvertProjectCardNoteToIssuePayload { projectCard: ProjectCard } +""" +Autogenerated input type of ConvertPullRequestToDraft +""" +input ConvertPullRequestToDraftInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the pull request to convert to draft + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of ConvertPullRequestToDraft +""" +type ConvertPullRequestToDraftPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The pull request that is now a draft. + """ + pullRequest: PullRequest +} + """ Represents a 'convert_to_draft' event on a given pull request. """ @@ -14566,6 +14596,16 @@ type Mutation { input: ConvertProjectCardNoteToIssueInput! ): ConvertProjectCardNoteToIssuePayload + """ + Converts a pull request to draft + """ + convertPullRequestToDraft( + """ + Parameters for ConvertPullRequestToDraft + """ + input: ConvertPullRequestToDraftInput! + ): ConvertPullRequestToDraftPayload + """ Create a new branch protection rule """ diff --git a/data/graphql/schema.docs.graphql b/data/graphql/schema.docs.graphql index e430672198c6..fb89df289400 100644 --- a/data/graphql/schema.docs.graphql +++ b/data/graphql/schema.docs.graphql @@ -4813,6 +4813,36 @@ type ConvertProjectCardNoteToIssuePayload { projectCard: ProjectCard } +""" +Autogenerated input type of ConvertPullRequestToDraft +""" +input ConvertPullRequestToDraftInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the pull request to convert to draft + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of ConvertPullRequestToDraft +""" +type ConvertPullRequestToDraftPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The pull request that is now a draft. + """ + pullRequest: PullRequest +} + """ Represents a 'convert_to_draft' event on a given pull request. """ @@ -15591,6 +15621,16 @@ type Mutation { input: ConvertProjectCardNoteToIssueInput! ): ConvertProjectCardNoteToIssuePayload + """ + Converts a pull request to draft + """ + convertPullRequestToDraft( + """ + Parameters for ConvertPullRequestToDraft + """ + input: ConvertPullRequestToDraftInput! + ): ConvertPullRequestToDraftPayload + """ Create a new branch protection rule """ diff --git a/lib/graphql/static/changelog.json b/lib/graphql/static/changelog.json index 4ca9bb231103..fafffa8b534e 100644 --- a/lib/graphql/static/changelog.json +++ b/lib/graphql/static/changelog.json @@ -1,4 +1,19 @@ [ + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "Type `ConvertPullRequestToDraftInput` was added", + "Type `ConvertPullRequestToDraftPayload` was added", + "Field `convertPullRequestToDraft` was added to object type `Mutation`" + ] + } + ], + "previewChanges": [], + "upcomingChanges": [], + "date": "2021-04-20" + }, { "schemaChanges": [ { diff --git a/lib/graphql/static/prerendered-input-objects.json b/lib/graphql/static/prerendered-input-objects.json index 5716230ce25d..422f2ff2a089 100644 --- a/lib/graphql/static/prerendered-input-objects.json +++ b/lib/graphql/static/prerendered-input-objects.json @@ -1,6 +1,6 @@ { "dotcom": { - "html": "

\n\n
\n
\n

\n AcceptTopicSuggestionInput\n

\n

Autogenerated input type of AcceptTopicSuggestion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the suggested topic.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddAssigneesToAssignableInput\n

\n

Autogenerated input type of AddAssigneesToAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to add assignees to.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to add as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddCommentInput\n

\n

Autogenerated input type of AddComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddEnterpriseSupportEntitlementInput\n

\n

Autogenerated input type of AddEnterpriseSupportEntitlement.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the Enterprise which the admin belongs to.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of a member who will receive the support entitlement.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddLabelsToLabelableInput\n

\n

Autogenerated input type of AddLabelsToLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of the labels to add.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to add labels to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectCardInput\n

\n

Autogenerated input type of AddProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentId (ID)

The content of the card. Must be a member of the ProjectCardItem union.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note on the card.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The Node ID of the ProjectColumn.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectColumnInput\n

\n

Autogenerated input type of AddProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Node ID of the project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewCommentInput\n

\n

Autogenerated input type of AddPullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The SHA of the commit to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

inReplyTo (ID)

The comment id to reply to.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String)

The relative path of the file to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int)

The line index in the diff to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewInput\n

\n

Autogenerated input type of AddPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The contents of the review body comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

comments ([DraftPullRequestReviewComment])

The review line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The commit OID the review pertains to.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent)

The event to perform on the pull request review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

threads ([DraftPullRequestReviewThread])

The review line comment threads.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewThreadInput\n

\n

Autogenerated input type of AddPullRequestReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the thread's first comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddReactionInput\n

\n

Autogenerated input type of AddReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji to react with.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddStarInput\n

\n

Autogenerated input type of AddStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to star.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddVerifiableDomainInput\n

\n

Autogenerated input type of AddVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

domain (URI!)

The URL of the domain.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner to add the domain to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ApproveVerifiableDomainInput\n

\n

Autogenerated input type of ApproveVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to approve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ArchiveRepositoryInput\n

\n

Autogenerated input type of ArchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to mark as archived.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AuditLogOrder\n

\n

Ordering options for Audit Log connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (AuditLogOrderField)

The field to order Audit Logs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CancelEnterpriseAdminInvitationInput\n

\n

Autogenerated input type of CancelEnterpriseAdminInvitation.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

invitationId (ID!)

The Node ID of the pending enterprise administrator invitation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ChangeUserStatusInput\n

\n

Autogenerated input type of ChangeUserStatus.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

emoji (String)

The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., 😀.

\n\n\n\n\n\n\n\n\n\n\n\n

expiresAt (DateTime)

If set, the user status will not be shown after this date.

\n\n\n\n\n\n\n\n\n\n\n\n

limitedAvailability (Boolean)

Whether this status should indicate you are not fully available on GitHub, e.g., you are away.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String)

A short description of your current status.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID)

The ID of the organization whose members will be allowed to see the status. If\nomitted, the status will be publicly visible.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationData\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotationLevel (CheckAnnotationLevel!)

Represents an annotation's information level.

\n\n\n\n\n\n\n\n\n\n\n\n

location (CheckAnnotationRange!)

The location of the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

A short description of the feedback for these lines of code.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to add an annotation to.

\n\n\n\n\n\n\n\n\n\n\n\n

rawDetails (String)

Details about this annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title that represents the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationRange\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

endColumn (Int)

The ending column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

endLine (Int!)

The ending line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startColumn (Int)

The starting column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int!)

The starting line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunAction\n

\n

Possible further actions the integrator can perform.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

description (String!)

A short explanation of what this action would do.

\n\n\n\n\n\n\n\n\n\n\n\n

identifier (String!)

A reference for the action on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

label (String!)

The text to be displayed on a button in the web UI.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunFilter\n

\n

The filters that are available when fetching check runs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check runs created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check runs by this name.

\n\n\n\n\n\n\n\n\n\n\n\n

checkType (CheckRunType)

Filters the check runs by this type.

\n\n\n\n\n\n\n\n\n\n\n\n

status (CheckStatusState)

Filters the check runs by this status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutput\n

\n

Descriptive details about the check run.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotations ([CheckAnnotationData!])

The annotations that are made as part of the check run.

\n\n\n\n\n\n\n\n\n\n\n\n

images ([CheckRunOutputImage!])

Images attached to the check run output displayed in the GitHub pull request UI.

\n\n\n\n\n\n\n\n\n\n\n\n

summary (String!)

The summary of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

text (String)

The details of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

A title to provide for this check run.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutputImage\n

\n

Images attached to the check run output displayed in the GitHub pull request UI.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

alt (String!)

The alternative text for the image.

\n\n\n\n\n\n\n\n\n\n\n\n

caption (String)

A short image description.

\n\n\n\n\n\n\n\n\n\n\n\n

imageUrl (URI!)

The full URL of the image.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteAutoTriggerPreference\n

\n

The auto-trigger preferences that are available for check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (ID!)

The node ID of the application that owns the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

setting (Boolean!)

Set to true to enable automatic creation of CheckSuite events upon pushes to the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteFilter\n

\n

The filters that are available when fetching check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check suites created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check suites by this name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClearLabelsFromLabelableInput\n

\n

Autogenerated input type of ClearLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to clear the labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneProjectInput\n

\n

Autogenerated input type of CloneProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

includeWorkflows (Boolean!)

Whether or not to clone the source project's workflows.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

The visibility of the project, defaults to false (private).

\n\n\n\n\n\n\n\n\n\n\n\n

sourceId (ID!)

The source project to clone.

\n\n\n\n\n\n\n\n\n\n\n\n

targetOwnerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneTemplateRepositoryInput\n

\n

Autogenerated input type of CloneTemplateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

includeAllBranches (Boolean)

Whether to copy all branches from the template to the new repository. Defaults\nto copying only the default branch of the template.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the template repository.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloseIssueInput\n

\n

Autogenerated input type of CloseIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClosePullRequestInput\n

\n

Autogenerated input type of ClosePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitAuthor\n

\n

Specifies an author for filtering Git commits.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

emails ([String!])

Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID)

ID of a User to filter by. If non-null, only commits authored by this user\nwill be returned. This field takes precedence over emails.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitContributionOrder\n

\n

Ordering options for commit contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (CommitContributionOrderField!)

The field by which to order commit contributions.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ContributionOrder\n

\n

Ordering options for contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ConvertProjectCardNoteToIssueInput\n

\n

Autogenerated input type of ConvertProjectCardNoteToIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The body of the newly created issue.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to convert.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to create the issue in.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the newly created issue. Defaults to the card's note text.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateBranchProtectionRuleInput\n

\n

Autogenerated input type of CreateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String!)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The global relay id of the repository in which a new branch protection rule should be created in.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckRunInput\n

\n

Autogenerated input type of CreateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckSuiteInput\n

\n

Autogenerated input type of CreateCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateContentAttachmentInput\n

\n

Autogenerated input type of CreateContentAttachment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The body of the content attachment, which may contain markdown.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentReferenceId (ID!)

The node ID of the content_reference.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the content attachment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentInput\n

\n

Autogenerated input type of CreateDeployment.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoMerge (Boolean)

Attempt to automatically merge the default branch into the requested ref, defaults to true.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

Short description of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

Name for the target deployment environment.

\n\n\n\n\n\n\n\n\n\n\n\n

payload (String)

JSON payload with extra information about the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The node ID of the ref to be deployed.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredContexts ([String!])

The status contexts to verify against commit status checks. To bypass required\ncontexts, pass an empty array. Defaults to all unique contexts.

\n\n\n\n\n\n\n\n\n\n\n\n

task (String)

Specifies a task to execute.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentStatusInput\n

\n

Autogenerated input type of CreateDeploymentStatus.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentStatusInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoInactive (Boolean)

Adds a new inactive status to all non-transient, non-production environment\ndeployments with the same repository and environment name as the created\nstatus's deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

deploymentId (ID!)

The node ID of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the status. Maximum length of 140 characters.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

If provided, updates the environment of the deploy. Otherwise, does not modify the environment.

\n\n\n\n\n\n\n\n\n\n\n\n

environmentUrl (String)

Sets the URL for accessing your environment.

\n\n\n\n\n\n\n\n\n\n\n\n

logUrl (String)

The log URL to associate with this status. This URL should contain\noutput to keep the user updated while the task is running or serve as\nhistorical information for what happened in the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

state (DeploymentStatusState!)

The state of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateEnterpriseOrganizationInput\n

\n

Autogenerated input type of CreateEnterpriseOrganization.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

adminLogins ([String!]!)

The logins for the administrators of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

billingEmail (String!)

The email used for sending billing receipts.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise owning the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

profileName (String!)

The profile name of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIpAllowListEntryInput\n

\n

Autogenerated input type of CreateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for which to create the new IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIssueInput\n

\n

Autogenerated input type of CreateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

The Node ID for the user assignee for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueTemplate (String)

The name of an issue template in the repository, assigns labels and assignees from the template to the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateLabelInput\n

\n

Autogenerated input type of CreateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String!)

A 6 character hex code, without the leading #, identifying the color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateProjectInput\n

\n

Autogenerated input type of CreateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryIds ([ID!])

A list of repository IDs to create as linked repositories for the project.

\n\n\n\n\n\n\n\n\n\n\n\n

template (ProjectTemplate)

The name of the GitHub-provided template.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreatePullRequestInput\n

\n

Autogenerated input type of CreatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

baseRefName (String!)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository. You cannot update the base branch on a pull request to point\nto another repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

draft (Boolean)

Indicates whether this pull request should be a draft.

\n\n\n\n\n\n\n\n\n\n\n\n

headRefName (String!)

The name of the branch where your changes are implemented. For cross-repository pull requests\nin the same network, namespace head_ref_name with a user like this: username:branch.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRefInput\n

\n

Autogenerated input type of CreateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The fully qualified name of the new Ref (ie: refs/heads/my_new_branch).

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the new Ref shall target. Must point to a commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository to create the Ref in.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRepositoryInput\n

\n

Autogenerated input type of CreateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID)

When an organization is specified as the owner, this ID identifies the team\nthat should be granted access to the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionCommentInput\n

\n

Autogenerated input type of CreateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

discussionId (ID!)

The ID of the discussion to which the comment belongs.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionInput\n

\n

Autogenerated input type of CreateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

private (Boolean)

If true, restricts the visibility of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID!)

The ID of the team to which the discussion belongs.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeclineTopicSuggestionInput\n

\n

Autogenerated input type of DeclineTopicSuggestion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the suggested topic.

\n\n\n\n\n\n\n\n\n\n\n\n

reason (TopicSuggestionDeclineReason!)

The reason why the suggested topic is declined.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteBranchProtectionRuleInput\n

\n

Autogenerated input type of DeleteBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteDeploymentInput\n

\n

Autogenerated input type of DeleteDeployment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the deployment to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIpAllowListEntryInput\n

\n

Autogenerated input type of DeleteIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueCommentInput\n

\n

Autogenerated input type of DeleteIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueInput\n

\n

Autogenerated input type of DeleteIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteLabelInput\n

\n

Autogenerated input type of DeleteLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

DeleteLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePackageVersionInput\n

\n

Autogenerated input type of DeletePackageVersion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

packageVersionId (ID!)

The ID of the package version to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectCardInput\n

\n

Autogenerated input type of DeleteProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

cardId (ID!)

The id of the card to delete.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectColumnInput\n

\n

Autogenerated input type of DeleteProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectInput\n

\n

Autogenerated input type of DeleteProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewCommentInput\n

\n

Autogenerated input type of DeletePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewInput\n

\n

Autogenerated input type of DeletePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteRefInput\n

\n

Autogenerated input type of DeleteRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionCommentInput\n

\n

Autogenerated input type of DeleteTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionInput\n

\n

Autogenerated input type of DeleteTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The discussion ID to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteVerifiableDomainInput\n

\n

Autogenerated input type of DeleteVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeploymentOrder\n

\n

Ordering options for deployment connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (DeploymentOrderField!)

The field to order deployments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DisablePullRequestAutoMergeInput\n

\n

Autogenerated input type of DisablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to disable auto merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DismissPullRequestReviewInput\n

\n

Autogenerated input type of DismissPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

The contents of the pull request review dismissal message.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewComment\n

\n

Specifies a review comment to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

Position in the file to leave a comment on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewThread\n

\n

Specifies a review comment thread to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnablePullRequestAutoMergeInput\n

\n

Autogenerated input type of EnablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to enable auto-merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseAdministratorInvitationOrder\n

\n

Ordering options for enterprise administrator invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseAdministratorInvitationOrderField!)

The field to order enterprise administrator invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseMemberOrder\n

\n

Ordering options for enterprise member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseMemberOrderField!)

The field to order enterprise members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerInstallationOrder\n

\n

Ordering options for Enterprise Server installation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerInstallationOrderField!)

The field to order Enterprise Server installations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountEmailOrder\n

\n

Ordering options for Enterprise Server user account email connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountEmailOrderField!)

The field to order emails by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountOrder\n

\n

Ordering options for Enterprise Server user account connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountOrderField!)

The field to order user accounts by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountsUploadOrder\n

\n

Ordering options for Enterprise Server user accounts upload connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountsUploadOrderField!)

The field to order user accounts uploads by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n FollowUserInput\n

\n

Autogenerated input type of FollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to follow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n GistOrder\n

\n

Ordering options for gist connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (GistOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ImportProjectInput\n

\n

Autogenerated input type of ImportProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnImports ([ProjectColumnImport!]!)

A list of columns containing issues and pull requests.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerName (String!)

The name of the Organization or User to create the Project under.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the Project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n InviteEnterpriseAdminInput\n

\n

Autogenerated input type of InviteEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

email (String)

The email of the person to invite as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise to which you want to invite an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

invitee (String)

The login of a user to invite as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

role (EnterpriseAdministratorRole)

The role of the administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IpAllowListEntryOrder\n

\n

Ordering options for IP allow list entry connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IpAllowListEntryOrderField!)

The field to order IP allow list entries by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueCommentOrder\n

\n

Ways in which lists of issue comments can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issue comments by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueCommentOrderField!)

The field in which to order issue comments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueFilters\n

\n

Ways in which to filter lists of issues.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignee (String)

List issues assigned to given name. Pass in null for issues with no assigned\nuser, and * for issues assigned to any user.

\n\n\n\n\n\n\n\n\n\n\n\n

createdBy (String)

List issues created by given name.

\n\n\n\n\n\n\n\n\n\n\n\n

labels ([String!])

List issues where the list of label names exist on the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

mentioned (String)

List issues where the given name is mentioned in the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestone (String)

List issues by given milestone argument. If an string representation of an\ninteger is passed, it should refer to a milestone by its number field. Pass in\nnull for issues with no milestone, and * for issues that are assigned to any milestone.

\n\n\n\n\n\n\n\n\n\n\n\n

since (DateTime)

List issues that have been updated at or after the given date.

\n\n\n\n\n\n\n\n\n\n\n\n

states ([IssueState!])

List issues filtered by the list of states given.

\n\n\n\n\n\n\n\n\n\n\n\n

viewerSubscribed (Boolean)

List issues subscribed to by viewer.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issues by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueOrderField!)

The field in which to order issues by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LabelOrder\n

\n

Ways in which lists of labels can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order labels by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LabelOrderField!)

The field in which to order labels by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LanguageOrder\n

\n

Ordering options for language connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LanguageOrderField!)

The field to order languages by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LinkRepositoryToProjectInput\n

\n

Autogenerated input type of LinkRepositoryToProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project to link to a Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository to link to a Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LockLockableInput\n

\n

Autogenerated input type of LockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockReason (LockReason)

A reason for why the item will be locked.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be locked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkFileAsViewedInput\n

\n

Autogenerated input type of MarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as viewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkPullRequestReadyForReviewInput\n

\n

Autogenerated input type of MarkPullRequestReadyForReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be marked as ready for review.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergeBranchInput\n

\n

Autogenerated input type of MergeBranch.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this commit.

\n\n\n\n\n\n\n\n\n\n\n\n

base (String!)

The name of the base branch that the provided head will be merged into.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitMessage (String)

Message to use for the merge commit. If omitted, a default will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

head (String!)

The head to merge into the base branch. This can be a branch name or a commit GitObjectID.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository containing the base branch that will be modified.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergePullRequestInput\n

\n

Autogenerated input type of MergePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

expectedHeadOid (GitObjectID)

OID that the pull request head ref must match to allow merge; if omitted, no check is performed.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be merged.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MilestoneOrder\n

\n

Ordering options for milestone connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (MilestoneOrderField!)

The field to order milestones by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MinimizeCommentInput\n

\n

Autogenerated input type of MinimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

classifier (ReportedContentClassifiers!)

The classification of comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectCardInput\n

\n

Autogenerated input type of MoveProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterCardId (ID)

Place the new card after the card with this id. Pass null to place it at the top.

\n\n\n\n\n\n\n\n\n\n\n\n

cardId (ID!)

The id of the card to move.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move it into.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectColumnInput\n

\n

Autogenerated input type of MoveProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterColumnId (ID)

Place the new column after the column with this id. Pass null to place it at the front.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n OrganizationOrder\n

\n

Ordering options for organization connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (OrganizationOrderField!)

The field to order organizations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PackageFileOrder\n

\n

Ways in which lists of package files can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The direction in which to order package files by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PackageFileOrderField)

The field in which to order package files by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PackageOrder\n

\n

Ways in which lists of packages can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The direction in which to order packages by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PackageOrderField)

The field in which to order packages by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PackageVersionOrder\n

\n

Ways in which lists of package versions can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The direction in which to order package versions by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PackageVersionOrderField)

The field in which to order package versions by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PinIssueInput\n

\n

Autogenerated input type of PinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be pinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectCardImport\n

\n

An issue or PR and its owning repository to be used in a project card.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

number (Int!)

The issue or pull request number.

\n\n\n\n\n\n\n\n\n\n\n\n

repository (String!)

Repository name with owner (owner/repository).

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectColumnImport\n

\n

A project column and a list of its issues and PRs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

columnName (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

issues ([ProjectCardImport!])

A list of issues and pull requests in the column.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

The position of the column, starting from 0.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectOrder\n

\n

Ways in which lists of projects can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order projects by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ProjectOrderField!)

The field in which to order projects by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PullRequestOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order pull requests by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PullRequestOrderField!)

The field in which to order pull requests by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReactionOrder\n

\n

Ways in which lists of reactions can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order reactions by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReactionOrderField!)

The field in which to order reactions by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefOrder\n

\n

Ways in which lists of git refs can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order refs by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RefOrderField!)

The field in which to order refs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefUpdate\n

\n

A ref update.

\n
\n\n
\n \n
\n

Preview notice

\n

RefUpdate is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterOid (GitObjectID!)

The value this ref should be updated to.

\n\n\n\n\n\n\n\n\n\n\n\n

beforeOid (GitObjectID)

The value this ref needs to point to before the update.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Force a non fast-forward update.

\n\n\n\n\n\n\n\n\n\n\n\n

name (GitRefname!)

The fully qualified name of the ref to be update. For example refs/heads/branch-name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RegenerateEnterpriseIdentityProviderRecoveryCodesInput\n

\n

Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set an identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RegenerateVerifiableDomainTokenInput\n

\n

Autogenerated input type of RegenerateVerifiableDomainToken.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to regenerate the verification token of.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReleaseOrder\n

\n

Ways in which lists of releases can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order releases by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReleaseOrderField!)

The field in which to order releases by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveAssigneesFromAssignableInput\n

\n

Autogenerated input type of RemoveAssigneesFromAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to remove assignees from.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to remove as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseAdminInput\n

\n

Autogenerated input type of RemoveEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID from which to remove the administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the user to remove as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseIdentityProviderInput\n

\n

Autogenerated input type of RemoveEnterpriseIdentityProvider.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise from which to remove the identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseOrganizationInput\n

\n

Autogenerated input type of RemoveEnterpriseOrganization.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise from which the organization should be removed.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to remove from the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseSupportEntitlementInput\n

\n

Autogenerated input type of RemoveEnterpriseSupportEntitlement.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the Enterprise which the admin belongs to.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of a member who will lose the support entitlement.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveLabelsFromLabelableInput\n

\n

Autogenerated input type of RemoveLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of labels to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the Labelable to remove labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveOutsideCollaboratorInput\n

\n

Autogenerated input type of RemoveOutsideCollaborator.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to remove the outside collaborator from.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

The ID of the outside collaborator to remove.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveReactionInput\n

\n

Autogenerated input type of RemoveReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji reaction to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveStarInput\n

\n

Autogenerated input type of RemoveStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to unstar.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenIssueInput\n

\n

Autogenerated input type of ReopenIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be opened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenPullRequestInput\n

\n

Autogenerated input type of ReopenPullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be reopened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryInvitationOrder\n

\n

Ordering options for repository invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryInvitationOrderField!)

The field to order repository invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryOrder\n

\n

Ordering options for repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RequestReviewsInput\n

\n

Autogenerated input type of RequestReviews.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

teamIds ([ID!])

The Node IDs of the team to request.

\n\n\n\n\n\n\n\n\n\n\n\n

union (Boolean)

Add users to the set rather than replace.

\n\n\n\n\n\n\n\n\n\n\n\n

userIds ([ID!])

The Node IDs of the user to request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RerequestCheckSuiteInput\n

\n

Autogenerated input type of RerequestCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

checkSuiteId (ID!)

The Node ID of the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ResolveReviewThreadInput\n

\n

Autogenerated input type of ResolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to resolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SavedReplyOrder\n

\n

Ordering options for saved reply connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SavedReplyOrderField!)

The field to order saved replies by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SecurityAdvisoryIdentifierFilter\n

\n

An advisory identifier to filter results on.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

type (SecurityAdvisoryIdentifierType!)

The identifier type.

\n\n\n\n\n\n\n\n\n\n\n\n

value (String!)

The identifier string. Supports exact or partial matching.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SecurityAdvisoryOrder\n

\n

Ordering options for security advisory connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SecurityAdvisoryOrderField!)

The field to order security advisories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SecurityVulnerabilityOrder\n

\n

Ordering options for security vulnerability connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SecurityVulnerabilityOrderField!)

The field to order security vulnerabilities by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetEnterpriseIdentityProviderInput\n

\n

Autogenerated input type of SetEnterpriseIdentityProvider.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

digestMethod (SamlDigestAlgorithm!)

The digest algorithm used to sign SAML requests for the identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set an identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

idpCertificate (String!)

The x509 certificate used by the identity provider to sign assertions and responses.

\n\n\n\n\n\n\n\n\n\n\n\n

issuer (String)

The Issuer Entity ID for the SAML identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

signatureMethod (SamlSignatureAlgorithm!)

The signature algorithm used to sign SAML requests for the identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

ssoUrl (URI!)

The URL endpoint for the identity provider's SAML SSO.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetOrganizationInteractionLimitInput\n

\n

Autogenerated input type of SetOrganizationInteractionLimit.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

expiry (RepositoryInteractionLimitExpiry)

When this limit should expire.

\n\n\n\n\n\n\n\n\n\n\n\n

limit (RepositoryInteractionLimit!)

The limit to set.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to set a limit for.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetRepositoryInteractionLimitInput\n

\n

Autogenerated input type of SetRepositoryInteractionLimit.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

expiry (RepositoryInteractionLimitExpiry)

When this limit should expire.

\n\n\n\n\n\n\n\n\n\n\n\n

limit (RepositoryInteractionLimit!)

The limit to set.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to set a limit for.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetUserInteractionLimitInput\n

\n

Autogenerated input type of SetUserInteractionLimit.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

expiry (RepositoryInteractionLimitExpiry)

When this limit should expire.

\n\n\n\n\n\n\n\n\n\n\n\n

limit (RepositoryInteractionLimit!)

The limit to set.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

The ID of the user to set a limit for.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorableOrder\n

\n

Ordering options for connections to get sponsorable entities for GitHub Sponsors.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SponsorableOrderField!)

The field to order sponsorable entities by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorsTierOrder\n

\n

Ordering options for Sponsors tiers connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SponsorsTierOrderField!)

The field to order tiers by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorshipOrder\n

\n

Ordering options for sponsorship connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SponsorshipOrderField!)

The field to order sponsorship by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n StarOrder\n

\n

Ways in which star connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (StarOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SubmitPullRequestReviewInput\n

\n

Autogenerated input type of SubmitPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The text field to set on the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent!)

The event to send to the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The Pull Request ID to submit any pending reviews.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Pull Request Review ID to submit.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionCommentOrder\n

\n

Ways in which team discussion comment connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionCommentOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionOrder\n

\n

Ways in which team discussion connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamMemberOrder\n

\n

Ordering options for team member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamMemberOrderField!)

The field to order team members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamOrder\n

\n

Ways in which team connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamRepositoryOrder\n

\n

Ordering options for team repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamRepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TransferIssueInput\n

\n

Autogenerated input type of TransferIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The Node ID of the issue to be transferred.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository the issue should be transferred to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnarchiveRepositoryInput\n

\n

Autogenerated input type of UnarchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to unarchive.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnfollowUserInput\n

\n

Autogenerated input type of UnfollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to unfollow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlinkRepositoryFromProjectInput\n

\n

Autogenerated input type of UnlinkRepositoryFromProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project linked to the Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository linked to the Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlockLockableInput\n

\n

Autogenerated input type of UnlockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be unlocked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkFileAsViewedInput\n

\n

Autogenerated input type of UnmarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as unviewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkIssueAsDuplicateInput\n

\n

Autogenerated input type of UnmarkIssueAsDuplicate.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

canonicalId (ID!)

ID of the issue or pull request currently considered canonical/authoritative/original.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

duplicateId (ID!)

ID of the issue or pull request currently marked as a duplicate.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnminimizeCommentInput\n

\n

Autogenerated input type of UnminimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnpinIssueInput\n

\n

Autogenerated input type of UnpinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be unpinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnresolveReviewThreadInput\n

\n

Autogenerated input type of UnresolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to unresolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateBranchProtectionRuleInput\n

\n

Autogenerated input type of UpdateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckRunInput\n

\n

Autogenerated input type of UpdateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

checkRunId (ID!)

The node of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckSuitePreferencesInput\n

\n

Autogenerated input type of UpdateCheckSuitePreferences.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoTriggerPreferences ([CheckSuiteAutoTriggerPreference!]!)

The check suite preferences to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseAdministratorRoleInput\n

\n

Autogenerated input type of UpdateEnterpriseAdministratorRole.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the Enterprise which the admin belongs to.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of a administrator whose role is being changed.

\n\n\n\n\n\n\n\n\n\n\n\n

role (EnterpriseAdministratorRole!)

The new role for the Enterprise administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseAllowPrivateRepositoryForkingSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the allow private repository forking setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the allow private repository forking setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseDefaultRepositoryPermissionSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseDefaultRepositoryPermissionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the default repository permission setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseDefaultRepositoryPermissionSettingValue!)

The value for the default repository permission setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can change repository visibility setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can change repository visibility setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanCreateRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanCreateRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can create repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateInternalRepositories (Boolean)

Allow members to create internal repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePrivateRepositories (Boolean)

Allow members to create private repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePublicRepositories (Boolean)

Allow members to create public repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateRepositoriesPolicyEnabled (Boolean)

When false, allow member organizations to set their own repository creation member privileges.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanCreateRepositoriesSettingValue)

Value for the members can create repositories setting on the enterprise. This\nor the granular public/private/internal allowed fields (but not both) must be provided.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteIssuesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteIssuesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete issues setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete issues setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete repositories setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanInviteCollaboratorsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can invite collaborators setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can invite collaborators setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanMakePurchasesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanMakePurchasesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can make purchases setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanMakePurchasesSettingValue!)

The value for the members can make purchases setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can update protected branches setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can update protected branches setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanViewDependencyInsightsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can view dependency insights setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can view dependency insights setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseOrganizationProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseOrganizationProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the organization projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the organization projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseProfileInput\n

\n

Autogenerated input type of UpdateEnterpriseProfile.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

The description of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

location (String)

The location of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

websiteUrl (String)

The URL of the enterprise's website.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseRepositoryProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseRepositoryProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the repository projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the repository projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTeamDiscussionsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTeamDiscussionsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the team discussions setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the team discussions setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTwoFactorAuthenticationRequiredSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the two factor authentication required setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledSettingValue!)

The value for the two factor authentication required setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEnabledSettingInput\n

\n

Autogenerated input type of UpdateIpAllowListEnabledSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (IpAllowListEnabledSettingValue!)

The value for the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEntryInput\n

\n

Autogenerated input type of UpdateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to update.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueCommentInput\n

\n

Autogenerated input type of UpdateIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the IssueComment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueInput\n

\n

Autogenerated input type of UpdateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the Issue to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

state (IssueState)

The desired issue state.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateLabelInput\n

\n

Autogenerated input type of UpdateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String)

A 6 character hex code, without the leading #, identifying the updated color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The updated name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateNotificationRestrictionSettingInput\n

\n

Autogenerated input type of UpdateNotificationRestrictionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (NotificationRestrictionSettingValue!)

The value for the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectCardInput\n

\n

Autogenerated input type of UpdateProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isArchived (Boolean)

Whether or not the ProjectCard should be archived.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note of ProjectCard.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectColumnInput\n

\n

Autogenerated input type of UpdateProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The ProjectColumn ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectInput\n

\n

Autogenerated input type of UpdateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n

state (ProjectState)

Whether the project is open or closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestInput\n

\n

Autogenerated input type of UpdatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

baseRefName (String)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

state (PullRequestUpdateState)

The target state of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewCommentInput\n

\n

Autogenerated input type of UpdatePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewCommentId (ID!)

The Node ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewInput\n

\n

Autogenerated input type of UpdatePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the pull request review body.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefInput\n

\n

Autogenerated input type of UpdateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Permit updates of branch Refs that are not fast-forwards?.

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the Ref shall be updated to target.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefsInput\n

\n

Autogenerated input type of UpdateRefs.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateRefsInput is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refUpdates ([RefUpdate!]!)

A list of ref updates.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRepositoryInput\n

\n

Autogenerated input type of UpdateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A new description for the repository. Pass an empty string to erase the existing description.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasProjectsEnabled (Boolean)

Indicates if the repository should have the project boards feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository. Pass an empty string to erase the existing URL.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The new name of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to update.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateSubscriptionInput\n

\n

Autogenerated input type of UpdateSubscription.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

state (SubscriptionState!)

The new state of the subscription.

\n\n\n\n\n\n\n\n\n\n\n\n

subscribableId (ID!)

The Node ID of the subscribable object to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionCommentInput\n

\n

Autogenerated input type of UpdateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionInput\n

\n

Autogenerated input type of UpdateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The updated text of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content. If provided, this update operation\nwill be rejected if the given version does not match the latest version on the server.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the discussion to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

pinned (Boolean)

If provided, sets the pinned state of the updated discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The updated title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamReviewAssignmentInput\n

\n

Autogenerated input type of UpdateTeamReviewAssignment.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateTeamReviewAssignmentInput is available under the Team review assignments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

algorithm (TeamReviewAssignmentAlgorithm)

The algorithm to use for review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enabled (Boolean!)

Turn on or off review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

excludedTeamMemberIds ([ID!])

An array of team member IDs to exclude.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the team to update review assignments of.

\n\n\n\n\n\n\n\n\n\n\n\n

notifyTeam (Boolean)

Notify the entire team of the PR if it is delegated.

\n\n\n\n\n\n\n\n\n\n\n\n

teamMemberCount (Int)

The number of team members to assign.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTopicsInput\n

\n

Autogenerated input type of UpdateTopics.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

topicNames ([String!]!)

An array of topic names.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UserStatusOrder\n

\n

Ordering options for user status connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (UserStatusOrderField!)

The field to order user statuses by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifiableDomainOrder\n

\n

Ordering options for verifiable domain connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (VerifiableDomainOrderField!)

The field to order verifiable domains by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifyVerifiableDomainInput\n

\n

Autogenerated input type of VerifyVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to verify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n", + "html": "
\n
\n

\n AcceptEnterpriseAdministratorInvitationInput\n

\n

Autogenerated input type of AcceptEnterpriseAdministratorInvitation.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

invitationId (ID!)

The id of the invitation being accepted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AcceptTopicSuggestionInput\n

\n

Autogenerated input type of AcceptTopicSuggestion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the suggested topic.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddAssigneesToAssignableInput\n

\n

Autogenerated input type of AddAssigneesToAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to add assignees to.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to add as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddCommentInput\n

\n

Autogenerated input type of AddComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddEnterpriseSupportEntitlementInput\n

\n

Autogenerated input type of AddEnterpriseSupportEntitlement.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the Enterprise which the admin belongs to.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of a member who will receive the support entitlement.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddLabelsToLabelableInput\n

\n

Autogenerated input type of AddLabelsToLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of the labels to add.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to add labels to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectCardInput\n

\n

Autogenerated input type of AddProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentId (ID)

The content of the card. Must be a member of the ProjectCardItem union.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note on the card.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The Node ID of the ProjectColumn.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectColumnInput\n

\n

Autogenerated input type of AddProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Node ID of the project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewCommentInput\n

\n

Autogenerated input type of AddPullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The SHA of the commit to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

inReplyTo (ID)

The comment id to reply to.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String)

The relative path of the file to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int)

The line index in the diff to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewInput\n

\n

Autogenerated input type of AddPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The contents of the review body comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

comments ([DraftPullRequestReviewComment])

The review line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The commit OID the review pertains to.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent)

The event to perform on the pull request review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

threads ([DraftPullRequestReviewThread])

The review line comment threads.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewThreadInput\n

\n

Autogenerated input type of AddPullRequestReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the thread's first comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddReactionInput\n

\n

Autogenerated input type of AddReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji to react with.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddStarInput\n

\n

Autogenerated input type of AddStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to star.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddVerifiableDomainInput\n

\n

Autogenerated input type of AddVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

domain (URI!)

The URL of the domain.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner to add the domain to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ApproveVerifiableDomainInput\n

\n

Autogenerated input type of ApproveVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to approve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ArchiveRepositoryInput\n

\n

Autogenerated input type of ArchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to mark as archived.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AuditLogOrder\n

\n

Ordering options for Audit Log connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (AuditLogOrderField)

The field to order Audit Logs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CancelEnterpriseAdminInvitationInput\n

\n

Autogenerated input type of CancelEnterpriseAdminInvitation.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

invitationId (ID!)

The Node ID of the pending enterprise administrator invitation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ChangeUserStatusInput\n

\n

Autogenerated input type of ChangeUserStatus.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

emoji (String)

The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., 😀.

\n\n\n\n\n\n\n\n\n\n\n\n

expiresAt (DateTime)

If set, the user status will not be shown after this date.

\n\n\n\n\n\n\n\n\n\n\n\n

limitedAvailability (Boolean)

Whether this status should indicate you are not fully available on GitHub, e.g., you are away.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String)

A short description of your current status.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID)

The ID of the organization whose members will be allowed to see the status. If\nomitted, the status will be publicly visible.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationData\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotationLevel (CheckAnnotationLevel!)

Represents an annotation's information level.

\n\n\n\n\n\n\n\n\n\n\n\n

location (CheckAnnotationRange!)

The location of the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

A short description of the feedback for these lines of code.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to add an annotation to.

\n\n\n\n\n\n\n\n\n\n\n\n

rawDetails (String)

Details about this annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title that represents the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationRange\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

endColumn (Int)

The ending column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

endLine (Int!)

The ending line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startColumn (Int)

The starting column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int!)

The starting line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunAction\n

\n

Possible further actions the integrator can perform.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

description (String!)

A short explanation of what this action would do.

\n\n\n\n\n\n\n\n\n\n\n\n

identifier (String!)

A reference for the action on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

label (String!)

The text to be displayed on a button in the web UI.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunFilter\n

\n

The filters that are available when fetching check runs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check runs created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check runs by this name.

\n\n\n\n\n\n\n\n\n\n\n\n

checkType (CheckRunType)

Filters the check runs by this type.

\n\n\n\n\n\n\n\n\n\n\n\n

status (CheckStatusState)

Filters the check runs by this status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutput\n

\n

Descriptive details about the check run.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotations ([CheckAnnotationData!])

The annotations that are made as part of the check run.

\n\n\n\n\n\n\n\n\n\n\n\n

images ([CheckRunOutputImage!])

Images attached to the check run output displayed in the GitHub pull request UI.

\n\n\n\n\n\n\n\n\n\n\n\n

summary (String!)

The summary of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

text (String)

The details of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

A title to provide for this check run.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutputImage\n

\n

Images attached to the check run output displayed in the GitHub pull request UI.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

alt (String!)

The alternative text for the image.

\n\n\n\n\n\n\n\n\n\n\n\n

caption (String)

A short image description.

\n\n\n\n\n\n\n\n\n\n\n\n

imageUrl (URI!)

The full URL of the image.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteAutoTriggerPreference\n

\n

The auto-trigger preferences that are available for check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (ID!)

The node ID of the application that owns the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

setting (Boolean!)

Set to true to enable automatic creation of CheckSuite events upon pushes to the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteFilter\n

\n

The filters that are available when fetching check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check suites created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check suites by this name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClearLabelsFromLabelableInput\n

\n

Autogenerated input type of ClearLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to clear the labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneProjectInput\n

\n

Autogenerated input type of CloneProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

includeWorkflows (Boolean!)

Whether or not to clone the source project's workflows.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

The visibility of the project, defaults to false (private).

\n\n\n\n\n\n\n\n\n\n\n\n

sourceId (ID!)

The source project to clone.

\n\n\n\n\n\n\n\n\n\n\n\n

targetOwnerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneTemplateRepositoryInput\n

\n

Autogenerated input type of CloneTemplateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

includeAllBranches (Boolean)

Whether to copy all branches from the template to the new repository. Defaults\nto copying only the default branch of the template.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the template repository.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloseIssueInput\n

\n

Autogenerated input type of CloseIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClosePullRequestInput\n

\n

Autogenerated input type of ClosePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitAuthor\n

\n

Specifies an author for filtering Git commits.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

emails ([String!])

Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID)

ID of a User to filter by. If non-null, only commits authored by this user\nwill be returned. This field takes precedence over emails.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitContributionOrder\n

\n

Ordering options for commit contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (CommitContributionOrderField!)

The field by which to order commit contributions.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ContributionOrder\n

\n

Ordering options for contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ConvertProjectCardNoteToIssueInput\n

\n

Autogenerated input type of ConvertProjectCardNoteToIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The body of the newly created issue.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to convert.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to create the issue in.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the newly created issue. Defaults to the card's note text.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ConvertPullRequestToDraftInput\n

\n

Autogenerated input type of ConvertPullRequestToDraft.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to convert to draft.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateBranchProtectionRuleInput\n

\n

Autogenerated input type of CreateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String!)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The global relay id of the repository in which a new branch protection rule should be created in.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckRunInput\n

\n

Autogenerated input type of CreateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckSuiteInput\n

\n

Autogenerated input type of CreateCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateContentAttachmentInput\n

\n

Autogenerated input type of CreateContentAttachment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The body of the content attachment, which may contain markdown.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentReferenceId (ID!)

The node ID of the content_reference.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the content attachment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentInput\n

\n

Autogenerated input type of CreateDeployment.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoMerge (Boolean)

Attempt to automatically merge the default branch into the requested ref, defaults to true.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

Short description of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

Name for the target deployment environment.

\n\n\n\n\n\n\n\n\n\n\n\n

payload (String)

JSON payload with extra information about the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The node ID of the ref to be deployed.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredContexts ([String!])

The status contexts to verify against commit status checks. To bypass required\ncontexts, pass an empty array. Defaults to all unique contexts.

\n\n\n\n\n\n\n\n\n\n\n\n

task (String)

Specifies a task to execute.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentStatusInput\n

\n

Autogenerated input type of CreateDeploymentStatus.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentStatusInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoInactive (Boolean)

Adds a new inactive status to all non-transient, non-production environment\ndeployments with the same repository and environment name as the created\nstatus's deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

deploymentId (ID!)

The node ID of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the status. Maximum length of 140 characters.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

If provided, updates the environment of the deploy. Otherwise, does not modify the environment.

\n\n\n\n\n\n\n\n\n\n\n\n

environmentUrl (String)

Sets the URL for accessing your environment.

\n\n\n\n\n\n\n\n\n\n\n\n

logUrl (String)

The log URL to associate with this status. This URL should contain\noutput to keep the user updated while the task is running or serve as\nhistorical information for what happened in the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

state (DeploymentStatusState!)

The state of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateEnterpriseOrganizationInput\n

\n

Autogenerated input type of CreateEnterpriseOrganization.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

adminLogins ([String!]!)

The logins for the administrators of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

billingEmail (String!)

The email used for sending billing receipts.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise owning the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

profileName (String!)

The profile name of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIpAllowListEntryInput\n

\n

Autogenerated input type of CreateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for which to create the new IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIssueInput\n

\n

Autogenerated input type of CreateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

The Node ID for the user assignee for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueTemplate (String)

The name of an issue template in the repository, assigns labels and assignees from the template to the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateLabelInput\n

\n

Autogenerated input type of CreateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String!)

A 6 character hex code, without the leading #, identifying the color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateProjectInput\n

\n

Autogenerated input type of CreateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryIds ([ID!])

A list of repository IDs to create as linked repositories for the project.

\n\n\n\n\n\n\n\n\n\n\n\n

template (ProjectTemplate)

The name of the GitHub-provided template.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreatePullRequestInput\n

\n

Autogenerated input type of CreatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

baseRefName (String!)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository. You cannot update the base branch on a pull request to point\nto another repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

draft (Boolean)

Indicates whether this pull request should be a draft.

\n\n\n\n\n\n\n\n\n\n\n\n

headRefName (String!)

The name of the branch where your changes are implemented. For cross-repository pull requests\nin the same network, namespace head_ref_name with a user like this: username:branch.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRefInput\n

\n

Autogenerated input type of CreateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The fully qualified name of the new Ref (ie: refs/heads/my_new_branch).

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the new Ref shall target. Must point to a commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository to create the Ref in.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRepositoryInput\n

\n

Autogenerated input type of CreateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID)

When an organization is specified as the owner, this ID identifies the team\nthat should be granted access to the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionCommentInput\n

\n

Autogenerated input type of CreateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

discussionId (ID!)

The ID of the discussion to which the comment belongs.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionInput\n

\n

Autogenerated input type of CreateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

private (Boolean)

If true, restricts the visibility of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID!)

The ID of the team to which the discussion belongs.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeclineTopicSuggestionInput\n

\n

Autogenerated input type of DeclineTopicSuggestion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the suggested topic.

\n\n\n\n\n\n\n\n\n\n\n\n

reason (TopicSuggestionDeclineReason!)

The reason why the suggested topic is declined.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteBranchProtectionRuleInput\n

\n

Autogenerated input type of DeleteBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteDeploymentInput\n

\n

Autogenerated input type of DeleteDeployment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the deployment to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIpAllowListEntryInput\n

\n

Autogenerated input type of DeleteIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueCommentInput\n

\n

Autogenerated input type of DeleteIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueInput\n

\n

Autogenerated input type of DeleteIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteLabelInput\n

\n

Autogenerated input type of DeleteLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

DeleteLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePackageVersionInput\n

\n

Autogenerated input type of DeletePackageVersion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

packageVersionId (ID!)

The ID of the package version to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectCardInput\n

\n

Autogenerated input type of DeleteProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

cardId (ID!)

The id of the card to delete.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectColumnInput\n

\n

Autogenerated input type of DeleteProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectInput\n

\n

Autogenerated input type of DeleteProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewCommentInput\n

\n

Autogenerated input type of DeletePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewInput\n

\n

Autogenerated input type of DeletePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteRefInput\n

\n

Autogenerated input type of DeleteRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionCommentInput\n

\n

Autogenerated input type of DeleteTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionInput\n

\n

Autogenerated input type of DeleteTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The discussion ID to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteVerifiableDomainInput\n

\n

Autogenerated input type of DeleteVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeploymentOrder\n

\n

Ordering options for deployment connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (DeploymentOrderField!)

The field to order deployments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DisablePullRequestAutoMergeInput\n

\n

Autogenerated input type of DisablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to disable auto merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DismissPullRequestReviewInput\n

\n

Autogenerated input type of DismissPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

The contents of the pull request review dismissal message.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewComment\n

\n

Specifies a review comment to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

Position in the file to leave a comment on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewThread\n

\n

Specifies a review comment thread to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnablePullRequestAutoMergeInput\n

\n

Autogenerated input type of EnablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to enable auto-merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseAdministratorInvitationOrder\n

\n

Ordering options for enterprise administrator invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseAdministratorInvitationOrderField!)

The field to order enterprise administrator invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseMemberOrder\n

\n

Ordering options for enterprise member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseMemberOrderField!)

The field to order enterprise members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerInstallationOrder\n

\n

Ordering options for Enterprise Server installation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerInstallationOrderField!)

The field to order Enterprise Server installations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountEmailOrder\n

\n

Ordering options for Enterprise Server user account email connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountEmailOrderField!)

The field to order emails by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountOrder\n

\n

Ordering options for Enterprise Server user account connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountOrderField!)

The field to order user accounts by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountsUploadOrder\n

\n

Ordering options for Enterprise Server user accounts upload connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountsUploadOrderField!)

The field to order user accounts uploads by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n FollowUserInput\n

\n

Autogenerated input type of FollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to follow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n GistOrder\n

\n

Ordering options for gist connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (GistOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ImportProjectInput\n

\n

Autogenerated input type of ImportProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnImports ([ProjectColumnImport!]!)

A list of columns containing issues and pull requests.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerName (String!)

The name of the Organization or User to create the Project under.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the Project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n InviteEnterpriseAdminInput\n

\n

Autogenerated input type of InviteEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

email (String)

The email of the person to invite as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise to which you want to invite an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

invitee (String)

The login of a user to invite as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

role (EnterpriseAdministratorRole)

The role of the administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IpAllowListEntryOrder\n

\n

Ordering options for IP allow list entry connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IpAllowListEntryOrderField!)

The field to order IP allow list entries by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueCommentOrder\n

\n

Ways in which lists of issue comments can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issue comments by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueCommentOrderField!)

The field in which to order issue comments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueFilters\n

\n

Ways in which to filter lists of issues.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignee (String)

List issues assigned to given name. Pass in null for issues with no assigned\nuser, and * for issues assigned to any user.

\n\n\n\n\n\n\n\n\n\n\n\n

createdBy (String)

List issues created by given name.

\n\n\n\n\n\n\n\n\n\n\n\n

labels ([String!])

List issues where the list of label names exist on the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

mentioned (String)

List issues where the given name is mentioned in the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestone (String)

List issues by given milestone argument. If an string representation of an\ninteger is passed, it should refer to a milestone by its number field. Pass in\nnull for issues with no milestone, and * for issues that are assigned to any milestone.

\n\n\n\n\n\n\n\n\n\n\n\n

since (DateTime)

List issues that have been updated at or after the given date.

\n\n\n\n\n\n\n\n\n\n\n\n

states ([IssueState!])

List issues filtered by the list of states given.

\n\n\n\n\n\n\n\n\n\n\n\n

viewerSubscribed (Boolean)

List issues subscribed to by viewer.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issues by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueOrderField!)

The field in which to order issues by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LabelOrder\n

\n

Ways in which lists of labels can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order labels by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LabelOrderField!)

The field in which to order labels by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LanguageOrder\n

\n

Ordering options for language connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LanguageOrderField!)

The field to order languages by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LinkRepositoryToProjectInput\n

\n

Autogenerated input type of LinkRepositoryToProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project to link to a Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository to link to a Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LockLockableInput\n

\n

Autogenerated input type of LockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockReason (LockReason)

A reason for why the item will be locked.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be locked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkFileAsViewedInput\n

\n

Autogenerated input type of MarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as viewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkPullRequestReadyForReviewInput\n

\n

Autogenerated input type of MarkPullRequestReadyForReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be marked as ready for review.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergeBranchInput\n

\n

Autogenerated input type of MergeBranch.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this commit.

\n\n\n\n\n\n\n\n\n\n\n\n

base (String!)

The name of the base branch that the provided head will be merged into.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitMessage (String)

Message to use for the merge commit. If omitted, a default will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

head (String!)

The head to merge into the base branch. This can be a branch name or a commit GitObjectID.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository containing the base branch that will be modified.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergePullRequestInput\n

\n

Autogenerated input type of MergePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

expectedHeadOid (GitObjectID)

OID that the pull request head ref must match to allow merge; if omitted, no check is performed.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be merged.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MilestoneOrder\n

\n

Ordering options for milestone connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (MilestoneOrderField!)

The field to order milestones by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MinimizeCommentInput\n

\n

Autogenerated input type of MinimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

classifier (ReportedContentClassifiers!)

The classification of comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectCardInput\n

\n

Autogenerated input type of MoveProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterCardId (ID)

Place the new card after the card with this id. Pass null to place it at the top.

\n\n\n\n\n\n\n\n\n\n\n\n

cardId (ID!)

The id of the card to move.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move it into.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectColumnInput\n

\n

Autogenerated input type of MoveProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterColumnId (ID)

Place the new column after the column with this id. Pass null to place it at the front.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n OrganizationOrder\n

\n

Ordering options for organization connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (OrganizationOrderField!)

The field to order organizations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PackageFileOrder\n

\n

Ways in which lists of package files can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The direction in which to order package files by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PackageFileOrderField)

The field in which to order package files by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PackageOrder\n

\n

Ways in which lists of packages can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The direction in which to order packages by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PackageOrderField)

The field in which to order packages by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PackageVersionOrder\n

\n

Ways in which lists of package versions can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The direction in which to order package versions by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PackageVersionOrderField)

The field in which to order package versions by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PinIssueInput\n

\n

Autogenerated input type of PinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be pinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectCardImport\n

\n

An issue or PR and its owning repository to be used in a project card.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

number (Int!)

The issue or pull request number.

\n\n\n\n\n\n\n\n\n\n\n\n

repository (String!)

Repository name with owner (owner/repository).

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectColumnImport\n

\n

A project column and a list of its issues and PRs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

columnName (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

issues ([ProjectCardImport!])

A list of issues and pull requests in the column.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

The position of the column, starting from 0.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectOrder\n

\n

Ways in which lists of projects can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order projects by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ProjectOrderField!)

The field in which to order projects by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PullRequestOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order pull requests by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PullRequestOrderField!)

The field in which to order pull requests by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReactionOrder\n

\n

Ways in which lists of reactions can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order reactions by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReactionOrderField!)

The field in which to order reactions by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefOrder\n

\n

Ways in which lists of git refs can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order refs by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RefOrderField!)

The field in which to order refs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefUpdate\n

\n

A ref update.

\n
\n\n
\n \n
\n

Preview notice

\n

RefUpdate is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterOid (GitObjectID!)

The value this ref should be updated to.

\n\n\n\n\n\n\n\n\n\n\n\n

beforeOid (GitObjectID)

The value this ref needs to point to before the update.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Force a non fast-forward update.

\n\n\n\n\n\n\n\n\n\n\n\n

name (GitRefname!)

The fully qualified name of the ref to be update. For example refs/heads/branch-name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RegenerateEnterpriseIdentityProviderRecoveryCodesInput\n

\n

Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set an identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RegenerateVerifiableDomainTokenInput\n

\n

Autogenerated input type of RegenerateVerifiableDomainToken.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to regenerate the verification token of.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReleaseOrder\n

\n

Ways in which lists of releases can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order releases by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReleaseOrderField!)

The field in which to order releases by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveAssigneesFromAssignableInput\n

\n

Autogenerated input type of RemoveAssigneesFromAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to remove assignees from.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to remove as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseAdminInput\n

\n

Autogenerated input type of RemoveEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID from which to remove the administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the user to remove as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseIdentityProviderInput\n

\n

Autogenerated input type of RemoveEnterpriseIdentityProvider.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise from which to remove the identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseOrganizationInput\n

\n

Autogenerated input type of RemoveEnterpriseOrganization.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise from which the organization should be removed.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to remove from the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseSupportEntitlementInput\n

\n

Autogenerated input type of RemoveEnterpriseSupportEntitlement.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the Enterprise which the admin belongs to.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of a member who will lose the support entitlement.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveLabelsFromLabelableInput\n

\n

Autogenerated input type of RemoveLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of labels to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the Labelable to remove labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveOutsideCollaboratorInput\n

\n

Autogenerated input type of RemoveOutsideCollaborator.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to remove the outside collaborator from.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

The ID of the outside collaborator to remove.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveReactionInput\n

\n

Autogenerated input type of RemoveReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji reaction to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveStarInput\n

\n

Autogenerated input type of RemoveStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to unstar.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenIssueInput\n

\n

Autogenerated input type of ReopenIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be opened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenPullRequestInput\n

\n

Autogenerated input type of ReopenPullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be reopened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryInvitationOrder\n

\n

Ordering options for repository invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryInvitationOrderField!)

The field to order repository invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryOrder\n

\n

Ordering options for repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RequestReviewsInput\n

\n

Autogenerated input type of RequestReviews.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

teamIds ([ID!])

The Node IDs of the team to request.

\n\n\n\n\n\n\n\n\n\n\n\n

union (Boolean)

Add users to the set rather than replace.

\n\n\n\n\n\n\n\n\n\n\n\n

userIds ([ID!])

The Node IDs of the user to request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RerequestCheckSuiteInput\n

\n

Autogenerated input type of RerequestCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

checkSuiteId (ID!)

The Node ID of the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ResolveReviewThreadInput\n

\n

Autogenerated input type of ResolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to resolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SavedReplyOrder\n

\n

Ordering options for saved reply connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SavedReplyOrderField!)

The field to order saved replies by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SecurityAdvisoryIdentifierFilter\n

\n

An advisory identifier to filter results on.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

type (SecurityAdvisoryIdentifierType!)

The identifier type.

\n\n\n\n\n\n\n\n\n\n\n\n

value (String!)

The identifier string. Supports exact or partial matching.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SecurityAdvisoryOrder\n

\n

Ordering options for security advisory connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SecurityAdvisoryOrderField!)

The field to order security advisories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SecurityVulnerabilityOrder\n

\n

Ordering options for security vulnerability connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SecurityVulnerabilityOrderField!)

The field to order security vulnerabilities by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetEnterpriseIdentityProviderInput\n

\n

Autogenerated input type of SetEnterpriseIdentityProvider.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

digestMethod (SamlDigestAlgorithm!)

The digest algorithm used to sign SAML requests for the identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set an identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

idpCertificate (String!)

The x509 certificate used by the identity provider to sign assertions and responses.

\n\n\n\n\n\n\n\n\n\n\n\n

issuer (String)

The Issuer Entity ID for the SAML identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

signatureMethod (SamlSignatureAlgorithm!)

The signature algorithm used to sign SAML requests for the identity provider.

\n\n\n\n\n\n\n\n\n\n\n\n

ssoUrl (URI!)

The URL endpoint for the identity provider's SAML SSO.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetOrganizationInteractionLimitInput\n

\n

Autogenerated input type of SetOrganizationInteractionLimit.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

expiry (RepositoryInteractionLimitExpiry)

When this limit should expire.

\n\n\n\n\n\n\n\n\n\n\n\n

limit (RepositoryInteractionLimit!)

The limit to set.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to set a limit for.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetRepositoryInteractionLimitInput\n

\n

Autogenerated input type of SetRepositoryInteractionLimit.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

expiry (RepositoryInteractionLimitExpiry)

When this limit should expire.

\n\n\n\n\n\n\n\n\n\n\n\n

limit (RepositoryInteractionLimit!)

The limit to set.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to set a limit for.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SetUserInteractionLimitInput\n

\n

Autogenerated input type of SetUserInteractionLimit.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

expiry (RepositoryInteractionLimitExpiry)

When this limit should expire.

\n\n\n\n\n\n\n\n\n\n\n\n

limit (RepositoryInteractionLimit!)

The limit to set.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

The ID of the user to set a limit for.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorableOrder\n

\n

Ordering options for connections to get sponsorable entities for GitHub Sponsors.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SponsorableOrderField!)

The field to order sponsorable entities by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorsTierOrder\n

\n

Ordering options for Sponsors tiers connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SponsorsTierOrderField!)

The field to order tiers by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorshipOrder\n

\n

Ordering options for sponsorship connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SponsorshipOrderField!)

The field to order sponsorship by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n StarOrder\n

\n

Ways in which star connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (StarOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SubmitPullRequestReviewInput\n

\n

Autogenerated input type of SubmitPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The text field to set on the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent!)

The event to send to the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The Pull Request ID to submit any pending reviews.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Pull Request Review ID to submit.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionCommentOrder\n

\n

Ways in which team discussion comment connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionCommentOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionOrder\n

\n

Ways in which team discussion connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamMemberOrder\n

\n

Ordering options for team member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamMemberOrderField!)

The field to order team members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamOrder\n

\n

Ways in which team connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamRepositoryOrder\n

\n

Ordering options for team repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamRepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TransferIssueInput\n

\n

Autogenerated input type of TransferIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The Node ID of the issue to be transferred.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository the issue should be transferred to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnarchiveRepositoryInput\n

\n

Autogenerated input type of UnarchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to unarchive.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnfollowUserInput\n

\n

Autogenerated input type of UnfollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to unfollow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlinkRepositoryFromProjectInput\n

\n

Autogenerated input type of UnlinkRepositoryFromProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project linked to the Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository linked to the Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlockLockableInput\n

\n

Autogenerated input type of UnlockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be unlocked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkFileAsViewedInput\n

\n

Autogenerated input type of UnmarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as unviewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkIssueAsDuplicateInput\n

\n

Autogenerated input type of UnmarkIssueAsDuplicate.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

canonicalId (ID!)

ID of the issue or pull request currently considered canonical/authoritative/original.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

duplicateId (ID!)

ID of the issue or pull request currently marked as a duplicate.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnminimizeCommentInput\n

\n

Autogenerated input type of UnminimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnpinIssueInput\n

\n

Autogenerated input type of UnpinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be unpinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnresolveReviewThreadInput\n

\n

Autogenerated input type of UnresolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to unresolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateBranchProtectionRuleInput\n

\n

Autogenerated input type of UpdateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckRunInput\n

\n

Autogenerated input type of UpdateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

checkRunId (ID!)

The node of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckSuitePreferencesInput\n

\n

Autogenerated input type of UpdateCheckSuitePreferences.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoTriggerPreferences ([CheckSuiteAutoTriggerPreference!]!)

The check suite preferences to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseAdministratorRoleInput\n

\n

Autogenerated input type of UpdateEnterpriseAdministratorRole.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the Enterprise which the admin belongs to.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of a administrator whose role is being changed.

\n\n\n\n\n\n\n\n\n\n\n\n

role (EnterpriseAdministratorRole!)

The new role for the Enterprise administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseAllowPrivateRepositoryForkingSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the allow private repository forking setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the allow private repository forking setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseDefaultRepositoryPermissionSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseDefaultRepositoryPermissionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the default repository permission setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseDefaultRepositoryPermissionSettingValue!)

The value for the default repository permission setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can change repository visibility setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can change repository visibility setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanCreateRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanCreateRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can create repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateInternalRepositories (Boolean)

Allow members to create internal repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePrivateRepositories (Boolean)

Allow members to create private repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePublicRepositories (Boolean)

Allow members to create public repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateRepositoriesPolicyEnabled (Boolean)

When false, allow member organizations to set their own repository creation member privileges.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanCreateRepositoriesSettingValue)

Value for the members can create repositories setting on the enterprise. This\nor the granular public/private/internal allowed fields (but not both) must be provided.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteIssuesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteIssuesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete issues setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete issues setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete repositories setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanInviteCollaboratorsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can invite collaborators setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can invite collaborators setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanMakePurchasesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanMakePurchasesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can make purchases setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanMakePurchasesSettingValue!)

The value for the members can make purchases setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can update protected branches setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can update protected branches setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanViewDependencyInsightsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can view dependency insights setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can view dependency insights setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseOrganizationProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseOrganizationProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the organization projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the organization projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseProfileInput\n

\n

Autogenerated input type of UpdateEnterpriseProfile.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

The description of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

location (String)

The location of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

websiteUrl (String)

The URL of the enterprise's website.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseRepositoryProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseRepositoryProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the repository projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the repository projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTeamDiscussionsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTeamDiscussionsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the team discussions setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the team discussions setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTwoFactorAuthenticationRequiredSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the two factor authentication required setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledSettingValue!)

The value for the two factor authentication required setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEnabledSettingInput\n

\n

Autogenerated input type of UpdateIpAllowListEnabledSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (IpAllowListEnabledSettingValue!)

The value for the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEntryInput\n

\n

Autogenerated input type of UpdateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to update.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueCommentInput\n

\n

Autogenerated input type of UpdateIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the IssueComment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueInput\n

\n

Autogenerated input type of UpdateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the Issue to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

state (IssueState)

The desired issue state.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateLabelInput\n

\n

Autogenerated input type of UpdateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String)

A 6 character hex code, without the leading #, identifying the updated color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The updated name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateNotificationRestrictionSettingInput\n

\n

Autogenerated input type of UpdateNotificationRestrictionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (NotificationRestrictionSettingValue!)

The value for the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectCardInput\n

\n

Autogenerated input type of UpdateProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isArchived (Boolean)

Whether or not the ProjectCard should be archived.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note of ProjectCard.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectColumnInput\n

\n

Autogenerated input type of UpdateProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The ProjectColumn ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectInput\n

\n

Autogenerated input type of UpdateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n

state (ProjectState)

Whether the project is open or closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestInput\n

\n

Autogenerated input type of UpdatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

baseRefName (String)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

state (PullRequestUpdateState)

The target state of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewCommentInput\n

\n

Autogenerated input type of UpdatePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewCommentId (ID!)

The Node ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewInput\n

\n

Autogenerated input type of UpdatePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the pull request review body.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefInput\n

\n

Autogenerated input type of UpdateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Permit updates of branch Refs that are not fast-forwards?.

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the Ref shall be updated to target.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefsInput\n

\n

Autogenerated input type of UpdateRefs.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateRefsInput is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refUpdates ([RefUpdate!]!)

A list of ref updates.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRepositoryInput\n

\n

Autogenerated input type of UpdateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A new description for the repository. Pass an empty string to erase the existing description.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasProjectsEnabled (Boolean)

Indicates if the repository should have the project boards feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository. Pass an empty string to erase the existing URL.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The new name of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to update.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateSubscriptionInput\n

\n

Autogenerated input type of UpdateSubscription.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

state (SubscriptionState!)

The new state of the subscription.

\n\n\n\n\n\n\n\n\n\n\n\n

subscribableId (ID!)

The Node ID of the subscribable object to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionCommentInput\n

\n

Autogenerated input type of UpdateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionInput\n

\n

Autogenerated input type of UpdateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The updated text of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content. If provided, this update operation\nwill be rejected if the given version does not match the latest version on the server.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the discussion to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

pinned (Boolean)

If provided, sets the pinned state of the updated discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The updated title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamReviewAssignmentInput\n

\n

Autogenerated input type of UpdateTeamReviewAssignment.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateTeamReviewAssignmentInput is available under the Team review assignments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

algorithm (TeamReviewAssignmentAlgorithm)

The algorithm to use for review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enabled (Boolean!)

Turn on or off review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

excludedTeamMemberIds ([ID!])

An array of team member IDs to exclude.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the team to update review assignments of.

\n\n\n\n\n\n\n\n\n\n\n\n

notifyTeam (Boolean)

Notify the entire team of the PR if it is delegated.

\n\n\n\n\n\n\n\n\n\n\n\n

teamMemberCount (Int)

The number of team members to assign.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTopicsInput\n

\n

Autogenerated input type of UpdateTopics.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

topicNames ([String!]!)

An array of topic names.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UserStatusOrder\n

\n

Ordering options for user status connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (UserStatusOrderField!)

The field to order user statuses by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifiableDomainOrder\n

\n

Ordering options for verifiable domain connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (VerifiableDomainOrderField!)

The field to order verifiable domains by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifyVerifiableDomainInput\n

\n

Autogenerated input type of VerifyVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to verify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n", "miniToc": [ { "contents": "\n AcceptEnterpriseAdministratorInvitationInput\n ", @@ -182,6 +182,11 @@ "headingLevel": 3, "indentationLevel": 0 }, + { + "contents": "\n ConvertPullRequestToDraftInput\n ", + "headingLevel": 3, + "indentationLevel": 0 + }, { "contents": "\n CreateBranchProtectionRuleInput\n ", "headingLevel": 3, @@ -3590,7 +3595,7 @@ ] }, "ghae": { - "html": "
\n
\n

\n AddAssigneesToAssignableInput\n

\n

Autogenerated input type of AddAssigneesToAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to add assignees to.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to add as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddCommentInput\n

\n

Autogenerated input type of AddComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddEnterpriseAdminInput\n

\n

Autogenerated input type of AddEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise account to which the administrator should be added.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the user to add as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddLabelsToLabelableInput\n

\n

Autogenerated input type of AddLabelsToLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of the labels to add.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to add labels to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectCardInput\n

\n

Autogenerated input type of AddProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentId (ID)

The content of the card. Must be a member of the ProjectCardItem union.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note on the card.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The Node ID of the ProjectColumn.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectColumnInput\n

\n

Autogenerated input type of AddProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Node ID of the project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewCommentInput\n

\n

Autogenerated input type of AddPullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The SHA of the commit to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

inReplyTo (ID)

The comment id to reply to.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String)

The relative path of the file to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int)

The line index in the diff to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewInput\n

\n

Autogenerated input type of AddPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The contents of the review body comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

comments ([DraftPullRequestReviewComment])

The review line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The commit OID the review pertains to.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent)

The event to perform on the pull request review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

threads ([DraftPullRequestReviewThread])

The review line comment threads.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewThreadInput\n

\n

Autogenerated input type of AddPullRequestReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the thread's first comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddReactionInput\n

\n

Autogenerated input type of AddReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji to react with.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddStarInput\n

\n

Autogenerated input type of AddStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to star.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddVerifiableDomainInput\n

\n

Autogenerated input type of AddVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

domain (URI!)

The URL of the domain.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner to add the domain to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ApproveVerifiableDomainInput\n

\n

Autogenerated input type of ApproveVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to approve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ArchiveRepositoryInput\n

\n

Autogenerated input type of ArchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to mark as archived.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AuditLogOrder\n

\n

Ordering options for Audit Log connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (AuditLogOrderField)

The field to order Audit Logs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ChangeUserStatusInput\n

\n

Autogenerated input type of ChangeUserStatus.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

emoji (String)

The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., 😀.

\n\n\n\n\n\n\n\n\n\n\n\n

expiresAt (DateTime)

If set, the user status will not be shown after this date.

\n\n\n\n\n\n\n\n\n\n\n\n

limitedAvailability (Boolean)

Whether this status should indicate you are not fully available on GitHub, e.g., you are away.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String)

A short description of your current status.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID)

The ID of the organization whose members will be allowed to see the status. If\nomitted, the status will be publicly visible.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationData\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotationLevel (CheckAnnotationLevel!)

Represents an annotation's information level.

\n\n\n\n\n\n\n\n\n\n\n\n

location (CheckAnnotationRange!)

The location of the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

A short description of the feedback for these lines of code.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to add an annotation to.

\n\n\n\n\n\n\n\n\n\n\n\n

rawDetails (String)

Details about this annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title that represents the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationRange\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

endColumn (Int)

The ending column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

endLine (Int!)

The ending line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startColumn (Int)

The starting column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int!)

The starting line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunAction\n

\n

Possible further actions the integrator can perform.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

description (String!)

A short explanation of what this action would do.

\n\n\n\n\n\n\n\n\n\n\n\n

identifier (String!)

A reference for the action on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

label (String!)

The text to be displayed on a button in the web UI.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunFilter\n

\n

The filters that are available when fetching check runs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check runs created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check runs by this name.

\n\n\n\n\n\n\n\n\n\n\n\n

checkType (CheckRunType)

Filters the check runs by this type.

\n\n\n\n\n\n\n\n\n\n\n\n

status (CheckStatusState)

Filters the check runs by this status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutput\n

\n

Descriptive details about the check run.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotations ([CheckAnnotationData!])

The annotations that are made as part of the check run.

\n\n\n\n\n\n\n\n\n\n\n\n

images ([CheckRunOutputImage!])

Images attached to the check run output displayed in the GitHub pull request UI.

\n\n\n\n\n\n\n\n\n\n\n\n

summary (String!)

The summary of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

text (String)

The details of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

A title to provide for this check run.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutputImage\n

\n

Images attached to the check run output displayed in the GitHub pull request UI.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

alt (String!)

The alternative text for the image.

\n\n\n\n\n\n\n\n\n\n\n\n

caption (String)

A short image description.

\n\n\n\n\n\n\n\n\n\n\n\n

imageUrl (URI!)

The full URL of the image.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteAutoTriggerPreference\n

\n

The auto-trigger preferences that are available for check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (ID!)

The node ID of the application that owns the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

setting (Boolean!)

Set to true to enable automatic creation of CheckSuite events upon pushes to the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteFilter\n

\n

The filters that are available when fetching check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check suites created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check suites by this name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClearLabelsFromLabelableInput\n

\n

Autogenerated input type of ClearLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to clear the labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneProjectInput\n

\n

Autogenerated input type of CloneProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

includeWorkflows (Boolean!)

Whether or not to clone the source project's workflows.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

The visibility of the project, defaults to false (private).

\n\n\n\n\n\n\n\n\n\n\n\n

sourceId (ID!)

The source project to clone.

\n\n\n\n\n\n\n\n\n\n\n\n

targetOwnerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneTemplateRepositoryInput\n

\n

Autogenerated input type of CloneTemplateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

includeAllBranches (Boolean)

Whether to copy all branches from the template to the new repository. Defaults\nto copying only the default branch of the template.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the template repository.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloseIssueInput\n

\n

Autogenerated input type of CloseIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClosePullRequestInput\n

\n

Autogenerated input type of ClosePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitAuthor\n

\n

Specifies an author for filtering Git commits.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

emails ([String!])

Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID)

ID of a User to filter by. If non-null, only commits authored by this user\nwill be returned. This field takes precedence over emails.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitContributionOrder\n

\n

Ordering options for commit contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (CommitContributionOrderField!)

The field by which to order commit contributions.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ContributionOrder\n

\n

Ordering options for contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ConvertProjectCardNoteToIssueInput\n

\n

Autogenerated input type of ConvertProjectCardNoteToIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The body of the newly created issue.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to convert.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to create the issue in.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the newly created issue. Defaults to the card's note text.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateBranchProtectionRuleInput\n

\n

Autogenerated input type of CreateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String!)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The global relay id of the repository in which a new branch protection rule should be created in.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckRunInput\n

\n

Autogenerated input type of CreateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckSuiteInput\n

\n

Autogenerated input type of CreateCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateContentAttachmentInput\n

\n

Autogenerated input type of CreateContentAttachment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The body of the content attachment, which may contain markdown.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentReferenceId (ID!)

The node ID of the content_reference.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the content attachment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentInput\n

\n

Autogenerated input type of CreateDeployment.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoMerge (Boolean)

Attempt to automatically merge the default branch into the requested ref, defaults to true.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

Short description of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

Name for the target deployment environment.

\n\n\n\n\n\n\n\n\n\n\n\n

payload (String)

JSON payload with extra information about the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The node ID of the ref to be deployed.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredContexts ([String!])

The status contexts to verify against commit status checks. To bypass required\ncontexts, pass an empty array. Defaults to all unique contexts.

\n\n\n\n\n\n\n\n\n\n\n\n

task (String)

Specifies a task to execute.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentStatusInput\n

\n

Autogenerated input type of CreateDeploymentStatus.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentStatusInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoInactive (Boolean)

Adds a new inactive status to all non-transient, non-production environment\ndeployments with the same repository and environment name as the created\nstatus's deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

deploymentId (ID!)

The node ID of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the status. Maximum length of 140 characters.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

If provided, updates the environment of the deploy. Otherwise, does not modify the environment.

\n\n\n\n\n\n\n\n\n\n\n\n

environmentUrl (String)

Sets the URL for accessing your environment.

\n\n\n\n\n\n\n\n\n\n\n\n

logUrl (String)

The log URL to associate with this status. This URL should contain\noutput to keep the user updated while the task is running or serve as\nhistorical information for what happened in the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

state (DeploymentStatusState!)

The state of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateEnterpriseOrganizationInput\n

\n

Autogenerated input type of CreateEnterpriseOrganization.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

adminLogins ([String!]!)

The logins for the administrators of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

billingEmail (String!)

The email used for sending billing receipts.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise owning the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

profileName (String!)

The profile name of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIpAllowListEntryInput\n

\n

Autogenerated input type of CreateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for which to create the new IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIssueInput\n

\n

Autogenerated input type of CreateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

The Node ID for the user assignee for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueTemplate (String)

The name of an issue template in the repository, assigns labels and assignees from the template to the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateLabelInput\n

\n

Autogenerated input type of CreateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String!)

A 6 character hex code, without the leading #, identifying the color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateProjectInput\n

\n

Autogenerated input type of CreateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryIds ([ID!])

A list of repository IDs to create as linked repositories for the project.

\n\n\n\n\n\n\n\n\n\n\n\n

template (ProjectTemplate)

The name of the GitHub-provided template.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreatePullRequestInput\n

\n

Autogenerated input type of CreatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

baseRefName (String!)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository. You cannot update the base branch on a pull request to point\nto another repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

draft (Boolean)

Indicates whether this pull request should be a draft.

\n\n\n\n\n\n\n\n\n\n\n\n

headRefName (String!)

The name of the branch where your changes are implemented. For cross-repository pull requests\nin the same network, namespace head_ref_name with a user like this: username:branch.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRefInput\n

\n

Autogenerated input type of CreateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The fully qualified name of the new Ref (ie: refs/heads/my_new_branch).

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the new Ref shall target. Must point to a commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository to create the Ref in.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRepositoryInput\n

\n

Autogenerated input type of CreateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID)

When an organization is specified as the owner, this ID identifies the team\nthat should be granted access to the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionCommentInput\n

\n

Autogenerated input type of CreateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

discussionId (ID!)

The ID of the discussion to which the comment belongs.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionInput\n

\n

Autogenerated input type of CreateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

private (Boolean)

If true, restricts the visibility of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID!)

The ID of the team to which the discussion belongs.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteBranchProtectionRuleInput\n

\n

Autogenerated input type of DeleteBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteDeploymentInput\n

\n

Autogenerated input type of DeleteDeployment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the deployment to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIpAllowListEntryInput\n

\n

Autogenerated input type of DeleteIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueCommentInput\n

\n

Autogenerated input type of DeleteIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueInput\n

\n

Autogenerated input type of DeleteIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteLabelInput\n

\n

Autogenerated input type of DeleteLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

DeleteLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectCardInput\n

\n

Autogenerated input type of DeleteProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

cardId (ID!)

The id of the card to delete.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectColumnInput\n

\n

Autogenerated input type of DeleteProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectInput\n

\n

Autogenerated input type of DeleteProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewCommentInput\n

\n

Autogenerated input type of DeletePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewInput\n

\n

Autogenerated input type of DeletePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteRefInput\n

\n

Autogenerated input type of DeleteRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionCommentInput\n

\n

Autogenerated input type of DeleteTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionInput\n

\n

Autogenerated input type of DeleteTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The discussion ID to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteVerifiableDomainInput\n

\n

Autogenerated input type of DeleteVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeploymentOrder\n

\n

Ordering options for deployment connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (DeploymentOrderField!)

The field to order deployments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DisablePullRequestAutoMergeInput\n

\n

Autogenerated input type of DisablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to disable auto merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DismissPullRequestReviewInput\n

\n

Autogenerated input type of DismissPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

The contents of the pull request review dismissal message.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewComment\n

\n

Specifies a review comment to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

Position in the file to leave a comment on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewThread\n

\n

Specifies a review comment thread to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnablePullRequestAutoMergeInput\n

\n

Autogenerated input type of EnablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to enable auto-merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseAdministratorInvitationOrder\n

\n

Ordering options for enterprise administrator invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseAdministratorInvitationOrderField!)

The field to order enterprise administrator invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseMemberOrder\n

\n

Ordering options for enterprise member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseMemberOrderField!)

The field to order enterprise members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountEmailOrder\n

\n

Ordering options for Enterprise Server user account email connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountEmailOrderField!)

The field to order emails by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountOrder\n

\n

Ordering options for Enterprise Server user account connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountOrderField!)

The field to order user accounts by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountsUploadOrder\n

\n

Ordering options for Enterprise Server user accounts upload connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountsUploadOrderField!)

The field to order user accounts uploads by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n FollowUserInput\n

\n

Autogenerated input type of FollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to follow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n GistOrder\n

\n

Ordering options for gist connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (GistOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ImportProjectInput\n

\n

Autogenerated input type of ImportProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnImports ([ProjectColumnImport!]!)

A list of columns containing issues and pull requests.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerName (String!)

The name of the Organization or User to create the Project under.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the Project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IpAllowListEntryOrder\n

\n

Ordering options for IP allow list entry connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IpAllowListEntryOrderField!)

The field to order IP allow list entries by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueCommentOrder\n

\n

Ways in which lists of issue comments can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issue comments by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueCommentOrderField!)

The field in which to order issue comments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueFilters\n

\n

Ways in which to filter lists of issues.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignee (String)

List issues assigned to given name. Pass in null for issues with no assigned\nuser, and * for issues assigned to any user.

\n\n\n\n\n\n\n\n\n\n\n\n

createdBy (String)

List issues created by given name.

\n\n\n\n\n\n\n\n\n\n\n\n

labels ([String!])

List issues where the list of label names exist on the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

mentioned (String)

List issues where the given name is mentioned in the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestone (String)

List issues by given milestone argument. If an string representation of an\ninteger is passed, it should refer to a milestone by its number field. Pass in\nnull for issues with no milestone, and * for issues that are assigned to any milestone.

\n\n\n\n\n\n\n\n\n\n\n\n

since (DateTime)

List issues that have been updated at or after the given date.

\n\n\n\n\n\n\n\n\n\n\n\n

states ([IssueState!])

List issues filtered by the list of states given.

\n\n\n\n\n\n\n\n\n\n\n\n

viewerSubscribed (Boolean)

List issues subscribed to by viewer.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issues by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueOrderField!)

The field in which to order issues by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LabelOrder\n

\n

Ways in which lists of labels can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order labels by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LabelOrderField!)

The field in which to order labels by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LanguageOrder\n

\n

Ordering options for language connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LanguageOrderField!)

The field to order languages by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LinkRepositoryToProjectInput\n

\n

Autogenerated input type of LinkRepositoryToProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project to link to a Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository to link to a Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LockLockableInput\n

\n

Autogenerated input type of LockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockReason (LockReason)

A reason for why the item will be locked.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be locked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkFileAsViewedInput\n

\n

Autogenerated input type of MarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as viewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkPullRequestReadyForReviewInput\n

\n

Autogenerated input type of MarkPullRequestReadyForReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be marked as ready for review.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergeBranchInput\n

\n

Autogenerated input type of MergeBranch.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

base (String!)

The name of the base branch that the provided head will be merged into.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitMessage (String)

Message to use for the merge commit. If omitted, a default will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

head (String!)

The head to merge into the base branch. This can be a branch name or a commit GitObjectID.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository containing the base branch that will be modified.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergePullRequestInput\n

\n

Autogenerated input type of MergePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

expectedHeadOid (GitObjectID)

OID that the pull request head ref must match to allow merge; if omitted, no check is performed.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be merged.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MilestoneOrder\n

\n

Ordering options for milestone connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (MilestoneOrderField!)

The field to order milestones by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MinimizeCommentInput\n

\n

Autogenerated input type of MinimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

classifier (ReportedContentClassifiers!)

The classification of comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectCardInput\n

\n

Autogenerated input type of MoveProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterCardId (ID)

Place the new card after the card with this id. Pass null to place it at the top.

\n\n\n\n\n\n\n\n\n\n\n\n

cardId (ID!)

The id of the card to move.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move it into.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectColumnInput\n

\n

Autogenerated input type of MoveProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterColumnId (ID)

Place the new column after the column with this id. Pass null to place it at the front.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n OrganizationOrder\n

\n

Ordering options for organization connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (OrganizationOrderField!)

The field to order organizations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PinIssueInput\n

\n

Autogenerated input type of PinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be pinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectCardImport\n

\n

An issue or PR and its owning repository to be used in a project card.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

number (Int!)

The issue or pull request number.

\n\n\n\n\n\n\n\n\n\n\n\n

repository (String!)

Repository name with owner (owner/repository).

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectColumnImport\n

\n

A project column and a list of its issues and PRs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

columnName (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

issues ([ProjectCardImport!])

A list of issues and pull requests in the column.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

The position of the column, starting from 0.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectOrder\n

\n

Ways in which lists of projects can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order projects by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ProjectOrderField!)

The field in which to order projects by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PullRequestOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order pull requests by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PullRequestOrderField!)

The field in which to order pull requests by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReactionOrder\n

\n

Ways in which lists of reactions can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order reactions by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReactionOrderField!)

The field in which to order reactions by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefOrder\n

\n

Ways in which lists of git refs can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order refs by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RefOrderField!)

The field in which to order refs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefUpdate\n

\n

A ref update.

\n
\n\n
\n \n
\n

Preview notice

\n

RefUpdate is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterOid (GitObjectID!)

The value this ref should be updated to.

\n\n\n\n\n\n\n\n\n\n\n\n

beforeOid (GitObjectID)

The value this ref needs to point to before the update.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Force a non fast-forward update.

\n\n\n\n\n\n\n\n\n\n\n\n

name (GitRefname!)

The fully qualified name of the ref to be update. For example refs/heads/branch-name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RegenerateVerifiableDomainTokenInput\n

\n

Autogenerated input type of RegenerateVerifiableDomainToken.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to regenerate the verification token of.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReleaseOrder\n

\n

Ways in which lists of releases can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order releases by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReleaseOrderField!)

The field in which to order releases by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveAssigneesFromAssignableInput\n

\n

Autogenerated input type of RemoveAssigneesFromAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to remove assignees from.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to remove as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseAdminInput\n

\n

Autogenerated input type of RemoveEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID from which to remove the administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the user to remove as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveLabelsFromLabelableInput\n

\n

Autogenerated input type of RemoveLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of labels to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the Labelable to remove labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveOutsideCollaboratorInput\n

\n

Autogenerated input type of RemoveOutsideCollaborator.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to remove the outside collaborator from.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

The ID of the outside collaborator to remove.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveReactionInput\n

\n

Autogenerated input type of RemoveReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji reaction to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveStarInput\n

\n

Autogenerated input type of RemoveStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to unstar.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenIssueInput\n

\n

Autogenerated input type of ReopenIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be opened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenPullRequestInput\n

\n

Autogenerated input type of ReopenPullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be reopened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryInvitationOrder\n

\n

Ordering options for repository invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryInvitationOrderField!)

The field to order repository invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryOrder\n

\n

Ordering options for repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RequestReviewsInput\n

\n

Autogenerated input type of RequestReviews.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

teamIds ([ID!])

The Node IDs of the team to request.

\n\n\n\n\n\n\n\n\n\n\n\n

union (Boolean)

Add users to the set rather than replace.

\n\n\n\n\n\n\n\n\n\n\n\n

userIds ([ID!])

The Node IDs of the user to request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RerequestCheckSuiteInput\n

\n

Autogenerated input type of RerequestCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

checkSuiteId (ID!)

The Node ID of the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ResolveReviewThreadInput\n

\n

Autogenerated input type of ResolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to resolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SavedReplyOrder\n

\n

Ordering options for saved reply connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SavedReplyOrderField!)

The field to order saved replies by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorshipOrder\n

\n

Ordering options for sponsorship connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n StarOrder\n

\n

Ways in which star connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (StarOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SubmitPullRequestReviewInput\n

\n

Autogenerated input type of SubmitPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The text field to set on the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent!)

The event to send to the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The Pull Request ID to submit any pending reviews.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Pull Request Review ID to submit.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionCommentOrder\n

\n

Ways in which team discussion comment connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionCommentOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionOrder\n

\n

Ways in which team discussion connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamMemberOrder\n

\n

Ordering options for team member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamMemberOrderField!)

The field to order team members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamOrder\n

\n

Ways in which team connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamRepositoryOrder\n

\n

Ordering options for team repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamRepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TransferIssueInput\n

\n

Autogenerated input type of TransferIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The Node ID of the issue to be transferred.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository the issue should be transferred to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnarchiveRepositoryInput\n

\n

Autogenerated input type of UnarchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to unarchive.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnfollowUserInput\n

\n

Autogenerated input type of UnfollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to unfollow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlinkRepositoryFromProjectInput\n

\n

Autogenerated input type of UnlinkRepositoryFromProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project linked to the Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository linked to the Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlockLockableInput\n

\n

Autogenerated input type of UnlockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be unlocked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkFileAsViewedInput\n

\n

Autogenerated input type of UnmarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as unviewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkIssueAsDuplicateInput\n

\n

Autogenerated input type of UnmarkIssueAsDuplicate.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

canonicalId (ID!)

ID of the issue or pull request currently considered canonical/authoritative/original.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

duplicateId (ID!)

ID of the issue or pull request currently marked as a duplicate.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnminimizeCommentInput\n

\n

Autogenerated input type of UnminimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnpinIssueInput\n

\n

Autogenerated input type of UnpinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be unpinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnresolveReviewThreadInput\n

\n

Autogenerated input type of UnresolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to unresolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateBranchProtectionRuleInput\n

\n

Autogenerated input type of UpdateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckRunInput\n

\n

Autogenerated input type of UpdateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

checkRunId (ID!)

The node of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckSuitePreferencesInput\n

\n

Autogenerated input type of UpdateCheckSuitePreferences.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoTriggerPreferences ([CheckSuiteAutoTriggerPreference!]!)

The check suite preferences to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseAllowPrivateRepositoryForkingSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the allow private repository forking setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the allow private repository forking setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseDefaultRepositoryPermissionSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseDefaultRepositoryPermissionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the default repository permission setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseDefaultRepositoryPermissionSettingValue!)

The value for the default repository permission setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can change repository visibility setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can change repository visibility setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanCreateRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanCreateRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can create repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateInternalRepositories (Boolean)

Allow members to create internal repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePrivateRepositories (Boolean)

Allow members to create private repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePublicRepositories (Boolean)

Allow members to create public repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateRepositoriesPolicyEnabled (Boolean)

When false, allow member organizations to set their own repository creation member privileges.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanCreateRepositoriesSettingValue)

Value for the members can create repositories setting on the enterprise. This\nor the granular public/private/internal allowed fields (but not both) must be provided.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteIssuesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteIssuesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete issues setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete issues setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete repositories setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanInviteCollaboratorsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can invite collaborators setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can invite collaborators setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanMakePurchasesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanMakePurchasesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can make purchases setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanMakePurchasesSettingValue!)

The value for the members can make purchases setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can update protected branches setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can update protected branches setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanViewDependencyInsightsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can view dependency insights setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can view dependency insights setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseOrganizationProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseOrganizationProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the organization projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the organization projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseProfileInput\n

\n

Autogenerated input type of UpdateEnterpriseProfile.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

The description of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

location (String)

The location of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

websiteUrl (String)

The URL of the enterprise's website.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseRepositoryProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseRepositoryProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the repository projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the repository projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTeamDiscussionsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTeamDiscussionsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the team discussions setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the team discussions setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTwoFactorAuthenticationRequiredSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the two factor authentication required setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledSettingValue!)

The value for the two factor authentication required setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEnabledSettingInput\n

\n

Autogenerated input type of UpdateIpAllowListEnabledSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (IpAllowListEnabledSettingValue!)

The value for the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEntryInput\n

\n

Autogenerated input type of UpdateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to update.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueCommentInput\n

\n

Autogenerated input type of UpdateIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the IssueComment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueInput\n

\n

Autogenerated input type of UpdateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the Issue to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

state (IssueState)

The desired issue state.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateLabelInput\n

\n

Autogenerated input type of UpdateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String)

A 6 character hex code, without the leading #, identifying the updated color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The updated name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateNotificationRestrictionSettingInput\n

\n

Autogenerated input type of UpdateNotificationRestrictionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (NotificationRestrictionSettingValue!)

The value for the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectCardInput\n

\n

Autogenerated input type of UpdateProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isArchived (Boolean)

Whether or not the ProjectCard should be archived.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note of ProjectCard.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectColumnInput\n

\n

Autogenerated input type of UpdateProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The ProjectColumn ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectInput\n

\n

Autogenerated input type of UpdateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n

state (ProjectState)

Whether the project is open or closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestInput\n

\n

Autogenerated input type of UpdatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

baseRefName (String)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

state (PullRequestUpdateState)

The target state of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewCommentInput\n

\n

Autogenerated input type of UpdatePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewCommentId (ID!)

The Node ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewInput\n

\n

Autogenerated input type of UpdatePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the pull request review body.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefInput\n

\n

Autogenerated input type of UpdateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Permit updates of branch Refs that are not fast-forwards?.

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the Ref shall be updated to target.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefsInput\n

\n

Autogenerated input type of UpdateRefs.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateRefsInput is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refUpdates ([RefUpdate!]!)

A list of ref updates.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRepositoryInput\n

\n

Autogenerated input type of UpdateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A new description for the repository. Pass an empty string to erase the existing description.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasProjectsEnabled (Boolean)

Indicates if the repository should have the project boards feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository. Pass an empty string to erase the existing URL.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The new name of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to update.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateSubscriptionInput\n

\n

Autogenerated input type of UpdateSubscription.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

state (SubscriptionState!)

The new state of the subscription.

\n\n\n\n\n\n\n\n\n\n\n\n

subscribableId (ID!)

The Node ID of the subscribable object to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionCommentInput\n

\n

Autogenerated input type of UpdateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionInput\n

\n

Autogenerated input type of UpdateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The updated text of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content. If provided, this update operation\nwill be rejected if the given version does not match the latest version on the server.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the discussion to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

pinned (Boolean)

If provided, sets the pinned state of the updated discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The updated title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamReviewAssignmentInput\n

\n

Autogenerated input type of UpdateTeamReviewAssignment.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateTeamReviewAssignmentInput is available under the Team review assignments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

algorithm (TeamReviewAssignmentAlgorithm)

The algorithm to use for review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enabled (Boolean!)

Turn on or off review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

excludedTeamMemberIds ([ID!])

An array of team member IDs to exclude.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the team to update review assignments of.

\n\n\n\n\n\n\n\n\n\n\n\n

notifyTeam (Boolean)

Notify the entire team of the PR if it is delegated.

\n\n\n\n\n\n\n\n\n\n\n\n

teamMemberCount (Int)

The number of team members to assign.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTopicsInput\n

\n

Autogenerated input type of UpdateTopics.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

topicNames ([String!]!)

An array of topic names.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UserStatusOrder\n

\n

Ordering options for user status connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (UserStatusOrderField!)

The field to order user statuses by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifiableDomainOrder\n

\n

Ordering options for verifiable domain connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (VerifiableDomainOrderField!)

The field to order verifiable domains by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifyVerifiableDomainInput\n

\n

Autogenerated input type of VerifyVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to verify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n", + "html": "
\n
\n

\n AddAssigneesToAssignableInput\n

\n

Autogenerated input type of AddAssigneesToAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to add assignees to.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to add as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddCommentInput\n

\n

Autogenerated input type of AddComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddEnterpriseAdminInput\n

\n

Autogenerated input type of AddEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise account to which the administrator should be added.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the user to add as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddLabelsToLabelableInput\n

\n

Autogenerated input type of AddLabelsToLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of the labels to add.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to add labels to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectCardInput\n

\n

Autogenerated input type of AddProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentId (ID)

The content of the card. Must be a member of the ProjectCardItem union.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note on the card.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The Node ID of the ProjectColumn.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddProjectColumnInput\n

\n

Autogenerated input type of AddProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Node ID of the project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewCommentInput\n

\n

Autogenerated input type of AddPullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The SHA of the commit to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

inReplyTo (ID)

The comment id to reply to.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String)

The relative path of the file to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int)

The line index in the diff to comment on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewInput\n

\n

Autogenerated input type of AddPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The contents of the review body comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

comments ([DraftPullRequestReviewComment])

The review line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

commitOID (GitObjectID)

The commit OID the review pertains to.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent)

The event to perform on the pull request review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

threads ([DraftPullRequestReviewThread])

The review line comment threads.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddPullRequestReviewThreadInput\n

\n

Autogenerated input type of AddPullRequestReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the thread's first comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The node ID of the pull request reviewing.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Node ID of the review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddReactionInput\n

\n

Autogenerated input type of AddReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji to react with.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddStarInput\n

\n

Autogenerated input type of AddStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to star.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AddVerifiableDomainInput\n

\n

Autogenerated input type of AddVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

domain (URI!)

The URL of the domain.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner to add the domain to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ApproveVerifiableDomainInput\n

\n

Autogenerated input type of ApproveVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to approve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ArchiveRepositoryInput\n

\n

Autogenerated input type of ArchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to mark as archived.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n AuditLogOrder\n

\n

Ordering options for Audit Log connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (AuditLogOrderField)

The field to order Audit Logs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ChangeUserStatusInput\n

\n

Autogenerated input type of ChangeUserStatus.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

emoji (String)

The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., 😀.

\n\n\n\n\n\n\n\n\n\n\n\n

expiresAt (DateTime)

If set, the user status will not be shown after this date.

\n\n\n\n\n\n\n\n\n\n\n\n

limitedAvailability (Boolean)

Whether this status should indicate you are not fully available on GitHub, e.g., you are away.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String)

A short description of your current status.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID)

The ID of the organization whose members will be allowed to see the status. If\nomitted, the status will be publicly visible.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationData\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotationLevel (CheckAnnotationLevel!)

Represents an annotation's information level.

\n\n\n\n\n\n\n\n\n\n\n\n

location (CheckAnnotationRange!)

The location of the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

A short description of the feedback for these lines of code.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to add an annotation to.

\n\n\n\n\n\n\n\n\n\n\n\n

rawDetails (String)

Details about this annotation.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title that represents the annotation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckAnnotationRange\n

\n

Information from a check run analysis to specific lines of code.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

endColumn (Int)

The ending column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

endLine (Int!)

The ending line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startColumn (Int)

The starting column of the range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int!)

The starting line of the range.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunAction\n

\n

Possible further actions the integrator can perform.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

description (String!)

A short explanation of what this action would do.

\n\n\n\n\n\n\n\n\n\n\n\n

identifier (String!)

A reference for the action on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

label (String!)

The text to be displayed on a button in the web UI.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunFilter\n

\n

The filters that are available when fetching check runs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check runs created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check runs by this name.

\n\n\n\n\n\n\n\n\n\n\n\n

checkType (CheckRunType)

Filters the check runs by this type.

\n\n\n\n\n\n\n\n\n\n\n\n

status (CheckStatusState)

Filters the check runs by this status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutput\n

\n

Descriptive details about the check run.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

annotations ([CheckAnnotationData!])

The annotations that are made as part of the check run.

\n\n\n\n\n\n\n\n\n\n\n\n

images ([CheckRunOutputImage!])

Images attached to the check run output displayed in the GitHub pull request UI.

\n\n\n\n\n\n\n\n\n\n\n\n

summary (String!)

The summary of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

text (String)

The details of the check run (supports Commonmark).

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

A title to provide for this check run.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckRunOutputImage\n

\n

Images attached to the check run output displayed in the GitHub pull request UI.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

alt (String!)

The alternative text for the image.

\n\n\n\n\n\n\n\n\n\n\n\n

caption (String)

A short image description.

\n\n\n\n\n\n\n\n\n\n\n\n

imageUrl (URI!)

The full URL of the image.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteAutoTriggerPreference\n

\n

The auto-trigger preferences that are available for check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (ID!)

The node ID of the application that owns the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

setting (Boolean!)

Set to true to enable automatic creation of CheckSuite events upon pushes to the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CheckSuiteFilter\n

\n

The filters that are available when fetching check suites.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

appId (Int)

Filters the check suites created by this application ID.

\n\n\n\n\n\n\n\n\n\n\n\n

checkName (String)

Filters the check suites by this name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClearLabelsFromLabelableInput\n

\n

Autogenerated input type of ClearLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the labelable object to clear the labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneProjectInput\n

\n

Autogenerated input type of CloneProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

includeWorkflows (Boolean!)

Whether or not to clone the source project's workflows.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the project.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

The visibility of the project, defaults to false (private).

\n\n\n\n\n\n\n\n\n\n\n\n

sourceId (ID!)

The source project to clone.

\n\n\n\n\n\n\n\n\n\n\n\n

targetOwnerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloneTemplateRepositoryInput\n

\n

Autogenerated input type of CloneTemplateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

includeAllBranches (Boolean)

Whether to copy all branches from the template to the new repository. Defaults\nto copying only the default branch of the template.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the template repository.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CloseIssueInput\n

\n

Autogenerated input type of CloseIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ClosePullRequestInput\n

\n

Autogenerated input type of ClosePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitAuthor\n

\n

Specifies an author for filtering Git commits.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

emails ([String!])

Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID)

ID of a User to filter by. If non-null, only commits authored by this user\nwill be returned. This field takes precedence over emails.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CommitContributionOrder\n

\n

Ordering options for commit contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (CommitContributionOrderField!)

The field by which to order commit contributions.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ContributionOrder\n

\n

Ordering options for contribution connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ConvertProjectCardNoteToIssueInput\n

\n

Autogenerated input type of ConvertProjectCardNoteToIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The body of the newly created issue.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to convert.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to create the issue in.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the newly created issue. Defaults to the card's note text.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ConvertPullRequestToDraftInput\n

\n

Autogenerated input type of ConvertPullRequestToDraft.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to convert to draft.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateBranchProtectionRuleInput\n

\n

Autogenerated input type of CreateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String!)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The global relay id of the repository in which a new branch protection rule should be created in.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckRunInput\n

\n

Autogenerated input type of CreateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateCheckSuiteInput\n

\n

Autogenerated input type of CreateCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

headSha (GitObjectID!)

The SHA of the head commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateContentAttachmentInput\n

\n

Autogenerated input type of CreateContentAttachment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The body of the content attachment, which may contain markdown.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

contentReferenceId (ID!)

The node ID of the content_reference.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the content attachment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentInput\n

\n

Autogenerated input type of CreateDeployment.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoMerge (Boolean)

Attempt to automatically merge the default branch into the requested ref, defaults to true.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

Short description of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

Name for the target deployment environment.

\n\n\n\n\n\n\n\n\n\n\n\n

payload (String)

JSON payload with extra information about the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The node ID of the ref to be deployed.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredContexts ([String!])

The status contexts to verify against commit status checks. To bypass required\ncontexts, pass an empty array. Defaults to all unique contexts.

\n\n\n\n\n\n\n\n\n\n\n\n

task (String)

Specifies a task to execute.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateDeploymentStatusInput\n

\n

Autogenerated input type of CreateDeploymentStatus.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateDeploymentStatusInput is available under the Deployments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoInactive (Boolean)

Adds a new inactive status to all non-transient, non-production environment\ndeployments with the same repository and environment name as the created\nstatus's deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

deploymentId (ID!)

The node ID of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the status. Maximum length of 140 characters.

\n\n\n\n\n\n\n\n\n\n\n\n

environment (String)

If provided, updates the environment of the deploy. Otherwise, does not modify the environment.

\n\n\n\n\n\n\n\n\n\n\n\n

environmentUrl (String)

Sets the URL for accessing your environment.

\n\n\n\n\n\n\n\n\n\n\n\n

logUrl (String)

The log URL to associate with this status. This URL should contain\noutput to keep the user updated while the task is running or serve as\nhistorical information for what happened in the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n

state (DeploymentStatusState!)

The state of the deployment.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateEnterpriseOrganizationInput\n

\n

Autogenerated input type of CreateEnterpriseOrganization.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

adminLogins ([String!]!)

The logins for the administrators of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

billingEmail (String!)

The email used for sending billing receipts.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise owning the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n

profileName (String!)

The profile name of the new organization.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIpAllowListEntryInput\n

\n

Autogenerated input type of CreateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner for which to create the new IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateIssueInput\n

\n

Autogenerated input type of CreateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

The Node ID for the user assignee for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueTemplate (String)

The name of an issue template in the repository, assigns labels and assignees from the template to the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateLabelInput\n

\n

Autogenerated input type of CreateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

CreateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String!)

A 6 character hex code, without the leading #, identifying the color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateProjectInput\n

\n

Autogenerated input type of CreateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The owner ID to create the project under.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryIds ([ID!])

A list of repository IDs to create as linked repositories for the project.

\n\n\n\n\n\n\n\n\n\n\n\n

template (ProjectTemplate)

The name of the GitHub-provided template.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreatePullRequestInput\n

\n

Autogenerated input type of CreatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

baseRefName (String!)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository. You cannot update the base branch on a pull request to point\nto another repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

draft (Boolean)

Indicates whether this pull request should be a draft.

\n\n\n\n\n\n\n\n\n\n\n\n

headRefName (String!)

The name of the branch where your changes are implemented. For cross-repository pull requests\nin the same network, namespace head_ref_name with a user like this: username:branch.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRefInput\n

\n

Autogenerated input type of CreateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The fully qualified name of the new Ref (ie: refs/heads/my_new_branch).

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the new Ref shall target. Must point to a commit.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository to create the Ref in.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateRepositoryInput\n

\n

Autogenerated input type of CreateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A short description of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID)

The ID of the owner for the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID)

When an organization is specified as the owner, this ID identifies the team\nthat should be granted access to the new repository.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionCommentInput\n

\n

Autogenerated input type of CreateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

discussionId (ID!)

The ID of the discussion to which the comment belongs.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n CreateTeamDiscussionInput\n

\n

Autogenerated input type of CreateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The content of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

private (Boolean)

If true, restricts the visibility of this discussion to team members and\norganization admins. If false or not specified, allows any organization member\nto view this discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

teamId (ID!)

The ID of the team to which the discussion belongs.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String!)

The title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteBranchProtectionRuleInput\n

\n

Autogenerated input type of DeleteBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteDeploymentInput\n

\n

Autogenerated input type of DeleteDeployment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the deployment to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIpAllowListEntryInput\n

\n

Autogenerated input type of DeleteIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueCommentInput\n

\n

Autogenerated input type of DeleteIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteIssueInput\n

\n

Autogenerated input type of DeleteIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteLabelInput\n

\n

Autogenerated input type of DeleteLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

DeleteLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectCardInput\n

\n

Autogenerated input type of DeleteProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

cardId (ID!)

The id of the card to delete.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectColumnInput\n

\n

Autogenerated input type of DeleteProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteProjectInput\n

\n

Autogenerated input type of DeleteProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewCommentInput\n

\n

Autogenerated input type of DeletePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeletePullRequestReviewInput\n

\n

Autogenerated input type of DeletePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteRefInput\n

\n

Autogenerated input type of DeleteRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionCommentInput\n

\n

Autogenerated input type of DeleteTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteTeamDiscussionInput\n

\n

Autogenerated input type of DeleteTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The discussion ID to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeleteVerifiableDomainInput\n

\n

Autogenerated input type of DeleteVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to delete.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DeploymentOrder\n

\n

Ordering options for deployment connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (DeploymentOrderField!)

The field to order deployments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DisablePullRequestAutoMergeInput\n

\n

Autogenerated input type of DisablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to disable auto merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DismissPullRequestReviewInput\n

\n

Autogenerated input type of DismissPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

message (String!)

The contents of the pull request review dismissal message.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewComment\n

\n

Specifies a review comment to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

Position in the file to leave a comment on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n DraftPullRequestReviewThread\n

\n

Specifies a review comment thread to be left with a Pull Request Review.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

Body of the comment to leave.

\n\n\n\n\n\n\n\n\n\n\n\n

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

Path to the file being commented on.

\n\n\n\n\n\n\n\n\n\n\n\n

side (DiffSide)

The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.

\n\n\n\n\n\n\n\n\n\n\n\n

startLine (Int)

The first line of the range to which the comment refers.

\n\n\n\n\n\n\n\n\n\n\n\n

startSide (DiffSide)

The side of the diff on which the start line resides.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnablePullRequestAutoMergeInput\n

\n

Autogenerated input type of EnablePullRequestAutoMerge.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the commit when the PR is mergable; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to enable auto-merge on.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseAdministratorInvitationOrder\n

\n

Ordering options for enterprise administrator invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseAdministratorInvitationOrderField!)

The field to order enterprise administrator invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseMemberOrder\n

\n

Ordering options for enterprise member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseMemberOrderField!)

The field to order enterprise members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountEmailOrder\n

\n

Ordering options for Enterprise Server user account email connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountEmailOrderField!)

The field to order emails by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountOrder\n

\n

Ordering options for Enterprise Server user account connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountOrderField!)

The field to order user accounts by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n EnterpriseServerUserAccountsUploadOrder\n

\n

Ordering options for Enterprise Server user accounts upload connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (EnterpriseServerUserAccountsUploadOrderField!)

The field to order user accounts uploads by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n FollowUserInput\n

\n

Autogenerated input type of FollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to follow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n GistOrder\n

\n

Ordering options for gist connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (GistOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ImportProjectInput\n

\n

Autogenerated input type of ImportProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnImports ([ProjectColumnImport!]!)

A list of columns containing issues and pull requests.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of Project.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerName (String!)

The name of the Organization or User to create the Project under.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the Project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IpAllowListEntryOrder\n

\n

Ordering options for IP allow list entry connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IpAllowListEntryOrderField!)

The field to order IP allow list entries by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueCommentOrder\n

\n

Ways in which lists of issue comments can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issue comments by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueCommentOrderField!)

The field in which to order issue comments by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueFilters\n

\n

Ways in which to filter lists of issues.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignee (String)

List issues assigned to given name. Pass in null for issues with no assigned\nuser, and * for issues assigned to any user.

\n\n\n\n\n\n\n\n\n\n\n\n

createdBy (String)

List issues created by given name.

\n\n\n\n\n\n\n\n\n\n\n\n

labels ([String!])

List issues where the list of label names exist on the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

mentioned (String)

List issues where the given name is mentioned in the issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestone (String)

List issues by given milestone argument. If an string representation of an\ninteger is passed, it should refer to a milestone by its number field. Pass in\nnull for issues with no milestone, and * for issues that are assigned to any milestone.

\n\n\n\n\n\n\n\n\n\n\n\n

since (DateTime)

List issues that have been updated at or after the given date.

\n\n\n\n\n\n\n\n\n\n\n\n

states ([IssueState!])

List issues filtered by the list of states given.

\n\n\n\n\n\n\n\n\n\n\n\n

viewerSubscribed (Boolean)

List issues subscribed to by viewer.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n IssueOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order issues by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (IssueOrderField!)

The field in which to order issues by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LabelOrder\n

\n

Ways in which lists of labels can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order labels by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LabelOrderField!)

The field in which to order labels by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LanguageOrder\n

\n

Ordering options for language connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (LanguageOrderField!)

The field to order languages by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LinkRepositoryToProjectInput\n

\n

Autogenerated input type of LinkRepositoryToProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project to link to a Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository to link to a Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n LockLockableInput\n

\n

Autogenerated input type of LockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockReason (LockReason)

A reason for why the item will be locked.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be locked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkFileAsViewedInput\n

\n

Autogenerated input type of MarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as viewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MarkPullRequestReadyForReviewInput\n

\n

Autogenerated input type of MarkPullRequestReadyForReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be marked as ready for review.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergeBranchInput\n

\n

Autogenerated input type of MergeBranch.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

base (String!)

The name of the base branch that the provided head will be merged into.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitMessage (String)

Message to use for the merge commit. If omitted, a default will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

head (String!)

The head to merge into the base branch. This can be a branch name or a commit GitObjectID.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the Repository containing the base branch that will be modified.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MergePullRequestInput\n

\n

Autogenerated input type of MergePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

authorEmail (String)

The email address to associate with this merge.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

commitBody (String)

Commit body to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

commitHeadline (String)

Commit headline to use for the merge commit; if omitted, a default message will be used.

\n\n\n\n\n\n\n\n\n\n\n\n

expectedHeadOid (GitObjectID)

OID that the pull request head ref must match to allow merge; if omitted, no check is performed.

\n\n\n\n\n\n\n\n\n\n\n\n

mergeMethod (PullRequestMergeMethod)

The merge method to use. If omitted, defaults to 'MERGE'.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be merged.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MilestoneOrder\n

\n

Ordering options for milestone connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (MilestoneOrderField!)

The field to order milestones by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MinimizeCommentInput\n

\n

Autogenerated input type of MinimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

classifier (ReportedContentClassifiers!)

The classification of comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectCardInput\n

\n

Autogenerated input type of MoveProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterCardId (ID)

Place the new card after the card with this id. Pass null to place it at the top.

\n\n\n\n\n\n\n\n\n\n\n\n

cardId (ID!)

The id of the card to move.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move it into.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n MoveProjectColumnInput\n

\n

Autogenerated input type of MoveProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterColumnId (ID)

Place the new column after the column with this id. Pass null to place it at the front.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

columnId (ID!)

The id of the column to move.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n OrganizationOrder\n

\n

Ordering options for organization connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (OrganizationOrderField!)

The field to order organizations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PinIssueInput\n

\n

Autogenerated input type of PinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be pinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectCardImport\n

\n

An issue or PR and its owning repository to be used in a project card.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

number (Int!)

The issue or pull request number.

\n\n\n\n\n\n\n\n\n\n\n\n

repository (String!)

Repository name with owner (owner/repository).

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectColumnImport\n

\n

A project column and a list of its issues and PRs.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

columnName (String!)

The name of the column.

\n\n\n\n\n\n\n\n\n\n\n\n

issues ([ProjectCardImport!])

A list of issues and pull requests in the column.

\n\n\n\n\n\n\n\n\n\n\n\n

position (Int!)

The position of the column, starting from 0.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ProjectOrder\n

\n

Ways in which lists of projects can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order projects by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ProjectOrderField!)

The field in which to order projects by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n PullRequestOrder\n

\n

Ways in which lists of issues can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order pull requests by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (PullRequestOrderField!)

The field in which to order pull requests by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReactionOrder\n

\n

Ways in which lists of reactions can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order reactions by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReactionOrderField!)

The field in which to order reactions by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefOrder\n

\n

Ways in which lists of git refs can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order refs by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RefOrderField!)

The field in which to order refs by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RefUpdate\n

\n

A ref update.

\n
\n\n
\n \n
\n

Preview notice

\n

RefUpdate is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

afterOid (GitObjectID!)

The value this ref should be updated to.

\n\n\n\n\n\n\n\n\n\n\n\n

beforeOid (GitObjectID)

The value this ref needs to point to before the update.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Force a non fast-forward update.

\n\n\n\n\n\n\n\n\n\n\n\n

name (GitRefname!)

The fully qualified name of the ref to be update. For example refs/heads/branch-name.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RegenerateVerifiableDomainTokenInput\n

\n

Autogenerated input type of RegenerateVerifiableDomainToken.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to regenerate the verification token of.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReleaseOrder\n

\n

Ways in which lists of releases can be ordered upon return.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order releases by the specified field.

\n\n\n\n\n\n\n\n\n\n\n\n

field (ReleaseOrderField!)

The field in which to order releases by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveAssigneesFromAssignableInput\n

\n

Autogenerated input type of RemoveAssigneesFromAssignable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assignableId (ID!)

The id of the assignable object to remove assignees from.

\n\n\n\n\n\n\n\n\n\n\n\n

assigneeIds ([ID!]!)

The id of users to remove as assignees.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveEnterpriseAdminInput\n

\n

Autogenerated input type of RemoveEnterpriseAdmin.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID from which to remove the administrator.

\n\n\n\n\n\n\n\n\n\n\n\n

login (String!)

The login of the user to remove as an administrator.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveLabelsFromLabelableInput\n

\n

Autogenerated input type of RemoveLabelsFromLabelable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!]!)

The ids of labels to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

labelableId (ID!)

The id of the Labelable to remove labels from.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveOutsideCollaboratorInput\n

\n

Autogenerated input type of RemoveOutsideCollaborator.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

organizationId (ID!)

The ID of the organization to remove the outside collaborator from.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

The ID of the outside collaborator to remove.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveReactionInput\n

\n

Autogenerated input type of RemoveReaction.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

content (ReactionContent!)

The name of the emoji reaction to remove.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RemoveStarInput\n

\n

Autogenerated input type of RemoveStar.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

starrableId (ID!)

The Starrable ID to unstar.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenIssueInput\n

\n

Autogenerated input type of ReopenIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

ID of the issue to be opened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ReopenPullRequestInput\n

\n

Autogenerated input type of ReopenPullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

ID of the pull request to be reopened.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryInvitationOrder\n

\n

Ordering options for repository invitation connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryInvitationOrderField!)

The field to order repository invitations by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RepositoryOrder\n

\n

Ordering options for repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (RepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RequestReviewsInput\n

\n

Autogenerated input type of RequestReviews.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

teamIds ([ID!])

The Node IDs of the team to request.

\n\n\n\n\n\n\n\n\n\n\n\n

union (Boolean)

Add users to the set rather than replace.

\n\n\n\n\n\n\n\n\n\n\n\n

userIds ([ID!])

The Node IDs of the user to request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n RerequestCheckSuiteInput\n

\n

Autogenerated input type of RerequestCheckSuite.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

checkSuiteId (ID!)

The Node ID of the check suite.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n ResolveReviewThreadInput\n

\n

Autogenerated input type of ResolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to resolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SavedReplyOrder\n

\n

Ordering options for saved reply connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (SavedReplyOrderField!)

The field to order saved replies by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SponsorshipOrder\n

\n

Ordering options for sponsorship connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n StarOrder\n

\n

Ways in which star connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (StarOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n SubmitPullRequestReviewInput\n

\n

Autogenerated input type of SubmitPullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The text field to set on the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

event (PullRequestReviewEvent!)

The event to send to the Pull Request Review.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID)

The Pull Request ID to submit any pending reviews.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID)

The Pull Request Review ID to submit.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionCommentOrder\n

\n

Ways in which team discussion comment connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionCommentOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamDiscussionOrder\n

\n

Ways in which team discussion connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamDiscussionOrderField!)

The field by which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamMemberOrder\n

\n

Ordering options for team member connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamMemberOrderField!)

The field to order team members by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamOrder\n

\n

Ways in which team connections can be ordered.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The direction in which to order nodes.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamOrderField!)

The field in which to order nodes by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TeamRepositoryOrder\n

\n

Ordering options for team repository connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (TeamRepositoryOrderField!)

The field to order repositories by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n TransferIssueInput\n

\n

Autogenerated input type of TransferIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The Node ID of the issue to be transferred.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository the issue should be transferred to.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnarchiveRepositoryInput\n

\n

Autogenerated input type of UnarchiveRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to unarchive.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnfollowUserInput\n

\n

Autogenerated input type of UnfollowUser.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

userId (ID!)

ID of the user to unfollow.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlinkRepositoryFromProjectInput\n

\n

Autogenerated input type of UnlinkRepositoryFromProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The ID of the Project linked to the Repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the Repository linked to the Project.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnlockLockableInput\n

\n

Autogenerated input type of UnlockLockable.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

lockableId (ID!)

ID of the item to be unlocked.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkFileAsViewedInput\n

\n

Autogenerated input type of UnmarkFileAsViewed.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

path (String!)

The path of the file to mark as unviewed.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnmarkIssueAsDuplicateInput\n

\n

Autogenerated input type of UnmarkIssueAsDuplicate.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

canonicalId (ID!)

ID of the issue or pull request currently considered canonical/authoritative/original.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

duplicateId (ID!)

ID of the issue or pull request currently marked as a duplicate.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnminimizeCommentInput\n

\n

Autogenerated input type of UnminimizeComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

subjectId (ID!)

The Node ID of the subject to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnpinIssueInput\n

\n

Autogenerated input type of UnpinIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

issueId (ID!)

The ID of the issue to be unpinned.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UnresolveReviewThreadInput\n

\n

Autogenerated input type of UnresolveReviewThread.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

threadId (ID!)

The ID of the thread to unresolve.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateBranchProtectionRuleInput\n

\n

Autogenerated input type of UpdateBranchProtectionRule.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

\n\n\n\n\n\n\n\n\n\n\n\n

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

branchProtectionRuleId (ID!)

The global relay id of the branch protection rule to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

dismissesStaleReviews (Boolean)

Will new commits pushed to matching branches dismiss pull request review approvals.

\n\n\n\n\n\n\n\n\n\n\n\n

isAdminEnforced (Boolean)

Can admins overwrite branch protection.

\n\n\n\n\n\n\n\n\n\n\n\n

pattern (String)

The glob-like pattern used to determine matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

pushActorIds ([ID!])

A list of User, Team or App IDs allowed to push to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredApprovingReviewCount (Int)

Number of approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiredStatusCheckContexts ([String!])

List of required status check contexts that must pass for commits to be accepted to matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresApprovingReviews (Boolean)

Are approving reviews required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCodeOwnerReviews (Boolean)

Are reviews from code owners required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresCommitSignatures (Boolean)

Are commits required to be signed.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresLinearHistory (Boolean)

Are merge commits prohibited from being pushed to this branch.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStatusChecks (Boolean)

Are status checks required to update matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n

requiresStrictStatusChecks (Boolean)

Are branches required to be up to date before merging.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsPushes (Boolean)

Is pushing to matching branches restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

restrictsReviewDismissals (Boolean)

Is dismissal of pull request reviews restricted.

\n\n\n\n\n\n\n\n\n\n\n\n

reviewDismissalActorIds ([ID!])

A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckRunInput\n

\n

Autogenerated input type of UpdateCheckRun.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

actions ([CheckRunAction!])

Possible further actions the integrator can perform, which a user may trigger.

\n\n\n\n\n\n\n\n\n\n\n\n

checkRunId (ID!)

The node of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

completedAt (DateTime)

The time that the check run finished.

\n\n\n\n\n\n\n\n\n\n\n\n

conclusion (CheckConclusionState)

The final conclusion of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

detailsUrl (URI)

The URL of the integrator's site that has the full details of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

externalId (String)

A reference for the run on the integrator's system.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the check.

\n\n\n\n\n\n\n\n\n\n\n\n

output (CheckRunOutput)

Descriptive details about the run.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

startedAt (DateTime)

The time that the check run began.

\n\n\n\n\n\n\n\n\n\n\n\n

status (RequestableCheckStatusState)

The current status.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateCheckSuitePreferencesInput\n

\n

Autogenerated input type of UpdateCheckSuitePreferences.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

autoTriggerPreferences ([CheckSuiteAutoTriggerPreference!]!)

The check suite preferences to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseAllowPrivateRepositoryForkingSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the allow private repository forking setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the allow private repository forking setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseDefaultRepositoryPermissionSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseDefaultRepositoryPermissionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the default repository permission setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseDefaultRepositoryPermissionSettingValue!)

The value for the default repository permission setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can change repository visibility setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can change repository visibility setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanCreateRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanCreateRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can create repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateInternalRepositories (Boolean)

Allow members to create internal repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePrivateRepositories (Boolean)

Allow members to create private repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreatePublicRepositories (Boolean)

Allow members to create public repositories. Defaults to current value.

\n\n\n\n\n\n\n\n\n\n\n\n

membersCanCreateRepositoriesPolicyEnabled (Boolean)

When false, allow member organizations to set their own repository creation member privileges.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanCreateRepositoriesSettingValue)

Value for the members can create repositories setting on the enterprise. This\nor the granular public/private/internal allowed fields (but not both) must be provided.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteIssuesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteIssuesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete issues setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete issues setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanDeleteRepositoriesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can delete repositories setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can delete repositories setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanInviteCollaboratorsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can invite collaborators setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can invite collaborators setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanMakePurchasesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanMakePurchasesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can make purchases setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseMembersCanMakePurchasesSettingValue!)

The value for the members can make purchases setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can update protected branches setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can update protected branches setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseMembersCanViewDependencyInsightsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the members can view dependency insights setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the members can view dependency insights setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseOrganizationProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseOrganizationProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the organization projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the organization projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseProfileInput\n

\n

Autogenerated input type of UpdateEnterpriseProfile.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

The description of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The Enterprise ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

location (String)

The location of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n

websiteUrl (String)

The URL of the enterprise's website.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseRepositoryProjectsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseRepositoryProjectsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the repository projects setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the repository projects setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTeamDiscussionsSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTeamDiscussionsSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the team discussions setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledDisabledSettingValue!)

The value for the team discussions setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput\n

\n

Autogenerated input type of UpdateEnterpriseTwoFactorAuthenticationRequiredSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enterpriseId (ID!)

The ID of the enterprise on which to set the two factor authentication required setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (EnterpriseEnabledSettingValue!)

The value for the two factor authentication required setting on the enterprise.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEnabledSettingInput\n

\n

Autogenerated input type of UpdateIpAllowListEnabledSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (IpAllowListEnabledSettingValue!)

The value for the IP allow list enabled setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIpAllowListEntryInput\n

\n

Autogenerated input type of UpdateIpAllowListEntry.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

allowListValue (String!)

An IP address or range of addresses in CIDR notation.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ipAllowListEntryId (ID!)

The ID of the IP allow list entry to update.

\n\n\n\n\n\n\n\n\n\n\n\n

isActive (Boolean!)

Whether the IP allow list entry is active when an IP allow list is enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

An optional name for the IP allow list entry.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueCommentInput\n

\n

Autogenerated input type of UpdateIssueComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the IssueComment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateIssueInput\n

\n

Autogenerated input type of UpdateIssue.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The body for the issue description.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the Issue to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this issue.

\n\n\n\n\n\n\n\n\n\n\n\n

state (IssueState)

The desired issue state.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title for the issue.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateLabelInput\n

\n

Autogenerated input type of UpdateLabel.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateLabelInput is available under the Labels preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

color (String)

A 6 character hex code, without the leading #, identifying the updated color of the label.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A brief description of the label, such as its purpose.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the label to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The updated name of the label.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateNotificationRestrictionSettingInput\n

\n

Autogenerated input type of UpdateNotificationRestrictionSetting.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

ownerId (ID!)

The ID of the owner on which to set the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n

settingValue (NotificationRestrictionSettingValue!)

The value for the restrict notifications setting.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectCardInput\n

\n

Autogenerated input type of UpdateProjectCard.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

isArchived (Boolean)

Whether or not the ProjectCard should be archived.

\n\n\n\n\n\n\n\n\n\n\n\n

note (String)

The note of ProjectCard.

\n\n\n\n\n\n\n\n\n\n\n\n

projectCardId (ID!)

The ProjectCard ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectColumnInput\n

\n

Autogenerated input type of UpdateProjectColumn.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String!)

The name of project column.

\n\n\n\n\n\n\n\n\n\n\n\n

projectColumnId (ID!)

The ProjectColumn ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateProjectInput\n

\n

Autogenerated input type of UpdateProject.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The description of project.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The name of project.

\n\n\n\n\n\n\n\n\n\n\n\n

projectId (ID!)

The Project ID to update.

\n\n\n\n\n\n\n\n\n\n\n\n

public (Boolean)

Whether the project is public or not.

\n\n\n\n\n\n\n\n\n\n\n\n

state (ProjectState)

Whether the project is open or closed.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestInput\n

\n

Autogenerated input type of UpdatePullRequest.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

assigneeIds ([ID!])

An array of Node IDs of users for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

baseRefName (String)

The name of the branch you want your changes pulled into. This should be an existing branch\non the current repository.

\n\n\n\n\n\n\n\n\n\n\n\n

body (String)

The contents of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

labelIds ([ID!])

An array of Node IDs of labels for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

maintainerCanModify (Boolean)

Indicates whether maintainers can modify the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

milestoneId (ID)

The Node ID of the milestone for this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

projectIds ([ID!])

An array of Node IDs for projects associated with this pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestId (ID!)

The Node ID of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

state (PullRequestUpdateState)

The target state of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The title of the pull request.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewCommentInput\n

\n

Autogenerated input type of UpdatePullRequestReviewComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewCommentId (ID!)

The Node ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdatePullRequestReviewInput\n

\n

Autogenerated input type of UpdatePullRequestReview.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The contents of the pull request review body.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

pullRequestReviewId (ID!)

The Node ID of the pull request review to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefInput\n

\n

Autogenerated input type of UpdateRef.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

force (Boolean)

Permit updates of branch Refs that are not fast-forwards?.

\n\n\n\n\n\n\n\n\n\n\n\n

oid (GitObjectID!)

The GitObjectID that the Ref shall be updated to target.

\n\n\n\n\n\n\n\n\n\n\n\n

refId (ID!)

The Node ID of the Ref to be updated.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRefsInput\n

\n

Autogenerated input type of UpdateRefs.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateRefsInput is available under the Update refs preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

refUpdates ([RefUpdate!]!)

A list of ref updates.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateRepositoryInput\n

\n

Autogenerated input type of UpdateRepository.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

description (String)

A new description for the repository. Pass an empty string to erase the existing description.

\n\n\n\n\n\n\n\n\n\n\n\n

hasIssuesEnabled (Boolean)

Indicates if the repository should have the issues feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasProjectsEnabled (Boolean)

Indicates if the repository should have the project boards feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

hasWikiEnabled (Boolean)

Indicates if the repository should have the wiki feature enabled.

\n\n\n\n\n\n\n\n\n\n\n\n

homepageUrl (URI)

The URL for a web page about this repository. Pass an empty string to erase the existing URL.

\n\n\n\n\n\n\n\n\n\n\n\n

name (String)

The new name of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The ID of the repository to update.

\n\n\n\n\n\n\n\n\n\n\n\n

template (Boolean)

Whether this repository should be marked as a template such that anyone who\ncan access it can create new repositories with the same files and directory structure.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateSubscriptionInput\n

\n

Autogenerated input type of UpdateSubscription.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

state (SubscriptionState!)

The new state of the subscription.

\n\n\n\n\n\n\n\n\n\n\n\n

subscribableId (ID!)

The Node ID of the subscribable object to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionCommentInput\n

\n

Autogenerated input type of UpdateTeamDiscussionComment.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String!)

The updated text of the comment.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the comment to modify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamDiscussionInput\n

\n

Autogenerated input type of UpdateTeamDiscussion.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

body (String)

The updated text of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

bodyVersion (String)

The current version of the body content. If provided, this update operation\nwill be rejected if the given version does not match the latest version on the server.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the discussion to modify.

\n\n\n\n\n\n\n\n\n\n\n\n

pinned (Boolean)

If provided, sets the pinned state of the updated discussion.

\n\n\n\n\n\n\n\n\n\n\n\n

title (String)

The updated title of the discussion.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTeamReviewAssignmentInput\n

\n

Autogenerated input type of UpdateTeamReviewAssignment.

\n
\n\n
\n \n
\n

Preview notice

\n

UpdateTeamReviewAssignmentInput is available under the Team review assignments preview. During the preview period, the API may change without notice.

\n
\n\n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

algorithm (TeamReviewAssignmentAlgorithm)

The algorithm to use for review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

enabled (Boolean!)

Turn on or off review assignment.

\n\n\n\n\n\n\n\n\n\n\n\n

excludedTeamMemberIds ([ID!])

An array of team member IDs to exclude.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The Node ID of the team to update review assignments of.

\n\n\n\n\n\n\n\n\n\n\n\n

notifyTeam (Boolean)

Notify the entire team of the PR if it is delegated.

\n\n\n\n\n\n\n\n\n\n\n\n

teamMemberCount (Int)

The number of team members to assign.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UpdateTopicsInput\n

\n

Autogenerated input type of UpdateTopics.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

repositoryId (ID!)

The Node ID of the repository.

\n\n\n\n\n\n\n\n\n\n\n\n

topicNames ([String!]!)

An array of topic names.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n UserStatusOrder\n

\n

Ordering options for user status connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (UserStatusOrderField!)

The field to order user statuses by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifiableDomainOrder\n

\n

Ordering options for verifiable domain connections.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

direction (OrderDirection!)

The ordering direction.

\n\n\n\n\n\n\n\n\n\n\n\n

field (VerifiableDomainOrderField!)

The field to order verifiable domains by.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n\n
\n
\n

\n VerifyVerifiableDomainInput\n

\n

Autogenerated input type of VerifyVerifiableDomain.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

id (ID!)

The ID of the verifiable domain to verify.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n
\n", "miniToc": [ { "contents": "\n AddAssigneesToAssignableInput\n ", @@ -3757,6 +3762,11 @@ "headingLevel": 3, "indentationLevel": 0 }, + { + "contents": "\n ConvertPullRequestToDraftInput\n ", + "headingLevel": 3, + "indentationLevel": 0 + }, { "contents": "\n CreateBranchProtectionRuleInput\n ", "headingLevel": 3, diff --git a/lib/graphql/static/schema-dotcom.json b/lib/graphql/static/schema-dotcom.json index 6eb17e935249..58c4fb259910 100644 --- a/lib/graphql/static/schema-dotcom.json +++ b/lib/graphql/static/schema-dotcom.json @@ -1745,6 +1745,40 @@ } ] }, + { + "name": "convertPullRequestToDraft", + "kind": "mutations", + "id": "convertpullrequesttodraft", + "href": "/graphql/reference/mutations#convertpullrequesttodraft", + "description": "

Converts a pull request to draft.

", + "inputFields": [ + { + "name": "input", + "type": "ConvertPullRequestToDraftInput!", + "id": "convertpullrequesttodraftinput", + "kind": "input-objects", + "href": "/graphql/reference/input-objects#convertpullrequesttodraftinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string", + "description": "

A unique identifier for the client performing the mutation.

" + }, + { + "name": "pullRequest", + "type": "PullRequest", + "id": "pullrequest", + "kind": "objects", + "href": "/graphql/reference/objects#pullrequest", + "description": "

The pull request that is now a draft.

" + } + ] + }, { "name": "createBranchProtectionRule", "kind": "mutations", @@ -65136,6 +65170,32 @@ } ] }, + { + "name": "ConvertPullRequestToDraftInput", + "kind": "inputObjects", + "id": "convertpullrequesttodraftinput", + "href": "/graphql/reference/input-objects#convertpullrequesttodraftinput", + "description": "

Autogenerated input type of ConvertPullRequestToDraft.

", + "inputFields": [ + { + "name": "clientMutationId", + "description": "

A unique identifier for the client performing the mutation.

", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "pullRequestId", + "description": "

ID of the pull request to convert to draft.

", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id", + "isDeprecated": false + } + ] + }, { "name": "CreateBranchProtectionRuleInput", "kind": "inputObjects", diff --git a/lib/graphql/static/schema-ghae.json b/lib/graphql/static/schema-ghae.json index 44dc5c0ba87b..6e2523da13d2 100644 --- a/lib/graphql/static/schema-ghae.json +++ b/lib/graphql/static/schema-ghae.json @@ -1370,6 +1370,40 @@ } ] }, + { + "name": "convertPullRequestToDraft", + "kind": "mutations", + "id": "convertpullrequesttodraft", + "href": "/graphql/reference/mutations#convertpullrequesttodraft", + "description": "

Converts a pull request to draft.

", + "inputFields": [ + { + "name": "input", + "type": "ConvertPullRequestToDraftInput!", + "id": "convertpullrequesttodraftinput", + "kind": "input-objects", + "href": "/graphql/reference/input-objects#convertpullrequesttodraftinput" + } + ], + "returnFields": [ + { + "name": "clientMutationId", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string", + "description": "

A unique identifier for the client performing the mutation.

" + }, + { + "name": "pullRequest", + "type": "PullRequest", + "id": "pullrequest", + "kind": "objects", + "href": "/graphql/reference/objects#pullrequest", + "description": "

The pull request that is now a draft.

" + } + ] + }, { "name": "createBranchProtectionRule", "kind": "mutations", @@ -60681,6 +60715,32 @@ } ] }, + { + "name": "ConvertPullRequestToDraftInput", + "kind": "inputObjects", + "id": "convertpullrequesttodraftinput", + "href": "/graphql/reference/input-objects#convertpullrequesttodraftinput", + "description": "

Autogenerated input type of ConvertPullRequestToDraft.

", + "inputFields": [ + { + "name": "clientMutationId", + "description": "

A unique identifier for the client performing the mutation.

", + "type": "String", + "id": "string", + "kind": "scalars", + "href": "/graphql/reference/scalars#string" + }, + { + "name": "pullRequestId", + "description": "

ID of the pull request to convert to draft.

", + "type": "ID!", + "id": "id", + "kind": "scalars", + "href": "/graphql/reference/scalars#id", + "isDeprecated": false + } + ] + }, { "name": "CreateBranchProtectionRuleInput", "kind": "inputObjects", From 79ecb963164a27eefc1dad149ced83f91411b884 Mon Sep 17 00:00:00 2001 From: Kevin Heis Date: Tue, 20 Apr 2021 10:30:57 -0700 Subject: [PATCH 5/7] End "custom core" primer, use regular core instead (#18887) --- stylesheets/index.scss | 34 +--------------------------------- 1 file changed, 1 insertion(+), 33 deletions(-) diff --git a/stylesheets/index.scss b/stylesheets/index.scss index 5408f708c938..c95be5737c21 100644 --- a/stylesheets/index.scss +++ b/stylesheets/index.scss @@ -1,35 +1,4 @@ -// Import modules needed from Primer (stored in local `node_modules` directory) -@import "@primer/css/support/index.scss"; - -// BEGIN CUSTOM CORE IMPORT -// Normally we would just import @primer/css/core/index.scss, but that file -// currently imports @primer/css/layout/index.scss, which in turn imports -// @primer/css/layout/columns.scss, which has deprecated styles that litter -// the logs with warnings. We're not using those styles, so the warnings are -// avoided here by not importing the file. -// -// TODO: Use a simple core import when https://github.com/primer/css/issues/741 is resolved -@import "@primer/css/base/index.scss"; -@import "@primer/css/box/index.scss"; -@import "@primer/css/buttons/index.scss"; -@import "@primer/css/forms/index.scss"; - -// BEGIN CUSTOM LAYOUT IMPORT -@import "@primer/css/support/index.scss"; -@import "@primer/css/layout/container.scss"; -// @import "@primer/css/layout/columns.scss"; <-- deprecated and unused -@import "@primer/css/layout/grid.scss"; -@import "@primer/css/layout/grid-offset.scss"; -// END CUSTOM LAYOUT IMPORT - -@import "@primer/css/navigation/index.scss"; -@import "@primer/css/pagination/index.scss"; -@import "@primer/css/tooltips/index.scss"; -@import "@primer/css/truncate/index.scss"; -@import "@primer/css/utilities/index.scss"; -@import "@primer/css/avatars/index.scss"; -// END CUSTOM CORE IMPORT - +@import "@primer/css/core/index.scss"; @import "@primer/css/markdown/index.scss"; @import "@primer/css/forms/index.scss"; @import "@primer/css/navigation/index.scss"; @@ -49,7 +18,6 @@ $marketing-font-path: "/dist/fonts/"; @import "sidebar.scss"; @import "scroll-button.scss"; @import "explorer.scss"; -// from https://unpkg.com/highlight.js@9.15.8/styles/github.css @import "syntax-highlighting.scss"; @import "tables.scss"; @import "opacity.scss"; From d61ae5b240ba9a7a348f9d4cf2a62145429016e0 Mon Sep 17 00:00:00 2001 From: Amy Burns Date: Tue, 20 Apr 2021 14:33:37 -0400 Subject: [PATCH 6/7] Private image registry support & Codespaces audit logs (#18840) * adding new tables and linking to info on audit logs * editing some text: * adding new info on how to add image registry login * adding link and fixing table * formatting * formatting * Apply suggestions from code review Co-authored-by: Laura Coursen * updaing private image registry secret info and other improvements * some minor fixes * fixing test errors * rewriting registry secret section * rewriting registry secret section * updating link to reflect title * Update content/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces.md Co-authored-by: Laura Coursen * updating bullet point Co-authored-by: Laura Coursen --- ...despaces-image-registry-secret-example.png | Bin 0 -> 59950 bytes .../reviewing-your-security-log.md | 4 ++++ ...ging-access-and-security-for-codespaces.md | 12 +++++++++++ ...naging-encrypted-secrets-for-codespaces.md | 20 ++++++++++++++++++ ...ing-the-audit-log-for-your-organization.md | 15 +++++++++++++ 5 files changed, 51 insertions(+) create mode 100644 assets/images/help/settings/codespaces-image-registry-secret-example.png diff --git a/assets/images/help/settings/codespaces-image-registry-secret-example.png b/assets/images/help/settings/codespaces-image-registry-secret-example.png new file mode 100644 index 0000000000000000000000000000000000000000..4d3a03c262e343b3231f1610f5d476fc7efe3c93 GIT binary patch literal 59950 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 LeO#{kD)|2Z$9QI% literal 0 HcmV?d00001 diff --git a/content/github/authenticating-to-github/reviewing-your-security-log.md b/content/github/authenticating-to-github/reviewing-your-security-log.md index 60dc147f2fb8..58b68feb074f 100644 --- a/content/github/authenticating-to-github/reviewing-your-security-log.md +++ b/content/github/authenticating-to-github/reviewing-your-security-log.md @@ -93,6 +93,10 @@ An overview of some of the most common actions that are recorded as events in th | Action | Description |------------------|------------------- +| `create` | Triggered when you [create a codespace](/github/developing-online-with-codespaces/creating-a-codespace). +| `resume` | Triggered when you resume a suspended codespace. +| `delete` | Triggered when you [delete a codespace](/github/developing-online-with-codespaces/deleting-a-codespace). +| `manage_access_and_security` | Triggered when you update [the repositories a codespace has access to](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces). | `trusted_repositories_access_update` | Triggered when you change your user account's [access and security setting for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces). #### `marketplace_agreement_signature` category actions diff --git a/content/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces.md b/content/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces.md index 1db7b63da34c..aea5edb9816a 100644 --- a/content/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces.md +++ b/content/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces.md @@ -25,6 +25,12 @@ When you enable access and security for a repository owned by your user account, 1. If you chose "Selected repositories", select the drop-down menu, then click a repository to allow the repository's codespaces to access other repositories you own. Repeat for all repositories whose codespaces you want to access other repositories you own. !["Selected repositories" drop-down menu](/assets/images/help/settings/codespaces-access-and-security-repository-drop-down.png) +### Reviewing your security log for {% data variables.product.prodname_codespaces %} + +The security log is where you can review {% data variables.product.prodname_codespaces %} actions that you have performed. For information about accessing the log, see "[Reviewing your security log](/github/authenticating-to-github/reviewing-your-security-log#accessing-your-security-log)." + +The security log includes details on what action occured and when you performed it. For information about {% data variables.product.prodname_codespaces %} actions, see "[{% data variables.product.prodname_codespaces %} category actions](/github/authenticating-to-github/reviewing-your-security-log#codespaces-category-actions)". + ### Managing security and access for your organization Organization owners can manage security and access for {% data variables.product.prodname_codespaces %}. @@ -41,3 +47,9 @@ When you enable access and security for a repository owned by your organization, ![Radio buttons to manage trusted repositories](/assets/images/help/settings/codespaces-access-and-security-radio-buttons.png) 1. If you chose "Selected repositories", select the drop-down menu, then click a repository to allow the repository's codespaces to access other repositories owned by your organization. Repeat for all repositories whose codespaces you want to access other repositories. !["Selected repositories" drop-down menu](/assets/images/help/settings/codespaces-access-and-security-repository-drop-down.png) + +### Reviewing your organization's audit logs for {% data variables.product.prodname_codespaces %} + +The audit log is where you can review actions related to {% data variables.product.prodname_codespaces %} that have been performed by members of your organization. For information about accessing the log, see "[Reviewing your security log](/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization#accessing-the-audit-log)." + +The audit log includes details such as who performed the action, what the action was, and when the action was performed. For information on {% data variables.product.prodname_codespaces %} actions, see "[{% data variables.product.prodname_codespaces %} category actions](/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization#codespaces-category-actions)." diff --git a/content/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces.md b/content/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces.md index f99fc17ff167..ea9cb83a4607 100644 --- a/content/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces.md +++ b/content/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces.md @@ -22,6 +22,7 @@ You can add encrypted secrets to your user account that you want to use in your - Personal access tokens to cloud services - Service principals - Subscription identifiers +- [Credentials for a private image registry](#allowing-your-codespace-to-access-private-images) You can choose which repositories should have access to each secret. Then, you can use the secret in any codespace you create for a repository that has access to the secret. @@ -67,3 +68,22 @@ You can update the value of an existing secret, and you can change which reposit !["Delete" button](/assets/images/help/settings/codespaces-secret-delete-button.png) 1. Read the warning, then click **OK**. ![Confirmation to delete secret](/assets/images/help/settings/codespaces-secret-delete-warning.png) + +### Allowing your codespace to access private images + +A registry is a secure space for storing and managing private container images, such as Azure Container Registry or DockerHub. By adding a secret, your codespace can access private images within the registry. + +When a codespace launches, {% data variables.product.prodname_codespaces %} will check for the following three secrets, which define the server name, username, and personal access token (PAT) for the container registry. If those secrets are found, {% data variables.product.prodname_codespaces %} will make the registry available inside your codespace. + +- `<*>_CONTAINER_REGISTRY_SERVER` +- `<*>_CONTAINER_REGISTRY_USER` +- `<*>_CONTAINER_REGISTRY_PASSWORD` + +Use the steps in "[Adding a secret](#adding-a-secret)" to add a secret for each of these items. Replace the “<*>” in the name with a consistent identifier. For example, if you had a private image registry in Azure, it might look like the following: + +``` +ACR_CONTAINER_REGISTRY_SERVER = mycompany.azurecr.io +ACR_CONTAINER_REGISTRY_USER = acr-user-here +ACR_CONTAINER_REGISTRY_PASSWORD = +``` +![Image registry secret example](/assets/images/help/settings/codespaces-image-registry-secret-example.png) diff --git a/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md b/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md index a34f22b84f66..a4d5c74ff164 100644 --- a/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md @@ -36,6 +36,7 @@ To search for specific events, use the `action` qualifier in your query. Actions | [`account`](#account-category-actions) | Contains all activities related to your organization account. | [`advisory_credit`](#advisory_credit-category-actions) | Contains all activities related to crediting a contributor for a security advisory in the {% data variables.product.prodname_advisory_database %}. For more information, see "[About {% data variables.product.prodname_dotcom %} Security Advisories](/github/managing-security-vulnerabilities/about-github-security-advisories)." | [`billing`](#billing-category-actions) | Contains all activities related to your organization's billing. +| [`codespaces`](#codespaces-category-actions) | Contains all activities related to your organization's codespaces. | [`dependabot_alerts`](#dependabot_alerts-category-actions) | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot %} alerts in existing repositories. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." | [`dependabot_alerts_new_repos`](#dependabot_alerts_new_repos-category-actions) | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot %} alerts in new repositories created in the organization. | [`dependabot_security_updates`](#dependabot_security_updates-category-actions) | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot_security_updates %} in existing repositories. For more information, see "[Configuring {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/configuring-dependabot-security-updates)." @@ -190,6 +191,20 @@ An overview of some of the most common actions that are recorded as events in th | `change_billing_type` | Triggered when your organization [changes how it pays for {% data variables.product.prodname_dotcom %}](/articles/adding-or-editing-a-payment-method). | `change_email` | Triggered when your organization's [billing email address](/articles/setting-your-billing-email) changes. +#### `codespaces` category actions + +| Action | Description +|------------------|------------------- +| `create` | Triggered when a user [creates a codespace](/github/developing-online-with-codespaces/creating-a-codespace). +| `resume` | Triggered when a user resumes a suspended codespace. +| `delete` | Triggered when a user [deletes a codespace](/github/developing-online-with-codespaces/deleting-a-codespace). +| `create_an_org_secret` | Triggered when a user creates an organization-level [secret for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces#about-encrypted-secrets-for-codespaces) +| `update_an_org_secret` | Triggered when a user updates an organization-level [secret for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces#about-encrypted-secrets-for-codespaces). +| `remove_an_org_secret` | Triggered when a user removes an organization-level [secret for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces#about-encrypted-secrets-for-codespaces). +| `manage_access_and_security` | Triggered when a user updates [which repositories a codespace can access](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces). + + + #### `dependabot_alerts` category actions | Action | Description From ce508dbe65f1858548071fff51f9999a5326af7b Mon Sep 17 00:00:00 2001 From: Kevin Heis Date: Tue, 20 Apr 2021 14:12:49 -0700 Subject: [PATCH 7/7] Remove thead background (#18883) * Remove thead background * Update tables.scss --- stylesheets/tables.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stylesheets/tables.scss b/stylesheets/tables.scss index 72b039ba324e..f402041bf29c 100644 --- a/stylesheets/tables.scss +++ b/stylesheets/tables.scss @@ -34,7 +34,7 @@ vertical-align: top; z-index: 1; top: 0; - background: var(--color-bg-tertiary); + background: var(--color-bg-primary); box-shadow: 0 3px 0 0 var(--color-auto-gray-4); padding: 12px 8px; border: 0px;
\n
\n

\n AcceptEnterpriseAdministratorInvitationInput\n

\n

Autogenerated input type of AcceptEnterpriseAdministratorInvitation.

\n
\n\n
\n \n\n \n\n\n

Input fields

\n \n \n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

\n\n\n\n\n\n\n\n\n\n\n\n

invitationId (ID!)

The id of the invitation being accepted.

\n\n\n\n\n\n\n\n\n\n\n\n
\n\n
\n
\n