gitea源码

v1_json.tmpl 796KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011260122601326014260152601626017260182601926020260212602226023260242602526026260272602826029260302603126032260332603426035260362603726038260392604026041260422604326044260452604626047260482604926050260512605226053260542605526056260572605826059260602606126062260632606426065260662606726068260692607026071260722607326074260752607626077260782607926080260812608226083260842608526086260872608826089260902609126092260932609426095260962609726098260992610026101261022610326104261052610626107261082610926110261112611226113261142611526116261172611826119261202612126122261232612426125261262612726128261292613026131261322613326134261352613626137261382613926140261412614226143261442614526146261472614826149261502615126152261532615426155261562615726158261592616026161261622616326164261652616626167261682616926170261712617226173261742617526176261772617826179261802618126182261832618426185261862618726188261892619026191261922619326194261952619626197261982619926200262012620226203262042620526206262072620826209262102621126212262132621426215262162621726218262192622026221262222622326224262252622626227262282622926230262312623226233262342623526236262372623826239262402624126242262432624426245262462624726248262492625026251262522625326254262552625626257262582625926260262612626226263262642626526266262672626826269262702627126272262732627426275262762627726278262792628026281262822628326284262852628626287262882628926290262912629226293262942629526296262972629826299263002630126302263032630426305263062630726308263092631026311263122631326314263152631626317263182631926320263212632226323263242632526326263272632826329263302633126332263332633426335263362633726338263392634026341263422634326344263452634626347263482634926350263512635226353263542635526356263572635826359263602636126362263632636426365263662636726368263692637026371263722637326374263752637626377263782637926380263812638226383263842638526386263872638826389263902639126392263932639426395263962639726398263992640026401264022640326404264052640626407264082640926410264112641226413264142641526416264172641826419264202642126422264232642426425264262642726428264292643026431264322643326434264352643626437264382643926440264412644226443264442644526446264472644826449264502645126452264532645426455264562645726458264592646026461264622646326464264652646626467264682646926470264712647226473264742647526476264772647826479264802648126482264832648426485264862648726488264892649026491264922649326494264952649626497264982649926500265012650226503265042650526506265072650826509265102651126512265132651426515265162651726518265192652026521265222652326524265252652626527265282652926530265312653226533265342653526536265372653826539265402654126542265432654426545265462654726548265492655026551265522655326554265552655626557265582655926560265612656226563265642656526566265672656826569265702657126572265732657426575265762657726578265792658026581265822658326584265852658626587265882658926590265912659226593265942659526596265972659826599266002660126602266032660426605266062660726608266092661026611266122661326614266152661626617266182661926620266212662226623266242662526626266272662826629266302663126632266332663426635266362663726638266392664026641266422664326644266452664626647266482664926650266512665226653266542665526656266572665826659266602666126662266632666426665266662666726668266692667026671266722667326674266752667626677266782667926680266812668226683266842668526686266872668826689266902669126692266932669426695266962669726698266992670026701267022670326704267052670626707267082670926710267112671226713267142671526716267172671826719267202672126722267232672426725267262672726728267292673026731267322673326734267352673626737267382673926740267412674226743267442674526746267472674826749267502675126752267532675426755267562675726758267592676026761267622676326764267652676626767267682676926770267712677226773267742677526776267772677826779267802678126782267832678426785267862678726788267892679026791267922679326794267952679626797267982679926800268012680226803268042680526806268072680826809268102681126812268132681426815268162681726818268192682026821268222682326824268252682626827268282682926830268312683226833268342683526836268372683826839268402684126842268432684426845268462684726848268492685026851268522685326854268552685626857268582685926860268612686226863268642686526866268672686826869268702687126872268732687426875268762687726878268792688026881268822688326884268852688626887268882688926890268912689226893268942689526896268972689826899269002690126902269032690426905269062690726908269092691026911269122691326914269152691626917269182691926920269212692226923269242692526926269272692826929269302693126932269332693426935269362693726938269392694026941269422694326944269452694626947269482694926950269512695226953269542695526956269572695826959269602696126962269632696426965269662696726968269692697026971269722697326974269752697626977269782697926980269812698226983269842698526986269872698826989269902699126992269932699426995269962699726998269992700027001270022700327004270052700627007270082700927010270112701227013270142701527016270172701827019270202702127022270232702427025270262702727028270292703027031270322703327034270352703627037270382703927040270412704227043270442704527046270472704827049270502705127052270532705427055270562705727058270592706027061270622706327064270652706627067270682706927070270712707227073270742707527076270772707827079270802708127082270832708427085270862708727088270892709027091270922709327094270952709627097270982709927100271012710227103271042710527106271072710827109271102711127112271132711427115271162711727118271192712027121271222712327124271252712627127271282712927130271312713227133271342713527136271372713827139271402714127142271432714427145271462714727148271492715027151271522715327154271552715627157271582715927160271612716227163271642716527166271672716827169271702717127172271732717427175271762717727178271792718027181271822718327184271852718627187271882718927190271912719227193271942719527196271972719827199272002720127202272032720427205272062720727208272092721027211272122721327214272152721627217272182721927220272212722227223272242722527226272272722827229272302723127232272332723427235272362723727238272392724027241272422724327244272452724627247272482724927250272512725227253272542725527256272572725827259272602726127262272632726427265272662726727268272692727027271272722727327274272752727627277272782727927280272812728227283272842728527286272872728827289272902729127292272932729427295272962729727298272992730027301273022730327304273052730627307273082730927310273112731227313273142731527316273172731827319273202732127322273232732427325273262732727328273292733027331273322733327334273352733627337273382733927340273412734227343273442734527346273472734827349273502735127352273532735427355273562735727358273592736027361273622736327364273652736627367273682736927370273712737227373273742737527376273772737827379273802738127382273832738427385273862738727388273892739027391273922739327394273952739627397273982739927400274012740227403274042740527406274072740827409274102741127412274132741427415274162741727418274192742027421274222742327424274252742627427274282742927430274312743227433274342743527436274372743827439274402744127442274432744427445274462744727448274492745027451274522745327454274552745627457274582745927460274612746227463274642746527466274672746827469274702747127472274732747427475274762747727478274792748027481274822748327484274852748627487274882748927490274912749227493274942749527496274972749827499275002750127502275032750427505275062750727508275092751027511275122751327514275152751627517275182751927520275212752227523275242752527526275272752827529275302753127532275332753427535275362753727538275392754027541275422754327544275452754627547275482754927550275512755227553275542755527556275572755827559275602756127562275632756427565275662756727568275692757027571275722757327574275752757627577275782757927580275812758227583275842758527586275872758827589275902759127592275932759427595275962759727598275992760027601276022760327604276052760627607276082760927610276112761227613276142761527616276172761827619276202762127622276232762427625276262762727628276292763027631276322763327634276352763627637276382763927640276412764227643276442764527646276472764827649276502765127652276532765427655276562765727658276592766027661276622766327664276652766627667276682766927670276712767227673276742767527676276772767827679276802768127682276832768427685276862768727688276892769027691276922769327694276952769627697276982769927700277012770227703277042770527706277072770827709277102771127712277132771427715277162771727718277192772027721277222772327724277252772627727277282772927730277312773227733277342773527736277372773827739277402774127742277432774427745277462774727748277492775027751277522775327754277552775627757277582775927760277612776227763277642776527766277672776827769277702777127772277732777427775277762777727778277792778027781277822778327784277852778627787277882778927790277912779227793277942779527796277972779827799278002780127802278032780427805278062780727808278092781027811278122781327814278152781627817278182781927820278212782227823278242782527826278272782827829278302783127832278332783427835278362783727838278392784027841278422784327844278452784627847278482784927850278512785227853278542785527856278572785827859278602786127862278632786427865278662786727868278692787027871278722787327874278752787627877278782787927880278812788227883278842788527886278872788827889278902789127892278932789427895278962789727898278992790027901279022790327904279052790627907279082790927910279112791227913279142791527916279172791827919279202792127922279232792427925279262792727928279292793027931279322793327934279352793627937279382793927940279412794227943279442794527946279472794827949279502795127952279532795427955279562795727958279592796027961279622796327964279652796627967279682796927970279712797227973279742797527976279772797827979279802798127982279832798427985279862798727988279892799027991279922799327994279952799627997279982799928000280012800228003280042800528006280072800828009280102801128012280132801428015280162801728018280192802028021280222802328024280252802628027280282802928030280312803228033280342803528036280372803828039280402804128042280432804428045280462804728048280492805028051280522805328054280552805628057280582805928060280612806228063280642806528066280672806828069280702807128072280732807428075280762807728078280792808028081280822808328084280852808628087280882808928090280912809228093280942809528096280972809828099281002810128102281032810428105281062810728108281092811028111281122811328114281152811628117281182811928120281212812228123281242812528126281272812828129281302813128132281332813428135281362813728138281392814028141281422814328144281452814628147281482814928150281512815228153281542815528156281572815828159281602816128162281632816428165281662816728168281692817028171281722817328174281752817628177281782817928180281812818228183281842818528186281872818828189281902819128192281932819428195281962819728198281992820028201282022820328204282052820628207282082820928210282112821228213282142821528216282172821828219282202822128222282232822428225282262822728228282292823028231282322823328234282352823628237282382823928240282412824228243282442824528246282472824828249282502825128252282532825428255282562825728258282592826028261282622826328264282652826628267282682826928270282712827228273282742827528276282772827828279282802828128282282832828428285282862828728288282892829028291282922829328294282952829628297282982829928300283012830228303283042830528306283072830828309283102831128312283132831428315283162831728318283192832028321283222832328324283252832628327283282832928330283312833228333283342833528336283372833828339283402834128342283432834428345283462834728348283492835028351283522835328354283552835628357283582835928360283612836228363283642836528366283672836828369283702837128372283732837428375283762837728378283792838028381283822838328384283852838628387283882838928390283912839228393283942839528396283972839828399284002840128402284032840428405284062840728408284092841028411284122841328414284152841628417284182841928420284212842228423284242842528426284272842828429284302843128432284332843428435284362843728438284392844028441284422844328444284452844628447284482844928450284512845228453284542845528456284572845828459284602846128462284632846428465284662846728468284692847028471284722847328474284752847628477284782847928480284812848228483284842848528486284872848828489284902849128492284932849428495284962849728498284992850028501285022850328504285052850628507285082850928510285112851228513285142851528516285172851828519285202852128522285232852428525285262852728528285292853028531285322853328534285352853628537285382853928540285412854228543285442854528546285472854828549285502855128552285532855428555285562855728558285592856028561285622856328564285652856628567285682856928570285712857228573285742857528576285772857828579285802858128582285832858428585285862858728588285892859028591285922859328594285952859628597285982859928600286012860228603286042860528606286072860828609286102861128612286132861428615286162861728618286192862028621286222862328624286252862628627286282862928630286312863228633286342863528636286372863828639286402864128642286432864428645286462864728648286492865028651286522865328654286552865628657286582865928660286612866228663286642866528666286672866828669286702867128672286732867428675286762867728678286792868028681286822868328684286852868628687286882868928690286912869228693286942869528696286972869828699287002870128702287032870428705287062870728708287092871028711287122871328714287152871628717287182871928720287212872228723287242872528726287272872828729287302873128732287332873428735287362873728738287392874028741287422874328744287452874628747287482874928750287512875228753287542875528756287572875828759287602876128762287632876428765287662876728768287692877028771287722877328774287752877628777287782877928780287812878228783287842878528786287872878828789287902879128792287932879428795287962879728798287992880028801288022880328804288052880628807288082880928810288112881228813288142881528816288172881828819288202882128822288232882428825288262882728828288292883028831288322883328834288352883628837288382883928840288412884228843288442884528846288472884828849288502885128852288532885428855288562885728858288592886028861288622886328864288652886628867288682886928870288712887228873288742887528876288772887828879288802888128882288832888428885288862888728888288892889028891288922889328894288952889628897288982889928900289012890228903289042890528906289072890828909289102891128912289132891428915289162891728918289192892028921289222892328924289252892628927289282892928930289312893228933289342893528936289372893828939289402894128942289432894428945289462894728948289492895028951289522895328954289552895628957289582895928960289612896228963289642896528966289672896828969289702897128972289732897428975289762897728978289792898028981289822898328984289852898628987289882898928990289912899228993289942899528996289972899828999290002900129002290032900429005290062900729008290092901029011290122901329014290152901629017290182901929020290212902229023290242902529026290272902829029290302903129032290332903429035290362903729038290392904029041290422904329044290452904629047290482904929050290512905229053290542905529056290572905829059290602906129062290632906429065290662906729068290692907029071290722907329074290752907629077290782907929080290812908229083290842908529086290872908829089290902909129092290932909429095290962909729098290992910029101291022910329104291052910629107291082910929110291112911229113291142911529116291172911829119291202912129122291232912429125291262912729128291292913029131291322913329134291352913629137291382913929140291412914229143291442914529146291472914829149291502915129152291532915429155291562915729158291592916029161291622916329164291652916629167291682916929170291712917229173291742917529176291772917829179291802918129182291832918429185291862918729188291892919029191291922919329194291952919629197291982919929200292012920229203292042920529206292072920829209292102921129212292132921429215292162921729218292192922029221292222922329224292252922629227292282922929230292312923229233292342923529236292372923829239292402924129242292432924429245292462924729248292492925029251292522925329254292552925629257292582925929260292612926229263292642926529266292672926829269292702927129272292732927429275292762927729278292792928029281292822928329284292852928629287292882928929290292912929229293292942929529296292972929829299293002930129302293032930429305293062930729308293092931029311293122931329314293152931629317293182931929320293212932229323293242932529326293272932829329293302933129332293332933429335293362933729338293392934029341293422934329344293452934629347293482934929350293512935229353293542935529356293572935829359293602936129362293632936429365293662936729368293692937029371293722937329374293752937629377293782937929380293812938229383293842938529386293872938829389293902939129392293932939429395293962939729398293992940029401294022940329404294052940629407294082940929410294112941229413294142941529416294172941829419294202942129422294232942429425294262942729428294292943029431294322943329434294352943629437294382943929440294412944229443294442944529446294472944829449294502945129452294532945429455294562945729458294592946029461294622946329464294652946629467294682946929470294712947229473294742947529476294772947829479294802948129482294832948429485294862948729488294892949029491294922949329494294952949629497294982949929500295012950229503295042950529506295072950829509295102951129512295132951429515295162951729518295192952029521295222952329524295252952629527295282952929530295312953229533295342953529536295372953829539295402954129542295432954429545295462954729548295492955029551295522955329554295552955629557295582955929560295612956229563295642956529566295672956829569295702957129572295732957429575295762957729578295792958029581295822958329584295852958629587295882958929590295912959229593295942959529596295972959829599296002960129602296032960429605296062960729608296092961029611296122961329614296152961629617296182961929620296212962229623296242962529626296272962829629296302963129632296332963429635296362963729638296392964029641296422964329644296452964629647296482964929650296512965229653296542965529656296572965829659296602966129662296632966429665296662966729668296692967029671296722967329674296752967629677296782967929680296812968229683296842968529686296872968829689296902969129692296932969429695296962969729698296992970029701297022970329704297052970629707297082970929710297112971229713297142971529716297172971829719297202972129722297232972429725297262972729728297292973029731297322973329734297352973629737297382973929740297412974229743297442974529746297472974829749297502975129752297532975429755297562975729758297592976029761297622976329764297652976629767297682976929770297712977229773297742977529776297772977829779297802978129782297832978429785297862978729788297892979029791297922979329794297952979629797297982979929800298012980229803298042980529806298072980829809298102981129812298132981429815298162981729818298192982029821298222982329824298252982629827298282982929830298312983229833298342983529836298372983829839298402984129842298432984429845298462984729848298492985029851298522985329854298552985629857298582985929860298612986229863298642986529866298672986829869298702987129872298732987429875298762987729878298792988029881298822988329884298852988629887298882988929890298912989229893298942989529896298972989829899299002990129902299032990429905299062990729908299092991029911299122991329914299152991629917299182991929920299212992229923299242992529926299272992829929299302993129932299332993429935299362993729938299392994029941299422994329944299452994629947299482994929950299512995229953299542995529956299572995829959299602996129962299632996429965299662996729968299692997029971299722997329974299752997629977299782997929980299812998229983299842998529986299872998829989299902999129992299932999429995299962999729998299993000030001300023000330004300053000630007300083000930010300113001230013300143001530016300173001830019300203002130022300233002430025300263002730028300293003030031300323003330034300353003630037300383003930040300413004230043300443004530046300473004830049300503005130052300533005430055300563005730058300593006030061300623006330064300653006630067300683006930070300713007230073300743007530076300773007830079300803008130082300833008430085300863008730088300893009030091300923009330094300953009630097300983009930100301013010230103301043010530106301073010830109301103011130112301133011430115301163011730118301193012030121301223012330124301253012630127301283012930130301313013230133301343013530136301373013830139301403014130142301433014430145301463014730148301493015030151301523015330154301553015630157301583015930160301613016230163301643016530166301673016830169301703017130172301733017430175301763017730178301793018030181301823018330184301853018630187301883018930190301913019230193301943019530196301973019830199302003020130202302033020430205302063020730208302093021030211302123021330214302153021630217302183021930220302213022230223302243022530226302273022830229302303023130232302333023430235302363023730238302393024030241302423024330244302453024630247302483024930250302513025230253302543025530256302573025830259302603026130262302633026430265302663026730268302693027030271302723027330274302753027630277302783027930280302813028230283302843028530286302873028830289302903029130292302933029430295302963029730298302993030030301303023030330304303053030630307303083030930310303113031230313303143031530316303173031830319303203032130322303233032430325303263032730328303293033030331
  1. {
  2. "consumes": [
  3. "application/json",
  4. "text/plain"
  5. ],
  6. "produces": [
  7. "application/json",
  8. "text/html"
  9. ],
  10. "schemes": [
  11. "https",
  12. "http"
  13. ],
  14. "swagger": "2.0",
  15. "info": {
  16. "description": "This documentation describes the Gitea API.",
  17. "title": "Gitea API",
  18. "license": {
  19. "name": "MIT",
  20. "url": "http://opensource.org/licenses/MIT"
  21. },
  22. "version": "{{.SwaggerAppVer}}"
  23. },
  24. "basePath": "{{.SwaggerAppSubUrl}}/api/v1",
  25. "paths": {
  26. "/activitypub/user-id/{user-id}": {
  27. "get": {
  28. "produces": [
  29. "application/json"
  30. ],
  31. "tags": [
  32. "activitypub"
  33. ],
  34. "summary": "Returns the Person actor for a user",
  35. "operationId": "activitypubPerson",
  36. "parameters": [
  37. {
  38. "type": "integer",
  39. "description": "user ID of the user",
  40. "name": "user-id",
  41. "in": "path",
  42. "required": true
  43. }
  44. ],
  45. "responses": {
  46. "200": {
  47. "$ref": "#/responses/ActivityPub"
  48. }
  49. }
  50. }
  51. },
  52. "/activitypub/user-id/{user-id}/inbox": {
  53. "post": {
  54. "produces": [
  55. "application/json"
  56. ],
  57. "tags": [
  58. "activitypub"
  59. ],
  60. "summary": "Send to the inbox",
  61. "operationId": "activitypubPersonInbox",
  62. "parameters": [
  63. {
  64. "type": "integer",
  65. "description": "user ID of the user",
  66. "name": "user-id",
  67. "in": "path",
  68. "required": true
  69. }
  70. ],
  71. "responses": {
  72. "204": {
  73. "$ref": "#/responses/empty"
  74. }
  75. }
  76. }
  77. },
  78. "/admin/actions/jobs": {
  79. "get": {
  80. "produces": [
  81. "application/json"
  82. ],
  83. "tags": [
  84. "admin"
  85. ],
  86. "summary": "Lists all jobs",
  87. "operationId": "listAdminWorkflowJobs",
  88. "parameters": [
  89. {
  90. "type": "string",
  91. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  92. "name": "status",
  93. "in": "query"
  94. },
  95. {
  96. "type": "integer",
  97. "description": "page number of results to return (1-based)",
  98. "name": "page",
  99. "in": "query"
  100. },
  101. {
  102. "type": "integer",
  103. "description": "page size of results",
  104. "name": "limit",
  105. "in": "query"
  106. }
  107. ],
  108. "responses": {
  109. "200": {
  110. "$ref": "#/responses/WorkflowJobsList"
  111. },
  112. "400": {
  113. "$ref": "#/responses/error"
  114. },
  115. "404": {
  116. "$ref": "#/responses/notFound"
  117. }
  118. }
  119. }
  120. },
  121. "/admin/actions/runners": {
  122. "get": {
  123. "produces": [
  124. "application/json"
  125. ],
  126. "tags": [
  127. "admin"
  128. ],
  129. "summary": "Get all runners",
  130. "operationId": "getAdminRunners",
  131. "responses": {
  132. "200": {
  133. "$ref": "#/definitions/ActionRunnersResponse"
  134. },
  135. "400": {
  136. "$ref": "#/responses/error"
  137. },
  138. "404": {
  139. "$ref": "#/responses/notFound"
  140. }
  141. }
  142. }
  143. },
  144. "/admin/actions/runners/registration-token": {
  145. "post": {
  146. "produces": [
  147. "application/json"
  148. ],
  149. "tags": [
  150. "admin"
  151. ],
  152. "summary": "Get an global actions runner registration token",
  153. "operationId": "adminCreateRunnerRegistrationToken",
  154. "responses": {
  155. "200": {
  156. "$ref": "#/responses/RegistrationToken"
  157. }
  158. }
  159. }
  160. },
  161. "/admin/actions/runners/{runner_id}": {
  162. "get": {
  163. "produces": [
  164. "application/json"
  165. ],
  166. "tags": [
  167. "admin"
  168. ],
  169. "summary": "Get an global runner",
  170. "operationId": "getAdminRunner",
  171. "parameters": [
  172. {
  173. "type": "string",
  174. "description": "id of the runner",
  175. "name": "runner_id",
  176. "in": "path",
  177. "required": true
  178. }
  179. ],
  180. "responses": {
  181. "200": {
  182. "$ref": "#/definitions/ActionRunner"
  183. },
  184. "400": {
  185. "$ref": "#/responses/error"
  186. },
  187. "404": {
  188. "$ref": "#/responses/notFound"
  189. }
  190. }
  191. },
  192. "delete": {
  193. "produces": [
  194. "application/json"
  195. ],
  196. "tags": [
  197. "admin"
  198. ],
  199. "summary": "Delete an global runner",
  200. "operationId": "deleteAdminRunner",
  201. "parameters": [
  202. {
  203. "type": "string",
  204. "description": "id of the runner",
  205. "name": "runner_id",
  206. "in": "path",
  207. "required": true
  208. }
  209. ],
  210. "responses": {
  211. "204": {
  212. "description": "runner has been deleted"
  213. },
  214. "400": {
  215. "$ref": "#/responses/error"
  216. },
  217. "404": {
  218. "$ref": "#/responses/notFound"
  219. }
  220. }
  221. }
  222. },
  223. "/admin/actions/runs": {
  224. "get": {
  225. "produces": [
  226. "application/json"
  227. ],
  228. "tags": [
  229. "admin"
  230. ],
  231. "summary": "Lists all runs",
  232. "operationId": "listAdminWorkflowRuns",
  233. "parameters": [
  234. {
  235. "type": "string",
  236. "description": "workflow event name",
  237. "name": "event",
  238. "in": "query"
  239. },
  240. {
  241. "type": "string",
  242. "description": "workflow branch",
  243. "name": "branch",
  244. "in": "query"
  245. },
  246. {
  247. "type": "string",
  248. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  249. "name": "status",
  250. "in": "query"
  251. },
  252. {
  253. "type": "string",
  254. "description": "triggered by user",
  255. "name": "actor",
  256. "in": "query"
  257. },
  258. {
  259. "type": "string",
  260. "description": "triggering sha of the workflow run",
  261. "name": "head_sha",
  262. "in": "query"
  263. },
  264. {
  265. "type": "integer",
  266. "description": "page number of results to return (1-based)",
  267. "name": "page",
  268. "in": "query"
  269. },
  270. {
  271. "type": "integer",
  272. "description": "page size of results",
  273. "name": "limit",
  274. "in": "query"
  275. }
  276. ],
  277. "responses": {
  278. "200": {
  279. "$ref": "#/responses/WorkflowRunsList"
  280. },
  281. "400": {
  282. "$ref": "#/responses/error"
  283. },
  284. "404": {
  285. "$ref": "#/responses/notFound"
  286. }
  287. }
  288. }
  289. },
  290. "/admin/cron": {
  291. "get": {
  292. "produces": [
  293. "application/json"
  294. ],
  295. "tags": [
  296. "admin"
  297. ],
  298. "summary": "List cron tasks",
  299. "operationId": "adminCronList",
  300. "parameters": [
  301. {
  302. "type": "integer",
  303. "description": "page number of results to return (1-based)",
  304. "name": "page",
  305. "in": "query"
  306. },
  307. {
  308. "type": "integer",
  309. "description": "page size of results",
  310. "name": "limit",
  311. "in": "query"
  312. }
  313. ],
  314. "responses": {
  315. "200": {
  316. "$ref": "#/responses/CronList"
  317. },
  318. "403": {
  319. "$ref": "#/responses/forbidden"
  320. }
  321. }
  322. }
  323. },
  324. "/admin/cron/{task}": {
  325. "post": {
  326. "produces": [
  327. "application/json"
  328. ],
  329. "tags": [
  330. "admin"
  331. ],
  332. "summary": "Run cron task",
  333. "operationId": "adminCronRun",
  334. "parameters": [
  335. {
  336. "type": "string",
  337. "description": "task to run",
  338. "name": "task",
  339. "in": "path",
  340. "required": true
  341. }
  342. ],
  343. "responses": {
  344. "204": {
  345. "$ref": "#/responses/empty"
  346. },
  347. "404": {
  348. "$ref": "#/responses/notFound"
  349. }
  350. }
  351. }
  352. },
  353. "/admin/emails": {
  354. "get": {
  355. "produces": [
  356. "application/json"
  357. ],
  358. "tags": [
  359. "admin"
  360. ],
  361. "summary": "List all emails",
  362. "operationId": "adminGetAllEmails",
  363. "parameters": [
  364. {
  365. "type": "integer",
  366. "description": "page number of results to return (1-based)",
  367. "name": "page",
  368. "in": "query"
  369. },
  370. {
  371. "type": "integer",
  372. "description": "page size of results",
  373. "name": "limit",
  374. "in": "query"
  375. }
  376. ],
  377. "responses": {
  378. "200": {
  379. "$ref": "#/responses/EmailList"
  380. },
  381. "403": {
  382. "$ref": "#/responses/forbidden"
  383. }
  384. }
  385. }
  386. },
  387. "/admin/emails/search": {
  388. "get": {
  389. "produces": [
  390. "application/json"
  391. ],
  392. "tags": [
  393. "admin"
  394. ],
  395. "summary": "Search all emails",
  396. "operationId": "adminSearchEmails",
  397. "parameters": [
  398. {
  399. "type": "string",
  400. "description": "keyword",
  401. "name": "q",
  402. "in": "query"
  403. },
  404. {
  405. "type": "integer",
  406. "description": "page number of results to return (1-based)",
  407. "name": "page",
  408. "in": "query"
  409. },
  410. {
  411. "type": "integer",
  412. "description": "page size of results",
  413. "name": "limit",
  414. "in": "query"
  415. }
  416. ],
  417. "responses": {
  418. "200": {
  419. "$ref": "#/responses/EmailList"
  420. },
  421. "403": {
  422. "$ref": "#/responses/forbidden"
  423. }
  424. }
  425. }
  426. },
  427. "/admin/hooks": {
  428. "get": {
  429. "produces": [
  430. "application/json"
  431. ],
  432. "tags": [
  433. "admin"
  434. ],
  435. "summary": "List system's webhooks",
  436. "operationId": "adminListHooks",
  437. "parameters": [
  438. {
  439. "type": "integer",
  440. "description": "page number of results to return (1-based)",
  441. "name": "page",
  442. "in": "query"
  443. },
  444. {
  445. "type": "integer",
  446. "description": "page size of results",
  447. "name": "limit",
  448. "in": "query"
  449. },
  450. {
  451. "enum": [
  452. "system",
  453. "default",
  454. "all"
  455. ],
  456. "type": "string",
  457. "default": "system",
  458. "description": "system, default or both kinds of webhooks",
  459. "name": "type",
  460. "in": "query"
  461. }
  462. ],
  463. "responses": {
  464. "200": {
  465. "$ref": "#/responses/HookList"
  466. }
  467. }
  468. },
  469. "post": {
  470. "consumes": [
  471. "application/json"
  472. ],
  473. "produces": [
  474. "application/json"
  475. ],
  476. "tags": [
  477. "admin"
  478. ],
  479. "summary": "Create a hook",
  480. "operationId": "adminCreateHook",
  481. "parameters": [
  482. {
  483. "name": "body",
  484. "in": "body",
  485. "required": true,
  486. "schema": {
  487. "$ref": "#/definitions/CreateHookOption"
  488. }
  489. }
  490. ],
  491. "responses": {
  492. "201": {
  493. "$ref": "#/responses/Hook"
  494. }
  495. }
  496. }
  497. },
  498. "/admin/hooks/{id}": {
  499. "get": {
  500. "produces": [
  501. "application/json"
  502. ],
  503. "tags": [
  504. "admin"
  505. ],
  506. "summary": "Get a hook",
  507. "operationId": "adminGetHook",
  508. "parameters": [
  509. {
  510. "type": "integer",
  511. "format": "int64",
  512. "description": "id of the hook to get",
  513. "name": "id",
  514. "in": "path",
  515. "required": true
  516. }
  517. ],
  518. "responses": {
  519. "200": {
  520. "$ref": "#/responses/Hook"
  521. }
  522. }
  523. },
  524. "delete": {
  525. "produces": [
  526. "application/json"
  527. ],
  528. "tags": [
  529. "admin"
  530. ],
  531. "summary": "Delete a hook",
  532. "operationId": "adminDeleteHook",
  533. "parameters": [
  534. {
  535. "type": "integer",
  536. "format": "int64",
  537. "description": "id of the hook to delete",
  538. "name": "id",
  539. "in": "path",
  540. "required": true
  541. }
  542. ],
  543. "responses": {
  544. "204": {
  545. "$ref": "#/responses/empty"
  546. }
  547. }
  548. },
  549. "patch": {
  550. "consumes": [
  551. "application/json"
  552. ],
  553. "produces": [
  554. "application/json"
  555. ],
  556. "tags": [
  557. "admin"
  558. ],
  559. "summary": "Update a hook",
  560. "operationId": "adminEditHook",
  561. "parameters": [
  562. {
  563. "type": "integer",
  564. "format": "int64",
  565. "description": "id of the hook to update",
  566. "name": "id",
  567. "in": "path",
  568. "required": true
  569. },
  570. {
  571. "name": "body",
  572. "in": "body",
  573. "schema": {
  574. "$ref": "#/definitions/EditHookOption"
  575. }
  576. }
  577. ],
  578. "responses": {
  579. "200": {
  580. "$ref": "#/responses/Hook"
  581. }
  582. }
  583. }
  584. },
  585. "/admin/orgs": {
  586. "get": {
  587. "produces": [
  588. "application/json"
  589. ],
  590. "tags": [
  591. "admin"
  592. ],
  593. "summary": "List all organizations",
  594. "operationId": "adminGetAllOrgs",
  595. "parameters": [
  596. {
  597. "type": "integer",
  598. "description": "page number of results to return (1-based)",
  599. "name": "page",
  600. "in": "query"
  601. },
  602. {
  603. "type": "integer",
  604. "description": "page size of results",
  605. "name": "limit",
  606. "in": "query"
  607. }
  608. ],
  609. "responses": {
  610. "200": {
  611. "$ref": "#/responses/OrganizationList"
  612. },
  613. "403": {
  614. "$ref": "#/responses/forbidden"
  615. }
  616. }
  617. }
  618. },
  619. "/admin/runners/registration-token": {
  620. "get": {
  621. "produces": [
  622. "application/json"
  623. ],
  624. "tags": [
  625. "admin"
  626. ],
  627. "summary": "Get an global actions runner registration token",
  628. "operationId": "adminGetRunnerRegistrationToken",
  629. "responses": {
  630. "200": {
  631. "$ref": "#/responses/RegistrationToken"
  632. }
  633. }
  634. }
  635. },
  636. "/admin/unadopted": {
  637. "get": {
  638. "produces": [
  639. "application/json"
  640. ],
  641. "tags": [
  642. "admin"
  643. ],
  644. "summary": "List unadopted repositories",
  645. "operationId": "adminUnadoptedList",
  646. "parameters": [
  647. {
  648. "type": "integer",
  649. "description": "page number of results to return (1-based)",
  650. "name": "page",
  651. "in": "query"
  652. },
  653. {
  654. "type": "integer",
  655. "description": "page size of results",
  656. "name": "limit",
  657. "in": "query"
  658. },
  659. {
  660. "type": "string",
  661. "description": "pattern of repositories to search for",
  662. "name": "pattern",
  663. "in": "query"
  664. }
  665. ],
  666. "responses": {
  667. "200": {
  668. "$ref": "#/responses/StringSlice"
  669. },
  670. "403": {
  671. "$ref": "#/responses/forbidden"
  672. }
  673. }
  674. }
  675. },
  676. "/admin/unadopted/{owner}/{repo}": {
  677. "post": {
  678. "produces": [
  679. "application/json"
  680. ],
  681. "tags": [
  682. "admin"
  683. ],
  684. "summary": "Adopt unadopted files as a repository",
  685. "operationId": "adminAdoptRepository",
  686. "parameters": [
  687. {
  688. "type": "string",
  689. "description": "owner of the repo",
  690. "name": "owner",
  691. "in": "path",
  692. "required": true
  693. },
  694. {
  695. "type": "string",
  696. "description": "name of the repo",
  697. "name": "repo",
  698. "in": "path",
  699. "required": true
  700. }
  701. ],
  702. "responses": {
  703. "204": {
  704. "$ref": "#/responses/empty"
  705. },
  706. "403": {
  707. "$ref": "#/responses/forbidden"
  708. },
  709. "404": {
  710. "$ref": "#/responses/notFound"
  711. }
  712. }
  713. },
  714. "delete": {
  715. "produces": [
  716. "application/json"
  717. ],
  718. "tags": [
  719. "admin"
  720. ],
  721. "summary": "Delete unadopted files",
  722. "operationId": "adminDeleteUnadoptedRepository",
  723. "parameters": [
  724. {
  725. "type": "string",
  726. "description": "owner of the repo",
  727. "name": "owner",
  728. "in": "path",
  729. "required": true
  730. },
  731. {
  732. "type": "string",
  733. "description": "name of the repo",
  734. "name": "repo",
  735. "in": "path",
  736. "required": true
  737. }
  738. ],
  739. "responses": {
  740. "204": {
  741. "$ref": "#/responses/empty"
  742. },
  743. "403": {
  744. "$ref": "#/responses/forbidden"
  745. }
  746. }
  747. }
  748. },
  749. "/admin/users": {
  750. "get": {
  751. "produces": [
  752. "application/json"
  753. ],
  754. "tags": [
  755. "admin"
  756. ],
  757. "summary": "Search users according filter conditions",
  758. "operationId": "adminSearchUsers",
  759. "parameters": [
  760. {
  761. "type": "integer",
  762. "format": "int64",
  763. "description": "ID of the user's login source to search for",
  764. "name": "source_id",
  765. "in": "query"
  766. },
  767. {
  768. "type": "string",
  769. "description": "identifier of the user, provided by the external authenticator",
  770. "name": "login_name",
  771. "in": "query"
  772. },
  773. {
  774. "type": "integer",
  775. "description": "page number of results to return (1-based)",
  776. "name": "page",
  777. "in": "query"
  778. },
  779. {
  780. "type": "integer",
  781. "description": "page size of results",
  782. "name": "limit",
  783. "in": "query"
  784. }
  785. ],
  786. "responses": {
  787. "200": {
  788. "$ref": "#/responses/UserList"
  789. },
  790. "403": {
  791. "$ref": "#/responses/forbidden"
  792. }
  793. }
  794. },
  795. "post": {
  796. "consumes": [
  797. "application/json"
  798. ],
  799. "produces": [
  800. "application/json"
  801. ],
  802. "tags": [
  803. "admin"
  804. ],
  805. "summary": "Create a user",
  806. "operationId": "adminCreateUser",
  807. "parameters": [
  808. {
  809. "name": "body",
  810. "in": "body",
  811. "schema": {
  812. "$ref": "#/definitions/CreateUserOption"
  813. }
  814. }
  815. ],
  816. "responses": {
  817. "201": {
  818. "$ref": "#/responses/User"
  819. },
  820. "400": {
  821. "$ref": "#/responses/error"
  822. },
  823. "403": {
  824. "$ref": "#/responses/forbidden"
  825. },
  826. "422": {
  827. "$ref": "#/responses/validationError"
  828. }
  829. }
  830. }
  831. },
  832. "/admin/users/{username}": {
  833. "delete": {
  834. "produces": [
  835. "application/json"
  836. ],
  837. "tags": [
  838. "admin"
  839. ],
  840. "summary": "Delete a user",
  841. "operationId": "adminDeleteUser",
  842. "parameters": [
  843. {
  844. "type": "string",
  845. "description": "username of the user to delete",
  846. "name": "username",
  847. "in": "path",
  848. "required": true
  849. },
  850. {
  851. "type": "boolean",
  852. "description": "purge the user from the system completely",
  853. "name": "purge",
  854. "in": "query"
  855. }
  856. ],
  857. "responses": {
  858. "204": {
  859. "$ref": "#/responses/empty"
  860. },
  861. "403": {
  862. "$ref": "#/responses/forbidden"
  863. },
  864. "404": {
  865. "$ref": "#/responses/notFound"
  866. },
  867. "422": {
  868. "$ref": "#/responses/validationError"
  869. }
  870. }
  871. },
  872. "patch": {
  873. "consumes": [
  874. "application/json"
  875. ],
  876. "produces": [
  877. "application/json"
  878. ],
  879. "tags": [
  880. "admin"
  881. ],
  882. "summary": "Edit an existing user",
  883. "operationId": "adminEditUser",
  884. "parameters": [
  885. {
  886. "type": "string",
  887. "description": "username of the user whose data is to be edited",
  888. "name": "username",
  889. "in": "path",
  890. "required": true
  891. },
  892. {
  893. "name": "body",
  894. "in": "body",
  895. "schema": {
  896. "$ref": "#/definitions/EditUserOption"
  897. }
  898. }
  899. ],
  900. "responses": {
  901. "200": {
  902. "$ref": "#/responses/User"
  903. },
  904. "400": {
  905. "$ref": "#/responses/error"
  906. },
  907. "403": {
  908. "$ref": "#/responses/forbidden"
  909. },
  910. "422": {
  911. "$ref": "#/responses/validationError"
  912. }
  913. }
  914. }
  915. },
  916. "/admin/users/{username}/badges": {
  917. "get": {
  918. "produces": [
  919. "application/json"
  920. ],
  921. "tags": [
  922. "admin"
  923. ],
  924. "summary": "List a user's badges",
  925. "operationId": "adminListUserBadges",
  926. "parameters": [
  927. {
  928. "type": "string",
  929. "description": "username of the user whose badges are to be listed",
  930. "name": "username",
  931. "in": "path",
  932. "required": true
  933. }
  934. ],
  935. "responses": {
  936. "200": {
  937. "$ref": "#/responses/BadgeList"
  938. },
  939. "404": {
  940. "$ref": "#/responses/notFound"
  941. }
  942. }
  943. },
  944. "post": {
  945. "consumes": [
  946. "application/json"
  947. ],
  948. "produces": [
  949. "application/json"
  950. ],
  951. "tags": [
  952. "admin"
  953. ],
  954. "summary": "Add a badge to a user",
  955. "operationId": "adminAddUserBadges",
  956. "parameters": [
  957. {
  958. "type": "string",
  959. "description": "username of the user to whom a badge is to be added",
  960. "name": "username",
  961. "in": "path",
  962. "required": true
  963. },
  964. {
  965. "name": "body",
  966. "in": "body",
  967. "schema": {
  968. "$ref": "#/definitions/UserBadgeOption"
  969. }
  970. }
  971. ],
  972. "responses": {
  973. "204": {
  974. "$ref": "#/responses/empty"
  975. },
  976. "403": {
  977. "$ref": "#/responses/forbidden"
  978. }
  979. }
  980. },
  981. "delete": {
  982. "produces": [
  983. "application/json"
  984. ],
  985. "tags": [
  986. "admin"
  987. ],
  988. "summary": "Remove a badge from a user",
  989. "operationId": "adminDeleteUserBadges",
  990. "parameters": [
  991. {
  992. "type": "string",
  993. "description": "username of the user whose badge is to be deleted",
  994. "name": "username",
  995. "in": "path",
  996. "required": true
  997. },
  998. {
  999. "name": "body",
  1000. "in": "body",
  1001. "schema": {
  1002. "$ref": "#/definitions/UserBadgeOption"
  1003. }
  1004. }
  1005. ],
  1006. "responses": {
  1007. "204": {
  1008. "$ref": "#/responses/empty"
  1009. },
  1010. "403": {
  1011. "$ref": "#/responses/forbidden"
  1012. },
  1013. "422": {
  1014. "$ref": "#/responses/validationError"
  1015. }
  1016. }
  1017. }
  1018. },
  1019. "/admin/users/{username}/keys": {
  1020. "post": {
  1021. "consumes": [
  1022. "application/json"
  1023. ],
  1024. "produces": [
  1025. "application/json"
  1026. ],
  1027. "tags": [
  1028. "admin"
  1029. ],
  1030. "summary": "Add a public key on behalf of a user",
  1031. "operationId": "adminCreatePublicKey",
  1032. "parameters": [
  1033. {
  1034. "type": "string",
  1035. "description": "username of the user who is to receive a public key",
  1036. "name": "username",
  1037. "in": "path",
  1038. "required": true
  1039. },
  1040. {
  1041. "name": "key",
  1042. "in": "body",
  1043. "schema": {
  1044. "$ref": "#/definitions/CreateKeyOption"
  1045. }
  1046. }
  1047. ],
  1048. "responses": {
  1049. "201": {
  1050. "$ref": "#/responses/PublicKey"
  1051. },
  1052. "403": {
  1053. "$ref": "#/responses/forbidden"
  1054. },
  1055. "422": {
  1056. "$ref": "#/responses/validationError"
  1057. }
  1058. }
  1059. }
  1060. },
  1061. "/admin/users/{username}/keys/{id}": {
  1062. "delete": {
  1063. "produces": [
  1064. "application/json"
  1065. ],
  1066. "tags": [
  1067. "admin"
  1068. ],
  1069. "summary": "Delete a user's public key",
  1070. "operationId": "adminDeleteUserPublicKey",
  1071. "parameters": [
  1072. {
  1073. "type": "string",
  1074. "description": "username of the user whose public key is to be deleted",
  1075. "name": "username",
  1076. "in": "path",
  1077. "required": true
  1078. },
  1079. {
  1080. "type": "integer",
  1081. "format": "int64",
  1082. "description": "id of the key to delete",
  1083. "name": "id",
  1084. "in": "path",
  1085. "required": true
  1086. }
  1087. ],
  1088. "responses": {
  1089. "204": {
  1090. "$ref": "#/responses/empty"
  1091. },
  1092. "403": {
  1093. "$ref": "#/responses/forbidden"
  1094. },
  1095. "404": {
  1096. "$ref": "#/responses/notFound"
  1097. }
  1098. }
  1099. }
  1100. },
  1101. "/admin/users/{username}/orgs": {
  1102. "post": {
  1103. "consumes": [
  1104. "application/json"
  1105. ],
  1106. "produces": [
  1107. "application/json"
  1108. ],
  1109. "tags": [
  1110. "admin"
  1111. ],
  1112. "summary": "Create an organization",
  1113. "operationId": "adminCreateOrg",
  1114. "parameters": [
  1115. {
  1116. "type": "string",
  1117. "description": "username of the user who will own the created organization",
  1118. "name": "username",
  1119. "in": "path",
  1120. "required": true
  1121. },
  1122. {
  1123. "name": "organization",
  1124. "in": "body",
  1125. "required": true,
  1126. "schema": {
  1127. "$ref": "#/definitions/CreateOrgOption"
  1128. }
  1129. }
  1130. ],
  1131. "responses": {
  1132. "201": {
  1133. "$ref": "#/responses/Organization"
  1134. },
  1135. "403": {
  1136. "$ref": "#/responses/forbidden"
  1137. },
  1138. "422": {
  1139. "$ref": "#/responses/validationError"
  1140. }
  1141. }
  1142. }
  1143. },
  1144. "/admin/users/{username}/rename": {
  1145. "post": {
  1146. "produces": [
  1147. "application/json"
  1148. ],
  1149. "tags": [
  1150. "admin"
  1151. ],
  1152. "summary": "Rename a user",
  1153. "operationId": "adminRenameUser",
  1154. "parameters": [
  1155. {
  1156. "type": "string",
  1157. "description": "current username of the user",
  1158. "name": "username",
  1159. "in": "path",
  1160. "required": true
  1161. },
  1162. {
  1163. "name": "body",
  1164. "in": "body",
  1165. "required": true,
  1166. "schema": {
  1167. "$ref": "#/definitions/RenameUserOption"
  1168. }
  1169. }
  1170. ],
  1171. "responses": {
  1172. "204": {
  1173. "$ref": "#/responses/empty"
  1174. },
  1175. "403": {
  1176. "$ref": "#/responses/forbidden"
  1177. },
  1178. "422": {
  1179. "$ref": "#/responses/validationError"
  1180. }
  1181. }
  1182. }
  1183. },
  1184. "/admin/users/{username}/repos": {
  1185. "post": {
  1186. "consumes": [
  1187. "application/json"
  1188. ],
  1189. "produces": [
  1190. "application/json"
  1191. ],
  1192. "tags": [
  1193. "admin"
  1194. ],
  1195. "summary": "Create a repository on behalf of a user",
  1196. "operationId": "adminCreateRepo",
  1197. "parameters": [
  1198. {
  1199. "type": "string",
  1200. "description": "username of the user who will own the created repository",
  1201. "name": "username",
  1202. "in": "path",
  1203. "required": true
  1204. },
  1205. {
  1206. "name": "repository",
  1207. "in": "body",
  1208. "required": true,
  1209. "schema": {
  1210. "$ref": "#/definitions/CreateRepoOption"
  1211. }
  1212. }
  1213. ],
  1214. "responses": {
  1215. "201": {
  1216. "$ref": "#/responses/Repository"
  1217. },
  1218. "400": {
  1219. "$ref": "#/responses/error"
  1220. },
  1221. "403": {
  1222. "$ref": "#/responses/forbidden"
  1223. },
  1224. "404": {
  1225. "$ref": "#/responses/notFound"
  1226. },
  1227. "409": {
  1228. "$ref": "#/responses/error"
  1229. },
  1230. "422": {
  1231. "$ref": "#/responses/validationError"
  1232. }
  1233. }
  1234. }
  1235. },
  1236. "/gitignore/templates": {
  1237. "get": {
  1238. "produces": [
  1239. "application/json"
  1240. ],
  1241. "tags": [
  1242. "miscellaneous"
  1243. ],
  1244. "summary": "Returns a list of all gitignore templates",
  1245. "operationId": "listGitignoresTemplates",
  1246. "responses": {
  1247. "200": {
  1248. "$ref": "#/responses/GitignoreTemplateList"
  1249. }
  1250. }
  1251. }
  1252. },
  1253. "/gitignore/templates/{name}": {
  1254. "get": {
  1255. "produces": [
  1256. "application/json"
  1257. ],
  1258. "tags": [
  1259. "miscellaneous"
  1260. ],
  1261. "summary": "Returns information about a gitignore template",
  1262. "operationId": "getGitignoreTemplateInfo",
  1263. "parameters": [
  1264. {
  1265. "type": "string",
  1266. "description": "name of the template",
  1267. "name": "name",
  1268. "in": "path",
  1269. "required": true
  1270. }
  1271. ],
  1272. "responses": {
  1273. "200": {
  1274. "$ref": "#/responses/GitignoreTemplateInfo"
  1275. },
  1276. "404": {
  1277. "$ref": "#/responses/notFound"
  1278. }
  1279. }
  1280. }
  1281. },
  1282. "/label/templates": {
  1283. "get": {
  1284. "produces": [
  1285. "application/json"
  1286. ],
  1287. "tags": [
  1288. "miscellaneous"
  1289. ],
  1290. "summary": "Returns a list of all label templates",
  1291. "operationId": "listLabelTemplates",
  1292. "responses": {
  1293. "200": {
  1294. "$ref": "#/responses/LabelTemplateList"
  1295. }
  1296. }
  1297. }
  1298. },
  1299. "/label/templates/{name}": {
  1300. "get": {
  1301. "produces": [
  1302. "application/json"
  1303. ],
  1304. "tags": [
  1305. "miscellaneous"
  1306. ],
  1307. "summary": "Returns all labels in a template",
  1308. "operationId": "getLabelTemplateInfo",
  1309. "parameters": [
  1310. {
  1311. "type": "string",
  1312. "description": "name of the template",
  1313. "name": "name",
  1314. "in": "path",
  1315. "required": true
  1316. }
  1317. ],
  1318. "responses": {
  1319. "200": {
  1320. "$ref": "#/responses/LabelTemplateInfo"
  1321. },
  1322. "404": {
  1323. "$ref": "#/responses/notFound"
  1324. }
  1325. }
  1326. }
  1327. },
  1328. "/licenses": {
  1329. "get": {
  1330. "produces": [
  1331. "application/json"
  1332. ],
  1333. "tags": [
  1334. "miscellaneous"
  1335. ],
  1336. "summary": "Returns a list of all license templates",
  1337. "operationId": "listLicenseTemplates",
  1338. "responses": {
  1339. "200": {
  1340. "$ref": "#/responses/LicenseTemplateList"
  1341. }
  1342. }
  1343. }
  1344. },
  1345. "/licenses/{name}": {
  1346. "get": {
  1347. "produces": [
  1348. "application/json"
  1349. ],
  1350. "tags": [
  1351. "miscellaneous"
  1352. ],
  1353. "summary": "Returns information about a license template",
  1354. "operationId": "getLicenseTemplateInfo",
  1355. "parameters": [
  1356. {
  1357. "type": "string",
  1358. "description": "name of the license",
  1359. "name": "name",
  1360. "in": "path",
  1361. "required": true
  1362. }
  1363. ],
  1364. "responses": {
  1365. "200": {
  1366. "$ref": "#/responses/LicenseTemplateInfo"
  1367. },
  1368. "404": {
  1369. "$ref": "#/responses/notFound"
  1370. }
  1371. }
  1372. }
  1373. },
  1374. "/markdown": {
  1375. "post": {
  1376. "consumes": [
  1377. "application/json"
  1378. ],
  1379. "produces": [
  1380. "text/html"
  1381. ],
  1382. "tags": [
  1383. "miscellaneous"
  1384. ],
  1385. "summary": "Render a markdown document as HTML",
  1386. "operationId": "renderMarkdown",
  1387. "parameters": [
  1388. {
  1389. "name": "body",
  1390. "in": "body",
  1391. "schema": {
  1392. "$ref": "#/definitions/MarkdownOption"
  1393. }
  1394. }
  1395. ],
  1396. "responses": {
  1397. "200": {
  1398. "$ref": "#/responses/MarkdownRender"
  1399. },
  1400. "422": {
  1401. "$ref": "#/responses/validationError"
  1402. }
  1403. }
  1404. }
  1405. },
  1406. "/markdown/raw": {
  1407. "post": {
  1408. "consumes": [
  1409. "text/plain"
  1410. ],
  1411. "produces": [
  1412. "text/html"
  1413. ],
  1414. "tags": [
  1415. "miscellaneous"
  1416. ],
  1417. "summary": "Render raw markdown as HTML",
  1418. "operationId": "renderMarkdownRaw",
  1419. "parameters": [
  1420. {
  1421. "description": "Request body to render",
  1422. "name": "body",
  1423. "in": "body",
  1424. "required": true,
  1425. "schema": {
  1426. "type": "string"
  1427. }
  1428. }
  1429. ],
  1430. "responses": {
  1431. "200": {
  1432. "$ref": "#/responses/MarkdownRender"
  1433. },
  1434. "422": {
  1435. "$ref": "#/responses/validationError"
  1436. }
  1437. }
  1438. }
  1439. },
  1440. "/markup": {
  1441. "post": {
  1442. "consumes": [
  1443. "application/json"
  1444. ],
  1445. "produces": [
  1446. "text/html"
  1447. ],
  1448. "tags": [
  1449. "miscellaneous"
  1450. ],
  1451. "summary": "Render a markup document as HTML",
  1452. "operationId": "renderMarkup",
  1453. "parameters": [
  1454. {
  1455. "name": "body",
  1456. "in": "body",
  1457. "schema": {
  1458. "$ref": "#/definitions/MarkupOption"
  1459. }
  1460. }
  1461. ],
  1462. "responses": {
  1463. "200": {
  1464. "$ref": "#/responses/MarkupRender"
  1465. },
  1466. "422": {
  1467. "$ref": "#/responses/validationError"
  1468. }
  1469. }
  1470. }
  1471. },
  1472. "/nodeinfo": {
  1473. "get": {
  1474. "produces": [
  1475. "application/json"
  1476. ],
  1477. "tags": [
  1478. "miscellaneous"
  1479. ],
  1480. "summary": "Returns the nodeinfo of the Gitea application",
  1481. "operationId": "getNodeInfo",
  1482. "responses": {
  1483. "200": {
  1484. "$ref": "#/responses/NodeInfo"
  1485. }
  1486. }
  1487. }
  1488. },
  1489. "/notifications": {
  1490. "get": {
  1491. "consumes": [
  1492. "application/json"
  1493. ],
  1494. "produces": [
  1495. "application/json"
  1496. ],
  1497. "tags": [
  1498. "notification"
  1499. ],
  1500. "summary": "List users's notification threads",
  1501. "operationId": "notifyGetList",
  1502. "parameters": [
  1503. {
  1504. "type": "boolean",
  1505. "description": "If true, show notifications marked as read. Default value is false",
  1506. "name": "all",
  1507. "in": "query"
  1508. },
  1509. {
  1510. "type": "array",
  1511. "items": {
  1512. "type": "string"
  1513. },
  1514. "collectionFormat": "multi",
  1515. "description": "Show notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread \u0026 pinned.",
  1516. "name": "status-types",
  1517. "in": "query"
  1518. },
  1519. {
  1520. "type": "array",
  1521. "items": {
  1522. "enum": [
  1523. "issue",
  1524. "pull",
  1525. "commit",
  1526. "repository"
  1527. ],
  1528. "type": "string"
  1529. },
  1530. "collectionFormat": "multi",
  1531. "description": "filter notifications by subject type",
  1532. "name": "subject-type",
  1533. "in": "query"
  1534. },
  1535. {
  1536. "type": "string",
  1537. "format": "date-time",
  1538. "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format",
  1539. "name": "since",
  1540. "in": "query"
  1541. },
  1542. {
  1543. "type": "string",
  1544. "format": "date-time",
  1545. "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format",
  1546. "name": "before",
  1547. "in": "query"
  1548. },
  1549. {
  1550. "type": "integer",
  1551. "description": "page number of results to return (1-based)",
  1552. "name": "page",
  1553. "in": "query"
  1554. },
  1555. {
  1556. "type": "integer",
  1557. "description": "page size of results",
  1558. "name": "limit",
  1559. "in": "query"
  1560. }
  1561. ],
  1562. "responses": {
  1563. "200": {
  1564. "$ref": "#/responses/NotificationThreadList"
  1565. }
  1566. }
  1567. },
  1568. "put": {
  1569. "consumes": [
  1570. "application/json"
  1571. ],
  1572. "produces": [
  1573. "application/json"
  1574. ],
  1575. "tags": [
  1576. "notification"
  1577. ],
  1578. "summary": "Mark notification threads as read, pinned or unread",
  1579. "operationId": "notifyReadList",
  1580. "parameters": [
  1581. {
  1582. "type": "string",
  1583. "format": "date-time",
  1584. "description": "Describes the last point that notifications were checked. Anything updated since this time will not be updated.",
  1585. "name": "last_read_at",
  1586. "in": "query"
  1587. },
  1588. {
  1589. "type": "string",
  1590. "description": "If true, mark all notifications on this repo. Default value is false",
  1591. "name": "all",
  1592. "in": "query"
  1593. },
  1594. {
  1595. "type": "array",
  1596. "items": {
  1597. "type": "string"
  1598. },
  1599. "collectionFormat": "multi",
  1600. "description": "Mark notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread.",
  1601. "name": "status-types",
  1602. "in": "query"
  1603. },
  1604. {
  1605. "type": "string",
  1606. "description": "Status to mark notifications as, Defaults to read.",
  1607. "name": "to-status",
  1608. "in": "query"
  1609. }
  1610. ],
  1611. "responses": {
  1612. "205": {
  1613. "$ref": "#/responses/NotificationThreadList"
  1614. }
  1615. }
  1616. }
  1617. },
  1618. "/notifications/new": {
  1619. "get": {
  1620. "tags": [
  1621. "notification"
  1622. ],
  1623. "summary": "Check if unread notifications exist",
  1624. "operationId": "notifyNewAvailable",
  1625. "responses": {
  1626. "200": {
  1627. "$ref": "#/responses/NotificationCount"
  1628. }
  1629. }
  1630. }
  1631. },
  1632. "/notifications/threads/{id}": {
  1633. "get": {
  1634. "consumes": [
  1635. "application/json"
  1636. ],
  1637. "produces": [
  1638. "application/json"
  1639. ],
  1640. "tags": [
  1641. "notification"
  1642. ],
  1643. "summary": "Get notification thread by ID",
  1644. "operationId": "notifyGetThread",
  1645. "parameters": [
  1646. {
  1647. "type": "string",
  1648. "description": "id of notification thread",
  1649. "name": "id",
  1650. "in": "path",
  1651. "required": true
  1652. }
  1653. ],
  1654. "responses": {
  1655. "200": {
  1656. "$ref": "#/responses/NotificationThread"
  1657. },
  1658. "403": {
  1659. "$ref": "#/responses/forbidden"
  1660. },
  1661. "404": {
  1662. "$ref": "#/responses/notFound"
  1663. }
  1664. }
  1665. },
  1666. "patch": {
  1667. "consumes": [
  1668. "application/json"
  1669. ],
  1670. "produces": [
  1671. "application/json"
  1672. ],
  1673. "tags": [
  1674. "notification"
  1675. ],
  1676. "summary": "Mark notification thread as read by ID",
  1677. "operationId": "notifyReadThread",
  1678. "parameters": [
  1679. {
  1680. "type": "string",
  1681. "description": "id of notification thread",
  1682. "name": "id",
  1683. "in": "path",
  1684. "required": true
  1685. },
  1686. {
  1687. "type": "string",
  1688. "default": "read",
  1689. "description": "Status to mark notifications as",
  1690. "name": "to-status",
  1691. "in": "query"
  1692. }
  1693. ],
  1694. "responses": {
  1695. "205": {
  1696. "$ref": "#/responses/NotificationThread"
  1697. },
  1698. "403": {
  1699. "$ref": "#/responses/forbidden"
  1700. },
  1701. "404": {
  1702. "$ref": "#/responses/notFound"
  1703. }
  1704. }
  1705. }
  1706. },
  1707. "/org/{org}/repos": {
  1708. "post": {
  1709. "consumes": [
  1710. "application/json"
  1711. ],
  1712. "produces": [
  1713. "application/json"
  1714. ],
  1715. "tags": [
  1716. "organization"
  1717. ],
  1718. "summary": "Create a repository in an organization",
  1719. "operationId": "createOrgRepoDeprecated",
  1720. "deprecated": true,
  1721. "parameters": [
  1722. {
  1723. "type": "string",
  1724. "description": "name of organization",
  1725. "name": "org",
  1726. "in": "path",
  1727. "required": true
  1728. },
  1729. {
  1730. "name": "body",
  1731. "in": "body",
  1732. "schema": {
  1733. "$ref": "#/definitions/CreateRepoOption"
  1734. }
  1735. }
  1736. ],
  1737. "responses": {
  1738. "201": {
  1739. "$ref": "#/responses/Repository"
  1740. },
  1741. "403": {
  1742. "$ref": "#/responses/forbidden"
  1743. },
  1744. "404": {
  1745. "$ref": "#/responses/notFound"
  1746. },
  1747. "422": {
  1748. "$ref": "#/responses/validationError"
  1749. }
  1750. }
  1751. }
  1752. },
  1753. "/orgs": {
  1754. "get": {
  1755. "produces": [
  1756. "application/json"
  1757. ],
  1758. "tags": [
  1759. "organization"
  1760. ],
  1761. "summary": "Get list of organizations",
  1762. "operationId": "orgGetAll",
  1763. "parameters": [
  1764. {
  1765. "type": "integer",
  1766. "description": "page number of results to return (1-based)",
  1767. "name": "page",
  1768. "in": "query"
  1769. },
  1770. {
  1771. "type": "integer",
  1772. "description": "page size of results",
  1773. "name": "limit",
  1774. "in": "query"
  1775. }
  1776. ],
  1777. "responses": {
  1778. "200": {
  1779. "$ref": "#/responses/OrganizationList"
  1780. }
  1781. }
  1782. },
  1783. "post": {
  1784. "consumes": [
  1785. "application/json"
  1786. ],
  1787. "produces": [
  1788. "application/json"
  1789. ],
  1790. "tags": [
  1791. "organization"
  1792. ],
  1793. "summary": "Create an organization",
  1794. "operationId": "orgCreate",
  1795. "parameters": [
  1796. {
  1797. "name": "organization",
  1798. "in": "body",
  1799. "required": true,
  1800. "schema": {
  1801. "$ref": "#/definitions/CreateOrgOption"
  1802. }
  1803. }
  1804. ],
  1805. "responses": {
  1806. "201": {
  1807. "$ref": "#/responses/Organization"
  1808. },
  1809. "403": {
  1810. "$ref": "#/responses/forbidden"
  1811. },
  1812. "422": {
  1813. "$ref": "#/responses/validationError"
  1814. }
  1815. }
  1816. }
  1817. },
  1818. "/orgs/{org}": {
  1819. "get": {
  1820. "produces": [
  1821. "application/json"
  1822. ],
  1823. "tags": [
  1824. "organization"
  1825. ],
  1826. "summary": "Get an organization",
  1827. "operationId": "orgGet",
  1828. "parameters": [
  1829. {
  1830. "type": "string",
  1831. "description": "name of the organization to get",
  1832. "name": "org",
  1833. "in": "path",
  1834. "required": true
  1835. }
  1836. ],
  1837. "responses": {
  1838. "200": {
  1839. "$ref": "#/responses/Organization"
  1840. },
  1841. "404": {
  1842. "$ref": "#/responses/notFound"
  1843. }
  1844. }
  1845. },
  1846. "delete": {
  1847. "produces": [
  1848. "application/json"
  1849. ],
  1850. "tags": [
  1851. "organization"
  1852. ],
  1853. "summary": "Delete an organization",
  1854. "operationId": "orgDelete",
  1855. "parameters": [
  1856. {
  1857. "type": "string",
  1858. "description": "organization that is to be deleted",
  1859. "name": "org",
  1860. "in": "path",
  1861. "required": true
  1862. }
  1863. ],
  1864. "responses": {
  1865. "204": {
  1866. "$ref": "#/responses/empty"
  1867. },
  1868. "404": {
  1869. "$ref": "#/responses/notFound"
  1870. }
  1871. }
  1872. },
  1873. "patch": {
  1874. "consumes": [
  1875. "application/json"
  1876. ],
  1877. "produces": [
  1878. "application/json"
  1879. ],
  1880. "tags": [
  1881. "organization"
  1882. ],
  1883. "summary": "Edit an organization",
  1884. "operationId": "orgEdit",
  1885. "parameters": [
  1886. {
  1887. "type": "string",
  1888. "description": "name of the organization to edit",
  1889. "name": "org",
  1890. "in": "path",
  1891. "required": true
  1892. },
  1893. {
  1894. "name": "body",
  1895. "in": "body",
  1896. "required": true,
  1897. "schema": {
  1898. "$ref": "#/definitions/EditOrgOption"
  1899. }
  1900. }
  1901. ],
  1902. "responses": {
  1903. "200": {
  1904. "$ref": "#/responses/Organization"
  1905. },
  1906. "404": {
  1907. "$ref": "#/responses/notFound"
  1908. }
  1909. }
  1910. }
  1911. },
  1912. "/orgs/{org}/actions/jobs": {
  1913. "get": {
  1914. "produces": [
  1915. "application/json"
  1916. ],
  1917. "tags": [
  1918. "organization"
  1919. ],
  1920. "summary": "Get org-level workflow jobs",
  1921. "operationId": "getOrgWorkflowJobs",
  1922. "parameters": [
  1923. {
  1924. "type": "string",
  1925. "description": "name of the organization",
  1926. "name": "org",
  1927. "in": "path",
  1928. "required": true
  1929. },
  1930. {
  1931. "type": "string",
  1932. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  1933. "name": "status",
  1934. "in": "query"
  1935. },
  1936. {
  1937. "type": "integer",
  1938. "description": "page number of results to return (1-based)",
  1939. "name": "page",
  1940. "in": "query"
  1941. },
  1942. {
  1943. "type": "integer",
  1944. "description": "page size of results",
  1945. "name": "limit",
  1946. "in": "query"
  1947. }
  1948. ],
  1949. "responses": {
  1950. "200": {
  1951. "$ref": "#/responses/WorkflowJobsList"
  1952. },
  1953. "400": {
  1954. "$ref": "#/responses/error"
  1955. },
  1956. "404": {
  1957. "$ref": "#/responses/notFound"
  1958. }
  1959. }
  1960. }
  1961. },
  1962. "/orgs/{org}/actions/runners": {
  1963. "get": {
  1964. "produces": [
  1965. "application/json"
  1966. ],
  1967. "tags": [
  1968. "organization"
  1969. ],
  1970. "summary": "Get org-level runners",
  1971. "operationId": "getOrgRunners",
  1972. "parameters": [
  1973. {
  1974. "type": "string",
  1975. "description": "name of the organization",
  1976. "name": "org",
  1977. "in": "path",
  1978. "required": true
  1979. }
  1980. ],
  1981. "responses": {
  1982. "200": {
  1983. "$ref": "#/definitions/ActionRunnersResponse"
  1984. },
  1985. "400": {
  1986. "$ref": "#/responses/error"
  1987. },
  1988. "404": {
  1989. "$ref": "#/responses/notFound"
  1990. }
  1991. }
  1992. }
  1993. },
  1994. "/orgs/{org}/actions/runners/registration-token": {
  1995. "get": {
  1996. "produces": [
  1997. "application/json"
  1998. ],
  1999. "tags": [
  2000. "organization"
  2001. ],
  2002. "summary": "Get an organization's actions runner registration token",
  2003. "operationId": "orgGetRunnerRegistrationToken",
  2004. "parameters": [
  2005. {
  2006. "type": "string",
  2007. "description": "name of the organization",
  2008. "name": "org",
  2009. "in": "path",
  2010. "required": true
  2011. }
  2012. ],
  2013. "responses": {
  2014. "200": {
  2015. "$ref": "#/responses/RegistrationToken"
  2016. }
  2017. }
  2018. },
  2019. "post": {
  2020. "produces": [
  2021. "application/json"
  2022. ],
  2023. "tags": [
  2024. "organization"
  2025. ],
  2026. "summary": "Get an organization's actions runner registration token",
  2027. "operationId": "orgCreateRunnerRegistrationToken",
  2028. "parameters": [
  2029. {
  2030. "type": "string",
  2031. "description": "name of the organization",
  2032. "name": "org",
  2033. "in": "path",
  2034. "required": true
  2035. }
  2036. ],
  2037. "responses": {
  2038. "200": {
  2039. "$ref": "#/responses/RegistrationToken"
  2040. }
  2041. }
  2042. }
  2043. },
  2044. "/orgs/{org}/actions/runners/{runner_id}": {
  2045. "get": {
  2046. "produces": [
  2047. "application/json"
  2048. ],
  2049. "tags": [
  2050. "organization"
  2051. ],
  2052. "summary": "Get an org-level runner",
  2053. "operationId": "getOrgRunner",
  2054. "parameters": [
  2055. {
  2056. "type": "string",
  2057. "description": "name of the organization",
  2058. "name": "org",
  2059. "in": "path",
  2060. "required": true
  2061. },
  2062. {
  2063. "type": "string",
  2064. "description": "id of the runner",
  2065. "name": "runner_id",
  2066. "in": "path",
  2067. "required": true
  2068. }
  2069. ],
  2070. "responses": {
  2071. "200": {
  2072. "$ref": "#/definitions/ActionRunner"
  2073. },
  2074. "400": {
  2075. "$ref": "#/responses/error"
  2076. },
  2077. "404": {
  2078. "$ref": "#/responses/notFound"
  2079. }
  2080. }
  2081. },
  2082. "delete": {
  2083. "produces": [
  2084. "application/json"
  2085. ],
  2086. "tags": [
  2087. "organization"
  2088. ],
  2089. "summary": "Delete an org-level runner",
  2090. "operationId": "deleteOrgRunner",
  2091. "parameters": [
  2092. {
  2093. "type": "string",
  2094. "description": "name of the organization",
  2095. "name": "org",
  2096. "in": "path",
  2097. "required": true
  2098. },
  2099. {
  2100. "type": "string",
  2101. "description": "id of the runner",
  2102. "name": "runner_id",
  2103. "in": "path",
  2104. "required": true
  2105. }
  2106. ],
  2107. "responses": {
  2108. "204": {
  2109. "description": "runner has been deleted"
  2110. },
  2111. "400": {
  2112. "$ref": "#/responses/error"
  2113. },
  2114. "404": {
  2115. "$ref": "#/responses/notFound"
  2116. }
  2117. }
  2118. }
  2119. },
  2120. "/orgs/{org}/actions/runs": {
  2121. "get": {
  2122. "produces": [
  2123. "application/json"
  2124. ],
  2125. "tags": [
  2126. "organization"
  2127. ],
  2128. "summary": "Get org-level workflow runs",
  2129. "operationId": "getOrgWorkflowRuns",
  2130. "parameters": [
  2131. {
  2132. "type": "string",
  2133. "description": "name of the organization",
  2134. "name": "org",
  2135. "in": "path",
  2136. "required": true
  2137. },
  2138. {
  2139. "type": "string",
  2140. "description": "workflow event name",
  2141. "name": "event",
  2142. "in": "query"
  2143. },
  2144. {
  2145. "type": "string",
  2146. "description": "workflow branch",
  2147. "name": "branch",
  2148. "in": "query"
  2149. },
  2150. {
  2151. "type": "string",
  2152. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  2153. "name": "status",
  2154. "in": "query"
  2155. },
  2156. {
  2157. "type": "string",
  2158. "description": "triggered by user",
  2159. "name": "actor",
  2160. "in": "query"
  2161. },
  2162. {
  2163. "type": "string",
  2164. "description": "triggering sha of the workflow run",
  2165. "name": "head_sha",
  2166. "in": "query"
  2167. },
  2168. {
  2169. "type": "integer",
  2170. "description": "page number of results to return (1-based)",
  2171. "name": "page",
  2172. "in": "query"
  2173. },
  2174. {
  2175. "type": "integer",
  2176. "description": "page size of results",
  2177. "name": "limit",
  2178. "in": "query"
  2179. }
  2180. ],
  2181. "responses": {
  2182. "200": {
  2183. "$ref": "#/responses/WorkflowRunsList"
  2184. },
  2185. "400": {
  2186. "$ref": "#/responses/error"
  2187. },
  2188. "404": {
  2189. "$ref": "#/responses/notFound"
  2190. }
  2191. }
  2192. }
  2193. },
  2194. "/orgs/{org}/actions/secrets": {
  2195. "get": {
  2196. "produces": [
  2197. "application/json"
  2198. ],
  2199. "tags": [
  2200. "organization"
  2201. ],
  2202. "summary": "List an organization's actions secrets",
  2203. "operationId": "orgListActionsSecrets",
  2204. "parameters": [
  2205. {
  2206. "type": "string",
  2207. "description": "name of the organization",
  2208. "name": "org",
  2209. "in": "path",
  2210. "required": true
  2211. },
  2212. {
  2213. "type": "integer",
  2214. "description": "page number of results to return (1-based)",
  2215. "name": "page",
  2216. "in": "query"
  2217. },
  2218. {
  2219. "type": "integer",
  2220. "description": "page size of results",
  2221. "name": "limit",
  2222. "in": "query"
  2223. }
  2224. ],
  2225. "responses": {
  2226. "200": {
  2227. "$ref": "#/responses/SecretList"
  2228. },
  2229. "404": {
  2230. "$ref": "#/responses/notFound"
  2231. }
  2232. }
  2233. }
  2234. },
  2235. "/orgs/{org}/actions/secrets/{secretname}": {
  2236. "put": {
  2237. "consumes": [
  2238. "application/json"
  2239. ],
  2240. "produces": [
  2241. "application/json"
  2242. ],
  2243. "tags": [
  2244. "organization"
  2245. ],
  2246. "summary": "Create or Update a secret value in an organization",
  2247. "operationId": "updateOrgSecret",
  2248. "parameters": [
  2249. {
  2250. "type": "string",
  2251. "description": "name of organization",
  2252. "name": "org",
  2253. "in": "path",
  2254. "required": true
  2255. },
  2256. {
  2257. "type": "string",
  2258. "description": "name of the secret",
  2259. "name": "secretname",
  2260. "in": "path",
  2261. "required": true
  2262. },
  2263. {
  2264. "name": "body",
  2265. "in": "body",
  2266. "schema": {
  2267. "$ref": "#/definitions/CreateOrUpdateSecretOption"
  2268. }
  2269. }
  2270. ],
  2271. "responses": {
  2272. "201": {
  2273. "description": "response when creating a secret"
  2274. },
  2275. "204": {
  2276. "description": "response when updating a secret"
  2277. },
  2278. "400": {
  2279. "$ref": "#/responses/error"
  2280. },
  2281. "404": {
  2282. "$ref": "#/responses/notFound"
  2283. }
  2284. }
  2285. },
  2286. "delete": {
  2287. "consumes": [
  2288. "application/json"
  2289. ],
  2290. "produces": [
  2291. "application/json"
  2292. ],
  2293. "tags": [
  2294. "organization"
  2295. ],
  2296. "summary": "Delete a secret in an organization",
  2297. "operationId": "deleteOrgSecret",
  2298. "parameters": [
  2299. {
  2300. "type": "string",
  2301. "description": "name of organization",
  2302. "name": "org",
  2303. "in": "path",
  2304. "required": true
  2305. },
  2306. {
  2307. "type": "string",
  2308. "description": "name of the secret",
  2309. "name": "secretname",
  2310. "in": "path",
  2311. "required": true
  2312. }
  2313. ],
  2314. "responses": {
  2315. "204": {
  2316. "description": "delete one secret of the organization"
  2317. },
  2318. "400": {
  2319. "$ref": "#/responses/error"
  2320. },
  2321. "404": {
  2322. "$ref": "#/responses/notFound"
  2323. }
  2324. }
  2325. }
  2326. },
  2327. "/orgs/{org}/actions/variables": {
  2328. "get": {
  2329. "produces": [
  2330. "application/json"
  2331. ],
  2332. "tags": [
  2333. "organization"
  2334. ],
  2335. "summary": "Get an org-level variables list",
  2336. "operationId": "getOrgVariablesList",
  2337. "parameters": [
  2338. {
  2339. "type": "string",
  2340. "description": "name of the organization",
  2341. "name": "org",
  2342. "in": "path",
  2343. "required": true
  2344. },
  2345. {
  2346. "type": "integer",
  2347. "description": "page number of results to return (1-based)",
  2348. "name": "page",
  2349. "in": "query"
  2350. },
  2351. {
  2352. "type": "integer",
  2353. "description": "page size of results",
  2354. "name": "limit",
  2355. "in": "query"
  2356. }
  2357. ],
  2358. "responses": {
  2359. "200": {
  2360. "$ref": "#/responses/VariableList"
  2361. },
  2362. "400": {
  2363. "$ref": "#/responses/error"
  2364. },
  2365. "404": {
  2366. "$ref": "#/responses/notFound"
  2367. }
  2368. }
  2369. }
  2370. },
  2371. "/orgs/{org}/actions/variables/{variablename}": {
  2372. "get": {
  2373. "produces": [
  2374. "application/json"
  2375. ],
  2376. "tags": [
  2377. "organization"
  2378. ],
  2379. "summary": "Get an org-level variable",
  2380. "operationId": "getOrgVariable",
  2381. "parameters": [
  2382. {
  2383. "type": "string",
  2384. "description": "name of the organization",
  2385. "name": "org",
  2386. "in": "path",
  2387. "required": true
  2388. },
  2389. {
  2390. "type": "string",
  2391. "description": "name of the variable",
  2392. "name": "variablename",
  2393. "in": "path",
  2394. "required": true
  2395. }
  2396. ],
  2397. "responses": {
  2398. "200": {
  2399. "$ref": "#/responses/ActionVariable"
  2400. },
  2401. "400": {
  2402. "$ref": "#/responses/error"
  2403. },
  2404. "404": {
  2405. "$ref": "#/responses/notFound"
  2406. }
  2407. }
  2408. },
  2409. "put": {
  2410. "consumes": [
  2411. "application/json"
  2412. ],
  2413. "produces": [
  2414. "application/json"
  2415. ],
  2416. "tags": [
  2417. "organization"
  2418. ],
  2419. "summary": "Update an org-level variable",
  2420. "operationId": "updateOrgVariable",
  2421. "parameters": [
  2422. {
  2423. "type": "string",
  2424. "description": "name of the organization",
  2425. "name": "org",
  2426. "in": "path",
  2427. "required": true
  2428. },
  2429. {
  2430. "type": "string",
  2431. "description": "name of the variable",
  2432. "name": "variablename",
  2433. "in": "path",
  2434. "required": true
  2435. },
  2436. {
  2437. "name": "body",
  2438. "in": "body",
  2439. "schema": {
  2440. "$ref": "#/definitions/UpdateVariableOption"
  2441. }
  2442. }
  2443. ],
  2444. "responses": {
  2445. "201": {
  2446. "description": "response when updating an org-level variable"
  2447. },
  2448. "204": {
  2449. "description": "response when updating an org-level variable"
  2450. },
  2451. "400": {
  2452. "$ref": "#/responses/error"
  2453. },
  2454. "404": {
  2455. "$ref": "#/responses/notFound"
  2456. }
  2457. }
  2458. },
  2459. "post": {
  2460. "consumes": [
  2461. "application/json"
  2462. ],
  2463. "produces": [
  2464. "application/json"
  2465. ],
  2466. "tags": [
  2467. "organization"
  2468. ],
  2469. "summary": "Create an org-level variable",
  2470. "operationId": "createOrgVariable",
  2471. "parameters": [
  2472. {
  2473. "type": "string",
  2474. "description": "name of the organization",
  2475. "name": "org",
  2476. "in": "path",
  2477. "required": true
  2478. },
  2479. {
  2480. "type": "string",
  2481. "description": "name of the variable",
  2482. "name": "variablename",
  2483. "in": "path",
  2484. "required": true
  2485. },
  2486. {
  2487. "name": "body",
  2488. "in": "body",
  2489. "schema": {
  2490. "$ref": "#/definitions/CreateVariableOption"
  2491. }
  2492. }
  2493. ],
  2494. "responses": {
  2495. "201": {
  2496. "description": "successfully created the org-level variable"
  2497. },
  2498. "400": {
  2499. "$ref": "#/responses/error"
  2500. },
  2501. "409": {
  2502. "description": "variable name already exists."
  2503. },
  2504. "500": {
  2505. "$ref": "#/responses/error"
  2506. }
  2507. }
  2508. },
  2509. "delete": {
  2510. "produces": [
  2511. "application/json"
  2512. ],
  2513. "tags": [
  2514. "organization"
  2515. ],
  2516. "summary": "Delete an org-level variable",
  2517. "operationId": "deleteOrgVariable",
  2518. "parameters": [
  2519. {
  2520. "type": "string",
  2521. "description": "name of the organization",
  2522. "name": "org",
  2523. "in": "path",
  2524. "required": true
  2525. },
  2526. {
  2527. "type": "string",
  2528. "description": "name of the variable",
  2529. "name": "variablename",
  2530. "in": "path",
  2531. "required": true
  2532. }
  2533. ],
  2534. "responses": {
  2535. "200": {
  2536. "$ref": "#/responses/ActionVariable"
  2537. },
  2538. "201": {
  2539. "description": "response when deleting a variable"
  2540. },
  2541. "204": {
  2542. "description": "response when deleting a variable"
  2543. },
  2544. "400": {
  2545. "$ref": "#/responses/error"
  2546. },
  2547. "404": {
  2548. "$ref": "#/responses/notFound"
  2549. }
  2550. }
  2551. }
  2552. },
  2553. "/orgs/{org}/activities/feeds": {
  2554. "get": {
  2555. "produces": [
  2556. "application/json"
  2557. ],
  2558. "tags": [
  2559. "organization"
  2560. ],
  2561. "summary": "List an organization's activity feeds",
  2562. "operationId": "orgListActivityFeeds",
  2563. "parameters": [
  2564. {
  2565. "type": "string",
  2566. "description": "name of the org",
  2567. "name": "org",
  2568. "in": "path",
  2569. "required": true
  2570. },
  2571. {
  2572. "type": "string",
  2573. "format": "date",
  2574. "description": "the date of the activities to be found",
  2575. "name": "date",
  2576. "in": "query"
  2577. },
  2578. {
  2579. "type": "integer",
  2580. "description": "page number of results to return (1-based)",
  2581. "name": "page",
  2582. "in": "query"
  2583. },
  2584. {
  2585. "type": "integer",
  2586. "description": "page size of results",
  2587. "name": "limit",
  2588. "in": "query"
  2589. }
  2590. ],
  2591. "responses": {
  2592. "200": {
  2593. "$ref": "#/responses/ActivityFeedsList"
  2594. },
  2595. "404": {
  2596. "$ref": "#/responses/notFound"
  2597. }
  2598. }
  2599. }
  2600. },
  2601. "/orgs/{org}/avatar": {
  2602. "post": {
  2603. "produces": [
  2604. "application/json"
  2605. ],
  2606. "tags": [
  2607. "organization"
  2608. ],
  2609. "summary": "Update Avatar",
  2610. "operationId": "orgUpdateAvatar",
  2611. "parameters": [
  2612. {
  2613. "type": "string",
  2614. "description": "name of the organization",
  2615. "name": "org",
  2616. "in": "path",
  2617. "required": true
  2618. },
  2619. {
  2620. "name": "body",
  2621. "in": "body",
  2622. "schema": {
  2623. "$ref": "#/definitions/UpdateUserAvatarOption"
  2624. }
  2625. }
  2626. ],
  2627. "responses": {
  2628. "204": {
  2629. "$ref": "#/responses/empty"
  2630. },
  2631. "404": {
  2632. "$ref": "#/responses/notFound"
  2633. }
  2634. }
  2635. },
  2636. "delete": {
  2637. "produces": [
  2638. "application/json"
  2639. ],
  2640. "tags": [
  2641. "organization"
  2642. ],
  2643. "summary": "Delete Avatar",
  2644. "operationId": "orgDeleteAvatar",
  2645. "parameters": [
  2646. {
  2647. "type": "string",
  2648. "description": "name of the organization",
  2649. "name": "org",
  2650. "in": "path",
  2651. "required": true
  2652. }
  2653. ],
  2654. "responses": {
  2655. "204": {
  2656. "$ref": "#/responses/empty"
  2657. },
  2658. "404": {
  2659. "$ref": "#/responses/notFound"
  2660. }
  2661. }
  2662. }
  2663. },
  2664. "/orgs/{org}/blocks": {
  2665. "get": {
  2666. "produces": [
  2667. "application/json"
  2668. ],
  2669. "tags": [
  2670. "organization"
  2671. ],
  2672. "summary": "List users blocked by the organization",
  2673. "operationId": "organizationListBlocks",
  2674. "parameters": [
  2675. {
  2676. "type": "string",
  2677. "description": "name of the organization",
  2678. "name": "org",
  2679. "in": "path",
  2680. "required": true
  2681. },
  2682. {
  2683. "type": "integer",
  2684. "description": "page number of results to return (1-based)",
  2685. "name": "page",
  2686. "in": "query"
  2687. },
  2688. {
  2689. "type": "integer",
  2690. "description": "page size of results",
  2691. "name": "limit",
  2692. "in": "query"
  2693. }
  2694. ],
  2695. "responses": {
  2696. "200": {
  2697. "$ref": "#/responses/UserList"
  2698. }
  2699. }
  2700. }
  2701. },
  2702. "/orgs/{org}/blocks/{username}": {
  2703. "get": {
  2704. "tags": [
  2705. "organization"
  2706. ],
  2707. "summary": "Check if a user is blocked by the organization",
  2708. "operationId": "organizationCheckUserBlock",
  2709. "parameters": [
  2710. {
  2711. "type": "string",
  2712. "description": "name of the organization",
  2713. "name": "org",
  2714. "in": "path",
  2715. "required": true
  2716. },
  2717. {
  2718. "type": "string",
  2719. "description": "username of the user to check",
  2720. "name": "username",
  2721. "in": "path",
  2722. "required": true
  2723. }
  2724. ],
  2725. "responses": {
  2726. "204": {
  2727. "$ref": "#/responses/empty"
  2728. },
  2729. "404": {
  2730. "$ref": "#/responses/notFound"
  2731. }
  2732. }
  2733. },
  2734. "put": {
  2735. "tags": [
  2736. "organization"
  2737. ],
  2738. "summary": "Block a user",
  2739. "operationId": "organizationBlockUser",
  2740. "parameters": [
  2741. {
  2742. "type": "string",
  2743. "description": "name of the organization",
  2744. "name": "org",
  2745. "in": "path",
  2746. "required": true
  2747. },
  2748. {
  2749. "type": "string",
  2750. "description": "username of the user to block",
  2751. "name": "username",
  2752. "in": "path",
  2753. "required": true
  2754. },
  2755. {
  2756. "type": "string",
  2757. "description": "optional note for the block",
  2758. "name": "note",
  2759. "in": "query"
  2760. }
  2761. ],
  2762. "responses": {
  2763. "204": {
  2764. "$ref": "#/responses/empty"
  2765. },
  2766. "404": {
  2767. "$ref": "#/responses/notFound"
  2768. },
  2769. "422": {
  2770. "$ref": "#/responses/validationError"
  2771. }
  2772. }
  2773. },
  2774. "delete": {
  2775. "tags": [
  2776. "organization"
  2777. ],
  2778. "summary": "Unblock a user",
  2779. "operationId": "organizationUnblockUser",
  2780. "parameters": [
  2781. {
  2782. "type": "string",
  2783. "description": "name of the organization",
  2784. "name": "org",
  2785. "in": "path",
  2786. "required": true
  2787. },
  2788. {
  2789. "type": "string",
  2790. "description": "username of the user to unblock",
  2791. "name": "username",
  2792. "in": "path",
  2793. "required": true
  2794. }
  2795. ],
  2796. "responses": {
  2797. "204": {
  2798. "$ref": "#/responses/empty"
  2799. },
  2800. "404": {
  2801. "$ref": "#/responses/notFound"
  2802. },
  2803. "422": {
  2804. "$ref": "#/responses/validationError"
  2805. }
  2806. }
  2807. }
  2808. },
  2809. "/orgs/{org}/hooks": {
  2810. "get": {
  2811. "produces": [
  2812. "application/json"
  2813. ],
  2814. "tags": [
  2815. "organization"
  2816. ],
  2817. "summary": "List an organization's webhooks",
  2818. "operationId": "orgListHooks",
  2819. "parameters": [
  2820. {
  2821. "type": "string",
  2822. "description": "name of the organization",
  2823. "name": "org",
  2824. "in": "path",
  2825. "required": true
  2826. },
  2827. {
  2828. "type": "integer",
  2829. "description": "page number of results to return (1-based)",
  2830. "name": "page",
  2831. "in": "query"
  2832. },
  2833. {
  2834. "type": "integer",
  2835. "description": "page size of results",
  2836. "name": "limit",
  2837. "in": "query"
  2838. }
  2839. ],
  2840. "responses": {
  2841. "200": {
  2842. "$ref": "#/responses/HookList"
  2843. },
  2844. "404": {
  2845. "$ref": "#/responses/notFound"
  2846. }
  2847. }
  2848. },
  2849. "post": {
  2850. "consumes": [
  2851. "application/json"
  2852. ],
  2853. "produces": [
  2854. "application/json"
  2855. ],
  2856. "tags": [
  2857. "organization"
  2858. ],
  2859. "summary": "Create a hook",
  2860. "operationId": "orgCreateHook",
  2861. "parameters": [
  2862. {
  2863. "type": "string",
  2864. "description": "name of the organization",
  2865. "name": "org",
  2866. "in": "path",
  2867. "required": true
  2868. },
  2869. {
  2870. "name": "body",
  2871. "in": "body",
  2872. "required": true,
  2873. "schema": {
  2874. "$ref": "#/definitions/CreateHookOption"
  2875. }
  2876. }
  2877. ],
  2878. "responses": {
  2879. "201": {
  2880. "$ref": "#/responses/Hook"
  2881. },
  2882. "404": {
  2883. "$ref": "#/responses/notFound"
  2884. }
  2885. }
  2886. }
  2887. },
  2888. "/orgs/{org}/hooks/{id}": {
  2889. "get": {
  2890. "produces": [
  2891. "application/json"
  2892. ],
  2893. "tags": [
  2894. "organization"
  2895. ],
  2896. "summary": "Get a hook",
  2897. "operationId": "orgGetHook",
  2898. "parameters": [
  2899. {
  2900. "type": "string",
  2901. "description": "name of the organization",
  2902. "name": "org",
  2903. "in": "path",
  2904. "required": true
  2905. },
  2906. {
  2907. "type": "integer",
  2908. "format": "int64",
  2909. "description": "id of the hook to get",
  2910. "name": "id",
  2911. "in": "path",
  2912. "required": true
  2913. }
  2914. ],
  2915. "responses": {
  2916. "200": {
  2917. "$ref": "#/responses/Hook"
  2918. },
  2919. "404": {
  2920. "$ref": "#/responses/notFound"
  2921. }
  2922. }
  2923. },
  2924. "delete": {
  2925. "produces": [
  2926. "application/json"
  2927. ],
  2928. "tags": [
  2929. "organization"
  2930. ],
  2931. "summary": "Delete a hook",
  2932. "operationId": "orgDeleteHook",
  2933. "parameters": [
  2934. {
  2935. "type": "string",
  2936. "description": "name of the organization",
  2937. "name": "org",
  2938. "in": "path",
  2939. "required": true
  2940. },
  2941. {
  2942. "type": "integer",
  2943. "format": "int64",
  2944. "description": "id of the hook to delete",
  2945. "name": "id",
  2946. "in": "path",
  2947. "required": true
  2948. }
  2949. ],
  2950. "responses": {
  2951. "204": {
  2952. "$ref": "#/responses/empty"
  2953. },
  2954. "404": {
  2955. "$ref": "#/responses/notFound"
  2956. }
  2957. }
  2958. },
  2959. "patch": {
  2960. "consumes": [
  2961. "application/json"
  2962. ],
  2963. "produces": [
  2964. "application/json"
  2965. ],
  2966. "tags": [
  2967. "organization"
  2968. ],
  2969. "summary": "Update a hook",
  2970. "operationId": "orgEditHook",
  2971. "parameters": [
  2972. {
  2973. "type": "string",
  2974. "description": "name of the organization",
  2975. "name": "org",
  2976. "in": "path",
  2977. "required": true
  2978. },
  2979. {
  2980. "type": "integer",
  2981. "format": "int64",
  2982. "description": "id of the hook to update",
  2983. "name": "id",
  2984. "in": "path",
  2985. "required": true
  2986. },
  2987. {
  2988. "name": "body",
  2989. "in": "body",
  2990. "schema": {
  2991. "$ref": "#/definitions/EditHookOption"
  2992. }
  2993. }
  2994. ],
  2995. "responses": {
  2996. "200": {
  2997. "$ref": "#/responses/Hook"
  2998. },
  2999. "404": {
  3000. "$ref": "#/responses/notFound"
  3001. }
  3002. }
  3003. }
  3004. },
  3005. "/orgs/{org}/labels": {
  3006. "get": {
  3007. "produces": [
  3008. "application/json"
  3009. ],
  3010. "tags": [
  3011. "organization"
  3012. ],
  3013. "summary": "List an organization's labels",
  3014. "operationId": "orgListLabels",
  3015. "parameters": [
  3016. {
  3017. "type": "string",
  3018. "description": "name of the organization",
  3019. "name": "org",
  3020. "in": "path",
  3021. "required": true
  3022. },
  3023. {
  3024. "type": "integer",
  3025. "description": "page number of results to return (1-based)",
  3026. "name": "page",
  3027. "in": "query"
  3028. },
  3029. {
  3030. "type": "integer",
  3031. "description": "page size of results",
  3032. "name": "limit",
  3033. "in": "query"
  3034. }
  3035. ],
  3036. "responses": {
  3037. "200": {
  3038. "$ref": "#/responses/LabelList"
  3039. },
  3040. "404": {
  3041. "$ref": "#/responses/notFound"
  3042. }
  3043. }
  3044. },
  3045. "post": {
  3046. "consumes": [
  3047. "application/json"
  3048. ],
  3049. "produces": [
  3050. "application/json"
  3051. ],
  3052. "tags": [
  3053. "organization"
  3054. ],
  3055. "summary": "Create a label for an organization",
  3056. "operationId": "orgCreateLabel",
  3057. "parameters": [
  3058. {
  3059. "type": "string",
  3060. "description": "name of the organization",
  3061. "name": "org",
  3062. "in": "path",
  3063. "required": true
  3064. },
  3065. {
  3066. "name": "body",
  3067. "in": "body",
  3068. "schema": {
  3069. "$ref": "#/definitions/CreateLabelOption"
  3070. }
  3071. }
  3072. ],
  3073. "responses": {
  3074. "201": {
  3075. "$ref": "#/responses/Label"
  3076. },
  3077. "404": {
  3078. "$ref": "#/responses/notFound"
  3079. },
  3080. "422": {
  3081. "$ref": "#/responses/validationError"
  3082. }
  3083. }
  3084. }
  3085. },
  3086. "/orgs/{org}/labels/{id}": {
  3087. "get": {
  3088. "produces": [
  3089. "application/json"
  3090. ],
  3091. "tags": [
  3092. "organization"
  3093. ],
  3094. "summary": "Get a single label",
  3095. "operationId": "orgGetLabel",
  3096. "parameters": [
  3097. {
  3098. "type": "string",
  3099. "description": "name of the organization",
  3100. "name": "org",
  3101. "in": "path",
  3102. "required": true
  3103. },
  3104. {
  3105. "type": "integer",
  3106. "format": "int64",
  3107. "description": "id of the label to get",
  3108. "name": "id",
  3109. "in": "path",
  3110. "required": true
  3111. }
  3112. ],
  3113. "responses": {
  3114. "200": {
  3115. "$ref": "#/responses/Label"
  3116. },
  3117. "404": {
  3118. "$ref": "#/responses/notFound"
  3119. }
  3120. }
  3121. },
  3122. "delete": {
  3123. "tags": [
  3124. "organization"
  3125. ],
  3126. "summary": "Delete a label",
  3127. "operationId": "orgDeleteLabel",
  3128. "parameters": [
  3129. {
  3130. "type": "string",
  3131. "description": "name of the organization",
  3132. "name": "org",
  3133. "in": "path",
  3134. "required": true
  3135. },
  3136. {
  3137. "type": "integer",
  3138. "format": "int64",
  3139. "description": "id of the label to delete",
  3140. "name": "id",
  3141. "in": "path",
  3142. "required": true
  3143. }
  3144. ],
  3145. "responses": {
  3146. "204": {
  3147. "$ref": "#/responses/empty"
  3148. },
  3149. "404": {
  3150. "$ref": "#/responses/notFound"
  3151. }
  3152. }
  3153. },
  3154. "patch": {
  3155. "consumes": [
  3156. "application/json"
  3157. ],
  3158. "produces": [
  3159. "application/json"
  3160. ],
  3161. "tags": [
  3162. "organization"
  3163. ],
  3164. "summary": "Update a label",
  3165. "operationId": "orgEditLabel",
  3166. "parameters": [
  3167. {
  3168. "type": "string",
  3169. "description": "name of the organization",
  3170. "name": "org",
  3171. "in": "path",
  3172. "required": true
  3173. },
  3174. {
  3175. "type": "integer",
  3176. "format": "int64",
  3177. "description": "id of the label to edit",
  3178. "name": "id",
  3179. "in": "path",
  3180. "required": true
  3181. },
  3182. {
  3183. "name": "body",
  3184. "in": "body",
  3185. "schema": {
  3186. "$ref": "#/definitions/EditLabelOption"
  3187. }
  3188. }
  3189. ],
  3190. "responses": {
  3191. "200": {
  3192. "$ref": "#/responses/Label"
  3193. },
  3194. "404": {
  3195. "$ref": "#/responses/notFound"
  3196. },
  3197. "422": {
  3198. "$ref": "#/responses/validationError"
  3199. }
  3200. }
  3201. }
  3202. },
  3203. "/orgs/{org}/members": {
  3204. "get": {
  3205. "produces": [
  3206. "application/json"
  3207. ],
  3208. "tags": [
  3209. "organization"
  3210. ],
  3211. "summary": "List an organization's members",
  3212. "operationId": "orgListMembers",
  3213. "parameters": [
  3214. {
  3215. "type": "string",
  3216. "description": "name of the organization",
  3217. "name": "org",
  3218. "in": "path",
  3219. "required": true
  3220. },
  3221. {
  3222. "type": "integer",
  3223. "description": "page number of results to return (1-based)",
  3224. "name": "page",
  3225. "in": "query"
  3226. },
  3227. {
  3228. "type": "integer",
  3229. "description": "page size of results",
  3230. "name": "limit",
  3231. "in": "query"
  3232. }
  3233. ],
  3234. "responses": {
  3235. "200": {
  3236. "$ref": "#/responses/UserList"
  3237. },
  3238. "404": {
  3239. "$ref": "#/responses/notFound"
  3240. }
  3241. }
  3242. }
  3243. },
  3244. "/orgs/{org}/members/{username}": {
  3245. "get": {
  3246. "tags": [
  3247. "organization"
  3248. ],
  3249. "summary": "Check if a user is a member of an organization",
  3250. "operationId": "orgIsMember",
  3251. "parameters": [
  3252. {
  3253. "type": "string",
  3254. "description": "name of the organization",
  3255. "name": "org",
  3256. "in": "path",
  3257. "required": true
  3258. },
  3259. {
  3260. "type": "string",
  3261. "description": "username of the user to check for an organization membership",
  3262. "name": "username",
  3263. "in": "path",
  3264. "required": true
  3265. }
  3266. ],
  3267. "responses": {
  3268. "204": {
  3269. "description": "user is a member"
  3270. },
  3271. "303": {
  3272. "description": "redirection to /orgs/{org}/public_members/{username}"
  3273. },
  3274. "404": {
  3275. "description": "user is not a member"
  3276. }
  3277. }
  3278. },
  3279. "delete": {
  3280. "produces": [
  3281. "application/json"
  3282. ],
  3283. "tags": [
  3284. "organization"
  3285. ],
  3286. "summary": "Remove a member from an organization",
  3287. "operationId": "orgDeleteMember",
  3288. "parameters": [
  3289. {
  3290. "type": "string",
  3291. "description": "name of the organization",
  3292. "name": "org",
  3293. "in": "path",
  3294. "required": true
  3295. },
  3296. {
  3297. "type": "string",
  3298. "description": "username of the user to remove from the organization",
  3299. "name": "username",
  3300. "in": "path",
  3301. "required": true
  3302. }
  3303. ],
  3304. "responses": {
  3305. "204": {
  3306. "description": "member removed"
  3307. },
  3308. "404": {
  3309. "$ref": "#/responses/notFound"
  3310. }
  3311. }
  3312. }
  3313. },
  3314. "/orgs/{org}/public_members": {
  3315. "get": {
  3316. "produces": [
  3317. "application/json"
  3318. ],
  3319. "tags": [
  3320. "organization"
  3321. ],
  3322. "summary": "List an organization's public members",
  3323. "operationId": "orgListPublicMembers",
  3324. "parameters": [
  3325. {
  3326. "type": "string",
  3327. "description": "name of the organization",
  3328. "name": "org",
  3329. "in": "path",
  3330. "required": true
  3331. },
  3332. {
  3333. "type": "integer",
  3334. "description": "page number of results to return (1-based)",
  3335. "name": "page",
  3336. "in": "query"
  3337. },
  3338. {
  3339. "type": "integer",
  3340. "description": "page size of results",
  3341. "name": "limit",
  3342. "in": "query"
  3343. }
  3344. ],
  3345. "responses": {
  3346. "200": {
  3347. "$ref": "#/responses/UserList"
  3348. },
  3349. "404": {
  3350. "$ref": "#/responses/notFound"
  3351. }
  3352. }
  3353. }
  3354. },
  3355. "/orgs/{org}/public_members/{username}": {
  3356. "get": {
  3357. "tags": [
  3358. "organization"
  3359. ],
  3360. "summary": "Check if a user is a public member of an organization",
  3361. "operationId": "orgIsPublicMember",
  3362. "parameters": [
  3363. {
  3364. "type": "string",
  3365. "description": "name of the organization",
  3366. "name": "org",
  3367. "in": "path",
  3368. "required": true
  3369. },
  3370. {
  3371. "type": "string",
  3372. "description": "username of the user to check for a public organization membership",
  3373. "name": "username",
  3374. "in": "path",
  3375. "required": true
  3376. }
  3377. ],
  3378. "responses": {
  3379. "204": {
  3380. "description": "user is a public member"
  3381. },
  3382. "404": {
  3383. "description": "user is not a public member"
  3384. }
  3385. }
  3386. },
  3387. "put": {
  3388. "produces": [
  3389. "application/json"
  3390. ],
  3391. "tags": [
  3392. "organization"
  3393. ],
  3394. "summary": "Publicize a user's membership",
  3395. "operationId": "orgPublicizeMember",
  3396. "parameters": [
  3397. {
  3398. "type": "string",
  3399. "description": "name of the organization",
  3400. "name": "org",
  3401. "in": "path",
  3402. "required": true
  3403. },
  3404. {
  3405. "type": "string",
  3406. "description": "username of the user whose membership is to be publicized",
  3407. "name": "username",
  3408. "in": "path",
  3409. "required": true
  3410. }
  3411. ],
  3412. "responses": {
  3413. "204": {
  3414. "description": "membership publicized"
  3415. },
  3416. "403": {
  3417. "$ref": "#/responses/forbidden"
  3418. },
  3419. "404": {
  3420. "$ref": "#/responses/notFound"
  3421. }
  3422. }
  3423. },
  3424. "delete": {
  3425. "produces": [
  3426. "application/json"
  3427. ],
  3428. "tags": [
  3429. "organization"
  3430. ],
  3431. "summary": "Conceal a user's membership",
  3432. "operationId": "orgConcealMember",
  3433. "parameters": [
  3434. {
  3435. "type": "string",
  3436. "description": "name of the organization",
  3437. "name": "org",
  3438. "in": "path",
  3439. "required": true
  3440. },
  3441. {
  3442. "type": "string",
  3443. "description": "username of the user whose membership is to be concealed",
  3444. "name": "username",
  3445. "in": "path",
  3446. "required": true
  3447. }
  3448. ],
  3449. "responses": {
  3450. "204": {
  3451. "$ref": "#/responses/empty"
  3452. },
  3453. "403": {
  3454. "$ref": "#/responses/forbidden"
  3455. },
  3456. "404": {
  3457. "$ref": "#/responses/notFound"
  3458. }
  3459. }
  3460. }
  3461. },
  3462. "/orgs/{org}/rename": {
  3463. "post": {
  3464. "produces": [
  3465. "application/json"
  3466. ],
  3467. "tags": [
  3468. "organization"
  3469. ],
  3470. "summary": "Rename an organization",
  3471. "operationId": "renameOrg",
  3472. "parameters": [
  3473. {
  3474. "type": "string",
  3475. "description": "existing org name",
  3476. "name": "org",
  3477. "in": "path",
  3478. "required": true
  3479. },
  3480. {
  3481. "name": "body",
  3482. "in": "body",
  3483. "required": true,
  3484. "schema": {
  3485. "$ref": "#/definitions/RenameOrgOption"
  3486. }
  3487. }
  3488. ],
  3489. "responses": {
  3490. "204": {
  3491. "$ref": "#/responses/empty"
  3492. },
  3493. "403": {
  3494. "$ref": "#/responses/forbidden"
  3495. },
  3496. "422": {
  3497. "$ref": "#/responses/validationError"
  3498. }
  3499. }
  3500. }
  3501. },
  3502. "/orgs/{org}/repos": {
  3503. "get": {
  3504. "produces": [
  3505. "application/json"
  3506. ],
  3507. "tags": [
  3508. "organization"
  3509. ],
  3510. "summary": "List an organization's repos",
  3511. "operationId": "orgListRepos",
  3512. "parameters": [
  3513. {
  3514. "type": "string",
  3515. "description": "name of the organization",
  3516. "name": "org",
  3517. "in": "path",
  3518. "required": true
  3519. },
  3520. {
  3521. "type": "integer",
  3522. "description": "page number of results to return (1-based)",
  3523. "name": "page",
  3524. "in": "query"
  3525. },
  3526. {
  3527. "type": "integer",
  3528. "description": "page size of results",
  3529. "name": "limit",
  3530. "in": "query"
  3531. }
  3532. ],
  3533. "responses": {
  3534. "200": {
  3535. "$ref": "#/responses/RepositoryList"
  3536. },
  3537. "404": {
  3538. "$ref": "#/responses/notFound"
  3539. }
  3540. }
  3541. },
  3542. "post": {
  3543. "consumes": [
  3544. "application/json"
  3545. ],
  3546. "produces": [
  3547. "application/json"
  3548. ],
  3549. "tags": [
  3550. "organization"
  3551. ],
  3552. "summary": "Create a repository in an organization",
  3553. "operationId": "createOrgRepo",
  3554. "parameters": [
  3555. {
  3556. "type": "string",
  3557. "description": "name of organization",
  3558. "name": "org",
  3559. "in": "path",
  3560. "required": true
  3561. },
  3562. {
  3563. "name": "body",
  3564. "in": "body",
  3565. "schema": {
  3566. "$ref": "#/definitions/CreateRepoOption"
  3567. }
  3568. }
  3569. ],
  3570. "responses": {
  3571. "201": {
  3572. "$ref": "#/responses/Repository"
  3573. },
  3574. "400": {
  3575. "$ref": "#/responses/error"
  3576. },
  3577. "403": {
  3578. "$ref": "#/responses/forbidden"
  3579. },
  3580. "404": {
  3581. "$ref": "#/responses/notFound"
  3582. }
  3583. }
  3584. }
  3585. },
  3586. "/orgs/{org}/teams": {
  3587. "get": {
  3588. "produces": [
  3589. "application/json"
  3590. ],
  3591. "tags": [
  3592. "organization"
  3593. ],
  3594. "summary": "List an organization's teams",
  3595. "operationId": "orgListTeams",
  3596. "parameters": [
  3597. {
  3598. "type": "string",
  3599. "description": "name of the organization",
  3600. "name": "org",
  3601. "in": "path",
  3602. "required": true
  3603. },
  3604. {
  3605. "type": "integer",
  3606. "description": "page number of results to return (1-based)",
  3607. "name": "page",
  3608. "in": "query"
  3609. },
  3610. {
  3611. "type": "integer",
  3612. "description": "page size of results",
  3613. "name": "limit",
  3614. "in": "query"
  3615. }
  3616. ],
  3617. "responses": {
  3618. "200": {
  3619. "$ref": "#/responses/TeamList"
  3620. },
  3621. "404": {
  3622. "$ref": "#/responses/notFound"
  3623. }
  3624. }
  3625. },
  3626. "post": {
  3627. "consumes": [
  3628. "application/json"
  3629. ],
  3630. "produces": [
  3631. "application/json"
  3632. ],
  3633. "tags": [
  3634. "organization"
  3635. ],
  3636. "summary": "Create a team",
  3637. "operationId": "orgCreateTeam",
  3638. "parameters": [
  3639. {
  3640. "type": "string",
  3641. "description": "name of the organization",
  3642. "name": "org",
  3643. "in": "path",
  3644. "required": true
  3645. },
  3646. {
  3647. "name": "body",
  3648. "in": "body",
  3649. "schema": {
  3650. "$ref": "#/definitions/CreateTeamOption"
  3651. }
  3652. }
  3653. ],
  3654. "responses": {
  3655. "201": {
  3656. "$ref": "#/responses/Team"
  3657. },
  3658. "404": {
  3659. "$ref": "#/responses/notFound"
  3660. },
  3661. "422": {
  3662. "$ref": "#/responses/validationError"
  3663. }
  3664. }
  3665. }
  3666. },
  3667. "/orgs/{org}/teams/search": {
  3668. "get": {
  3669. "produces": [
  3670. "application/json"
  3671. ],
  3672. "tags": [
  3673. "organization"
  3674. ],
  3675. "summary": "Search for teams within an organization",
  3676. "operationId": "teamSearch",
  3677. "parameters": [
  3678. {
  3679. "type": "string",
  3680. "description": "name of the organization",
  3681. "name": "org",
  3682. "in": "path",
  3683. "required": true
  3684. },
  3685. {
  3686. "type": "string",
  3687. "description": "keywords to search",
  3688. "name": "q",
  3689. "in": "query"
  3690. },
  3691. {
  3692. "type": "boolean",
  3693. "description": "include search within team description (defaults to true)",
  3694. "name": "include_desc",
  3695. "in": "query"
  3696. },
  3697. {
  3698. "type": "integer",
  3699. "description": "page number of results to return (1-based)",
  3700. "name": "page",
  3701. "in": "query"
  3702. },
  3703. {
  3704. "type": "integer",
  3705. "description": "page size of results",
  3706. "name": "limit",
  3707. "in": "query"
  3708. }
  3709. ],
  3710. "responses": {
  3711. "200": {
  3712. "description": "SearchResults of a successful search",
  3713. "schema": {
  3714. "type": "object",
  3715. "properties": {
  3716. "data": {
  3717. "type": "array",
  3718. "items": {
  3719. "$ref": "#/definitions/Team"
  3720. }
  3721. },
  3722. "ok": {
  3723. "type": "boolean"
  3724. }
  3725. }
  3726. }
  3727. },
  3728. "404": {
  3729. "$ref": "#/responses/notFound"
  3730. }
  3731. }
  3732. }
  3733. },
  3734. "/packages/{owner}": {
  3735. "get": {
  3736. "produces": [
  3737. "application/json"
  3738. ],
  3739. "tags": [
  3740. "package"
  3741. ],
  3742. "summary": "Gets all packages of an owner",
  3743. "operationId": "listPackages",
  3744. "parameters": [
  3745. {
  3746. "type": "string",
  3747. "description": "owner of the packages",
  3748. "name": "owner",
  3749. "in": "path",
  3750. "required": true
  3751. },
  3752. {
  3753. "type": "integer",
  3754. "description": "page number of results to return (1-based)",
  3755. "name": "page",
  3756. "in": "query"
  3757. },
  3758. {
  3759. "type": "integer",
  3760. "description": "page size of results",
  3761. "name": "limit",
  3762. "in": "query"
  3763. },
  3764. {
  3765. "enum": [
  3766. "alpine",
  3767. "cargo",
  3768. "chef",
  3769. "composer",
  3770. "conan",
  3771. "conda",
  3772. "container",
  3773. "cran",
  3774. "debian",
  3775. "generic",
  3776. "go",
  3777. "helm",
  3778. "maven",
  3779. "npm",
  3780. "nuget",
  3781. "pub",
  3782. "pypi",
  3783. "rpm",
  3784. "rubygems",
  3785. "swift",
  3786. "vagrant"
  3787. ],
  3788. "type": "string",
  3789. "description": "package type filter",
  3790. "name": "type",
  3791. "in": "query"
  3792. },
  3793. {
  3794. "type": "string",
  3795. "description": "name filter",
  3796. "name": "q",
  3797. "in": "query"
  3798. }
  3799. ],
  3800. "responses": {
  3801. "200": {
  3802. "$ref": "#/responses/PackageList"
  3803. },
  3804. "404": {
  3805. "$ref": "#/responses/notFound"
  3806. }
  3807. }
  3808. }
  3809. },
  3810. "/packages/{owner}/{type}/{name}": {
  3811. "get": {
  3812. "produces": [
  3813. "application/json"
  3814. ],
  3815. "tags": [
  3816. "package"
  3817. ],
  3818. "summary": "Gets all versions of a package",
  3819. "operationId": "listPackageVersions",
  3820. "parameters": [
  3821. {
  3822. "type": "string",
  3823. "description": "owner of the package",
  3824. "name": "owner",
  3825. "in": "path",
  3826. "required": true
  3827. },
  3828. {
  3829. "type": "string",
  3830. "description": "type of the package",
  3831. "name": "type",
  3832. "in": "path",
  3833. "required": true
  3834. },
  3835. {
  3836. "type": "string",
  3837. "description": "name of the package",
  3838. "name": "name",
  3839. "in": "path",
  3840. "required": true
  3841. },
  3842. {
  3843. "type": "integer",
  3844. "description": "page number of results to return (1-based)",
  3845. "name": "page",
  3846. "in": "query"
  3847. },
  3848. {
  3849. "type": "integer",
  3850. "description": "page size of results",
  3851. "name": "limit",
  3852. "in": "query"
  3853. }
  3854. ],
  3855. "responses": {
  3856. "200": {
  3857. "$ref": "#/responses/PackageList"
  3858. },
  3859. "404": {
  3860. "$ref": "#/responses/notFound"
  3861. }
  3862. }
  3863. }
  3864. },
  3865. "/packages/{owner}/{type}/{name}/-/latest": {
  3866. "get": {
  3867. "produces": [
  3868. "application/json"
  3869. ],
  3870. "tags": [
  3871. "package"
  3872. ],
  3873. "summary": "Gets the latest version of a package",
  3874. "operationId": "getLatestPackageVersion",
  3875. "parameters": [
  3876. {
  3877. "type": "string",
  3878. "description": "owner of the package",
  3879. "name": "owner",
  3880. "in": "path",
  3881. "required": true
  3882. },
  3883. {
  3884. "type": "string",
  3885. "description": "type of the package",
  3886. "name": "type",
  3887. "in": "path",
  3888. "required": true
  3889. },
  3890. {
  3891. "type": "string",
  3892. "description": "name of the package",
  3893. "name": "name",
  3894. "in": "path",
  3895. "required": true
  3896. }
  3897. ],
  3898. "responses": {
  3899. "200": {
  3900. "$ref": "#/responses/Package"
  3901. },
  3902. "404": {
  3903. "$ref": "#/responses/notFound"
  3904. }
  3905. }
  3906. }
  3907. },
  3908. "/packages/{owner}/{type}/{name}/-/link/{repo_name}": {
  3909. "post": {
  3910. "tags": [
  3911. "package"
  3912. ],
  3913. "summary": "Link a package to a repository",
  3914. "operationId": "linkPackage",
  3915. "parameters": [
  3916. {
  3917. "type": "string",
  3918. "description": "owner of the package",
  3919. "name": "owner",
  3920. "in": "path",
  3921. "required": true
  3922. },
  3923. {
  3924. "type": "string",
  3925. "description": "type of the package",
  3926. "name": "type",
  3927. "in": "path",
  3928. "required": true
  3929. },
  3930. {
  3931. "type": "string",
  3932. "description": "name of the package",
  3933. "name": "name",
  3934. "in": "path",
  3935. "required": true
  3936. },
  3937. {
  3938. "type": "string",
  3939. "description": "name of the repository to link.",
  3940. "name": "repo_name",
  3941. "in": "path",
  3942. "required": true
  3943. }
  3944. ],
  3945. "responses": {
  3946. "201": {
  3947. "$ref": "#/responses/empty"
  3948. },
  3949. "404": {
  3950. "$ref": "#/responses/notFound"
  3951. }
  3952. }
  3953. }
  3954. },
  3955. "/packages/{owner}/{type}/{name}/-/unlink": {
  3956. "post": {
  3957. "tags": [
  3958. "package"
  3959. ],
  3960. "summary": "Unlink a package from a repository",
  3961. "operationId": "unlinkPackage",
  3962. "parameters": [
  3963. {
  3964. "type": "string",
  3965. "description": "owner of the package",
  3966. "name": "owner",
  3967. "in": "path",
  3968. "required": true
  3969. },
  3970. {
  3971. "type": "string",
  3972. "description": "type of the package",
  3973. "name": "type",
  3974. "in": "path",
  3975. "required": true
  3976. },
  3977. {
  3978. "type": "string",
  3979. "description": "name of the package",
  3980. "name": "name",
  3981. "in": "path",
  3982. "required": true
  3983. }
  3984. ],
  3985. "responses": {
  3986. "201": {
  3987. "$ref": "#/responses/empty"
  3988. },
  3989. "404": {
  3990. "$ref": "#/responses/notFound"
  3991. }
  3992. }
  3993. }
  3994. },
  3995. "/packages/{owner}/{type}/{name}/{version}": {
  3996. "get": {
  3997. "produces": [
  3998. "application/json"
  3999. ],
  4000. "tags": [
  4001. "package"
  4002. ],
  4003. "summary": "Gets a package",
  4004. "operationId": "getPackage",
  4005. "parameters": [
  4006. {
  4007. "type": "string",
  4008. "description": "owner of the package",
  4009. "name": "owner",
  4010. "in": "path",
  4011. "required": true
  4012. },
  4013. {
  4014. "type": "string",
  4015. "description": "type of the package",
  4016. "name": "type",
  4017. "in": "path",
  4018. "required": true
  4019. },
  4020. {
  4021. "type": "string",
  4022. "description": "name of the package",
  4023. "name": "name",
  4024. "in": "path",
  4025. "required": true
  4026. },
  4027. {
  4028. "type": "string",
  4029. "description": "version of the package",
  4030. "name": "version",
  4031. "in": "path",
  4032. "required": true
  4033. }
  4034. ],
  4035. "responses": {
  4036. "200": {
  4037. "$ref": "#/responses/Package"
  4038. },
  4039. "404": {
  4040. "$ref": "#/responses/notFound"
  4041. }
  4042. }
  4043. },
  4044. "delete": {
  4045. "tags": [
  4046. "package"
  4047. ],
  4048. "summary": "Delete a package",
  4049. "operationId": "deletePackage",
  4050. "parameters": [
  4051. {
  4052. "type": "string",
  4053. "description": "owner of the package",
  4054. "name": "owner",
  4055. "in": "path",
  4056. "required": true
  4057. },
  4058. {
  4059. "type": "string",
  4060. "description": "type of the package",
  4061. "name": "type",
  4062. "in": "path",
  4063. "required": true
  4064. },
  4065. {
  4066. "type": "string",
  4067. "description": "name of the package",
  4068. "name": "name",
  4069. "in": "path",
  4070. "required": true
  4071. },
  4072. {
  4073. "type": "string",
  4074. "description": "version of the package",
  4075. "name": "version",
  4076. "in": "path",
  4077. "required": true
  4078. }
  4079. ],
  4080. "responses": {
  4081. "204": {
  4082. "$ref": "#/responses/empty"
  4083. },
  4084. "404": {
  4085. "$ref": "#/responses/notFound"
  4086. }
  4087. }
  4088. }
  4089. },
  4090. "/packages/{owner}/{type}/{name}/{version}/files": {
  4091. "get": {
  4092. "produces": [
  4093. "application/json"
  4094. ],
  4095. "tags": [
  4096. "package"
  4097. ],
  4098. "summary": "Gets all files of a package",
  4099. "operationId": "listPackageFiles",
  4100. "parameters": [
  4101. {
  4102. "type": "string",
  4103. "description": "owner of the package",
  4104. "name": "owner",
  4105. "in": "path",
  4106. "required": true
  4107. },
  4108. {
  4109. "type": "string",
  4110. "description": "type of the package",
  4111. "name": "type",
  4112. "in": "path",
  4113. "required": true
  4114. },
  4115. {
  4116. "type": "string",
  4117. "description": "name of the package",
  4118. "name": "name",
  4119. "in": "path",
  4120. "required": true
  4121. },
  4122. {
  4123. "type": "string",
  4124. "description": "version of the package",
  4125. "name": "version",
  4126. "in": "path",
  4127. "required": true
  4128. }
  4129. ],
  4130. "responses": {
  4131. "200": {
  4132. "$ref": "#/responses/PackageFileList"
  4133. },
  4134. "404": {
  4135. "$ref": "#/responses/notFound"
  4136. }
  4137. }
  4138. }
  4139. },
  4140. "/repos/issues/search": {
  4141. "get": {
  4142. "produces": [
  4143. "application/json"
  4144. ],
  4145. "tags": [
  4146. "issue"
  4147. ],
  4148. "summary": "Search for issues across the repositories that the user has access to",
  4149. "operationId": "issueSearchIssues",
  4150. "parameters": [
  4151. {
  4152. "enum": [
  4153. "open",
  4154. "closed",
  4155. "all"
  4156. ],
  4157. "type": "string",
  4158. "default": "open",
  4159. "description": "State of the issue",
  4160. "name": "state",
  4161. "in": "query"
  4162. },
  4163. {
  4164. "type": "string",
  4165. "description": "Comma-separated list of label names. Fetch only issues that have any of these labels. Non existent labels are discarded.",
  4166. "name": "labels",
  4167. "in": "query"
  4168. },
  4169. {
  4170. "type": "string",
  4171. "description": "Comma-separated list of milestone names. Fetch only issues that have any of these milestones. Non existent milestones are discarded.",
  4172. "name": "milestones",
  4173. "in": "query"
  4174. },
  4175. {
  4176. "type": "string",
  4177. "description": "Search string",
  4178. "name": "q",
  4179. "in": "query"
  4180. },
  4181. {
  4182. "type": "integer",
  4183. "format": "int64",
  4184. "description": "Repository ID to prioritize in the results",
  4185. "name": "priority_repo_id",
  4186. "in": "query"
  4187. },
  4188. {
  4189. "enum": [
  4190. "issues",
  4191. "pulls"
  4192. ],
  4193. "type": "string",
  4194. "description": "Filter by issue type",
  4195. "name": "type",
  4196. "in": "query"
  4197. },
  4198. {
  4199. "type": "string",
  4200. "format": "date-time",
  4201. "description": "Only show issues updated after the given time (RFC 3339 format)",
  4202. "name": "since",
  4203. "in": "query"
  4204. },
  4205. {
  4206. "type": "string",
  4207. "format": "date-time",
  4208. "description": "Only show issues updated before the given time (RFC 3339 format)",
  4209. "name": "before",
  4210. "in": "query"
  4211. },
  4212. {
  4213. "type": "boolean",
  4214. "default": false,
  4215. "description": "Filter issues or pulls assigned to the authenticated user",
  4216. "name": "assigned",
  4217. "in": "query"
  4218. },
  4219. {
  4220. "type": "boolean",
  4221. "default": false,
  4222. "description": "Filter issues or pulls created by the authenticated user",
  4223. "name": "created",
  4224. "in": "query"
  4225. },
  4226. {
  4227. "type": "boolean",
  4228. "default": false,
  4229. "description": "Filter issues or pulls mentioning the authenticated user",
  4230. "name": "mentioned",
  4231. "in": "query"
  4232. },
  4233. {
  4234. "type": "boolean",
  4235. "default": false,
  4236. "description": "Filter pull requests where the authenticated user's review was requested",
  4237. "name": "review_requested",
  4238. "in": "query"
  4239. },
  4240. {
  4241. "type": "boolean",
  4242. "default": false,
  4243. "description": "Filter pull requests reviewed by the authenticated user",
  4244. "name": "reviewed",
  4245. "in": "query"
  4246. },
  4247. {
  4248. "type": "string",
  4249. "description": "Filter by repository owner",
  4250. "name": "owner",
  4251. "in": "query"
  4252. },
  4253. {
  4254. "type": "string",
  4255. "description": "Filter by team (requires organization owner parameter)",
  4256. "name": "team",
  4257. "in": "query"
  4258. },
  4259. {
  4260. "minimum": 1,
  4261. "type": "integer",
  4262. "default": 1,
  4263. "description": "Page number of results to return (1-based)",
  4264. "name": "page",
  4265. "in": "query"
  4266. },
  4267. {
  4268. "minimum": 0,
  4269. "type": "integer",
  4270. "description": "Number of items per page",
  4271. "name": "limit",
  4272. "in": "query"
  4273. }
  4274. ],
  4275. "responses": {
  4276. "200": {
  4277. "$ref": "#/responses/IssueList"
  4278. },
  4279. "400": {
  4280. "$ref": "#/responses/error"
  4281. },
  4282. "422": {
  4283. "$ref": "#/responses/validationError"
  4284. }
  4285. }
  4286. }
  4287. },
  4288. "/repos/migrate": {
  4289. "post": {
  4290. "consumes": [
  4291. "application/json"
  4292. ],
  4293. "produces": [
  4294. "application/json"
  4295. ],
  4296. "tags": [
  4297. "repository"
  4298. ],
  4299. "summary": "Migrate a remote git repository",
  4300. "operationId": "repoMigrate",
  4301. "parameters": [
  4302. {
  4303. "name": "body",
  4304. "in": "body",
  4305. "schema": {
  4306. "$ref": "#/definitions/MigrateRepoOptions"
  4307. }
  4308. }
  4309. ],
  4310. "responses": {
  4311. "201": {
  4312. "$ref": "#/responses/Repository"
  4313. },
  4314. "403": {
  4315. "$ref": "#/responses/forbidden"
  4316. },
  4317. "409": {
  4318. "description": "The repository with the same name already exists."
  4319. },
  4320. "422": {
  4321. "$ref": "#/responses/validationError"
  4322. }
  4323. }
  4324. }
  4325. },
  4326. "/repos/search": {
  4327. "get": {
  4328. "produces": [
  4329. "application/json"
  4330. ],
  4331. "tags": [
  4332. "repository"
  4333. ],
  4334. "summary": "Search for repositories",
  4335. "operationId": "repoSearch",
  4336. "parameters": [
  4337. {
  4338. "type": "string",
  4339. "description": "keyword",
  4340. "name": "q",
  4341. "in": "query"
  4342. },
  4343. {
  4344. "type": "boolean",
  4345. "description": "Limit search to repositories with keyword as topic",
  4346. "name": "topic",
  4347. "in": "query"
  4348. },
  4349. {
  4350. "type": "boolean",
  4351. "description": "include search of keyword within repository description",
  4352. "name": "includeDesc",
  4353. "in": "query"
  4354. },
  4355. {
  4356. "type": "integer",
  4357. "format": "int64",
  4358. "description": "search only for repos that the user with the given id owns or contributes to",
  4359. "name": "uid",
  4360. "in": "query"
  4361. },
  4362. {
  4363. "type": "integer",
  4364. "format": "int64",
  4365. "description": "repo owner to prioritize in the results",
  4366. "name": "priority_owner_id",
  4367. "in": "query"
  4368. },
  4369. {
  4370. "type": "integer",
  4371. "format": "int64",
  4372. "description": "search only for repos that belong to the given team id",
  4373. "name": "team_id",
  4374. "in": "query"
  4375. },
  4376. {
  4377. "type": "integer",
  4378. "format": "int64",
  4379. "description": "search only for repos that the user with the given id has starred",
  4380. "name": "starredBy",
  4381. "in": "query"
  4382. },
  4383. {
  4384. "type": "boolean",
  4385. "description": "include private repositories this user has access to (defaults to true)",
  4386. "name": "private",
  4387. "in": "query"
  4388. },
  4389. {
  4390. "type": "boolean",
  4391. "description": "show only pubic, private or all repositories (defaults to all)",
  4392. "name": "is_private",
  4393. "in": "query"
  4394. },
  4395. {
  4396. "type": "boolean",
  4397. "description": "include template repositories this user has access to (defaults to true)",
  4398. "name": "template",
  4399. "in": "query"
  4400. },
  4401. {
  4402. "type": "boolean",
  4403. "description": "show only archived, non-archived or all repositories (defaults to all)",
  4404. "name": "archived",
  4405. "in": "query"
  4406. },
  4407. {
  4408. "type": "string",
  4409. "description": "type of repository to search for. Supported values are \"fork\", \"source\", \"mirror\" and \"collaborative\"",
  4410. "name": "mode",
  4411. "in": "query"
  4412. },
  4413. {
  4414. "type": "boolean",
  4415. "description": "if `uid` is given, search only for repos that the user owns",
  4416. "name": "exclusive",
  4417. "in": "query"
  4418. },
  4419. {
  4420. "type": "string",
  4421. "description": "sort repos by attribute. Supported values are \"alpha\", \"created\", \"updated\", \"size\", \"git_size\", \"lfs_size\", \"stars\", \"forks\" and \"id\". Default is \"alpha\"",
  4422. "name": "sort",
  4423. "in": "query"
  4424. },
  4425. {
  4426. "type": "string",
  4427. "description": "sort order, either \"asc\" (ascending) or \"desc\" (descending). Default is \"asc\", ignored if \"sort\" is not specified.",
  4428. "name": "order",
  4429. "in": "query"
  4430. },
  4431. {
  4432. "type": "integer",
  4433. "description": "page number of results to return (1-based)",
  4434. "name": "page",
  4435. "in": "query"
  4436. },
  4437. {
  4438. "type": "integer",
  4439. "description": "page size of results",
  4440. "name": "limit",
  4441. "in": "query"
  4442. }
  4443. ],
  4444. "responses": {
  4445. "200": {
  4446. "$ref": "#/responses/SearchResults"
  4447. },
  4448. "422": {
  4449. "$ref": "#/responses/validationError"
  4450. }
  4451. }
  4452. }
  4453. },
  4454. "/repos/{owner}/{repo}": {
  4455. "get": {
  4456. "produces": [
  4457. "application/json"
  4458. ],
  4459. "tags": [
  4460. "repository"
  4461. ],
  4462. "summary": "Get a repository",
  4463. "operationId": "repoGet",
  4464. "parameters": [
  4465. {
  4466. "type": "string",
  4467. "description": "owner of the repo",
  4468. "name": "owner",
  4469. "in": "path",
  4470. "required": true
  4471. },
  4472. {
  4473. "type": "string",
  4474. "description": "name of the repo",
  4475. "name": "repo",
  4476. "in": "path",
  4477. "required": true
  4478. }
  4479. ],
  4480. "responses": {
  4481. "200": {
  4482. "$ref": "#/responses/Repository"
  4483. },
  4484. "404": {
  4485. "$ref": "#/responses/notFound"
  4486. }
  4487. }
  4488. },
  4489. "delete": {
  4490. "produces": [
  4491. "application/json"
  4492. ],
  4493. "tags": [
  4494. "repository"
  4495. ],
  4496. "summary": "Delete a repository",
  4497. "operationId": "repoDelete",
  4498. "parameters": [
  4499. {
  4500. "type": "string",
  4501. "description": "owner of the repo to delete",
  4502. "name": "owner",
  4503. "in": "path",
  4504. "required": true
  4505. },
  4506. {
  4507. "type": "string",
  4508. "description": "name of the repo to delete",
  4509. "name": "repo",
  4510. "in": "path",
  4511. "required": true
  4512. }
  4513. ],
  4514. "responses": {
  4515. "204": {
  4516. "$ref": "#/responses/empty"
  4517. },
  4518. "403": {
  4519. "$ref": "#/responses/forbidden"
  4520. },
  4521. "404": {
  4522. "$ref": "#/responses/notFound"
  4523. }
  4524. }
  4525. },
  4526. "patch": {
  4527. "produces": [
  4528. "application/json"
  4529. ],
  4530. "tags": [
  4531. "repository"
  4532. ],
  4533. "summary": "Edit a repository's properties. Only fields that are set will be changed.",
  4534. "operationId": "repoEdit",
  4535. "parameters": [
  4536. {
  4537. "type": "string",
  4538. "description": "owner of the repo to edit",
  4539. "name": "owner",
  4540. "in": "path",
  4541. "required": true
  4542. },
  4543. {
  4544. "type": "string",
  4545. "description": "name of the repo to edit",
  4546. "name": "repo",
  4547. "in": "path",
  4548. "required": true
  4549. },
  4550. {
  4551. "description": "Properties of a repo that you can edit",
  4552. "name": "body",
  4553. "in": "body",
  4554. "schema": {
  4555. "$ref": "#/definitions/EditRepoOption"
  4556. }
  4557. }
  4558. ],
  4559. "responses": {
  4560. "200": {
  4561. "$ref": "#/responses/Repository"
  4562. },
  4563. "403": {
  4564. "$ref": "#/responses/forbidden"
  4565. },
  4566. "404": {
  4567. "$ref": "#/responses/notFound"
  4568. },
  4569. "422": {
  4570. "$ref": "#/responses/validationError"
  4571. }
  4572. }
  4573. }
  4574. },
  4575. "/repos/{owner}/{repo}/actions/artifacts": {
  4576. "get": {
  4577. "produces": [
  4578. "application/json"
  4579. ],
  4580. "tags": [
  4581. "repository"
  4582. ],
  4583. "summary": "Lists all artifacts for a repository",
  4584. "operationId": "getArtifacts",
  4585. "parameters": [
  4586. {
  4587. "type": "string",
  4588. "description": "owner of the repo",
  4589. "name": "owner",
  4590. "in": "path",
  4591. "required": true
  4592. },
  4593. {
  4594. "type": "string",
  4595. "description": "name of the repository",
  4596. "name": "repo",
  4597. "in": "path",
  4598. "required": true
  4599. },
  4600. {
  4601. "type": "string",
  4602. "description": "name of the artifact",
  4603. "name": "name",
  4604. "in": "query"
  4605. }
  4606. ],
  4607. "responses": {
  4608. "200": {
  4609. "$ref": "#/responses/ArtifactsList"
  4610. },
  4611. "400": {
  4612. "$ref": "#/responses/error"
  4613. },
  4614. "404": {
  4615. "$ref": "#/responses/notFound"
  4616. }
  4617. }
  4618. }
  4619. },
  4620. "/repos/{owner}/{repo}/actions/artifacts/{artifact_id}": {
  4621. "get": {
  4622. "produces": [
  4623. "application/json"
  4624. ],
  4625. "tags": [
  4626. "repository"
  4627. ],
  4628. "summary": "Gets a specific artifact for a workflow run",
  4629. "operationId": "getArtifact",
  4630. "parameters": [
  4631. {
  4632. "type": "string",
  4633. "description": "owner of the repo",
  4634. "name": "owner",
  4635. "in": "path",
  4636. "required": true
  4637. },
  4638. {
  4639. "type": "string",
  4640. "description": "name of the repository",
  4641. "name": "repo",
  4642. "in": "path",
  4643. "required": true
  4644. },
  4645. {
  4646. "type": "string",
  4647. "description": "id of the artifact",
  4648. "name": "artifact_id",
  4649. "in": "path",
  4650. "required": true
  4651. }
  4652. ],
  4653. "responses": {
  4654. "200": {
  4655. "$ref": "#/responses/Artifact"
  4656. },
  4657. "400": {
  4658. "$ref": "#/responses/error"
  4659. },
  4660. "404": {
  4661. "$ref": "#/responses/notFound"
  4662. }
  4663. }
  4664. },
  4665. "delete": {
  4666. "produces": [
  4667. "application/json"
  4668. ],
  4669. "tags": [
  4670. "repository"
  4671. ],
  4672. "summary": "Deletes a specific artifact for a workflow run",
  4673. "operationId": "deleteArtifact",
  4674. "parameters": [
  4675. {
  4676. "type": "string",
  4677. "description": "owner of the repo",
  4678. "name": "owner",
  4679. "in": "path",
  4680. "required": true
  4681. },
  4682. {
  4683. "type": "string",
  4684. "description": "name of the repository",
  4685. "name": "repo",
  4686. "in": "path",
  4687. "required": true
  4688. },
  4689. {
  4690. "type": "string",
  4691. "description": "id of the artifact",
  4692. "name": "artifact_id",
  4693. "in": "path",
  4694. "required": true
  4695. }
  4696. ],
  4697. "responses": {
  4698. "204": {
  4699. "description": "No Content"
  4700. },
  4701. "400": {
  4702. "$ref": "#/responses/error"
  4703. },
  4704. "404": {
  4705. "$ref": "#/responses/notFound"
  4706. }
  4707. }
  4708. }
  4709. },
  4710. "/repos/{owner}/{repo}/actions/artifacts/{artifact_id}/zip": {
  4711. "get": {
  4712. "produces": [
  4713. "application/json"
  4714. ],
  4715. "tags": [
  4716. "repository"
  4717. ],
  4718. "summary": "Downloads a specific artifact for a workflow run redirects to blob url",
  4719. "operationId": "downloadArtifact",
  4720. "parameters": [
  4721. {
  4722. "type": "string",
  4723. "description": "owner of the repo",
  4724. "name": "owner",
  4725. "in": "path",
  4726. "required": true
  4727. },
  4728. {
  4729. "type": "string",
  4730. "description": "name of the repository",
  4731. "name": "repo",
  4732. "in": "path",
  4733. "required": true
  4734. },
  4735. {
  4736. "type": "string",
  4737. "description": "id of the artifact",
  4738. "name": "artifact_id",
  4739. "in": "path",
  4740. "required": true
  4741. }
  4742. ],
  4743. "responses": {
  4744. "302": {
  4745. "description": "redirect to the blob download"
  4746. },
  4747. "400": {
  4748. "$ref": "#/responses/error"
  4749. },
  4750. "404": {
  4751. "$ref": "#/responses/notFound"
  4752. }
  4753. }
  4754. }
  4755. },
  4756. "/repos/{owner}/{repo}/actions/jobs": {
  4757. "get": {
  4758. "produces": [
  4759. "application/json"
  4760. ],
  4761. "tags": [
  4762. "repository"
  4763. ],
  4764. "summary": "Lists all jobs for a repository",
  4765. "operationId": "listWorkflowJobs",
  4766. "parameters": [
  4767. {
  4768. "type": "string",
  4769. "description": "owner of the repo",
  4770. "name": "owner",
  4771. "in": "path",
  4772. "required": true
  4773. },
  4774. {
  4775. "type": "string",
  4776. "description": "name of the repository",
  4777. "name": "repo",
  4778. "in": "path",
  4779. "required": true
  4780. },
  4781. {
  4782. "type": "string",
  4783. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  4784. "name": "status",
  4785. "in": "query"
  4786. },
  4787. {
  4788. "type": "integer",
  4789. "description": "page number of results to return (1-based)",
  4790. "name": "page",
  4791. "in": "query"
  4792. },
  4793. {
  4794. "type": "integer",
  4795. "description": "page size of results",
  4796. "name": "limit",
  4797. "in": "query"
  4798. }
  4799. ],
  4800. "responses": {
  4801. "200": {
  4802. "$ref": "#/responses/WorkflowJobsList"
  4803. },
  4804. "400": {
  4805. "$ref": "#/responses/error"
  4806. },
  4807. "404": {
  4808. "$ref": "#/responses/notFound"
  4809. }
  4810. }
  4811. }
  4812. },
  4813. "/repos/{owner}/{repo}/actions/jobs/{job_id}": {
  4814. "get": {
  4815. "produces": [
  4816. "application/json"
  4817. ],
  4818. "tags": [
  4819. "repository"
  4820. ],
  4821. "summary": "Gets a specific workflow job for a workflow run",
  4822. "operationId": "getWorkflowJob",
  4823. "parameters": [
  4824. {
  4825. "type": "string",
  4826. "description": "owner of the repo",
  4827. "name": "owner",
  4828. "in": "path",
  4829. "required": true
  4830. },
  4831. {
  4832. "type": "string",
  4833. "description": "name of the repository",
  4834. "name": "repo",
  4835. "in": "path",
  4836. "required": true
  4837. },
  4838. {
  4839. "type": "string",
  4840. "description": "id of the job",
  4841. "name": "job_id",
  4842. "in": "path",
  4843. "required": true
  4844. }
  4845. ],
  4846. "responses": {
  4847. "200": {
  4848. "$ref": "#/responses/WorkflowJob"
  4849. },
  4850. "400": {
  4851. "$ref": "#/responses/error"
  4852. },
  4853. "404": {
  4854. "$ref": "#/responses/notFound"
  4855. }
  4856. }
  4857. }
  4858. },
  4859. "/repos/{owner}/{repo}/actions/jobs/{job_id}/logs": {
  4860. "get": {
  4861. "produces": [
  4862. "application/json"
  4863. ],
  4864. "tags": [
  4865. "repository"
  4866. ],
  4867. "summary": "Downloads the job logs for a workflow run",
  4868. "operationId": "downloadActionsRunJobLogs",
  4869. "parameters": [
  4870. {
  4871. "type": "string",
  4872. "description": "owner of the repo",
  4873. "name": "owner",
  4874. "in": "path",
  4875. "required": true
  4876. },
  4877. {
  4878. "type": "string",
  4879. "description": "name of the repository",
  4880. "name": "repo",
  4881. "in": "path",
  4882. "required": true
  4883. },
  4884. {
  4885. "type": "integer",
  4886. "description": "id of the job",
  4887. "name": "job_id",
  4888. "in": "path",
  4889. "required": true
  4890. }
  4891. ],
  4892. "responses": {
  4893. "200": {
  4894. "description": "output blob content"
  4895. },
  4896. "400": {
  4897. "$ref": "#/responses/error"
  4898. },
  4899. "404": {
  4900. "$ref": "#/responses/notFound"
  4901. }
  4902. }
  4903. }
  4904. },
  4905. "/repos/{owner}/{repo}/actions/runners": {
  4906. "get": {
  4907. "produces": [
  4908. "application/json"
  4909. ],
  4910. "tags": [
  4911. "repository"
  4912. ],
  4913. "summary": "Get repo-level runners",
  4914. "operationId": "getRepoRunners",
  4915. "parameters": [
  4916. {
  4917. "type": "string",
  4918. "description": "owner of the repo",
  4919. "name": "owner",
  4920. "in": "path",
  4921. "required": true
  4922. },
  4923. {
  4924. "type": "string",
  4925. "description": "name of the repo",
  4926. "name": "repo",
  4927. "in": "path",
  4928. "required": true
  4929. }
  4930. ],
  4931. "responses": {
  4932. "200": {
  4933. "$ref": "#/definitions/ActionRunnersResponse"
  4934. },
  4935. "400": {
  4936. "$ref": "#/responses/error"
  4937. },
  4938. "404": {
  4939. "$ref": "#/responses/notFound"
  4940. }
  4941. }
  4942. }
  4943. },
  4944. "/repos/{owner}/{repo}/actions/runners/registration-token": {
  4945. "get": {
  4946. "produces": [
  4947. "application/json"
  4948. ],
  4949. "tags": [
  4950. "repository"
  4951. ],
  4952. "summary": "Get a repository's actions runner registration token",
  4953. "operationId": "repoGetRunnerRegistrationToken",
  4954. "parameters": [
  4955. {
  4956. "type": "string",
  4957. "description": "owner of the repo",
  4958. "name": "owner",
  4959. "in": "path",
  4960. "required": true
  4961. },
  4962. {
  4963. "type": "string",
  4964. "description": "name of the repo",
  4965. "name": "repo",
  4966. "in": "path",
  4967. "required": true
  4968. }
  4969. ],
  4970. "responses": {
  4971. "200": {
  4972. "$ref": "#/responses/RegistrationToken"
  4973. }
  4974. }
  4975. },
  4976. "post": {
  4977. "produces": [
  4978. "application/json"
  4979. ],
  4980. "tags": [
  4981. "repository"
  4982. ],
  4983. "summary": "Get a repository's actions runner registration token",
  4984. "operationId": "repoCreateRunnerRegistrationToken",
  4985. "parameters": [
  4986. {
  4987. "type": "string",
  4988. "description": "owner of the repo",
  4989. "name": "owner",
  4990. "in": "path",
  4991. "required": true
  4992. },
  4993. {
  4994. "type": "string",
  4995. "description": "name of the repo",
  4996. "name": "repo",
  4997. "in": "path",
  4998. "required": true
  4999. }
  5000. ],
  5001. "responses": {
  5002. "200": {
  5003. "$ref": "#/responses/RegistrationToken"
  5004. }
  5005. }
  5006. }
  5007. },
  5008. "/repos/{owner}/{repo}/actions/runners/{runner_id}": {
  5009. "get": {
  5010. "produces": [
  5011. "application/json"
  5012. ],
  5013. "tags": [
  5014. "repository"
  5015. ],
  5016. "summary": "Get an repo-level runner",
  5017. "operationId": "getRepoRunner",
  5018. "parameters": [
  5019. {
  5020. "type": "string",
  5021. "description": "owner of the repo",
  5022. "name": "owner",
  5023. "in": "path",
  5024. "required": true
  5025. },
  5026. {
  5027. "type": "string",
  5028. "description": "name of the repo",
  5029. "name": "repo",
  5030. "in": "path",
  5031. "required": true
  5032. },
  5033. {
  5034. "type": "string",
  5035. "description": "id of the runner",
  5036. "name": "runner_id",
  5037. "in": "path",
  5038. "required": true
  5039. }
  5040. ],
  5041. "responses": {
  5042. "200": {
  5043. "$ref": "#/definitions/ActionRunner"
  5044. },
  5045. "400": {
  5046. "$ref": "#/responses/error"
  5047. },
  5048. "404": {
  5049. "$ref": "#/responses/notFound"
  5050. }
  5051. }
  5052. },
  5053. "delete": {
  5054. "produces": [
  5055. "application/json"
  5056. ],
  5057. "tags": [
  5058. "repository"
  5059. ],
  5060. "summary": "Delete an repo-level runner",
  5061. "operationId": "deleteRepoRunner",
  5062. "parameters": [
  5063. {
  5064. "type": "string",
  5065. "description": "owner of the repo",
  5066. "name": "owner",
  5067. "in": "path",
  5068. "required": true
  5069. },
  5070. {
  5071. "type": "string",
  5072. "description": "name of the repo",
  5073. "name": "repo",
  5074. "in": "path",
  5075. "required": true
  5076. },
  5077. {
  5078. "type": "string",
  5079. "description": "id of the runner",
  5080. "name": "runner_id",
  5081. "in": "path",
  5082. "required": true
  5083. }
  5084. ],
  5085. "responses": {
  5086. "204": {
  5087. "description": "runner has been deleted"
  5088. },
  5089. "400": {
  5090. "$ref": "#/responses/error"
  5091. },
  5092. "404": {
  5093. "$ref": "#/responses/notFound"
  5094. }
  5095. }
  5096. }
  5097. },
  5098. "/repos/{owner}/{repo}/actions/runs": {
  5099. "get": {
  5100. "produces": [
  5101. "application/json"
  5102. ],
  5103. "tags": [
  5104. "repository"
  5105. ],
  5106. "summary": "Lists all runs for a repository run",
  5107. "operationId": "getWorkflowRuns",
  5108. "parameters": [
  5109. {
  5110. "type": "string",
  5111. "description": "owner of the repo",
  5112. "name": "owner",
  5113. "in": "path",
  5114. "required": true
  5115. },
  5116. {
  5117. "type": "string",
  5118. "description": "name of the repository",
  5119. "name": "repo",
  5120. "in": "path",
  5121. "required": true
  5122. },
  5123. {
  5124. "type": "string",
  5125. "description": "workflow event name",
  5126. "name": "event",
  5127. "in": "query"
  5128. },
  5129. {
  5130. "type": "string",
  5131. "description": "workflow branch",
  5132. "name": "branch",
  5133. "in": "query"
  5134. },
  5135. {
  5136. "type": "string",
  5137. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  5138. "name": "status",
  5139. "in": "query"
  5140. },
  5141. {
  5142. "type": "string",
  5143. "description": "triggered by user",
  5144. "name": "actor",
  5145. "in": "query"
  5146. },
  5147. {
  5148. "type": "string",
  5149. "description": "triggering sha of the workflow run",
  5150. "name": "head_sha",
  5151. "in": "query"
  5152. },
  5153. {
  5154. "type": "integer",
  5155. "description": "page number of results to return (1-based)",
  5156. "name": "page",
  5157. "in": "query"
  5158. },
  5159. {
  5160. "type": "integer",
  5161. "description": "page size of results",
  5162. "name": "limit",
  5163. "in": "query"
  5164. }
  5165. ],
  5166. "responses": {
  5167. "200": {
  5168. "$ref": "#/responses/WorkflowRunsList"
  5169. },
  5170. "400": {
  5171. "$ref": "#/responses/error"
  5172. },
  5173. "404": {
  5174. "$ref": "#/responses/notFound"
  5175. }
  5176. }
  5177. }
  5178. },
  5179. "/repos/{owner}/{repo}/actions/runs/{run}": {
  5180. "get": {
  5181. "produces": [
  5182. "application/json"
  5183. ],
  5184. "tags": [
  5185. "repository"
  5186. ],
  5187. "summary": "Gets a specific workflow run",
  5188. "operationId": "GetWorkflowRun",
  5189. "parameters": [
  5190. {
  5191. "type": "string",
  5192. "description": "owner of the repo",
  5193. "name": "owner",
  5194. "in": "path",
  5195. "required": true
  5196. },
  5197. {
  5198. "type": "string",
  5199. "description": "name of the repository",
  5200. "name": "repo",
  5201. "in": "path",
  5202. "required": true
  5203. },
  5204. {
  5205. "type": "string",
  5206. "description": "id of the run",
  5207. "name": "run",
  5208. "in": "path",
  5209. "required": true
  5210. }
  5211. ],
  5212. "responses": {
  5213. "200": {
  5214. "$ref": "#/responses/WorkflowRun"
  5215. },
  5216. "400": {
  5217. "$ref": "#/responses/error"
  5218. },
  5219. "404": {
  5220. "$ref": "#/responses/notFound"
  5221. }
  5222. }
  5223. },
  5224. "delete": {
  5225. "produces": [
  5226. "application/json"
  5227. ],
  5228. "tags": [
  5229. "repository"
  5230. ],
  5231. "summary": "Delete a workflow run",
  5232. "operationId": "deleteActionRun",
  5233. "parameters": [
  5234. {
  5235. "type": "string",
  5236. "description": "owner of the repo",
  5237. "name": "owner",
  5238. "in": "path",
  5239. "required": true
  5240. },
  5241. {
  5242. "type": "string",
  5243. "description": "name of the repository",
  5244. "name": "repo",
  5245. "in": "path",
  5246. "required": true
  5247. },
  5248. {
  5249. "type": "integer",
  5250. "description": "runid of the workflow run",
  5251. "name": "run",
  5252. "in": "path",
  5253. "required": true
  5254. }
  5255. ],
  5256. "responses": {
  5257. "204": {
  5258. "description": "No Content"
  5259. },
  5260. "400": {
  5261. "$ref": "#/responses/error"
  5262. },
  5263. "404": {
  5264. "$ref": "#/responses/notFound"
  5265. }
  5266. }
  5267. }
  5268. },
  5269. "/repos/{owner}/{repo}/actions/runs/{run}/artifacts": {
  5270. "get": {
  5271. "produces": [
  5272. "application/json"
  5273. ],
  5274. "tags": [
  5275. "repository"
  5276. ],
  5277. "summary": "Lists all artifacts for a repository run",
  5278. "operationId": "getArtifactsOfRun",
  5279. "parameters": [
  5280. {
  5281. "type": "string",
  5282. "description": "owner of the repo",
  5283. "name": "owner",
  5284. "in": "path",
  5285. "required": true
  5286. },
  5287. {
  5288. "type": "string",
  5289. "description": "name of the repository",
  5290. "name": "repo",
  5291. "in": "path",
  5292. "required": true
  5293. },
  5294. {
  5295. "type": "integer",
  5296. "description": "runid of the workflow run",
  5297. "name": "run",
  5298. "in": "path",
  5299. "required": true
  5300. },
  5301. {
  5302. "type": "string",
  5303. "description": "name of the artifact",
  5304. "name": "name",
  5305. "in": "query"
  5306. }
  5307. ],
  5308. "responses": {
  5309. "200": {
  5310. "$ref": "#/responses/ArtifactsList"
  5311. },
  5312. "400": {
  5313. "$ref": "#/responses/error"
  5314. },
  5315. "404": {
  5316. "$ref": "#/responses/notFound"
  5317. }
  5318. }
  5319. }
  5320. },
  5321. "/repos/{owner}/{repo}/actions/runs/{run}/jobs": {
  5322. "get": {
  5323. "produces": [
  5324. "application/json"
  5325. ],
  5326. "tags": [
  5327. "repository"
  5328. ],
  5329. "summary": "Lists all jobs for a workflow run",
  5330. "operationId": "listWorkflowRunJobs",
  5331. "parameters": [
  5332. {
  5333. "type": "string",
  5334. "description": "owner of the repo",
  5335. "name": "owner",
  5336. "in": "path",
  5337. "required": true
  5338. },
  5339. {
  5340. "type": "string",
  5341. "description": "name of the repository",
  5342. "name": "repo",
  5343. "in": "path",
  5344. "required": true
  5345. },
  5346. {
  5347. "type": "integer",
  5348. "description": "runid of the workflow run",
  5349. "name": "run",
  5350. "in": "path",
  5351. "required": true
  5352. },
  5353. {
  5354. "type": "string",
  5355. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  5356. "name": "status",
  5357. "in": "query"
  5358. },
  5359. {
  5360. "type": "integer",
  5361. "description": "page number of results to return (1-based)",
  5362. "name": "page",
  5363. "in": "query"
  5364. },
  5365. {
  5366. "type": "integer",
  5367. "description": "page size of results",
  5368. "name": "limit",
  5369. "in": "query"
  5370. }
  5371. ],
  5372. "responses": {
  5373. "200": {
  5374. "$ref": "#/responses/WorkflowJobsList"
  5375. },
  5376. "400": {
  5377. "$ref": "#/responses/error"
  5378. },
  5379. "404": {
  5380. "$ref": "#/responses/notFound"
  5381. }
  5382. }
  5383. }
  5384. },
  5385. "/repos/{owner}/{repo}/actions/secrets": {
  5386. "get": {
  5387. "produces": [
  5388. "application/json"
  5389. ],
  5390. "tags": [
  5391. "repository"
  5392. ],
  5393. "summary": "List an repo's actions secrets",
  5394. "operationId": "repoListActionsSecrets",
  5395. "parameters": [
  5396. {
  5397. "type": "string",
  5398. "description": "owner of the repo",
  5399. "name": "owner",
  5400. "in": "path",
  5401. "required": true
  5402. },
  5403. {
  5404. "type": "string",
  5405. "description": "name of the repository",
  5406. "name": "repo",
  5407. "in": "path",
  5408. "required": true
  5409. },
  5410. {
  5411. "type": "integer",
  5412. "description": "page number of results to return (1-based)",
  5413. "name": "page",
  5414. "in": "query"
  5415. },
  5416. {
  5417. "type": "integer",
  5418. "description": "page size of results",
  5419. "name": "limit",
  5420. "in": "query"
  5421. }
  5422. ],
  5423. "responses": {
  5424. "200": {
  5425. "$ref": "#/responses/SecretList"
  5426. },
  5427. "404": {
  5428. "$ref": "#/responses/notFound"
  5429. }
  5430. }
  5431. }
  5432. },
  5433. "/repos/{owner}/{repo}/actions/secrets/{secretname}": {
  5434. "put": {
  5435. "consumes": [
  5436. "application/json"
  5437. ],
  5438. "produces": [
  5439. "application/json"
  5440. ],
  5441. "tags": [
  5442. "repository"
  5443. ],
  5444. "summary": "Create or Update a secret value in a repository",
  5445. "operationId": "updateRepoSecret",
  5446. "parameters": [
  5447. {
  5448. "type": "string",
  5449. "description": "owner of the repository",
  5450. "name": "owner",
  5451. "in": "path",
  5452. "required": true
  5453. },
  5454. {
  5455. "type": "string",
  5456. "description": "name of the repository",
  5457. "name": "repo",
  5458. "in": "path",
  5459. "required": true
  5460. },
  5461. {
  5462. "type": "string",
  5463. "description": "name of the secret",
  5464. "name": "secretname",
  5465. "in": "path",
  5466. "required": true
  5467. },
  5468. {
  5469. "name": "body",
  5470. "in": "body",
  5471. "schema": {
  5472. "$ref": "#/definitions/CreateOrUpdateSecretOption"
  5473. }
  5474. }
  5475. ],
  5476. "responses": {
  5477. "201": {
  5478. "description": "response when creating a secret"
  5479. },
  5480. "204": {
  5481. "description": "response when updating a secret"
  5482. },
  5483. "400": {
  5484. "$ref": "#/responses/error"
  5485. },
  5486. "404": {
  5487. "$ref": "#/responses/notFound"
  5488. }
  5489. }
  5490. },
  5491. "delete": {
  5492. "consumes": [
  5493. "application/json"
  5494. ],
  5495. "produces": [
  5496. "application/json"
  5497. ],
  5498. "tags": [
  5499. "repository"
  5500. ],
  5501. "summary": "Delete a secret in a repository",
  5502. "operationId": "deleteRepoSecret",
  5503. "parameters": [
  5504. {
  5505. "type": "string",
  5506. "description": "owner of the repository",
  5507. "name": "owner",
  5508. "in": "path",
  5509. "required": true
  5510. },
  5511. {
  5512. "type": "string",
  5513. "description": "name of the repository",
  5514. "name": "repo",
  5515. "in": "path",
  5516. "required": true
  5517. },
  5518. {
  5519. "type": "string",
  5520. "description": "name of the secret",
  5521. "name": "secretname",
  5522. "in": "path",
  5523. "required": true
  5524. }
  5525. ],
  5526. "responses": {
  5527. "204": {
  5528. "description": "delete one secret of the repository"
  5529. },
  5530. "400": {
  5531. "$ref": "#/responses/error"
  5532. },
  5533. "404": {
  5534. "$ref": "#/responses/notFound"
  5535. }
  5536. }
  5537. }
  5538. },
  5539. "/repos/{owner}/{repo}/actions/tasks": {
  5540. "get": {
  5541. "produces": [
  5542. "application/json"
  5543. ],
  5544. "tags": [
  5545. "repository"
  5546. ],
  5547. "summary": "List a repository's action tasks",
  5548. "operationId": "ListActionTasks",
  5549. "parameters": [
  5550. {
  5551. "type": "string",
  5552. "description": "owner of the repo",
  5553. "name": "owner",
  5554. "in": "path",
  5555. "required": true
  5556. },
  5557. {
  5558. "type": "string",
  5559. "description": "name of the repo",
  5560. "name": "repo",
  5561. "in": "path",
  5562. "required": true
  5563. },
  5564. {
  5565. "type": "integer",
  5566. "description": "page number of results to return (1-based)",
  5567. "name": "page",
  5568. "in": "query"
  5569. },
  5570. {
  5571. "type": "integer",
  5572. "description": "page size of results, default maximum page size is 50",
  5573. "name": "limit",
  5574. "in": "query"
  5575. }
  5576. ],
  5577. "responses": {
  5578. "200": {
  5579. "$ref": "#/responses/TasksList"
  5580. },
  5581. "400": {
  5582. "$ref": "#/responses/error"
  5583. },
  5584. "403": {
  5585. "$ref": "#/responses/forbidden"
  5586. },
  5587. "404": {
  5588. "$ref": "#/responses/notFound"
  5589. },
  5590. "409": {
  5591. "$ref": "#/responses/conflict"
  5592. },
  5593. "422": {
  5594. "$ref": "#/responses/validationError"
  5595. }
  5596. }
  5597. }
  5598. },
  5599. "/repos/{owner}/{repo}/actions/variables": {
  5600. "get": {
  5601. "produces": [
  5602. "application/json"
  5603. ],
  5604. "tags": [
  5605. "repository"
  5606. ],
  5607. "summary": "Get repo-level variables list",
  5608. "operationId": "getRepoVariablesList",
  5609. "parameters": [
  5610. {
  5611. "type": "string",
  5612. "description": "owner of the repo",
  5613. "name": "owner",
  5614. "in": "path",
  5615. "required": true
  5616. },
  5617. {
  5618. "type": "string",
  5619. "description": "name of the repository",
  5620. "name": "repo",
  5621. "in": "path",
  5622. "required": true
  5623. },
  5624. {
  5625. "type": "integer",
  5626. "description": "page number of results to return (1-based)",
  5627. "name": "page",
  5628. "in": "query"
  5629. },
  5630. {
  5631. "type": "integer",
  5632. "description": "page size of results",
  5633. "name": "limit",
  5634. "in": "query"
  5635. }
  5636. ],
  5637. "responses": {
  5638. "200": {
  5639. "$ref": "#/responses/VariableList"
  5640. },
  5641. "400": {
  5642. "$ref": "#/responses/error"
  5643. },
  5644. "404": {
  5645. "$ref": "#/responses/notFound"
  5646. }
  5647. }
  5648. }
  5649. },
  5650. "/repos/{owner}/{repo}/actions/variables/{variablename}": {
  5651. "get": {
  5652. "produces": [
  5653. "application/json"
  5654. ],
  5655. "tags": [
  5656. "repository"
  5657. ],
  5658. "summary": "Get a repo-level variable",
  5659. "operationId": "getRepoVariable",
  5660. "parameters": [
  5661. {
  5662. "type": "string",
  5663. "description": "owner of the repo",
  5664. "name": "owner",
  5665. "in": "path",
  5666. "required": true
  5667. },
  5668. {
  5669. "type": "string",
  5670. "description": "name of the repository",
  5671. "name": "repo",
  5672. "in": "path",
  5673. "required": true
  5674. },
  5675. {
  5676. "type": "string",
  5677. "description": "name of the variable",
  5678. "name": "variablename",
  5679. "in": "path",
  5680. "required": true
  5681. }
  5682. ],
  5683. "responses": {
  5684. "200": {
  5685. "$ref": "#/responses/ActionVariable"
  5686. },
  5687. "400": {
  5688. "$ref": "#/responses/error"
  5689. },
  5690. "404": {
  5691. "$ref": "#/responses/notFound"
  5692. }
  5693. }
  5694. },
  5695. "put": {
  5696. "produces": [
  5697. "application/json"
  5698. ],
  5699. "tags": [
  5700. "repository"
  5701. ],
  5702. "summary": "Update a repo-level variable",
  5703. "operationId": "updateRepoVariable",
  5704. "parameters": [
  5705. {
  5706. "type": "string",
  5707. "description": "owner of the repo",
  5708. "name": "owner",
  5709. "in": "path",
  5710. "required": true
  5711. },
  5712. {
  5713. "type": "string",
  5714. "description": "name of the repository",
  5715. "name": "repo",
  5716. "in": "path",
  5717. "required": true
  5718. },
  5719. {
  5720. "type": "string",
  5721. "description": "name of the variable",
  5722. "name": "variablename",
  5723. "in": "path",
  5724. "required": true
  5725. },
  5726. {
  5727. "name": "body",
  5728. "in": "body",
  5729. "schema": {
  5730. "$ref": "#/definitions/UpdateVariableOption"
  5731. }
  5732. }
  5733. ],
  5734. "responses": {
  5735. "201": {
  5736. "description": "response when updating a repo-level variable"
  5737. },
  5738. "204": {
  5739. "description": "response when updating a repo-level variable"
  5740. },
  5741. "400": {
  5742. "$ref": "#/responses/error"
  5743. },
  5744. "404": {
  5745. "$ref": "#/responses/notFound"
  5746. }
  5747. }
  5748. },
  5749. "post": {
  5750. "produces": [
  5751. "application/json"
  5752. ],
  5753. "tags": [
  5754. "repository"
  5755. ],
  5756. "summary": "Create a repo-level variable",
  5757. "operationId": "createRepoVariable",
  5758. "parameters": [
  5759. {
  5760. "type": "string",
  5761. "description": "owner of the repo",
  5762. "name": "owner",
  5763. "in": "path",
  5764. "required": true
  5765. },
  5766. {
  5767. "type": "string",
  5768. "description": "name of the repository",
  5769. "name": "repo",
  5770. "in": "path",
  5771. "required": true
  5772. },
  5773. {
  5774. "type": "string",
  5775. "description": "name of the variable",
  5776. "name": "variablename",
  5777. "in": "path",
  5778. "required": true
  5779. },
  5780. {
  5781. "name": "body",
  5782. "in": "body",
  5783. "schema": {
  5784. "$ref": "#/definitions/CreateVariableOption"
  5785. }
  5786. }
  5787. ],
  5788. "responses": {
  5789. "201": {
  5790. "description": "response when creating a repo-level variable"
  5791. },
  5792. "400": {
  5793. "$ref": "#/responses/error"
  5794. },
  5795. "409": {
  5796. "description": "variable name already exists."
  5797. },
  5798. "500": {
  5799. "$ref": "#/responses/error"
  5800. }
  5801. }
  5802. },
  5803. "delete": {
  5804. "produces": [
  5805. "application/json"
  5806. ],
  5807. "tags": [
  5808. "repository"
  5809. ],
  5810. "summary": "Delete a repo-level variable",
  5811. "operationId": "deleteRepoVariable",
  5812. "parameters": [
  5813. {
  5814. "type": "string",
  5815. "description": "owner of the repo",
  5816. "name": "owner",
  5817. "in": "path",
  5818. "required": true
  5819. },
  5820. {
  5821. "type": "string",
  5822. "description": "name of the repository",
  5823. "name": "repo",
  5824. "in": "path",
  5825. "required": true
  5826. },
  5827. {
  5828. "type": "string",
  5829. "description": "name of the variable",
  5830. "name": "variablename",
  5831. "in": "path",
  5832. "required": true
  5833. }
  5834. ],
  5835. "responses": {
  5836. "200": {
  5837. "$ref": "#/responses/ActionVariable"
  5838. },
  5839. "201": {
  5840. "description": "response when deleting a variable"
  5841. },
  5842. "204": {
  5843. "description": "response when deleting a variable"
  5844. },
  5845. "400": {
  5846. "$ref": "#/responses/error"
  5847. },
  5848. "404": {
  5849. "$ref": "#/responses/notFound"
  5850. }
  5851. }
  5852. }
  5853. },
  5854. "/repos/{owner}/{repo}/actions/workflows": {
  5855. "get": {
  5856. "produces": [
  5857. "application/json"
  5858. ],
  5859. "tags": [
  5860. "repository"
  5861. ],
  5862. "summary": "List repository workflows",
  5863. "operationId": "ActionsListRepositoryWorkflows",
  5864. "parameters": [
  5865. {
  5866. "type": "string",
  5867. "description": "owner of the repo",
  5868. "name": "owner",
  5869. "in": "path",
  5870. "required": true
  5871. },
  5872. {
  5873. "type": "string",
  5874. "description": "name of the repo",
  5875. "name": "repo",
  5876. "in": "path",
  5877. "required": true
  5878. }
  5879. ],
  5880. "responses": {
  5881. "200": {
  5882. "$ref": "#/responses/ActionWorkflowList"
  5883. },
  5884. "400": {
  5885. "$ref": "#/responses/error"
  5886. },
  5887. "403": {
  5888. "$ref": "#/responses/forbidden"
  5889. },
  5890. "404": {
  5891. "$ref": "#/responses/notFound"
  5892. },
  5893. "422": {
  5894. "$ref": "#/responses/validationError"
  5895. },
  5896. "500": {
  5897. "$ref": "#/responses/error"
  5898. }
  5899. }
  5900. }
  5901. },
  5902. "/repos/{owner}/{repo}/actions/workflows/{workflow_id}": {
  5903. "get": {
  5904. "produces": [
  5905. "application/json"
  5906. ],
  5907. "tags": [
  5908. "repository"
  5909. ],
  5910. "summary": "Get a workflow",
  5911. "operationId": "ActionsGetWorkflow",
  5912. "parameters": [
  5913. {
  5914. "type": "string",
  5915. "description": "owner of the repo",
  5916. "name": "owner",
  5917. "in": "path",
  5918. "required": true
  5919. },
  5920. {
  5921. "type": "string",
  5922. "description": "name of the repo",
  5923. "name": "repo",
  5924. "in": "path",
  5925. "required": true
  5926. },
  5927. {
  5928. "type": "string",
  5929. "description": "id of the workflow",
  5930. "name": "workflow_id",
  5931. "in": "path",
  5932. "required": true
  5933. }
  5934. ],
  5935. "responses": {
  5936. "200": {
  5937. "$ref": "#/responses/ActionWorkflow"
  5938. },
  5939. "400": {
  5940. "$ref": "#/responses/error"
  5941. },
  5942. "403": {
  5943. "$ref": "#/responses/forbidden"
  5944. },
  5945. "404": {
  5946. "$ref": "#/responses/notFound"
  5947. },
  5948. "422": {
  5949. "$ref": "#/responses/validationError"
  5950. },
  5951. "500": {
  5952. "$ref": "#/responses/error"
  5953. }
  5954. }
  5955. }
  5956. },
  5957. "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable": {
  5958. "put": {
  5959. "produces": [
  5960. "application/json"
  5961. ],
  5962. "tags": [
  5963. "repository"
  5964. ],
  5965. "summary": "Disable a workflow",
  5966. "operationId": "ActionsDisableWorkflow",
  5967. "parameters": [
  5968. {
  5969. "type": "string",
  5970. "description": "owner of the repo",
  5971. "name": "owner",
  5972. "in": "path",
  5973. "required": true
  5974. },
  5975. {
  5976. "type": "string",
  5977. "description": "name of the repo",
  5978. "name": "repo",
  5979. "in": "path",
  5980. "required": true
  5981. },
  5982. {
  5983. "type": "string",
  5984. "description": "id of the workflow",
  5985. "name": "workflow_id",
  5986. "in": "path",
  5987. "required": true
  5988. }
  5989. ],
  5990. "responses": {
  5991. "204": {
  5992. "description": "No Content"
  5993. },
  5994. "400": {
  5995. "$ref": "#/responses/error"
  5996. },
  5997. "403": {
  5998. "$ref": "#/responses/forbidden"
  5999. },
  6000. "404": {
  6001. "$ref": "#/responses/notFound"
  6002. },
  6003. "422": {
  6004. "$ref": "#/responses/validationError"
  6005. }
  6006. }
  6007. }
  6008. },
  6009. "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches": {
  6010. "post": {
  6011. "produces": [
  6012. "application/json"
  6013. ],
  6014. "tags": [
  6015. "repository"
  6016. ],
  6017. "summary": "Create a workflow dispatch event",
  6018. "operationId": "ActionsDispatchWorkflow",
  6019. "parameters": [
  6020. {
  6021. "type": "string",
  6022. "description": "owner of the repo",
  6023. "name": "owner",
  6024. "in": "path",
  6025. "required": true
  6026. },
  6027. {
  6028. "type": "string",
  6029. "description": "name of the repo",
  6030. "name": "repo",
  6031. "in": "path",
  6032. "required": true
  6033. },
  6034. {
  6035. "type": "string",
  6036. "description": "id of the workflow",
  6037. "name": "workflow_id",
  6038. "in": "path",
  6039. "required": true
  6040. },
  6041. {
  6042. "name": "body",
  6043. "in": "body",
  6044. "schema": {
  6045. "$ref": "#/definitions/CreateActionWorkflowDispatch"
  6046. }
  6047. }
  6048. ],
  6049. "responses": {
  6050. "204": {
  6051. "description": "No Content"
  6052. },
  6053. "400": {
  6054. "$ref": "#/responses/error"
  6055. },
  6056. "403": {
  6057. "$ref": "#/responses/forbidden"
  6058. },
  6059. "404": {
  6060. "$ref": "#/responses/notFound"
  6061. },
  6062. "422": {
  6063. "$ref": "#/responses/validationError"
  6064. }
  6065. }
  6066. }
  6067. },
  6068. "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable": {
  6069. "put": {
  6070. "produces": [
  6071. "application/json"
  6072. ],
  6073. "tags": [
  6074. "repository"
  6075. ],
  6076. "summary": "Enable a workflow",
  6077. "operationId": "ActionsEnableWorkflow",
  6078. "parameters": [
  6079. {
  6080. "type": "string",
  6081. "description": "owner of the repo",
  6082. "name": "owner",
  6083. "in": "path",
  6084. "required": true
  6085. },
  6086. {
  6087. "type": "string",
  6088. "description": "name of the repo",
  6089. "name": "repo",
  6090. "in": "path",
  6091. "required": true
  6092. },
  6093. {
  6094. "type": "string",
  6095. "description": "id of the workflow",
  6096. "name": "workflow_id",
  6097. "in": "path",
  6098. "required": true
  6099. }
  6100. ],
  6101. "responses": {
  6102. "204": {
  6103. "description": "No Content"
  6104. },
  6105. "400": {
  6106. "$ref": "#/responses/error"
  6107. },
  6108. "403": {
  6109. "$ref": "#/responses/forbidden"
  6110. },
  6111. "404": {
  6112. "$ref": "#/responses/notFound"
  6113. },
  6114. "409": {
  6115. "$ref": "#/responses/conflict"
  6116. },
  6117. "422": {
  6118. "$ref": "#/responses/validationError"
  6119. }
  6120. }
  6121. }
  6122. },
  6123. "/repos/{owner}/{repo}/activities/feeds": {
  6124. "get": {
  6125. "produces": [
  6126. "application/json"
  6127. ],
  6128. "tags": [
  6129. "repository"
  6130. ],
  6131. "summary": "List a repository's activity feeds",
  6132. "operationId": "repoListActivityFeeds",
  6133. "parameters": [
  6134. {
  6135. "type": "string",
  6136. "description": "owner of the repo",
  6137. "name": "owner",
  6138. "in": "path",
  6139. "required": true
  6140. },
  6141. {
  6142. "type": "string",
  6143. "description": "name of the repo",
  6144. "name": "repo",
  6145. "in": "path",
  6146. "required": true
  6147. },
  6148. {
  6149. "type": "string",
  6150. "format": "date",
  6151. "description": "the date of the activities to be found",
  6152. "name": "date",
  6153. "in": "query"
  6154. },
  6155. {
  6156. "type": "integer",
  6157. "description": "page number of results to return (1-based)",
  6158. "name": "page",
  6159. "in": "query"
  6160. },
  6161. {
  6162. "type": "integer",
  6163. "description": "page size of results",
  6164. "name": "limit",
  6165. "in": "query"
  6166. }
  6167. ],
  6168. "responses": {
  6169. "200": {
  6170. "$ref": "#/responses/ActivityFeedsList"
  6171. },
  6172. "404": {
  6173. "$ref": "#/responses/notFound"
  6174. }
  6175. }
  6176. }
  6177. },
  6178. "/repos/{owner}/{repo}/archive/{archive}": {
  6179. "get": {
  6180. "produces": [
  6181. "application/json"
  6182. ],
  6183. "tags": [
  6184. "repository"
  6185. ],
  6186. "summary": "Get an archive of a repository",
  6187. "operationId": "repoGetArchive",
  6188. "parameters": [
  6189. {
  6190. "type": "string",
  6191. "description": "owner of the repo",
  6192. "name": "owner",
  6193. "in": "path",
  6194. "required": true
  6195. },
  6196. {
  6197. "type": "string",
  6198. "description": "name of the repo",
  6199. "name": "repo",
  6200. "in": "path",
  6201. "required": true
  6202. },
  6203. {
  6204. "type": "string",
  6205. "description": "the git reference for download with attached archive format (e.g. master.zip)",
  6206. "name": "archive",
  6207. "in": "path",
  6208. "required": true
  6209. }
  6210. ],
  6211. "responses": {
  6212. "200": {
  6213. "description": "success"
  6214. },
  6215. "404": {
  6216. "$ref": "#/responses/notFound"
  6217. }
  6218. }
  6219. }
  6220. },
  6221. "/repos/{owner}/{repo}/assignees": {
  6222. "get": {
  6223. "produces": [
  6224. "application/json"
  6225. ],
  6226. "tags": [
  6227. "repository"
  6228. ],
  6229. "summary": "Return all users that have write access and can be assigned to issues",
  6230. "operationId": "repoGetAssignees",
  6231. "parameters": [
  6232. {
  6233. "type": "string",
  6234. "description": "owner of the repo",
  6235. "name": "owner",
  6236. "in": "path",
  6237. "required": true
  6238. },
  6239. {
  6240. "type": "string",
  6241. "description": "name of the repo",
  6242. "name": "repo",
  6243. "in": "path",
  6244. "required": true
  6245. }
  6246. ],
  6247. "responses": {
  6248. "200": {
  6249. "$ref": "#/responses/UserList"
  6250. },
  6251. "404": {
  6252. "$ref": "#/responses/notFound"
  6253. }
  6254. }
  6255. }
  6256. },
  6257. "/repos/{owner}/{repo}/avatar": {
  6258. "post": {
  6259. "produces": [
  6260. "application/json"
  6261. ],
  6262. "tags": [
  6263. "repository"
  6264. ],
  6265. "summary": "Update avatar",
  6266. "operationId": "repoUpdateAvatar",
  6267. "parameters": [
  6268. {
  6269. "type": "string",
  6270. "description": "owner of the repo",
  6271. "name": "owner",
  6272. "in": "path",
  6273. "required": true
  6274. },
  6275. {
  6276. "type": "string",
  6277. "description": "name of the repo",
  6278. "name": "repo",
  6279. "in": "path",
  6280. "required": true
  6281. },
  6282. {
  6283. "name": "body",
  6284. "in": "body",
  6285. "schema": {
  6286. "$ref": "#/definitions/UpdateRepoAvatarOption"
  6287. }
  6288. }
  6289. ],
  6290. "responses": {
  6291. "204": {
  6292. "$ref": "#/responses/empty"
  6293. },
  6294. "404": {
  6295. "$ref": "#/responses/notFound"
  6296. }
  6297. }
  6298. },
  6299. "delete": {
  6300. "produces": [
  6301. "application/json"
  6302. ],
  6303. "tags": [
  6304. "repository"
  6305. ],
  6306. "summary": "Delete avatar",
  6307. "operationId": "repoDeleteAvatar",
  6308. "parameters": [
  6309. {
  6310. "type": "string",
  6311. "description": "owner of the repo",
  6312. "name": "owner",
  6313. "in": "path",
  6314. "required": true
  6315. },
  6316. {
  6317. "type": "string",
  6318. "description": "name of the repo",
  6319. "name": "repo",
  6320. "in": "path",
  6321. "required": true
  6322. }
  6323. ],
  6324. "responses": {
  6325. "204": {
  6326. "$ref": "#/responses/empty"
  6327. },
  6328. "404": {
  6329. "$ref": "#/responses/notFound"
  6330. }
  6331. }
  6332. }
  6333. },
  6334. "/repos/{owner}/{repo}/branch_protections": {
  6335. "get": {
  6336. "produces": [
  6337. "application/json"
  6338. ],
  6339. "tags": [
  6340. "repository"
  6341. ],
  6342. "summary": "List branch protections for a repository",
  6343. "operationId": "repoListBranchProtection",
  6344. "parameters": [
  6345. {
  6346. "type": "string",
  6347. "description": "owner of the repo",
  6348. "name": "owner",
  6349. "in": "path",
  6350. "required": true
  6351. },
  6352. {
  6353. "type": "string",
  6354. "description": "name of the repo",
  6355. "name": "repo",
  6356. "in": "path",
  6357. "required": true
  6358. }
  6359. ],
  6360. "responses": {
  6361. "200": {
  6362. "$ref": "#/responses/BranchProtectionList"
  6363. }
  6364. }
  6365. },
  6366. "post": {
  6367. "consumes": [
  6368. "application/json"
  6369. ],
  6370. "produces": [
  6371. "application/json"
  6372. ],
  6373. "tags": [
  6374. "repository"
  6375. ],
  6376. "summary": "Create a branch protections for a repository",
  6377. "operationId": "repoCreateBranchProtection",
  6378. "parameters": [
  6379. {
  6380. "type": "string",
  6381. "description": "owner of the repo",
  6382. "name": "owner",
  6383. "in": "path",
  6384. "required": true
  6385. },
  6386. {
  6387. "type": "string",
  6388. "description": "name of the repo",
  6389. "name": "repo",
  6390. "in": "path",
  6391. "required": true
  6392. },
  6393. {
  6394. "name": "body",
  6395. "in": "body",
  6396. "schema": {
  6397. "$ref": "#/definitions/CreateBranchProtectionOption"
  6398. }
  6399. }
  6400. ],
  6401. "responses": {
  6402. "201": {
  6403. "$ref": "#/responses/BranchProtection"
  6404. },
  6405. "403": {
  6406. "$ref": "#/responses/forbidden"
  6407. },
  6408. "404": {
  6409. "$ref": "#/responses/notFound"
  6410. },
  6411. "422": {
  6412. "$ref": "#/responses/validationError"
  6413. },
  6414. "423": {
  6415. "$ref": "#/responses/repoArchivedError"
  6416. }
  6417. }
  6418. }
  6419. },
  6420. "/repos/{owner}/{repo}/branch_protections/priority": {
  6421. "post": {
  6422. "consumes": [
  6423. "application/json"
  6424. ],
  6425. "produces": [
  6426. "application/json"
  6427. ],
  6428. "tags": [
  6429. "repository"
  6430. ],
  6431. "summary": "Update the priorities of branch protections for a repository.",
  6432. "operationId": "repoUpdateBranchProtectionPriories",
  6433. "parameters": [
  6434. {
  6435. "type": "string",
  6436. "description": "owner of the repo",
  6437. "name": "owner",
  6438. "in": "path",
  6439. "required": true
  6440. },
  6441. {
  6442. "type": "string",
  6443. "description": "name of the repo",
  6444. "name": "repo",
  6445. "in": "path",
  6446. "required": true
  6447. },
  6448. {
  6449. "name": "body",
  6450. "in": "body",
  6451. "schema": {
  6452. "$ref": "#/definitions/UpdateBranchProtectionPriories"
  6453. }
  6454. }
  6455. ],
  6456. "responses": {
  6457. "204": {
  6458. "$ref": "#/responses/empty"
  6459. },
  6460. "404": {
  6461. "$ref": "#/responses/notFound"
  6462. },
  6463. "422": {
  6464. "$ref": "#/responses/validationError"
  6465. },
  6466. "423": {
  6467. "$ref": "#/responses/repoArchivedError"
  6468. }
  6469. }
  6470. }
  6471. },
  6472. "/repos/{owner}/{repo}/branch_protections/{name}": {
  6473. "get": {
  6474. "produces": [
  6475. "application/json"
  6476. ],
  6477. "tags": [
  6478. "repository"
  6479. ],
  6480. "summary": "Get a specific branch protection for the repository",
  6481. "operationId": "repoGetBranchProtection",
  6482. "parameters": [
  6483. {
  6484. "type": "string",
  6485. "description": "owner of the repo",
  6486. "name": "owner",
  6487. "in": "path",
  6488. "required": true
  6489. },
  6490. {
  6491. "type": "string",
  6492. "description": "name of the repo",
  6493. "name": "repo",
  6494. "in": "path",
  6495. "required": true
  6496. },
  6497. {
  6498. "type": "string",
  6499. "description": "name of protected branch",
  6500. "name": "name",
  6501. "in": "path",
  6502. "required": true
  6503. }
  6504. ],
  6505. "responses": {
  6506. "200": {
  6507. "$ref": "#/responses/BranchProtection"
  6508. },
  6509. "404": {
  6510. "$ref": "#/responses/notFound"
  6511. }
  6512. }
  6513. },
  6514. "delete": {
  6515. "produces": [
  6516. "application/json"
  6517. ],
  6518. "tags": [
  6519. "repository"
  6520. ],
  6521. "summary": "Delete a specific branch protection for the repository",
  6522. "operationId": "repoDeleteBranchProtection",
  6523. "parameters": [
  6524. {
  6525. "type": "string",
  6526. "description": "owner of the repo",
  6527. "name": "owner",
  6528. "in": "path",
  6529. "required": true
  6530. },
  6531. {
  6532. "type": "string",
  6533. "description": "name of the repo",
  6534. "name": "repo",
  6535. "in": "path",
  6536. "required": true
  6537. },
  6538. {
  6539. "type": "string",
  6540. "description": "name of protected branch",
  6541. "name": "name",
  6542. "in": "path",
  6543. "required": true
  6544. }
  6545. ],
  6546. "responses": {
  6547. "204": {
  6548. "$ref": "#/responses/empty"
  6549. },
  6550. "404": {
  6551. "$ref": "#/responses/notFound"
  6552. }
  6553. }
  6554. },
  6555. "patch": {
  6556. "consumes": [
  6557. "application/json"
  6558. ],
  6559. "produces": [
  6560. "application/json"
  6561. ],
  6562. "tags": [
  6563. "repository"
  6564. ],
  6565. "summary": "Edit a branch protections for a repository. Only fields that are set will be changed",
  6566. "operationId": "repoEditBranchProtection",
  6567. "parameters": [
  6568. {
  6569. "type": "string",
  6570. "description": "owner of the repo",
  6571. "name": "owner",
  6572. "in": "path",
  6573. "required": true
  6574. },
  6575. {
  6576. "type": "string",
  6577. "description": "name of the repo",
  6578. "name": "repo",
  6579. "in": "path",
  6580. "required": true
  6581. },
  6582. {
  6583. "type": "string",
  6584. "description": "name of protected branch",
  6585. "name": "name",
  6586. "in": "path",
  6587. "required": true
  6588. },
  6589. {
  6590. "name": "body",
  6591. "in": "body",
  6592. "schema": {
  6593. "$ref": "#/definitions/EditBranchProtectionOption"
  6594. }
  6595. }
  6596. ],
  6597. "responses": {
  6598. "200": {
  6599. "$ref": "#/responses/BranchProtection"
  6600. },
  6601. "404": {
  6602. "$ref": "#/responses/notFound"
  6603. },
  6604. "422": {
  6605. "$ref": "#/responses/validationError"
  6606. },
  6607. "423": {
  6608. "$ref": "#/responses/repoArchivedError"
  6609. }
  6610. }
  6611. }
  6612. },
  6613. "/repos/{owner}/{repo}/branches": {
  6614. "get": {
  6615. "produces": [
  6616. "application/json"
  6617. ],
  6618. "tags": [
  6619. "repository"
  6620. ],
  6621. "summary": "List a repository's branches",
  6622. "operationId": "repoListBranches",
  6623. "parameters": [
  6624. {
  6625. "type": "string",
  6626. "description": "owner of the repo",
  6627. "name": "owner",
  6628. "in": "path",
  6629. "required": true
  6630. },
  6631. {
  6632. "type": "string",
  6633. "description": "name of the repo",
  6634. "name": "repo",
  6635. "in": "path",
  6636. "required": true
  6637. },
  6638. {
  6639. "type": "integer",
  6640. "description": "page number of results to return (1-based)",
  6641. "name": "page",
  6642. "in": "query"
  6643. },
  6644. {
  6645. "type": "integer",
  6646. "description": "page size of results",
  6647. "name": "limit",
  6648. "in": "query"
  6649. }
  6650. ],
  6651. "responses": {
  6652. "200": {
  6653. "$ref": "#/responses/BranchList"
  6654. }
  6655. }
  6656. },
  6657. "post": {
  6658. "consumes": [
  6659. "application/json"
  6660. ],
  6661. "produces": [
  6662. "application/json"
  6663. ],
  6664. "tags": [
  6665. "repository"
  6666. ],
  6667. "summary": "Create a branch",
  6668. "operationId": "repoCreateBranch",
  6669. "parameters": [
  6670. {
  6671. "type": "string",
  6672. "description": "owner of the repo",
  6673. "name": "owner",
  6674. "in": "path",
  6675. "required": true
  6676. },
  6677. {
  6678. "type": "string",
  6679. "description": "name of the repo",
  6680. "name": "repo",
  6681. "in": "path",
  6682. "required": true
  6683. },
  6684. {
  6685. "name": "body",
  6686. "in": "body",
  6687. "schema": {
  6688. "$ref": "#/definitions/CreateBranchRepoOption"
  6689. }
  6690. }
  6691. ],
  6692. "responses": {
  6693. "201": {
  6694. "$ref": "#/responses/Branch"
  6695. },
  6696. "403": {
  6697. "description": "The branch is archived or a mirror."
  6698. },
  6699. "404": {
  6700. "description": "The old branch does not exist."
  6701. },
  6702. "409": {
  6703. "description": "The branch with the same name already exists."
  6704. },
  6705. "423": {
  6706. "$ref": "#/responses/repoArchivedError"
  6707. }
  6708. }
  6709. }
  6710. },
  6711. "/repos/{owner}/{repo}/branches/{branch}": {
  6712. "get": {
  6713. "produces": [
  6714. "application/json"
  6715. ],
  6716. "tags": [
  6717. "repository"
  6718. ],
  6719. "summary": "Retrieve a specific branch from a repository, including its effective branch protection",
  6720. "operationId": "repoGetBranch",
  6721. "parameters": [
  6722. {
  6723. "type": "string",
  6724. "description": "owner of the repo",
  6725. "name": "owner",
  6726. "in": "path",
  6727. "required": true
  6728. },
  6729. {
  6730. "type": "string",
  6731. "description": "name of the repo",
  6732. "name": "repo",
  6733. "in": "path",
  6734. "required": true
  6735. },
  6736. {
  6737. "type": "string",
  6738. "description": "branch to get",
  6739. "name": "branch",
  6740. "in": "path",
  6741. "required": true
  6742. }
  6743. ],
  6744. "responses": {
  6745. "200": {
  6746. "$ref": "#/responses/Branch"
  6747. },
  6748. "404": {
  6749. "$ref": "#/responses/notFound"
  6750. }
  6751. }
  6752. },
  6753. "delete": {
  6754. "produces": [
  6755. "application/json"
  6756. ],
  6757. "tags": [
  6758. "repository"
  6759. ],
  6760. "summary": "Delete a specific branch from a repository",
  6761. "operationId": "repoDeleteBranch",
  6762. "parameters": [
  6763. {
  6764. "type": "string",
  6765. "description": "owner of the repo",
  6766. "name": "owner",
  6767. "in": "path",
  6768. "required": true
  6769. },
  6770. {
  6771. "type": "string",
  6772. "description": "name of the repo",
  6773. "name": "repo",
  6774. "in": "path",
  6775. "required": true
  6776. },
  6777. {
  6778. "type": "string",
  6779. "description": "branch to delete",
  6780. "name": "branch",
  6781. "in": "path",
  6782. "required": true
  6783. }
  6784. ],
  6785. "responses": {
  6786. "204": {
  6787. "$ref": "#/responses/empty"
  6788. },
  6789. "403": {
  6790. "$ref": "#/responses/error"
  6791. },
  6792. "404": {
  6793. "$ref": "#/responses/notFound"
  6794. },
  6795. "423": {
  6796. "$ref": "#/responses/repoArchivedError"
  6797. }
  6798. }
  6799. },
  6800. "patch": {
  6801. "consumes": [
  6802. "application/json"
  6803. ],
  6804. "produces": [
  6805. "application/json"
  6806. ],
  6807. "tags": [
  6808. "repository"
  6809. ],
  6810. "summary": "Rename a branch",
  6811. "operationId": "repoRenameBranch",
  6812. "parameters": [
  6813. {
  6814. "type": "string",
  6815. "description": "owner of the repo",
  6816. "name": "owner",
  6817. "in": "path",
  6818. "required": true
  6819. },
  6820. {
  6821. "type": "string",
  6822. "description": "name of the repo",
  6823. "name": "repo",
  6824. "in": "path",
  6825. "required": true
  6826. },
  6827. {
  6828. "type": "string",
  6829. "description": "name of the branch",
  6830. "name": "branch",
  6831. "in": "path",
  6832. "required": true
  6833. },
  6834. {
  6835. "name": "body",
  6836. "in": "body",
  6837. "schema": {
  6838. "$ref": "#/definitions/RenameBranchRepoOption"
  6839. }
  6840. }
  6841. ],
  6842. "responses": {
  6843. "204": {
  6844. "$ref": "#/responses/empty"
  6845. },
  6846. "403": {
  6847. "$ref": "#/responses/forbidden"
  6848. },
  6849. "404": {
  6850. "$ref": "#/responses/notFound"
  6851. },
  6852. "422": {
  6853. "$ref": "#/responses/validationError"
  6854. }
  6855. }
  6856. }
  6857. },
  6858. "/repos/{owner}/{repo}/collaborators": {
  6859. "get": {
  6860. "produces": [
  6861. "application/json"
  6862. ],
  6863. "tags": [
  6864. "repository"
  6865. ],
  6866. "summary": "List a repository's collaborators",
  6867. "operationId": "repoListCollaborators",
  6868. "parameters": [
  6869. {
  6870. "type": "string",
  6871. "description": "owner of the repo",
  6872. "name": "owner",
  6873. "in": "path",
  6874. "required": true
  6875. },
  6876. {
  6877. "type": "string",
  6878. "description": "name of the repo",
  6879. "name": "repo",
  6880. "in": "path",
  6881. "required": true
  6882. },
  6883. {
  6884. "type": "integer",
  6885. "description": "page number of results to return (1-based)",
  6886. "name": "page",
  6887. "in": "query"
  6888. },
  6889. {
  6890. "type": "integer",
  6891. "description": "page size of results",
  6892. "name": "limit",
  6893. "in": "query"
  6894. }
  6895. ],
  6896. "responses": {
  6897. "200": {
  6898. "$ref": "#/responses/UserList"
  6899. },
  6900. "404": {
  6901. "$ref": "#/responses/notFound"
  6902. }
  6903. }
  6904. }
  6905. },
  6906. "/repos/{owner}/{repo}/collaborators/{collaborator}": {
  6907. "get": {
  6908. "produces": [
  6909. "application/json"
  6910. ],
  6911. "tags": [
  6912. "repository"
  6913. ],
  6914. "summary": "Check if a user is a collaborator of a repository",
  6915. "operationId": "repoCheckCollaborator",
  6916. "parameters": [
  6917. {
  6918. "type": "string",
  6919. "description": "owner of the repo",
  6920. "name": "owner",
  6921. "in": "path",
  6922. "required": true
  6923. },
  6924. {
  6925. "type": "string",
  6926. "description": "name of the repo",
  6927. "name": "repo",
  6928. "in": "path",
  6929. "required": true
  6930. },
  6931. {
  6932. "type": "string",
  6933. "description": "username of the user to check for being a collaborator",
  6934. "name": "collaborator",
  6935. "in": "path",
  6936. "required": true
  6937. }
  6938. ],
  6939. "responses": {
  6940. "204": {
  6941. "$ref": "#/responses/empty"
  6942. },
  6943. "404": {
  6944. "$ref": "#/responses/notFound"
  6945. },
  6946. "422": {
  6947. "$ref": "#/responses/validationError"
  6948. }
  6949. }
  6950. },
  6951. "put": {
  6952. "produces": [
  6953. "application/json"
  6954. ],
  6955. "tags": [
  6956. "repository"
  6957. ],
  6958. "summary": "Add or Update a collaborator to a repository",
  6959. "operationId": "repoAddCollaborator",
  6960. "parameters": [
  6961. {
  6962. "type": "string",
  6963. "description": "owner of the repo",
  6964. "name": "owner",
  6965. "in": "path",
  6966. "required": true
  6967. },
  6968. {
  6969. "type": "string",
  6970. "description": "name of the repo",
  6971. "name": "repo",
  6972. "in": "path",
  6973. "required": true
  6974. },
  6975. {
  6976. "type": "string",
  6977. "description": "username of the user to add or update as a collaborator",
  6978. "name": "collaborator",
  6979. "in": "path",
  6980. "required": true
  6981. },
  6982. {
  6983. "name": "body",
  6984. "in": "body",
  6985. "schema": {
  6986. "$ref": "#/definitions/AddCollaboratorOption"
  6987. }
  6988. }
  6989. ],
  6990. "responses": {
  6991. "204": {
  6992. "$ref": "#/responses/empty"
  6993. },
  6994. "403": {
  6995. "$ref": "#/responses/forbidden"
  6996. },
  6997. "404": {
  6998. "$ref": "#/responses/notFound"
  6999. },
  7000. "422": {
  7001. "$ref": "#/responses/validationError"
  7002. }
  7003. }
  7004. },
  7005. "delete": {
  7006. "produces": [
  7007. "application/json"
  7008. ],
  7009. "tags": [
  7010. "repository"
  7011. ],
  7012. "summary": "Delete a collaborator from a repository",
  7013. "operationId": "repoDeleteCollaborator",
  7014. "parameters": [
  7015. {
  7016. "type": "string",
  7017. "description": "owner of the repo",
  7018. "name": "owner",
  7019. "in": "path",
  7020. "required": true
  7021. },
  7022. {
  7023. "type": "string",
  7024. "description": "name of the repo",
  7025. "name": "repo",
  7026. "in": "path",
  7027. "required": true
  7028. },
  7029. {
  7030. "type": "string",
  7031. "description": "username of the collaborator to delete",
  7032. "name": "collaborator",
  7033. "in": "path",
  7034. "required": true
  7035. }
  7036. ],
  7037. "responses": {
  7038. "204": {
  7039. "$ref": "#/responses/empty"
  7040. },
  7041. "404": {
  7042. "$ref": "#/responses/notFound"
  7043. },
  7044. "422": {
  7045. "$ref": "#/responses/validationError"
  7046. }
  7047. }
  7048. }
  7049. },
  7050. "/repos/{owner}/{repo}/collaborators/{collaborator}/permission": {
  7051. "get": {
  7052. "produces": [
  7053. "application/json"
  7054. ],
  7055. "tags": [
  7056. "repository"
  7057. ],
  7058. "summary": "Get repository permissions for a user",
  7059. "operationId": "repoGetRepoPermissions",
  7060. "parameters": [
  7061. {
  7062. "type": "string",
  7063. "description": "owner of the repo",
  7064. "name": "owner",
  7065. "in": "path",
  7066. "required": true
  7067. },
  7068. {
  7069. "type": "string",
  7070. "description": "name of the repo",
  7071. "name": "repo",
  7072. "in": "path",
  7073. "required": true
  7074. },
  7075. {
  7076. "type": "string",
  7077. "description": "username of the collaborator whose permissions are to be obtained",
  7078. "name": "collaborator",
  7079. "in": "path",
  7080. "required": true
  7081. }
  7082. ],
  7083. "responses": {
  7084. "200": {
  7085. "$ref": "#/responses/RepoCollaboratorPermission"
  7086. },
  7087. "403": {
  7088. "$ref": "#/responses/forbidden"
  7089. },
  7090. "404": {
  7091. "$ref": "#/responses/notFound"
  7092. }
  7093. }
  7094. }
  7095. },
  7096. "/repos/{owner}/{repo}/commits": {
  7097. "get": {
  7098. "produces": [
  7099. "application/json"
  7100. ],
  7101. "tags": [
  7102. "repository"
  7103. ],
  7104. "summary": "Get a list of all commits from a repository",
  7105. "operationId": "repoGetAllCommits",
  7106. "parameters": [
  7107. {
  7108. "type": "string",
  7109. "description": "owner of the repo",
  7110. "name": "owner",
  7111. "in": "path",
  7112. "required": true
  7113. },
  7114. {
  7115. "type": "string",
  7116. "description": "name of the repo",
  7117. "name": "repo",
  7118. "in": "path",
  7119. "required": true
  7120. },
  7121. {
  7122. "type": "string",
  7123. "description": "SHA or branch to start listing commits from (usually 'master')",
  7124. "name": "sha",
  7125. "in": "query"
  7126. },
  7127. {
  7128. "type": "string",
  7129. "description": "filepath of a file/dir",
  7130. "name": "path",
  7131. "in": "query"
  7132. },
  7133. {
  7134. "type": "string",
  7135. "format": "date-time",
  7136. "description": "Only commits after this date will be returned (ISO 8601 format)",
  7137. "name": "since",
  7138. "in": "query"
  7139. },
  7140. {
  7141. "type": "string",
  7142. "format": "date-time",
  7143. "description": "Only commits before this date will be returned (ISO 8601 format)",
  7144. "name": "until",
  7145. "in": "query"
  7146. },
  7147. {
  7148. "type": "boolean",
  7149. "description": "include diff stats for every commit (disable for speedup, default 'true')",
  7150. "name": "stat",
  7151. "in": "query"
  7152. },
  7153. {
  7154. "type": "boolean",
  7155. "description": "include verification for every commit (disable for speedup, default 'true')",
  7156. "name": "verification",
  7157. "in": "query"
  7158. },
  7159. {
  7160. "type": "boolean",
  7161. "description": "include a list of affected files for every commit (disable for speedup, default 'true')",
  7162. "name": "files",
  7163. "in": "query"
  7164. },
  7165. {
  7166. "type": "integer",
  7167. "description": "page number of results to return (1-based)",
  7168. "name": "page",
  7169. "in": "query"
  7170. },
  7171. {
  7172. "type": "integer",
  7173. "description": "page size of results (ignored if used with 'path')",
  7174. "name": "limit",
  7175. "in": "query"
  7176. },
  7177. {
  7178. "type": "string",
  7179. "description": "commits that match the given specifier will not be listed.",
  7180. "name": "not",
  7181. "in": "query"
  7182. }
  7183. ],
  7184. "responses": {
  7185. "200": {
  7186. "$ref": "#/responses/CommitList"
  7187. },
  7188. "404": {
  7189. "$ref": "#/responses/notFound"
  7190. },
  7191. "409": {
  7192. "$ref": "#/responses/EmptyRepository"
  7193. }
  7194. }
  7195. }
  7196. },
  7197. "/repos/{owner}/{repo}/commits/{ref}/status": {
  7198. "get": {
  7199. "produces": [
  7200. "application/json"
  7201. ],
  7202. "tags": [
  7203. "repository"
  7204. ],
  7205. "summary": "Get a commit's combined status, by branch/tag/commit reference",
  7206. "operationId": "repoGetCombinedStatusByRef",
  7207. "parameters": [
  7208. {
  7209. "type": "string",
  7210. "description": "owner of the repo",
  7211. "name": "owner",
  7212. "in": "path",
  7213. "required": true
  7214. },
  7215. {
  7216. "type": "string",
  7217. "description": "name of the repo",
  7218. "name": "repo",
  7219. "in": "path",
  7220. "required": true
  7221. },
  7222. {
  7223. "type": "string",
  7224. "description": "name of branch/tag/commit",
  7225. "name": "ref",
  7226. "in": "path",
  7227. "required": true
  7228. },
  7229. {
  7230. "type": "integer",
  7231. "description": "page number of results to return (1-based)",
  7232. "name": "page",
  7233. "in": "query"
  7234. },
  7235. {
  7236. "type": "integer",
  7237. "description": "page size of results",
  7238. "name": "limit",
  7239. "in": "query"
  7240. }
  7241. ],
  7242. "responses": {
  7243. "200": {
  7244. "$ref": "#/responses/CombinedStatus"
  7245. },
  7246. "400": {
  7247. "$ref": "#/responses/error"
  7248. },
  7249. "404": {
  7250. "$ref": "#/responses/notFound"
  7251. }
  7252. }
  7253. }
  7254. },
  7255. "/repos/{owner}/{repo}/commits/{ref}/statuses": {
  7256. "get": {
  7257. "produces": [
  7258. "application/json"
  7259. ],
  7260. "tags": [
  7261. "repository"
  7262. ],
  7263. "summary": "Get a commit's statuses, by branch/tag/commit reference",
  7264. "operationId": "repoListStatusesByRef",
  7265. "parameters": [
  7266. {
  7267. "type": "string",
  7268. "description": "owner of the repo",
  7269. "name": "owner",
  7270. "in": "path",
  7271. "required": true
  7272. },
  7273. {
  7274. "type": "string",
  7275. "description": "name of the repo",
  7276. "name": "repo",
  7277. "in": "path",
  7278. "required": true
  7279. },
  7280. {
  7281. "type": "string",
  7282. "description": "name of branch/tag/commit",
  7283. "name": "ref",
  7284. "in": "path",
  7285. "required": true
  7286. },
  7287. {
  7288. "enum": [
  7289. "oldest",
  7290. "recentupdate",
  7291. "leastupdate",
  7292. "leastindex",
  7293. "highestindex"
  7294. ],
  7295. "type": "string",
  7296. "description": "type of sort",
  7297. "name": "sort",
  7298. "in": "query"
  7299. },
  7300. {
  7301. "enum": [
  7302. "pending",
  7303. "success",
  7304. "error",
  7305. "failure",
  7306. "warning"
  7307. ],
  7308. "type": "string",
  7309. "description": "type of state",
  7310. "name": "state",
  7311. "in": "query"
  7312. },
  7313. {
  7314. "type": "integer",
  7315. "description": "page number of results to return (1-based)",
  7316. "name": "page",
  7317. "in": "query"
  7318. },
  7319. {
  7320. "type": "integer",
  7321. "description": "page size of results",
  7322. "name": "limit",
  7323. "in": "query"
  7324. }
  7325. ],
  7326. "responses": {
  7327. "200": {
  7328. "$ref": "#/responses/CommitStatusList"
  7329. },
  7330. "400": {
  7331. "$ref": "#/responses/error"
  7332. },
  7333. "404": {
  7334. "$ref": "#/responses/notFound"
  7335. }
  7336. }
  7337. }
  7338. },
  7339. "/repos/{owner}/{repo}/commits/{sha}/pull": {
  7340. "get": {
  7341. "produces": [
  7342. "application/json"
  7343. ],
  7344. "tags": [
  7345. "repository"
  7346. ],
  7347. "summary": "Get the merged pull request of the commit",
  7348. "operationId": "repoGetCommitPullRequest",
  7349. "parameters": [
  7350. {
  7351. "type": "string",
  7352. "description": "owner of the repo",
  7353. "name": "owner",
  7354. "in": "path",
  7355. "required": true
  7356. },
  7357. {
  7358. "type": "string",
  7359. "description": "name of the repo",
  7360. "name": "repo",
  7361. "in": "path",
  7362. "required": true
  7363. },
  7364. {
  7365. "type": "string",
  7366. "description": "SHA of the commit to get",
  7367. "name": "sha",
  7368. "in": "path",
  7369. "required": true
  7370. }
  7371. ],
  7372. "responses": {
  7373. "200": {
  7374. "$ref": "#/responses/PullRequest"
  7375. },
  7376. "404": {
  7377. "$ref": "#/responses/notFound"
  7378. }
  7379. }
  7380. }
  7381. },
  7382. "/repos/{owner}/{repo}/compare/{basehead}": {
  7383. "get": {
  7384. "produces": [
  7385. "application/json"
  7386. ],
  7387. "tags": [
  7388. "repository"
  7389. ],
  7390. "summary": "Get commit comparison information",
  7391. "operationId": "repoCompareDiff",
  7392. "parameters": [
  7393. {
  7394. "type": "string",
  7395. "description": "owner of the repo",
  7396. "name": "owner",
  7397. "in": "path",
  7398. "required": true
  7399. },
  7400. {
  7401. "type": "string",
  7402. "description": "name of the repo",
  7403. "name": "repo",
  7404. "in": "path",
  7405. "required": true
  7406. },
  7407. {
  7408. "type": "string",
  7409. "description": "compare two branches or commits",
  7410. "name": "basehead",
  7411. "in": "path",
  7412. "required": true
  7413. }
  7414. ],
  7415. "responses": {
  7416. "200": {
  7417. "$ref": "#/responses/Compare"
  7418. },
  7419. "404": {
  7420. "$ref": "#/responses/notFound"
  7421. }
  7422. }
  7423. }
  7424. },
  7425. "/repos/{owner}/{repo}/contents": {
  7426. "get": {
  7427. "description": "This API follows GitHub's design, and it is not easy to use. Recommend users to use our \"contents-ext\" API instead.",
  7428. "produces": [
  7429. "application/json"
  7430. ],
  7431. "tags": [
  7432. "repository"
  7433. ],
  7434. "summary": "Gets the metadata of all the entries of the root dir.",
  7435. "operationId": "repoGetContentsList",
  7436. "parameters": [
  7437. {
  7438. "type": "string",
  7439. "description": "owner of the repo",
  7440. "name": "owner",
  7441. "in": "path",
  7442. "required": true
  7443. },
  7444. {
  7445. "type": "string",
  7446. "description": "name of the repo",
  7447. "name": "repo",
  7448. "in": "path",
  7449. "required": true
  7450. },
  7451. {
  7452. "type": "string",
  7453. "description": "The name of the commit/branch/tag. Default to the repository’s default branch.",
  7454. "name": "ref",
  7455. "in": "query"
  7456. }
  7457. ],
  7458. "responses": {
  7459. "200": {
  7460. "$ref": "#/responses/ContentsListResponse"
  7461. },
  7462. "404": {
  7463. "$ref": "#/responses/notFound"
  7464. }
  7465. }
  7466. },
  7467. "post": {
  7468. "consumes": [
  7469. "application/json"
  7470. ],
  7471. "produces": [
  7472. "application/json"
  7473. ],
  7474. "tags": [
  7475. "repository"
  7476. ],
  7477. "summary": "Modify multiple files in a repository",
  7478. "operationId": "repoChangeFiles",
  7479. "parameters": [
  7480. {
  7481. "type": "string",
  7482. "description": "owner of the repo",
  7483. "name": "owner",
  7484. "in": "path",
  7485. "required": true
  7486. },
  7487. {
  7488. "type": "string",
  7489. "description": "name of the repo",
  7490. "name": "repo",
  7491. "in": "path",
  7492. "required": true
  7493. },
  7494. {
  7495. "name": "body",
  7496. "in": "body",
  7497. "required": true,
  7498. "schema": {
  7499. "$ref": "#/definitions/ChangeFilesOptions"
  7500. }
  7501. }
  7502. ],
  7503. "responses": {
  7504. "201": {
  7505. "$ref": "#/responses/FilesResponse"
  7506. },
  7507. "403": {
  7508. "$ref": "#/responses/error"
  7509. },
  7510. "404": {
  7511. "$ref": "#/responses/notFound"
  7512. },
  7513. "422": {
  7514. "$ref": "#/responses/error"
  7515. },
  7516. "423": {
  7517. "$ref": "#/responses/repoArchivedError"
  7518. }
  7519. }
  7520. }
  7521. },
  7522. "/repos/{owner}/{repo}/contents-ext/{filepath}": {
  7523. "get": {
  7524. "description": "It guarantees that only one of the response fields is set if the request succeeds. Users can pass \"includes=file_content\" or \"includes=lfs_metadata\" to retrieve more fields. \"includes=file_content\" only works for single file, if you need to retrieve file contents in batch, use \"file-contents\" API after listing the directory.",
  7525. "produces": [
  7526. "application/json"
  7527. ],
  7528. "tags": [
  7529. "repository"
  7530. ],
  7531. "summary": "The extended \"contents\" API, to get file metadata and/or content, or list a directory.",
  7532. "operationId": "repoGetContentsExt",
  7533. "parameters": [
  7534. {
  7535. "type": "string",
  7536. "description": "owner of the repo",
  7537. "name": "owner",
  7538. "in": "path",
  7539. "required": true
  7540. },
  7541. {
  7542. "type": "string",
  7543. "description": "name of the repo",
  7544. "name": "repo",
  7545. "in": "path",
  7546. "required": true
  7547. },
  7548. {
  7549. "type": "string",
  7550. "description": "path of the dir, file, symlink or submodule in the repo. Swagger requires path parameter to be \"required\", you can leave it empty or pass a single dot (\".\") to get the root directory.",
  7551. "name": "filepath",
  7552. "in": "path",
  7553. "required": true
  7554. },
  7555. {
  7556. "type": "string",
  7557. "description": "the name of the commit/branch/tag, default to the repository’s default branch.",
  7558. "name": "ref",
  7559. "in": "query"
  7560. },
  7561. {
  7562. "type": "string",
  7563. "description": "By default this API's response only contains file's metadata. Use comma-separated \"includes\" options to retrieve more fields. Option \"file_content\" will try to retrieve the file content, \"lfs_metadata\" will try to retrieve LFS metadata, \"commit_metadata\" will try to retrieve commit metadata, and \"commit_message\" will try to retrieve commit message.",
  7564. "name": "includes",
  7565. "in": "query"
  7566. }
  7567. ],
  7568. "responses": {
  7569. "200": {
  7570. "$ref": "#/responses/ContentsExtResponse"
  7571. },
  7572. "404": {
  7573. "$ref": "#/responses/notFound"
  7574. }
  7575. }
  7576. }
  7577. },
  7578. "/repos/{owner}/{repo}/contents/{filepath}": {
  7579. "get": {
  7580. "description": "This API follows GitHub's design, and it is not easy to use. Recommend users to use the \"contents-ext\" API instead.",
  7581. "produces": [
  7582. "application/json"
  7583. ],
  7584. "tags": [
  7585. "repository"
  7586. ],
  7587. "summary": "Gets the metadata and contents (if a file) of an entry in a repository, or a list of entries if a dir.",
  7588. "operationId": "repoGetContents",
  7589. "parameters": [
  7590. {
  7591. "type": "string",
  7592. "description": "owner of the repo",
  7593. "name": "owner",
  7594. "in": "path",
  7595. "required": true
  7596. },
  7597. {
  7598. "type": "string",
  7599. "description": "name of the repo",
  7600. "name": "repo",
  7601. "in": "path",
  7602. "required": true
  7603. },
  7604. {
  7605. "type": "string",
  7606. "description": "path of the dir, file, symlink or submodule in the repo",
  7607. "name": "filepath",
  7608. "in": "path",
  7609. "required": true
  7610. },
  7611. {
  7612. "type": "string",
  7613. "description": "The name of the commit/branch/tag. Default to the repository’s default branch.",
  7614. "name": "ref",
  7615. "in": "query"
  7616. }
  7617. ],
  7618. "responses": {
  7619. "200": {
  7620. "$ref": "#/responses/ContentsResponse"
  7621. },
  7622. "404": {
  7623. "$ref": "#/responses/notFound"
  7624. }
  7625. }
  7626. },
  7627. "put": {
  7628. "consumes": [
  7629. "application/json"
  7630. ],
  7631. "produces": [
  7632. "application/json"
  7633. ],
  7634. "tags": [
  7635. "repository"
  7636. ],
  7637. "summary": "Update a file in a repository",
  7638. "operationId": "repoUpdateFile",
  7639. "parameters": [
  7640. {
  7641. "type": "string",
  7642. "description": "owner of the repo",
  7643. "name": "owner",
  7644. "in": "path",
  7645. "required": true
  7646. },
  7647. {
  7648. "type": "string",
  7649. "description": "name of the repo",
  7650. "name": "repo",
  7651. "in": "path",
  7652. "required": true
  7653. },
  7654. {
  7655. "type": "string",
  7656. "description": "path of the file to update",
  7657. "name": "filepath",
  7658. "in": "path",
  7659. "required": true
  7660. },
  7661. {
  7662. "name": "body",
  7663. "in": "body",
  7664. "required": true,
  7665. "schema": {
  7666. "$ref": "#/definitions/UpdateFileOptions"
  7667. }
  7668. }
  7669. ],
  7670. "responses": {
  7671. "200": {
  7672. "$ref": "#/responses/FileResponse"
  7673. },
  7674. "403": {
  7675. "$ref": "#/responses/error"
  7676. },
  7677. "404": {
  7678. "$ref": "#/responses/notFound"
  7679. },
  7680. "422": {
  7681. "$ref": "#/responses/error"
  7682. },
  7683. "423": {
  7684. "$ref": "#/responses/repoArchivedError"
  7685. }
  7686. }
  7687. },
  7688. "post": {
  7689. "consumes": [
  7690. "application/json"
  7691. ],
  7692. "produces": [
  7693. "application/json"
  7694. ],
  7695. "tags": [
  7696. "repository"
  7697. ],
  7698. "summary": "Create a file in a repository",
  7699. "operationId": "repoCreateFile",
  7700. "parameters": [
  7701. {
  7702. "type": "string",
  7703. "description": "owner of the repo",
  7704. "name": "owner",
  7705. "in": "path",
  7706. "required": true
  7707. },
  7708. {
  7709. "type": "string",
  7710. "description": "name of the repo",
  7711. "name": "repo",
  7712. "in": "path",
  7713. "required": true
  7714. },
  7715. {
  7716. "type": "string",
  7717. "description": "path of the file to create",
  7718. "name": "filepath",
  7719. "in": "path",
  7720. "required": true
  7721. },
  7722. {
  7723. "name": "body",
  7724. "in": "body",
  7725. "required": true,
  7726. "schema": {
  7727. "$ref": "#/definitions/CreateFileOptions"
  7728. }
  7729. }
  7730. ],
  7731. "responses": {
  7732. "201": {
  7733. "$ref": "#/responses/FileResponse"
  7734. },
  7735. "403": {
  7736. "$ref": "#/responses/error"
  7737. },
  7738. "404": {
  7739. "$ref": "#/responses/notFound"
  7740. },
  7741. "422": {
  7742. "$ref": "#/responses/error"
  7743. },
  7744. "423": {
  7745. "$ref": "#/responses/repoArchivedError"
  7746. }
  7747. }
  7748. },
  7749. "delete": {
  7750. "consumes": [
  7751. "application/json"
  7752. ],
  7753. "produces": [
  7754. "application/json"
  7755. ],
  7756. "tags": [
  7757. "repository"
  7758. ],
  7759. "summary": "Delete a file in a repository",
  7760. "operationId": "repoDeleteFile",
  7761. "parameters": [
  7762. {
  7763. "type": "string",
  7764. "description": "owner of the repo",
  7765. "name": "owner",
  7766. "in": "path",
  7767. "required": true
  7768. },
  7769. {
  7770. "type": "string",
  7771. "description": "name of the repo",
  7772. "name": "repo",
  7773. "in": "path",
  7774. "required": true
  7775. },
  7776. {
  7777. "type": "string",
  7778. "description": "path of the file to delete",
  7779. "name": "filepath",
  7780. "in": "path",
  7781. "required": true
  7782. },
  7783. {
  7784. "name": "body",
  7785. "in": "body",
  7786. "required": true,
  7787. "schema": {
  7788. "$ref": "#/definitions/DeleteFileOptions"
  7789. }
  7790. }
  7791. ],
  7792. "responses": {
  7793. "200": {
  7794. "$ref": "#/responses/FileDeleteResponse"
  7795. },
  7796. "400": {
  7797. "$ref": "#/responses/error"
  7798. },
  7799. "403": {
  7800. "$ref": "#/responses/error"
  7801. },
  7802. "404": {
  7803. "$ref": "#/responses/error"
  7804. },
  7805. "422": {
  7806. "$ref": "#/responses/error"
  7807. },
  7808. "423": {
  7809. "$ref": "#/responses/repoArchivedError"
  7810. }
  7811. }
  7812. }
  7813. },
  7814. "/repos/{owner}/{repo}/diffpatch": {
  7815. "post": {
  7816. "consumes": [
  7817. "application/json"
  7818. ],
  7819. "produces": [
  7820. "application/json"
  7821. ],
  7822. "tags": [
  7823. "repository"
  7824. ],
  7825. "summary": "Apply diff patch to repository",
  7826. "operationId": "repoApplyDiffPatch",
  7827. "parameters": [
  7828. {
  7829. "type": "string",
  7830. "description": "owner of the repo",
  7831. "name": "owner",
  7832. "in": "path",
  7833. "required": true
  7834. },
  7835. {
  7836. "type": "string",
  7837. "description": "name of the repo",
  7838. "name": "repo",
  7839. "in": "path",
  7840. "required": true
  7841. },
  7842. {
  7843. "name": "body",
  7844. "in": "body",
  7845. "required": true,
  7846. "schema": {
  7847. "$ref": "#/definitions/UpdateFileOptions"
  7848. }
  7849. }
  7850. ],
  7851. "responses": {
  7852. "200": {
  7853. "$ref": "#/responses/FileResponse"
  7854. },
  7855. "404": {
  7856. "$ref": "#/responses/notFound"
  7857. },
  7858. "423": {
  7859. "$ref": "#/responses/repoArchivedError"
  7860. }
  7861. }
  7862. }
  7863. },
  7864. "/repos/{owner}/{repo}/editorconfig/{filepath}": {
  7865. "get": {
  7866. "produces": [
  7867. "application/json"
  7868. ],
  7869. "tags": [
  7870. "repository"
  7871. ],
  7872. "summary": "Get the EditorConfig definitions of a file in a repository",
  7873. "operationId": "repoGetEditorConfig",
  7874. "parameters": [
  7875. {
  7876. "type": "string",
  7877. "description": "owner of the repo",
  7878. "name": "owner",
  7879. "in": "path",
  7880. "required": true
  7881. },
  7882. {
  7883. "type": "string",
  7884. "description": "name of the repo",
  7885. "name": "repo",
  7886. "in": "path",
  7887. "required": true
  7888. },
  7889. {
  7890. "type": "string",
  7891. "description": "filepath of file to get",
  7892. "name": "filepath",
  7893. "in": "path",
  7894. "required": true
  7895. },
  7896. {
  7897. "type": "string",
  7898. "description": "The name of the commit/branch/tag. Default to the repository’s default branch.",
  7899. "name": "ref",
  7900. "in": "query"
  7901. }
  7902. ],
  7903. "responses": {
  7904. "200": {
  7905. "description": "success"
  7906. },
  7907. "404": {
  7908. "$ref": "#/responses/notFound"
  7909. }
  7910. }
  7911. }
  7912. },
  7913. "/repos/{owner}/{repo}/file-contents": {
  7914. "get": {
  7915. "description": "See the POST method. This GET method supports using JSON encoded request body in query parameter.",
  7916. "produces": [
  7917. "application/json"
  7918. ],
  7919. "tags": [
  7920. "repository"
  7921. ],
  7922. "summary": "Get the metadata and contents of requested files",
  7923. "operationId": "repoGetFileContents",
  7924. "parameters": [
  7925. {
  7926. "type": "string",
  7927. "description": "owner of the repo",
  7928. "name": "owner",
  7929. "in": "path",
  7930. "required": true
  7931. },
  7932. {
  7933. "type": "string",
  7934. "description": "name of the repo",
  7935. "name": "repo",
  7936. "in": "path",
  7937. "required": true
  7938. },
  7939. {
  7940. "type": "string",
  7941. "description": "The name of the commit/branch/tag. Default to the repository’s default branch.",
  7942. "name": "ref",
  7943. "in": "query"
  7944. },
  7945. {
  7946. "type": "string",
  7947. "description": "The JSON encoded body (see the POST request): {\"files\": [\"filename1\", \"filename2\"]}",
  7948. "name": "body",
  7949. "in": "query",
  7950. "required": true
  7951. }
  7952. ],
  7953. "responses": {
  7954. "200": {
  7955. "$ref": "#/responses/ContentsListResponse"
  7956. },
  7957. "404": {
  7958. "$ref": "#/responses/notFound"
  7959. }
  7960. }
  7961. },
  7962. "post": {
  7963. "description": "Uses automatic pagination based on default page size and max response size and returns the maximum allowed number of files. Files which could not be retrieved are null. Files which are too large are being returned with `encoding == null`, `content == null` and `size \u003e 0`, they can be requested separately by using the `download_url`.",
  7964. "produces": [
  7965. "application/json"
  7966. ],
  7967. "tags": [
  7968. "repository"
  7969. ],
  7970. "summary": "Get the metadata and contents of requested files",
  7971. "operationId": "repoGetFileContentsPost",
  7972. "parameters": [
  7973. {
  7974. "type": "string",
  7975. "description": "owner of the repo",
  7976. "name": "owner",
  7977. "in": "path",
  7978. "required": true
  7979. },
  7980. {
  7981. "type": "string",
  7982. "description": "name of the repo",
  7983. "name": "repo",
  7984. "in": "path",
  7985. "required": true
  7986. },
  7987. {
  7988. "type": "string",
  7989. "description": "The name of the commit/branch/tag. Default to the repository’s default branch.",
  7990. "name": "ref",
  7991. "in": "query"
  7992. },
  7993. {
  7994. "name": "body",
  7995. "in": "body",
  7996. "required": true,
  7997. "schema": {
  7998. "$ref": "#/definitions/GetFilesOptions"
  7999. }
  8000. }
  8001. ],
  8002. "responses": {
  8003. "200": {
  8004. "$ref": "#/responses/ContentsListResponse"
  8005. },
  8006. "404": {
  8007. "$ref": "#/responses/notFound"
  8008. }
  8009. }
  8010. }
  8011. },
  8012. "/repos/{owner}/{repo}/forks": {
  8013. "get": {
  8014. "produces": [
  8015. "application/json"
  8016. ],
  8017. "tags": [
  8018. "repository"
  8019. ],
  8020. "summary": "List a repository's forks",
  8021. "operationId": "listForks",
  8022. "parameters": [
  8023. {
  8024. "type": "string",
  8025. "description": "owner of the repo",
  8026. "name": "owner",
  8027. "in": "path",
  8028. "required": true
  8029. },
  8030. {
  8031. "type": "string",
  8032. "description": "name of the repo",
  8033. "name": "repo",
  8034. "in": "path",
  8035. "required": true
  8036. },
  8037. {
  8038. "type": "integer",
  8039. "description": "page number of results to return (1-based)",
  8040. "name": "page",
  8041. "in": "query"
  8042. },
  8043. {
  8044. "type": "integer",
  8045. "description": "page size of results",
  8046. "name": "limit",
  8047. "in": "query"
  8048. }
  8049. ],
  8050. "responses": {
  8051. "200": {
  8052. "$ref": "#/responses/RepositoryList"
  8053. },
  8054. "404": {
  8055. "$ref": "#/responses/notFound"
  8056. }
  8057. }
  8058. },
  8059. "post": {
  8060. "produces": [
  8061. "application/json"
  8062. ],
  8063. "tags": [
  8064. "repository"
  8065. ],
  8066. "summary": "Fork a repository",
  8067. "operationId": "createFork",
  8068. "parameters": [
  8069. {
  8070. "type": "string",
  8071. "description": "owner of the repo to fork",
  8072. "name": "owner",
  8073. "in": "path",
  8074. "required": true
  8075. },
  8076. {
  8077. "type": "string",
  8078. "description": "name of the repo to fork",
  8079. "name": "repo",
  8080. "in": "path",
  8081. "required": true
  8082. },
  8083. {
  8084. "name": "body",
  8085. "in": "body",
  8086. "schema": {
  8087. "$ref": "#/definitions/CreateForkOption"
  8088. }
  8089. }
  8090. ],
  8091. "responses": {
  8092. "202": {
  8093. "$ref": "#/responses/Repository"
  8094. },
  8095. "403": {
  8096. "$ref": "#/responses/forbidden"
  8097. },
  8098. "404": {
  8099. "$ref": "#/responses/notFound"
  8100. },
  8101. "409": {
  8102. "description": "The repository with the same name already exists."
  8103. },
  8104. "422": {
  8105. "$ref": "#/responses/validationError"
  8106. }
  8107. }
  8108. }
  8109. },
  8110. "/repos/{owner}/{repo}/git/blobs/{sha}": {
  8111. "get": {
  8112. "produces": [
  8113. "application/json"
  8114. ],
  8115. "tags": [
  8116. "repository"
  8117. ],
  8118. "summary": "Gets the blob of a repository.",
  8119. "operationId": "GetBlob",
  8120. "parameters": [
  8121. {
  8122. "type": "string",
  8123. "description": "owner of the repo",
  8124. "name": "owner",
  8125. "in": "path",
  8126. "required": true
  8127. },
  8128. {
  8129. "type": "string",
  8130. "description": "name of the repo",
  8131. "name": "repo",
  8132. "in": "path",
  8133. "required": true
  8134. },
  8135. {
  8136. "type": "string",
  8137. "description": "sha of the commit",
  8138. "name": "sha",
  8139. "in": "path",
  8140. "required": true
  8141. }
  8142. ],
  8143. "responses": {
  8144. "200": {
  8145. "$ref": "#/responses/GitBlobResponse"
  8146. },
  8147. "400": {
  8148. "$ref": "#/responses/error"
  8149. },
  8150. "404": {
  8151. "$ref": "#/responses/notFound"
  8152. }
  8153. }
  8154. }
  8155. },
  8156. "/repos/{owner}/{repo}/git/commits/{sha}": {
  8157. "get": {
  8158. "produces": [
  8159. "application/json"
  8160. ],
  8161. "tags": [
  8162. "repository"
  8163. ],
  8164. "summary": "Get a single commit from a repository",
  8165. "operationId": "repoGetSingleCommit",
  8166. "parameters": [
  8167. {
  8168. "type": "string",
  8169. "description": "owner of the repo",
  8170. "name": "owner",
  8171. "in": "path",
  8172. "required": true
  8173. },
  8174. {
  8175. "type": "string",
  8176. "description": "name of the repo",
  8177. "name": "repo",
  8178. "in": "path",
  8179. "required": true
  8180. },
  8181. {
  8182. "type": "string",
  8183. "description": "a git ref or commit sha",
  8184. "name": "sha",
  8185. "in": "path",
  8186. "required": true
  8187. },
  8188. {
  8189. "type": "boolean",
  8190. "description": "include diff stats for every commit (disable for speedup, default 'true')",
  8191. "name": "stat",
  8192. "in": "query"
  8193. },
  8194. {
  8195. "type": "boolean",
  8196. "description": "include verification for every commit (disable for speedup, default 'true')",
  8197. "name": "verification",
  8198. "in": "query"
  8199. },
  8200. {
  8201. "type": "boolean",
  8202. "description": "include a list of affected files for every commit (disable for speedup, default 'true')",
  8203. "name": "files",
  8204. "in": "query"
  8205. }
  8206. ],
  8207. "responses": {
  8208. "200": {
  8209. "$ref": "#/responses/Commit"
  8210. },
  8211. "404": {
  8212. "$ref": "#/responses/notFound"
  8213. },
  8214. "422": {
  8215. "$ref": "#/responses/validationError"
  8216. }
  8217. }
  8218. }
  8219. },
  8220. "/repos/{owner}/{repo}/git/commits/{sha}.{diffType}": {
  8221. "get": {
  8222. "produces": [
  8223. "text/plain"
  8224. ],
  8225. "tags": [
  8226. "repository"
  8227. ],
  8228. "summary": "Get a commit's diff or patch",
  8229. "operationId": "repoDownloadCommitDiffOrPatch",
  8230. "parameters": [
  8231. {
  8232. "type": "string",
  8233. "description": "owner of the repo",
  8234. "name": "owner",
  8235. "in": "path",
  8236. "required": true
  8237. },
  8238. {
  8239. "type": "string",
  8240. "description": "name of the repo",
  8241. "name": "repo",
  8242. "in": "path",
  8243. "required": true
  8244. },
  8245. {
  8246. "type": "string",
  8247. "description": "SHA of the commit to get",
  8248. "name": "sha",
  8249. "in": "path",
  8250. "required": true
  8251. },
  8252. {
  8253. "enum": [
  8254. "diff",
  8255. "patch"
  8256. ],
  8257. "type": "string",
  8258. "description": "whether the output is diff or patch",
  8259. "name": "diffType",
  8260. "in": "path",
  8261. "required": true
  8262. }
  8263. ],
  8264. "responses": {
  8265. "200": {
  8266. "$ref": "#/responses/string"
  8267. },
  8268. "404": {
  8269. "$ref": "#/responses/notFound"
  8270. }
  8271. }
  8272. }
  8273. },
  8274. "/repos/{owner}/{repo}/git/notes/{sha}": {
  8275. "get": {
  8276. "produces": [
  8277. "application/json"
  8278. ],
  8279. "tags": [
  8280. "repository"
  8281. ],
  8282. "summary": "Get a note corresponding to a single commit from a repository",
  8283. "operationId": "repoGetNote",
  8284. "parameters": [
  8285. {
  8286. "type": "string",
  8287. "description": "owner of the repo",
  8288. "name": "owner",
  8289. "in": "path",
  8290. "required": true
  8291. },
  8292. {
  8293. "type": "string",
  8294. "description": "name of the repo",
  8295. "name": "repo",
  8296. "in": "path",
  8297. "required": true
  8298. },
  8299. {
  8300. "type": "string",
  8301. "description": "a git ref or commit sha",
  8302. "name": "sha",
  8303. "in": "path",
  8304. "required": true
  8305. },
  8306. {
  8307. "type": "boolean",
  8308. "description": "include verification for every commit (disable for speedup, default 'true')",
  8309. "name": "verification",
  8310. "in": "query"
  8311. },
  8312. {
  8313. "type": "boolean",
  8314. "description": "include a list of affected files for every commit (disable for speedup, default 'true')",
  8315. "name": "files",
  8316. "in": "query"
  8317. }
  8318. ],
  8319. "responses": {
  8320. "200": {
  8321. "$ref": "#/responses/Note"
  8322. },
  8323. "404": {
  8324. "$ref": "#/responses/notFound"
  8325. },
  8326. "422": {
  8327. "$ref": "#/responses/validationError"
  8328. }
  8329. }
  8330. }
  8331. },
  8332. "/repos/{owner}/{repo}/git/refs": {
  8333. "get": {
  8334. "produces": [
  8335. "application/json"
  8336. ],
  8337. "tags": [
  8338. "repository"
  8339. ],
  8340. "summary": "Get specified ref or filtered repository's refs",
  8341. "operationId": "repoListAllGitRefs",
  8342. "parameters": [
  8343. {
  8344. "type": "string",
  8345. "description": "owner of the repo",
  8346. "name": "owner",
  8347. "in": "path",
  8348. "required": true
  8349. },
  8350. {
  8351. "type": "string",
  8352. "description": "name of the repo",
  8353. "name": "repo",
  8354. "in": "path",
  8355. "required": true
  8356. }
  8357. ],
  8358. "responses": {
  8359. "200": {
  8360. "$ref": "#/responses/ReferenceList"
  8361. },
  8362. "404": {
  8363. "$ref": "#/responses/notFound"
  8364. }
  8365. }
  8366. }
  8367. },
  8368. "/repos/{owner}/{repo}/git/refs/{ref}": {
  8369. "get": {
  8370. "produces": [
  8371. "application/json"
  8372. ],
  8373. "tags": [
  8374. "repository"
  8375. ],
  8376. "summary": "Get specified ref or filtered repository's refs",
  8377. "operationId": "repoListGitRefs",
  8378. "parameters": [
  8379. {
  8380. "type": "string",
  8381. "description": "owner of the repo",
  8382. "name": "owner",
  8383. "in": "path",
  8384. "required": true
  8385. },
  8386. {
  8387. "type": "string",
  8388. "description": "name of the repo",
  8389. "name": "repo",
  8390. "in": "path",
  8391. "required": true
  8392. },
  8393. {
  8394. "type": "string",
  8395. "description": "part or full name of the ref",
  8396. "name": "ref",
  8397. "in": "path",
  8398. "required": true
  8399. }
  8400. ],
  8401. "responses": {
  8402. "200": {
  8403. "$ref": "#/responses/ReferenceList"
  8404. },
  8405. "404": {
  8406. "$ref": "#/responses/notFound"
  8407. }
  8408. }
  8409. }
  8410. },
  8411. "/repos/{owner}/{repo}/git/tags/{sha}": {
  8412. "get": {
  8413. "produces": [
  8414. "application/json"
  8415. ],
  8416. "tags": [
  8417. "repository"
  8418. ],
  8419. "summary": "Gets the tag object of an annotated tag (not lightweight tags)",
  8420. "operationId": "GetAnnotatedTag",
  8421. "parameters": [
  8422. {
  8423. "type": "string",
  8424. "description": "owner of the repo",
  8425. "name": "owner",
  8426. "in": "path",
  8427. "required": true
  8428. },
  8429. {
  8430. "type": "string",
  8431. "description": "name of the repo",
  8432. "name": "repo",
  8433. "in": "path",
  8434. "required": true
  8435. },
  8436. {
  8437. "type": "string",
  8438. "description": "sha of the tag. The Git tags API only supports annotated tag objects, not lightweight tags.",
  8439. "name": "sha",
  8440. "in": "path",
  8441. "required": true
  8442. }
  8443. ],
  8444. "responses": {
  8445. "200": {
  8446. "$ref": "#/responses/AnnotatedTag"
  8447. },
  8448. "400": {
  8449. "$ref": "#/responses/error"
  8450. },
  8451. "404": {
  8452. "$ref": "#/responses/notFound"
  8453. }
  8454. }
  8455. }
  8456. },
  8457. "/repos/{owner}/{repo}/git/trees/{sha}": {
  8458. "get": {
  8459. "produces": [
  8460. "application/json"
  8461. ],
  8462. "tags": [
  8463. "repository"
  8464. ],
  8465. "summary": "Gets the tree of a repository.",
  8466. "operationId": "GetTree",
  8467. "parameters": [
  8468. {
  8469. "type": "string",
  8470. "description": "owner of the repo",
  8471. "name": "owner",
  8472. "in": "path",
  8473. "required": true
  8474. },
  8475. {
  8476. "type": "string",
  8477. "description": "name of the repo",
  8478. "name": "repo",
  8479. "in": "path",
  8480. "required": true
  8481. },
  8482. {
  8483. "type": "string",
  8484. "description": "sha of the commit",
  8485. "name": "sha",
  8486. "in": "path",
  8487. "required": true
  8488. },
  8489. {
  8490. "type": "boolean",
  8491. "description": "show all directories and files",
  8492. "name": "recursive",
  8493. "in": "query"
  8494. },
  8495. {
  8496. "type": "integer",
  8497. "description": "page number; the 'truncated' field in the response will be true if there are still more items after this page, false if the last page",
  8498. "name": "page",
  8499. "in": "query"
  8500. },
  8501. {
  8502. "type": "integer",
  8503. "description": "number of items per page",
  8504. "name": "per_page",
  8505. "in": "query"
  8506. }
  8507. ],
  8508. "responses": {
  8509. "200": {
  8510. "$ref": "#/responses/GitTreeResponse"
  8511. },
  8512. "400": {
  8513. "$ref": "#/responses/error"
  8514. },
  8515. "404": {
  8516. "$ref": "#/responses/notFound"
  8517. }
  8518. }
  8519. }
  8520. },
  8521. "/repos/{owner}/{repo}/hooks": {
  8522. "get": {
  8523. "produces": [
  8524. "application/json"
  8525. ],
  8526. "tags": [
  8527. "repository"
  8528. ],
  8529. "summary": "List the hooks in a repository",
  8530. "operationId": "repoListHooks",
  8531. "parameters": [
  8532. {
  8533. "type": "string",
  8534. "description": "owner of the repo",
  8535. "name": "owner",
  8536. "in": "path",
  8537. "required": true
  8538. },
  8539. {
  8540. "type": "string",
  8541. "description": "name of the repo",
  8542. "name": "repo",
  8543. "in": "path",
  8544. "required": true
  8545. },
  8546. {
  8547. "type": "integer",
  8548. "description": "page number of results to return (1-based)",
  8549. "name": "page",
  8550. "in": "query"
  8551. },
  8552. {
  8553. "type": "integer",
  8554. "description": "page size of results",
  8555. "name": "limit",
  8556. "in": "query"
  8557. }
  8558. ],
  8559. "responses": {
  8560. "200": {
  8561. "$ref": "#/responses/HookList"
  8562. },
  8563. "404": {
  8564. "$ref": "#/responses/notFound"
  8565. }
  8566. }
  8567. },
  8568. "post": {
  8569. "consumes": [
  8570. "application/json"
  8571. ],
  8572. "produces": [
  8573. "application/json"
  8574. ],
  8575. "tags": [
  8576. "repository"
  8577. ],
  8578. "summary": "Create a hook",
  8579. "operationId": "repoCreateHook",
  8580. "parameters": [
  8581. {
  8582. "type": "string",
  8583. "description": "owner of the repo",
  8584. "name": "owner",
  8585. "in": "path",
  8586. "required": true
  8587. },
  8588. {
  8589. "type": "string",
  8590. "description": "name of the repo",
  8591. "name": "repo",
  8592. "in": "path",
  8593. "required": true
  8594. },
  8595. {
  8596. "name": "body",
  8597. "in": "body",
  8598. "schema": {
  8599. "$ref": "#/definitions/CreateHookOption"
  8600. }
  8601. }
  8602. ],
  8603. "responses": {
  8604. "201": {
  8605. "$ref": "#/responses/Hook"
  8606. },
  8607. "404": {
  8608. "$ref": "#/responses/notFound"
  8609. }
  8610. }
  8611. }
  8612. },
  8613. "/repos/{owner}/{repo}/hooks/git": {
  8614. "get": {
  8615. "produces": [
  8616. "application/json"
  8617. ],
  8618. "tags": [
  8619. "repository"
  8620. ],
  8621. "summary": "List the Git hooks in a repository",
  8622. "operationId": "repoListGitHooks",
  8623. "parameters": [
  8624. {
  8625. "type": "string",
  8626. "description": "owner of the repo",
  8627. "name": "owner",
  8628. "in": "path",
  8629. "required": true
  8630. },
  8631. {
  8632. "type": "string",
  8633. "description": "name of the repo",
  8634. "name": "repo",
  8635. "in": "path",
  8636. "required": true
  8637. }
  8638. ],
  8639. "responses": {
  8640. "200": {
  8641. "$ref": "#/responses/GitHookList"
  8642. },
  8643. "404": {
  8644. "$ref": "#/responses/notFound"
  8645. }
  8646. }
  8647. }
  8648. },
  8649. "/repos/{owner}/{repo}/hooks/git/{id}": {
  8650. "get": {
  8651. "produces": [
  8652. "application/json"
  8653. ],
  8654. "tags": [
  8655. "repository"
  8656. ],
  8657. "summary": "Get a Git hook",
  8658. "operationId": "repoGetGitHook",
  8659. "parameters": [
  8660. {
  8661. "type": "string",
  8662. "description": "owner of the repo",
  8663. "name": "owner",
  8664. "in": "path",
  8665. "required": true
  8666. },
  8667. {
  8668. "type": "string",
  8669. "description": "name of the repo",
  8670. "name": "repo",
  8671. "in": "path",
  8672. "required": true
  8673. },
  8674. {
  8675. "type": "string",
  8676. "description": "id of the hook to get",
  8677. "name": "id",
  8678. "in": "path",
  8679. "required": true
  8680. }
  8681. ],
  8682. "responses": {
  8683. "200": {
  8684. "$ref": "#/responses/GitHook"
  8685. },
  8686. "404": {
  8687. "$ref": "#/responses/notFound"
  8688. }
  8689. }
  8690. },
  8691. "delete": {
  8692. "produces": [
  8693. "application/json"
  8694. ],
  8695. "tags": [
  8696. "repository"
  8697. ],
  8698. "summary": "Delete a Git hook in a repository",
  8699. "operationId": "repoDeleteGitHook",
  8700. "parameters": [
  8701. {
  8702. "type": "string",
  8703. "description": "owner of the repo",
  8704. "name": "owner",
  8705. "in": "path",
  8706. "required": true
  8707. },
  8708. {
  8709. "type": "string",
  8710. "description": "name of the repo",
  8711. "name": "repo",
  8712. "in": "path",
  8713. "required": true
  8714. },
  8715. {
  8716. "type": "string",
  8717. "description": "id of the hook to get",
  8718. "name": "id",
  8719. "in": "path",
  8720. "required": true
  8721. }
  8722. ],
  8723. "responses": {
  8724. "204": {
  8725. "$ref": "#/responses/empty"
  8726. },
  8727. "404": {
  8728. "$ref": "#/responses/notFound"
  8729. }
  8730. }
  8731. },
  8732. "patch": {
  8733. "produces": [
  8734. "application/json"
  8735. ],
  8736. "tags": [
  8737. "repository"
  8738. ],
  8739. "summary": "Edit a Git hook in a repository",
  8740. "operationId": "repoEditGitHook",
  8741. "parameters": [
  8742. {
  8743. "type": "string",
  8744. "description": "owner of the repo",
  8745. "name": "owner",
  8746. "in": "path",
  8747. "required": true
  8748. },
  8749. {
  8750. "type": "string",
  8751. "description": "name of the repo",
  8752. "name": "repo",
  8753. "in": "path",
  8754. "required": true
  8755. },
  8756. {
  8757. "type": "string",
  8758. "description": "id of the hook to get",
  8759. "name": "id",
  8760. "in": "path",
  8761. "required": true
  8762. },
  8763. {
  8764. "name": "body",
  8765. "in": "body",
  8766. "schema": {
  8767. "$ref": "#/definitions/EditGitHookOption"
  8768. }
  8769. }
  8770. ],
  8771. "responses": {
  8772. "200": {
  8773. "$ref": "#/responses/GitHook"
  8774. },
  8775. "404": {
  8776. "$ref": "#/responses/notFound"
  8777. }
  8778. }
  8779. }
  8780. },
  8781. "/repos/{owner}/{repo}/hooks/{id}": {
  8782. "get": {
  8783. "produces": [
  8784. "application/json"
  8785. ],
  8786. "tags": [
  8787. "repository"
  8788. ],
  8789. "summary": "Get a hook",
  8790. "operationId": "repoGetHook",
  8791. "parameters": [
  8792. {
  8793. "type": "string",
  8794. "description": "owner of the repo",
  8795. "name": "owner",
  8796. "in": "path",
  8797. "required": true
  8798. },
  8799. {
  8800. "type": "string",
  8801. "description": "name of the repo",
  8802. "name": "repo",
  8803. "in": "path",
  8804. "required": true
  8805. },
  8806. {
  8807. "type": "integer",
  8808. "format": "int64",
  8809. "description": "id of the hook to get",
  8810. "name": "id",
  8811. "in": "path",
  8812. "required": true
  8813. }
  8814. ],
  8815. "responses": {
  8816. "200": {
  8817. "$ref": "#/responses/Hook"
  8818. },
  8819. "404": {
  8820. "$ref": "#/responses/notFound"
  8821. }
  8822. }
  8823. },
  8824. "delete": {
  8825. "produces": [
  8826. "application/json"
  8827. ],
  8828. "tags": [
  8829. "repository"
  8830. ],
  8831. "summary": "Delete a hook in a repository",
  8832. "operationId": "repoDeleteHook",
  8833. "parameters": [
  8834. {
  8835. "type": "string",
  8836. "description": "owner of the repo",
  8837. "name": "owner",
  8838. "in": "path",
  8839. "required": true
  8840. },
  8841. {
  8842. "type": "string",
  8843. "description": "name of the repo",
  8844. "name": "repo",
  8845. "in": "path",
  8846. "required": true
  8847. },
  8848. {
  8849. "type": "integer",
  8850. "format": "int64",
  8851. "description": "id of the hook to delete",
  8852. "name": "id",
  8853. "in": "path",
  8854. "required": true
  8855. }
  8856. ],
  8857. "responses": {
  8858. "204": {
  8859. "$ref": "#/responses/empty"
  8860. },
  8861. "404": {
  8862. "$ref": "#/responses/notFound"
  8863. }
  8864. }
  8865. },
  8866. "patch": {
  8867. "produces": [
  8868. "application/json"
  8869. ],
  8870. "tags": [
  8871. "repository"
  8872. ],
  8873. "summary": "Edit a hook in a repository",
  8874. "operationId": "repoEditHook",
  8875. "parameters": [
  8876. {
  8877. "type": "string",
  8878. "description": "owner of the repo",
  8879. "name": "owner",
  8880. "in": "path",
  8881. "required": true
  8882. },
  8883. {
  8884. "type": "string",
  8885. "description": "name of the repo",
  8886. "name": "repo",
  8887. "in": "path",
  8888. "required": true
  8889. },
  8890. {
  8891. "type": "integer",
  8892. "format": "int64",
  8893. "description": "index of the hook",
  8894. "name": "id",
  8895. "in": "path",
  8896. "required": true
  8897. },
  8898. {
  8899. "name": "body",
  8900. "in": "body",
  8901. "schema": {
  8902. "$ref": "#/definitions/EditHookOption"
  8903. }
  8904. }
  8905. ],
  8906. "responses": {
  8907. "200": {
  8908. "$ref": "#/responses/Hook"
  8909. },
  8910. "404": {
  8911. "$ref": "#/responses/notFound"
  8912. }
  8913. }
  8914. }
  8915. },
  8916. "/repos/{owner}/{repo}/hooks/{id}/tests": {
  8917. "post": {
  8918. "produces": [
  8919. "application/json"
  8920. ],
  8921. "tags": [
  8922. "repository"
  8923. ],
  8924. "summary": "Test a push webhook",
  8925. "operationId": "repoTestHook",
  8926. "parameters": [
  8927. {
  8928. "type": "string",
  8929. "description": "owner of the repo",
  8930. "name": "owner",
  8931. "in": "path",
  8932. "required": true
  8933. },
  8934. {
  8935. "type": "string",
  8936. "description": "name of the repo",
  8937. "name": "repo",
  8938. "in": "path",
  8939. "required": true
  8940. },
  8941. {
  8942. "type": "integer",
  8943. "format": "int64",
  8944. "description": "id of the hook to test",
  8945. "name": "id",
  8946. "in": "path",
  8947. "required": true
  8948. },
  8949. {
  8950. "type": "string",
  8951. "description": "The name of the commit/branch/tag, indicates which commit will be loaded to the webhook payload.",
  8952. "name": "ref",
  8953. "in": "query"
  8954. }
  8955. ],
  8956. "responses": {
  8957. "204": {
  8958. "$ref": "#/responses/empty"
  8959. },
  8960. "404": {
  8961. "$ref": "#/responses/notFound"
  8962. }
  8963. }
  8964. }
  8965. },
  8966. "/repos/{owner}/{repo}/issue_config": {
  8967. "get": {
  8968. "produces": [
  8969. "application/json"
  8970. ],
  8971. "tags": [
  8972. "repository"
  8973. ],
  8974. "summary": "Returns the issue config for a repo",
  8975. "operationId": "repoGetIssueConfig",
  8976. "parameters": [
  8977. {
  8978. "type": "string",
  8979. "description": "owner of the repo",
  8980. "name": "owner",
  8981. "in": "path",
  8982. "required": true
  8983. },
  8984. {
  8985. "type": "string",
  8986. "description": "name of the repo",
  8987. "name": "repo",
  8988. "in": "path",
  8989. "required": true
  8990. }
  8991. ],
  8992. "responses": {
  8993. "200": {
  8994. "$ref": "#/responses/RepoIssueConfig"
  8995. },
  8996. "404": {
  8997. "$ref": "#/responses/notFound"
  8998. }
  8999. }
  9000. }
  9001. },
  9002. "/repos/{owner}/{repo}/issue_config/validate": {
  9003. "get": {
  9004. "produces": [
  9005. "application/json"
  9006. ],
  9007. "tags": [
  9008. "repository"
  9009. ],
  9010. "summary": "Returns the validation information for a issue config",
  9011. "operationId": "repoValidateIssueConfig",
  9012. "parameters": [
  9013. {
  9014. "type": "string",
  9015. "description": "owner of the repo",
  9016. "name": "owner",
  9017. "in": "path",
  9018. "required": true
  9019. },
  9020. {
  9021. "type": "string",
  9022. "description": "name of the repo",
  9023. "name": "repo",
  9024. "in": "path",
  9025. "required": true
  9026. }
  9027. ],
  9028. "responses": {
  9029. "200": {
  9030. "$ref": "#/responses/RepoIssueConfigValidation"
  9031. },
  9032. "404": {
  9033. "$ref": "#/responses/notFound"
  9034. }
  9035. }
  9036. }
  9037. },
  9038. "/repos/{owner}/{repo}/issue_templates": {
  9039. "get": {
  9040. "produces": [
  9041. "application/json"
  9042. ],
  9043. "tags": [
  9044. "repository"
  9045. ],
  9046. "summary": "Get available issue templates for a repository",
  9047. "operationId": "repoGetIssueTemplates",
  9048. "parameters": [
  9049. {
  9050. "type": "string",
  9051. "description": "owner of the repo",
  9052. "name": "owner",
  9053. "in": "path",
  9054. "required": true
  9055. },
  9056. {
  9057. "type": "string",
  9058. "description": "name of the repo",
  9059. "name": "repo",
  9060. "in": "path",
  9061. "required": true
  9062. }
  9063. ],
  9064. "responses": {
  9065. "200": {
  9066. "$ref": "#/responses/IssueTemplates"
  9067. },
  9068. "404": {
  9069. "$ref": "#/responses/notFound"
  9070. }
  9071. }
  9072. }
  9073. },
  9074. "/repos/{owner}/{repo}/issues": {
  9075. "get": {
  9076. "produces": [
  9077. "application/json"
  9078. ],
  9079. "tags": [
  9080. "issue"
  9081. ],
  9082. "summary": "List a repository's issues",
  9083. "operationId": "issueListIssues",
  9084. "parameters": [
  9085. {
  9086. "type": "string",
  9087. "description": "owner of the repo",
  9088. "name": "owner",
  9089. "in": "path",
  9090. "required": true
  9091. },
  9092. {
  9093. "type": "string",
  9094. "description": "name of the repo",
  9095. "name": "repo",
  9096. "in": "path",
  9097. "required": true
  9098. },
  9099. {
  9100. "enum": [
  9101. "closed",
  9102. "open",
  9103. "all"
  9104. ],
  9105. "type": "string",
  9106. "description": "whether issue is open or closed",
  9107. "name": "state",
  9108. "in": "query"
  9109. },
  9110. {
  9111. "type": "string",
  9112. "description": "comma separated list of label names. Fetch only issues that have any of this label names. Non existent labels are discarded.",
  9113. "name": "labels",
  9114. "in": "query"
  9115. },
  9116. {
  9117. "type": "string",
  9118. "description": "search string",
  9119. "name": "q",
  9120. "in": "query"
  9121. },
  9122. {
  9123. "enum": [
  9124. "issues",
  9125. "pulls"
  9126. ],
  9127. "type": "string",
  9128. "description": "filter by type (issues / pulls) if set",
  9129. "name": "type",
  9130. "in": "query"
  9131. },
  9132. {
  9133. "type": "string",
  9134. "description": "comma separated list of milestone names or ids. It uses names and fall back to ids. Fetch only issues that have any of this milestones. Non existent milestones are discarded",
  9135. "name": "milestones",
  9136. "in": "query"
  9137. },
  9138. {
  9139. "type": "string",
  9140. "format": "date-time",
  9141. "description": "Only show items updated after the given time. This is a timestamp in RFC 3339 format",
  9142. "name": "since",
  9143. "in": "query"
  9144. },
  9145. {
  9146. "type": "string",
  9147. "format": "date-time",
  9148. "description": "Only show items updated before the given time. This is a timestamp in RFC 3339 format",
  9149. "name": "before",
  9150. "in": "query"
  9151. },
  9152. {
  9153. "type": "string",
  9154. "description": "Only show items which were created by the given user",
  9155. "name": "created_by",
  9156. "in": "query"
  9157. },
  9158. {
  9159. "type": "string",
  9160. "description": "Only show items for which the given user is assigned",
  9161. "name": "assigned_by",
  9162. "in": "query"
  9163. },
  9164. {
  9165. "type": "string",
  9166. "description": "Only show items in which the given user was mentioned",
  9167. "name": "mentioned_by",
  9168. "in": "query"
  9169. },
  9170. {
  9171. "type": "integer",
  9172. "description": "page number of results to return (1-based)",
  9173. "name": "page",
  9174. "in": "query"
  9175. },
  9176. {
  9177. "type": "integer",
  9178. "description": "page size of results",
  9179. "name": "limit",
  9180. "in": "query"
  9181. }
  9182. ],
  9183. "responses": {
  9184. "200": {
  9185. "$ref": "#/responses/IssueList"
  9186. },
  9187. "404": {
  9188. "$ref": "#/responses/notFound"
  9189. }
  9190. }
  9191. },
  9192. "post": {
  9193. "consumes": [
  9194. "application/json"
  9195. ],
  9196. "produces": [
  9197. "application/json"
  9198. ],
  9199. "tags": [
  9200. "issue"
  9201. ],
  9202. "summary": "Create an issue. If using deadline only the date will be taken into account, and time of day ignored.",
  9203. "operationId": "issueCreateIssue",
  9204. "parameters": [
  9205. {
  9206. "type": "string",
  9207. "description": "owner of the repo",
  9208. "name": "owner",
  9209. "in": "path",
  9210. "required": true
  9211. },
  9212. {
  9213. "type": "string",
  9214. "description": "name of the repo",
  9215. "name": "repo",
  9216. "in": "path",
  9217. "required": true
  9218. },
  9219. {
  9220. "name": "body",
  9221. "in": "body",
  9222. "schema": {
  9223. "$ref": "#/definitions/CreateIssueOption"
  9224. }
  9225. }
  9226. ],
  9227. "responses": {
  9228. "201": {
  9229. "$ref": "#/responses/Issue"
  9230. },
  9231. "403": {
  9232. "$ref": "#/responses/forbidden"
  9233. },
  9234. "404": {
  9235. "$ref": "#/responses/notFound"
  9236. },
  9237. "412": {
  9238. "$ref": "#/responses/error"
  9239. },
  9240. "422": {
  9241. "$ref": "#/responses/validationError"
  9242. },
  9243. "423": {
  9244. "$ref": "#/responses/repoArchivedError"
  9245. }
  9246. }
  9247. }
  9248. },
  9249. "/repos/{owner}/{repo}/issues/comments": {
  9250. "get": {
  9251. "produces": [
  9252. "application/json"
  9253. ],
  9254. "tags": [
  9255. "issue"
  9256. ],
  9257. "summary": "List all comments in a repository",
  9258. "operationId": "issueGetRepoComments",
  9259. "parameters": [
  9260. {
  9261. "type": "string",
  9262. "description": "owner of the repo",
  9263. "name": "owner",
  9264. "in": "path",
  9265. "required": true
  9266. },
  9267. {
  9268. "type": "string",
  9269. "description": "name of the repo",
  9270. "name": "repo",
  9271. "in": "path",
  9272. "required": true
  9273. },
  9274. {
  9275. "type": "string",
  9276. "format": "date-time",
  9277. "description": "if provided, only comments updated since the provided time are returned.",
  9278. "name": "since",
  9279. "in": "query"
  9280. },
  9281. {
  9282. "type": "string",
  9283. "format": "date-time",
  9284. "description": "if provided, only comments updated before the provided time are returned.",
  9285. "name": "before",
  9286. "in": "query"
  9287. },
  9288. {
  9289. "type": "integer",
  9290. "description": "page number of results to return (1-based)",
  9291. "name": "page",
  9292. "in": "query"
  9293. },
  9294. {
  9295. "type": "integer",
  9296. "description": "page size of results",
  9297. "name": "limit",
  9298. "in": "query"
  9299. }
  9300. ],
  9301. "responses": {
  9302. "200": {
  9303. "$ref": "#/responses/CommentList"
  9304. },
  9305. "404": {
  9306. "$ref": "#/responses/notFound"
  9307. }
  9308. }
  9309. }
  9310. },
  9311. "/repos/{owner}/{repo}/issues/comments/{id}": {
  9312. "get": {
  9313. "consumes": [
  9314. "application/json"
  9315. ],
  9316. "produces": [
  9317. "application/json"
  9318. ],
  9319. "tags": [
  9320. "issue"
  9321. ],
  9322. "summary": "Get a comment",
  9323. "operationId": "issueGetComment",
  9324. "parameters": [
  9325. {
  9326. "type": "string",
  9327. "description": "owner of the repo",
  9328. "name": "owner",
  9329. "in": "path",
  9330. "required": true
  9331. },
  9332. {
  9333. "type": "string",
  9334. "description": "name of the repo",
  9335. "name": "repo",
  9336. "in": "path",
  9337. "required": true
  9338. },
  9339. {
  9340. "type": "integer",
  9341. "format": "int64",
  9342. "description": "id of the comment",
  9343. "name": "id",
  9344. "in": "path",
  9345. "required": true
  9346. }
  9347. ],
  9348. "responses": {
  9349. "200": {
  9350. "$ref": "#/responses/Comment"
  9351. },
  9352. "204": {
  9353. "$ref": "#/responses/empty"
  9354. },
  9355. "403": {
  9356. "$ref": "#/responses/forbidden"
  9357. },
  9358. "404": {
  9359. "$ref": "#/responses/notFound"
  9360. }
  9361. }
  9362. },
  9363. "delete": {
  9364. "tags": [
  9365. "issue"
  9366. ],
  9367. "summary": "Delete a comment",
  9368. "operationId": "issueDeleteComment",
  9369. "parameters": [
  9370. {
  9371. "type": "string",
  9372. "description": "owner of the repo",
  9373. "name": "owner",
  9374. "in": "path",
  9375. "required": true
  9376. },
  9377. {
  9378. "type": "string",
  9379. "description": "name of the repo",
  9380. "name": "repo",
  9381. "in": "path",
  9382. "required": true
  9383. },
  9384. {
  9385. "type": "integer",
  9386. "format": "int64",
  9387. "description": "id of comment to delete",
  9388. "name": "id",
  9389. "in": "path",
  9390. "required": true
  9391. }
  9392. ],
  9393. "responses": {
  9394. "204": {
  9395. "$ref": "#/responses/empty"
  9396. },
  9397. "403": {
  9398. "$ref": "#/responses/forbidden"
  9399. },
  9400. "404": {
  9401. "$ref": "#/responses/notFound"
  9402. }
  9403. }
  9404. },
  9405. "patch": {
  9406. "consumes": [
  9407. "application/json"
  9408. ],
  9409. "produces": [
  9410. "application/json"
  9411. ],
  9412. "tags": [
  9413. "issue"
  9414. ],
  9415. "summary": "Edit a comment",
  9416. "operationId": "issueEditComment",
  9417. "parameters": [
  9418. {
  9419. "type": "string",
  9420. "description": "owner of the repo",
  9421. "name": "owner",
  9422. "in": "path",
  9423. "required": true
  9424. },
  9425. {
  9426. "type": "string",
  9427. "description": "name of the repo",
  9428. "name": "repo",
  9429. "in": "path",
  9430. "required": true
  9431. },
  9432. {
  9433. "type": "integer",
  9434. "format": "int64",
  9435. "description": "id of the comment to edit",
  9436. "name": "id",
  9437. "in": "path",
  9438. "required": true
  9439. },
  9440. {
  9441. "name": "body",
  9442. "in": "body",
  9443. "schema": {
  9444. "$ref": "#/definitions/EditIssueCommentOption"
  9445. }
  9446. }
  9447. ],
  9448. "responses": {
  9449. "200": {
  9450. "$ref": "#/responses/Comment"
  9451. },
  9452. "204": {
  9453. "$ref": "#/responses/empty"
  9454. },
  9455. "403": {
  9456. "$ref": "#/responses/forbidden"
  9457. },
  9458. "404": {
  9459. "$ref": "#/responses/notFound"
  9460. },
  9461. "423": {
  9462. "$ref": "#/responses/repoArchivedError"
  9463. }
  9464. }
  9465. }
  9466. },
  9467. "/repos/{owner}/{repo}/issues/comments/{id}/assets": {
  9468. "get": {
  9469. "produces": [
  9470. "application/json"
  9471. ],
  9472. "tags": [
  9473. "issue"
  9474. ],
  9475. "summary": "List comment's attachments",
  9476. "operationId": "issueListIssueCommentAttachments",
  9477. "parameters": [
  9478. {
  9479. "type": "string",
  9480. "description": "owner of the repo",
  9481. "name": "owner",
  9482. "in": "path",
  9483. "required": true
  9484. },
  9485. {
  9486. "type": "string",
  9487. "description": "name of the repo",
  9488. "name": "repo",
  9489. "in": "path",
  9490. "required": true
  9491. },
  9492. {
  9493. "type": "integer",
  9494. "format": "int64",
  9495. "description": "id of the comment",
  9496. "name": "id",
  9497. "in": "path",
  9498. "required": true
  9499. }
  9500. ],
  9501. "responses": {
  9502. "200": {
  9503. "$ref": "#/responses/AttachmentList"
  9504. },
  9505. "404": {
  9506. "$ref": "#/responses/error"
  9507. }
  9508. }
  9509. },
  9510. "post": {
  9511. "consumes": [
  9512. "multipart/form-data"
  9513. ],
  9514. "produces": [
  9515. "application/json"
  9516. ],
  9517. "tags": [
  9518. "issue"
  9519. ],
  9520. "summary": "Create a comment attachment",
  9521. "operationId": "issueCreateIssueCommentAttachment",
  9522. "parameters": [
  9523. {
  9524. "type": "string",
  9525. "description": "owner of the repo",
  9526. "name": "owner",
  9527. "in": "path",
  9528. "required": true
  9529. },
  9530. {
  9531. "type": "string",
  9532. "description": "name of the repo",
  9533. "name": "repo",
  9534. "in": "path",
  9535. "required": true
  9536. },
  9537. {
  9538. "type": "integer",
  9539. "format": "int64",
  9540. "description": "id of the comment",
  9541. "name": "id",
  9542. "in": "path",
  9543. "required": true
  9544. },
  9545. {
  9546. "type": "string",
  9547. "description": "name of the attachment",
  9548. "name": "name",
  9549. "in": "query"
  9550. },
  9551. {
  9552. "type": "file",
  9553. "description": "attachment to upload",
  9554. "name": "attachment",
  9555. "in": "formData",
  9556. "required": true
  9557. }
  9558. ],
  9559. "responses": {
  9560. "201": {
  9561. "$ref": "#/responses/Attachment"
  9562. },
  9563. "400": {
  9564. "$ref": "#/responses/error"
  9565. },
  9566. "403": {
  9567. "$ref": "#/responses/forbidden"
  9568. },
  9569. "404": {
  9570. "$ref": "#/responses/error"
  9571. },
  9572. "422": {
  9573. "$ref": "#/responses/validationError"
  9574. },
  9575. "423": {
  9576. "$ref": "#/responses/repoArchivedError"
  9577. }
  9578. }
  9579. }
  9580. },
  9581. "/repos/{owner}/{repo}/issues/comments/{id}/assets/{attachment_id}": {
  9582. "get": {
  9583. "produces": [
  9584. "application/json"
  9585. ],
  9586. "tags": [
  9587. "issue"
  9588. ],
  9589. "summary": "Get a comment attachment",
  9590. "operationId": "issueGetIssueCommentAttachment",
  9591. "parameters": [
  9592. {
  9593. "type": "string",
  9594. "description": "owner of the repo",
  9595. "name": "owner",
  9596. "in": "path",
  9597. "required": true
  9598. },
  9599. {
  9600. "type": "string",
  9601. "description": "name of the repo",
  9602. "name": "repo",
  9603. "in": "path",
  9604. "required": true
  9605. },
  9606. {
  9607. "type": "integer",
  9608. "format": "int64",
  9609. "description": "id of the comment",
  9610. "name": "id",
  9611. "in": "path",
  9612. "required": true
  9613. },
  9614. {
  9615. "type": "integer",
  9616. "format": "int64",
  9617. "description": "id of the attachment to get",
  9618. "name": "attachment_id",
  9619. "in": "path",
  9620. "required": true
  9621. }
  9622. ],
  9623. "responses": {
  9624. "200": {
  9625. "$ref": "#/responses/Attachment"
  9626. },
  9627. "404": {
  9628. "$ref": "#/responses/error"
  9629. }
  9630. }
  9631. },
  9632. "delete": {
  9633. "produces": [
  9634. "application/json"
  9635. ],
  9636. "tags": [
  9637. "issue"
  9638. ],
  9639. "summary": "Delete a comment attachment",
  9640. "operationId": "issueDeleteIssueCommentAttachment",
  9641. "parameters": [
  9642. {
  9643. "type": "string",
  9644. "description": "owner of the repo",
  9645. "name": "owner",
  9646. "in": "path",
  9647. "required": true
  9648. },
  9649. {
  9650. "type": "string",
  9651. "description": "name of the repo",
  9652. "name": "repo",
  9653. "in": "path",
  9654. "required": true
  9655. },
  9656. {
  9657. "type": "integer",
  9658. "format": "int64",
  9659. "description": "id of the comment",
  9660. "name": "id",
  9661. "in": "path",
  9662. "required": true
  9663. },
  9664. {
  9665. "type": "integer",
  9666. "format": "int64",
  9667. "description": "id of the attachment to delete",
  9668. "name": "attachment_id",
  9669. "in": "path",
  9670. "required": true
  9671. }
  9672. ],
  9673. "responses": {
  9674. "204": {
  9675. "$ref": "#/responses/empty"
  9676. },
  9677. "404": {
  9678. "$ref": "#/responses/error"
  9679. },
  9680. "423": {
  9681. "$ref": "#/responses/repoArchivedError"
  9682. }
  9683. }
  9684. },
  9685. "patch": {
  9686. "consumes": [
  9687. "application/json"
  9688. ],
  9689. "produces": [
  9690. "application/json"
  9691. ],
  9692. "tags": [
  9693. "issue"
  9694. ],
  9695. "summary": "Edit a comment attachment",
  9696. "operationId": "issueEditIssueCommentAttachment",
  9697. "parameters": [
  9698. {
  9699. "type": "string",
  9700. "description": "owner of the repo",
  9701. "name": "owner",
  9702. "in": "path",
  9703. "required": true
  9704. },
  9705. {
  9706. "type": "string",
  9707. "description": "name of the repo",
  9708. "name": "repo",
  9709. "in": "path",
  9710. "required": true
  9711. },
  9712. {
  9713. "type": "integer",
  9714. "format": "int64",
  9715. "description": "id of the comment",
  9716. "name": "id",
  9717. "in": "path",
  9718. "required": true
  9719. },
  9720. {
  9721. "type": "integer",
  9722. "format": "int64",
  9723. "description": "id of the attachment to edit",
  9724. "name": "attachment_id",
  9725. "in": "path",
  9726. "required": true
  9727. },
  9728. {
  9729. "name": "body",
  9730. "in": "body",
  9731. "schema": {
  9732. "$ref": "#/definitions/EditAttachmentOptions"
  9733. }
  9734. }
  9735. ],
  9736. "responses": {
  9737. "201": {
  9738. "$ref": "#/responses/Attachment"
  9739. },
  9740. "404": {
  9741. "$ref": "#/responses/error"
  9742. },
  9743. "422": {
  9744. "$ref": "#/responses/validationError"
  9745. },
  9746. "423": {
  9747. "$ref": "#/responses/repoArchivedError"
  9748. }
  9749. }
  9750. }
  9751. },
  9752. "/repos/{owner}/{repo}/issues/comments/{id}/reactions": {
  9753. "get": {
  9754. "consumes": [
  9755. "application/json"
  9756. ],
  9757. "produces": [
  9758. "application/json"
  9759. ],
  9760. "tags": [
  9761. "issue"
  9762. ],
  9763. "summary": "Get a list of reactions from a comment of an issue",
  9764. "operationId": "issueGetCommentReactions",
  9765. "parameters": [
  9766. {
  9767. "type": "string",
  9768. "description": "owner of the repo",
  9769. "name": "owner",
  9770. "in": "path",
  9771. "required": true
  9772. },
  9773. {
  9774. "type": "string",
  9775. "description": "name of the repo",
  9776. "name": "repo",
  9777. "in": "path",
  9778. "required": true
  9779. },
  9780. {
  9781. "type": "integer",
  9782. "format": "int64",
  9783. "description": "id of the comment to edit",
  9784. "name": "id",
  9785. "in": "path",
  9786. "required": true
  9787. }
  9788. ],
  9789. "responses": {
  9790. "200": {
  9791. "$ref": "#/responses/ReactionList"
  9792. },
  9793. "403": {
  9794. "$ref": "#/responses/forbidden"
  9795. },
  9796. "404": {
  9797. "$ref": "#/responses/notFound"
  9798. }
  9799. }
  9800. },
  9801. "post": {
  9802. "consumes": [
  9803. "application/json"
  9804. ],
  9805. "produces": [
  9806. "application/json"
  9807. ],
  9808. "tags": [
  9809. "issue"
  9810. ],
  9811. "summary": "Add a reaction to a comment of an issue",
  9812. "operationId": "issuePostCommentReaction",
  9813. "parameters": [
  9814. {
  9815. "type": "string",
  9816. "description": "owner of the repo",
  9817. "name": "owner",
  9818. "in": "path",
  9819. "required": true
  9820. },
  9821. {
  9822. "type": "string",
  9823. "description": "name of the repo",
  9824. "name": "repo",
  9825. "in": "path",
  9826. "required": true
  9827. },
  9828. {
  9829. "type": "integer",
  9830. "format": "int64",
  9831. "description": "id of the comment to edit",
  9832. "name": "id",
  9833. "in": "path",
  9834. "required": true
  9835. },
  9836. {
  9837. "name": "content",
  9838. "in": "body",
  9839. "schema": {
  9840. "$ref": "#/definitions/EditReactionOption"
  9841. }
  9842. }
  9843. ],
  9844. "responses": {
  9845. "200": {
  9846. "$ref": "#/responses/Reaction"
  9847. },
  9848. "201": {
  9849. "$ref": "#/responses/Reaction"
  9850. },
  9851. "403": {
  9852. "$ref": "#/responses/forbidden"
  9853. },
  9854. "404": {
  9855. "$ref": "#/responses/notFound"
  9856. }
  9857. }
  9858. },
  9859. "delete": {
  9860. "consumes": [
  9861. "application/json"
  9862. ],
  9863. "produces": [
  9864. "application/json"
  9865. ],
  9866. "tags": [
  9867. "issue"
  9868. ],
  9869. "summary": "Remove a reaction from a comment of an issue",
  9870. "operationId": "issueDeleteCommentReaction",
  9871. "parameters": [
  9872. {
  9873. "type": "string",
  9874. "description": "owner of the repo",
  9875. "name": "owner",
  9876. "in": "path",
  9877. "required": true
  9878. },
  9879. {
  9880. "type": "string",
  9881. "description": "name of the repo",
  9882. "name": "repo",
  9883. "in": "path",
  9884. "required": true
  9885. },
  9886. {
  9887. "type": "integer",
  9888. "format": "int64",
  9889. "description": "id of the comment to edit",
  9890. "name": "id",
  9891. "in": "path",
  9892. "required": true
  9893. },
  9894. {
  9895. "name": "content",
  9896. "in": "body",
  9897. "schema": {
  9898. "$ref": "#/definitions/EditReactionOption"
  9899. }
  9900. }
  9901. ],
  9902. "responses": {
  9903. "200": {
  9904. "$ref": "#/responses/empty"
  9905. },
  9906. "403": {
  9907. "$ref": "#/responses/forbidden"
  9908. },
  9909. "404": {
  9910. "$ref": "#/responses/notFound"
  9911. }
  9912. }
  9913. }
  9914. },
  9915. "/repos/{owner}/{repo}/issues/pinned": {
  9916. "get": {
  9917. "produces": [
  9918. "application/json"
  9919. ],
  9920. "tags": [
  9921. "repository"
  9922. ],
  9923. "summary": "List a repo's pinned issues",
  9924. "operationId": "repoListPinnedIssues",
  9925. "parameters": [
  9926. {
  9927. "type": "string",
  9928. "description": "owner of the repo",
  9929. "name": "owner",
  9930. "in": "path",
  9931. "required": true
  9932. },
  9933. {
  9934. "type": "string",
  9935. "description": "name of the repo",
  9936. "name": "repo",
  9937. "in": "path",
  9938. "required": true
  9939. }
  9940. ],
  9941. "responses": {
  9942. "200": {
  9943. "$ref": "#/responses/IssueList"
  9944. },
  9945. "404": {
  9946. "$ref": "#/responses/notFound"
  9947. }
  9948. }
  9949. }
  9950. },
  9951. "/repos/{owner}/{repo}/issues/{index}": {
  9952. "get": {
  9953. "produces": [
  9954. "application/json"
  9955. ],
  9956. "tags": [
  9957. "issue"
  9958. ],
  9959. "summary": "Get an issue",
  9960. "operationId": "issueGetIssue",
  9961. "parameters": [
  9962. {
  9963. "type": "string",
  9964. "description": "owner of the repo",
  9965. "name": "owner",
  9966. "in": "path",
  9967. "required": true
  9968. },
  9969. {
  9970. "type": "string",
  9971. "description": "name of the repo",
  9972. "name": "repo",
  9973. "in": "path",
  9974. "required": true
  9975. },
  9976. {
  9977. "type": "integer",
  9978. "format": "int64",
  9979. "description": "index of the issue to get",
  9980. "name": "index",
  9981. "in": "path",
  9982. "required": true
  9983. }
  9984. ],
  9985. "responses": {
  9986. "200": {
  9987. "$ref": "#/responses/Issue"
  9988. },
  9989. "404": {
  9990. "$ref": "#/responses/notFound"
  9991. }
  9992. }
  9993. },
  9994. "delete": {
  9995. "tags": [
  9996. "issue"
  9997. ],
  9998. "summary": "Delete an issue",
  9999. "operationId": "issueDelete",
  10000. "parameters": [
  10001. {
  10002. "type": "string",
  10003. "description": "owner of the repo",
  10004. "name": "owner",
  10005. "in": "path",
  10006. "required": true
  10007. },
  10008. {
  10009. "type": "string",
  10010. "description": "name of the repo",
  10011. "name": "repo",
  10012. "in": "path",
  10013. "required": true
  10014. },
  10015. {
  10016. "type": "integer",
  10017. "format": "int64",
  10018. "description": "index of issue to delete",
  10019. "name": "index",
  10020. "in": "path",
  10021. "required": true
  10022. }
  10023. ],
  10024. "responses": {
  10025. "204": {
  10026. "$ref": "#/responses/empty"
  10027. },
  10028. "403": {
  10029. "$ref": "#/responses/forbidden"
  10030. },
  10031. "404": {
  10032. "$ref": "#/responses/notFound"
  10033. }
  10034. }
  10035. },
  10036. "patch": {
  10037. "consumes": [
  10038. "application/json"
  10039. ],
  10040. "produces": [
  10041. "application/json"
  10042. ],
  10043. "tags": [
  10044. "issue"
  10045. ],
  10046. "summary": "Edit an issue. If using deadline only the date will be taken into account, and time of day ignored.",
  10047. "operationId": "issueEditIssue",
  10048. "parameters": [
  10049. {
  10050. "type": "string",
  10051. "description": "owner of the repo",
  10052. "name": "owner",
  10053. "in": "path",
  10054. "required": true
  10055. },
  10056. {
  10057. "type": "string",
  10058. "description": "name of the repo",
  10059. "name": "repo",
  10060. "in": "path",
  10061. "required": true
  10062. },
  10063. {
  10064. "type": "integer",
  10065. "format": "int64",
  10066. "description": "index of the issue to edit",
  10067. "name": "index",
  10068. "in": "path",
  10069. "required": true
  10070. },
  10071. {
  10072. "name": "body",
  10073. "in": "body",
  10074. "schema": {
  10075. "$ref": "#/definitions/EditIssueOption"
  10076. }
  10077. }
  10078. ],
  10079. "responses": {
  10080. "201": {
  10081. "$ref": "#/responses/Issue"
  10082. },
  10083. "403": {
  10084. "$ref": "#/responses/forbidden"
  10085. },
  10086. "404": {
  10087. "$ref": "#/responses/notFound"
  10088. },
  10089. "412": {
  10090. "$ref": "#/responses/error"
  10091. }
  10092. }
  10093. }
  10094. },
  10095. "/repos/{owner}/{repo}/issues/{index}/assets": {
  10096. "get": {
  10097. "produces": [
  10098. "application/json"
  10099. ],
  10100. "tags": [
  10101. "issue"
  10102. ],
  10103. "summary": "List issue's attachments",
  10104. "operationId": "issueListIssueAttachments",
  10105. "parameters": [
  10106. {
  10107. "type": "string",
  10108. "description": "owner of the repo",
  10109. "name": "owner",
  10110. "in": "path",
  10111. "required": true
  10112. },
  10113. {
  10114. "type": "string",
  10115. "description": "name of the repo",
  10116. "name": "repo",
  10117. "in": "path",
  10118. "required": true
  10119. },
  10120. {
  10121. "type": "integer",
  10122. "format": "int64",
  10123. "description": "index of the issue",
  10124. "name": "index",
  10125. "in": "path",
  10126. "required": true
  10127. }
  10128. ],
  10129. "responses": {
  10130. "200": {
  10131. "$ref": "#/responses/AttachmentList"
  10132. },
  10133. "404": {
  10134. "$ref": "#/responses/error"
  10135. }
  10136. }
  10137. },
  10138. "post": {
  10139. "consumes": [
  10140. "multipart/form-data"
  10141. ],
  10142. "produces": [
  10143. "application/json"
  10144. ],
  10145. "tags": [
  10146. "issue"
  10147. ],
  10148. "summary": "Create an issue attachment",
  10149. "operationId": "issueCreateIssueAttachment",
  10150. "parameters": [
  10151. {
  10152. "type": "string",
  10153. "description": "owner of the repo",
  10154. "name": "owner",
  10155. "in": "path",
  10156. "required": true
  10157. },
  10158. {
  10159. "type": "string",
  10160. "description": "name of the repo",
  10161. "name": "repo",
  10162. "in": "path",
  10163. "required": true
  10164. },
  10165. {
  10166. "type": "integer",
  10167. "format": "int64",
  10168. "description": "index of the issue",
  10169. "name": "index",
  10170. "in": "path",
  10171. "required": true
  10172. },
  10173. {
  10174. "type": "string",
  10175. "description": "name of the attachment",
  10176. "name": "name",
  10177. "in": "query"
  10178. },
  10179. {
  10180. "type": "file",
  10181. "description": "attachment to upload",
  10182. "name": "attachment",
  10183. "in": "formData",
  10184. "required": true
  10185. }
  10186. ],
  10187. "responses": {
  10188. "201": {
  10189. "$ref": "#/responses/Attachment"
  10190. },
  10191. "400": {
  10192. "$ref": "#/responses/error"
  10193. },
  10194. "404": {
  10195. "$ref": "#/responses/error"
  10196. },
  10197. "422": {
  10198. "$ref": "#/responses/validationError"
  10199. },
  10200. "423": {
  10201. "$ref": "#/responses/repoArchivedError"
  10202. }
  10203. }
  10204. }
  10205. },
  10206. "/repos/{owner}/{repo}/issues/{index}/assets/{attachment_id}": {
  10207. "get": {
  10208. "produces": [
  10209. "application/json"
  10210. ],
  10211. "tags": [
  10212. "issue"
  10213. ],
  10214. "summary": "Get an issue attachment",
  10215. "operationId": "issueGetIssueAttachment",
  10216. "parameters": [
  10217. {
  10218. "type": "string",
  10219. "description": "owner of the repo",
  10220. "name": "owner",
  10221. "in": "path",
  10222. "required": true
  10223. },
  10224. {
  10225. "type": "string",
  10226. "description": "name of the repo",
  10227. "name": "repo",
  10228. "in": "path",
  10229. "required": true
  10230. },
  10231. {
  10232. "type": "integer",
  10233. "format": "int64",
  10234. "description": "index of the issue",
  10235. "name": "index",
  10236. "in": "path",
  10237. "required": true
  10238. },
  10239. {
  10240. "type": "integer",
  10241. "format": "int64",
  10242. "description": "id of the attachment to get",
  10243. "name": "attachment_id",
  10244. "in": "path",
  10245. "required": true
  10246. }
  10247. ],
  10248. "responses": {
  10249. "200": {
  10250. "$ref": "#/responses/Attachment"
  10251. },
  10252. "404": {
  10253. "$ref": "#/responses/error"
  10254. }
  10255. }
  10256. },
  10257. "delete": {
  10258. "produces": [
  10259. "application/json"
  10260. ],
  10261. "tags": [
  10262. "issue"
  10263. ],
  10264. "summary": "Delete an issue attachment",
  10265. "operationId": "issueDeleteIssueAttachment",
  10266. "parameters": [
  10267. {
  10268. "type": "string",
  10269. "description": "owner of the repo",
  10270. "name": "owner",
  10271. "in": "path",
  10272. "required": true
  10273. },
  10274. {
  10275. "type": "string",
  10276. "description": "name of the repo",
  10277. "name": "repo",
  10278. "in": "path",
  10279. "required": true
  10280. },
  10281. {
  10282. "type": "integer",
  10283. "format": "int64",
  10284. "description": "index of the issue",
  10285. "name": "index",
  10286. "in": "path",
  10287. "required": true
  10288. },
  10289. {
  10290. "type": "integer",
  10291. "format": "int64",
  10292. "description": "id of the attachment to delete",
  10293. "name": "attachment_id",
  10294. "in": "path",
  10295. "required": true
  10296. }
  10297. ],
  10298. "responses": {
  10299. "204": {
  10300. "$ref": "#/responses/empty"
  10301. },
  10302. "404": {
  10303. "$ref": "#/responses/error"
  10304. },
  10305. "423": {
  10306. "$ref": "#/responses/repoArchivedError"
  10307. }
  10308. }
  10309. },
  10310. "patch": {
  10311. "consumes": [
  10312. "application/json"
  10313. ],
  10314. "produces": [
  10315. "application/json"
  10316. ],
  10317. "tags": [
  10318. "issue"
  10319. ],
  10320. "summary": "Edit an issue attachment",
  10321. "operationId": "issueEditIssueAttachment",
  10322. "parameters": [
  10323. {
  10324. "type": "string",
  10325. "description": "owner of the repo",
  10326. "name": "owner",
  10327. "in": "path",
  10328. "required": true
  10329. },
  10330. {
  10331. "type": "string",
  10332. "description": "name of the repo",
  10333. "name": "repo",
  10334. "in": "path",
  10335. "required": true
  10336. },
  10337. {
  10338. "type": "integer",
  10339. "format": "int64",
  10340. "description": "index of the issue",
  10341. "name": "index",
  10342. "in": "path",
  10343. "required": true
  10344. },
  10345. {
  10346. "type": "integer",
  10347. "format": "int64",
  10348. "description": "id of the attachment to edit",
  10349. "name": "attachment_id",
  10350. "in": "path",
  10351. "required": true
  10352. },
  10353. {
  10354. "name": "body",
  10355. "in": "body",
  10356. "schema": {
  10357. "$ref": "#/definitions/EditAttachmentOptions"
  10358. }
  10359. }
  10360. ],
  10361. "responses": {
  10362. "201": {
  10363. "$ref": "#/responses/Attachment"
  10364. },
  10365. "404": {
  10366. "$ref": "#/responses/error"
  10367. },
  10368. "422": {
  10369. "$ref": "#/responses/validationError"
  10370. },
  10371. "423": {
  10372. "$ref": "#/responses/repoArchivedError"
  10373. }
  10374. }
  10375. }
  10376. },
  10377. "/repos/{owner}/{repo}/issues/{index}/blocks": {
  10378. "get": {
  10379. "produces": [
  10380. "application/json"
  10381. ],
  10382. "tags": [
  10383. "issue"
  10384. ],
  10385. "summary": "List issues that are blocked by this issue",
  10386. "operationId": "issueListBlocks",
  10387. "parameters": [
  10388. {
  10389. "type": "string",
  10390. "description": "owner of the repo",
  10391. "name": "owner",
  10392. "in": "path",
  10393. "required": true
  10394. },
  10395. {
  10396. "type": "string",
  10397. "description": "name of the repo",
  10398. "name": "repo",
  10399. "in": "path",
  10400. "required": true
  10401. },
  10402. {
  10403. "type": "string",
  10404. "description": "index of the issue",
  10405. "name": "index",
  10406. "in": "path",
  10407. "required": true
  10408. },
  10409. {
  10410. "type": "integer",
  10411. "description": "page number of results to return (1-based)",
  10412. "name": "page",
  10413. "in": "query"
  10414. },
  10415. {
  10416. "type": "integer",
  10417. "description": "page size of results",
  10418. "name": "limit",
  10419. "in": "query"
  10420. }
  10421. ],
  10422. "responses": {
  10423. "200": {
  10424. "$ref": "#/responses/IssueList"
  10425. },
  10426. "404": {
  10427. "$ref": "#/responses/notFound"
  10428. }
  10429. }
  10430. },
  10431. "post": {
  10432. "produces": [
  10433. "application/json"
  10434. ],
  10435. "tags": [
  10436. "issue"
  10437. ],
  10438. "summary": "Block the issue given in the body by the issue in path",
  10439. "operationId": "issueCreateIssueBlocking",
  10440. "parameters": [
  10441. {
  10442. "type": "string",
  10443. "description": "owner of the repo",
  10444. "name": "owner",
  10445. "in": "path",
  10446. "required": true
  10447. },
  10448. {
  10449. "type": "string",
  10450. "description": "name of the repo",
  10451. "name": "repo",
  10452. "in": "path",
  10453. "required": true
  10454. },
  10455. {
  10456. "type": "string",
  10457. "description": "index of the issue",
  10458. "name": "index",
  10459. "in": "path",
  10460. "required": true
  10461. },
  10462. {
  10463. "name": "body",
  10464. "in": "body",
  10465. "schema": {
  10466. "$ref": "#/definitions/IssueMeta"
  10467. }
  10468. }
  10469. ],
  10470. "responses": {
  10471. "201": {
  10472. "$ref": "#/responses/Issue"
  10473. },
  10474. "404": {
  10475. "description": "the issue does not exist"
  10476. }
  10477. }
  10478. },
  10479. "delete": {
  10480. "produces": [
  10481. "application/json"
  10482. ],
  10483. "tags": [
  10484. "issue"
  10485. ],
  10486. "summary": "Unblock the issue given in the body by the issue in path",
  10487. "operationId": "issueRemoveIssueBlocking",
  10488. "parameters": [
  10489. {
  10490. "type": "string",
  10491. "description": "owner of the repo",
  10492. "name": "owner",
  10493. "in": "path",
  10494. "required": true
  10495. },
  10496. {
  10497. "type": "string",
  10498. "description": "name of the repo",
  10499. "name": "repo",
  10500. "in": "path",
  10501. "required": true
  10502. },
  10503. {
  10504. "type": "string",
  10505. "description": "index of the issue",
  10506. "name": "index",
  10507. "in": "path",
  10508. "required": true
  10509. },
  10510. {
  10511. "name": "body",
  10512. "in": "body",
  10513. "schema": {
  10514. "$ref": "#/definitions/IssueMeta"
  10515. }
  10516. }
  10517. ],
  10518. "responses": {
  10519. "200": {
  10520. "$ref": "#/responses/Issue"
  10521. },
  10522. "404": {
  10523. "$ref": "#/responses/notFound"
  10524. }
  10525. }
  10526. }
  10527. },
  10528. "/repos/{owner}/{repo}/issues/{index}/comments": {
  10529. "get": {
  10530. "produces": [
  10531. "application/json"
  10532. ],
  10533. "tags": [
  10534. "issue"
  10535. ],
  10536. "summary": "List all comments on an issue",
  10537. "operationId": "issueGetComments",
  10538. "parameters": [
  10539. {
  10540. "type": "string",
  10541. "description": "owner of the repo",
  10542. "name": "owner",
  10543. "in": "path",
  10544. "required": true
  10545. },
  10546. {
  10547. "type": "string",
  10548. "description": "name of the repo",
  10549. "name": "repo",
  10550. "in": "path",
  10551. "required": true
  10552. },
  10553. {
  10554. "type": "integer",
  10555. "format": "int64",
  10556. "description": "index of the issue",
  10557. "name": "index",
  10558. "in": "path",
  10559. "required": true
  10560. },
  10561. {
  10562. "type": "string",
  10563. "format": "date-time",
  10564. "description": "if provided, only comments updated since the specified time are returned.",
  10565. "name": "since",
  10566. "in": "query"
  10567. },
  10568. {
  10569. "type": "string",
  10570. "format": "date-time",
  10571. "description": "if provided, only comments updated before the provided time are returned.",
  10572. "name": "before",
  10573. "in": "query"
  10574. }
  10575. ],
  10576. "responses": {
  10577. "200": {
  10578. "$ref": "#/responses/CommentList"
  10579. },
  10580. "404": {
  10581. "$ref": "#/responses/notFound"
  10582. }
  10583. }
  10584. },
  10585. "post": {
  10586. "consumes": [
  10587. "application/json"
  10588. ],
  10589. "produces": [
  10590. "application/json"
  10591. ],
  10592. "tags": [
  10593. "issue"
  10594. ],
  10595. "summary": "Add a comment to an issue",
  10596. "operationId": "issueCreateComment",
  10597. "parameters": [
  10598. {
  10599. "type": "string",
  10600. "description": "owner of the repo",
  10601. "name": "owner",
  10602. "in": "path",
  10603. "required": true
  10604. },
  10605. {
  10606. "type": "string",
  10607. "description": "name of the repo",
  10608. "name": "repo",
  10609. "in": "path",
  10610. "required": true
  10611. },
  10612. {
  10613. "type": "integer",
  10614. "format": "int64",
  10615. "description": "index of the issue",
  10616. "name": "index",
  10617. "in": "path",
  10618. "required": true
  10619. },
  10620. {
  10621. "name": "body",
  10622. "in": "body",
  10623. "schema": {
  10624. "$ref": "#/definitions/CreateIssueCommentOption"
  10625. }
  10626. }
  10627. ],
  10628. "responses": {
  10629. "201": {
  10630. "$ref": "#/responses/Comment"
  10631. },
  10632. "403": {
  10633. "$ref": "#/responses/forbidden"
  10634. },
  10635. "404": {
  10636. "$ref": "#/responses/notFound"
  10637. },
  10638. "423": {
  10639. "$ref": "#/responses/repoArchivedError"
  10640. }
  10641. }
  10642. }
  10643. },
  10644. "/repos/{owner}/{repo}/issues/{index}/comments/{id}": {
  10645. "delete": {
  10646. "tags": [
  10647. "issue"
  10648. ],
  10649. "summary": "Delete a comment",
  10650. "operationId": "issueDeleteCommentDeprecated",
  10651. "deprecated": true,
  10652. "parameters": [
  10653. {
  10654. "type": "string",
  10655. "description": "owner of the repo",
  10656. "name": "owner",
  10657. "in": "path",
  10658. "required": true
  10659. },
  10660. {
  10661. "type": "string",
  10662. "description": "name of the repo",
  10663. "name": "repo",
  10664. "in": "path",
  10665. "required": true
  10666. },
  10667. {
  10668. "type": "integer",
  10669. "description": "this parameter is ignored",
  10670. "name": "index",
  10671. "in": "path",
  10672. "required": true
  10673. },
  10674. {
  10675. "type": "integer",
  10676. "format": "int64",
  10677. "description": "id of comment to delete",
  10678. "name": "id",
  10679. "in": "path",
  10680. "required": true
  10681. }
  10682. ],
  10683. "responses": {
  10684. "204": {
  10685. "$ref": "#/responses/empty"
  10686. },
  10687. "403": {
  10688. "$ref": "#/responses/forbidden"
  10689. },
  10690. "404": {
  10691. "$ref": "#/responses/notFound"
  10692. }
  10693. }
  10694. },
  10695. "patch": {
  10696. "consumes": [
  10697. "application/json"
  10698. ],
  10699. "produces": [
  10700. "application/json"
  10701. ],
  10702. "tags": [
  10703. "issue"
  10704. ],
  10705. "summary": "Edit a comment",
  10706. "operationId": "issueEditCommentDeprecated",
  10707. "deprecated": true,
  10708. "parameters": [
  10709. {
  10710. "type": "string",
  10711. "description": "owner of the repo",
  10712. "name": "owner",
  10713. "in": "path",
  10714. "required": true
  10715. },
  10716. {
  10717. "type": "string",
  10718. "description": "name of the repo",
  10719. "name": "repo",
  10720. "in": "path",
  10721. "required": true
  10722. },
  10723. {
  10724. "type": "integer",
  10725. "description": "this parameter is ignored",
  10726. "name": "index",
  10727. "in": "path",
  10728. "required": true
  10729. },
  10730. {
  10731. "type": "integer",
  10732. "format": "int64",
  10733. "description": "id of the comment to edit",
  10734. "name": "id",
  10735. "in": "path",
  10736. "required": true
  10737. },
  10738. {
  10739. "name": "body",
  10740. "in": "body",
  10741. "schema": {
  10742. "$ref": "#/definitions/EditIssueCommentOption"
  10743. }
  10744. }
  10745. ],
  10746. "responses": {
  10747. "200": {
  10748. "$ref": "#/responses/Comment"
  10749. },
  10750. "204": {
  10751. "$ref": "#/responses/empty"
  10752. },
  10753. "403": {
  10754. "$ref": "#/responses/forbidden"
  10755. },
  10756. "404": {
  10757. "$ref": "#/responses/notFound"
  10758. }
  10759. }
  10760. }
  10761. },
  10762. "/repos/{owner}/{repo}/issues/{index}/deadline": {
  10763. "post": {
  10764. "consumes": [
  10765. "application/json"
  10766. ],
  10767. "produces": [
  10768. "application/json"
  10769. ],
  10770. "tags": [
  10771. "issue"
  10772. ],
  10773. "summary": "Set an issue deadline. If set to null, the deadline is deleted. If using deadline only the date will be taken into account, and time of day ignored.",
  10774. "operationId": "issueEditIssueDeadline",
  10775. "parameters": [
  10776. {
  10777. "type": "string",
  10778. "description": "owner of the repo",
  10779. "name": "owner",
  10780. "in": "path",
  10781. "required": true
  10782. },
  10783. {
  10784. "type": "string",
  10785. "description": "name of the repo",
  10786. "name": "repo",
  10787. "in": "path",
  10788. "required": true
  10789. },
  10790. {
  10791. "type": "integer",
  10792. "format": "int64",
  10793. "description": "index of the issue to create or update a deadline on",
  10794. "name": "index",
  10795. "in": "path",
  10796. "required": true
  10797. },
  10798. {
  10799. "name": "body",
  10800. "in": "body",
  10801. "schema": {
  10802. "$ref": "#/definitions/EditDeadlineOption"
  10803. }
  10804. }
  10805. ],
  10806. "responses": {
  10807. "201": {
  10808. "$ref": "#/responses/IssueDeadline"
  10809. },
  10810. "403": {
  10811. "$ref": "#/responses/forbidden"
  10812. },
  10813. "404": {
  10814. "$ref": "#/responses/notFound"
  10815. }
  10816. }
  10817. }
  10818. },
  10819. "/repos/{owner}/{repo}/issues/{index}/dependencies": {
  10820. "get": {
  10821. "produces": [
  10822. "application/json"
  10823. ],
  10824. "tags": [
  10825. "issue"
  10826. ],
  10827. "summary": "List an issue's dependencies, i.e all issues that block this issue.",
  10828. "operationId": "issueListIssueDependencies",
  10829. "parameters": [
  10830. {
  10831. "type": "string",
  10832. "description": "owner of the repo",
  10833. "name": "owner",
  10834. "in": "path",
  10835. "required": true
  10836. },
  10837. {
  10838. "type": "string",
  10839. "description": "name of the repo",
  10840. "name": "repo",
  10841. "in": "path",
  10842. "required": true
  10843. },
  10844. {
  10845. "type": "string",
  10846. "description": "index of the issue",
  10847. "name": "index",
  10848. "in": "path",
  10849. "required": true
  10850. },
  10851. {
  10852. "type": "integer",
  10853. "description": "page number of results to return (1-based)",
  10854. "name": "page",
  10855. "in": "query"
  10856. },
  10857. {
  10858. "type": "integer",
  10859. "description": "page size of results",
  10860. "name": "limit",
  10861. "in": "query"
  10862. }
  10863. ],
  10864. "responses": {
  10865. "200": {
  10866. "$ref": "#/responses/IssueList"
  10867. },
  10868. "404": {
  10869. "$ref": "#/responses/notFound"
  10870. }
  10871. }
  10872. },
  10873. "post": {
  10874. "produces": [
  10875. "application/json"
  10876. ],
  10877. "tags": [
  10878. "issue"
  10879. ],
  10880. "summary": "Make the issue in the url depend on the issue in the form.",
  10881. "operationId": "issueCreateIssueDependencies",
  10882. "parameters": [
  10883. {
  10884. "type": "string",
  10885. "description": "owner of the repo",
  10886. "name": "owner",
  10887. "in": "path",
  10888. "required": true
  10889. },
  10890. {
  10891. "type": "string",
  10892. "description": "name of the repo",
  10893. "name": "repo",
  10894. "in": "path",
  10895. "required": true
  10896. },
  10897. {
  10898. "type": "string",
  10899. "description": "index of the issue",
  10900. "name": "index",
  10901. "in": "path",
  10902. "required": true
  10903. },
  10904. {
  10905. "name": "body",
  10906. "in": "body",
  10907. "schema": {
  10908. "$ref": "#/definitions/IssueMeta"
  10909. }
  10910. }
  10911. ],
  10912. "responses": {
  10913. "201": {
  10914. "$ref": "#/responses/Issue"
  10915. },
  10916. "404": {
  10917. "description": "the issue does not exist"
  10918. },
  10919. "423": {
  10920. "$ref": "#/responses/repoArchivedError"
  10921. }
  10922. }
  10923. },
  10924. "delete": {
  10925. "produces": [
  10926. "application/json"
  10927. ],
  10928. "tags": [
  10929. "issue"
  10930. ],
  10931. "summary": "Remove an issue dependency",
  10932. "operationId": "issueRemoveIssueDependencies",
  10933. "parameters": [
  10934. {
  10935. "type": "string",
  10936. "description": "owner of the repo",
  10937. "name": "owner",
  10938. "in": "path",
  10939. "required": true
  10940. },
  10941. {
  10942. "type": "string",
  10943. "description": "name of the repo",
  10944. "name": "repo",
  10945. "in": "path",
  10946. "required": true
  10947. },
  10948. {
  10949. "type": "string",
  10950. "description": "index of the issue",
  10951. "name": "index",
  10952. "in": "path",
  10953. "required": true
  10954. },
  10955. {
  10956. "name": "body",
  10957. "in": "body",
  10958. "schema": {
  10959. "$ref": "#/definitions/IssueMeta"
  10960. }
  10961. }
  10962. ],
  10963. "responses": {
  10964. "200": {
  10965. "$ref": "#/responses/Issue"
  10966. },
  10967. "404": {
  10968. "$ref": "#/responses/notFound"
  10969. },
  10970. "423": {
  10971. "$ref": "#/responses/repoArchivedError"
  10972. }
  10973. }
  10974. }
  10975. },
  10976. "/repos/{owner}/{repo}/issues/{index}/labels": {
  10977. "get": {
  10978. "produces": [
  10979. "application/json"
  10980. ],
  10981. "tags": [
  10982. "issue"
  10983. ],
  10984. "summary": "Get an issue's labels",
  10985. "operationId": "issueGetLabels",
  10986. "parameters": [
  10987. {
  10988. "type": "string",
  10989. "description": "owner of the repo",
  10990. "name": "owner",
  10991. "in": "path",
  10992. "required": true
  10993. },
  10994. {
  10995. "type": "string",
  10996. "description": "name of the repo",
  10997. "name": "repo",
  10998. "in": "path",
  10999. "required": true
  11000. },
  11001. {
  11002. "type": "integer",
  11003. "format": "int64",
  11004. "description": "index of the issue",
  11005. "name": "index",
  11006. "in": "path",
  11007. "required": true
  11008. }
  11009. ],
  11010. "responses": {
  11011. "200": {
  11012. "$ref": "#/responses/LabelList"
  11013. },
  11014. "404": {
  11015. "$ref": "#/responses/notFound"
  11016. }
  11017. }
  11018. },
  11019. "put": {
  11020. "consumes": [
  11021. "application/json"
  11022. ],
  11023. "produces": [
  11024. "application/json"
  11025. ],
  11026. "tags": [
  11027. "issue"
  11028. ],
  11029. "summary": "Replace an issue's labels",
  11030. "operationId": "issueReplaceLabels",
  11031. "parameters": [
  11032. {
  11033. "type": "string",
  11034. "description": "owner of the repo",
  11035. "name": "owner",
  11036. "in": "path",
  11037. "required": true
  11038. },
  11039. {
  11040. "type": "string",
  11041. "description": "name of the repo",
  11042. "name": "repo",
  11043. "in": "path",
  11044. "required": true
  11045. },
  11046. {
  11047. "type": "integer",
  11048. "format": "int64",
  11049. "description": "index of the issue",
  11050. "name": "index",
  11051. "in": "path",
  11052. "required": true
  11053. },
  11054. {
  11055. "name": "body",
  11056. "in": "body",
  11057. "schema": {
  11058. "$ref": "#/definitions/IssueLabelsOption"
  11059. }
  11060. }
  11061. ],
  11062. "responses": {
  11063. "200": {
  11064. "$ref": "#/responses/LabelList"
  11065. },
  11066. "403": {
  11067. "$ref": "#/responses/forbidden"
  11068. },
  11069. "404": {
  11070. "$ref": "#/responses/notFound"
  11071. }
  11072. }
  11073. },
  11074. "post": {
  11075. "consumes": [
  11076. "application/json"
  11077. ],
  11078. "produces": [
  11079. "application/json"
  11080. ],
  11081. "tags": [
  11082. "issue"
  11083. ],
  11084. "summary": "Add a label to an issue",
  11085. "operationId": "issueAddLabel",
  11086. "parameters": [
  11087. {
  11088. "type": "string",
  11089. "description": "owner of the repo",
  11090. "name": "owner",
  11091. "in": "path",
  11092. "required": true
  11093. },
  11094. {
  11095. "type": "string",
  11096. "description": "name of the repo",
  11097. "name": "repo",
  11098. "in": "path",
  11099. "required": true
  11100. },
  11101. {
  11102. "type": "integer",
  11103. "format": "int64",
  11104. "description": "index of the issue",
  11105. "name": "index",
  11106. "in": "path",
  11107. "required": true
  11108. },
  11109. {
  11110. "name": "body",
  11111. "in": "body",
  11112. "schema": {
  11113. "$ref": "#/definitions/IssueLabelsOption"
  11114. }
  11115. }
  11116. ],
  11117. "responses": {
  11118. "200": {
  11119. "$ref": "#/responses/LabelList"
  11120. },
  11121. "403": {
  11122. "$ref": "#/responses/forbidden"
  11123. },
  11124. "404": {
  11125. "$ref": "#/responses/notFound"
  11126. }
  11127. }
  11128. },
  11129. "delete": {
  11130. "produces": [
  11131. "application/json"
  11132. ],
  11133. "tags": [
  11134. "issue"
  11135. ],
  11136. "summary": "Remove all labels from an issue",
  11137. "operationId": "issueClearLabels",
  11138. "parameters": [
  11139. {
  11140. "type": "string",
  11141. "description": "owner of the repo",
  11142. "name": "owner",
  11143. "in": "path",
  11144. "required": true
  11145. },
  11146. {
  11147. "type": "string",
  11148. "description": "name of the repo",
  11149. "name": "repo",
  11150. "in": "path",
  11151. "required": true
  11152. },
  11153. {
  11154. "type": "integer",
  11155. "format": "int64",
  11156. "description": "index of the issue",
  11157. "name": "index",
  11158. "in": "path",
  11159. "required": true
  11160. }
  11161. ],
  11162. "responses": {
  11163. "204": {
  11164. "$ref": "#/responses/empty"
  11165. },
  11166. "403": {
  11167. "$ref": "#/responses/forbidden"
  11168. },
  11169. "404": {
  11170. "$ref": "#/responses/notFound"
  11171. }
  11172. }
  11173. }
  11174. },
  11175. "/repos/{owner}/{repo}/issues/{index}/labels/{id}": {
  11176. "delete": {
  11177. "produces": [
  11178. "application/json"
  11179. ],
  11180. "tags": [
  11181. "issue"
  11182. ],
  11183. "summary": "Remove a label from an issue",
  11184. "operationId": "issueRemoveLabel",
  11185. "parameters": [
  11186. {
  11187. "type": "string",
  11188. "description": "owner of the repo",
  11189. "name": "owner",
  11190. "in": "path",
  11191. "required": true
  11192. },
  11193. {
  11194. "type": "string",
  11195. "description": "name of the repo",
  11196. "name": "repo",
  11197. "in": "path",
  11198. "required": true
  11199. },
  11200. {
  11201. "type": "integer",
  11202. "format": "int64",
  11203. "description": "index of the issue",
  11204. "name": "index",
  11205. "in": "path",
  11206. "required": true
  11207. },
  11208. {
  11209. "type": "integer",
  11210. "format": "int64",
  11211. "description": "id of the label to remove",
  11212. "name": "id",
  11213. "in": "path",
  11214. "required": true
  11215. }
  11216. ],
  11217. "responses": {
  11218. "204": {
  11219. "$ref": "#/responses/empty"
  11220. },
  11221. "403": {
  11222. "$ref": "#/responses/forbidden"
  11223. },
  11224. "404": {
  11225. "$ref": "#/responses/notFound"
  11226. },
  11227. "422": {
  11228. "$ref": "#/responses/validationError"
  11229. }
  11230. }
  11231. }
  11232. },
  11233. "/repos/{owner}/{repo}/issues/{index}/lock": {
  11234. "put": {
  11235. "consumes": [
  11236. "application/json"
  11237. ],
  11238. "produces": [
  11239. "application/json"
  11240. ],
  11241. "tags": [
  11242. "issue"
  11243. ],
  11244. "summary": "Lock an issue",
  11245. "operationId": "issueLockIssue",
  11246. "parameters": [
  11247. {
  11248. "type": "string",
  11249. "description": "owner of the repo",
  11250. "name": "owner",
  11251. "in": "path",
  11252. "required": true
  11253. },
  11254. {
  11255. "type": "string",
  11256. "description": "name of the repo",
  11257. "name": "repo",
  11258. "in": "path",
  11259. "required": true
  11260. },
  11261. {
  11262. "type": "integer",
  11263. "format": "int64",
  11264. "description": "index of the issue",
  11265. "name": "index",
  11266. "in": "path",
  11267. "required": true
  11268. },
  11269. {
  11270. "name": "body",
  11271. "in": "body",
  11272. "schema": {
  11273. "$ref": "#/definitions/LockIssueOption"
  11274. }
  11275. }
  11276. ],
  11277. "responses": {
  11278. "204": {
  11279. "$ref": "#/responses/empty"
  11280. },
  11281. "403": {
  11282. "$ref": "#/responses/forbidden"
  11283. },
  11284. "404": {
  11285. "$ref": "#/responses/notFound"
  11286. }
  11287. }
  11288. },
  11289. "delete": {
  11290. "consumes": [
  11291. "application/json"
  11292. ],
  11293. "produces": [
  11294. "application/json"
  11295. ],
  11296. "tags": [
  11297. "issue"
  11298. ],
  11299. "summary": "Unlock an issue",
  11300. "operationId": "issueUnlockIssue",
  11301. "parameters": [
  11302. {
  11303. "type": "string",
  11304. "description": "owner of the repo",
  11305. "name": "owner",
  11306. "in": "path",
  11307. "required": true
  11308. },
  11309. {
  11310. "type": "string",
  11311. "description": "name of the repo",
  11312. "name": "repo",
  11313. "in": "path",
  11314. "required": true
  11315. },
  11316. {
  11317. "type": "integer",
  11318. "format": "int64",
  11319. "description": "index of the issue",
  11320. "name": "index",
  11321. "in": "path",
  11322. "required": true
  11323. }
  11324. ],
  11325. "responses": {
  11326. "204": {
  11327. "$ref": "#/responses/empty"
  11328. },
  11329. "403": {
  11330. "$ref": "#/responses/forbidden"
  11331. },
  11332. "404": {
  11333. "$ref": "#/responses/notFound"
  11334. }
  11335. }
  11336. }
  11337. },
  11338. "/repos/{owner}/{repo}/issues/{index}/pin": {
  11339. "post": {
  11340. "tags": [
  11341. "issue"
  11342. ],
  11343. "summary": "Pin an Issue",
  11344. "operationId": "pinIssue",
  11345. "parameters": [
  11346. {
  11347. "type": "string",
  11348. "description": "owner of the repo",
  11349. "name": "owner",
  11350. "in": "path",
  11351. "required": true
  11352. },
  11353. {
  11354. "type": "string",
  11355. "description": "name of the repo",
  11356. "name": "repo",
  11357. "in": "path",
  11358. "required": true
  11359. },
  11360. {
  11361. "type": "integer",
  11362. "format": "int64",
  11363. "description": "index of issue to pin",
  11364. "name": "index",
  11365. "in": "path",
  11366. "required": true
  11367. }
  11368. ],
  11369. "responses": {
  11370. "204": {
  11371. "$ref": "#/responses/empty"
  11372. },
  11373. "403": {
  11374. "$ref": "#/responses/forbidden"
  11375. },
  11376. "404": {
  11377. "$ref": "#/responses/notFound"
  11378. }
  11379. }
  11380. },
  11381. "delete": {
  11382. "tags": [
  11383. "issue"
  11384. ],
  11385. "summary": "Unpin an Issue",
  11386. "operationId": "unpinIssue",
  11387. "parameters": [
  11388. {
  11389. "type": "string",
  11390. "description": "owner of the repo",
  11391. "name": "owner",
  11392. "in": "path",
  11393. "required": true
  11394. },
  11395. {
  11396. "type": "string",
  11397. "description": "name of the repo",
  11398. "name": "repo",
  11399. "in": "path",
  11400. "required": true
  11401. },
  11402. {
  11403. "type": "integer",
  11404. "format": "int64",
  11405. "description": "index of issue to unpin",
  11406. "name": "index",
  11407. "in": "path",
  11408. "required": true
  11409. }
  11410. ],
  11411. "responses": {
  11412. "204": {
  11413. "$ref": "#/responses/empty"
  11414. },
  11415. "403": {
  11416. "$ref": "#/responses/forbidden"
  11417. },
  11418. "404": {
  11419. "$ref": "#/responses/notFound"
  11420. }
  11421. }
  11422. }
  11423. },
  11424. "/repos/{owner}/{repo}/issues/{index}/pin/{position}": {
  11425. "patch": {
  11426. "tags": [
  11427. "issue"
  11428. ],
  11429. "summary": "Moves the Pin to the given Position",
  11430. "operationId": "moveIssuePin",
  11431. "parameters": [
  11432. {
  11433. "type": "string",
  11434. "description": "owner of the repo",
  11435. "name": "owner",
  11436. "in": "path",
  11437. "required": true
  11438. },
  11439. {
  11440. "type": "string",
  11441. "description": "name of the repo",
  11442. "name": "repo",
  11443. "in": "path",
  11444. "required": true
  11445. },
  11446. {
  11447. "type": "integer",
  11448. "format": "int64",
  11449. "description": "index of issue",
  11450. "name": "index",
  11451. "in": "path",
  11452. "required": true
  11453. },
  11454. {
  11455. "type": "integer",
  11456. "format": "int64",
  11457. "description": "the new position",
  11458. "name": "position",
  11459. "in": "path",
  11460. "required": true
  11461. }
  11462. ],
  11463. "responses": {
  11464. "204": {
  11465. "$ref": "#/responses/empty"
  11466. },
  11467. "403": {
  11468. "$ref": "#/responses/forbidden"
  11469. },
  11470. "404": {
  11471. "$ref": "#/responses/notFound"
  11472. }
  11473. }
  11474. }
  11475. },
  11476. "/repos/{owner}/{repo}/issues/{index}/reactions": {
  11477. "get": {
  11478. "consumes": [
  11479. "application/json"
  11480. ],
  11481. "produces": [
  11482. "application/json"
  11483. ],
  11484. "tags": [
  11485. "issue"
  11486. ],
  11487. "summary": "Get a list reactions of an issue",
  11488. "operationId": "issueGetIssueReactions",
  11489. "parameters": [
  11490. {
  11491. "type": "string",
  11492. "description": "owner of the repo",
  11493. "name": "owner",
  11494. "in": "path",
  11495. "required": true
  11496. },
  11497. {
  11498. "type": "string",
  11499. "description": "name of the repo",
  11500. "name": "repo",
  11501. "in": "path",
  11502. "required": true
  11503. },
  11504. {
  11505. "type": "integer",
  11506. "format": "int64",
  11507. "description": "index of the issue",
  11508. "name": "index",
  11509. "in": "path",
  11510. "required": true
  11511. },
  11512. {
  11513. "type": "integer",
  11514. "description": "page number of results to return (1-based)",
  11515. "name": "page",
  11516. "in": "query"
  11517. },
  11518. {
  11519. "type": "integer",
  11520. "description": "page size of results",
  11521. "name": "limit",
  11522. "in": "query"
  11523. }
  11524. ],
  11525. "responses": {
  11526. "200": {
  11527. "$ref": "#/responses/ReactionList"
  11528. },
  11529. "403": {
  11530. "$ref": "#/responses/forbidden"
  11531. },
  11532. "404": {
  11533. "$ref": "#/responses/notFound"
  11534. }
  11535. }
  11536. },
  11537. "post": {
  11538. "consumes": [
  11539. "application/json"
  11540. ],
  11541. "produces": [
  11542. "application/json"
  11543. ],
  11544. "tags": [
  11545. "issue"
  11546. ],
  11547. "summary": "Add a reaction to an issue",
  11548. "operationId": "issuePostIssueReaction",
  11549. "parameters": [
  11550. {
  11551. "type": "string",
  11552. "description": "owner of the repo",
  11553. "name": "owner",
  11554. "in": "path",
  11555. "required": true
  11556. },
  11557. {
  11558. "type": "string",
  11559. "description": "name of the repo",
  11560. "name": "repo",
  11561. "in": "path",
  11562. "required": true
  11563. },
  11564. {
  11565. "type": "integer",
  11566. "format": "int64",
  11567. "description": "index of the issue",
  11568. "name": "index",
  11569. "in": "path",
  11570. "required": true
  11571. },
  11572. {
  11573. "name": "content",
  11574. "in": "body",
  11575. "schema": {
  11576. "$ref": "#/definitions/EditReactionOption"
  11577. }
  11578. }
  11579. ],
  11580. "responses": {
  11581. "200": {
  11582. "$ref": "#/responses/Reaction"
  11583. },
  11584. "201": {
  11585. "$ref": "#/responses/Reaction"
  11586. },
  11587. "403": {
  11588. "$ref": "#/responses/forbidden"
  11589. },
  11590. "404": {
  11591. "$ref": "#/responses/notFound"
  11592. }
  11593. }
  11594. },
  11595. "delete": {
  11596. "consumes": [
  11597. "application/json"
  11598. ],
  11599. "produces": [
  11600. "application/json"
  11601. ],
  11602. "tags": [
  11603. "issue"
  11604. ],
  11605. "summary": "Remove a reaction from an issue",
  11606. "operationId": "issueDeleteIssueReaction",
  11607. "parameters": [
  11608. {
  11609. "type": "string",
  11610. "description": "owner of the repo",
  11611. "name": "owner",
  11612. "in": "path",
  11613. "required": true
  11614. },
  11615. {
  11616. "type": "string",
  11617. "description": "name of the repo",
  11618. "name": "repo",
  11619. "in": "path",
  11620. "required": true
  11621. },
  11622. {
  11623. "type": "integer",
  11624. "format": "int64",
  11625. "description": "index of the issue",
  11626. "name": "index",
  11627. "in": "path",
  11628. "required": true
  11629. },
  11630. {
  11631. "name": "content",
  11632. "in": "body",
  11633. "schema": {
  11634. "$ref": "#/definitions/EditReactionOption"
  11635. }
  11636. }
  11637. ],
  11638. "responses": {
  11639. "200": {
  11640. "$ref": "#/responses/empty"
  11641. },
  11642. "403": {
  11643. "$ref": "#/responses/forbidden"
  11644. },
  11645. "404": {
  11646. "$ref": "#/responses/notFound"
  11647. }
  11648. }
  11649. }
  11650. },
  11651. "/repos/{owner}/{repo}/issues/{index}/stopwatch/delete": {
  11652. "delete": {
  11653. "consumes": [
  11654. "application/json"
  11655. ],
  11656. "produces": [
  11657. "application/json"
  11658. ],
  11659. "tags": [
  11660. "issue"
  11661. ],
  11662. "summary": "Delete an issue's existing stopwatch.",
  11663. "operationId": "issueDeleteStopWatch",
  11664. "parameters": [
  11665. {
  11666. "type": "string",
  11667. "description": "owner of the repo",
  11668. "name": "owner",
  11669. "in": "path",
  11670. "required": true
  11671. },
  11672. {
  11673. "type": "string",
  11674. "description": "name of the repo",
  11675. "name": "repo",
  11676. "in": "path",
  11677. "required": true
  11678. },
  11679. {
  11680. "type": "integer",
  11681. "format": "int64",
  11682. "description": "index of the issue to stop the stopwatch on",
  11683. "name": "index",
  11684. "in": "path",
  11685. "required": true
  11686. }
  11687. ],
  11688. "responses": {
  11689. "204": {
  11690. "$ref": "#/responses/empty"
  11691. },
  11692. "403": {
  11693. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  11694. },
  11695. "404": {
  11696. "$ref": "#/responses/notFound"
  11697. },
  11698. "409": {
  11699. "description": "Cannot cancel a non-existent stopwatch"
  11700. }
  11701. }
  11702. }
  11703. },
  11704. "/repos/{owner}/{repo}/issues/{index}/stopwatch/start": {
  11705. "post": {
  11706. "consumes": [
  11707. "application/json"
  11708. ],
  11709. "produces": [
  11710. "application/json"
  11711. ],
  11712. "tags": [
  11713. "issue"
  11714. ],
  11715. "summary": "Start stopwatch on an issue.",
  11716. "operationId": "issueStartStopWatch",
  11717. "parameters": [
  11718. {
  11719. "type": "string",
  11720. "description": "owner of the repo",
  11721. "name": "owner",
  11722. "in": "path",
  11723. "required": true
  11724. },
  11725. {
  11726. "type": "string",
  11727. "description": "name of the repo",
  11728. "name": "repo",
  11729. "in": "path",
  11730. "required": true
  11731. },
  11732. {
  11733. "type": "integer",
  11734. "format": "int64",
  11735. "description": "index of the issue to create the stopwatch on",
  11736. "name": "index",
  11737. "in": "path",
  11738. "required": true
  11739. }
  11740. ],
  11741. "responses": {
  11742. "201": {
  11743. "$ref": "#/responses/empty"
  11744. },
  11745. "403": {
  11746. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  11747. },
  11748. "404": {
  11749. "$ref": "#/responses/notFound"
  11750. },
  11751. "409": {
  11752. "description": "Cannot start a stopwatch again if it already exists"
  11753. }
  11754. }
  11755. }
  11756. },
  11757. "/repos/{owner}/{repo}/issues/{index}/stopwatch/stop": {
  11758. "post": {
  11759. "consumes": [
  11760. "application/json"
  11761. ],
  11762. "produces": [
  11763. "application/json"
  11764. ],
  11765. "tags": [
  11766. "issue"
  11767. ],
  11768. "summary": "Stop an issue's existing stopwatch.",
  11769. "operationId": "issueStopStopWatch",
  11770. "parameters": [
  11771. {
  11772. "type": "string",
  11773. "description": "owner of the repo",
  11774. "name": "owner",
  11775. "in": "path",
  11776. "required": true
  11777. },
  11778. {
  11779. "type": "string",
  11780. "description": "name of the repo",
  11781. "name": "repo",
  11782. "in": "path",
  11783. "required": true
  11784. },
  11785. {
  11786. "type": "integer",
  11787. "format": "int64",
  11788. "description": "index of the issue to stop the stopwatch on",
  11789. "name": "index",
  11790. "in": "path",
  11791. "required": true
  11792. }
  11793. ],
  11794. "responses": {
  11795. "201": {
  11796. "$ref": "#/responses/empty"
  11797. },
  11798. "403": {
  11799. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  11800. },
  11801. "404": {
  11802. "$ref": "#/responses/notFound"
  11803. },
  11804. "409": {
  11805. "description": "Cannot stop a non-existent stopwatch"
  11806. }
  11807. }
  11808. }
  11809. },
  11810. "/repos/{owner}/{repo}/issues/{index}/subscriptions": {
  11811. "get": {
  11812. "consumes": [
  11813. "application/json"
  11814. ],
  11815. "produces": [
  11816. "application/json"
  11817. ],
  11818. "tags": [
  11819. "issue"
  11820. ],
  11821. "summary": "Get users who subscribed on an issue.",
  11822. "operationId": "issueSubscriptions",
  11823. "parameters": [
  11824. {
  11825. "type": "string",
  11826. "description": "owner of the repo",
  11827. "name": "owner",
  11828. "in": "path",
  11829. "required": true
  11830. },
  11831. {
  11832. "type": "string",
  11833. "description": "name of the repo",
  11834. "name": "repo",
  11835. "in": "path",
  11836. "required": true
  11837. },
  11838. {
  11839. "type": "integer",
  11840. "format": "int64",
  11841. "description": "index of the issue",
  11842. "name": "index",
  11843. "in": "path",
  11844. "required": true
  11845. },
  11846. {
  11847. "type": "integer",
  11848. "description": "page number of results to return (1-based)",
  11849. "name": "page",
  11850. "in": "query"
  11851. },
  11852. {
  11853. "type": "integer",
  11854. "description": "page size of results",
  11855. "name": "limit",
  11856. "in": "query"
  11857. }
  11858. ],
  11859. "responses": {
  11860. "200": {
  11861. "$ref": "#/responses/UserList"
  11862. },
  11863. "404": {
  11864. "$ref": "#/responses/notFound"
  11865. }
  11866. }
  11867. }
  11868. },
  11869. "/repos/{owner}/{repo}/issues/{index}/subscriptions/check": {
  11870. "get": {
  11871. "consumes": [
  11872. "application/json"
  11873. ],
  11874. "produces": [
  11875. "application/json"
  11876. ],
  11877. "tags": [
  11878. "issue"
  11879. ],
  11880. "summary": "Check if user is subscribed to an issue",
  11881. "operationId": "issueCheckSubscription",
  11882. "parameters": [
  11883. {
  11884. "type": "string",
  11885. "description": "owner of the repo",
  11886. "name": "owner",
  11887. "in": "path",
  11888. "required": true
  11889. },
  11890. {
  11891. "type": "string",
  11892. "description": "name of the repo",
  11893. "name": "repo",
  11894. "in": "path",
  11895. "required": true
  11896. },
  11897. {
  11898. "type": "integer",
  11899. "format": "int64",
  11900. "description": "index of the issue",
  11901. "name": "index",
  11902. "in": "path",
  11903. "required": true
  11904. }
  11905. ],
  11906. "responses": {
  11907. "200": {
  11908. "$ref": "#/responses/WatchInfo"
  11909. },
  11910. "404": {
  11911. "$ref": "#/responses/notFound"
  11912. }
  11913. }
  11914. }
  11915. },
  11916. "/repos/{owner}/{repo}/issues/{index}/subscriptions/{user}": {
  11917. "put": {
  11918. "consumes": [
  11919. "application/json"
  11920. ],
  11921. "produces": [
  11922. "application/json"
  11923. ],
  11924. "tags": [
  11925. "issue"
  11926. ],
  11927. "summary": "Subscribe user to issue",
  11928. "operationId": "issueAddSubscription",
  11929. "parameters": [
  11930. {
  11931. "type": "string",
  11932. "description": "owner of the repo",
  11933. "name": "owner",
  11934. "in": "path",
  11935. "required": true
  11936. },
  11937. {
  11938. "type": "string",
  11939. "description": "name of the repo",
  11940. "name": "repo",
  11941. "in": "path",
  11942. "required": true
  11943. },
  11944. {
  11945. "type": "integer",
  11946. "format": "int64",
  11947. "description": "index of the issue",
  11948. "name": "index",
  11949. "in": "path",
  11950. "required": true
  11951. },
  11952. {
  11953. "type": "string",
  11954. "description": "username of the user to subscribe the issue to",
  11955. "name": "user",
  11956. "in": "path",
  11957. "required": true
  11958. }
  11959. ],
  11960. "responses": {
  11961. "200": {
  11962. "description": "Already subscribed"
  11963. },
  11964. "201": {
  11965. "description": "Successfully Subscribed"
  11966. },
  11967. "304": {
  11968. "description": "User can only subscribe itself if he is no admin"
  11969. },
  11970. "404": {
  11971. "$ref": "#/responses/notFound"
  11972. }
  11973. }
  11974. },
  11975. "delete": {
  11976. "consumes": [
  11977. "application/json"
  11978. ],
  11979. "produces": [
  11980. "application/json"
  11981. ],
  11982. "tags": [
  11983. "issue"
  11984. ],
  11985. "summary": "Unsubscribe user from issue",
  11986. "operationId": "issueDeleteSubscription",
  11987. "parameters": [
  11988. {
  11989. "type": "string",
  11990. "description": "owner of the repo",
  11991. "name": "owner",
  11992. "in": "path",
  11993. "required": true
  11994. },
  11995. {
  11996. "type": "string",
  11997. "description": "name of the repo",
  11998. "name": "repo",
  11999. "in": "path",
  12000. "required": true
  12001. },
  12002. {
  12003. "type": "integer",
  12004. "format": "int64",
  12005. "description": "index of the issue",
  12006. "name": "index",
  12007. "in": "path",
  12008. "required": true
  12009. },
  12010. {
  12011. "type": "string",
  12012. "description": "username of the user to unsubscribe from an issue",
  12013. "name": "user",
  12014. "in": "path",
  12015. "required": true
  12016. }
  12017. ],
  12018. "responses": {
  12019. "200": {
  12020. "description": "Already unsubscribed"
  12021. },
  12022. "201": {
  12023. "description": "Successfully Unsubscribed"
  12024. },
  12025. "304": {
  12026. "description": "User can only subscribe itself if he is no admin"
  12027. },
  12028. "404": {
  12029. "$ref": "#/responses/notFound"
  12030. }
  12031. }
  12032. }
  12033. },
  12034. "/repos/{owner}/{repo}/issues/{index}/timeline": {
  12035. "get": {
  12036. "produces": [
  12037. "application/json"
  12038. ],
  12039. "tags": [
  12040. "issue"
  12041. ],
  12042. "summary": "List all comments and events on an issue",
  12043. "operationId": "issueGetCommentsAndTimeline",
  12044. "parameters": [
  12045. {
  12046. "type": "string",
  12047. "description": "owner of the repo",
  12048. "name": "owner",
  12049. "in": "path",
  12050. "required": true
  12051. },
  12052. {
  12053. "type": "string",
  12054. "description": "name of the repo",
  12055. "name": "repo",
  12056. "in": "path",
  12057. "required": true
  12058. },
  12059. {
  12060. "type": "integer",
  12061. "format": "int64",
  12062. "description": "index of the issue",
  12063. "name": "index",
  12064. "in": "path",
  12065. "required": true
  12066. },
  12067. {
  12068. "type": "string",
  12069. "format": "date-time",
  12070. "description": "if provided, only comments updated since the specified time are returned.",
  12071. "name": "since",
  12072. "in": "query"
  12073. },
  12074. {
  12075. "type": "integer",
  12076. "description": "page number of results to return (1-based)",
  12077. "name": "page",
  12078. "in": "query"
  12079. },
  12080. {
  12081. "type": "integer",
  12082. "description": "page size of results",
  12083. "name": "limit",
  12084. "in": "query"
  12085. },
  12086. {
  12087. "type": "string",
  12088. "format": "date-time",
  12089. "description": "if provided, only comments updated before the provided time are returned.",
  12090. "name": "before",
  12091. "in": "query"
  12092. }
  12093. ],
  12094. "responses": {
  12095. "200": {
  12096. "$ref": "#/responses/TimelineList"
  12097. },
  12098. "404": {
  12099. "$ref": "#/responses/notFound"
  12100. }
  12101. }
  12102. }
  12103. },
  12104. "/repos/{owner}/{repo}/issues/{index}/times": {
  12105. "get": {
  12106. "produces": [
  12107. "application/json"
  12108. ],
  12109. "tags": [
  12110. "issue"
  12111. ],
  12112. "summary": "List an issue's tracked times",
  12113. "operationId": "issueTrackedTimes",
  12114. "parameters": [
  12115. {
  12116. "type": "string",
  12117. "description": "owner of the repo",
  12118. "name": "owner",
  12119. "in": "path",
  12120. "required": true
  12121. },
  12122. {
  12123. "type": "string",
  12124. "description": "name of the repo",
  12125. "name": "repo",
  12126. "in": "path",
  12127. "required": true
  12128. },
  12129. {
  12130. "type": "integer",
  12131. "format": "int64",
  12132. "description": "index of the issue",
  12133. "name": "index",
  12134. "in": "path",
  12135. "required": true
  12136. },
  12137. {
  12138. "type": "string",
  12139. "description": "optional filter by user (available for issue managers)",
  12140. "name": "user",
  12141. "in": "query"
  12142. },
  12143. {
  12144. "type": "string",
  12145. "format": "date-time",
  12146. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  12147. "name": "since",
  12148. "in": "query"
  12149. },
  12150. {
  12151. "type": "string",
  12152. "format": "date-time",
  12153. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  12154. "name": "before",
  12155. "in": "query"
  12156. },
  12157. {
  12158. "type": "integer",
  12159. "description": "page number of results to return (1-based)",
  12160. "name": "page",
  12161. "in": "query"
  12162. },
  12163. {
  12164. "type": "integer",
  12165. "description": "page size of results",
  12166. "name": "limit",
  12167. "in": "query"
  12168. }
  12169. ],
  12170. "responses": {
  12171. "200": {
  12172. "$ref": "#/responses/TrackedTimeList"
  12173. },
  12174. "404": {
  12175. "$ref": "#/responses/notFound"
  12176. }
  12177. }
  12178. },
  12179. "post": {
  12180. "consumes": [
  12181. "application/json"
  12182. ],
  12183. "produces": [
  12184. "application/json"
  12185. ],
  12186. "tags": [
  12187. "issue"
  12188. ],
  12189. "summary": "Add tracked time to a issue",
  12190. "operationId": "issueAddTime",
  12191. "parameters": [
  12192. {
  12193. "type": "string",
  12194. "description": "owner of the repo",
  12195. "name": "owner",
  12196. "in": "path",
  12197. "required": true
  12198. },
  12199. {
  12200. "type": "string",
  12201. "description": "name of the repo",
  12202. "name": "repo",
  12203. "in": "path",
  12204. "required": true
  12205. },
  12206. {
  12207. "type": "integer",
  12208. "format": "int64",
  12209. "description": "index of the issue",
  12210. "name": "index",
  12211. "in": "path",
  12212. "required": true
  12213. },
  12214. {
  12215. "name": "body",
  12216. "in": "body",
  12217. "schema": {
  12218. "$ref": "#/definitions/AddTimeOption"
  12219. }
  12220. }
  12221. ],
  12222. "responses": {
  12223. "200": {
  12224. "$ref": "#/responses/TrackedTime"
  12225. },
  12226. "400": {
  12227. "$ref": "#/responses/error"
  12228. },
  12229. "403": {
  12230. "$ref": "#/responses/forbidden"
  12231. },
  12232. "404": {
  12233. "$ref": "#/responses/notFound"
  12234. }
  12235. }
  12236. },
  12237. "delete": {
  12238. "consumes": [
  12239. "application/json"
  12240. ],
  12241. "produces": [
  12242. "application/json"
  12243. ],
  12244. "tags": [
  12245. "issue"
  12246. ],
  12247. "summary": "Reset a tracked time of an issue",
  12248. "operationId": "issueResetTime",
  12249. "parameters": [
  12250. {
  12251. "type": "string",
  12252. "description": "owner of the repo",
  12253. "name": "owner",
  12254. "in": "path",
  12255. "required": true
  12256. },
  12257. {
  12258. "type": "string",
  12259. "description": "name of the repo",
  12260. "name": "repo",
  12261. "in": "path",
  12262. "required": true
  12263. },
  12264. {
  12265. "type": "integer",
  12266. "format": "int64",
  12267. "description": "index of the issue to add tracked time to",
  12268. "name": "index",
  12269. "in": "path",
  12270. "required": true
  12271. }
  12272. ],
  12273. "responses": {
  12274. "204": {
  12275. "$ref": "#/responses/empty"
  12276. },
  12277. "400": {
  12278. "$ref": "#/responses/error"
  12279. },
  12280. "403": {
  12281. "$ref": "#/responses/forbidden"
  12282. },
  12283. "404": {
  12284. "$ref": "#/responses/notFound"
  12285. }
  12286. }
  12287. }
  12288. },
  12289. "/repos/{owner}/{repo}/issues/{index}/times/{id}": {
  12290. "delete": {
  12291. "consumes": [
  12292. "application/json"
  12293. ],
  12294. "produces": [
  12295. "application/json"
  12296. ],
  12297. "tags": [
  12298. "issue"
  12299. ],
  12300. "summary": "Delete specific tracked time",
  12301. "operationId": "issueDeleteTime",
  12302. "parameters": [
  12303. {
  12304. "type": "string",
  12305. "description": "owner of the repo",
  12306. "name": "owner",
  12307. "in": "path",
  12308. "required": true
  12309. },
  12310. {
  12311. "type": "string",
  12312. "description": "name of the repo",
  12313. "name": "repo",
  12314. "in": "path",
  12315. "required": true
  12316. },
  12317. {
  12318. "type": "integer",
  12319. "format": "int64",
  12320. "description": "index of the issue",
  12321. "name": "index",
  12322. "in": "path",
  12323. "required": true
  12324. },
  12325. {
  12326. "type": "integer",
  12327. "format": "int64",
  12328. "description": "id of time to delete",
  12329. "name": "id",
  12330. "in": "path",
  12331. "required": true
  12332. }
  12333. ],
  12334. "responses": {
  12335. "204": {
  12336. "$ref": "#/responses/empty"
  12337. },
  12338. "400": {
  12339. "$ref": "#/responses/error"
  12340. },
  12341. "403": {
  12342. "$ref": "#/responses/forbidden"
  12343. },
  12344. "404": {
  12345. "$ref": "#/responses/notFound"
  12346. }
  12347. }
  12348. }
  12349. },
  12350. "/repos/{owner}/{repo}/keys": {
  12351. "get": {
  12352. "produces": [
  12353. "application/json"
  12354. ],
  12355. "tags": [
  12356. "repository"
  12357. ],
  12358. "summary": "List a repository's keys",
  12359. "operationId": "repoListKeys",
  12360. "parameters": [
  12361. {
  12362. "type": "string",
  12363. "description": "owner of the repo",
  12364. "name": "owner",
  12365. "in": "path",
  12366. "required": true
  12367. },
  12368. {
  12369. "type": "string",
  12370. "description": "name of the repo",
  12371. "name": "repo",
  12372. "in": "path",
  12373. "required": true
  12374. },
  12375. {
  12376. "type": "integer",
  12377. "description": "the key_id to search for",
  12378. "name": "key_id",
  12379. "in": "query"
  12380. },
  12381. {
  12382. "type": "string",
  12383. "description": "fingerprint of the key",
  12384. "name": "fingerprint",
  12385. "in": "query"
  12386. },
  12387. {
  12388. "type": "integer",
  12389. "description": "page number of results to return (1-based)",
  12390. "name": "page",
  12391. "in": "query"
  12392. },
  12393. {
  12394. "type": "integer",
  12395. "description": "page size of results",
  12396. "name": "limit",
  12397. "in": "query"
  12398. }
  12399. ],
  12400. "responses": {
  12401. "200": {
  12402. "$ref": "#/responses/DeployKeyList"
  12403. },
  12404. "404": {
  12405. "$ref": "#/responses/notFound"
  12406. }
  12407. }
  12408. },
  12409. "post": {
  12410. "consumes": [
  12411. "application/json"
  12412. ],
  12413. "produces": [
  12414. "application/json"
  12415. ],
  12416. "tags": [
  12417. "repository"
  12418. ],
  12419. "summary": "Add a key to a repository",
  12420. "operationId": "repoCreateKey",
  12421. "parameters": [
  12422. {
  12423. "type": "string",
  12424. "description": "owner of the repo",
  12425. "name": "owner",
  12426. "in": "path",
  12427. "required": true
  12428. },
  12429. {
  12430. "type": "string",
  12431. "description": "name of the repo",
  12432. "name": "repo",
  12433. "in": "path",
  12434. "required": true
  12435. },
  12436. {
  12437. "name": "body",
  12438. "in": "body",
  12439. "schema": {
  12440. "$ref": "#/definitions/CreateKeyOption"
  12441. }
  12442. }
  12443. ],
  12444. "responses": {
  12445. "201": {
  12446. "$ref": "#/responses/DeployKey"
  12447. },
  12448. "404": {
  12449. "$ref": "#/responses/notFound"
  12450. },
  12451. "422": {
  12452. "$ref": "#/responses/validationError"
  12453. }
  12454. }
  12455. }
  12456. },
  12457. "/repos/{owner}/{repo}/keys/{id}": {
  12458. "get": {
  12459. "produces": [
  12460. "application/json"
  12461. ],
  12462. "tags": [
  12463. "repository"
  12464. ],
  12465. "summary": "Get a repository's key by id",
  12466. "operationId": "repoGetKey",
  12467. "parameters": [
  12468. {
  12469. "type": "string",
  12470. "description": "owner of the repo",
  12471. "name": "owner",
  12472. "in": "path",
  12473. "required": true
  12474. },
  12475. {
  12476. "type": "string",
  12477. "description": "name of the repo",
  12478. "name": "repo",
  12479. "in": "path",
  12480. "required": true
  12481. },
  12482. {
  12483. "type": "integer",
  12484. "format": "int64",
  12485. "description": "id of the key to get",
  12486. "name": "id",
  12487. "in": "path",
  12488. "required": true
  12489. }
  12490. ],
  12491. "responses": {
  12492. "200": {
  12493. "$ref": "#/responses/DeployKey"
  12494. },
  12495. "404": {
  12496. "$ref": "#/responses/notFound"
  12497. }
  12498. }
  12499. },
  12500. "delete": {
  12501. "tags": [
  12502. "repository"
  12503. ],
  12504. "summary": "Delete a key from a repository",
  12505. "operationId": "repoDeleteKey",
  12506. "parameters": [
  12507. {
  12508. "type": "string",
  12509. "description": "owner of the repo",
  12510. "name": "owner",
  12511. "in": "path",
  12512. "required": true
  12513. },
  12514. {
  12515. "type": "string",
  12516. "description": "name of the repo",
  12517. "name": "repo",
  12518. "in": "path",
  12519. "required": true
  12520. },
  12521. {
  12522. "type": "integer",
  12523. "format": "int64",
  12524. "description": "id of the key to delete",
  12525. "name": "id",
  12526. "in": "path",
  12527. "required": true
  12528. }
  12529. ],
  12530. "responses": {
  12531. "204": {
  12532. "$ref": "#/responses/empty"
  12533. },
  12534. "403": {
  12535. "$ref": "#/responses/forbidden"
  12536. },
  12537. "404": {
  12538. "$ref": "#/responses/notFound"
  12539. }
  12540. }
  12541. }
  12542. },
  12543. "/repos/{owner}/{repo}/labels": {
  12544. "get": {
  12545. "produces": [
  12546. "application/json"
  12547. ],
  12548. "tags": [
  12549. "issue"
  12550. ],
  12551. "summary": "Get all of a repository's labels",
  12552. "operationId": "issueListLabels",
  12553. "parameters": [
  12554. {
  12555. "type": "string",
  12556. "description": "owner of the repo",
  12557. "name": "owner",
  12558. "in": "path",
  12559. "required": true
  12560. },
  12561. {
  12562. "type": "string",
  12563. "description": "name of the repo",
  12564. "name": "repo",
  12565. "in": "path",
  12566. "required": true
  12567. },
  12568. {
  12569. "type": "integer",
  12570. "description": "page number of results to return (1-based)",
  12571. "name": "page",
  12572. "in": "query"
  12573. },
  12574. {
  12575. "type": "integer",
  12576. "description": "page size of results",
  12577. "name": "limit",
  12578. "in": "query"
  12579. }
  12580. ],
  12581. "responses": {
  12582. "200": {
  12583. "$ref": "#/responses/LabelList"
  12584. },
  12585. "404": {
  12586. "$ref": "#/responses/notFound"
  12587. }
  12588. }
  12589. },
  12590. "post": {
  12591. "consumes": [
  12592. "application/json"
  12593. ],
  12594. "produces": [
  12595. "application/json"
  12596. ],
  12597. "tags": [
  12598. "issue"
  12599. ],
  12600. "summary": "Create a label",
  12601. "operationId": "issueCreateLabel",
  12602. "parameters": [
  12603. {
  12604. "type": "string",
  12605. "description": "owner of the repo",
  12606. "name": "owner",
  12607. "in": "path",
  12608. "required": true
  12609. },
  12610. {
  12611. "type": "string",
  12612. "description": "name of the repo",
  12613. "name": "repo",
  12614. "in": "path",
  12615. "required": true
  12616. },
  12617. {
  12618. "name": "body",
  12619. "in": "body",
  12620. "schema": {
  12621. "$ref": "#/definitions/CreateLabelOption"
  12622. }
  12623. }
  12624. ],
  12625. "responses": {
  12626. "201": {
  12627. "$ref": "#/responses/Label"
  12628. },
  12629. "404": {
  12630. "$ref": "#/responses/notFound"
  12631. },
  12632. "422": {
  12633. "$ref": "#/responses/validationError"
  12634. }
  12635. }
  12636. }
  12637. },
  12638. "/repos/{owner}/{repo}/labels/{id}": {
  12639. "get": {
  12640. "produces": [
  12641. "application/json"
  12642. ],
  12643. "tags": [
  12644. "issue"
  12645. ],
  12646. "summary": "Get a single label",
  12647. "operationId": "issueGetLabel",
  12648. "parameters": [
  12649. {
  12650. "type": "string",
  12651. "description": "owner of the repo",
  12652. "name": "owner",
  12653. "in": "path",
  12654. "required": true
  12655. },
  12656. {
  12657. "type": "string",
  12658. "description": "name of the repo",
  12659. "name": "repo",
  12660. "in": "path",
  12661. "required": true
  12662. },
  12663. {
  12664. "type": "integer",
  12665. "format": "int64",
  12666. "description": "id of the label to get",
  12667. "name": "id",
  12668. "in": "path",
  12669. "required": true
  12670. }
  12671. ],
  12672. "responses": {
  12673. "200": {
  12674. "$ref": "#/responses/Label"
  12675. },
  12676. "404": {
  12677. "$ref": "#/responses/notFound"
  12678. }
  12679. }
  12680. },
  12681. "delete": {
  12682. "tags": [
  12683. "issue"
  12684. ],
  12685. "summary": "Delete a label",
  12686. "operationId": "issueDeleteLabel",
  12687. "parameters": [
  12688. {
  12689. "type": "string",
  12690. "description": "owner of the repo",
  12691. "name": "owner",
  12692. "in": "path",
  12693. "required": true
  12694. },
  12695. {
  12696. "type": "string",
  12697. "description": "name of the repo",
  12698. "name": "repo",
  12699. "in": "path",
  12700. "required": true
  12701. },
  12702. {
  12703. "type": "integer",
  12704. "format": "int64",
  12705. "description": "id of the label to delete",
  12706. "name": "id",
  12707. "in": "path",
  12708. "required": true
  12709. }
  12710. ],
  12711. "responses": {
  12712. "204": {
  12713. "$ref": "#/responses/empty"
  12714. },
  12715. "404": {
  12716. "$ref": "#/responses/notFound"
  12717. }
  12718. }
  12719. },
  12720. "patch": {
  12721. "consumes": [
  12722. "application/json"
  12723. ],
  12724. "produces": [
  12725. "application/json"
  12726. ],
  12727. "tags": [
  12728. "issue"
  12729. ],
  12730. "summary": "Update a label",
  12731. "operationId": "issueEditLabel",
  12732. "parameters": [
  12733. {
  12734. "type": "string",
  12735. "description": "owner of the repo",
  12736. "name": "owner",
  12737. "in": "path",
  12738. "required": true
  12739. },
  12740. {
  12741. "type": "string",
  12742. "description": "name of the repo",
  12743. "name": "repo",
  12744. "in": "path",
  12745. "required": true
  12746. },
  12747. {
  12748. "type": "integer",
  12749. "format": "int64",
  12750. "description": "id of the label to edit",
  12751. "name": "id",
  12752. "in": "path",
  12753. "required": true
  12754. },
  12755. {
  12756. "name": "body",
  12757. "in": "body",
  12758. "schema": {
  12759. "$ref": "#/definitions/EditLabelOption"
  12760. }
  12761. }
  12762. ],
  12763. "responses": {
  12764. "200": {
  12765. "$ref": "#/responses/Label"
  12766. },
  12767. "404": {
  12768. "$ref": "#/responses/notFound"
  12769. },
  12770. "422": {
  12771. "$ref": "#/responses/validationError"
  12772. }
  12773. }
  12774. }
  12775. },
  12776. "/repos/{owner}/{repo}/languages": {
  12777. "get": {
  12778. "produces": [
  12779. "application/json"
  12780. ],
  12781. "tags": [
  12782. "repository"
  12783. ],
  12784. "summary": "Get languages and number of bytes of code written",
  12785. "operationId": "repoGetLanguages",
  12786. "parameters": [
  12787. {
  12788. "type": "string",
  12789. "description": "owner of the repo",
  12790. "name": "owner",
  12791. "in": "path",
  12792. "required": true
  12793. },
  12794. {
  12795. "type": "string",
  12796. "description": "name of the repo",
  12797. "name": "repo",
  12798. "in": "path",
  12799. "required": true
  12800. }
  12801. ],
  12802. "responses": {
  12803. "200": {
  12804. "$ref": "#/responses/LanguageStatistics"
  12805. },
  12806. "404": {
  12807. "$ref": "#/responses/notFound"
  12808. }
  12809. }
  12810. }
  12811. },
  12812. "/repos/{owner}/{repo}/licenses": {
  12813. "get": {
  12814. "produces": [
  12815. "application/json"
  12816. ],
  12817. "tags": [
  12818. "repository"
  12819. ],
  12820. "summary": "Get repo licenses",
  12821. "operationId": "repoGetLicenses",
  12822. "parameters": [
  12823. {
  12824. "type": "string",
  12825. "description": "owner of the repo",
  12826. "name": "owner",
  12827. "in": "path",
  12828. "required": true
  12829. },
  12830. {
  12831. "type": "string",
  12832. "description": "name of the repo",
  12833. "name": "repo",
  12834. "in": "path",
  12835. "required": true
  12836. }
  12837. ],
  12838. "responses": {
  12839. "200": {
  12840. "$ref": "#/responses/LicensesList"
  12841. },
  12842. "404": {
  12843. "$ref": "#/responses/notFound"
  12844. }
  12845. }
  12846. }
  12847. },
  12848. "/repos/{owner}/{repo}/media/{filepath}": {
  12849. "get": {
  12850. "produces": [
  12851. "application/octet-stream"
  12852. ],
  12853. "tags": [
  12854. "repository"
  12855. ],
  12856. "summary": "Get a file or it's LFS object from a repository",
  12857. "operationId": "repoGetRawFileOrLFS",
  12858. "parameters": [
  12859. {
  12860. "type": "string",
  12861. "description": "owner of the repo",
  12862. "name": "owner",
  12863. "in": "path",
  12864. "required": true
  12865. },
  12866. {
  12867. "type": "string",
  12868. "description": "name of the repo",
  12869. "name": "repo",
  12870. "in": "path",
  12871. "required": true
  12872. },
  12873. {
  12874. "type": "string",
  12875. "description": "path of the file to get, it should be \"{ref}/{filepath}\". If there is no ref could be inferred, it will be treated as the default branch",
  12876. "name": "filepath",
  12877. "in": "path",
  12878. "required": true
  12879. },
  12880. {
  12881. "type": "string",
  12882. "description": "The name of the commit/branch/tag. Default to the repository’s default branch",
  12883. "name": "ref",
  12884. "in": "query"
  12885. }
  12886. ],
  12887. "responses": {
  12888. "200": {
  12889. "description": "Returns raw file content.",
  12890. "schema": {
  12891. "type": "file"
  12892. }
  12893. },
  12894. "404": {
  12895. "$ref": "#/responses/notFound"
  12896. }
  12897. }
  12898. }
  12899. },
  12900. "/repos/{owner}/{repo}/merge-upstream": {
  12901. "post": {
  12902. "produces": [
  12903. "application/json"
  12904. ],
  12905. "tags": [
  12906. "repository"
  12907. ],
  12908. "summary": "Merge a branch from upstream",
  12909. "operationId": "repoMergeUpstream",
  12910. "parameters": [
  12911. {
  12912. "type": "string",
  12913. "description": "owner of the repo",
  12914. "name": "owner",
  12915. "in": "path",
  12916. "required": true
  12917. },
  12918. {
  12919. "type": "string",
  12920. "description": "name of the repo",
  12921. "name": "repo",
  12922. "in": "path",
  12923. "required": true
  12924. },
  12925. {
  12926. "name": "body",
  12927. "in": "body",
  12928. "schema": {
  12929. "$ref": "#/definitions/MergeUpstreamRequest"
  12930. }
  12931. }
  12932. ],
  12933. "responses": {
  12934. "200": {
  12935. "$ref": "#/responses/MergeUpstreamResponse"
  12936. },
  12937. "400": {
  12938. "$ref": "#/responses/error"
  12939. },
  12940. "404": {
  12941. "$ref": "#/responses/notFound"
  12942. }
  12943. }
  12944. }
  12945. },
  12946. "/repos/{owner}/{repo}/milestones": {
  12947. "get": {
  12948. "produces": [
  12949. "application/json"
  12950. ],
  12951. "tags": [
  12952. "issue"
  12953. ],
  12954. "summary": "Get all of a repository's opened milestones",
  12955. "operationId": "issueGetMilestonesList",
  12956. "parameters": [
  12957. {
  12958. "type": "string",
  12959. "description": "owner of the repo",
  12960. "name": "owner",
  12961. "in": "path",
  12962. "required": true
  12963. },
  12964. {
  12965. "type": "string",
  12966. "description": "name of the repo",
  12967. "name": "repo",
  12968. "in": "path",
  12969. "required": true
  12970. },
  12971. {
  12972. "type": "string",
  12973. "description": "Milestone state, Recognized values are open, closed and all. Defaults to \"open\"",
  12974. "name": "state",
  12975. "in": "query"
  12976. },
  12977. {
  12978. "type": "string",
  12979. "description": "filter by milestone name",
  12980. "name": "name",
  12981. "in": "query"
  12982. },
  12983. {
  12984. "type": "integer",
  12985. "description": "page number of results to return (1-based)",
  12986. "name": "page",
  12987. "in": "query"
  12988. },
  12989. {
  12990. "type": "integer",
  12991. "description": "page size of results",
  12992. "name": "limit",
  12993. "in": "query"
  12994. }
  12995. ],
  12996. "responses": {
  12997. "200": {
  12998. "$ref": "#/responses/MilestoneList"
  12999. },
  13000. "404": {
  13001. "$ref": "#/responses/notFound"
  13002. }
  13003. }
  13004. },
  13005. "post": {
  13006. "consumes": [
  13007. "application/json"
  13008. ],
  13009. "produces": [
  13010. "application/json"
  13011. ],
  13012. "tags": [
  13013. "issue"
  13014. ],
  13015. "summary": "Create a milestone",
  13016. "operationId": "issueCreateMilestone",
  13017. "parameters": [
  13018. {
  13019. "type": "string",
  13020. "description": "owner of the repo",
  13021. "name": "owner",
  13022. "in": "path",
  13023. "required": true
  13024. },
  13025. {
  13026. "type": "string",
  13027. "description": "name of the repo",
  13028. "name": "repo",
  13029. "in": "path",
  13030. "required": true
  13031. },
  13032. {
  13033. "name": "body",
  13034. "in": "body",
  13035. "schema": {
  13036. "$ref": "#/definitions/CreateMilestoneOption"
  13037. }
  13038. }
  13039. ],
  13040. "responses": {
  13041. "201": {
  13042. "$ref": "#/responses/Milestone"
  13043. },
  13044. "404": {
  13045. "$ref": "#/responses/notFound"
  13046. }
  13047. }
  13048. }
  13049. },
  13050. "/repos/{owner}/{repo}/milestones/{id}": {
  13051. "get": {
  13052. "produces": [
  13053. "application/json"
  13054. ],
  13055. "tags": [
  13056. "issue"
  13057. ],
  13058. "summary": "Get a milestone",
  13059. "operationId": "issueGetMilestone",
  13060. "parameters": [
  13061. {
  13062. "type": "string",
  13063. "description": "owner of the repo",
  13064. "name": "owner",
  13065. "in": "path",
  13066. "required": true
  13067. },
  13068. {
  13069. "type": "string",
  13070. "description": "name of the repo",
  13071. "name": "repo",
  13072. "in": "path",
  13073. "required": true
  13074. },
  13075. {
  13076. "type": "string",
  13077. "description": "the milestone to get, identified by ID and if not available by name",
  13078. "name": "id",
  13079. "in": "path",
  13080. "required": true
  13081. }
  13082. ],
  13083. "responses": {
  13084. "200": {
  13085. "$ref": "#/responses/Milestone"
  13086. },
  13087. "404": {
  13088. "$ref": "#/responses/notFound"
  13089. }
  13090. }
  13091. },
  13092. "delete": {
  13093. "tags": [
  13094. "issue"
  13095. ],
  13096. "summary": "Delete a milestone",
  13097. "operationId": "issueDeleteMilestone",
  13098. "parameters": [
  13099. {
  13100. "type": "string",
  13101. "description": "owner of the repo",
  13102. "name": "owner",
  13103. "in": "path",
  13104. "required": true
  13105. },
  13106. {
  13107. "type": "string",
  13108. "description": "name of the repo",
  13109. "name": "repo",
  13110. "in": "path",
  13111. "required": true
  13112. },
  13113. {
  13114. "type": "string",
  13115. "description": "the milestone to delete, identified by ID and if not available by name",
  13116. "name": "id",
  13117. "in": "path",
  13118. "required": true
  13119. }
  13120. ],
  13121. "responses": {
  13122. "204": {
  13123. "$ref": "#/responses/empty"
  13124. },
  13125. "404": {
  13126. "$ref": "#/responses/notFound"
  13127. }
  13128. }
  13129. },
  13130. "patch": {
  13131. "consumes": [
  13132. "application/json"
  13133. ],
  13134. "produces": [
  13135. "application/json"
  13136. ],
  13137. "tags": [
  13138. "issue"
  13139. ],
  13140. "summary": "Update a milestone",
  13141. "operationId": "issueEditMilestone",
  13142. "parameters": [
  13143. {
  13144. "type": "string",
  13145. "description": "owner of the repo",
  13146. "name": "owner",
  13147. "in": "path",
  13148. "required": true
  13149. },
  13150. {
  13151. "type": "string",
  13152. "description": "name of the repo",
  13153. "name": "repo",
  13154. "in": "path",
  13155. "required": true
  13156. },
  13157. {
  13158. "type": "string",
  13159. "description": "the milestone to edit, identified by ID and if not available by name",
  13160. "name": "id",
  13161. "in": "path",
  13162. "required": true
  13163. },
  13164. {
  13165. "name": "body",
  13166. "in": "body",
  13167. "schema": {
  13168. "$ref": "#/definitions/EditMilestoneOption"
  13169. }
  13170. }
  13171. ],
  13172. "responses": {
  13173. "200": {
  13174. "$ref": "#/responses/Milestone"
  13175. },
  13176. "404": {
  13177. "$ref": "#/responses/notFound"
  13178. }
  13179. }
  13180. }
  13181. },
  13182. "/repos/{owner}/{repo}/mirror-sync": {
  13183. "post": {
  13184. "produces": [
  13185. "application/json"
  13186. ],
  13187. "tags": [
  13188. "repository"
  13189. ],
  13190. "summary": "Sync a mirrored repository",
  13191. "operationId": "repoMirrorSync",
  13192. "parameters": [
  13193. {
  13194. "type": "string",
  13195. "description": "owner of the repo to sync",
  13196. "name": "owner",
  13197. "in": "path",
  13198. "required": true
  13199. },
  13200. {
  13201. "type": "string",
  13202. "description": "name of the repo to sync",
  13203. "name": "repo",
  13204. "in": "path",
  13205. "required": true
  13206. }
  13207. ],
  13208. "responses": {
  13209. "200": {
  13210. "$ref": "#/responses/empty"
  13211. },
  13212. "403": {
  13213. "$ref": "#/responses/forbidden"
  13214. },
  13215. "404": {
  13216. "$ref": "#/responses/notFound"
  13217. }
  13218. }
  13219. }
  13220. },
  13221. "/repos/{owner}/{repo}/new_pin_allowed": {
  13222. "get": {
  13223. "produces": [
  13224. "application/json"
  13225. ],
  13226. "tags": [
  13227. "repository"
  13228. ],
  13229. "summary": "Returns if new Issue Pins are allowed",
  13230. "operationId": "repoNewPinAllowed",
  13231. "parameters": [
  13232. {
  13233. "type": "string",
  13234. "description": "owner of the repo",
  13235. "name": "owner",
  13236. "in": "path",
  13237. "required": true
  13238. },
  13239. {
  13240. "type": "string",
  13241. "description": "name of the repo",
  13242. "name": "repo",
  13243. "in": "path",
  13244. "required": true
  13245. }
  13246. ],
  13247. "responses": {
  13248. "200": {
  13249. "$ref": "#/responses/RepoNewIssuePinsAllowed"
  13250. },
  13251. "404": {
  13252. "$ref": "#/responses/notFound"
  13253. }
  13254. }
  13255. }
  13256. },
  13257. "/repos/{owner}/{repo}/notifications": {
  13258. "get": {
  13259. "consumes": [
  13260. "application/json"
  13261. ],
  13262. "produces": [
  13263. "application/json"
  13264. ],
  13265. "tags": [
  13266. "notification"
  13267. ],
  13268. "summary": "List users's notification threads on a specific repo",
  13269. "operationId": "notifyGetRepoList",
  13270. "parameters": [
  13271. {
  13272. "type": "string",
  13273. "description": "owner of the repo",
  13274. "name": "owner",
  13275. "in": "path",
  13276. "required": true
  13277. },
  13278. {
  13279. "type": "string",
  13280. "description": "name of the repo",
  13281. "name": "repo",
  13282. "in": "path",
  13283. "required": true
  13284. },
  13285. {
  13286. "type": "boolean",
  13287. "description": "If true, show notifications marked as read. Default value is false",
  13288. "name": "all",
  13289. "in": "query"
  13290. },
  13291. {
  13292. "type": "array",
  13293. "items": {
  13294. "type": "string"
  13295. },
  13296. "collectionFormat": "multi",
  13297. "description": "Show notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread \u0026 pinned",
  13298. "name": "status-types",
  13299. "in": "query"
  13300. },
  13301. {
  13302. "type": "array",
  13303. "items": {
  13304. "enum": [
  13305. "issue",
  13306. "pull",
  13307. "commit",
  13308. "repository"
  13309. ],
  13310. "type": "string"
  13311. },
  13312. "collectionFormat": "multi",
  13313. "description": "filter notifications by subject type",
  13314. "name": "subject-type",
  13315. "in": "query"
  13316. },
  13317. {
  13318. "type": "string",
  13319. "format": "date-time",
  13320. "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format",
  13321. "name": "since",
  13322. "in": "query"
  13323. },
  13324. {
  13325. "type": "string",
  13326. "format": "date-time",
  13327. "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format",
  13328. "name": "before",
  13329. "in": "query"
  13330. },
  13331. {
  13332. "type": "integer",
  13333. "description": "page number of results to return (1-based)",
  13334. "name": "page",
  13335. "in": "query"
  13336. },
  13337. {
  13338. "type": "integer",
  13339. "description": "page size of results",
  13340. "name": "limit",
  13341. "in": "query"
  13342. }
  13343. ],
  13344. "responses": {
  13345. "200": {
  13346. "$ref": "#/responses/NotificationThreadList"
  13347. }
  13348. }
  13349. },
  13350. "put": {
  13351. "consumes": [
  13352. "application/json"
  13353. ],
  13354. "produces": [
  13355. "application/json"
  13356. ],
  13357. "tags": [
  13358. "notification"
  13359. ],
  13360. "summary": "Mark notification threads as read, pinned or unread on a specific repo",
  13361. "operationId": "notifyReadRepoList",
  13362. "parameters": [
  13363. {
  13364. "type": "string",
  13365. "description": "owner of the repo",
  13366. "name": "owner",
  13367. "in": "path",
  13368. "required": true
  13369. },
  13370. {
  13371. "type": "string",
  13372. "description": "name of the repo",
  13373. "name": "repo",
  13374. "in": "path",
  13375. "required": true
  13376. },
  13377. {
  13378. "type": "string",
  13379. "description": "If true, mark all notifications on this repo. Default value is false",
  13380. "name": "all",
  13381. "in": "query"
  13382. },
  13383. {
  13384. "type": "array",
  13385. "items": {
  13386. "type": "string"
  13387. },
  13388. "collectionFormat": "multi",
  13389. "description": "Mark notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread.",
  13390. "name": "status-types",
  13391. "in": "query"
  13392. },
  13393. {
  13394. "type": "string",
  13395. "description": "Status to mark notifications as. Defaults to read.",
  13396. "name": "to-status",
  13397. "in": "query"
  13398. },
  13399. {
  13400. "type": "string",
  13401. "format": "date-time",
  13402. "description": "Describes the last point that notifications were checked. Anything updated since this time will not be updated.",
  13403. "name": "last_read_at",
  13404. "in": "query"
  13405. }
  13406. ],
  13407. "responses": {
  13408. "205": {
  13409. "$ref": "#/responses/NotificationThreadList"
  13410. }
  13411. }
  13412. }
  13413. },
  13414. "/repos/{owner}/{repo}/pulls": {
  13415. "get": {
  13416. "produces": [
  13417. "application/json"
  13418. ],
  13419. "tags": [
  13420. "repository"
  13421. ],
  13422. "summary": "List a repo's pull requests",
  13423. "operationId": "repoListPullRequests",
  13424. "parameters": [
  13425. {
  13426. "type": "string",
  13427. "description": "owner of the repo",
  13428. "name": "owner",
  13429. "in": "path",
  13430. "required": true
  13431. },
  13432. {
  13433. "type": "string",
  13434. "description": "Name of the repo",
  13435. "name": "repo",
  13436. "in": "path",
  13437. "required": true
  13438. },
  13439. {
  13440. "type": "string",
  13441. "description": "Filter by target base branch of the pull request",
  13442. "name": "base_branch",
  13443. "in": "query"
  13444. },
  13445. {
  13446. "enum": [
  13447. "open",
  13448. "closed",
  13449. "all"
  13450. ],
  13451. "type": "string",
  13452. "default": "open",
  13453. "description": "State of pull request",
  13454. "name": "state",
  13455. "in": "query"
  13456. },
  13457. {
  13458. "enum": [
  13459. "oldest",
  13460. "recentupdate",
  13461. "recentclose",
  13462. "leastupdate",
  13463. "mostcomment",
  13464. "leastcomment",
  13465. "priority"
  13466. ],
  13467. "type": "string",
  13468. "description": "Type of sort",
  13469. "name": "sort",
  13470. "in": "query"
  13471. },
  13472. {
  13473. "type": "integer",
  13474. "format": "int64",
  13475. "description": "ID of the milestone",
  13476. "name": "milestone",
  13477. "in": "query"
  13478. },
  13479. {
  13480. "type": "array",
  13481. "items": {
  13482. "type": "integer",
  13483. "format": "int64"
  13484. },
  13485. "collectionFormat": "multi",
  13486. "description": "Label IDs",
  13487. "name": "labels",
  13488. "in": "query"
  13489. },
  13490. {
  13491. "type": "string",
  13492. "description": "Filter by pull request author",
  13493. "name": "poster",
  13494. "in": "query"
  13495. },
  13496. {
  13497. "minimum": 1,
  13498. "type": "integer",
  13499. "default": 1,
  13500. "description": "Page number of results to return (1-based)",
  13501. "name": "page",
  13502. "in": "query"
  13503. },
  13504. {
  13505. "minimum": 0,
  13506. "type": "integer",
  13507. "description": "Page size of results",
  13508. "name": "limit",
  13509. "in": "query"
  13510. }
  13511. ],
  13512. "responses": {
  13513. "200": {
  13514. "$ref": "#/responses/PullRequestList"
  13515. },
  13516. "404": {
  13517. "$ref": "#/responses/notFound"
  13518. },
  13519. "500": {
  13520. "$ref": "#/responses/error"
  13521. }
  13522. }
  13523. },
  13524. "post": {
  13525. "consumes": [
  13526. "application/json"
  13527. ],
  13528. "produces": [
  13529. "application/json"
  13530. ],
  13531. "tags": [
  13532. "repository"
  13533. ],
  13534. "summary": "Create a pull request",
  13535. "operationId": "repoCreatePullRequest",
  13536. "parameters": [
  13537. {
  13538. "type": "string",
  13539. "description": "owner of the repo",
  13540. "name": "owner",
  13541. "in": "path",
  13542. "required": true
  13543. },
  13544. {
  13545. "type": "string",
  13546. "description": "name of the repo",
  13547. "name": "repo",
  13548. "in": "path",
  13549. "required": true
  13550. },
  13551. {
  13552. "name": "body",
  13553. "in": "body",
  13554. "schema": {
  13555. "$ref": "#/definitions/CreatePullRequestOption"
  13556. }
  13557. }
  13558. ],
  13559. "responses": {
  13560. "201": {
  13561. "$ref": "#/responses/PullRequest"
  13562. },
  13563. "403": {
  13564. "$ref": "#/responses/forbidden"
  13565. },
  13566. "404": {
  13567. "$ref": "#/responses/notFound"
  13568. },
  13569. "409": {
  13570. "$ref": "#/responses/error"
  13571. },
  13572. "422": {
  13573. "$ref": "#/responses/validationError"
  13574. },
  13575. "423": {
  13576. "$ref": "#/responses/repoArchivedError"
  13577. }
  13578. }
  13579. }
  13580. },
  13581. "/repos/{owner}/{repo}/pulls/pinned": {
  13582. "get": {
  13583. "produces": [
  13584. "application/json"
  13585. ],
  13586. "tags": [
  13587. "repository"
  13588. ],
  13589. "summary": "List a repo's pinned pull requests",
  13590. "operationId": "repoListPinnedPullRequests",
  13591. "parameters": [
  13592. {
  13593. "type": "string",
  13594. "description": "owner of the repo",
  13595. "name": "owner",
  13596. "in": "path",
  13597. "required": true
  13598. },
  13599. {
  13600. "type": "string",
  13601. "description": "name of the repo",
  13602. "name": "repo",
  13603. "in": "path",
  13604. "required": true
  13605. }
  13606. ],
  13607. "responses": {
  13608. "200": {
  13609. "$ref": "#/responses/PullRequestList"
  13610. },
  13611. "404": {
  13612. "$ref": "#/responses/notFound"
  13613. }
  13614. }
  13615. }
  13616. },
  13617. "/repos/{owner}/{repo}/pulls/{base}/{head}": {
  13618. "get": {
  13619. "produces": [
  13620. "application/json"
  13621. ],
  13622. "tags": [
  13623. "repository"
  13624. ],
  13625. "summary": "Get a pull request by base and head",
  13626. "operationId": "repoGetPullRequestByBaseHead",
  13627. "parameters": [
  13628. {
  13629. "type": "string",
  13630. "description": "owner of the repo",
  13631. "name": "owner",
  13632. "in": "path",
  13633. "required": true
  13634. },
  13635. {
  13636. "type": "string",
  13637. "description": "name of the repo",
  13638. "name": "repo",
  13639. "in": "path",
  13640. "required": true
  13641. },
  13642. {
  13643. "type": "string",
  13644. "description": "base of the pull request to get",
  13645. "name": "base",
  13646. "in": "path",
  13647. "required": true
  13648. },
  13649. {
  13650. "type": "string",
  13651. "description": "head of the pull request to get",
  13652. "name": "head",
  13653. "in": "path",
  13654. "required": true
  13655. }
  13656. ],
  13657. "responses": {
  13658. "200": {
  13659. "$ref": "#/responses/PullRequest"
  13660. },
  13661. "404": {
  13662. "$ref": "#/responses/notFound"
  13663. }
  13664. }
  13665. }
  13666. },
  13667. "/repos/{owner}/{repo}/pulls/{index}": {
  13668. "get": {
  13669. "produces": [
  13670. "application/json"
  13671. ],
  13672. "tags": [
  13673. "repository"
  13674. ],
  13675. "summary": "Get a pull request",
  13676. "operationId": "repoGetPullRequest",
  13677. "parameters": [
  13678. {
  13679. "type": "string",
  13680. "description": "owner of the repo",
  13681. "name": "owner",
  13682. "in": "path",
  13683. "required": true
  13684. },
  13685. {
  13686. "type": "string",
  13687. "description": "name of the repo",
  13688. "name": "repo",
  13689. "in": "path",
  13690. "required": true
  13691. },
  13692. {
  13693. "type": "integer",
  13694. "format": "int64",
  13695. "description": "index of the pull request to get",
  13696. "name": "index",
  13697. "in": "path",
  13698. "required": true
  13699. }
  13700. ],
  13701. "responses": {
  13702. "200": {
  13703. "$ref": "#/responses/PullRequest"
  13704. },
  13705. "404": {
  13706. "$ref": "#/responses/notFound"
  13707. }
  13708. }
  13709. },
  13710. "patch": {
  13711. "consumes": [
  13712. "application/json"
  13713. ],
  13714. "produces": [
  13715. "application/json"
  13716. ],
  13717. "tags": [
  13718. "repository"
  13719. ],
  13720. "summary": "Update a pull request. If using deadline only the date will be taken into account, and time of day ignored.",
  13721. "operationId": "repoEditPullRequest",
  13722. "parameters": [
  13723. {
  13724. "type": "string",
  13725. "description": "owner of the repo",
  13726. "name": "owner",
  13727. "in": "path",
  13728. "required": true
  13729. },
  13730. {
  13731. "type": "string",
  13732. "description": "name of the repo",
  13733. "name": "repo",
  13734. "in": "path",
  13735. "required": true
  13736. },
  13737. {
  13738. "type": "integer",
  13739. "format": "int64",
  13740. "description": "index of the pull request to edit",
  13741. "name": "index",
  13742. "in": "path",
  13743. "required": true
  13744. },
  13745. {
  13746. "name": "body",
  13747. "in": "body",
  13748. "schema": {
  13749. "$ref": "#/definitions/EditPullRequestOption"
  13750. }
  13751. }
  13752. ],
  13753. "responses": {
  13754. "201": {
  13755. "$ref": "#/responses/PullRequest"
  13756. },
  13757. "403": {
  13758. "$ref": "#/responses/forbidden"
  13759. },
  13760. "404": {
  13761. "$ref": "#/responses/notFound"
  13762. },
  13763. "409": {
  13764. "$ref": "#/responses/error"
  13765. },
  13766. "412": {
  13767. "$ref": "#/responses/error"
  13768. },
  13769. "422": {
  13770. "$ref": "#/responses/validationError"
  13771. }
  13772. }
  13773. }
  13774. },
  13775. "/repos/{owner}/{repo}/pulls/{index}.{diffType}": {
  13776. "get": {
  13777. "produces": [
  13778. "text/plain"
  13779. ],
  13780. "tags": [
  13781. "repository"
  13782. ],
  13783. "summary": "Get a pull request diff or patch",
  13784. "operationId": "repoDownloadPullDiffOrPatch",
  13785. "parameters": [
  13786. {
  13787. "type": "string",
  13788. "description": "owner of the repo",
  13789. "name": "owner",
  13790. "in": "path",
  13791. "required": true
  13792. },
  13793. {
  13794. "type": "string",
  13795. "description": "name of the repo",
  13796. "name": "repo",
  13797. "in": "path",
  13798. "required": true
  13799. },
  13800. {
  13801. "type": "integer",
  13802. "format": "int64",
  13803. "description": "index of the pull request to get",
  13804. "name": "index",
  13805. "in": "path",
  13806. "required": true
  13807. },
  13808. {
  13809. "enum": [
  13810. "diff",
  13811. "patch"
  13812. ],
  13813. "type": "string",
  13814. "description": "whether the output is diff or patch",
  13815. "name": "diffType",
  13816. "in": "path",
  13817. "required": true
  13818. },
  13819. {
  13820. "type": "boolean",
  13821. "description": "whether to include binary file changes. if true, the diff is applicable with `git apply`",
  13822. "name": "binary",
  13823. "in": "query"
  13824. }
  13825. ],
  13826. "responses": {
  13827. "200": {
  13828. "$ref": "#/responses/string"
  13829. },
  13830. "404": {
  13831. "$ref": "#/responses/notFound"
  13832. }
  13833. }
  13834. }
  13835. },
  13836. "/repos/{owner}/{repo}/pulls/{index}/commits": {
  13837. "get": {
  13838. "produces": [
  13839. "application/json"
  13840. ],
  13841. "tags": [
  13842. "repository"
  13843. ],
  13844. "summary": "Get commits for a pull request",
  13845. "operationId": "repoGetPullRequestCommits",
  13846. "parameters": [
  13847. {
  13848. "type": "string",
  13849. "description": "owner of the repo",
  13850. "name": "owner",
  13851. "in": "path",
  13852. "required": true
  13853. },
  13854. {
  13855. "type": "string",
  13856. "description": "name of the repo",
  13857. "name": "repo",
  13858. "in": "path",
  13859. "required": true
  13860. },
  13861. {
  13862. "type": "integer",
  13863. "format": "int64",
  13864. "description": "index of the pull request to get",
  13865. "name": "index",
  13866. "in": "path",
  13867. "required": true
  13868. },
  13869. {
  13870. "type": "integer",
  13871. "description": "page number of results to return (1-based)",
  13872. "name": "page",
  13873. "in": "query"
  13874. },
  13875. {
  13876. "type": "integer",
  13877. "description": "page size of results",
  13878. "name": "limit",
  13879. "in": "query"
  13880. },
  13881. {
  13882. "type": "boolean",
  13883. "description": "include verification for every commit (disable for speedup, default 'true')",
  13884. "name": "verification",
  13885. "in": "query"
  13886. },
  13887. {
  13888. "type": "boolean",
  13889. "description": "include a list of affected files for every commit (disable for speedup, default 'true')",
  13890. "name": "files",
  13891. "in": "query"
  13892. }
  13893. ],
  13894. "responses": {
  13895. "200": {
  13896. "$ref": "#/responses/CommitList"
  13897. },
  13898. "404": {
  13899. "$ref": "#/responses/notFound"
  13900. }
  13901. }
  13902. }
  13903. },
  13904. "/repos/{owner}/{repo}/pulls/{index}/files": {
  13905. "get": {
  13906. "produces": [
  13907. "application/json"
  13908. ],
  13909. "tags": [
  13910. "repository"
  13911. ],
  13912. "summary": "Get changed files for a pull request",
  13913. "operationId": "repoGetPullRequestFiles",
  13914. "parameters": [
  13915. {
  13916. "type": "string",
  13917. "description": "owner of the repo",
  13918. "name": "owner",
  13919. "in": "path",
  13920. "required": true
  13921. },
  13922. {
  13923. "type": "string",
  13924. "description": "name of the repo",
  13925. "name": "repo",
  13926. "in": "path",
  13927. "required": true
  13928. },
  13929. {
  13930. "type": "integer",
  13931. "format": "int64",
  13932. "description": "index of the pull request to get",
  13933. "name": "index",
  13934. "in": "path",
  13935. "required": true
  13936. },
  13937. {
  13938. "type": "string",
  13939. "description": "skip to given file",
  13940. "name": "skip-to",
  13941. "in": "query"
  13942. },
  13943. {
  13944. "enum": [
  13945. "ignore-all",
  13946. "ignore-change",
  13947. "ignore-eol",
  13948. "show-all"
  13949. ],
  13950. "type": "string",
  13951. "description": "whitespace behavior",
  13952. "name": "whitespace",
  13953. "in": "query"
  13954. },
  13955. {
  13956. "type": "integer",
  13957. "description": "page number of results to return (1-based)",
  13958. "name": "page",
  13959. "in": "query"
  13960. },
  13961. {
  13962. "type": "integer",
  13963. "description": "page size of results",
  13964. "name": "limit",
  13965. "in": "query"
  13966. }
  13967. ],
  13968. "responses": {
  13969. "200": {
  13970. "$ref": "#/responses/ChangedFileList"
  13971. },
  13972. "404": {
  13973. "$ref": "#/responses/notFound"
  13974. }
  13975. }
  13976. }
  13977. },
  13978. "/repos/{owner}/{repo}/pulls/{index}/merge": {
  13979. "get": {
  13980. "produces": [
  13981. "application/json"
  13982. ],
  13983. "tags": [
  13984. "repository"
  13985. ],
  13986. "summary": "Check if a pull request has been merged",
  13987. "operationId": "repoPullRequestIsMerged",
  13988. "parameters": [
  13989. {
  13990. "type": "string",
  13991. "description": "owner of the repo",
  13992. "name": "owner",
  13993. "in": "path",
  13994. "required": true
  13995. },
  13996. {
  13997. "type": "string",
  13998. "description": "name of the repo",
  13999. "name": "repo",
  14000. "in": "path",
  14001. "required": true
  14002. },
  14003. {
  14004. "type": "integer",
  14005. "format": "int64",
  14006. "description": "index of the pull request",
  14007. "name": "index",
  14008. "in": "path",
  14009. "required": true
  14010. }
  14011. ],
  14012. "responses": {
  14013. "204": {
  14014. "description": "pull request has been merged"
  14015. },
  14016. "404": {
  14017. "description": "pull request has not been merged"
  14018. }
  14019. }
  14020. },
  14021. "post": {
  14022. "produces": [
  14023. "application/json"
  14024. ],
  14025. "tags": [
  14026. "repository"
  14027. ],
  14028. "summary": "Merge a pull request",
  14029. "operationId": "repoMergePullRequest",
  14030. "parameters": [
  14031. {
  14032. "type": "string",
  14033. "description": "owner of the repo",
  14034. "name": "owner",
  14035. "in": "path",
  14036. "required": true
  14037. },
  14038. {
  14039. "type": "string",
  14040. "description": "name of the repo",
  14041. "name": "repo",
  14042. "in": "path",
  14043. "required": true
  14044. },
  14045. {
  14046. "type": "integer",
  14047. "format": "int64",
  14048. "description": "index of the pull request to merge",
  14049. "name": "index",
  14050. "in": "path",
  14051. "required": true
  14052. },
  14053. {
  14054. "name": "body",
  14055. "in": "body",
  14056. "schema": {
  14057. "$ref": "#/definitions/MergePullRequestOption"
  14058. }
  14059. }
  14060. ],
  14061. "responses": {
  14062. "200": {
  14063. "$ref": "#/responses/empty"
  14064. },
  14065. "404": {
  14066. "$ref": "#/responses/notFound"
  14067. },
  14068. "405": {
  14069. "$ref": "#/responses/empty"
  14070. },
  14071. "409": {
  14072. "$ref": "#/responses/error"
  14073. },
  14074. "423": {
  14075. "$ref": "#/responses/repoArchivedError"
  14076. }
  14077. }
  14078. },
  14079. "delete": {
  14080. "produces": [
  14081. "application/json"
  14082. ],
  14083. "tags": [
  14084. "repository"
  14085. ],
  14086. "summary": "Cancel the scheduled auto merge for the given pull request",
  14087. "operationId": "repoCancelScheduledAutoMerge",
  14088. "parameters": [
  14089. {
  14090. "type": "string",
  14091. "description": "owner of the repo",
  14092. "name": "owner",
  14093. "in": "path",
  14094. "required": true
  14095. },
  14096. {
  14097. "type": "string",
  14098. "description": "name of the repo",
  14099. "name": "repo",
  14100. "in": "path",
  14101. "required": true
  14102. },
  14103. {
  14104. "type": "integer",
  14105. "format": "int64",
  14106. "description": "index of the pull request to merge",
  14107. "name": "index",
  14108. "in": "path",
  14109. "required": true
  14110. }
  14111. ],
  14112. "responses": {
  14113. "204": {
  14114. "$ref": "#/responses/empty"
  14115. },
  14116. "403": {
  14117. "$ref": "#/responses/forbidden"
  14118. },
  14119. "404": {
  14120. "$ref": "#/responses/notFound"
  14121. },
  14122. "423": {
  14123. "$ref": "#/responses/repoArchivedError"
  14124. }
  14125. }
  14126. }
  14127. },
  14128. "/repos/{owner}/{repo}/pulls/{index}/requested_reviewers": {
  14129. "post": {
  14130. "produces": [
  14131. "application/json"
  14132. ],
  14133. "tags": [
  14134. "repository"
  14135. ],
  14136. "summary": "create review requests for a pull request",
  14137. "operationId": "repoCreatePullReviewRequests",
  14138. "parameters": [
  14139. {
  14140. "type": "string",
  14141. "description": "owner of the repo",
  14142. "name": "owner",
  14143. "in": "path",
  14144. "required": true
  14145. },
  14146. {
  14147. "type": "string",
  14148. "description": "name of the repo",
  14149. "name": "repo",
  14150. "in": "path",
  14151. "required": true
  14152. },
  14153. {
  14154. "type": "integer",
  14155. "format": "int64",
  14156. "description": "index of the pull request",
  14157. "name": "index",
  14158. "in": "path",
  14159. "required": true
  14160. },
  14161. {
  14162. "name": "body",
  14163. "in": "body",
  14164. "required": true,
  14165. "schema": {
  14166. "$ref": "#/definitions/PullReviewRequestOptions"
  14167. }
  14168. }
  14169. ],
  14170. "responses": {
  14171. "201": {
  14172. "$ref": "#/responses/PullReviewList"
  14173. },
  14174. "404": {
  14175. "$ref": "#/responses/notFound"
  14176. },
  14177. "422": {
  14178. "$ref": "#/responses/validationError"
  14179. }
  14180. }
  14181. },
  14182. "delete": {
  14183. "produces": [
  14184. "application/json"
  14185. ],
  14186. "tags": [
  14187. "repository"
  14188. ],
  14189. "summary": "cancel review requests for a pull request",
  14190. "operationId": "repoDeletePullReviewRequests",
  14191. "parameters": [
  14192. {
  14193. "type": "string",
  14194. "description": "owner of the repo",
  14195. "name": "owner",
  14196. "in": "path",
  14197. "required": true
  14198. },
  14199. {
  14200. "type": "string",
  14201. "description": "name of the repo",
  14202. "name": "repo",
  14203. "in": "path",
  14204. "required": true
  14205. },
  14206. {
  14207. "type": "integer",
  14208. "format": "int64",
  14209. "description": "index of the pull request",
  14210. "name": "index",
  14211. "in": "path",
  14212. "required": true
  14213. },
  14214. {
  14215. "name": "body",
  14216. "in": "body",
  14217. "required": true,
  14218. "schema": {
  14219. "$ref": "#/definitions/PullReviewRequestOptions"
  14220. }
  14221. }
  14222. ],
  14223. "responses": {
  14224. "204": {
  14225. "$ref": "#/responses/empty"
  14226. },
  14227. "403": {
  14228. "$ref": "#/responses/forbidden"
  14229. },
  14230. "404": {
  14231. "$ref": "#/responses/notFound"
  14232. },
  14233. "422": {
  14234. "$ref": "#/responses/validationError"
  14235. }
  14236. }
  14237. }
  14238. },
  14239. "/repos/{owner}/{repo}/pulls/{index}/reviews": {
  14240. "get": {
  14241. "produces": [
  14242. "application/json"
  14243. ],
  14244. "tags": [
  14245. "repository"
  14246. ],
  14247. "summary": "List all reviews for a pull request",
  14248. "operationId": "repoListPullReviews",
  14249. "parameters": [
  14250. {
  14251. "type": "string",
  14252. "description": "owner of the repo",
  14253. "name": "owner",
  14254. "in": "path",
  14255. "required": true
  14256. },
  14257. {
  14258. "type": "string",
  14259. "description": "name of the repo",
  14260. "name": "repo",
  14261. "in": "path",
  14262. "required": true
  14263. },
  14264. {
  14265. "type": "integer",
  14266. "format": "int64",
  14267. "description": "index of the pull request",
  14268. "name": "index",
  14269. "in": "path",
  14270. "required": true
  14271. },
  14272. {
  14273. "type": "integer",
  14274. "description": "page number of results to return (1-based)",
  14275. "name": "page",
  14276. "in": "query"
  14277. },
  14278. {
  14279. "type": "integer",
  14280. "description": "page size of results",
  14281. "name": "limit",
  14282. "in": "query"
  14283. }
  14284. ],
  14285. "responses": {
  14286. "200": {
  14287. "$ref": "#/responses/PullReviewList"
  14288. },
  14289. "404": {
  14290. "$ref": "#/responses/notFound"
  14291. }
  14292. }
  14293. },
  14294. "post": {
  14295. "produces": [
  14296. "application/json"
  14297. ],
  14298. "tags": [
  14299. "repository"
  14300. ],
  14301. "summary": "Create a review to an pull request",
  14302. "operationId": "repoCreatePullReview",
  14303. "parameters": [
  14304. {
  14305. "type": "string",
  14306. "description": "owner of the repo",
  14307. "name": "owner",
  14308. "in": "path",
  14309. "required": true
  14310. },
  14311. {
  14312. "type": "string",
  14313. "description": "name of the repo",
  14314. "name": "repo",
  14315. "in": "path",
  14316. "required": true
  14317. },
  14318. {
  14319. "type": "integer",
  14320. "format": "int64",
  14321. "description": "index of the pull request",
  14322. "name": "index",
  14323. "in": "path",
  14324. "required": true
  14325. },
  14326. {
  14327. "name": "body",
  14328. "in": "body",
  14329. "required": true,
  14330. "schema": {
  14331. "$ref": "#/definitions/CreatePullReviewOptions"
  14332. }
  14333. }
  14334. ],
  14335. "responses": {
  14336. "200": {
  14337. "$ref": "#/responses/PullReview"
  14338. },
  14339. "404": {
  14340. "$ref": "#/responses/notFound"
  14341. },
  14342. "422": {
  14343. "$ref": "#/responses/validationError"
  14344. }
  14345. }
  14346. }
  14347. },
  14348. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}": {
  14349. "get": {
  14350. "produces": [
  14351. "application/json"
  14352. ],
  14353. "tags": [
  14354. "repository"
  14355. ],
  14356. "summary": "Get a specific review for a pull request",
  14357. "operationId": "repoGetPullReview",
  14358. "parameters": [
  14359. {
  14360. "type": "string",
  14361. "description": "owner of the repo",
  14362. "name": "owner",
  14363. "in": "path",
  14364. "required": true
  14365. },
  14366. {
  14367. "type": "string",
  14368. "description": "name of the repo",
  14369. "name": "repo",
  14370. "in": "path",
  14371. "required": true
  14372. },
  14373. {
  14374. "type": "integer",
  14375. "format": "int64",
  14376. "description": "index of the pull request",
  14377. "name": "index",
  14378. "in": "path",
  14379. "required": true
  14380. },
  14381. {
  14382. "type": "integer",
  14383. "format": "int64",
  14384. "description": "id of the review",
  14385. "name": "id",
  14386. "in": "path",
  14387. "required": true
  14388. }
  14389. ],
  14390. "responses": {
  14391. "200": {
  14392. "$ref": "#/responses/PullReview"
  14393. },
  14394. "404": {
  14395. "$ref": "#/responses/notFound"
  14396. }
  14397. }
  14398. },
  14399. "post": {
  14400. "produces": [
  14401. "application/json"
  14402. ],
  14403. "tags": [
  14404. "repository"
  14405. ],
  14406. "summary": "Submit a pending review to an pull request",
  14407. "operationId": "repoSubmitPullReview",
  14408. "parameters": [
  14409. {
  14410. "type": "string",
  14411. "description": "owner of the repo",
  14412. "name": "owner",
  14413. "in": "path",
  14414. "required": true
  14415. },
  14416. {
  14417. "type": "string",
  14418. "description": "name of the repo",
  14419. "name": "repo",
  14420. "in": "path",
  14421. "required": true
  14422. },
  14423. {
  14424. "type": "integer",
  14425. "format": "int64",
  14426. "description": "index of the pull request",
  14427. "name": "index",
  14428. "in": "path",
  14429. "required": true
  14430. },
  14431. {
  14432. "type": "integer",
  14433. "format": "int64",
  14434. "description": "id of the review",
  14435. "name": "id",
  14436. "in": "path",
  14437. "required": true
  14438. },
  14439. {
  14440. "name": "body",
  14441. "in": "body",
  14442. "required": true,
  14443. "schema": {
  14444. "$ref": "#/definitions/SubmitPullReviewOptions"
  14445. }
  14446. }
  14447. ],
  14448. "responses": {
  14449. "200": {
  14450. "$ref": "#/responses/PullReview"
  14451. },
  14452. "404": {
  14453. "$ref": "#/responses/notFound"
  14454. },
  14455. "422": {
  14456. "$ref": "#/responses/validationError"
  14457. }
  14458. }
  14459. },
  14460. "delete": {
  14461. "produces": [
  14462. "application/json"
  14463. ],
  14464. "tags": [
  14465. "repository"
  14466. ],
  14467. "summary": "Delete a specific review from a pull request",
  14468. "operationId": "repoDeletePullReview",
  14469. "parameters": [
  14470. {
  14471. "type": "string",
  14472. "description": "owner of the repo",
  14473. "name": "owner",
  14474. "in": "path",
  14475. "required": true
  14476. },
  14477. {
  14478. "type": "string",
  14479. "description": "name of the repo",
  14480. "name": "repo",
  14481. "in": "path",
  14482. "required": true
  14483. },
  14484. {
  14485. "type": "integer",
  14486. "format": "int64",
  14487. "description": "index of the pull request",
  14488. "name": "index",
  14489. "in": "path",
  14490. "required": true
  14491. },
  14492. {
  14493. "type": "integer",
  14494. "format": "int64",
  14495. "description": "id of the review",
  14496. "name": "id",
  14497. "in": "path",
  14498. "required": true
  14499. }
  14500. ],
  14501. "responses": {
  14502. "204": {
  14503. "$ref": "#/responses/empty"
  14504. },
  14505. "403": {
  14506. "$ref": "#/responses/forbidden"
  14507. },
  14508. "404": {
  14509. "$ref": "#/responses/notFound"
  14510. }
  14511. }
  14512. }
  14513. },
  14514. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/comments": {
  14515. "get": {
  14516. "produces": [
  14517. "application/json"
  14518. ],
  14519. "tags": [
  14520. "repository"
  14521. ],
  14522. "summary": "Get a specific review for a pull request",
  14523. "operationId": "repoGetPullReviewComments",
  14524. "parameters": [
  14525. {
  14526. "type": "string",
  14527. "description": "owner of the repo",
  14528. "name": "owner",
  14529. "in": "path",
  14530. "required": true
  14531. },
  14532. {
  14533. "type": "string",
  14534. "description": "name of the repo",
  14535. "name": "repo",
  14536. "in": "path",
  14537. "required": true
  14538. },
  14539. {
  14540. "type": "integer",
  14541. "format": "int64",
  14542. "description": "index of the pull request",
  14543. "name": "index",
  14544. "in": "path",
  14545. "required": true
  14546. },
  14547. {
  14548. "type": "integer",
  14549. "format": "int64",
  14550. "description": "id of the review",
  14551. "name": "id",
  14552. "in": "path",
  14553. "required": true
  14554. }
  14555. ],
  14556. "responses": {
  14557. "200": {
  14558. "$ref": "#/responses/PullReviewCommentList"
  14559. },
  14560. "404": {
  14561. "$ref": "#/responses/notFound"
  14562. }
  14563. }
  14564. }
  14565. },
  14566. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/dismissals": {
  14567. "post": {
  14568. "produces": [
  14569. "application/json"
  14570. ],
  14571. "tags": [
  14572. "repository"
  14573. ],
  14574. "summary": "Dismiss a review for a pull request",
  14575. "operationId": "repoDismissPullReview",
  14576. "parameters": [
  14577. {
  14578. "type": "string",
  14579. "description": "owner of the repo",
  14580. "name": "owner",
  14581. "in": "path",
  14582. "required": true
  14583. },
  14584. {
  14585. "type": "string",
  14586. "description": "name of the repo",
  14587. "name": "repo",
  14588. "in": "path",
  14589. "required": true
  14590. },
  14591. {
  14592. "type": "integer",
  14593. "format": "int64",
  14594. "description": "index of the pull request",
  14595. "name": "index",
  14596. "in": "path",
  14597. "required": true
  14598. },
  14599. {
  14600. "type": "integer",
  14601. "format": "int64",
  14602. "description": "id of the review",
  14603. "name": "id",
  14604. "in": "path",
  14605. "required": true
  14606. },
  14607. {
  14608. "name": "body",
  14609. "in": "body",
  14610. "required": true,
  14611. "schema": {
  14612. "$ref": "#/definitions/DismissPullReviewOptions"
  14613. }
  14614. }
  14615. ],
  14616. "responses": {
  14617. "200": {
  14618. "$ref": "#/responses/PullReview"
  14619. },
  14620. "403": {
  14621. "$ref": "#/responses/forbidden"
  14622. },
  14623. "404": {
  14624. "$ref": "#/responses/notFound"
  14625. },
  14626. "422": {
  14627. "$ref": "#/responses/validationError"
  14628. }
  14629. }
  14630. }
  14631. },
  14632. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/undismissals": {
  14633. "post": {
  14634. "produces": [
  14635. "application/json"
  14636. ],
  14637. "tags": [
  14638. "repository"
  14639. ],
  14640. "summary": "Cancel to dismiss a review for a pull request",
  14641. "operationId": "repoUnDismissPullReview",
  14642. "parameters": [
  14643. {
  14644. "type": "string",
  14645. "description": "owner of the repo",
  14646. "name": "owner",
  14647. "in": "path",
  14648. "required": true
  14649. },
  14650. {
  14651. "type": "string",
  14652. "description": "name of the repo",
  14653. "name": "repo",
  14654. "in": "path",
  14655. "required": true
  14656. },
  14657. {
  14658. "type": "integer",
  14659. "format": "int64",
  14660. "description": "index of the pull request",
  14661. "name": "index",
  14662. "in": "path",
  14663. "required": true
  14664. },
  14665. {
  14666. "type": "integer",
  14667. "format": "int64",
  14668. "description": "id of the review",
  14669. "name": "id",
  14670. "in": "path",
  14671. "required": true
  14672. }
  14673. ],
  14674. "responses": {
  14675. "200": {
  14676. "$ref": "#/responses/PullReview"
  14677. },
  14678. "403": {
  14679. "$ref": "#/responses/forbidden"
  14680. },
  14681. "404": {
  14682. "$ref": "#/responses/notFound"
  14683. },
  14684. "422": {
  14685. "$ref": "#/responses/validationError"
  14686. }
  14687. }
  14688. }
  14689. },
  14690. "/repos/{owner}/{repo}/pulls/{index}/update": {
  14691. "post": {
  14692. "produces": [
  14693. "application/json"
  14694. ],
  14695. "tags": [
  14696. "repository"
  14697. ],
  14698. "summary": "Merge PR's baseBranch into headBranch",
  14699. "operationId": "repoUpdatePullRequest",
  14700. "parameters": [
  14701. {
  14702. "type": "string",
  14703. "description": "owner of the repo",
  14704. "name": "owner",
  14705. "in": "path",
  14706. "required": true
  14707. },
  14708. {
  14709. "type": "string",
  14710. "description": "name of the repo",
  14711. "name": "repo",
  14712. "in": "path",
  14713. "required": true
  14714. },
  14715. {
  14716. "type": "integer",
  14717. "format": "int64",
  14718. "description": "index of the pull request to get",
  14719. "name": "index",
  14720. "in": "path",
  14721. "required": true
  14722. },
  14723. {
  14724. "enum": [
  14725. "merge",
  14726. "rebase"
  14727. ],
  14728. "type": "string",
  14729. "description": "how to update pull request",
  14730. "name": "style",
  14731. "in": "query"
  14732. }
  14733. ],
  14734. "responses": {
  14735. "200": {
  14736. "$ref": "#/responses/empty"
  14737. },
  14738. "403": {
  14739. "$ref": "#/responses/forbidden"
  14740. },
  14741. "404": {
  14742. "$ref": "#/responses/notFound"
  14743. },
  14744. "409": {
  14745. "$ref": "#/responses/error"
  14746. },
  14747. "422": {
  14748. "$ref": "#/responses/validationError"
  14749. }
  14750. }
  14751. }
  14752. },
  14753. "/repos/{owner}/{repo}/push_mirrors": {
  14754. "get": {
  14755. "produces": [
  14756. "application/json"
  14757. ],
  14758. "tags": [
  14759. "repository"
  14760. ],
  14761. "summary": "Get all push mirrors of the repository",
  14762. "operationId": "repoListPushMirrors",
  14763. "parameters": [
  14764. {
  14765. "type": "string",
  14766. "description": "owner of the repo",
  14767. "name": "owner",
  14768. "in": "path",
  14769. "required": true
  14770. },
  14771. {
  14772. "type": "string",
  14773. "description": "name of the repo",
  14774. "name": "repo",
  14775. "in": "path",
  14776. "required": true
  14777. },
  14778. {
  14779. "type": "integer",
  14780. "description": "page number of results to return (1-based)",
  14781. "name": "page",
  14782. "in": "query"
  14783. },
  14784. {
  14785. "type": "integer",
  14786. "description": "page size of results",
  14787. "name": "limit",
  14788. "in": "query"
  14789. }
  14790. ],
  14791. "responses": {
  14792. "200": {
  14793. "$ref": "#/responses/PushMirrorList"
  14794. },
  14795. "400": {
  14796. "$ref": "#/responses/error"
  14797. },
  14798. "403": {
  14799. "$ref": "#/responses/forbidden"
  14800. },
  14801. "404": {
  14802. "$ref": "#/responses/notFound"
  14803. }
  14804. }
  14805. },
  14806. "post": {
  14807. "consumes": [
  14808. "application/json"
  14809. ],
  14810. "produces": [
  14811. "application/json"
  14812. ],
  14813. "tags": [
  14814. "repository"
  14815. ],
  14816. "summary": "add a push mirror to the repository",
  14817. "operationId": "repoAddPushMirror",
  14818. "parameters": [
  14819. {
  14820. "type": "string",
  14821. "description": "owner of the repo",
  14822. "name": "owner",
  14823. "in": "path",
  14824. "required": true
  14825. },
  14826. {
  14827. "type": "string",
  14828. "description": "name of the repo",
  14829. "name": "repo",
  14830. "in": "path",
  14831. "required": true
  14832. },
  14833. {
  14834. "name": "body",
  14835. "in": "body",
  14836. "schema": {
  14837. "$ref": "#/definitions/CreatePushMirrorOption"
  14838. }
  14839. }
  14840. ],
  14841. "responses": {
  14842. "200": {
  14843. "$ref": "#/responses/PushMirror"
  14844. },
  14845. "400": {
  14846. "$ref": "#/responses/error"
  14847. },
  14848. "403": {
  14849. "$ref": "#/responses/forbidden"
  14850. },
  14851. "404": {
  14852. "$ref": "#/responses/notFound"
  14853. }
  14854. }
  14855. }
  14856. },
  14857. "/repos/{owner}/{repo}/push_mirrors-sync": {
  14858. "post": {
  14859. "produces": [
  14860. "application/json"
  14861. ],
  14862. "tags": [
  14863. "repository"
  14864. ],
  14865. "summary": "Sync all push mirrored repository",
  14866. "operationId": "repoPushMirrorSync",
  14867. "parameters": [
  14868. {
  14869. "type": "string",
  14870. "description": "owner of the repo to sync",
  14871. "name": "owner",
  14872. "in": "path",
  14873. "required": true
  14874. },
  14875. {
  14876. "type": "string",
  14877. "description": "name of the repo to sync",
  14878. "name": "repo",
  14879. "in": "path",
  14880. "required": true
  14881. }
  14882. ],
  14883. "responses": {
  14884. "200": {
  14885. "$ref": "#/responses/empty"
  14886. },
  14887. "400": {
  14888. "$ref": "#/responses/error"
  14889. },
  14890. "403": {
  14891. "$ref": "#/responses/forbidden"
  14892. },
  14893. "404": {
  14894. "$ref": "#/responses/notFound"
  14895. }
  14896. }
  14897. }
  14898. },
  14899. "/repos/{owner}/{repo}/push_mirrors/{name}": {
  14900. "get": {
  14901. "produces": [
  14902. "application/json"
  14903. ],
  14904. "tags": [
  14905. "repository"
  14906. ],
  14907. "summary": "Get push mirror of the repository by remoteName",
  14908. "operationId": "repoGetPushMirrorByRemoteName",
  14909. "parameters": [
  14910. {
  14911. "type": "string",
  14912. "description": "owner of the repo",
  14913. "name": "owner",
  14914. "in": "path",
  14915. "required": true
  14916. },
  14917. {
  14918. "type": "string",
  14919. "description": "name of the repo",
  14920. "name": "repo",
  14921. "in": "path",
  14922. "required": true
  14923. },
  14924. {
  14925. "type": "string",
  14926. "description": "remote name of push mirror",
  14927. "name": "name",
  14928. "in": "path",
  14929. "required": true
  14930. }
  14931. ],
  14932. "responses": {
  14933. "200": {
  14934. "$ref": "#/responses/PushMirror"
  14935. },
  14936. "400": {
  14937. "$ref": "#/responses/error"
  14938. },
  14939. "403": {
  14940. "$ref": "#/responses/forbidden"
  14941. },
  14942. "404": {
  14943. "$ref": "#/responses/notFound"
  14944. }
  14945. }
  14946. },
  14947. "delete": {
  14948. "produces": [
  14949. "application/json"
  14950. ],
  14951. "tags": [
  14952. "repository"
  14953. ],
  14954. "summary": "deletes a push mirror from a repository by remoteName",
  14955. "operationId": "repoDeletePushMirror",
  14956. "parameters": [
  14957. {
  14958. "type": "string",
  14959. "description": "owner of the repo",
  14960. "name": "owner",
  14961. "in": "path",
  14962. "required": true
  14963. },
  14964. {
  14965. "type": "string",
  14966. "description": "name of the repo",
  14967. "name": "repo",
  14968. "in": "path",
  14969. "required": true
  14970. },
  14971. {
  14972. "type": "string",
  14973. "description": "remote name of the pushMirror",
  14974. "name": "name",
  14975. "in": "path",
  14976. "required": true
  14977. }
  14978. ],
  14979. "responses": {
  14980. "204": {
  14981. "$ref": "#/responses/empty"
  14982. },
  14983. "400": {
  14984. "$ref": "#/responses/error"
  14985. },
  14986. "404": {
  14987. "$ref": "#/responses/notFound"
  14988. }
  14989. }
  14990. }
  14991. },
  14992. "/repos/{owner}/{repo}/raw/{filepath}": {
  14993. "get": {
  14994. "produces": [
  14995. "application/octet-stream"
  14996. ],
  14997. "tags": [
  14998. "repository"
  14999. ],
  15000. "summary": "Get a file from a repository",
  15001. "operationId": "repoGetRawFile",
  15002. "parameters": [
  15003. {
  15004. "type": "string",
  15005. "description": "owner of the repo",
  15006. "name": "owner",
  15007. "in": "path",
  15008. "required": true
  15009. },
  15010. {
  15011. "type": "string",
  15012. "description": "name of the repo",
  15013. "name": "repo",
  15014. "in": "path",
  15015. "required": true
  15016. },
  15017. {
  15018. "type": "string",
  15019. "description": "path of the file to get, it should be \"{ref}/{filepath}\". If there is no ref could be inferred, it will be treated as the default branch",
  15020. "name": "filepath",
  15021. "in": "path",
  15022. "required": true
  15023. },
  15024. {
  15025. "type": "string",
  15026. "description": "The name of the commit/branch/tag. Default to the repository’s default branch",
  15027. "name": "ref",
  15028. "in": "query"
  15029. }
  15030. ],
  15031. "responses": {
  15032. "200": {
  15033. "description": "Returns raw file content.",
  15034. "schema": {
  15035. "type": "file"
  15036. }
  15037. },
  15038. "404": {
  15039. "$ref": "#/responses/notFound"
  15040. }
  15041. }
  15042. }
  15043. },
  15044. "/repos/{owner}/{repo}/releases": {
  15045. "get": {
  15046. "produces": [
  15047. "application/json"
  15048. ],
  15049. "tags": [
  15050. "repository"
  15051. ],
  15052. "summary": "List a repo's releases",
  15053. "operationId": "repoListReleases",
  15054. "parameters": [
  15055. {
  15056. "type": "string",
  15057. "description": "owner of the repo",
  15058. "name": "owner",
  15059. "in": "path",
  15060. "required": true
  15061. },
  15062. {
  15063. "type": "string",
  15064. "description": "name of the repo",
  15065. "name": "repo",
  15066. "in": "path",
  15067. "required": true
  15068. },
  15069. {
  15070. "type": "boolean",
  15071. "description": "filter (exclude / include) drafts, if you dont have repo write access none will show",
  15072. "name": "draft",
  15073. "in": "query"
  15074. },
  15075. {
  15076. "type": "boolean",
  15077. "description": "filter (exclude / include) pre-releases",
  15078. "name": "pre-release",
  15079. "in": "query"
  15080. },
  15081. {
  15082. "type": "integer",
  15083. "description": "page number of results to return (1-based)",
  15084. "name": "page",
  15085. "in": "query"
  15086. },
  15087. {
  15088. "type": "integer",
  15089. "description": "page size of results",
  15090. "name": "limit",
  15091. "in": "query"
  15092. }
  15093. ],
  15094. "responses": {
  15095. "200": {
  15096. "$ref": "#/responses/ReleaseList"
  15097. },
  15098. "404": {
  15099. "$ref": "#/responses/notFound"
  15100. }
  15101. }
  15102. },
  15103. "post": {
  15104. "consumes": [
  15105. "application/json"
  15106. ],
  15107. "produces": [
  15108. "application/json"
  15109. ],
  15110. "tags": [
  15111. "repository"
  15112. ],
  15113. "summary": "Create a release",
  15114. "operationId": "repoCreateRelease",
  15115. "parameters": [
  15116. {
  15117. "type": "string",
  15118. "description": "owner of the repo",
  15119. "name": "owner",
  15120. "in": "path",
  15121. "required": true
  15122. },
  15123. {
  15124. "type": "string",
  15125. "description": "name of the repo",
  15126. "name": "repo",
  15127. "in": "path",
  15128. "required": true
  15129. },
  15130. {
  15131. "name": "body",
  15132. "in": "body",
  15133. "schema": {
  15134. "$ref": "#/definitions/CreateReleaseOption"
  15135. }
  15136. }
  15137. ],
  15138. "responses": {
  15139. "201": {
  15140. "$ref": "#/responses/Release"
  15141. },
  15142. "404": {
  15143. "$ref": "#/responses/notFound"
  15144. },
  15145. "409": {
  15146. "$ref": "#/responses/error"
  15147. },
  15148. "422": {
  15149. "$ref": "#/responses/validationError"
  15150. }
  15151. }
  15152. }
  15153. },
  15154. "/repos/{owner}/{repo}/releases/latest": {
  15155. "get": {
  15156. "produces": [
  15157. "application/json"
  15158. ],
  15159. "tags": [
  15160. "repository"
  15161. ],
  15162. "summary": "Gets the most recent non-prerelease, non-draft release of a repository, sorted by created_at",
  15163. "operationId": "repoGetLatestRelease",
  15164. "parameters": [
  15165. {
  15166. "type": "string",
  15167. "description": "owner of the repo",
  15168. "name": "owner",
  15169. "in": "path",
  15170. "required": true
  15171. },
  15172. {
  15173. "type": "string",
  15174. "description": "name of the repo",
  15175. "name": "repo",
  15176. "in": "path",
  15177. "required": true
  15178. }
  15179. ],
  15180. "responses": {
  15181. "200": {
  15182. "$ref": "#/responses/Release"
  15183. },
  15184. "404": {
  15185. "$ref": "#/responses/notFound"
  15186. }
  15187. }
  15188. }
  15189. },
  15190. "/repos/{owner}/{repo}/releases/tags/{tag}": {
  15191. "get": {
  15192. "produces": [
  15193. "application/json"
  15194. ],
  15195. "tags": [
  15196. "repository"
  15197. ],
  15198. "summary": "Get a release by tag name",
  15199. "operationId": "repoGetReleaseByTag",
  15200. "parameters": [
  15201. {
  15202. "type": "string",
  15203. "description": "owner of the repo",
  15204. "name": "owner",
  15205. "in": "path",
  15206. "required": true
  15207. },
  15208. {
  15209. "type": "string",
  15210. "description": "name of the repo",
  15211. "name": "repo",
  15212. "in": "path",
  15213. "required": true
  15214. },
  15215. {
  15216. "type": "string",
  15217. "description": "tag name of the release to get",
  15218. "name": "tag",
  15219. "in": "path",
  15220. "required": true
  15221. }
  15222. ],
  15223. "responses": {
  15224. "200": {
  15225. "$ref": "#/responses/Release"
  15226. },
  15227. "404": {
  15228. "$ref": "#/responses/notFound"
  15229. }
  15230. }
  15231. },
  15232. "delete": {
  15233. "tags": [
  15234. "repository"
  15235. ],
  15236. "summary": "Delete a release by tag name",
  15237. "operationId": "repoDeleteReleaseByTag",
  15238. "parameters": [
  15239. {
  15240. "type": "string",
  15241. "description": "owner of the repo",
  15242. "name": "owner",
  15243. "in": "path",
  15244. "required": true
  15245. },
  15246. {
  15247. "type": "string",
  15248. "description": "name of the repo",
  15249. "name": "repo",
  15250. "in": "path",
  15251. "required": true
  15252. },
  15253. {
  15254. "type": "string",
  15255. "description": "tag name of the release to delete",
  15256. "name": "tag",
  15257. "in": "path",
  15258. "required": true
  15259. }
  15260. ],
  15261. "responses": {
  15262. "204": {
  15263. "$ref": "#/responses/empty"
  15264. },
  15265. "404": {
  15266. "$ref": "#/responses/notFound"
  15267. },
  15268. "422": {
  15269. "$ref": "#/responses/validationError"
  15270. }
  15271. }
  15272. }
  15273. },
  15274. "/repos/{owner}/{repo}/releases/{id}": {
  15275. "get": {
  15276. "produces": [
  15277. "application/json"
  15278. ],
  15279. "tags": [
  15280. "repository"
  15281. ],
  15282. "summary": "Get a release",
  15283. "operationId": "repoGetRelease",
  15284. "parameters": [
  15285. {
  15286. "type": "string",
  15287. "description": "owner of the repo",
  15288. "name": "owner",
  15289. "in": "path",
  15290. "required": true
  15291. },
  15292. {
  15293. "type": "string",
  15294. "description": "name of the repo",
  15295. "name": "repo",
  15296. "in": "path",
  15297. "required": true
  15298. },
  15299. {
  15300. "type": "integer",
  15301. "format": "int64",
  15302. "description": "id of the release to get",
  15303. "name": "id",
  15304. "in": "path",
  15305. "required": true
  15306. }
  15307. ],
  15308. "responses": {
  15309. "200": {
  15310. "$ref": "#/responses/Release"
  15311. },
  15312. "404": {
  15313. "$ref": "#/responses/notFound"
  15314. }
  15315. }
  15316. },
  15317. "delete": {
  15318. "tags": [
  15319. "repository"
  15320. ],
  15321. "summary": "Delete a release",
  15322. "operationId": "repoDeleteRelease",
  15323. "parameters": [
  15324. {
  15325. "type": "string",
  15326. "description": "owner of the repo",
  15327. "name": "owner",
  15328. "in": "path",
  15329. "required": true
  15330. },
  15331. {
  15332. "type": "string",
  15333. "description": "name of the repo",
  15334. "name": "repo",
  15335. "in": "path",
  15336. "required": true
  15337. },
  15338. {
  15339. "type": "integer",
  15340. "format": "int64",
  15341. "description": "id of the release to delete",
  15342. "name": "id",
  15343. "in": "path",
  15344. "required": true
  15345. }
  15346. ],
  15347. "responses": {
  15348. "204": {
  15349. "$ref": "#/responses/empty"
  15350. },
  15351. "404": {
  15352. "$ref": "#/responses/notFound"
  15353. },
  15354. "422": {
  15355. "$ref": "#/responses/validationError"
  15356. }
  15357. }
  15358. },
  15359. "patch": {
  15360. "consumes": [
  15361. "application/json"
  15362. ],
  15363. "produces": [
  15364. "application/json"
  15365. ],
  15366. "tags": [
  15367. "repository"
  15368. ],
  15369. "summary": "Update a release",
  15370. "operationId": "repoEditRelease",
  15371. "parameters": [
  15372. {
  15373. "type": "string",
  15374. "description": "owner of the repo",
  15375. "name": "owner",
  15376. "in": "path",
  15377. "required": true
  15378. },
  15379. {
  15380. "type": "string",
  15381. "description": "name of the repo",
  15382. "name": "repo",
  15383. "in": "path",
  15384. "required": true
  15385. },
  15386. {
  15387. "type": "integer",
  15388. "format": "int64",
  15389. "description": "id of the release to edit",
  15390. "name": "id",
  15391. "in": "path",
  15392. "required": true
  15393. },
  15394. {
  15395. "name": "body",
  15396. "in": "body",
  15397. "schema": {
  15398. "$ref": "#/definitions/EditReleaseOption"
  15399. }
  15400. }
  15401. ],
  15402. "responses": {
  15403. "200": {
  15404. "$ref": "#/responses/Release"
  15405. },
  15406. "404": {
  15407. "$ref": "#/responses/notFound"
  15408. }
  15409. }
  15410. }
  15411. },
  15412. "/repos/{owner}/{repo}/releases/{id}/assets": {
  15413. "get": {
  15414. "produces": [
  15415. "application/json"
  15416. ],
  15417. "tags": [
  15418. "repository"
  15419. ],
  15420. "summary": "List release's attachments",
  15421. "operationId": "repoListReleaseAttachments",
  15422. "parameters": [
  15423. {
  15424. "type": "string",
  15425. "description": "owner of the repo",
  15426. "name": "owner",
  15427. "in": "path",
  15428. "required": true
  15429. },
  15430. {
  15431. "type": "string",
  15432. "description": "name of the repo",
  15433. "name": "repo",
  15434. "in": "path",
  15435. "required": true
  15436. },
  15437. {
  15438. "type": "integer",
  15439. "format": "int64",
  15440. "description": "id of the release",
  15441. "name": "id",
  15442. "in": "path",
  15443. "required": true
  15444. }
  15445. ],
  15446. "responses": {
  15447. "200": {
  15448. "$ref": "#/responses/AttachmentList"
  15449. },
  15450. "404": {
  15451. "$ref": "#/responses/notFound"
  15452. }
  15453. }
  15454. },
  15455. "post": {
  15456. "consumes": [
  15457. "multipart/form-data",
  15458. "application/octet-stream"
  15459. ],
  15460. "produces": [
  15461. "application/json"
  15462. ],
  15463. "tags": [
  15464. "repository"
  15465. ],
  15466. "summary": "Create a release attachment",
  15467. "operationId": "repoCreateReleaseAttachment",
  15468. "parameters": [
  15469. {
  15470. "type": "string",
  15471. "description": "owner of the repo",
  15472. "name": "owner",
  15473. "in": "path",
  15474. "required": true
  15475. },
  15476. {
  15477. "type": "string",
  15478. "description": "name of the repo",
  15479. "name": "repo",
  15480. "in": "path",
  15481. "required": true
  15482. },
  15483. {
  15484. "type": "integer",
  15485. "format": "int64",
  15486. "description": "id of the release",
  15487. "name": "id",
  15488. "in": "path",
  15489. "required": true
  15490. },
  15491. {
  15492. "type": "string",
  15493. "description": "name of the attachment",
  15494. "name": "name",
  15495. "in": "query"
  15496. },
  15497. {
  15498. "type": "file",
  15499. "description": "attachment to upload",
  15500. "name": "attachment",
  15501. "in": "formData"
  15502. }
  15503. ],
  15504. "responses": {
  15505. "201": {
  15506. "$ref": "#/responses/Attachment"
  15507. },
  15508. "400": {
  15509. "$ref": "#/responses/error"
  15510. },
  15511. "404": {
  15512. "$ref": "#/responses/notFound"
  15513. }
  15514. }
  15515. }
  15516. },
  15517. "/repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}": {
  15518. "get": {
  15519. "produces": [
  15520. "application/json"
  15521. ],
  15522. "tags": [
  15523. "repository"
  15524. ],
  15525. "summary": "Get a release attachment",
  15526. "operationId": "repoGetReleaseAttachment",
  15527. "parameters": [
  15528. {
  15529. "type": "string",
  15530. "description": "owner of the repo",
  15531. "name": "owner",
  15532. "in": "path",
  15533. "required": true
  15534. },
  15535. {
  15536. "type": "string",
  15537. "description": "name of the repo",
  15538. "name": "repo",
  15539. "in": "path",
  15540. "required": true
  15541. },
  15542. {
  15543. "type": "integer",
  15544. "format": "int64",
  15545. "description": "id of the release",
  15546. "name": "id",
  15547. "in": "path",
  15548. "required": true
  15549. },
  15550. {
  15551. "type": "integer",
  15552. "format": "int64",
  15553. "description": "id of the attachment to get",
  15554. "name": "attachment_id",
  15555. "in": "path",
  15556. "required": true
  15557. }
  15558. ],
  15559. "responses": {
  15560. "200": {
  15561. "$ref": "#/responses/Attachment"
  15562. },
  15563. "404": {
  15564. "$ref": "#/responses/notFound"
  15565. }
  15566. }
  15567. },
  15568. "delete": {
  15569. "produces": [
  15570. "application/json"
  15571. ],
  15572. "tags": [
  15573. "repository"
  15574. ],
  15575. "summary": "Delete a release attachment",
  15576. "operationId": "repoDeleteReleaseAttachment",
  15577. "parameters": [
  15578. {
  15579. "type": "string",
  15580. "description": "owner of the repo",
  15581. "name": "owner",
  15582. "in": "path",
  15583. "required": true
  15584. },
  15585. {
  15586. "type": "string",
  15587. "description": "name of the repo",
  15588. "name": "repo",
  15589. "in": "path",
  15590. "required": true
  15591. },
  15592. {
  15593. "type": "integer",
  15594. "format": "int64",
  15595. "description": "id of the release",
  15596. "name": "id",
  15597. "in": "path",
  15598. "required": true
  15599. },
  15600. {
  15601. "type": "integer",
  15602. "format": "int64",
  15603. "description": "id of the attachment to delete",
  15604. "name": "attachment_id",
  15605. "in": "path",
  15606. "required": true
  15607. }
  15608. ],
  15609. "responses": {
  15610. "204": {
  15611. "$ref": "#/responses/empty"
  15612. },
  15613. "404": {
  15614. "$ref": "#/responses/notFound"
  15615. }
  15616. }
  15617. },
  15618. "patch": {
  15619. "consumes": [
  15620. "application/json"
  15621. ],
  15622. "produces": [
  15623. "application/json"
  15624. ],
  15625. "tags": [
  15626. "repository"
  15627. ],
  15628. "summary": "Edit a release attachment",
  15629. "operationId": "repoEditReleaseAttachment",
  15630. "parameters": [
  15631. {
  15632. "type": "string",
  15633. "description": "owner of the repo",
  15634. "name": "owner",
  15635. "in": "path",
  15636. "required": true
  15637. },
  15638. {
  15639. "type": "string",
  15640. "description": "name of the repo",
  15641. "name": "repo",
  15642. "in": "path",
  15643. "required": true
  15644. },
  15645. {
  15646. "type": "integer",
  15647. "format": "int64",
  15648. "description": "id of the release",
  15649. "name": "id",
  15650. "in": "path",
  15651. "required": true
  15652. },
  15653. {
  15654. "type": "integer",
  15655. "format": "int64",
  15656. "description": "id of the attachment to edit",
  15657. "name": "attachment_id",
  15658. "in": "path",
  15659. "required": true
  15660. },
  15661. {
  15662. "name": "body",
  15663. "in": "body",
  15664. "schema": {
  15665. "$ref": "#/definitions/EditAttachmentOptions"
  15666. }
  15667. }
  15668. ],
  15669. "responses": {
  15670. "201": {
  15671. "$ref": "#/responses/Attachment"
  15672. },
  15673. "404": {
  15674. "$ref": "#/responses/notFound"
  15675. },
  15676. "422": {
  15677. "$ref": "#/responses/validationError"
  15678. }
  15679. }
  15680. }
  15681. },
  15682. "/repos/{owner}/{repo}/reviewers": {
  15683. "get": {
  15684. "produces": [
  15685. "application/json"
  15686. ],
  15687. "tags": [
  15688. "repository"
  15689. ],
  15690. "summary": "Return all users that can be requested to review in this repo",
  15691. "operationId": "repoGetReviewers",
  15692. "parameters": [
  15693. {
  15694. "type": "string",
  15695. "description": "owner of the repo",
  15696. "name": "owner",
  15697. "in": "path",
  15698. "required": true
  15699. },
  15700. {
  15701. "type": "string",
  15702. "description": "name of the repo",
  15703. "name": "repo",
  15704. "in": "path",
  15705. "required": true
  15706. }
  15707. ],
  15708. "responses": {
  15709. "200": {
  15710. "$ref": "#/responses/UserList"
  15711. },
  15712. "404": {
  15713. "$ref": "#/responses/notFound"
  15714. }
  15715. }
  15716. }
  15717. },
  15718. "/repos/{owner}/{repo}/signing-key.gpg": {
  15719. "get": {
  15720. "produces": [
  15721. "text/plain"
  15722. ],
  15723. "tags": [
  15724. "repository"
  15725. ],
  15726. "summary": "Get signing-key.gpg for given repository",
  15727. "operationId": "repoSigningKey",
  15728. "parameters": [
  15729. {
  15730. "type": "string",
  15731. "description": "owner of the repo",
  15732. "name": "owner",
  15733. "in": "path",
  15734. "required": true
  15735. },
  15736. {
  15737. "type": "string",
  15738. "description": "name of the repo",
  15739. "name": "repo",
  15740. "in": "path",
  15741. "required": true
  15742. }
  15743. ],
  15744. "responses": {
  15745. "200": {
  15746. "description": "GPG armored public key",
  15747. "schema": {
  15748. "type": "string"
  15749. }
  15750. }
  15751. }
  15752. }
  15753. },
  15754. "/repos/{owner}/{repo}/signing-key.pub": {
  15755. "get": {
  15756. "produces": [
  15757. "text/plain"
  15758. ],
  15759. "tags": [
  15760. "repository"
  15761. ],
  15762. "summary": "Get signing-key.pub for given repository",
  15763. "operationId": "repoSigningKeySSH",
  15764. "parameters": [
  15765. {
  15766. "type": "string",
  15767. "description": "owner of the repo",
  15768. "name": "owner",
  15769. "in": "path",
  15770. "required": true
  15771. },
  15772. {
  15773. "type": "string",
  15774. "description": "name of the repo",
  15775. "name": "repo",
  15776. "in": "path",
  15777. "required": true
  15778. }
  15779. ],
  15780. "responses": {
  15781. "200": {
  15782. "description": "ssh public key",
  15783. "schema": {
  15784. "type": "string"
  15785. }
  15786. }
  15787. }
  15788. }
  15789. },
  15790. "/repos/{owner}/{repo}/stargazers": {
  15791. "get": {
  15792. "produces": [
  15793. "application/json"
  15794. ],
  15795. "tags": [
  15796. "repository"
  15797. ],
  15798. "summary": "List a repo's stargazers",
  15799. "operationId": "repoListStargazers",
  15800. "parameters": [
  15801. {
  15802. "type": "string",
  15803. "description": "owner of the repo",
  15804. "name": "owner",
  15805. "in": "path",
  15806. "required": true
  15807. },
  15808. {
  15809. "type": "string",
  15810. "description": "name of the repo",
  15811. "name": "repo",
  15812. "in": "path",
  15813. "required": true
  15814. },
  15815. {
  15816. "type": "integer",
  15817. "description": "page number of results to return (1-based)",
  15818. "name": "page",
  15819. "in": "query"
  15820. },
  15821. {
  15822. "type": "integer",
  15823. "description": "page size of results",
  15824. "name": "limit",
  15825. "in": "query"
  15826. }
  15827. ],
  15828. "responses": {
  15829. "200": {
  15830. "$ref": "#/responses/UserList"
  15831. },
  15832. "403": {
  15833. "$ref": "#/responses/forbidden"
  15834. },
  15835. "404": {
  15836. "$ref": "#/responses/notFound"
  15837. }
  15838. }
  15839. }
  15840. },
  15841. "/repos/{owner}/{repo}/statuses/{sha}": {
  15842. "get": {
  15843. "produces": [
  15844. "application/json"
  15845. ],
  15846. "tags": [
  15847. "repository"
  15848. ],
  15849. "summary": "Get a commit's statuses",
  15850. "operationId": "repoListStatuses",
  15851. "parameters": [
  15852. {
  15853. "type": "string",
  15854. "description": "owner of the repo",
  15855. "name": "owner",
  15856. "in": "path",
  15857. "required": true
  15858. },
  15859. {
  15860. "type": "string",
  15861. "description": "name of the repo",
  15862. "name": "repo",
  15863. "in": "path",
  15864. "required": true
  15865. },
  15866. {
  15867. "type": "string",
  15868. "description": "sha of the commit",
  15869. "name": "sha",
  15870. "in": "path",
  15871. "required": true
  15872. },
  15873. {
  15874. "enum": [
  15875. "oldest",
  15876. "recentupdate",
  15877. "leastupdate",
  15878. "leastindex",
  15879. "highestindex"
  15880. ],
  15881. "type": "string",
  15882. "description": "type of sort",
  15883. "name": "sort",
  15884. "in": "query"
  15885. },
  15886. {
  15887. "enum": [
  15888. "pending",
  15889. "success",
  15890. "error",
  15891. "failure",
  15892. "warning"
  15893. ],
  15894. "type": "string",
  15895. "description": "type of state",
  15896. "name": "state",
  15897. "in": "query"
  15898. },
  15899. {
  15900. "type": "integer",
  15901. "description": "page number of results to return (1-based)",
  15902. "name": "page",
  15903. "in": "query"
  15904. },
  15905. {
  15906. "type": "integer",
  15907. "description": "page size of results",
  15908. "name": "limit",
  15909. "in": "query"
  15910. }
  15911. ],
  15912. "responses": {
  15913. "200": {
  15914. "$ref": "#/responses/CommitStatusList"
  15915. },
  15916. "400": {
  15917. "$ref": "#/responses/error"
  15918. },
  15919. "404": {
  15920. "$ref": "#/responses/notFound"
  15921. }
  15922. }
  15923. },
  15924. "post": {
  15925. "produces": [
  15926. "application/json"
  15927. ],
  15928. "tags": [
  15929. "repository"
  15930. ],
  15931. "summary": "Create a commit status",
  15932. "operationId": "repoCreateStatus",
  15933. "parameters": [
  15934. {
  15935. "type": "string",
  15936. "description": "owner of the repo",
  15937. "name": "owner",
  15938. "in": "path",
  15939. "required": true
  15940. },
  15941. {
  15942. "type": "string",
  15943. "description": "name of the repo",
  15944. "name": "repo",
  15945. "in": "path",
  15946. "required": true
  15947. },
  15948. {
  15949. "type": "string",
  15950. "description": "sha of the commit",
  15951. "name": "sha",
  15952. "in": "path",
  15953. "required": true
  15954. },
  15955. {
  15956. "name": "body",
  15957. "in": "body",
  15958. "schema": {
  15959. "$ref": "#/definitions/CreateStatusOption"
  15960. }
  15961. }
  15962. ],
  15963. "responses": {
  15964. "201": {
  15965. "$ref": "#/responses/CommitStatus"
  15966. },
  15967. "400": {
  15968. "$ref": "#/responses/error"
  15969. },
  15970. "404": {
  15971. "$ref": "#/responses/notFound"
  15972. }
  15973. }
  15974. }
  15975. },
  15976. "/repos/{owner}/{repo}/subscribers": {
  15977. "get": {
  15978. "produces": [
  15979. "application/json"
  15980. ],
  15981. "tags": [
  15982. "repository"
  15983. ],
  15984. "summary": "List a repo's watchers",
  15985. "operationId": "repoListSubscribers",
  15986. "parameters": [
  15987. {
  15988. "type": "string",
  15989. "description": "owner of the repo",
  15990. "name": "owner",
  15991. "in": "path",
  15992. "required": true
  15993. },
  15994. {
  15995. "type": "string",
  15996. "description": "name of the repo",
  15997. "name": "repo",
  15998. "in": "path",
  15999. "required": true
  16000. },
  16001. {
  16002. "type": "integer",
  16003. "description": "page number of results to return (1-based)",
  16004. "name": "page",
  16005. "in": "query"
  16006. },
  16007. {
  16008. "type": "integer",
  16009. "description": "page size of results",
  16010. "name": "limit",
  16011. "in": "query"
  16012. }
  16013. ],
  16014. "responses": {
  16015. "200": {
  16016. "$ref": "#/responses/UserList"
  16017. },
  16018. "404": {
  16019. "$ref": "#/responses/notFound"
  16020. }
  16021. }
  16022. }
  16023. },
  16024. "/repos/{owner}/{repo}/subscription": {
  16025. "get": {
  16026. "tags": [
  16027. "repository"
  16028. ],
  16029. "summary": "Check if the current user is watching a repo",
  16030. "operationId": "userCurrentCheckSubscription",
  16031. "parameters": [
  16032. {
  16033. "type": "string",
  16034. "description": "owner of the repo",
  16035. "name": "owner",
  16036. "in": "path",
  16037. "required": true
  16038. },
  16039. {
  16040. "type": "string",
  16041. "description": "name of the repo",
  16042. "name": "repo",
  16043. "in": "path",
  16044. "required": true
  16045. }
  16046. ],
  16047. "responses": {
  16048. "200": {
  16049. "$ref": "#/responses/WatchInfo"
  16050. },
  16051. "404": {
  16052. "description": "User is not watching this repo or repo do not exist"
  16053. }
  16054. }
  16055. },
  16056. "put": {
  16057. "tags": [
  16058. "repository"
  16059. ],
  16060. "summary": "Watch a repo",
  16061. "operationId": "userCurrentPutSubscription",
  16062. "parameters": [
  16063. {
  16064. "type": "string",
  16065. "description": "owner of the repo",
  16066. "name": "owner",
  16067. "in": "path",
  16068. "required": true
  16069. },
  16070. {
  16071. "type": "string",
  16072. "description": "name of the repo",
  16073. "name": "repo",
  16074. "in": "path",
  16075. "required": true
  16076. }
  16077. ],
  16078. "responses": {
  16079. "200": {
  16080. "$ref": "#/responses/WatchInfo"
  16081. },
  16082. "403": {
  16083. "$ref": "#/responses/forbidden"
  16084. },
  16085. "404": {
  16086. "$ref": "#/responses/notFound"
  16087. }
  16088. }
  16089. },
  16090. "delete": {
  16091. "tags": [
  16092. "repository"
  16093. ],
  16094. "summary": "Unwatch a repo",
  16095. "operationId": "userCurrentDeleteSubscription",
  16096. "parameters": [
  16097. {
  16098. "type": "string",
  16099. "description": "owner of the repo",
  16100. "name": "owner",
  16101. "in": "path",
  16102. "required": true
  16103. },
  16104. {
  16105. "type": "string",
  16106. "description": "name of the repo",
  16107. "name": "repo",
  16108. "in": "path",
  16109. "required": true
  16110. }
  16111. ],
  16112. "responses": {
  16113. "204": {
  16114. "$ref": "#/responses/empty"
  16115. },
  16116. "404": {
  16117. "$ref": "#/responses/notFound"
  16118. }
  16119. }
  16120. }
  16121. },
  16122. "/repos/{owner}/{repo}/tag_protections": {
  16123. "get": {
  16124. "produces": [
  16125. "application/json"
  16126. ],
  16127. "tags": [
  16128. "repository"
  16129. ],
  16130. "summary": "List tag protections for a repository",
  16131. "operationId": "repoListTagProtection",
  16132. "parameters": [
  16133. {
  16134. "type": "string",
  16135. "description": "owner of the repo",
  16136. "name": "owner",
  16137. "in": "path",
  16138. "required": true
  16139. },
  16140. {
  16141. "type": "string",
  16142. "description": "name of the repo",
  16143. "name": "repo",
  16144. "in": "path",
  16145. "required": true
  16146. }
  16147. ],
  16148. "responses": {
  16149. "200": {
  16150. "$ref": "#/responses/TagProtectionList"
  16151. }
  16152. }
  16153. },
  16154. "post": {
  16155. "consumes": [
  16156. "application/json"
  16157. ],
  16158. "produces": [
  16159. "application/json"
  16160. ],
  16161. "tags": [
  16162. "repository"
  16163. ],
  16164. "summary": "Create a tag protections for a repository",
  16165. "operationId": "repoCreateTagProtection",
  16166. "parameters": [
  16167. {
  16168. "type": "string",
  16169. "description": "owner of the repo",
  16170. "name": "owner",
  16171. "in": "path",
  16172. "required": true
  16173. },
  16174. {
  16175. "type": "string",
  16176. "description": "name of the repo",
  16177. "name": "repo",
  16178. "in": "path",
  16179. "required": true
  16180. },
  16181. {
  16182. "name": "body",
  16183. "in": "body",
  16184. "schema": {
  16185. "$ref": "#/definitions/CreateTagProtectionOption"
  16186. }
  16187. }
  16188. ],
  16189. "responses": {
  16190. "201": {
  16191. "$ref": "#/responses/TagProtection"
  16192. },
  16193. "403": {
  16194. "$ref": "#/responses/forbidden"
  16195. },
  16196. "404": {
  16197. "$ref": "#/responses/notFound"
  16198. },
  16199. "422": {
  16200. "$ref": "#/responses/validationError"
  16201. },
  16202. "423": {
  16203. "$ref": "#/responses/repoArchivedError"
  16204. }
  16205. }
  16206. }
  16207. },
  16208. "/repos/{owner}/{repo}/tag_protections/{id}": {
  16209. "get": {
  16210. "produces": [
  16211. "application/json"
  16212. ],
  16213. "tags": [
  16214. "repository"
  16215. ],
  16216. "summary": "Get a specific tag protection for the repository",
  16217. "operationId": "repoGetTagProtection",
  16218. "parameters": [
  16219. {
  16220. "type": "string",
  16221. "description": "owner of the repo",
  16222. "name": "owner",
  16223. "in": "path",
  16224. "required": true
  16225. },
  16226. {
  16227. "type": "string",
  16228. "description": "name of the repo",
  16229. "name": "repo",
  16230. "in": "path",
  16231. "required": true
  16232. },
  16233. {
  16234. "type": "integer",
  16235. "description": "id of the tag protect to get",
  16236. "name": "id",
  16237. "in": "path",
  16238. "required": true
  16239. }
  16240. ],
  16241. "responses": {
  16242. "200": {
  16243. "$ref": "#/responses/TagProtection"
  16244. },
  16245. "404": {
  16246. "$ref": "#/responses/notFound"
  16247. }
  16248. }
  16249. },
  16250. "delete": {
  16251. "produces": [
  16252. "application/json"
  16253. ],
  16254. "tags": [
  16255. "repository"
  16256. ],
  16257. "summary": "Delete a specific tag protection for the repository",
  16258. "operationId": "repoDeleteTagProtection",
  16259. "parameters": [
  16260. {
  16261. "type": "string",
  16262. "description": "owner of the repo",
  16263. "name": "owner",
  16264. "in": "path",
  16265. "required": true
  16266. },
  16267. {
  16268. "type": "string",
  16269. "description": "name of the repo",
  16270. "name": "repo",
  16271. "in": "path",
  16272. "required": true
  16273. },
  16274. {
  16275. "type": "integer",
  16276. "description": "id of protected tag",
  16277. "name": "id",
  16278. "in": "path",
  16279. "required": true
  16280. }
  16281. ],
  16282. "responses": {
  16283. "204": {
  16284. "$ref": "#/responses/empty"
  16285. },
  16286. "404": {
  16287. "$ref": "#/responses/notFound"
  16288. }
  16289. }
  16290. },
  16291. "patch": {
  16292. "consumes": [
  16293. "application/json"
  16294. ],
  16295. "produces": [
  16296. "application/json"
  16297. ],
  16298. "tags": [
  16299. "repository"
  16300. ],
  16301. "summary": "Edit a tag protections for a repository. Only fields that are set will be changed",
  16302. "operationId": "repoEditTagProtection",
  16303. "parameters": [
  16304. {
  16305. "type": "string",
  16306. "description": "owner of the repo",
  16307. "name": "owner",
  16308. "in": "path",
  16309. "required": true
  16310. },
  16311. {
  16312. "type": "string",
  16313. "description": "name of the repo",
  16314. "name": "repo",
  16315. "in": "path",
  16316. "required": true
  16317. },
  16318. {
  16319. "type": "integer",
  16320. "description": "id of protected tag",
  16321. "name": "id",
  16322. "in": "path",
  16323. "required": true
  16324. },
  16325. {
  16326. "name": "body",
  16327. "in": "body",
  16328. "schema": {
  16329. "$ref": "#/definitions/EditTagProtectionOption"
  16330. }
  16331. }
  16332. ],
  16333. "responses": {
  16334. "200": {
  16335. "$ref": "#/responses/TagProtection"
  16336. },
  16337. "404": {
  16338. "$ref": "#/responses/notFound"
  16339. },
  16340. "422": {
  16341. "$ref": "#/responses/validationError"
  16342. },
  16343. "423": {
  16344. "$ref": "#/responses/repoArchivedError"
  16345. }
  16346. }
  16347. }
  16348. },
  16349. "/repos/{owner}/{repo}/tags": {
  16350. "get": {
  16351. "produces": [
  16352. "application/json"
  16353. ],
  16354. "tags": [
  16355. "repository"
  16356. ],
  16357. "summary": "List a repository's tags",
  16358. "operationId": "repoListTags",
  16359. "parameters": [
  16360. {
  16361. "type": "string",
  16362. "description": "owner of the repo",
  16363. "name": "owner",
  16364. "in": "path",
  16365. "required": true
  16366. },
  16367. {
  16368. "type": "string",
  16369. "description": "name of the repo",
  16370. "name": "repo",
  16371. "in": "path",
  16372. "required": true
  16373. },
  16374. {
  16375. "type": "integer",
  16376. "description": "page number of results to return (1-based)",
  16377. "name": "page",
  16378. "in": "query"
  16379. },
  16380. {
  16381. "type": "integer",
  16382. "description": "page size of results, default maximum page size is 50",
  16383. "name": "limit",
  16384. "in": "query"
  16385. }
  16386. ],
  16387. "responses": {
  16388. "200": {
  16389. "$ref": "#/responses/TagList"
  16390. },
  16391. "404": {
  16392. "$ref": "#/responses/notFound"
  16393. }
  16394. }
  16395. },
  16396. "post": {
  16397. "produces": [
  16398. "application/json"
  16399. ],
  16400. "tags": [
  16401. "repository"
  16402. ],
  16403. "summary": "Create a new git tag in a repository",
  16404. "operationId": "repoCreateTag",
  16405. "parameters": [
  16406. {
  16407. "type": "string",
  16408. "description": "owner of the repo",
  16409. "name": "owner",
  16410. "in": "path",
  16411. "required": true
  16412. },
  16413. {
  16414. "type": "string",
  16415. "description": "name of the repo",
  16416. "name": "repo",
  16417. "in": "path",
  16418. "required": true
  16419. },
  16420. {
  16421. "name": "body",
  16422. "in": "body",
  16423. "schema": {
  16424. "$ref": "#/definitions/CreateTagOption"
  16425. }
  16426. }
  16427. ],
  16428. "responses": {
  16429. "200": {
  16430. "$ref": "#/responses/Tag"
  16431. },
  16432. "404": {
  16433. "$ref": "#/responses/notFound"
  16434. },
  16435. "405": {
  16436. "$ref": "#/responses/empty"
  16437. },
  16438. "409": {
  16439. "$ref": "#/responses/conflict"
  16440. },
  16441. "422": {
  16442. "$ref": "#/responses/validationError"
  16443. },
  16444. "423": {
  16445. "$ref": "#/responses/repoArchivedError"
  16446. }
  16447. }
  16448. }
  16449. },
  16450. "/repos/{owner}/{repo}/tags/{tag}": {
  16451. "get": {
  16452. "produces": [
  16453. "application/json"
  16454. ],
  16455. "tags": [
  16456. "repository"
  16457. ],
  16458. "summary": "Get the tag of a repository by tag name",
  16459. "operationId": "repoGetTag",
  16460. "parameters": [
  16461. {
  16462. "type": "string",
  16463. "description": "owner of the repo",
  16464. "name": "owner",
  16465. "in": "path",
  16466. "required": true
  16467. },
  16468. {
  16469. "type": "string",
  16470. "description": "name of the repo",
  16471. "name": "repo",
  16472. "in": "path",
  16473. "required": true
  16474. },
  16475. {
  16476. "type": "string",
  16477. "description": "name of tag",
  16478. "name": "tag",
  16479. "in": "path",
  16480. "required": true
  16481. }
  16482. ],
  16483. "responses": {
  16484. "200": {
  16485. "$ref": "#/responses/Tag"
  16486. },
  16487. "404": {
  16488. "$ref": "#/responses/notFound"
  16489. }
  16490. }
  16491. },
  16492. "delete": {
  16493. "produces": [
  16494. "application/json"
  16495. ],
  16496. "tags": [
  16497. "repository"
  16498. ],
  16499. "summary": "Delete a repository's tag by name",
  16500. "operationId": "repoDeleteTag",
  16501. "parameters": [
  16502. {
  16503. "type": "string",
  16504. "description": "owner of the repo",
  16505. "name": "owner",
  16506. "in": "path",
  16507. "required": true
  16508. },
  16509. {
  16510. "type": "string",
  16511. "description": "name of the repo",
  16512. "name": "repo",
  16513. "in": "path",
  16514. "required": true
  16515. },
  16516. {
  16517. "type": "string",
  16518. "description": "name of tag to delete",
  16519. "name": "tag",
  16520. "in": "path",
  16521. "required": true
  16522. }
  16523. ],
  16524. "responses": {
  16525. "204": {
  16526. "$ref": "#/responses/empty"
  16527. },
  16528. "404": {
  16529. "$ref": "#/responses/notFound"
  16530. },
  16531. "405": {
  16532. "$ref": "#/responses/empty"
  16533. },
  16534. "409": {
  16535. "$ref": "#/responses/conflict"
  16536. },
  16537. "422": {
  16538. "$ref": "#/responses/validationError"
  16539. },
  16540. "423": {
  16541. "$ref": "#/responses/repoArchivedError"
  16542. }
  16543. }
  16544. }
  16545. },
  16546. "/repos/{owner}/{repo}/teams": {
  16547. "get": {
  16548. "produces": [
  16549. "application/json"
  16550. ],
  16551. "tags": [
  16552. "repository"
  16553. ],
  16554. "summary": "List a repository's teams",
  16555. "operationId": "repoListTeams",
  16556. "parameters": [
  16557. {
  16558. "type": "string",
  16559. "description": "owner of the repo",
  16560. "name": "owner",
  16561. "in": "path",
  16562. "required": true
  16563. },
  16564. {
  16565. "type": "string",
  16566. "description": "name of the repo",
  16567. "name": "repo",
  16568. "in": "path",
  16569. "required": true
  16570. }
  16571. ],
  16572. "responses": {
  16573. "200": {
  16574. "$ref": "#/responses/TeamList"
  16575. },
  16576. "404": {
  16577. "$ref": "#/responses/notFound"
  16578. }
  16579. }
  16580. }
  16581. },
  16582. "/repos/{owner}/{repo}/teams/{team}": {
  16583. "get": {
  16584. "produces": [
  16585. "application/json"
  16586. ],
  16587. "tags": [
  16588. "repository"
  16589. ],
  16590. "summary": "Check if a team is assigned to a repository",
  16591. "operationId": "repoCheckTeam",
  16592. "parameters": [
  16593. {
  16594. "type": "string",
  16595. "description": "owner of the repo",
  16596. "name": "owner",
  16597. "in": "path",
  16598. "required": true
  16599. },
  16600. {
  16601. "type": "string",
  16602. "description": "name of the repo",
  16603. "name": "repo",
  16604. "in": "path",
  16605. "required": true
  16606. },
  16607. {
  16608. "type": "string",
  16609. "description": "team name",
  16610. "name": "team",
  16611. "in": "path",
  16612. "required": true
  16613. }
  16614. ],
  16615. "responses": {
  16616. "200": {
  16617. "$ref": "#/responses/Team"
  16618. },
  16619. "404": {
  16620. "$ref": "#/responses/notFound"
  16621. },
  16622. "405": {
  16623. "$ref": "#/responses/error"
  16624. }
  16625. }
  16626. },
  16627. "put": {
  16628. "produces": [
  16629. "application/json"
  16630. ],
  16631. "tags": [
  16632. "repository"
  16633. ],
  16634. "summary": "Add a team to a repository",
  16635. "operationId": "repoAddTeam",
  16636. "parameters": [
  16637. {
  16638. "type": "string",
  16639. "description": "owner of the repo",
  16640. "name": "owner",
  16641. "in": "path",
  16642. "required": true
  16643. },
  16644. {
  16645. "type": "string",
  16646. "description": "name of the repo",
  16647. "name": "repo",
  16648. "in": "path",
  16649. "required": true
  16650. },
  16651. {
  16652. "type": "string",
  16653. "description": "team name",
  16654. "name": "team",
  16655. "in": "path",
  16656. "required": true
  16657. }
  16658. ],
  16659. "responses": {
  16660. "204": {
  16661. "$ref": "#/responses/empty"
  16662. },
  16663. "404": {
  16664. "$ref": "#/responses/notFound"
  16665. },
  16666. "405": {
  16667. "$ref": "#/responses/error"
  16668. },
  16669. "422": {
  16670. "$ref": "#/responses/validationError"
  16671. }
  16672. }
  16673. },
  16674. "delete": {
  16675. "produces": [
  16676. "application/json"
  16677. ],
  16678. "tags": [
  16679. "repository"
  16680. ],
  16681. "summary": "Delete a team from a repository",
  16682. "operationId": "repoDeleteTeam",
  16683. "parameters": [
  16684. {
  16685. "type": "string",
  16686. "description": "owner of the repo",
  16687. "name": "owner",
  16688. "in": "path",
  16689. "required": true
  16690. },
  16691. {
  16692. "type": "string",
  16693. "description": "name of the repo",
  16694. "name": "repo",
  16695. "in": "path",
  16696. "required": true
  16697. },
  16698. {
  16699. "type": "string",
  16700. "description": "team name",
  16701. "name": "team",
  16702. "in": "path",
  16703. "required": true
  16704. }
  16705. ],
  16706. "responses": {
  16707. "204": {
  16708. "$ref": "#/responses/empty"
  16709. },
  16710. "404": {
  16711. "$ref": "#/responses/notFound"
  16712. },
  16713. "405": {
  16714. "$ref": "#/responses/error"
  16715. },
  16716. "422": {
  16717. "$ref": "#/responses/validationError"
  16718. }
  16719. }
  16720. }
  16721. },
  16722. "/repos/{owner}/{repo}/times": {
  16723. "get": {
  16724. "produces": [
  16725. "application/json"
  16726. ],
  16727. "tags": [
  16728. "repository"
  16729. ],
  16730. "summary": "List a repo's tracked times",
  16731. "operationId": "repoTrackedTimes",
  16732. "parameters": [
  16733. {
  16734. "type": "string",
  16735. "description": "owner of the repo",
  16736. "name": "owner",
  16737. "in": "path",
  16738. "required": true
  16739. },
  16740. {
  16741. "type": "string",
  16742. "description": "name of the repo",
  16743. "name": "repo",
  16744. "in": "path",
  16745. "required": true
  16746. },
  16747. {
  16748. "type": "string",
  16749. "description": "optional filter by user (available for issue managers)",
  16750. "name": "user",
  16751. "in": "query"
  16752. },
  16753. {
  16754. "type": "string",
  16755. "format": "date-time",
  16756. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  16757. "name": "since",
  16758. "in": "query"
  16759. },
  16760. {
  16761. "type": "string",
  16762. "format": "date-time",
  16763. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  16764. "name": "before",
  16765. "in": "query"
  16766. },
  16767. {
  16768. "type": "integer",
  16769. "description": "page number of results to return (1-based)",
  16770. "name": "page",
  16771. "in": "query"
  16772. },
  16773. {
  16774. "type": "integer",
  16775. "description": "page size of results",
  16776. "name": "limit",
  16777. "in": "query"
  16778. }
  16779. ],
  16780. "responses": {
  16781. "200": {
  16782. "$ref": "#/responses/TrackedTimeList"
  16783. },
  16784. "400": {
  16785. "$ref": "#/responses/error"
  16786. },
  16787. "403": {
  16788. "$ref": "#/responses/forbidden"
  16789. },
  16790. "404": {
  16791. "$ref": "#/responses/notFound"
  16792. }
  16793. }
  16794. }
  16795. },
  16796. "/repos/{owner}/{repo}/times/{user}": {
  16797. "get": {
  16798. "produces": [
  16799. "application/json"
  16800. ],
  16801. "tags": [
  16802. "repository"
  16803. ],
  16804. "summary": "List a user's tracked times in a repo",
  16805. "operationId": "userTrackedTimes",
  16806. "deprecated": true,
  16807. "parameters": [
  16808. {
  16809. "type": "string",
  16810. "description": "owner of the repo",
  16811. "name": "owner",
  16812. "in": "path",
  16813. "required": true
  16814. },
  16815. {
  16816. "type": "string",
  16817. "description": "name of the repo",
  16818. "name": "repo",
  16819. "in": "path",
  16820. "required": true
  16821. },
  16822. {
  16823. "type": "string",
  16824. "description": "username of the user whose tracked times are to be listed",
  16825. "name": "user",
  16826. "in": "path",
  16827. "required": true
  16828. }
  16829. ],
  16830. "responses": {
  16831. "200": {
  16832. "$ref": "#/responses/TrackedTimeList"
  16833. },
  16834. "400": {
  16835. "$ref": "#/responses/error"
  16836. },
  16837. "403": {
  16838. "$ref": "#/responses/forbidden"
  16839. },
  16840. "404": {
  16841. "$ref": "#/responses/notFound"
  16842. }
  16843. }
  16844. }
  16845. },
  16846. "/repos/{owner}/{repo}/topics": {
  16847. "get": {
  16848. "produces": [
  16849. "application/json"
  16850. ],
  16851. "tags": [
  16852. "repository"
  16853. ],
  16854. "summary": "Get list of topics that a repository has",
  16855. "operationId": "repoListTopics",
  16856. "parameters": [
  16857. {
  16858. "type": "string",
  16859. "description": "owner of the repo",
  16860. "name": "owner",
  16861. "in": "path",
  16862. "required": true
  16863. },
  16864. {
  16865. "type": "string",
  16866. "description": "name of the repo",
  16867. "name": "repo",
  16868. "in": "path",
  16869. "required": true
  16870. },
  16871. {
  16872. "type": "integer",
  16873. "description": "page number of results to return (1-based)",
  16874. "name": "page",
  16875. "in": "query"
  16876. },
  16877. {
  16878. "type": "integer",
  16879. "description": "page size of results",
  16880. "name": "limit",
  16881. "in": "query"
  16882. }
  16883. ],
  16884. "responses": {
  16885. "200": {
  16886. "$ref": "#/responses/TopicNames"
  16887. },
  16888. "404": {
  16889. "$ref": "#/responses/notFound"
  16890. }
  16891. }
  16892. },
  16893. "put": {
  16894. "produces": [
  16895. "application/json"
  16896. ],
  16897. "tags": [
  16898. "repository"
  16899. ],
  16900. "summary": "Replace list of topics for a repository",
  16901. "operationId": "repoUpdateTopics",
  16902. "parameters": [
  16903. {
  16904. "type": "string",
  16905. "description": "owner of the repo",
  16906. "name": "owner",
  16907. "in": "path",
  16908. "required": true
  16909. },
  16910. {
  16911. "type": "string",
  16912. "description": "name of the repo",
  16913. "name": "repo",
  16914. "in": "path",
  16915. "required": true
  16916. },
  16917. {
  16918. "name": "body",
  16919. "in": "body",
  16920. "schema": {
  16921. "$ref": "#/definitions/RepoTopicOptions"
  16922. }
  16923. }
  16924. ],
  16925. "responses": {
  16926. "204": {
  16927. "$ref": "#/responses/empty"
  16928. },
  16929. "404": {
  16930. "$ref": "#/responses/notFound"
  16931. },
  16932. "422": {
  16933. "$ref": "#/responses/invalidTopicsError"
  16934. }
  16935. }
  16936. }
  16937. },
  16938. "/repos/{owner}/{repo}/topics/{topic}": {
  16939. "put": {
  16940. "produces": [
  16941. "application/json"
  16942. ],
  16943. "tags": [
  16944. "repository"
  16945. ],
  16946. "summary": "Add a topic to a repository",
  16947. "operationId": "repoAddTopic",
  16948. "parameters": [
  16949. {
  16950. "type": "string",
  16951. "description": "owner of the repo",
  16952. "name": "owner",
  16953. "in": "path",
  16954. "required": true
  16955. },
  16956. {
  16957. "type": "string",
  16958. "description": "name of the repo",
  16959. "name": "repo",
  16960. "in": "path",
  16961. "required": true
  16962. },
  16963. {
  16964. "type": "string",
  16965. "description": "name of the topic to add",
  16966. "name": "topic",
  16967. "in": "path",
  16968. "required": true
  16969. }
  16970. ],
  16971. "responses": {
  16972. "204": {
  16973. "$ref": "#/responses/empty"
  16974. },
  16975. "404": {
  16976. "$ref": "#/responses/notFound"
  16977. },
  16978. "422": {
  16979. "$ref": "#/responses/invalidTopicsError"
  16980. }
  16981. }
  16982. },
  16983. "delete": {
  16984. "produces": [
  16985. "application/json"
  16986. ],
  16987. "tags": [
  16988. "repository"
  16989. ],
  16990. "summary": "Delete a topic from a repository",
  16991. "operationId": "repoDeleteTopic",
  16992. "parameters": [
  16993. {
  16994. "type": "string",
  16995. "description": "owner of the repo",
  16996. "name": "owner",
  16997. "in": "path",
  16998. "required": true
  16999. },
  17000. {
  17001. "type": "string",
  17002. "description": "name of the repo",
  17003. "name": "repo",
  17004. "in": "path",
  17005. "required": true
  17006. },
  17007. {
  17008. "type": "string",
  17009. "description": "name of the topic to delete",
  17010. "name": "topic",
  17011. "in": "path",
  17012. "required": true
  17013. }
  17014. ],
  17015. "responses": {
  17016. "204": {
  17017. "$ref": "#/responses/empty"
  17018. },
  17019. "404": {
  17020. "$ref": "#/responses/notFound"
  17021. },
  17022. "422": {
  17023. "$ref": "#/responses/invalidTopicsError"
  17024. }
  17025. }
  17026. }
  17027. },
  17028. "/repos/{owner}/{repo}/transfer": {
  17029. "post": {
  17030. "produces": [
  17031. "application/json"
  17032. ],
  17033. "tags": [
  17034. "repository"
  17035. ],
  17036. "summary": "Transfer a repo ownership",
  17037. "operationId": "repoTransfer",
  17038. "parameters": [
  17039. {
  17040. "type": "string",
  17041. "description": "owner of the repo to transfer",
  17042. "name": "owner",
  17043. "in": "path",
  17044. "required": true
  17045. },
  17046. {
  17047. "type": "string",
  17048. "description": "name of the repo to transfer",
  17049. "name": "repo",
  17050. "in": "path",
  17051. "required": true
  17052. },
  17053. {
  17054. "description": "Transfer Options",
  17055. "name": "body",
  17056. "in": "body",
  17057. "required": true,
  17058. "schema": {
  17059. "$ref": "#/definitions/TransferRepoOption"
  17060. }
  17061. }
  17062. ],
  17063. "responses": {
  17064. "202": {
  17065. "$ref": "#/responses/Repository"
  17066. },
  17067. "403": {
  17068. "$ref": "#/responses/forbidden"
  17069. },
  17070. "404": {
  17071. "$ref": "#/responses/notFound"
  17072. },
  17073. "422": {
  17074. "$ref": "#/responses/validationError"
  17075. }
  17076. }
  17077. }
  17078. },
  17079. "/repos/{owner}/{repo}/transfer/accept": {
  17080. "post": {
  17081. "produces": [
  17082. "application/json"
  17083. ],
  17084. "tags": [
  17085. "repository"
  17086. ],
  17087. "summary": "Accept a repo transfer",
  17088. "operationId": "acceptRepoTransfer",
  17089. "parameters": [
  17090. {
  17091. "type": "string",
  17092. "description": "owner of the repo to transfer",
  17093. "name": "owner",
  17094. "in": "path",
  17095. "required": true
  17096. },
  17097. {
  17098. "type": "string",
  17099. "description": "name of the repo to transfer",
  17100. "name": "repo",
  17101. "in": "path",
  17102. "required": true
  17103. }
  17104. ],
  17105. "responses": {
  17106. "202": {
  17107. "$ref": "#/responses/Repository"
  17108. },
  17109. "403": {
  17110. "$ref": "#/responses/forbidden"
  17111. },
  17112. "404": {
  17113. "$ref": "#/responses/notFound"
  17114. }
  17115. }
  17116. }
  17117. },
  17118. "/repos/{owner}/{repo}/transfer/reject": {
  17119. "post": {
  17120. "produces": [
  17121. "application/json"
  17122. ],
  17123. "tags": [
  17124. "repository"
  17125. ],
  17126. "summary": "Reject a repo transfer",
  17127. "operationId": "rejectRepoTransfer",
  17128. "parameters": [
  17129. {
  17130. "type": "string",
  17131. "description": "owner of the repo to transfer",
  17132. "name": "owner",
  17133. "in": "path",
  17134. "required": true
  17135. },
  17136. {
  17137. "type": "string",
  17138. "description": "name of the repo to transfer",
  17139. "name": "repo",
  17140. "in": "path",
  17141. "required": true
  17142. }
  17143. ],
  17144. "responses": {
  17145. "200": {
  17146. "$ref": "#/responses/Repository"
  17147. },
  17148. "403": {
  17149. "$ref": "#/responses/forbidden"
  17150. },
  17151. "404": {
  17152. "$ref": "#/responses/notFound"
  17153. }
  17154. }
  17155. }
  17156. },
  17157. "/repos/{owner}/{repo}/wiki/new": {
  17158. "post": {
  17159. "consumes": [
  17160. "application/json"
  17161. ],
  17162. "tags": [
  17163. "repository"
  17164. ],
  17165. "summary": "Create a wiki page",
  17166. "operationId": "repoCreateWikiPage",
  17167. "parameters": [
  17168. {
  17169. "type": "string",
  17170. "description": "owner of the repo",
  17171. "name": "owner",
  17172. "in": "path",
  17173. "required": true
  17174. },
  17175. {
  17176. "type": "string",
  17177. "description": "name of the repo",
  17178. "name": "repo",
  17179. "in": "path",
  17180. "required": true
  17181. },
  17182. {
  17183. "name": "body",
  17184. "in": "body",
  17185. "schema": {
  17186. "$ref": "#/definitions/CreateWikiPageOptions"
  17187. }
  17188. }
  17189. ],
  17190. "responses": {
  17191. "201": {
  17192. "$ref": "#/responses/WikiPage"
  17193. },
  17194. "400": {
  17195. "$ref": "#/responses/error"
  17196. },
  17197. "403": {
  17198. "$ref": "#/responses/forbidden"
  17199. },
  17200. "404": {
  17201. "$ref": "#/responses/notFound"
  17202. },
  17203. "423": {
  17204. "$ref": "#/responses/repoArchivedError"
  17205. }
  17206. }
  17207. }
  17208. },
  17209. "/repos/{owner}/{repo}/wiki/page/{pageName}": {
  17210. "get": {
  17211. "produces": [
  17212. "application/json"
  17213. ],
  17214. "tags": [
  17215. "repository"
  17216. ],
  17217. "summary": "Get a wiki page",
  17218. "operationId": "repoGetWikiPage",
  17219. "parameters": [
  17220. {
  17221. "type": "string",
  17222. "description": "owner of the repo",
  17223. "name": "owner",
  17224. "in": "path",
  17225. "required": true
  17226. },
  17227. {
  17228. "type": "string",
  17229. "description": "name of the repo",
  17230. "name": "repo",
  17231. "in": "path",
  17232. "required": true
  17233. },
  17234. {
  17235. "type": "string",
  17236. "description": "name of the page",
  17237. "name": "pageName",
  17238. "in": "path",
  17239. "required": true
  17240. }
  17241. ],
  17242. "responses": {
  17243. "200": {
  17244. "$ref": "#/responses/WikiPage"
  17245. },
  17246. "404": {
  17247. "$ref": "#/responses/notFound"
  17248. }
  17249. }
  17250. },
  17251. "delete": {
  17252. "tags": [
  17253. "repository"
  17254. ],
  17255. "summary": "Delete a wiki page",
  17256. "operationId": "repoDeleteWikiPage",
  17257. "parameters": [
  17258. {
  17259. "type": "string",
  17260. "description": "owner of the repo",
  17261. "name": "owner",
  17262. "in": "path",
  17263. "required": true
  17264. },
  17265. {
  17266. "type": "string",
  17267. "description": "name of the repo",
  17268. "name": "repo",
  17269. "in": "path",
  17270. "required": true
  17271. },
  17272. {
  17273. "type": "string",
  17274. "description": "name of the page",
  17275. "name": "pageName",
  17276. "in": "path",
  17277. "required": true
  17278. }
  17279. ],
  17280. "responses": {
  17281. "204": {
  17282. "$ref": "#/responses/empty"
  17283. },
  17284. "403": {
  17285. "$ref": "#/responses/forbidden"
  17286. },
  17287. "404": {
  17288. "$ref": "#/responses/notFound"
  17289. },
  17290. "423": {
  17291. "$ref": "#/responses/repoArchivedError"
  17292. }
  17293. }
  17294. },
  17295. "patch": {
  17296. "consumes": [
  17297. "application/json"
  17298. ],
  17299. "tags": [
  17300. "repository"
  17301. ],
  17302. "summary": "Edit a wiki page",
  17303. "operationId": "repoEditWikiPage",
  17304. "parameters": [
  17305. {
  17306. "type": "string",
  17307. "description": "owner of the repo",
  17308. "name": "owner",
  17309. "in": "path",
  17310. "required": true
  17311. },
  17312. {
  17313. "type": "string",
  17314. "description": "name of the repo",
  17315. "name": "repo",
  17316. "in": "path",
  17317. "required": true
  17318. },
  17319. {
  17320. "type": "string",
  17321. "description": "name of the page",
  17322. "name": "pageName",
  17323. "in": "path",
  17324. "required": true
  17325. },
  17326. {
  17327. "name": "body",
  17328. "in": "body",
  17329. "schema": {
  17330. "$ref": "#/definitions/CreateWikiPageOptions"
  17331. }
  17332. }
  17333. ],
  17334. "responses": {
  17335. "200": {
  17336. "$ref": "#/responses/WikiPage"
  17337. },
  17338. "400": {
  17339. "$ref": "#/responses/error"
  17340. },
  17341. "403": {
  17342. "$ref": "#/responses/forbidden"
  17343. },
  17344. "404": {
  17345. "$ref": "#/responses/notFound"
  17346. },
  17347. "423": {
  17348. "$ref": "#/responses/repoArchivedError"
  17349. }
  17350. }
  17351. }
  17352. },
  17353. "/repos/{owner}/{repo}/wiki/pages": {
  17354. "get": {
  17355. "produces": [
  17356. "application/json"
  17357. ],
  17358. "tags": [
  17359. "repository"
  17360. ],
  17361. "summary": "Get all wiki pages",
  17362. "operationId": "repoGetWikiPages",
  17363. "parameters": [
  17364. {
  17365. "type": "string",
  17366. "description": "owner of the repo",
  17367. "name": "owner",
  17368. "in": "path",
  17369. "required": true
  17370. },
  17371. {
  17372. "type": "string",
  17373. "description": "name of the repo",
  17374. "name": "repo",
  17375. "in": "path",
  17376. "required": true
  17377. },
  17378. {
  17379. "type": "integer",
  17380. "description": "page number of results to return (1-based)",
  17381. "name": "page",
  17382. "in": "query"
  17383. },
  17384. {
  17385. "type": "integer",
  17386. "description": "page size of results",
  17387. "name": "limit",
  17388. "in": "query"
  17389. }
  17390. ],
  17391. "responses": {
  17392. "200": {
  17393. "$ref": "#/responses/WikiPageList"
  17394. },
  17395. "404": {
  17396. "$ref": "#/responses/notFound"
  17397. }
  17398. }
  17399. }
  17400. },
  17401. "/repos/{owner}/{repo}/wiki/revisions/{pageName}": {
  17402. "get": {
  17403. "produces": [
  17404. "application/json"
  17405. ],
  17406. "tags": [
  17407. "repository"
  17408. ],
  17409. "summary": "Get revisions of a wiki page",
  17410. "operationId": "repoGetWikiPageRevisions",
  17411. "parameters": [
  17412. {
  17413. "type": "string",
  17414. "description": "owner of the repo",
  17415. "name": "owner",
  17416. "in": "path",
  17417. "required": true
  17418. },
  17419. {
  17420. "type": "string",
  17421. "description": "name of the repo",
  17422. "name": "repo",
  17423. "in": "path",
  17424. "required": true
  17425. },
  17426. {
  17427. "type": "string",
  17428. "description": "name of the page",
  17429. "name": "pageName",
  17430. "in": "path",
  17431. "required": true
  17432. },
  17433. {
  17434. "type": "integer",
  17435. "description": "page number of results to return (1-based)",
  17436. "name": "page",
  17437. "in": "query"
  17438. }
  17439. ],
  17440. "responses": {
  17441. "200": {
  17442. "$ref": "#/responses/WikiCommitList"
  17443. },
  17444. "404": {
  17445. "$ref": "#/responses/notFound"
  17446. }
  17447. }
  17448. }
  17449. },
  17450. "/repos/{template_owner}/{template_repo}/generate": {
  17451. "post": {
  17452. "consumes": [
  17453. "application/json"
  17454. ],
  17455. "produces": [
  17456. "application/json"
  17457. ],
  17458. "tags": [
  17459. "repository"
  17460. ],
  17461. "summary": "Create a repository using a template",
  17462. "operationId": "generateRepo",
  17463. "parameters": [
  17464. {
  17465. "type": "string",
  17466. "description": "owner of the template repository",
  17467. "name": "template_owner",
  17468. "in": "path",
  17469. "required": true
  17470. },
  17471. {
  17472. "type": "string",
  17473. "description": "name of the template repository",
  17474. "name": "template_repo",
  17475. "in": "path",
  17476. "required": true
  17477. },
  17478. {
  17479. "name": "body",
  17480. "in": "body",
  17481. "schema": {
  17482. "$ref": "#/definitions/GenerateRepoOption"
  17483. }
  17484. }
  17485. ],
  17486. "responses": {
  17487. "201": {
  17488. "$ref": "#/responses/Repository"
  17489. },
  17490. "403": {
  17491. "$ref": "#/responses/forbidden"
  17492. },
  17493. "404": {
  17494. "$ref": "#/responses/notFound"
  17495. },
  17496. "409": {
  17497. "description": "The repository with the same name already exists."
  17498. },
  17499. "422": {
  17500. "$ref": "#/responses/validationError"
  17501. }
  17502. }
  17503. }
  17504. },
  17505. "/repositories/{id}": {
  17506. "get": {
  17507. "produces": [
  17508. "application/json"
  17509. ],
  17510. "tags": [
  17511. "repository"
  17512. ],
  17513. "summary": "Get a repository by id",
  17514. "operationId": "repoGetByID",
  17515. "parameters": [
  17516. {
  17517. "type": "integer",
  17518. "format": "int64",
  17519. "description": "id of the repo to get",
  17520. "name": "id",
  17521. "in": "path",
  17522. "required": true
  17523. }
  17524. ],
  17525. "responses": {
  17526. "200": {
  17527. "$ref": "#/responses/Repository"
  17528. },
  17529. "404": {
  17530. "$ref": "#/responses/notFound"
  17531. }
  17532. }
  17533. }
  17534. },
  17535. "/settings/api": {
  17536. "get": {
  17537. "produces": [
  17538. "application/json"
  17539. ],
  17540. "tags": [
  17541. "settings"
  17542. ],
  17543. "summary": "Get instance's global settings for api",
  17544. "operationId": "getGeneralAPISettings",
  17545. "responses": {
  17546. "200": {
  17547. "$ref": "#/responses/GeneralAPISettings"
  17548. }
  17549. }
  17550. }
  17551. },
  17552. "/settings/attachment": {
  17553. "get": {
  17554. "produces": [
  17555. "application/json"
  17556. ],
  17557. "tags": [
  17558. "settings"
  17559. ],
  17560. "summary": "Get instance's global settings for Attachment",
  17561. "operationId": "getGeneralAttachmentSettings",
  17562. "responses": {
  17563. "200": {
  17564. "$ref": "#/responses/GeneralAttachmentSettings"
  17565. }
  17566. }
  17567. }
  17568. },
  17569. "/settings/repository": {
  17570. "get": {
  17571. "produces": [
  17572. "application/json"
  17573. ],
  17574. "tags": [
  17575. "settings"
  17576. ],
  17577. "summary": "Get instance's global settings for repositories",
  17578. "operationId": "getGeneralRepositorySettings",
  17579. "responses": {
  17580. "200": {
  17581. "$ref": "#/responses/GeneralRepoSettings"
  17582. }
  17583. }
  17584. }
  17585. },
  17586. "/settings/ui": {
  17587. "get": {
  17588. "produces": [
  17589. "application/json"
  17590. ],
  17591. "tags": [
  17592. "settings"
  17593. ],
  17594. "summary": "Get instance's global settings for ui",
  17595. "operationId": "getGeneralUISettings",
  17596. "responses": {
  17597. "200": {
  17598. "$ref": "#/responses/GeneralUISettings"
  17599. }
  17600. }
  17601. }
  17602. },
  17603. "/signing-key.gpg": {
  17604. "get": {
  17605. "produces": [
  17606. "text/plain"
  17607. ],
  17608. "tags": [
  17609. "miscellaneous"
  17610. ],
  17611. "summary": "Get default signing-key.gpg",
  17612. "operationId": "getSigningKey",
  17613. "responses": {
  17614. "200": {
  17615. "description": "GPG armored public key",
  17616. "schema": {
  17617. "type": "string"
  17618. }
  17619. }
  17620. }
  17621. }
  17622. },
  17623. "/signing-key.pub": {
  17624. "get": {
  17625. "produces": [
  17626. "text/plain"
  17627. ],
  17628. "tags": [
  17629. "miscellaneous"
  17630. ],
  17631. "summary": "Get default signing-key.pub",
  17632. "operationId": "getSigningKeySSH",
  17633. "responses": {
  17634. "200": {
  17635. "description": "ssh public key",
  17636. "schema": {
  17637. "type": "string"
  17638. }
  17639. }
  17640. }
  17641. }
  17642. },
  17643. "/teams/{id}": {
  17644. "get": {
  17645. "produces": [
  17646. "application/json"
  17647. ],
  17648. "tags": [
  17649. "organization"
  17650. ],
  17651. "summary": "Get a team",
  17652. "operationId": "orgGetTeam",
  17653. "parameters": [
  17654. {
  17655. "type": "integer",
  17656. "format": "int64",
  17657. "description": "id of the team to get",
  17658. "name": "id",
  17659. "in": "path",
  17660. "required": true
  17661. }
  17662. ],
  17663. "responses": {
  17664. "200": {
  17665. "$ref": "#/responses/Team"
  17666. },
  17667. "404": {
  17668. "$ref": "#/responses/notFound"
  17669. }
  17670. }
  17671. },
  17672. "delete": {
  17673. "tags": [
  17674. "organization"
  17675. ],
  17676. "summary": "Delete a team",
  17677. "operationId": "orgDeleteTeam",
  17678. "parameters": [
  17679. {
  17680. "type": "integer",
  17681. "format": "int64",
  17682. "description": "id of the team to delete",
  17683. "name": "id",
  17684. "in": "path",
  17685. "required": true
  17686. }
  17687. ],
  17688. "responses": {
  17689. "204": {
  17690. "description": "team deleted"
  17691. },
  17692. "404": {
  17693. "$ref": "#/responses/notFound"
  17694. }
  17695. }
  17696. },
  17697. "patch": {
  17698. "consumes": [
  17699. "application/json"
  17700. ],
  17701. "produces": [
  17702. "application/json"
  17703. ],
  17704. "tags": [
  17705. "organization"
  17706. ],
  17707. "summary": "Edit a team",
  17708. "operationId": "orgEditTeam",
  17709. "parameters": [
  17710. {
  17711. "type": "integer",
  17712. "description": "id of the team to edit",
  17713. "name": "id",
  17714. "in": "path",
  17715. "required": true
  17716. },
  17717. {
  17718. "name": "body",
  17719. "in": "body",
  17720. "schema": {
  17721. "$ref": "#/definitions/EditTeamOption"
  17722. }
  17723. }
  17724. ],
  17725. "responses": {
  17726. "200": {
  17727. "$ref": "#/responses/Team"
  17728. },
  17729. "404": {
  17730. "$ref": "#/responses/notFound"
  17731. }
  17732. }
  17733. }
  17734. },
  17735. "/teams/{id}/activities/feeds": {
  17736. "get": {
  17737. "produces": [
  17738. "application/json"
  17739. ],
  17740. "tags": [
  17741. "organization"
  17742. ],
  17743. "summary": "List a team's activity feeds",
  17744. "operationId": "orgListTeamActivityFeeds",
  17745. "parameters": [
  17746. {
  17747. "type": "integer",
  17748. "format": "int64",
  17749. "description": "id of the team",
  17750. "name": "id",
  17751. "in": "path",
  17752. "required": true
  17753. },
  17754. {
  17755. "type": "string",
  17756. "format": "date",
  17757. "description": "the date of the activities to be found",
  17758. "name": "date",
  17759. "in": "query"
  17760. },
  17761. {
  17762. "type": "integer",
  17763. "description": "page number of results to return (1-based)",
  17764. "name": "page",
  17765. "in": "query"
  17766. },
  17767. {
  17768. "type": "integer",
  17769. "description": "page size of results",
  17770. "name": "limit",
  17771. "in": "query"
  17772. }
  17773. ],
  17774. "responses": {
  17775. "200": {
  17776. "$ref": "#/responses/ActivityFeedsList"
  17777. },
  17778. "404": {
  17779. "$ref": "#/responses/notFound"
  17780. }
  17781. }
  17782. }
  17783. },
  17784. "/teams/{id}/members": {
  17785. "get": {
  17786. "produces": [
  17787. "application/json"
  17788. ],
  17789. "tags": [
  17790. "organization"
  17791. ],
  17792. "summary": "List a team's members",
  17793. "operationId": "orgListTeamMembers",
  17794. "parameters": [
  17795. {
  17796. "type": "integer",
  17797. "format": "int64",
  17798. "description": "id of the team",
  17799. "name": "id",
  17800. "in": "path",
  17801. "required": true
  17802. },
  17803. {
  17804. "type": "integer",
  17805. "description": "page number of results to return (1-based)",
  17806. "name": "page",
  17807. "in": "query"
  17808. },
  17809. {
  17810. "type": "integer",
  17811. "description": "page size of results",
  17812. "name": "limit",
  17813. "in": "query"
  17814. }
  17815. ],
  17816. "responses": {
  17817. "200": {
  17818. "$ref": "#/responses/UserList"
  17819. },
  17820. "404": {
  17821. "$ref": "#/responses/notFound"
  17822. }
  17823. }
  17824. }
  17825. },
  17826. "/teams/{id}/members/{username}": {
  17827. "get": {
  17828. "produces": [
  17829. "application/json"
  17830. ],
  17831. "tags": [
  17832. "organization"
  17833. ],
  17834. "summary": "List a particular member of team",
  17835. "operationId": "orgListTeamMember",
  17836. "parameters": [
  17837. {
  17838. "type": "integer",
  17839. "format": "int64",
  17840. "description": "id of the team",
  17841. "name": "id",
  17842. "in": "path",
  17843. "required": true
  17844. },
  17845. {
  17846. "type": "string",
  17847. "description": "username of the user whose data is to be listed",
  17848. "name": "username",
  17849. "in": "path",
  17850. "required": true
  17851. }
  17852. ],
  17853. "responses": {
  17854. "200": {
  17855. "$ref": "#/responses/User"
  17856. },
  17857. "404": {
  17858. "$ref": "#/responses/notFound"
  17859. }
  17860. }
  17861. },
  17862. "put": {
  17863. "produces": [
  17864. "application/json"
  17865. ],
  17866. "tags": [
  17867. "organization"
  17868. ],
  17869. "summary": "Add a team member",
  17870. "operationId": "orgAddTeamMember",
  17871. "parameters": [
  17872. {
  17873. "type": "integer",
  17874. "format": "int64",
  17875. "description": "id of the team",
  17876. "name": "id",
  17877. "in": "path",
  17878. "required": true
  17879. },
  17880. {
  17881. "type": "string",
  17882. "description": "username of the user to add to a team",
  17883. "name": "username",
  17884. "in": "path",
  17885. "required": true
  17886. }
  17887. ],
  17888. "responses": {
  17889. "204": {
  17890. "$ref": "#/responses/empty"
  17891. },
  17892. "403": {
  17893. "$ref": "#/responses/forbidden"
  17894. },
  17895. "404": {
  17896. "$ref": "#/responses/notFound"
  17897. }
  17898. }
  17899. },
  17900. "delete": {
  17901. "produces": [
  17902. "application/json"
  17903. ],
  17904. "tags": [
  17905. "organization"
  17906. ],
  17907. "summary": "Remove a team member",
  17908. "operationId": "orgRemoveTeamMember",
  17909. "parameters": [
  17910. {
  17911. "type": "integer",
  17912. "format": "int64",
  17913. "description": "id of the team",
  17914. "name": "id",
  17915. "in": "path",
  17916. "required": true
  17917. },
  17918. {
  17919. "type": "string",
  17920. "description": "username of the user to remove from a team",
  17921. "name": "username",
  17922. "in": "path",
  17923. "required": true
  17924. }
  17925. ],
  17926. "responses": {
  17927. "204": {
  17928. "$ref": "#/responses/empty"
  17929. },
  17930. "404": {
  17931. "$ref": "#/responses/notFound"
  17932. }
  17933. }
  17934. }
  17935. },
  17936. "/teams/{id}/repos": {
  17937. "get": {
  17938. "produces": [
  17939. "application/json"
  17940. ],
  17941. "tags": [
  17942. "organization"
  17943. ],
  17944. "summary": "List a team's repos",
  17945. "operationId": "orgListTeamRepos",
  17946. "parameters": [
  17947. {
  17948. "type": "integer",
  17949. "format": "int64",
  17950. "description": "id of the team",
  17951. "name": "id",
  17952. "in": "path",
  17953. "required": true
  17954. },
  17955. {
  17956. "type": "integer",
  17957. "description": "page number of results to return (1-based)",
  17958. "name": "page",
  17959. "in": "query"
  17960. },
  17961. {
  17962. "type": "integer",
  17963. "description": "page size of results",
  17964. "name": "limit",
  17965. "in": "query"
  17966. }
  17967. ],
  17968. "responses": {
  17969. "200": {
  17970. "$ref": "#/responses/RepositoryList"
  17971. },
  17972. "404": {
  17973. "$ref": "#/responses/notFound"
  17974. }
  17975. }
  17976. }
  17977. },
  17978. "/teams/{id}/repos/{org}/{repo}": {
  17979. "get": {
  17980. "produces": [
  17981. "application/json"
  17982. ],
  17983. "tags": [
  17984. "organization"
  17985. ],
  17986. "summary": "List a particular repo of team",
  17987. "operationId": "orgListTeamRepo",
  17988. "parameters": [
  17989. {
  17990. "type": "integer",
  17991. "format": "int64",
  17992. "description": "id of the team",
  17993. "name": "id",
  17994. "in": "path",
  17995. "required": true
  17996. },
  17997. {
  17998. "type": "string",
  17999. "description": "organization that owns the repo to list",
  18000. "name": "org",
  18001. "in": "path",
  18002. "required": true
  18003. },
  18004. {
  18005. "type": "string",
  18006. "description": "name of the repo to list",
  18007. "name": "repo",
  18008. "in": "path",
  18009. "required": true
  18010. }
  18011. ],
  18012. "responses": {
  18013. "200": {
  18014. "$ref": "#/responses/Repository"
  18015. },
  18016. "404": {
  18017. "$ref": "#/responses/notFound"
  18018. }
  18019. }
  18020. },
  18021. "put": {
  18022. "produces": [
  18023. "application/json"
  18024. ],
  18025. "tags": [
  18026. "organization"
  18027. ],
  18028. "summary": "Add a repository to a team",
  18029. "operationId": "orgAddTeamRepository",
  18030. "parameters": [
  18031. {
  18032. "type": "integer",
  18033. "format": "int64",
  18034. "description": "id of the team",
  18035. "name": "id",
  18036. "in": "path",
  18037. "required": true
  18038. },
  18039. {
  18040. "type": "string",
  18041. "description": "organization that owns the repo to add",
  18042. "name": "org",
  18043. "in": "path",
  18044. "required": true
  18045. },
  18046. {
  18047. "type": "string",
  18048. "description": "name of the repo to add",
  18049. "name": "repo",
  18050. "in": "path",
  18051. "required": true
  18052. }
  18053. ],
  18054. "responses": {
  18055. "204": {
  18056. "$ref": "#/responses/empty"
  18057. },
  18058. "403": {
  18059. "$ref": "#/responses/forbidden"
  18060. },
  18061. "404": {
  18062. "$ref": "#/responses/notFound"
  18063. }
  18064. }
  18065. },
  18066. "delete": {
  18067. "description": "This does not delete the repository, it only removes the repository from the team.",
  18068. "produces": [
  18069. "application/json"
  18070. ],
  18071. "tags": [
  18072. "organization"
  18073. ],
  18074. "summary": "Remove a repository from a team",
  18075. "operationId": "orgRemoveTeamRepository",
  18076. "parameters": [
  18077. {
  18078. "type": "integer",
  18079. "format": "int64",
  18080. "description": "id of the team",
  18081. "name": "id",
  18082. "in": "path",
  18083. "required": true
  18084. },
  18085. {
  18086. "type": "string",
  18087. "description": "organization that owns the repo to remove",
  18088. "name": "org",
  18089. "in": "path",
  18090. "required": true
  18091. },
  18092. {
  18093. "type": "string",
  18094. "description": "name of the repo to remove",
  18095. "name": "repo",
  18096. "in": "path",
  18097. "required": true
  18098. }
  18099. ],
  18100. "responses": {
  18101. "204": {
  18102. "$ref": "#/responses/empty"
  18103. },
  18104. "403": {
  18105. "$ref": "#/responses/forbidden"
  18106. },
  18107. "404": {
  18108. "$ref": "#/responses/notFound"
  18109. }
  18110. }
  18111. }
  18112. },
  18113. "/topics/search": {
  18114. "get": {
  18115. "produces": [
  18116. "application/json"
  18117. ],
  18118. "tags": [
  18119. "repository"
  18120. ],
  18121. "summary": "search topics via keyword",
  18122. "operationId": "topicSearch",
  18123. "parameters": [
  18124. {
  18125. "type": "string",
  18126. "description": "keywords to search",
  18127. "name": "q",
  18128. "in": "query",
  18129. "required": true
  18130. },
  18131. {
  18132. "type": "integer",
  18133. "description": "page number of results to return (1-based)",
  18134. "name": "page",
  18135. "in": "query"
  18136. },
  18137. {
  18138. "type": "integer",
  18139. "description": "page size of results",
  18140. "name": "limit",
  18141. "in": "query"
  18142. }
  18143. ],
  18144. "responses": {
  18145. "200": {
  18146. "$ref": "#/responses/TopicListResponse"
  18147. },
  18148. "403": {
  18149. "$ref": "#/responses/forbidden"
  18150. },
  18151. "404": {
  18152. "$ref": "#/responses/notFound"
  18153. }
  18154. }
  18155. }
  18156. },
  18157. "/user": {
  18158. "get": {
  18159. "produces": [
  18160. "application/json"
  18161. ],
  18162. "tags": [
  18163. "user"
  18164. ],
  18165. "summary": "Get the authenticated user",
  18166. "operationId": "userGetCurrent",
  18167. "responses": {
  18168. "200": {
  18169. "$ref": "#/responses/User"
  18170. }
  18171. }
  18172. }
  18173. },
  18174. "/user/actions/jobs": {
  18175. "get": {
  18176. "produces": [
  18177. "application/json"
  18178. ],
  18179. "tags": [
  18180. "user"
  18181. ],
  18182. "summary": "Get workflow jobs",
  18183. "operationId": "getUserWorkflowJobs",
  18184. "parameters": [
  18185. {
  18186. "type": "string",
  18187. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  18188. "name": "status",
  18189. "in": "query"
  18190. },
  18191. {
  18192. "type": "integer",
  18193. "description": "page number of results to return (1-based)",
  18194. "name": "page",
  18195. "in": "query"
  18196. },
  18197. {
  18198. "type": "integer",
  18199. "description": "page size of results",
  18200. "name": "limit",
  18201. "in": "query"
  18202. }
  18203. ],
  18204. "responses": {
  18205. "200": {
  18206. "$ref": "#/responses/WorkflowJobsList"
  18207. },
  18208. "400": {
  18209. "$ref": "#/responses/error"
  18210. },
  18211. "404": {
  18212. "$ref": "#/responses/notFound"
  18213. }
  18214. }
  18215. }
  18216. },
  18217. "/user/actions/runners": {
  18218. "get": {
  18219. "produces": [
  18220. "application/json"
  18221. ],
  18222. "tags": [
  18223. "user"
  18224. ],
  18225. "summary": "Get user-level runners",
  18226. "operationId": "getUserRunners",
  18227. "responses": {
  18228. "200": {
  18229. "$ref": "#/definitions/ActionRunnersResponse"
  18230. },
  18231. "400": {
  18232. "$ref": "#/responses/error"
  18233. },
  18234. "404": {
  18235. "$ref": "#/responses/notFound"
  18236. }
  18237. }
  18238. }
  18239. },
  18240. "/user/actions/runners/registration-token": {
  18241. "get": {
  18242. "produces": [
  18243. "application/json"
  18244. ],
  18245. "tags": [
  18246. "user"
  18247. ],
  18248. "summary": "Get an user's actions runner registration token",
  18249. "operationId": "userGetRunnerRegistrationToken",
  18250. "responses": {
  18251. "200": {
  18252. "$ref": "#/responses/RegistrationToken"
  18253. }
  18254. }
  18255. },
  18256. "post": {
  18257. "produces": [
  18258. "application/json"
  18259. ],
  18260. "tags": [
  18261. "user"
  18262. ],
  18263. "summary": "Get an user's actions runner registration token",
  18264. "operationId": "userCreateRunnerRegistrationToken",
  18265. "responses": {
  18266. "200": {
  18267. "$ref": "#/responses/RegistrationToken"
  18268. }
  18269. }
  18270. }
  18271. },
  18272. "/user/actions/runners/{runner_id}": {
  18273. "get": {
  18274. "produces": [
  18275. "application/json"
  18276. ],
  18277. "tags": [
  18278. "user"
  18279. ],
  18280. "summary": "Get an user-level runner",
  18281. "operationId": "getUserRunner",
  18282. "parameters": [
  18283. {
  18284. "type": "string",
  18285. "description": "id of the runner",
  18286. "name": "runner_id",
  18287. "in": "path",
  18288. "required": true
  18289. }
  18290. ],
  18291. "responses": {
  18292. "200": {
  18293. "$ref": "#/definitions/ActionRunner"
  18294. },
  18295. "400": {
  18296. "$ref": "#/responses/error"
  18297. },
  18298. "404": {
  18299. "$ref": "#/responses/notFound"
  18300. }
  18301. }
  18302. },
  18303. "delete": {
  18304. "produces": [
  18305. "application/json"
  18306. ],
  18307. "tags": [
  18308. "user"
  18309. ],
  18310. "summary": "Delete an user-level runner",
  18311. "operationId": "deleteUserRunner",
  18312. "parameters": [
  18313. {
  18314. "type": "string",
  18315. "description": "id of the runner",
  18316. "name": "runner_id",
  18317. "in": "path",
  18318. "required": true
  18319. }
  18320. ],
  18321. "responses": {
  18322. "204": {
  18323. "description": "runner has been deleted"
  18324. },
  18325. "400": {
  18326. "$ref": "#/responses/error"
  18327. },
  18328. "404": {
  18329. "$ref": "#/responses/notFound"
  18330. }
  18331. }
  18332. }
  18333. },
  18334. "/user/actions/runs": {
  18335. "get": {
  18336. "produces": [
  18337. "application/json"
  18338. ],
  18339. "tags": [
  18340. "user"
  18341. ],
  18342. "summary": "Get workflow runs",
  18343. "operationId": "getUserWorkflowRuns",
  18344. "parameters": [
  18345. {
  18346. "type": "string",
  18347. "description": "workflow event name",
  18348. "name": "event",
  18349. "in": "query"
  18350. },
  18351. {
  18352. "type": "string",
  18353. "description": "workflow branch",
  18354. "name": "branch",
  18355. "in": "query"
  18356. },
  18357. {
  18358. "type": "string",
  18359. "description": "workflow status (pending, queued, in_progress, failure, success, skipped)",
  18360. "name": "status",
  18361. "in": "query"
  18362. },
  18363. {
  18364. "type": "string",
  18365. "description": "triggered by user",
  18366. "name": "actor",
  18367. "in": "query"
  18368. },
  18369. {
  18370. "type": "string",
  18371. "description": "triggering sha of the workflow run",
  18372. "name": "head_sha",
  18373. "in": "query"
  18374. },
  18375. {
  18376. "type": "integer",
  18377. "description": "page number of results to return (1-based)",
  18378. "name": "page",
  18379. "in": "query"
  18380. },
  18381. {
  18382. "type": "integer",
  18383. "description": "page size of results",
  18384. "name": "limit",
  18385. "in": "query"
  18386. }
  18387. ],
  18388. "responses": {
  18389. "200": {
  18390. "$ref": "#/responses/WorkflowRunsList"
  18391. },
  18392. "400": {
  18393. "$ref": "#/responses/error"
  18394. },
  18395. "404": {
  18396. "$ref": "#/responses/notFound"
  18397. }
  18398. }
  18399. }
  18400. },
  18401. "/user/actions/secrets/{secretname}": {
  18402. "put": {
  18403. "consumes": [
  18404. "application/json"
  18405. ],
  18406. "produces": [
  18407. "application/json"
  18408. ],
  18409. "tags": [
  18410. "user"
  18411. ],
  18412. "summary": "Create or Update a secret value in a user scope",
  18413. "operationId": "updateUserSecret",
  18414. "parameters": [
  18415. {
  18416. "type": "string",
  18417. "description": "name of the secret",
  18418. "name": "secretname",
  18419. "in": "path",
  18420. "required": true
  18421. },
  18422. {
  18423. "name": "body",
  18424. "in": "body",
  18425. "schema": {
  18426. "$ref": "#/definitions/CreateOrUpdateSecretOption"
  18427. }
  18428. }
  18429. ],
  18430. "responses": {
  18431. "201": {
  18432. "description": "response when creating a secret"
  18433. },
  18434. "204": {
  18435. "description": "response when updating a secret"
  18436. },
  18437. "400": {
  18438. "$ref": "#/responses/error"
  18439. },
  18440. "404": {
  18441. "$ref": "#/responses/notFound"
  18442. }
  18443. }
  18444. },
  18445. "delete": {
  18446. "consumes": [
  18447. "application/json"
  18448. ],
  18449. "produces": [
  18450. "application/json"
  18451. ],
  18452. "tags": [
  18453. "user"
  18454. ],
  18455. "summary": "Delete a secret in a user scope",
  18456. "operationId": "deleteUserSecret",
  18457. "parameters": [
  18458. {
  18459. "type": "string",
  18460. "description": "name of the secret",
  18461. "name": "secretname",
  18462. "in": "path",
  18463. "required": true
  18464. }
  18465. ],
  18466. "responses": {
  18467. "204": {
  18468. "description": "delete one secret of the user"
  18469. },
  18470. "400": {
  18471. "$ref": "#/responses/error"
  18472. },
  18473. "404": {
  18474. "$ref": "#/responses/notFound"
  18475. }
  18476. }
  18477. }
  18478. },
  18479. "/user/actions/variables": {
  18480. "get": {
  18481. "produces": [
  18482. "application/json"
  18483. ],
  18484. "tags": [
  18485. "user"
  18486. ],
  18487. "summary": "Get the user-level list of variables which is created by current doer",
  18488. "operationId": "getUserVariablesList",
  18489. "parameters": [
  18490. {
  18491. "type": "integer",
  18492. "description": "page number of results to return (1-based)",
  18493. "name": "page",
  18494. "in": "query"
  18495. },
  18496. {
  18497. "type": "integer",
  18498. "description": "page size of results",
  18499. "name": "limit",
  18500. "in": "query"
  18501. }
  18502. ],
  18503. "responses": {
  18504. "200": {
  18505. "$ref": "#/responses/VariableList"
  18506. },
  18507. "400": {
  18508. "$ref": "#/responses/error"
  18509. },
  18510. "404": {
  18511. "$ref": "#/responses/notFound"
  18512. }
  18513. }
  18514. }
  18515. },
  18516. "/user/actions/variables/{variablename}": {
  18517. "get": {
  18518. "produces": [
  18519. "application/json"
  18520. ],
  18521. "tags": [
  18522. "user"
  18523. ],
  18524. "summary": "Get a user-level variable which is created by current doer",
  18525. "operationId": "getUserVariable",
  18526. "parameters": [
  18527. {
  18528. "type": "string",
  18529. "description": "name of the variable",
  18530. "name": "variablename",
  18531. "in": "path",
  18532. "required": true
  18533. }
  18534. ],
  18535. "responses": {
  18536. "200": {
  18537. "$ref": "#/responses/ActionVariable"
  18538. },
  18539. "400": {
  18540. "$ref": "#/responses/error"
  18541. },
  18542. "404": {
  18543. "$ref": "#/responses/notFound"
  18544. }
  18545. }
  18546. },
  18547. "put": {
  18548. "consumes": [
  18549. "application/json"
  18550. ],
  18551. "produces": [
  18552. "application/json"
  18553. ],
  18554. "tags": [
  18555. "user"
  18556. ],
  18557. "summary": "Update a user-level variable which is created by current doer",
  18558. "operationId": "updateUserVariable",
  18559. "parameters": [
  18560. {
  18561. "type": "string",
  18562. "description": "name of the variable",
  18563. "name": "variablename",
  18564. "in": "path",
  18565. "required": true
  18566. },
  18567. {
  18568. "name": "body",
  18569. "in": "body",
  18570. "schema": {
  18571. "$ref": "#/definitions/UpdateVariableOption"
  18572. }
  18573. }
  18574. ],
  18575. "responses": {
  18576. "201": {
  18577. "description": "response when updating a variable"
  18578. },
  18579. "204": {
  18580. "description": "response when updating a variable"
  18581. },
  18582. "400": {
  18583. "$ref": "#/responses/error"
  18584. },
  18585. "404": {
  18586. "$ref": "#/responses/notFound"
  18587. }
  18588. }
  18589. },
  18590. "post": {
  18591. "consumes": [
  18592. "application/json"
  18593. ],
  18594. "produces": [
  18595. "application/json"
  18596. ],
  18597. "tags": [
  18598. "user"
  18599. ],
  18600. "summary": "Create a user-level variable",
  18601. "operationId": "createUserVariable",
  18602. "parameters": [
  18603. {
  18604. "type": "string",
  18605. "description": "name of the variable",
  18606. "name": "variablename",
  18607. "in": "path",
  18608. "required": true
  18609. },
  18610. {
  18611. "name": "body",
  18612. "in": "body",
  18613. "schema": {
  18614. "$ref": "#/definitions/CreateVariableOption"
  18615. }
  18616. }
  18617. ],
  18618. "responses": {
  18619. "201": {
  18620. "description": "successfully created the user-level variable"
  18621. },
  18622. "400": {
  18623. "$ref": "#/responses/error"
  18624. },
  18625. "409": {
  18626. "description": "variable name already exists."
  18627. }
  18628. }
  18629. },
  18630. "delete": {
  18631. "produces": [
  18632. "application/json"
  18633. ],
  18634. "tags": [
  18635. "user"
  18636. ],
  18637. "summary": "Delete a user-level variable which is created by current doer",
  18638. "operationId": "deleteUserVariable",
  18639. "parameters": [
  18640. {
  18641. "type": "string",
  18642. "description": "name of the variable",
  18643. "name": "variablename",
  18644. "in": "path",
  18645. "required": true
  18646. }
  18647. ],
  18648. "responses": {
  18649. "201": {
  18650. "description": "response when deleting a variable"
  18651. },
  18652. "204": {
  18653. "description": "response when deleting a variable"
  18654. },
  18655. "400": {
  18656. "$ref": "#/responses/error"
  18657. },
  18658. "404": {
  18659. "$ref": "#/responses/notFound"
  18660. }
  18661. }
  18662. }
  18663. },
  18664. "/user/applications/oauth2": {
  18665. "get": {
  18666. "produces": [
  18667. "application/json"
  18668. ],
  18669. "tags": [
  18670. "user"
  18671. ],
  18672. "summary": "List the authenticated user's oauth2 applications",
  18673. "operationId": "userGetOauth2Application",
  18674. "parameters": [
  18675. {
  18676. "type": "integer",
  18677. "description": "page number of results to return (1-based)",
  18678. "name": "page",
  18679. "in": "query"
  18680. },
  18681. {
  18682. "type": "integer",
  18683. "description": "page size of results",
  18684. "name": "limit",
  18685. "in": "query"
  18686. }
  18687. ],
  18688. "responses": {
  18689. "200": {
  18690. "$ref": "#/responses/OAuth2ApplicationList"
  18691. }
  18692. }
  18693. },
  18694. "post": {
  18695. "produces": [
  18696. "application/json"
  18697. ],
  18698. "tags": [
  18699. "user"
  18700. ],
  18701. "summary": "creates a new OAuth2 application",
  18702. "operationId": "userCreateOAuth2Application",
  18703. "parameters": [
  18704. {
  18705. "name": "body",
  18706. "in": "body",
  18707. "required": true,
  18708. "schema": {
  18709. "$ref": "#/definitions/CreateOAuth2ApplicationOptions"
  18710. }
  18711. }
  18712. ],
  18713. "responses": {
  18714. "201": {
  18715. "$ref": "#/responses/OAuth2Application"
  18716. },
  18717. "400": {
  18718. "$ref": "#/responses/error"
  18719. }
  18720. }
  18721. }
  18722. },
  18723. "/user/applications/oauth2/{id}": {
  18724. "get": {
  18725. "produces": [
  18726. "application/json"
  18727. ],
  18728. "tags": [
  18729. "user"
  18730. ],
  18731. "summary": "get an OAuth2 Application",
  18732. "operationId": "userGetOAuth2Application",
  18733. "parameters": [
  18734. {
  18735. "type": "integer",
  18736. "format": "int64",
  18737. "description": "Application ID to be found",
  18738. "name": "id",
  18739. "in": "path",
  18740. "required": true
  18741. }
  18742. ],
  18743. "responses": {
  18744. "200": {
  18745. "$ref": "#/responses/OAuth2Application"
  18746. },
  18747. "404": {
  18748. "$ref": "#/responses/notFound"
  18749. }
  18750. }
  18751. },
  18752. "delete": {
  18753. "produces": [
  18754. "application/json"
  18755. ],
  18756. "tags": [
  18757. "user"
  18758. ],
  18759. "summary": "delete an OAuth2 Application",
  18760. "operationId": "userDeleteOAuth2Application",
  18761. "parameters": [
  18762. {
  18763. "type": "integer",
  18764. "format": "int64",
  18765. "description": "token to be deleted",
  18766. "name": "id",
  18767. "in": "path",
  18768. "required": true
  18769. }
  18770. ],
  18771. "responses": {
  18772. "204": {
  18773. "$ref": "#/responses/empty"
  18774. },
  18775. "404": {
  18776. "$ref": "#/responses/notFound"
  18777. }
  18778. }
  18779. },
  18780. "patch": {
  18781. "produces": [
  18782. "application/json"
  18783. ],
  18784. "tags": [
  18785. "user"
  18786. ],
  18787. "summary": "update an OAuth2 Application, this includes regenerating the client secret",
  18788. "operationId": "userUpdateOAuth2Application",
  18789. "parameters": [
  18790. {
  18791. "type": "integer",
  18792. "format": "int64",
  18793. "description": "application to be updated",
  18794. "name": "id",
  18795. "in": "path",
  18796. "required": true
  18797. },
  18798. {
  18799. "name": "body",
  18800. "in": "body",
  18801. "required": true,
  18802. "schema": {
  18803. "$ref": "#/definitions/CreateOAuth2ApplicationOptions"
  18804. }
  18805. }
  18806. ],
  18807. "responses": {
  18808. "200": {
  18809. "$ref": "#/responses/OAuth2Application"
  18810. },
  18811. "404": {
  18812. "$ref": "#/responses/notFound"
  18813. }
  18814. }
  18815. }
  18816. },
  18817. "/user/avatar": {
  18818. "post": {
  18819. "produces": [
  18820. "application/json"
  18821. ],
  18822. "tags": [
  18823. "user"
  18824. ],
  18825. "summary": "Update Avatar",
  18826. "operationId": "userUpdateAvatar",
  18827. "parameters": [
  18828. {
  18829. "name": "body",
  18830. "in": "body",
  18831. "schema": {
  18832. "$ref": "#/definitions/UpdateUserAvatarOption"
  18833. }
  18834. }
  18835. ],
  18836. "responses": {
  18837. "204": {
  18838. "$ref": "#/responses/empty"
  18839. }
  18840. }
  18841. },
  18842. "delete": {
  18843. "produces": [
  18844. "application/json"
  18845. ],
  18846. "tags": [
  18847. "user"
  18848. ],
  18849. "summary": "Delete Avatar",
  18850. "operationId": "userDeleteAvatar",
  18851. "responses": {
  18852. "204": {
  18853. "$ref": "#/responses/empty"
  18854. }
  18855. }
  18856. }
  18857. },
  18858. "/user/blocks": {
  18859. "get": {
  18860. "produces": [
  18861. "application/json"
  18862. ],
  18863. "tags": [
  18864. "user"
  18865. ],
  18866. "summary": "List users blocked by the authenticated user",
  18867. "operationId": "userListBlocks",
  18868. "parameters": [
  18869. {
  18870. "type": "integer",
  18871. "description": "page number of results to return (1-based)",
  18872. "name": "page",
  18873. "in": "query"
  18874. },
  18875. {
  18876. "type": "integer",
  18877. "description": "page size of results",
  18878. "name": "limit",
  18879. "in": "query"
  18880. }
  18881. ],
  18882. "responses": {
  18883. "200": {
  18884. "$ref": "#/responses/UserList"
  18885. }
  18886. }
  18887. }
  18888. },
  18889. "/user/blocks/{username}": {
  18890. "get": {
  18891. "tags": [
  18892. "user"
  18893. ],
  18894. "summary": "Check if a user is blocked by the authenticated user",
  18895. "operationId": "userCheckUserBlock",
  18896. "parameters": [
  18897. {
  18898. "type": "string",
  18899. "description": "username of the user to check",
  18900. "name": "username",
  18901. "in": "path",
  18902. "required": true
  18903. }
  18904. ],
  18905. "responses": {
  18906. "204": {
  18907. "$ref": "#/responses/empty"
  18908. },
  18909. "404": {
  18910. "$ref": "#/responses/notFound"
  18911. }
  18912. }
  18913. },
  18914. "put": {
  18915. "tags": [
  18916. "user"
  18917. ],
  18918. "summary": "Block a user",
  18919. "operationId": "userBlockUser",
  18920. "parameters": [
  18921. {
  18922. "type": "string",
  18923. "description": "username of the user to block",
  18924. "name": "username",
  18925. "in": "path",
  18926. "required": true
  18927. },
  18928. {
  18929. "type": "string",
  18930. "description": "optional note for the block",
  18931. "name": "note",
  18932. "in": "query"
  18933. }
  18934. ],
  18935. "responses": {
  18936. "204": {
  18937. "$ref": "#/responses/empty"
  18938. },
  18939. "404": {
  18940. "$ref": "#/responses/notFound"
  18941. },
  18942. "422": {
  18943. "$ref": "#/responses/validationError"
  18944. }
  18945. }
  18946. },
  18947. "delete": {
  18948. "tags": [
  18949. "user"
  18950. ],
  18951. "summary": "Unblock a user",
  18952. "operationId": "userUnblockUser",
  18953. "parameters": [
  18954. {
  18955. "type": "string",
  18956. "description": "username of the user to unblock",
  18957. "name": "username",
  18958. "in": "path",
  18959. "required": true
  18960. }
  18961. ],
  18962. "responses": {
  18963. "204": {
  18964. "$ref": "#/responses/empty"
  18965. },
  18966. "404": {
  18967. "$ref": "#/responses/notFound"
  18968. },
  18969. "422": {
  18970. "$ref": "#/responses/validationError"
  18971. }
  18972. }
  18973. }
  18974. },
  18975. "/user/emails": {
  18976. "get": {
  18977. "produces": [
  18978. "application/json"
  18979. ],
  18980. "tags": [
  18981. "user"
  18982. ],
  18983. "summary": "List the authenticated user's email addresses",
  18984. "operationId": "userListEmails",
  18985. "responses": {
  18986. "200": {
  18987. "$ref": "#/responses/EmailList"
  18988. }
  18989. }
  18990. },
  18991. "post": {
  18992. "produces": [
  18993. "application/json"
  18994. ],
  18995. "tags": [
  18996. "user"
  18997. ],
  18998. "summary": "Add email addresses",
  18999. "operationId": "userAddEmail",
  19000. "parameters": [
  19001. {
  19002. "name": "body",
  19003. "in": "body",
  19004. "schema": {
  19005. "$ref": "#/definitions/CreateEmailOption"
  19006. }
  19007. }
  19008. ],
  19009. "responses": {
  19010. "201": {
  19011. "$ref": "#/responses/EmailList"
  19012. },
  19013. "422": {
  19014. "$ref": "#/responses/validationError"
  19015. }
  19016. }
  19017. },
  19018. "delete": {
  19019. "produces": [
  19020. "application/json"
  19021. ],
  19022. "tags": [
  19023. "user"
  19024. ],
  19025. "summary": "Delete email addresses",
  19026. "operationId": "userDeleteEmail",
  19027. "parameters": [
  19028. {
  19029. "name": "body",
  19030. "in": "body",
  19031. "schema": {
  19032. "$ref": "#/definitions/DeleteEmailOption"
  19033. }
  19034. }
  19035. ],
  19036. "responses": {
  19037. "204": {
  19038. "$ref": "#/responses/empty"
  19039. },
  19040. "404": {
  19041. "$ref": "#/responses/notFound"
  19042. }
  19043. }
  19044. }
  19045. },
  19046. "/user/followers": {
  19047. "get": {
  19048. "produces": [
  19049. "application/json"
  19050. ],
  19051. "tags": [
  19052. "user"
  19053. ],
  19054. "summary": "List the authenticated user's followers",
  19055. "operationId": "userCurrentListFollowers",
  19056. "parameters": [
  19057. {
  19058. "type": "integer",
  19059. "description": "page number of results to return (1-based)",
  19060. "name": "page",
  19061. "in": "query"
  19062. },
  19063. {
  19064. "type": "integer",
  19065. "description": "page size of results",
  19066. "name": "limit",
  19067. "in": "query"
  19068. }
  19069. ],
  19070. "responses": {
  19071. "200": {
  19072. "$ref": "#/responses/UserList"
  19073. }
  19074. }
  19075. }
  19076. },
  19077. "/user/following": {
  19078. "get": {
  19079. "produces": [
  19080. "application/json"
  19081. ],
  19082. "tags": [
  19083. "user"
  19084. ],
  19085. "summary": "List the users that the authenticated user is following",
  19086. "operationId": "userCurrentListFollowing",
  19087. "parameters": [
  19088. {
  19089. "type": "integer",
  19090. "description": "page number of results to return (1-based)",
  19091. "name": "page",
  19092. "in": "query"
  19093. },
  19094. {
  19095. "type": "integer",
  19096. "description": "page size of results",
  19097. "name": "limit",
  19098. "in": "query"
  19099. }
  19100. ],
  19101. "responses": {
  19102. "200": {
  19103. "$ref": "#/responses/UserList"
  19104. }
  19105. }
  19106. }
  19107. },
  19108. "/user/following/{username}": {
  19109. "get": {
  19110. "tags": [
  19111. "user"
  19112. ],
  19113. "summary": "Check whether a user is followed by the authenticated user",
  19114. "operationId": "userCurrentCheckFollowing",
  19115. "parameters": [
  19116. {
  19117. "type": "string",
  19118. "description": "username of the user to check for authenticated followers",
  19119. "name": "username",
  19120. "in": "path",
  19121. "required": true
  19122. }
  19123. ],
  19124. "responses": {
  19125. "204": {
  19126. "$ref": "#/responses/empty"
  19127. },
  19128. "404": {
  19129. "$ref": "#/responses/notFound"
  19130. }
  19131. }
  19132. },
  19133. "put": {
  19134. "tags": [
  19135. "user"
  19136. ],
  19137. "summary": "Follow a user",
  19138. "operationId": "userCurrentPutFollow",
  19139. "parameters": [
  19140. {
  19141. "type": "string",
  19142. "description": "username of the user to follow",
  19143. "name": "username",
  19144. "in": "path",
  19145. "required": true
  19146. }
  19147. ],
  19148. "responses": {
  19149. "204": {
  19150. "$ref": "#/responses/empty"
  19151. },
  19152. "403": {
  19153. "$ref": "#/responses/forbidden"
  19154. },
  19155. "404": {
  19156. "$ref": "#/responses/notFound"
  19157. }
  19158. }
  19159. },
  19160. "delete": {
  19161. "tags": [
  19162. "user"
  19163. ],
  19164. "summary": "Unfollow a user",
  19165. "operationId": "userCurrentDeleteFollow",
  19166. "parameters": [
  19167. {
  19168. "type": "string",
  19169. "description": "username of the user to unfollow",
  19170. "name": "username",
  19171. "in": "path",
  19172. "required": true
  19173. }
  19174. ],
  19175. "responses": {
  19176. "204": {
  19177. "$ref": "#/responses/empty"
  19178. },
  19179. "404": {
  19180. "$ref": "#/responses/notFound"
  19181. }
  19182. }
  19183. }
  19184. },
  19185. "/user/gpg_key_token": {
  19186. "get": {
  19187. "produces": [
  19188. "text/plain"
  19189. ],
  19190. "tags": [
  19191. "user"
  19192. ],
  19193. "summary": "Get a Token to verify",
  19194. "operationId": "getVerificationToken",
  19195. "responses": {
  19196. "200": {
  19197. "$ref": "#/responses/string"
  19198. },
  19199. "404": {
  19200. "$ref": "#/responses/notFound"
  19201. }
  19202. }
  19203. }
  19204. },
  19205. "/user/gpg_key_verify": {
  19206. "post": {
  19207. "consumes": [
  19208. "application/json"
  19209. ],
  19210. "produces": [
  19211. "application/json"
  19212. ],
  19213. "tags": [
  19214. "user"
  19215. ],
  19216. "summary": "Verify a GPG key",
  19217. "operationId": "userVerifyGPGKey",
  19218. "responses": {
  19219. "201": {
  19220. "$ref": "#/responses/GPGKey"
  19221. },
  19222. "404": {
  19223. "$ref": "#/responses/notFound"
  19224. },
  19225. "422": {
  19226. "$ref": "#/responses/validationError"
  19227. }
  19228. }
  19229. }
  19230. },
  19231. "/user/gpg_keys": {
  19232. "get": {
  19233. "produces": [
  19234. "application/json"
  19235. ],
  19236. "tags": [
  19237. "user"
  19238. ],
  19239. "summary": "List the authenticated user's GPG keys",
  19240. "operationId": "userCurrentListGPGKeys",
  19241. "parameters": [
  19242. {
  19243. "type": "integer",
  19244. "description": "page number of results to return (1-based)",
  19245. "name": "page",
  19246. "in": "query"
  19247. },
  19248. {
  19249. "type": "integer",
  19250. "description": "page size of results",
  19251. "name": "limit",
  19252. "in": "query"
  19253. }
  19254. ],
  19255. "responses": {
  19256. "200": {
  19257. "$ref": "#/responses/GPGKeyList"
  19258. }
  19259. }
  19260. },
  19261. "post": {
  19262. "consumes": [
  19263. "application/json"
  19264. ],
  19265. "produces": [
  19266. "application/json"
  19267. ],
  19268. "tags": [
  19269. "user"
  19270. ],
  19271. "summary": "Create a GPG key",
  19272. "operationId": "userCurrentPostGPGKey",
  19273. "parameters": [
  19274. {
  19275. "name": "Form",
  19276. "in": "body",
  19277. "schema": {
  19278. "$ref": "#/definitions/CreateGPGKeyOption"
  19279. }
  19280. }
  19281. ],
  19282. "responses": {
  19283. "201": {
  19284. "$ref": "#/responses/GPGKey"
  19285. },
  19286. "404": {
  19287. "$ref": "#/responses/notFound"
  19288. },
  19289. "422": {
  19290. "$ref": "#/responses/validationError"
  19291. }
  19292. }
  19293. }
  19294. },
  19295. "/user/gpg_keys/{id}": {
  19296. "get": {
  19297. "produces": [
  19298. "application/json"
  19299. ],
  19300. "tags": [
  19301. "user"
  19302. ],
  19303. "summary": "Get a GPG key",
  19304. "operationId": "userCurrentGetGPGKey",
  19305. "parameters": [
  19306. {
  19307. "type": "integer",
  19308. "format": "int64",
  19309. "description": "id of key to get",
  19310. "name": "id",
  19311. "in": "path",
  19312. "required": true
  19313. }
  19314. ],
  19315. "responses": {
  19316. "200": {
  19317. "$ref": "#/responses/GPGKey"
  19318. },
  19319. "404": {
  19320. "$ref": "#/responses/notFound"
  19321. }
  19322. }
  19323. },
  19324. "delete": {
  19325. "produces": [
  19326. "application/json"
  19327. ],
  19328. "tags": [
  19329. "user"
  19330. ],
  19331. "summary": "Remove a GPG key",
  19332. "operationId": "userCurrentDeleteGPGKey",
  19333. "parameters": [
  19334. {
  19335. "type": "integer",
  19336. "format": "int64",
  19337. "description": "id of key to delete",
  19338. "name": "id",
  19339. "in": "path",
  19340. "required": true
  19341. }
  19342. ],
  19343. "responses": {
  19344. "204": {
  19345. "$ref": "#/responses/empty"
  19346. },
  19347. "403": {
  19348. "$ref": "#/responses/forbidden"
  19349. },
  19350. "404": {
  19351. "$ref": "#/responses/notFound"
  19352. }
  19353. }
  19354. }
  19355. },
  19356. "/user/hooks": {
  19357. "get": {
  19358. "produces": [
  19359. "application/json"
  19360. ],
  19361. "tags": [
  19362. "user"
  19363. ],
  19364. "summary": "List the authenticated user's webhooks",
  19365. "operationId": "userListHooks",
  19366. "parameters": [
  19367. {
  19368. "type": "integer",
  19369. "description": "page number of results to return (1-based)",
  19370. "name": "page",
  19371. "in": "query"
  19372. },
  19373. {
  19374. "type": "integer",
  19375. "description": "page size of results",
  19376. "name": "limit",
  19377. "in": "query"
  19378. }
  19379. ],
  19380. "responses": {
  19381. "200": {
  19382. "$ref": "#/responses/HookList"
  19383. }
  19384. }
  19385. },
  19386. "post": {
  19387. "consumes": [
  19388. "application/json"
  19389. ],
  19390. "produces": [
  19391. "application/json"
  19392. ],
  19393. "tags": [
  19394. "user"
  19395. ],
  19396. "summary": "Create a hook",
  19397. "operationId": "userCreateHook",
  19398. "parameters": [
  19399. {
  19400. "name": "body",
  19401. "in": "body",
  19402. "required": true,
  19403. "schema": {
  19404. "$ref": "#/definitions/CreateHookOption"
  19405. }
  19406. }
  19407. ],
  19408. "responses": {
  19409. "201": {
  19410. "$ref": "#/responses/Hook"
  19411. }
  19412. }
  19413. }
  19414. },
  19415. "/user/hooks/{id}": {
  19416. "get": {
  19417. "produces": [
  19418. "application/json"
  19419. ],
  19420. "tags": [
  19421. "user"
  19422. ],
  19423. "summary": "Get a hook",
  19424. "operationId": "userGetHook",
  19425. "parameters": [
  19426. {
  19427. "type": "integer",
  19428. "format": "int64",
  19429. "description": "id of the hook to get",
  19430. "name": "id",
  19431. "in": "path",
  19432. "required": true
  19433. }
  19434. ],
  19435. "responses": {
  19436. "200": {
  19437. "$ref": "#/responses/Hook"
  19438. }
  19439. }
  19440. },
  19441. "delete": {
  19442. "produces": [
  19443. "application/json"
  19444. ],
  19445. "tags": [
  19446. "user"
  19447. ],
  19448. "summary": "Delete a hook",
  19449. "operationId": "userDeleteHook",
  19450. "parameters": [
  19451. {
  19452. "type": "integer",
  19453. "format": "int64",
  19454. "description": "id of the hook to delete",
  19455. "name": "id",
  19456. "in": "path",
  19457. "required": true
  19458. }
  19459. ],
  19460. "responses": {
  19461. "204": {
  19462. "$ref": "#/responses/empty"
  19463. }
  19464. }
  19465. },
  19466. "patch": {
  19467. "consumes": [
  19468. "application/json"
  19469. ],
  19470. "produces": [
  19471. "application/json"
  19472. ],
  19473. "tags": [
  19474. "user"
  19475. ],
  19476. "summary": "Update a hook",
  19477. "operationId": "userEditHook",
  19478. "parameters": [
  19479. {
  19480. "type": "integer",
  19481. "format": "int64",
  19482. "description": "id of the hook to update",
  19483. "name": "id",
  19484. "in": "path",
  19485. "required": true
  19486. },
  19487. {
  19488. "name": "body",
  19489. "in": "body",
  19490. "schema": {
  19491. "$ref": "#/definitions/EditHookOption"
  19492. }
  19493. }
  19494. ],
  19495. "responses": {
  19496. "200": {
  19497. "$ref": "#/responses/Hook"
  19498. }
  19499. }
  19500. }
  19501. },
  19502. "/user/keys": {
  19503. "get": {
  19504. "produces": [
  19505. "application/json"
  19506. ],
  19507. "tags": [
  19508. "user"
  19509. ],
  19510. "summary": "List the authenticated user's public keys",
  19511. "operationId": "userCurrentListKeys",
  19512. "parameters": [
  19513. {
  19514. "type": "string",
  19515. "description": "fingerprint of the key",
  19516. "name": "fingerprint",
  19517. "in": "query"
  19518. },
  19519. {
  19520. "type": "integer",
  19521. "description": "page number of results to return (1-based)",
  19522. "name": "page",
  19523. "in": "query"
  19524. },
  19525. {
  19526. "type": "integer",
  19527. "description": "page size of results",
  19528. "name": "limit",
  19529. "in": "query"
  19530. }
  19531. ],
  19532. "responses": {
  19533. "200": {
  19534. "$ref": "#/responses/PublicKeyList"
  19535. }
  19536. }
  19537. },
  19538. "post": {
  19539. "consumes": [
  19540. "application/json"
  19541. ],
  19542. "produces": [
  19543. "application/json"
  19544. ],
  19545. "tags": [
  19546. "user"
  19547. ],
  19548. "summary": "Create a public key",
  19549. "operationId": "userCurrentPostKey",
  19550. "parameters": [
  19551. {
  19552. "name": "body",
  19553. "in": "body",
  19554. "schema": {
  19555. "$ref": "#/definitions/CreateKeyOption"
  19556. }
  19557. }
  19558. ],
  19559. "responses": {
  19560. "201": {
  19561. "$ref": "#/responses/PublicKey"
  19562. },
  19563. "422": {
  19564. "$ref": "#/responses/validationError"
  19565. }
  19566. }
  19567. }
  19568. },
  19569. "/user/keys/{id}": {
  19570. "get": {
  19571. "produces": [
  19572. "application/json"
  19573. ],
  19574. "tags": [
  19575. "user"
  19576. ],
  19577. "summary": "Get a public key",
  19578. "operationId": "userCurrentGetKey",
  19579. "parameters": [
  19580. {
  19581. "type": "integer",
  19582. "format": "int64",
  19583. "description": "id of key to get",
  19584. "name": "id",
  19585. "in": "path",
  19586. "required": true
  19587. }
  19588. ],
  19589. "responses": {
  19590. "200": {
  19591. "$ref": "#/responses/PublicKey"
  19592. },
  19593. "404": {
  19594. "$ref": "#/responses/notFound"
  19595. }
  19596. }
  19597. },
  19598. "delete": {
  19599. "produces": [
  19600. "application/json"
  19601. ],
  19602. "tags": [
  19603. "user"
  19604. ],
  19605. "summary": "Delete a public key",
  19606. "operationId": "userCurrentDeleteKey",
  19607. "parameters": [
  19608. {
  19609. "type": "integer",
  19610. "format": "int64",
  19611. "description": "id of key to delete",
  19612. "name": "id",
  19613. "in": "path",
  19614. "required": true
  19615. }
  19616. ],
  19617. "responses": {
  19618. "204": {
  19619. "$ref": "#/responses/empty"
  19620. },
  19621. "403": {
  19622. "$ref": "#/responses/forbidden"
  19623. },
  19624. "404": {
  19625. "$ref": "#/responses/notFound"
  19626. }
  19627. }
  19628. }
  19629. },
  19630. "/user/orgs": {
  19631. "get": {
  19632. "produces": [
  19633. "application/json"
  19634. ],
  19635. "tags": [
  19636. "organization"
  19637. ],
  19638. "summary": "List the current user's organizations",
  19639. "operationId": "orgListCurrentUserOrgs",
  19640. "parameters": [
  19641. {
  19642. "type": "integer",
  19643. "description": "page number of results to return (1-based)",
  19644. "name": "page",
  19645. "in": "query"
  19646. },
  19647. {
  19648. "type": "integer",
  19649. "description": "page size of results",
  19650. "name": "limit",
  19651. "in": "query"
  19652. }
  19653. ],
  19654. "responses": {
  19655. "200": {
  19656. "$ref": "#/responses/OrganizationList"
  19657. },
  19658. "404": {
  19659. "$ref": "#/responses/notFound"
  19660. }
  19661. }
  19662. }
  19663. },
  19664. "/user/repos": {
  19665. "get": {
  19666. "produces": [
  19667. "application/json"
  19668. ],
  19669. "tags": [
  19670. "user"
  19671. ],
  19672. "summary": "List the repos that the authenticated user owns",
  19673. "operationId": "userCurrentListRepos",
  19674. "parameters": [
  19675. {
  19676. "type": "integer",
  19677. "description": "page number of results to return (1-based)",
  19678. "name": "page",
  19679. "in": "query"
  19680. },
  19681. {
  19682. "type": "integer",
  19683. "description": "page size of results",
  19684. "name": "limit",
  19685. "in": "query"
  19686. }
  19687. ],
  19688. "responses": {
  19689. "200": {
  19690. "$ref": "#/responses/RepositoryList"
  19691. }
  19692. }
  19693. },
  19694. "post": {
  19695. "consumes": [
  19696. "application/json"
  19697. ],
  19698. "produces": [
  19699. "application/json"
  19700. ],
  19701. "tags": [
  19702. "repository",
  19703. "user"
  19704. ],
  19705. "summary": "Create a repository",
  19706. "operationId": "createCurrentUserRepo",
  19707. "parameters": [
  19708. {
  19709. "name": "body",
  19710. "in": "body",
  19711. "schema": {
  19712. "$ref": "#/definitions/CreateRepoOption"
  19713. }
  19714. }
  19715. ],
  19716. "responses": {
  19717. "201": {
  19718. "$ref": "#/responses/Repository"
  19719. },
  19720. "400": {
  19721. "$ref": "#/responses/error"
  19722. },
  19723. "409": {
  19724. "description": "The repository with the same name already exists."
  19725. },
  19726. "422": {
  19727. "$ref": "#/responses/validationError"
  19728. }
  19729. }
  19730. }
  19731. },
  19732. "/user/settings": {
  19733. "get": {
  19734. "produces": [
  19735. "application/json"
  19736. ],
  19737. "tags": [
  19738. "user"
  19739. ],
  19740. "summary": "Get user settings",
  19741. "operationId": "getUserSettings",
  19742. "responses": {
  19743. "200": {
  19744. "$ref": "#/responses/UserSettings"
  19745. }
  19746. }
  19747. },
  19748. "patch": {
  19749. "produces": [
  19750. "application/json"
  19751. ],
  19752. "tags": [
  19753. "user"
  19754. ],
  19755. "summary": "Update user settings",
  19756. "operationId": "updateUserSettings",
  19757. "parameters": [
  19758. {
  19759. "name": "body",
  19760. "in": "body",
  19761. "schema": {
  19762. "$ref": "#/definitions/UserSettingsOptions"
  19763. }
  19764. }
  19765. ],
  19766. "responses": {
  19767. "200": {
  19768. "$ref": "#/responses/UserSettings"
  19769. }
  19770. }
  19771. }
  19772. },
  19773. "/user/starred": {
  19774. "get": {
  19775. "produces": [
  19776. "application/json"
  19777. ],
  19778. "tags": [
  19779. "user"
  19780. ],
  19781. "summary": "The repos that the authenticated user has starred",
  19782. "operationId": "userCurrentListStarred",
  19783. "parameters": [
  19784. {
  19785. "type": "integer",
  19786. "description": "page number of results to return (1-based)",
  19787. "name": "page",
  19788. "in": "query"
  19789. },
  19790. {
  19791. "type": "integer",
  19792. "description": "page size of results",
  19793. "name": "limit",
  19794. "in": "query"
  19795. }
  19796. ],
  19797. "responses": {
  19798. "200": {
  19799. "$ref": "#/responses/RepositoryList"
  19800. },
  19801. "403": {
  19802. "$ref": "#/responses/forbidden"
  19803. }
  19804. }
  19805. }
  19806. },
  19807. "/user/starred/{owner}/{repo}": {
  19808. "get": {
  19809. "tags": [
  19810. "user"
  19811. ],
  19812. "summary": "Whether the authenticated is starring the repo",
  19813. "operationId": "userCurrentCheckStarring",
  19814. "parameters": [
  19815. {
  19816. "type": "string",
  19817. "description": "owner of the repo",
  19818. "name": "owner",
  19819. "in": "path",
  19820. "required": true
  19821. },
  19822. {
  19823. "type": "string",
  19824. "description": "name of the repo",
  19825. "name": "repo",
  19826. "in": "path",
  19827. "required": true
  19828. }
  19829. ],
  19830. "responses": {
  19831. "204": {
  19832. "$ref": "#/responses/empty"
  19833. },
  19834. "403": {
  19835. "$ref": "#/responses/forbidden"
  19836. },
  19837. "404": {
  19838. "$ref": "#/responses/notFound"
  19839. }
  19840. }
  19841. },
  19842. "put": {
  19843. "tags": [
  19844. "user"
  19845. ],
  19846. "summary": "Star the given repo",
  19847. "operationId": "userCurrentPutStar",
  19848. "parameters": [
  19849. {
  19850. "type": "string",
  19851. "description": "owner of the repo to star",
  19852. "name": "owner",
  19853. "in": "path",
  19854. "required": true
  19855. },
  19856. {
  19857. "type": "string",
  19858. "description": "name of the repo to star",
  19859. "name": "repo",
  19860. "in": "path",
  19861. "required": true
  19862. }
  19863. ],
  19864. "responses": {
  19865. "204": {
  19866. "$ref": "#/responses/empty"
  19867. },
  19868. "403": {
  19869. "$ref": "#/responses/forbidden"
  19870. },
  19871. "404": {
  19872. "$ref": "#/responses/notFound"
  19873. }
  19874. }
  19875. },
  19876. "delete": {
  19877. "tags": [
  19878. "user"
  19879. ],
  19880. "summary": "Unstar the given repo",
  19881. "operationId": "userCurrentDeleteStar",
  19882. "parameters": [
  19883. {
  19884. "type": "string",
  19885. "description": "owner of the repo to unstar",
  19886. "name": "owner",
  19887. "in": "path",
  19888. "required": true
  19889. },
  19890. {
  19891. "type": "string",
  19892. "description": "name of the repo to unstar",
  19893. "name": "repo",
  19894. "in": "path",
  19895. "required": true
  19896. }
  19897. ],
  19898. "responses": {
  19899. "204": {
  19900. "$ref": "#/responses/empty"
  19901. },
  19902. "403": {
  19903. "$ref": "#/responses/forbidden"
  19904. },
  19905. "404": {
  19906. "$ref": "#/responses/notFound"
  19907. }
  19908. }
  19909. }
  19910. },
  19911. "/user/stopwatches": {
  19912. "get": {
  19913. "consumes": [
  19914. "application/json"
  19915. ],
  19916. "produces": [
  19917. "application/json"
  19918. ],
  19919. "tags": [
  19920. "user"
  19921. ],
  19922. "summary": "Get list of all existing stopwatches",
  19923. "operationId": "userGetStopWatches",
  19924. "parameters": [
  19925. {
  19926. "type": "integer",
  19927. "description": "page number of results to return (1-based)",
  19928. "name": "page",
  19929. "in": "query"
  19930. },
  19931. {
  19932. "type": "integer",
  19933. "description": "page size of results",
  19934. "name": "limit",
  19935. "in": "query"
  19936. }
  19937. ],
  19938. "responses": {
  19939. "200": {
  19940. "$ref": "#/responses/StopWatchList"
  19941. }
  19942. }
  19943. }
  19944. },
  19945. "/user/subscriptions": {
  19946. "get": {
  19947. "produces": [
  19948. "application/json"
  19949. ],
  19950. "tags": [
  19951. "user"
  19952. ],
  19953. "summary": "List repositories watched by the authenticated user",
  19954. "operationId": "userCurrentListSubscriptions",
  19955. "parameters": [
  19956. {
  19957. "type": "integer",
  19958. "description": "page number of results to return (1-based)",
  19959. "name": "page",
  19960. "in": "query"
  19961. },
  19962. {
  19963. "type": "integer",
  19964. "description": "page size of results",
  19965. "name": "limit",
  19966. "in": "query"
  19967. }
  19968. ],
  19969. "responses": {
  19970. "200": {
  19971. "$ref": "#/responses/RepositoryList"
  19972. }
  19973. }
  19974. }
  19975. },
  19976. "/user/teams": {
  19977. "get": {
  19978. "produces": [
  19979. "application/json"
  19980. ],
  19981. "tags": [
  19982. "user"
  19983. ],
  19984. "summary": "List all the teams a user belongs to",
  19985. "operationId": "userListTeams",
  19986. "parameters": [
  19987. {
  19988. "type": "integer",
  19989. "description": "page number of results to return (1-based)",
  19990. "name": "page",
  19991. "in": "query"
  19992. },
  19993. {
  19994. "type": "integer",
  19995. "description": "page size of results",
  19996. "name": "limit",
  19997. "in": "query"
  19998. }
  19999. ],
  20000. "responses": {
  20001. "200": {
  20002. "$ref": "#/responses/TeamList"
  20003. }
  20004. }
  20005. }
  20006. },
  20007. "/user/times": {
  20008. "get": {
  20009. "produces": [
  20010. "application/json"
  20011. ],
  20012. "tags": [
  20013. "user"
  20014. ],
  20015. "summary": "List the current user's tracked times",
  20016. "operationId": "userCurrentTrackedTimes",
  20017. "parameters": [
  20018. {
  20019. "type": "integer",
  20020. "description": "page number of results to return (1-based)",
  20021. "name": "page",
  20022. "in": "query"
  20023. },
  20024. {
  20025. "type": "integer",
  20026. "description": "page size of results",
  20027. "name": "limit",
  20028. "in": "query"
  20029. },
  20030. {
  20031. "type": "string",
  20032. "format": "date-time",
  20033. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  20034. "name": "since",
  20035. "in": "query"
  20036. },
  20037. {
  20038. "type": "string",
  20039. "format": "date-time",
  20040. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  20041. "name": "before",
  20042. "in": "query"
  20043. }
  20044. ],
  20045. "responses": {
  20046. "200": {
  20047. "$ref": "#/responses/TrackedTimeList"
  20048. }
  20049. }
  20050. }
  20051. },
  20052. "/users/search": {
  20053. "get": {
  20054. "produces": [
  20055. "application/json"
  20056. ],
  20057. "tags": [
  20058. "user"
  20059. ],
  20060. "summary": "Search for users",
  20061. "operationId": "userSearch",
  20062. "parameters": [
  20063. {
  20064. "type": "string",
  20065. "description": "keyword",
  20066. "name": "q",
  20067. "in": "query"
  20068. },
  20069. {
  20070. "type": "integer",
  20071. "format": "int64",
  20072. "description": "ID of the user to search for",
  20073. "name": "uid",
  20074. "in": "query"
  20075. },
  20076. {
  20077. "type": "integer",
  20078. "description": "page number of results to return (1-based)",
  20079. "name": "page",
  20080. "in": "query"
  20081. },
  20082. {
  20083. "type": "integer",
  20084. "description": "page size of results",
  20085. "name": "limit",
  20086. "in": "query"
  20087. }
  20088. ],
  20089. "responses": {
  20090. "200": {
  20091. "description": "SearchResults of a successful search",
  20092. "schema": {
  20093. "type": "object",
  20094. "properties": {
  20095. "data": {
  20096. "type": "array",
  20097. "items": {
  20098. "$ref": "#/definitions/User"
  20099. }
  20100. },
  20101. "ok": {
  20102. "type": "boolean"
  20103. }
  20104. }
  20105. }
  20106. }
  20107. }
  20108. }
  20109. },
  20110. "/users/{username}": {
  20111. "get": {
  20112. "produces": [
  20113. "application/json"
  20114. ],
  20115. "tags": [
  20116. "user"
  20117. ],
  20118. "summary": "Get a user",
  20119. "operationId": "userGet",
  20120. "parameters": [
  20121. {
  20122. "type": "string",
  20123. "description": "username of the user whose data is to be listed",
  20124. "name": "username",
  20125. "in": "path",
  20126. "required": true
  20127. }
  20128. ],
  20129. "responses": {
  20130. "200": {
  20131. "$ref": "#/responses/User"
  20132. },
  20133. "404": {
  20134. "$ref": "#/responses/notFound"
  20135. }
  20136. }
  20137. }
  20138. },
  20139. "/users/{username}/activities/feeds": {
  20140. "get": {
  20141. "produces": [
  20142. "application/json"
  20143. ],
  20144. "tags": [
  20145. "user"
  20146. ],
  20147. "summary": "List a user's activity feeds",
  20148. "operationId": "userListActivityFeeds",
  20149. "parameters": [
  20150. {
  20151. "type": "string",
  20152. "description": "username of the user whose activity feeds are to be listed",
  20153. "name": "username",
  20154. "in": "path",
  20155. "required": true
  20156. },
  20157. {
  20158. "type": "boolean",
  20159. "description": "if true, only show actions performed by the requested user",
  20160. "name": "only-performed-by",
  20161. "in": "query"
  20162. },
  20163. {
  20164. "type": "string",
  20165. "format": "date",
  20166. "description": "the date of the activities to be found",
  20167. "name": "date",
  20168. "in": "query"
  20169. },
  20170. {
  20171. "type": "integer",
  20172. "description": "page number of results to return (1-based)",
  20173. "name": "page",
  20174. "in": "query"
  20175. },
  20176. {
  20177. "type": "integer",
  20178. "description": "page size of results",
  20179. "name": "limit",
  20180. "in": "query"
  20181. }
  20182. ],
  20183. "responses": {
  20184. "200": {
  20185. "$ref": "#/responses/ActivityFeedsList"
  20186. },
  20187. "404": {
  20188. "$ref": "#/responses/notFound"
  20189. }
  20190. }
  20191. }
  20192. },
  20193. "/users/{username}/followers": {
  20194. "get": {
  20195. "produces": [
  20196. "application/json"
  20197. ],
  20198. "tags": [
  20199. "user"
  20200. ],
  20201. "summary": "List the given user's followers",
  20202. "operationId": "userListFollowers",
  20203. "parameters": [
  20204. {
  20205. "type": "string",
  20206. "description": "username of the user whose followers are to be listed",
  20207. "name": "username",
  20208. "in": "path",
  20209. "required": true
  20210. },
  20211. {
  20212. "type": "integer",
  20213. "description": "page number of results to return (1-based)",
  20214. "name": "page",
  20215. "in": "query"
  20216. },
  20217. {
  20218. "type": "integer",
  20219. "description": "page size of results",
  20220. "name": "limit",
  20221. "in": "query"
  20222. }
  20223. ],
  20224. "responses": {
  20225. "200": {
  20226. "$ref": "#/responses/UserList"
  20227. },
  20228. "404": {
  20229. "$ref": "#/responses/notFound"
  20230. }
  20231. }
  20232. }
  20233. },
  20234. "/users/{username}/following": {
  20235. "get": {
  20236. "produces": [
  20237. "application/json"
  20238. ],
  20239. "tags": [
  20240. "user"
  20241. ],
  20242. "summary": "List the users that the given user is following",
  20243. "operationId": "userListFollowing",
  20244. "parameters": [
  20245. {
  20246. "type": "string",
  20247. "description": "username of the user whose followed users are to be listed",
  20248. "name": "username",
  20249. "in": "path",
  20250. "required": true
  20251. },
  20252. {
  20253. "type": "integer",
  20254. "description": "page number of results to return (1-based)",
  20255. "name": "page",
  20256. "in": "query"
  20257. },
  20258. {
  20259. "type": "integer",
  20260. "description": "page size of results",
  20261. "name": "limit",
  20262. "in": "query"
  20263. }
  20264. ],
  20265. "responses": {
  20266. "200": {
  20267. "$ref": "#/responses/UserList"
  20268. },
  20269. "404": {
  20270. "$ref": "#/responses/notFound"
  20271. }
  20272. }
  20273. }
  20274. },
  20275. "/users/{username}/following/{target}": {
  20276. "get": {
  20277. "tags": [
  20278. "user"
  20279. ],
  20280. "summary": "Check if one user is following another user",
  20281. "operationId": "userCheckFollowing",
  20282. "parameters": [
  20283. {
  20284. "type": "string",
  20285. "description": "username of the following user",
  20286. "name": "username",
  20287. "in": "path",
  20288. "required": true
  20289. },
  20290. {
  20291. "type": "string",
  20292. "description": "username of the followed user",
  20293. "name": "target",
  20294. "in": "path",
  20295. "required": true
  20296. }
  20297. ],
  20298. "responses": {
  20299. "204": {
  20300. "$ref": "#/responses/empty"
  20301. },
  20302. "404": {
  20303. "$ref": "#/responses/notFound"
  20304. }
  20305. }
  20306. }
  20307. },
  20308. "/users/{username}/gpg_keys": {
  20309. "get": {
  20310. "produces": [
  20311. "application/json"
  20312. ],
  20313. "tags": [
  20314. "user"
  20315. ],
  20316. "summary": "List the given user's GPG keys",
  20317. "operationId": "userListGPGKeys",
  20318. "parameters": [
  20319. {
  20320. "type": "string",
  20321. "description": "username of the user whose GPG key list is to be obtained",
  20322. "name": "username",
  20323. "in": "path",
  20324. "required": true
  20325. },
  20326. {
  20327. "type": "integer",
  20328. "description": "page number of results to return (1-based)",
  20329. "name": "page",
  20330. "in": "query"
  20331. },
  20332. {
  20333. "type": "integer",
  20334. "description": "page size of results",
  20335. "name": "limit",
  20336. "in": "query"
  20337. }
  20338. ],
  20339. "responses": {
  20340. "200": {
  20341. "$ref": "#/responses/GPGKeyList"
  20342. },
  20343. "404": {
  20344. "$ref": "#/responses/notFound"
  20345. }
  20346. }
  20347. }
  20348. },
  20349. "/users/{username}/heatmap": {
  20350. "get": {
  20351. "produces": [
  20352. "application/json"
  20353. ],
  20354. "tags": [
  20355. "user"
  20356. ],
  20357. "summary": "Get a user's heatmap",
  20358. "operationId": "userGetHeatmapData",
  20359. "parameters": [
  20360. {
  20361. "type": "string",
  20362. "description": "username of the user whose heatmap is to be obtained",
  20363. "name": "username",
  20364. "in": "path",
  20365. "required": true
  20366. }
  20367. ],
  20368. "responses": {
  20369. "200": {
  20370. "$ref": "#/responses/UserHeatmapData"
  20371. },
  20372. "404": {
  20373. "$ref": "#/responses/notFound"
  20374. }
  20375. }
  20376. }
  20377. },
  20378. "/users/{username}/keys": {
  20379. "get": {
  20380. "produces": [
  20381. "application/json"
  20382. ],
  20383. "tags": [
  20384. "user"
  20385. ],
  20386. "summary": "List the given user's public keys",
  20387. "operationId": "userListKeys",
  20388. "parameters": [
  20389. {
  20390. "type": "string",
  20391. "description": "username of the user whose public keys are to be listed",
  20392. "name": "username",
  20393. "in": "path",
  20394. "required": true
  20395. },
  20396. {
  20397. "type": "string",
  20398. "description": "fingerprint of the key",
  20399. "name": "fingerprint",
  20400. "in": "query"
  20401. },
  20402. {
  20403. "type": "integer",
  20404. "description": "page number of results to return (1-based)",
  20405. "name": "page",
  20406. "in": "query"
  20407. },
  20408. {
  20409. "type": "integer",
  20410. "description": "page size of results",
  20411. "name": "limit",
  20412. "in": "query"
  20413. }
  20414. ],
  20415. "responses": {
  20416. "200": {
  20417. "$ref": "#/responses/PublicKeyList"
  20418. },
  20419. "404": {
  20420. "$ref": "#/responses/notFound"
  20421. }
  20422. }
  20423. }
  20424. },
  20425. "/users/{username}/orgs": {
  20426. "get": {
  20427. "produces": [
  20428. "application/json"
  20429. ],
  20430. "tags": [
  20431. "organization"
  20432. ],
  20433. "summary": "List a user's organizations",
  20434. "operationId": "orgListUserOrgs",
  20435. "parameters": [
  20436. {
  20437. "type": "string",
  20438. "description": "username of the user whose organizations are to be listed",
  20439. "name": "username",
  20440. "in": "path",
  20441. "required": true
  20442. },
  20443. {
  20444. "type": "integer",
  20445. "description": "page number of results to return (1-based)",
  20446. "name": "page",
  20447. "in": "query"
  20448. },
  20449. {
  20450. "type": "integer",
  20451. "description": "page size of results",
  20452. "name": "limit",
  20453. "in": "query"
  20454. }
  20455. ],
  20456. "responses": {
  20457. "200": {
  20458. "$ref": "#/responses/OrganizationList"
  20459. },
  20460. "404": {
  20461. "$ref": "#/responses/notFound"
  20462. }
  20463. }
  20464. }
  20465. },
  20466. "/users/{username}/orgs/{org}/permissions": {
  20467. "get": {
  20468. "produces": [
  20469. "application/json"
  20470. ],
  20471. "tags": [
  20472. "organization"
  20473. ],
  20474. "summary": "Get user permissions in organization",
  20475. "operationId": "orgGetUserPermissions",
  20476. "parameters": [
  20477. {
  20478. "type": "string",
  20479. "description": "username of the user whose permissions are to be obtained",
  20480. "name": "username",
  20481. "in": "path",
  20482. "required": true
  20483. },
  20484. {
  20485. "type": "string",
  20486. "description": "name of the organization",
  20487. "name": "org",
  20488. "in": "path",
  20489. "required": true
  20490. }
  20491. ],
  20492. "responses": {
  20493. "200": {
  20494. "$ref": "#/responses/OrganizationPermissions"
  20495. },
  20496. "403": {
  20497. "$ref": "#/responses/forbidden"
  20498. },
  20499. "404": {
  20500. "$ref": "#/responses/notFound"
  20501. }
  20502. }
  20503. }
  20504. },
  20505. "/users/{username}/repos": {
  20506. "get": {
  20507. "produces": [
  20508. "application/json"
  20509. ],
  20510. "tags": [
  20511. "user"
  20512. ],
  20513. "summary": "List the repos owned by the given user",
  20514. "operationId": "userListRepos",
  20515. "parameters": [
  20516. {
  20517. "type": "string",
  20518. "description": "username of the user whose owned repos are to be listed",
  20519. "name": "username",
  20520. "in": "path",
  20521. "required": true
  20522. },
  20523. {
  20524. "type": "integer",
  20525. "description": "page number of results to return (1-based)",
  20526. "name": "page",
  20527. "in": "query"
  20528. },
  20529. {
  20530. "type": "integer",
  20531. "description": "page size of results",
  20532. "name": "limit",
  20533. "in": "query"
  20534. }
  20535. ],
  20536. "responses": {
  20537. "200": {
  20538. "$ref": "#/responses/RepositoryList"
  20539. },
  20540. "404": {
  20541. "$ref": "#/responses/notFound"
  20542. }
  20543. }
  20544. }
  20545. },
  20546. "/users/{username}/starred": {
  20547. "get": {
  20548. "produces": [
  20549. "application/json"
  20550. ],
  20551. "tags": [
  20552. "user"
  20553. ],
  20554. "summary": "The repos that the given user has starred",
  20555. "operationId": "userListStarred",
  20556. "parameters": [
  20557. {
  20558. "type": "string",
  20559. "description": "username of the user whose starred repos are to be listed",
  20560. "name": "username",
  20561. "in": "path",
  20562. "required": true
  20563. },
  20564. {
  20565. "type": "integer",
  20566. "description": "page number of results to return (1-based)",
  20567. "name": "page",
  20568. "in": "query"
  20569. },
  20570. {
  20571. "type": "integer",
  20572. "description": "page size of results",
  20573. "name": "limit",
  20574. "in": "query"
  20575. }
  20576. ],
  20577. "responses": {
  20578. "200": {
  20579. "$ref": "#/responses/RepositoryList"
  20580. },
  20581. "403": {
  20582. "$ref": "#/responses/forbidden"
  20583. },
  20584. "404": {
  20585. "$ref": "#/responses/notFound"
  20586. }
  20587. }
  20588. }
  20589. },
  20590. "/users/{username}/subscriptions": {
  20591. "get": {
  20592. "produces": [
  20593. "application/json"
  20594. ],
  20595. "tags": [
  20596. "user"
  20597. ],
  20598. "summary": "List the repositories watched by a user",
  20599. "operationId": "userListSubscriptions",
  20600. "parameters": [
  20601. {
  20602. "type": "string",
  20603. "description": "username of the user whose watched repos are to be listed",
  20604. "name": "username",
  20605. "in": "path",
  20606. "required": true
  20607. },
  20608. {
  20609. "type": "integer",
  20610. "description": "page number of results to return (1-based)",
  20611. "name": "page",
  20612. "in": "query"
  20613. },
  20614. {
  20615. "type": "integer",
  20616. "description": "page size of results",
  20617. "name": "limit",
  20618. "in": "query"
  20619. }
  20620. ],
  20621. "responses": {
  20622. "200": {
  20623. "$ref": "#/responses/RepositoryList"
  20624. },
  20625. "404": {
  20626. "$ref": "#/responses/notFound"
  20627. }
  20628. }
  20629. }
  20630. },
  20631. "/users/{username}/tokens": {
  20632. "get": {
  20633. "produces": [
  20634. "application/json"
  20635. ],
  20636. "tags": [
  20637. "user"
  20638. ],
  20639. "summary": "List the authenticated user's access tokens",
  20640. "operationId": "userGetTokens",
  20641. "parameters": [
  20642. {
  20643. "type": "string",
  20644. "description": "username of to user whose access tokens are to be listed",
  20645. "name": "username",
  20646. "in": "path",
  20647. "required": true
  20648. },
  20649. {
  20650. "type": "integer",
  20651. "description": "page number of results to return (1-based)",
  20652. "name": "page",
  20653. "in": "query"
  20654. },
  20655. {
  20656. "type": "integer",
  20657. "description": "page size of results",
  20658. "name": "limit",
  20659. "in": "query"
  20660. }
  20661. ],
  20662. "responses": {
  20663. "200": {
  20664. "$ref": "#/responses/AccessTokenList"
  20665. },
  20666. "403": {
  20667. "$ref": "#/responses/forbidden"
  20668. }
  20669. }
  20670. },
  20671. "post": {
  20672. "consumes": [
  20673. "application/json"
  20674. ],
  20675. "produces": [
  20676. "application/json"
  20677. ],
  20678. "tags": [
  20679. "user"
  20680. ],
  20681. "summary": "Create an access token",
  20682. "operationId": "userCreateToken",
  20683. "parameters": [
  20684. {
  20685. "type": "string",
  20686. "description": "username of the user whose token is to be created",
  20687. "name": "username",
  20688. "in": "path",
  20689. "required": true
  20690. },
  20691. {
  20692. "name": "body",
  20693. "in": "body",
  20694. "schema": {
  20695. "$ref": "#/definitions/CreateAccessTokenOption"
  20696. }
  20697. }
  20698. ],
  20699. "responses": {
  20700. "201": {
  20701. "$ref": "#/responses/AccessToken"
  20702. },
  20703. "400": {
  20704. "$ref": "#/responses/error"
  20705. },
  20706. "403": {
  20707. "$ref": "#/responses/forbidden"
  20708. }
  20709. }
  20710. }
  20711. },
  20712. "/users/{username}/tokens/{token}": {
  20713. "delete": {
  20714. "produces": [
  20715. "application/json"
  20716. ],
  20717. "tags": [
  20718. "user"
  20719. ],
  20720. "summary": "delete an access token",
  20721. "operationId": "userDeleteAccessToken",
  20722. "parameters": [
  20723. {
  20724. "type": "string",
  20725. "description": "username of the user whose token is to be deleted",
  20726. "name": "username",
  20727. "in": "path",
  20728. "required": true
  20729. },
  20730. {
  20731. "type": "string",
  20732. "description": "token to be deleted, identified by ID and if not available by name",
  20733. "name": "token",
  20734. "in": "path",
  20735. "required": true
  20736. }
  20737. ],
  20738. "responses": {
  20739. "204": {
  20740. "$ref": "#/responses/empty"
  20741. },
  20742. "403": {
  20743. "$ref": "#/responses/forbidden"
  20744. },
  20745. "404": {
  20746. "$ref": "#/responses/notFound"
  20747. },
  20748. "422": {
  20749. "$ref": "#/responses/error"
  20750. }
  20751. }
  20752. }
  20753. },
  20754. "/version": {
  20755. "get": {
  20756. "produces": [
  20757. "application/json"
  20758. ],
  20759. "tags": [
  20760. "miscellaneous"
  20761. ],
  20762. "summary": "Returns the version of the Gitea application",
  20763. "operationId": "getVersion",
  20764. "responses": {
  20765. "200": {
  20766. "$ref": "#/responses/ServerVersion"
  20767. }
  20768. }
  20769. }
  20770. }
  20771. },
  20772. "definitions": {
  20773. "APIError": {
  20774. "description": "APIError is an api error with a message",
  20775. "type": "object",
  20776. "properties": {
  20777. "message": {
  20778. "description": "Message contains the error description",
  20779. "type": "string",
  20780. "x-go-name": "Message"
  20781. },
  20782. "url": {
  20783. "description": "URL contains the documentation URL for this error",
  20784. "type": "string",
  20785. "x-go-name": "URL"
  20786. }
  20787. },
  20788. "x-go-package": "code.gitea.io/gitea/modules/structs"
  20789. },
  20790. "AccessToken": {
  20791. "type": "object",
  20792. "title": "AccessToken represents an API access token.",
  20793. "properties": {
  20794. "created_at": {
  20795. "description": "The timestamp when the token was created",
  20796. "type": "string",
  20797. "format": "date-time",
  20798. "x-go-name": "Created"
  20799. },
  20800. "id": {
  20801. "description": "The unique identifier of the access token",
  20802. "type": "integer",
  20803. "format": "int64",
  20804. "x-go-name": "ID"
  20805. },
  20806. "last_used_at": {
  20807. "description": "The timestamp when the token was last used",
  20808. "type": "string",
  20809. "format": "date-time",
  20810. "x-go-name": "Updated"
  20811. },
  20812. "name": {
  20813. "description": "The name of the access token",
  20814. "type": "string",
  20815. "x-go-name": "Name"
  20816. },
  20817. "scopes": {
  20818. "description": "The scopes granted to this access token",
  20819. "type": "array",
  20820. "items": {
  20821. "type": "string"
  20822. },
  20823. "x-go-name": "Scopes"
  20824. },
  20825. "sha1": {
  20826. "description": "The SHA1 hash of the access token",
  20827. "type": "string",
  20828. "x-go-name": "Token"
  20829. },
  20830. "token_last_eight": {
  20831. "description": "The last eight characters of the token",
  20832. "type": "string",
  20833. "x-go-name": "TokenLastEight"
  20834. }
  20835. },
  20836. "x-go-package": "code.gitea.io/gitea/modules/structs"
  20837. },
  20838. "ActionArtifact": {
  20839. "description": "ActionArtifact represents a ActionArtifact",
  20840. "type": "object",
  20841. "properties": {
  20842. "archive_download_url": {
  20843. "type": "string",
  20844. "x-go-name": "ArchiveDownloadURL"
  20845. },
  20846. "created_at": {
  20847. "type": "string",
  20848. "format": "date-time",
  20849. "x-go-name": "CreatedAt"
  20850. },
  20851. "expired": {
  20852. "type": "boolean",
  20853. "x-go-name": "Expired"
  20854. },
  20855. "expires_at": {
  20856. "type": "string",
  20857. "format": "date-time",
  20858. "x-go-name": "ExpiresAt"
  20859. },
  20860. "id": {
  20861. "type": "integer",
  20862. "format": "int64",
  20863. "x-go-name": "ID"
  20864. },
  20865. "name": {
  20866. "type": "string",
  20867. "x-go-name": "Name"
  20868. },
  20869. "size_in_bytes": {
  20870. "type": "integer",
  20871. "format": "int64",
  20872. "x-go-name": "SizeInBytes"
  20873. },
  20874. "updated_at": {
  20875. "type": "string",
  20876. "format": "date-time",
  20877. "x-go-name": "UpdatedAt"
  20878. },
  20879. "url": {
  20880. "type": "string",
  20881. "x-go-name": "URL"
  20882. },
  20883. "workflow_run": {
  20884. "$ref": "#/definitions/ActionWorkflowRun"
  20885. }
  20886. },
  20887. "x-go-package": "code.gitea.io/gitea/modules/structs"
  20888. },
  20889. "ActionArtifactsResponse": {
  20890. "description": "ActionArtifactsResponse returns ActionArtifacts",
  20891. "type": "object",
  20892. "properties": {
  20893. "artifacts": {
  20894. "type": "array",
  20895. "items": {
  20896. "$ref": "#/definitions/ActionArtifact"
  20897. },
  20898. "x-go-name": "Entries"
  20899. },
  20900. "total_count": {
  20901. "type": "integer",
  20902. "format": "int64",
  20903. "x-go-name": "TotalCount"
  20904. }
  20905. },
  20906. "x-go-package": "code.gitea.io/gitea/modules/structs"
  20907. },
  20908. "ActionRunner": {
  20909. "description": "ActionRunner represents a Runner",
  20910. "type": "object",
  20911. "properties": {
  20912. "busy": {
  20913. "type": "boolean",
  20914. "x-go-name": "Busy"
  20915. },
  20916. "ephemeral": {
  20917. "type": "boolean",
  20918. "x-go-name": "Ephemeral"
  20919. },
  20920. "id": {
  20921. "type": "integer",
  20922. "format": "int64",
  20923. "x-go-name": "ID"
  20924. },
  20925. "labels": {
  20926. "type": "array",
  20927. "items": {
  20928. "$ref": "#/definitions/ActionRunnerLabel"
  20929. },
  20930. "x-go-name": "Labels"
  20931. },
  20932. "name": {
  20933. "type": "string",
  20934. "x-go-name": "Name"
  20935. },
  20936. "status": {
  20937. "type": "string",
  20938. "x-go-name": "Status"
  20939. }
  20940. },
  20941. "x-go-package": "code.gitea.io/gitea/modules/structs"
  20942. },
  20943. "ActionRunnerLabel": {
  20944. "description": "ActionRunnerLabel represents a Runner Label",
  20945. "type": "object",
  20946. "properties": {
  20947. "id": {
  20948. "type": "integer",
  20949. "format": "int64",
  20950. "x-go-name": "ID"
  20951. },
  20952. "name": {
  20953. "type": "string",
  20954. "x-go-name": "Name"
  20955. },
  20956. "type": {
  20957. "type": "string",
  20958. "x-go-name": "Type"
  20959. }
  20960. },
  20961. "x-go-package": "code.gitea.io/gitea/modules/structs"
  20962. },
  20963. "ActionRunnersResponse": {
  20964. "description": "ActionRunnersResponse returns Runners",
  20965. "type": "object",
  20966. "properties": {
  20967. "runners": {
  20968. "type": "array",
  20969. "items": {
  20970. "$ref": "#/definitions/ActionRunner"
  20971. },
  20972. "x-go-name": "Entries"
  20973. },
  20974. "total_count": {
  20975. "type": "integer",
  20976. "format": "int64",
  20977. "x-go-name": "TotalCount"
  20978. }
  20979. },
  20980. "x-go-package": "code.gitea.io/gitea/modules/structs"
  20981. },
  20982. "ActionTask": {
  20983. "description": "ActionTask represents a ActionTask",
  20984. "type": "object",
  20985. "properties": {
  20986. "created_at": {
  20987. "type": "string",
  20988. "format": "date-time",
  20989. "x-go-name": "CreatedAt"
  20990. },
  20991. "display_title": {
  20992. "description": "DisplayTitle is the display title for the workflow run",
  20993. "type": "string",
  20994. "x-go-name": "DisplayTitle"
  20995. },
  20996. "event": {
  20997. "description": "Event is the type of event that triggered the workflow",
  20998. "type": "string",
  20999. "x-go-name": "Event"
  21000. },
  21001. "head_branch": {
  21002. "description": "HeadBranch is the branch that triggered the workflow",
  21003. "type": "string",
  21004. "x-go-name": "HeadBranch"
  21005. },
  21006. "head_sha": {
  21007. "description": "HeadSHA is the commit SHA that triggered the workflow",
  21008. "type": "string",
  21009. "x-go-name": "HeadSHA"
  21010. },
  21011. "id": {
  21012. "description": "ID is the unique identifier for the action task",
  21013. "type": "integer",
  21014. "format": "int64",
  21015. "x-go-name": "ID"
  21016. },
  21017. "name": {
  21018. "description": "Name is the name of the workflow",
  21019. "type": "string",
  21020. "x-go-name": "Name"
  21021. },
  21022. "run_number": {
  21023. "description": "RunNumber is the sequential number of the workflow run",
  21024. "type": "integer",
  21025. "format": "int64",
  21026. "x-go-name": "RunNumber"
  21027. },
  21028. "run_started_at": {
  21029. "type": "string",
  21030. "format": "date-time",
  21031. "x-go-name": "RunStartedAt"
  21032. },
  21033. "status": {
  21034. "description": "Status indicates the current status of the workflow run",
  21035. "type": "string",
  21036. "x-go-name": "Status"
  21037. },
  21038. "updated_at": {
  21039. "type": "string",
  21040. "format": "date-time",
  21041. "x-go-name": "UpdatedAt"
  21042. },
  21043. "url": {
  21044. "description": "URL is the API URL for this workflow run",
  21045. "type": "string",
  21046. "x-go-name": "URL"
  21047. },
  21048. "workflow_id": {
  21049. "description": "WorkflowID is the identifier of the workflow",
  21050. "type": "string",
  21051. "x-go-name": "WorkflowID"
  21052. }
  21053. },
  21054. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21055. },
  21056. "ActionTaskResponse": {
  21057. "description": "ActionTaskResponse returns a ActionTask",
  21058. "type": "object",
  21059. "properties": {
  21060. "total_count": {
  21061. "description": "TotalCount is the total number of workflow runs",
  21062. "type": "integer",
  21063. "format": "int64",
  21064. "x-go-name": "TotalCount"
  21065. },
  21066. "workflow_runs": {
  21067. "description": "Entries contains the list of workflow runs",
  21068. "type": "array",
  21069. "items": {
  21070. "$ref": "#/definitions/ActionTask"
  21071. },
  21072. "x-go-name": "Entries"
  21073. }
  21074. },
  21075. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21076. },
  21077. "ActionVariable": {
  21078. "description": "ActionVariable return value of the query API",
  21079. "type": "object",
  21080. "properties": {
  21081. "data": {
  21082. "description": "the value of the variable",
  21083. "type": "string",
  21084. "x-go-name": "Data"
  21085. },
  21086. "description": {
  21087. "description": "the description of the variable",
  21088. "type": "string",
  21089. "x-go-name": "Description"
  21090. },
  21091. "name": {
  21092. "description": "the name of the variable",
  21093. "type": "string",
  21094. "x-go-name": "Name"
  21095. },
  21096. "owner_id": {
  21097. "description": "the owner to which the variable belongs",
  21098. "type": "integer",
  21099. "format": "int64",
  21100. "x-go-name": "OwnerID"
  21101. },
  21102. "repo_id": {
  21103. "description": "the repository to which the variable belongs",
  21104. "type": "integer",
  21105. "format": "int64",
  21106. "x-go-name": "RepoID"
  21107. }
  21108. },
  21109. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21110. },
  21111. "ActionWorkflow": {
  21112. "description": "ActionWorkflow represents a ActionWorkflow",
  21113. "type": "object",
  21114. "properties": {
  21115. "badge_url": {
  21116. "description": "BadgeURL is the URL for the workflow badge",
  21117. "type": "string",
  21118. "x-go-name": "BadgeURL"
  21119. },
  21120. "created_at": {
  21121. "type": "string",
  21122. "format": "date-time",
  21123. "x-go-name": "CreatedAt"
  21124. },
  21125. "deleted_at": {
  21126. "type": "string",
  21127. "format": "date-time",
  21128. "x-go-name": "DeletedAt"
  21129. },
  21130. "html_url": {
  21131. "description": "HTMLURL is the web URL for viewing the workflow",
  21132. "type": "string",
  21133. "x-go-name": "HTMLURL"
  21134. },
  21135. "id": {
  21136. "description": "ID is the unique identifier for the workflow",
  21137. "type": "string",
  21138. "x-go-name": "ID"
  21139. },
  21140. "name": {
  21141. "description": "Name is the name of the workflow",
  21142. "type": "string",
  21143. "x-go-name": "Name"
  21144. },
  21145. "path": {
  21146. "description": "Path is the file path of the workflow",
  21147. "type": "string",
  21148. "x-go-name": "Path"
  21149. },
  21150. "state": {
  21151. "description": "State indicates if the workflow is active or disabled",
  21152. "type": "string",
  21153. "x-go-name": "State"
  21154. },
  21155. "updated_at": {
  21156. "type": "string",
  21157. "format": "date-time",
  21158. "x-go-name": "UpdatedAt"
  21159. },
  21160. "url": {
  21161. "description": "URL is the API URL for this workflow",
  21162. "type": "string",
  21163. "x-go-name": "URL"
  21164. }
  21165. },
  21166. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21167. },
  21168. "ActionWorkflowJob": {
  21169. "description": "ActionWorkflowJob represents a WorkflowJob",
  21170. "type": "object",
  21171. "properties": {
  21172. "completed_at": {
  21173. "type": "string",
  21174. "format": "date-time",
  21175. "x-go-name": "CompletedAt"
  21176. },
  21177. "conclusion": {
  21178. "type": "string",
  21179. "x-go-name": "Conclusion"
  21180. },
  21181. "created_at": {
  21182. "type": "string",
  21183. "format": "date-time",
  21184. "x-go-name": "CreatedAt"
  21185. },
  21186. "head_branch": {
  21187. "type": "string",
  21188. "x-go-name": "HeadBranch"
  21189. },
  21190. "head_sha": {
  21191. "type": "string",
  21192. "x-go-name": "HeadSha"
  21193. },
  21194. "html_url": {
  21195. "type": "string",
  21196. "x-go-name": "HTMLURL"
  21197. },
  21198. "id": {
  21199. "type": "integer",
  21200. "format": "int64",
  21201. "x-go-name": "ID"
  21202. },
  21203. "labels": {
  21204. "type": "array",
  21205. "items": {
  21206. "type": "string"
  21207. },
  21208. "x-go-name": "Labels"
  21209. },
  21210. "name": {
  21211. "type": "string",
  21212. "x-go-name": "Name"
  21213. },
  21214. "run_attempt": {
  21215. "type": "integer",
  21216. "format": "int64",
  21217. "x-go-name": "RunAttempt"
  21218. },
  21219. "run_id": {
  21220. "type": "integer",
  21221. "format": "int64",
  21222. "x-go-name": "RunID"
  21223. },
  21224. "run_url": {
  21225. "type": "string",
  21226. "x-go-name": "RunURL"
  21227. },
  21228. "runner_id": {
  21229. "type": "integer",
  21230. "format": "int64",
  21231. "x-go-name": "RunnerID"
  21232. },
  21233. "runner_name": {
  21234. "type": "string",
  21235. "x-go-name": "RunnerName"
  21236. },
  21237. "started_at": {
  21238. "type": "string",
  21239. "format": "date-time",
  21240. "x-go-name": "StartedAt"
  21241. },
  21242. "status": {
  21243. "type": "string",
  21244. "x-go-name": "Status"
  21245. },
  21246. "steps": {
  21247. "type": "array",
  21248. "items": {
  21249. "$ref": "#/definitions/ActionWorkflowStep"
  21250. },
  21251. "x-go-name": "Steps"
  21252. },
  21253. "url": {
  21254. "type": "string",
  21255. "x-go-name": "URL"
  21256. }
  21257. },
  21258. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21259. },
  21260. "ActionWorkflowJobsResponse": {
  21261. "description": "ActionWorkflowJobsResponse returns ActionWorkflowJobs",
  21262. "type": "object",
  21263. "properties": {
  21264. "jobs": {
  21265. "type": "array",
  21266. "items": {
  21267. "$ref": "#/definitions/ActionWorkflowJob"
  21268. },
  21269. "x-go-name": "Entries"
  21270. },
  21271. "total_count": {
  21272. "type": "integer",
  21273. "format": "int64",
  21274. "x-go-name": "TotalCount"
  21275. }
  21276. },
  21277. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21278. },
  21279. "ActionWorkflowResponse": {
  21280. "description": "ActionWorkflowResponse returns a ActionWorkflow",
  21281. "type": "object",
  21282. "properties": {
  21283. "total_count": {
  21284. "type": "integer",
  21285. "format": "int64",
  21286. "x-go-name": "TotalCount"
  21287. },
  21288. "workflows": {
  21289. "type": "array",
  21290. "items": {
  21291. "$ref": "#/definitions/ActionWorkflow"
  21292. },
  21293. "x-go-name": "Workflows"
  21294. }
  21295. },
  21296. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21297. },
  21298. "ActionWorkflowRun": {
  21299. "description": "ActionWorkflowRun represents a WorkflowRun",
  21300. "type": "object",
  21301. "properties": {
  21302. "actor": {
  21303. "$ref": "#/definitions/User"
  21304. },
  21305. "completed_at": {
  21306. "type": "string",
  21307. "format": "date-time",
  21308. "x-go-name": "CompletedAt"
  21309. },
  21310. "conclusion": {
  21311. "type": "string",
  21312. "x-go-name": "Conclusion"
  21313. },
  21314. "display_title": {
  21315. "type": "string",
  21316. "x-go-name": "DisplayTitle"
  21317. },
  21318. "event": {
  21319. "type": "string",
  21320. "x-go-name": "Event"
  21321. },
  21322. "head_branch": {
  21323. "type": "string",
  21324. "x-go-name": "HeadBranch"
  21325. },
  21326. "head_repository": {
  21327. "$ref": "#/definitions/Repository"
  21328. },
  21329. "head_sha": {
  21330. "type": "string",
  21331. "x-go-name": "HeadSha"
  21332. },
  21333. "html_url": {
  21334. "type": "string",
  21335. "x-go-name": "HTMLURL"
  21336. },
  21337. "id": {
  21338. "type": "integer",
  21339. "format": "int64",
  21340. "x-go-name": "ID"
  21341. },
  21342. "path": {
  21343. "type": "string",
  21344. "x-go-name": "Path"
  21345. },
  21346. "repository": {
  21347. "$ref": "#/definitions/Repository"
  21348. },
  21349. "repository_id": {
  21350. "type": "integer",
  21351. "format": "int64",
  21352. "x-go-name": "RepositoryID"
  21353. },
  21354. "run_attempt": {
  21355. "type": "integer",
  21356. "format": "int64",
  21357. "x-go-name": "RunAttempt"
  21358. },
  21359. "run_number": {
  21360. "type": "integer",
  21361. "format": "int64",
  21362. "x-go-name": "RunNumber"
  21363. },
  21364. "started_at": {
  21365. "type": "string",
  21366. "format": "date-time",
  21367. "x-go-name": "StartedAt"
  21368. },
  21369. "status": {
  21370. "type": "string",
  21371. "x-go-name": "Status"
  21372. },
  21373. "trigger_actor": {
  21374. "$ref": "#/definitions/User"
  21375. },
  21376. "url": {
  21377. "type": "string",
  21378. "x-go-name": "URL"
  21379. }
  21380. },
  21381. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21382. },
  21383. "ActionWorkflowRunsResponse": {
  21384. "description": "ActionWorkflowRunsResponse returns ActionWorkflowRuns",
  21385. "type": "object",
  21386. "properties": {
  21387. "total_count": {
  21388. "type": "integer",
  21389. "format": "int64",
  21390. "x-go-name": "TotalCount"
  21391. },
  21392. "workflow_runs": {
  21393. "type": "array",
  21394. "items": {
  21395. "$ref": "#/definitions/ActionWorkflowRun"
  21396. },
  21397. "x-go-name": "Entries"
  21398. }
  21399. },
  21400. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21401. },
  21402. "ActionWorkflowStep": {
  21403. "description": "ActionWorkflowStep represents a step of a WorkflowJob",
  21404. "type": "object",
  21405. "properties": {
  21406. "completed_at": {
  21407. "type": "string",
  21408. "format": "date-time",
  21409. "x-go-name": "CompletedAt"
  21410. },
  21411. "conclusion": {
  21412. "type": "string",
  21413. "x-go-name": "Conclusion"
  21414. },
  21415. "name": {
  21416. "type": "string",
  21417. "x-go-name": "Name"
  21418. },
  21419. "number": {
  21420. "type": "integer",
  21421. "format": "int64",
  21422. "x-go-name": "Number"
  21423. },
  21424. "started_at": {
  21425. "type": "string",
  21426. "format": "date-time",
  21427. "x-go-name": "StartedAt"
  21428. },
  21429. "status": {
  21430. "type": "string",
  21431. "x-go-name": "Status"
  21432. }
  21433. },
  21434. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21435. },
  21436. "Activity": {
  21437. "type": "object",
  21438. "properties": {
  21439. "act_user": {
  21440. "$ref": "#/definitions/User"
  21441. },
  21442. "act_user_id": {
  21443. "description": "The ID of the user who performed the action",
  21444. "type": "integer",
  21445. "format": "int64",
  21446. "x-go-name": "ActUserID"
  21447. },
  21448. "comment": {
  21449. "$ref": "#/definitions/Comment"
  21450. },
  21451. "comment_id": {
  21452. "description": "The ID of the comment associated with the activity (if applicable)",
  21453. "type": "integer",
  21454. "format": "int64",
  21455. "x-go-name": "CommentID"
  21456. },
  21457. "content": {
  21458. "description": "Additional content or details about the activity",
  21459. "type": "string",
  21460. "x-go-name": "Content"
  21461. },
  21462. "created": {
  21463. "description": "The date and time when the activity occurred",
  21464. "type": "string",
  21465. "format": "date-time",
  21466. "x-go-name": "Created"
  21467. },
  21468. "id": {
  21469. "description": "The unique identifier of the activity",
  21470. "type": "integer",
  21471. "format": "int64",
  21472. "x-go-name": "ID"
  21473. },
  21474. "is_private": {
  21475. "description": "Whether this activity is from a private repository",
  21476. "type": "boolean",
  21477. "x-go-name": "IsPrivate"
  21478. },
  21479. "op_type": {
  21480. "description": "the type of action",
  21481. "type": "string",
  21482. "enum": [
  21483. "create_repo",
  21484. "rename_repo",
  21485. "star_repo",
  21486. "watch_repo",
  21487. "commit_repo",
  21488. "create_issue",
  21489. "create_pull_request",
  21490. "transfer_repo",
  21491. "push_tag",
  21492. "comment_issue",
  21493. "merge_pull_request",
  21494. "close_issue",
  21495. "reopen_issue",
  21496. "close_pull_request",
  21497. "reopen_pull_request",
  21498. "delete_tag",
  21499. "delete_branch",
  21500. "mirror_sync_push",
  21501. "mirror_sync_create",
  21502. "mirror_sync_delete",
  21503. "approve_pull_request",
  21504. "reject_pull_request",
  21505. "comment_pull",
  21506. "publish_release",
  21507. "pull_review_dismissed",
  21508. "pull_request_ready_for_review",
  21509. "auto_merge_pull_request"
  21510. ],
  21511. "x-go-name": "OpType"
  21512. },
  21513. "ref_name": {
  21514. "description": "The name of the git reference (branch/tag) associated with the activity",
  21515. "type": "string",
  21516. "x-go-name": "RefName"
  21517. },
  21518. "repo": {
  21519. "$ref": "#/definitions/Repository"
  21520. },
  21521. "repo_id": {
  21522. "description": "The ID of the repository associated with the activity",
  21523. "type": "integer",
  21524. "format": "int64",
  21525. "x-go-name": "RepoID"
  21526. },
  21527. "user_id": {
  21528. "description": "The ID of the user who receives/sees this activity",
  21529. "type": "integer",
  21530. "format": "int64",
  21531. "x-go-name": "UserID"
  21532. }
  21533. },
  21534. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21535. },
  21536. "ActivityPub": {
  21537. "description": "ActivityPub type",
  21538. "type": "object",
  21539. "properties": {
  21540. "@context": {
  21541. "description": "Context defines the JSON-LD context for ActivityPub",
  21542. "type": "string",
  21543. "x-go-name": "Context"
  21544. }
  21545. },
  21546. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21547. },
  21548. "AddCollaboratorOption": {
  21549. "description": "AddCollaboratorOption options when adding a user as a collaborator of a repository",
  21550. "type": "object",
  21551. "properties": {
  21552. "permission": {
  21553. "type": "string",
  21554. "enum": [
  21555. "read",
  21556. "write",
  21557. "admin"
  21558. ],
  21559. "x-go-name": "Permission"
  21560. }
  21561. },
  21562. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21563. },
  21564. "AddTimeOption": {
  21565. "description": "AddTimeOption options for adding time to an issue",
  21566. "type": "object",
  21567. "required": [
  21568. "time"
  21569. ],
  21570. "properties": {
  21571. "created": {
  21572. "type": "string",
  21573. "format": "date-time",
  21574. "x-go-name": "Created"
  21575. },
  21576. "time": {
  21577. "description": "time in seconds",
  21578. "type": "integer",
  21579. "format": "int64",
  21580. "x-go-name": "Time"
  21581. },
  21582. "user_name": {
  21583. "description": "username of the user who spent the time working on the issue (optional)",
  21584. "type": "string",
  21585. "x-go-name": "User"
  21586. }
  21587. },
  21588. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21589. },
  21590. "AnnotatedTag": {
  21591. "description": "AnnotatedTag represents an annotated tag",
  21592. "type": "object",
  21593. "properties": {
  21594. "message": {
  21595. "description": "The message associated with the annotated tag",
  21596. "type": "string",
  21597. "x-go-name": "Message"
  21598. },
  21599. "object": {
  21600. "$ref": "#/definitions/AnnotatedTagObject"
  21601. },
  21602. "sha": {
  21603. "description": "The SHA hash of the annotated tag",
  21604. "type": "string",
  21605. "x-go-name": "SHA"
  21606. },
  21607. "tag": {
  21608. "description": "The name of the annotated tag",
  21609. "type": "string",
  21610. "x-go-name": "Tag"
  21611. },
  21612. "tagger": {
  21613. "$ref": "#/definitions/CommitUser"
  21614. },
  21615. "url": {
  21616. "description": "The URL to access the annotated tag",
  21617. "type": "string",
  21618. "x-go-name": "URL"
  21619. },
  21620. "verification": {
  21621. "$ref": "#/definitions/PayloadCommitVerification"
  21622. }
  21623. },
  21624. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21625. },
  21626. "AnnotatedTagObject": {
  21627. "description": "AnnotatedTagObject contains meta information of the tag object",
  21628. "type": "object",
  21629. "properties": {
  21630. "sha": {
  21631. "description": "The SHA hash of the tagged object",
  21632. "type": "string",
  21633. "x-go-name": "SHA"
  21634. },
  21635. "type": {
  21636. "description": "The type of the tagged object (e.g., commit, tree)",
  21637. "type": "string",
  21638. "x-go-name": "Type"
  21639. },
  21640. "url": {
  21641. "description": "The URL to access the tagged object",
  21642. "type": "string",
  21643. "x-go-name": "URL"
  21644. }
  21645. },
  21646. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21647. },
  21648. "Attachment": {
  21649. "description": "Attachment a generic attachment",
  21650. "type": "object",
  21651. "properties": {
  21652. "browser_download_url": {
  21653. "description": "DownloadURL is the URL to download the attachment",
  21654. "type": "string",
  21655. "x-go-name": "DownloadURL"
  21656. },
  21657. "created_at": {
  21658. "type": "string",
  21659. "format": "date-time",
  21660. "x-go-name": "Created"
  21661. },
  21662. "download_count": {
  21663. "description": "DownloadCount is the number of times the attachment has been downloaded",
  21664. "type": "integer",
  21665. "format": "int64",
  21666. "x-go-name": "DownloadCount"
  21667. },
  21668. "id": {
  21669. "description": "ID is the unique identifier for the attachment",
  21670. "type": "integer",
  21671. "format": "int64",
  21672. "x-go-name": "ID"
  21673. },
  21674. "name": {
  21675. "description": "Name is the filename of the attachment",
  21676. "type": "string",
  21677. "x-go-name": "Name"
  21678. },
  21679. "size": {
  21680. "description": "Size is the file size in bytes",
  21681. "type": "integer",
  21682. "format": "int64",
  21683. "x-go-name": "Size"
  21684. },
  21685. "uuid": {
  21686. "description": "UUID is the unique identifier for the attachment file",
  21687. "type": "string",
  21688. "x-go-name": "UUID"
  21689. }
  21690. },
  21691. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21692. },
  21693. "Badge": {
  21694. "description": "Badge represents a user badge",
  21695. "type": "object",
  21696. "properties": {
  21697. "description": {
  21698. "type": "string",
  21699. "x-go-name": "Description"
  21700. },
  21701. "id": {
  21702. "type": "integer",
  21703. "format": "int64",
  21704. "x-go-name": "ID"
  21705. },
  21706. "image_url": {
  21707. "type": "string",
  21708. "x-go-name": "ImageURL"
  21709. },
  21710. "slug": {
  21711. "type": "string",
  21712. "x-go-name": "Slug"
  21713. }
  21714. },
  21715. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21716. },
  21717. "Branch": {
  21718. "description": "Branch represents a repository branch",
  21719. "type": "object",
  21720. "properties": {
  21721. "commit": {
  21722. "$ref": "#/definitions/PayloadCommit"
  21723. },
  21724. "effective_branch_protection_name": {
  21725. "description": "EffectiveBranchProtectionName is the name of the effective branch protection rule",
  21726. "type": "string",
  21727. "x-go-name": "EffectiveBranchProtectionName"
  21728. },
  21729. "enable_status_check": {
  21730. "description": "EnableStatusCheck indicates if status checks are enabled",
  21731. "type": "boolean",
  21732. "x-go-name": "EnableStatusCheck"
  21733. },
  21734. "name": {
  21735. "description": "Name is the branch name",
  21736. "type": "string",
  21737. "x-go-name": "Name"
  21738. },
  21739. "protected": {
  21740. "description": "Protected indicates if the branch is protected",
  21741. "type": "boolean",
  21742. "x-go-name": "Protected"
  21743. },
  21744. "required_approvals": {
  21745. "description": "RequiredApprovals is the number of required approvals for pull requests",
  21746. "type": "integer",
  21747. "format": "int64",
  21748. "x-go-name": "RequiredApprovals"
  21749. },
  21750. "status_check_contexts": {
  21751. "description": "StatusCheckContexts contains the list of required status check contexts",
  21752. "type": "array",
  21753. "items": {
  21754. "type": "string"
  21755. },
  21756. "x-go-name": "StatusCheckContexts"
  21757. },
  21758. "user_can_merge": {
  21759. "description": "UserCanMerge indicates if the current user can merge to this branch",
  21760. "type": "boolean",
  21761. "x-go-name": "UserCanMerge"
  21762. },
  21763. "user_can_push": {
  21764. "description": "UserCanPush indicates if the current user can push to this branch",
  21765. "type": "boolean",
  21766. "x-go-name": "UserCanPush"
  21767. }
  21768. },
  21769. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21770. },
  21771. "BranchProtection": {
  21772. "description": "BranchProtection represents a branch protection for a repository",
  21773. "type": "object",
  21774. "properties": {
  21775. "approvals_whitelist_teams": {
  21776. "type": "array",
  21777. "items": {
  21778. "type": "string"
  21779. },
  21780. "x-go-name": "ApprovalsWhitelistTeams"
  21781. },
  21782. "approvals_whitelist_username": {
  21783. "type": "array",
  21784. "items": {
  21785. "type": "string"
  21786. },
  21787. "x-go-name": "ApprovalsWhitelistUsernames"
  21788. },
  21789. "block_admin_merge_override": {
  21790. "type": "boolean",
  21791. "x-go-name": "BlockAdminMergeOverride"
  21792. },
  21793. "block_on_official_review_requests": {
  21794. "type": "boolean",
  21795. "x-go-name": "BlockOnOfficialReviewRequests"
  21796. },
  21797. "block_on_outdated_branch": {
  21798. "type": "boolean",
  21799. "x-go-name": "BlockOnOutdatedBranch"
  21800. },
  21801. "block_on_rejected_reviews": {
  21802. "type": "boolean",
  21803. "x-go-name": "BlockOnRejectedReviews"
  21804. },
  21805. "branch_name": {
  21806. "description": "Deprecated: true",
  21807. "type": "string",
  21808. "x-go-name": "BranchName"
  21809. },
  21810. "created_at": {
  21811. "type": "string",
  21812. "format": "date-time",
  21813. "x-go-name": "Created"
  21814. },
  21815. "dismiss_stale_approvals": {
  21816. "type": "boolean",
  21817. "x-go-name": "DismissStaleApprovals"
  21818. },
  21819. "enable_approvals_whitelist": {
  21820. "type": "boolean",
  21821. "x-go-name": "EnableApprovalsWhitelist"
  21822. },
  21823. "enable_force_push": {
  21824. "type": "boolean",
  21825. "x-go-name": "EnableForcePush"
  21826. },
  21827. "enable_force_push_allowlist": {
  21828. "type": "boolean",
  21829. "x-go-name": "EnableForcePushAllowlist"
  21830. },
  21831. "enable_merge_whitelist": {
  21832. "type": "boolean",
  21833. "x-go-name": "EnableMergeWhitelist"
  21834. },
  21835. "enable_push": {
  21836. "type": "boolean",
  21837. "x-go-name": "EnablePush"
  21838. },
  21839. "enable_push_whitelist": {
  21840. "type": "boolean",
  21841. "x-go-name": "EnablePushWhitelist"
  21842. },
  21843. "enable_status_check": {
  21844. "type": "boolean",
  21845. "x-go-name": "EnableStatusCheck"
  21846. },
  21847. "force_push_allowlist_deploy_keys": {
  21848. "type": "boolean",
  21849. "x-go-name": "ForcePushAllowlistDeployKeys"
  21850. },
  21851. "force_push_allowlist_teams": {
  21852. "type": "array",
  21853. "items": {
  21854. "type": "string"
  21855. },
  21856. "x-go-name": "ForcePushAllowlistTeams"
  21857. },
  21858. "force_push_allowlist_usernames": {
  21859. "type": "array",
  21860. "items": {
  21861. "type": "string"
  21862. },
  21863. "x-go-name": "ForcePushAllowlistUsernames"
  21864. },
  21865. "ignore_stale_approvals": {
  21866. "type": "boolean",
  21867. "x-go-name": "IgnoreStaleApprovals"
  21868. },
  21869. "merge_whitelist_teams": {
  21870. "type": "array",
  21871. "items": {
  21872. "type": "string"
  21873. },
  21874. "x-go-name": "MergeWhitelistTeams"
  21875. },
  21876. "merge_whitelist_usernames": {
  21877. "type": "array",
  21878. "items": {
  21879. "type": "string"
  21880. },
  21881. "x-go-name": "MergeWhitelistUsernames"
  21882. },
  21883. "priority": {
  21884. "description": "Priority is the priority of this branch protection rule",
  21885. "type": "integer",
  21886. "format": "int64",
  21887. "x-go-name": "Priority"
  21888. },
  21889. "protected_file_patterns": {
  21890. "type": "string",
  21891. "x-go-name": "ProtectedFilePatterns"
  21892. },
  21893. "push_whitelist_deploy_keys": {
  21894. "type": "boolean",
  21895. "x-go-name": "PushWhitelistDeployKeys"
  21896. },
  21897. "push_whitelist_teams": {
  21898. "type": "array",
  21899. "items": {
  21900. "type": "string"
  21901. },
  21902. "x-go-name": "PushWhitelistTeams"
  21903. },
  21904. "push_whitelist_usernames": {
  21905. "type": "array",
  21906. "items": {
  21907. "type": "string"
  21908. },
  21909. "x-go-name": "PushWhitelistUsernames"
  21910. },
  21911. "require_signed_commits": {
  21912. "type": "boolean",
  21913. "x-go-name": "RequireSignedCommits"
  21914. },
  21915. "required_approvals": {
  21916. "type": "integer",
  21917. "format": "int64",
  21918. "x-go-name": "RequiredApprovals"
  21919. },
  21920. "rule_name": {
  21921. "description": "RuleName is the name of the branch protection rule",
  21922. "type": "string",
  21923. "x-go-name": "RuleName"
  21924. },
  21925. "status_check_contexts": {
  21926. "type": "array",
  21927. "items": {
  21928. "type": "string"
  21929. },
  21930. "x-go-name": "StatusCheckContexts"
  21931. },
  21932. "unprotected_file_patterns": {
  21933. "type": "string",
  21934. "x-go-name": "UnprotectedFilePatterns"
  21935. },
  21936. "updated_at": {
  21937. "type": "string",
  21938. "format": "date-time",
  21939. "x-go-name": "Updated"
  21940. }
  21941. },
  21942. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21943. },
  21944. "ChangeFileOperation": {
  21945. "description": "ChangeFileOperation for creating, updating or deleting a file",
  21946. "type": "object",
  21947. "required": [
  21948. "operation",
  21949. "path"
  21950. ],
  21951. "properties": {
  21952. "content": {
  21953. "description": "new or updated file content, it must be base64 encoded",
  21954. "type": "string",
  21955. "x-go-name": "ContentBase64"
  21956. },
  21957. "from_path": {
  21958. "description": "old path of the file to move",
  21959. "type": "string",
  21960. "x-go-name": "FromPath"
  21961. },
  21962. "operation": {
  21963. "description": "indicates what to do with the file: \"create\" for creating a new file, \"update\" for updating an existing file,\n\"upload\" for creating or updating a file, \"rename\" for renaming a file, and \"delete\" for deleting an existing file.",
  21964. "type": "string",
  21965. "enum": [
  21966. "create",
  21967. "update",
  21968. "upload",
  21969. "rename",
  21970. "delete"
  21971. ],
  21972. "x-go-name": "Operation"
  21973. },
  21974. "path": {
  21975. "description": "path to the existing or new file",
  21976. "type": "string",
  21977. "x-go-name": "Path"
  21978. },
  21979. "sha": {
  21980. "description": "the blob ID (SHA) for the file that already exists, required for changing existing files",
  21981. "type": "string",
  21982. "x-go-name": "SHA"
  21983. }
  21984. },
  21985. "x-go-package": "code.gitea.io/gitea/modules/structs"
  21986. },
  21987. "ChangeFilesOptions": {
  21988. "description": "ChangeFilesOptions options for creating, updating or deleting multiple files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)",
  21989. "type": "object",
  21990. "required": [
  21991. "files"
  21992. ],
  21993. "properties": {
  21994. "author": {
  21995. "$ref": "#/definitions/Identity"
  21996. },
  21997. "branch": {
  21998. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  21999. "type": "string",
  22000. "x-go-name": "BranchName"
  22001. },
  22002. "committer": {
  22003. "$ref": "#/definitions/Identity"
  22004. },
  22005. "dates": {
  22006. "$ref": "#/definitions/CommitDateOptions"
  22007. },
  22008. "files": {
  22009. "description": "list of file operations",
  22010. "type": "array",
  22011. "items": {
  22012. "$ref": "#/definitions/ChangeFileOperation"
  22013. },
  22014. "x-go-name": "Files"
  22015. },
  22016. "message": {
  22017. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  22018. "type": "string",
  22019. "x-go-name": "Message"
  22020. },
  22021. "new_branch": {
  22022. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  22023. "type": "string",
  22024. "x-go-name": "NewBranchName"
  22025. },
  22026. "signoff": {
  22027. "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.",
  22028. "type": "boolean",
  22029. "x-go-name": "Signoff"
  22030. }
  22031. },
  22032. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22033. },
  22034. "ChangedFile": {
  22035. "description": "ChangedFile store information about files affected by the pull request",
  22036. "type": "object",
  22037. "properties": {
  22038. "additions": {
  22039. "description": "The number of lines added to the file",
  22040. "type": "integer",
  22041. "format": "int64",
  22042. "x-go-name": "Additions"
  22043. },
  22044. "changes": {
  22045. "description": "The total number of changes to the file",
  22046. "type": "integer",
  22047. "format": "int64",
  22048. "x-go-name": "Changes"
  22049. },
  22050. "contents_url": {
  22051. "description": "The API URL to get the file contents",
  22052. "type": "string",
  22053. "x-go-name": "ContentsURL"
  22054. },
  22055. "deletions": {
  22056. "description": "The number of lines deleted from the file",
  22057. "type": "integer",
  22058. "format": "int64",
  22059. "x-go-name": "Deletions"
  22060. },
  22061. "filename": {
  22062. "description": "The name of the changed file",
  22063. "type": "string",
  22064. "x-go-name": "Filename"
  22065. },
  22066. "html_url": {
  22067. "description": "The HTML URL to view the file changes",
  22068. "type": "string",
  22069. "x-go-name": "HTMLURL"
  22070. },
  22071. "previous_filename": {
  22072. "description": "The previous filename if the file was renamed",
  22073. "type": "string",
  22074. "x-go-name": "PreviousFilename"
  22075. },
  22076. "raw_url": {
  22077. "description": "The raw URL to download the file",
  22078. "type": "string",
  22079. "x-go-name": "RawURL"
  22080. },
  22081. "status": {
  22082. "description": "The status of the file change (added, modified, deleted, etc.)",
  22083. "type": "string",
  22084. "x-go-name": "Status"
  22085. }
  22086. },
  22087. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22088. },
  22089. "CombinedStatus": {
  22090. "description": "CombinedStatus holds the combined state of several statuses for a single commit",
  22091. "type": "object",
  22092. "properties": {
  22093. "commit_url": {
  22094. "description": "CommitURL is the API URL for the commit",
  22095. "type": "string",
  22096. "x-go-name": "CommitURL"
  22097. },
  22098. "repository": {
  22099. "$ref": "#/definitions/Repository"
  22100. },
  22101. "sha": {
  22102. "description": "SHA is the commit SHA this status applies to",
  22103. "type": "string",
  22104. "x-go-name": "SHA"
  22105. },
  22106. "state": {
  22107. "description": "State is the overall combined status state\npending CommitStatusPending CommitStatusPending is for when the CommitStatus is Pending\nsuccess CommitStatusSuccess CommitStatusSuccess is for when the CommitStatus is Success\nerror CommitStatusError CommitStatusError is for when the CommitStatus is Error\nfailure CommitStatusFailure CommitStatusFailure is for when the CommitStatus is Failure\nwarning CommitStatusWarning CommitStatusWarning is for when the CommitStatus is Warning\nskipped CommitStatusSkipped CommitStatusSkipped is for when CommitStatus is Skipped",
  22108. "type": "string",
  22109. "enum": [
  22110. "pending",
  22111. "success",
  22112. "error",
  22113. "failure",
  22114. "warning",
  22115. "skipped"
  22116. ],
  22117. "x-go-enum-desc": "pending CommitStatusPending CommitStatusPending is for when the CommitStatus is Pending\nsuccess CommitStatusSuccess CommitStatusSuccess is for when the CommitStatus is Success\nerror CommitStatusError CommitStatusError is for when the CommitStatus is Error\nfailure CommitStatusFailure CommitStatusFailure is for when the CommitStatus is Failure\nwarning CommitStatusWarning CommitStatusWarning is for when the CommitStatus is Warning\nskipped CommitStatusSkipped CommitStatusSkipped is for when CommitStatus is Skipped",
  22118. "x-go-name": "State"
  22119. },
  22120. "statuses": {
  22121. "description": "Statuses contains all individual commit statuses",
  22122. "type": "array",
  22123. "items": {
  22124. "$ref": "#/definitions/CommitStatus"
  22125. },
  22126. "x-go-name": "Statuses"
  22127. },
  22128. "total_count": {
  22129. "description": "TotalCount is the total number of statuses",
  22130. "type": "integer",
  22131. "format": "int64",
  22132. "x-go-name": "TotalCount"
  22133. },
  22134. "url": {
  22135. "description": "URL is the API URL for this combined status",
  22136. "type": "string",
  22137. "x-go-name": "URL"
  22138. }
  22139. },
  22140. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22141. },
  22142. "Comment": {
  22143. "description": "Comment represents a comment on a commit or issue",
  22144. "type": "object",
  22145. "properties": {
  22146. "assets": {
  22147. "description": "Attachments contains files attached to the comment",
  22148. "type": "array",
  22149. "items": {
  22150. "$ref": "#/definitions/Attachment"
  22151. },
  22152. "x-go-name": "Attachments"
  22153. },
  22154. "body": {
  22155. "description": "Body contains the comment text content",
  22156. "type": "string",
  22157. "x-go-name": "Body"
  22158. },
  22159. "created_at": {
  22160. "type": "string",
  22161. "format": "date-time",
  22162. "x-go-name": "Created"
  22163. },
  22164. "html_url": {
  22165. "description": "HTMLURL is the web URL for viewing the comment",
  22166. "type": "string",
  22167. "x-go-name": "HTMLURL"
  22168. },
  22169. "id": {
  22170. "description": "ID is the unique identifier for the comment",
  22171. "type": "integer",
  22172. "format": "int64",
  22173. "x-go-name": "ID"
  22174. },
  22175. "issue_url": {
  22176. "description": "IssueURL is the API URL for the issue",
  22177. "type": "string",
  22178. "x-go-name": "IssueURL"
  22179. },
  22180. "original_author": {
  22181. "description": "OriginalAuthor is the original author name (for imported comments)",
  22182. "type": "string",
  22183. "x-go-name": "OriginalAuthor"
  22184. },
  22185. "original_author_id": {
  22186. "description": "OriginalAuthorID is the original author ID (for imported comments)",
  22187. "type": "integer",
  22188. "format": "int64",
  22189. "x-go-name": "OriginalAuthorID"
  22190. },
  22191. "pull_request_url": {
  22192. "description": "PRURL is the API URL for the pull request (if applicable)",
  22193. "type": "string",
  22194. "x-go-name": "PRURL"
  22195. },
  22196. "updated_at": {
  22197. "type": "string",
  22198. "format": "date-time",
  22199. "x-go-name": "Updated"
  22200. },
  22201. "user": {
  22202. "$ref": "#/definitions/User"
  22203. }
  22204. },
  22205. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22206. },
  22207. "Commit": {
  22208. "type": "object",
  22209. "title": "Commit contains information generated from a Git commit.",
  22210. "properties": {
  22211. "author": {
  22212. "$ref": "#/definitions/User"
  22213. },
  22214. "commit": {
  22215. "$ref": "#/definitions/RepoCommit"
  22216. },
  22217. "committer": {
  22218. "$ref": "#/definitions/User"
  22219. },
  22220. "created": {
  22221. "type": "string",
  22222. "format": "date-time",
  22223. "x-go-name": "Created"
  22224. },
  22225. "files": {
  22226. "description": "Files contains information about files affected by the commit",
  22227. "type": "array",
  22228. "items": {
  22229. "$ref": "#/definitions/CommitAffectedFiles"
  22230. },
  22231. "x-go-name": "Files"
  22232. },
  22233. "html_url": {
  22234. "description": "HTMLURL is the web URL for viewing the commit",
  22235. "type": "string",
  22236. "x-go-name": "HTMLURL"
  22237. },
  22238. "parents": {
  22239. "description": "Parents contains the parent commit information",
  22240. "type": "array",
  22241. "items": {
  22242. "$ref": "#/definitions/CommitMeta"
  22243. },
  22244. "x-go-name": "Parents"
  22245. },
  22246. "sha": {
  22247. "description": "SHA is the commit SHA hash",
  22248. "type": "string",
  22249. "x-go-name": "SHA"
  22250. },
  22251. "stats": {
  22252. "$ref": "#/definitions/CommitStats"
  22253. },
  22254. "url": {
  22255. "description": "URL is the API URL for the commit",
  22256. "type": "string",
  22257. "x-go-name": "URL"
  22258. }
  22259. },
  22260. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22261. },
  22262. "CommitAffectedFiles": {
  22263. "description": "CommitAffectedFiles store information about files affected by the commit",
  22264. "type": "object",
  22265. "properties": {
  22266. "filename": {
  22267. "description": "Filename is the path of the affected file",
  22268. "type": "string",
  22269. "x-go-name": "Filename"
  22270. },
  22271. "status": {
  22272. "description": "Status indicates how the file was affected (added, modified, deleted)",
  22273. "type": "string",
  22274. "x-go-name": "Status"
  22275. }
  22276. },
  22277. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22278. },
  22279. "CommitDateOptions": {
  22280. "description": "CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE",
  22281. "type": "object",
  22282. "properties": {
  22283. "author": {
  22284. "type": "string",
  22285. "format": "date-time",
  22286. "x-go-name": "Author"
  22287. },
  22288. "committer": {
  22289. "type": "string",
  22290. "format": "date-time",
  22291. "x-go-name": "Committer"
  22292. }
  22293. },
  22294. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22295. },
  22296. "CommitMeta": {
  22297. "type": "object",
  22298. "title": "CommitMeta contains meta information of a commit in terms of API.",
  22299. "properties": {
  22300. "created": {
  22301. "type": "string",
  22302. "format": "date-time",
  22303. "x-go-name": "Created"
  22304. },
  22305. "sha": {
  22306. "description": "SHA is the commit SHA hash",
  22307. "type": "string",
  22308. "x-go-name": "SHA"
  22309. },
  22310. "url": {
  22311. "description": "URL is the API URL for the commit",
  22312. "type": "string",
  22313. "x-go-name": "URL"
  22314. }
  22315. },
  22316. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22317. },
  22318. "CommitStats": {
  22319. "description": "CommitStats is statistics for a RepoCommit",
  22320. "type": "object",
  22321. "properties": {
  22322. "additions": {
  22323. "description": "Additions is the number of lines added",
  22324. "type": "integer",
  22325. "format": "int64",
  22326. "x-go-name": "Additions"
  22327. },
  22328. "deletions": {
  22329. "description": "Deletions is the number of lines deleted",
  22330. "type": "integer",
  22331. "format": "int64",
  22332. "x-go-name": "Deletions"
  22333. },
  22334. "total": {
  22335. "description": "Total is the total number of lines changed",
  22336. "type": "integer",
  22337. "format": "int64",
  22338. "x-go-name": "Total"
  22339. }
  22340. },
  22341. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22342. },
  22343. "CommitStatus": {
  22344. "description": "CommitStatus holds a single status of a single Commit",
  22345. "type": "object",
  22346. "properties": {
  22347. "context": {
  22348. "description": "Context is the unique context identifier for the status",
  22349. "type": "string",
  22350. "x-go-name": "Context"
  22351. },
  22352. "created_at": {
  22353. "type": "string",
  22354. "format": "date-time",
  22355. "x-go-name": "Created"
  22356. },
  22357. "creator": {
  22358. "$ref": "#/definitions/User"
  22359. },
  22360. "description": {
  22361. "description": "Description provides a brief description of the status",
  22362. "type": "string",
  22363. "x-go-name": "Description"
  22364. },
  22365. "id": {
  22366. "description": "ID is the unique identifier for the commit status",
  22367. "type": "integer",
  22368. "format": "int64",
  22369. "x-go-name": "ID"
  22370. },
  22371. "status": {
  22372. "description": "State represents the status state (pending, success, error, failure)\npending CommitStatusPending CommitStatusPending is for when the CommitStatus is Pending\nsuccess CommitStatusSuccess CommitStatusSuccess is for when the CommitStatus is Success\nerror CommitStatusError CommitStatusError is for when the CommitStatus is Error\nfailure CommitStatusFailure CommitStatusFailure is for when the CommitStatus is Failure\nwarning CommitStatusWarning CommitStatusWarning is for when the CommitStatus is Warning\nskipped CommitStatusSkipped CommitStatusSkipped is for when CommitStatus is Skipped",
  22373. "type": "string",
  22374. "enum": [
  22375. "pending",
  22376. "success",
  22377. "error",
  22378. "failure",
  22379. "warning",
  22380. "skipped"
  22381. ],
  22382. "x-go-enum-desc": "pending CommitStatusPending CommitStatusPending is for when the CommitStatus is Pending\nsuccess CommitStatusSuccess CommitStatusSuccess is for when the CommitStatus is Success\nerror CommitStatusError CommitStatusError is for when the CommitStatus is Error\nfailure CommitStatusFailure CommitStatusFailure is for when the CommitStatus is Failure\nwarning CommitStatusWarning CommitStatusWarning is for when the CommitStatus is Warning\nskipped CommitStatusSkipped CommitStatusSkipped is for when CommitStatus is Skipped",
  22383. "x-go-name": "State"
  22384. },
  22385. "target_url": {
  22386. "description": "TargetURL is the URL to link to for more details",
  22387. "type": "string",
  22388. "x-go-name": "TargetURL"
  22389. },
  22390. "updated_at": {
  22391. "type": "string",
  22392. "format": "date-time",
  22393. "x-go-name": "Updated"
  22394. },
  22395. "url": {
  22396. "description": "URL is the API URL for this status",
  22397. "type": "string",
  22398. "x-go-name": "URL"
  22399. }
  22400. },
  22401. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22402. },
  22403. "CommitUser": {
  22404. "type": "object",
  22405. "title": "CommitUser contains information of a user in the context of a commit.",
  22406. "properties": {
  22407. "date": {
  22408. "description": "Date is the commit date in string format",
  22409. "type": "string",
  22410. "x-go-name": "Date"
  22411. },
  22412. "email": {
  22413. "type": "string",
  22414. "format": "email",
  22415. "x-go-name": "Email"
  22416. },
  22417. "name": {
  22418. "description": "Name is the person's name",
  22419. "type": "string",
  22420. "x-go-name": "Name"
  22421. }
  22422. },
  22423. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22424. },
  22425. "Compare": {
  22426. "type": "object",
  22427. "title": "Compare represents a comparison between two commits.",
  22428. "properties": {
  22429. "commits": {
  22430. "type": "array",
  22431. "items": {
  22432. "$ref": "#/definitions/Commit"
  22433. },
  22434. "x-go-name": "Commits"
  22435. },
  22436. "total_commits": {
  22437. "type": "integer",
  22438. "format": "int64",
  22439. "x-go-name": "TotalCommits"
  22440. }
  22441. },
  22442. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22443. },
  22444. "ContentsExtResponse": {
  22445. "type": "object",
  22446. "properties": {
  22447. "dir_contents": {
  22448. "description": "DirContents contains directory listing when the path represents a directory",
  22449. "type": "array",
  22450. "items": {
  22451. "$ref": "#/definitions/ContentsResponse"
  22452. },
  22453. "x-go-name": "DirContents"
  22454. },
  22455. "file_contents": {
  22456. "$ref": "#/definitions/ContentsResponse"
  22457. }
  22458. },
  22459. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22460. },
  22461. "ContentsResponse": {
  22462. "description": "ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content",
  22463. "type": "object",
  22464. "properties": {
  22465. "_links": {
  22466. "$ref": "#/definitions/FileLinksResponse"
  22467. },
  22468. "content": {
  22469. "description": "`content` is populated when `type` is `file`, otherwise null",
  22470. "type": "string",
  22471. "x-go-name": "Content"
  22472. },
  22473. "download_url": {
  22474. "description": "DownloadURL is the direct download URL for this file",
  22475. "type": "string",
  22476. "x-go-name": "DownloadURL"
  22477. },
  22478. "encoding": {
  22479. "description": "`encoding` is populated when `type` is `file`, otherwise null",
  22480. "type": "string",
  22481. "x-go-name": "Encoding"
  22482. },
  22483. "git_url": {
  22484. "description": "GitURL is the Git API URL for this blob or tree",
  22485. "type": "string",
  22486. "x-go-name": "GitURL"
  22487. },
  22488. "html_url": {
  22489. "description": "HTMLURL is the web URL for this file or directory",
  22490. "type": "string",
  22491. "x-go-name": "HTMLURL"
  22492. },
  22493. "last_author_date": {
  22494. "type": "string",
  22495. "format": "date-time",
  22496. "x-go-name": "LastAuthorDate"
  22497. },
  22498. "last_commit_message": {
  22499. "description": "LastCommitMessage is the message of the last commit that affected this file",
  22500. "type": "string",
  22501. "x-go-name": "LastCommitMessage"
  22502. },
  22503. "last_commit_sha": {
  22504. "description": "LastCommitSHA is the SHA of the last commit that affected this file",
  22505. "type": "string",
  22506. "x-go-name": "LastCommitSHA"
  22507. },
  22508. "last_committer_date": {
  22509. "type": "string",
  22510. "format": "date-time",
  22511. "x-go-name": "LastCommitterDate"
  22512. },
  22513. "lfs_oid": {
  22514. "description": "LfsOid is the Git LFS object ID if this file is stored in LFS",
  22515. "type": "string",
  22516. "x-go-name": "LfsOid"
  22517. },
  22518. "lfs_size": {
  22519. "description": "LfsSize is the file size if this file is stored in LFS",
  22520. "type": "integer",
  22521. "format": "int64",
  22522. "x-go-name": "LfsSize"
  22523. },
  22524. "name": {
  22525. "description": "Name is the file or directory name",
  22526. "type": "string",
  22527. "x-go-name": "Name"
  22528. },
  22529. "path": {
  22530. "description": "Path is the full path to the file or directory",
  22531. "type": "string",
  22532. "x-go-name": "Path"
  22533. },
  22534. "sha": {
  22535. "description": "SHA is the Git blob or tree SHA",
  22536. "type": "string",
  22537. "x-go-name": "SHA"
  22538. },
  22539. "size": {
  22540. "description": "Size is the file size in bytes",
  22541. "type": "integer",
  22542. "format": "int64",
  22543. "x-go-name": "Size"
  22544. },
  22545. "submodule_git_url": {
  22546. "description": "`submodule_git_url` is populated when `type` is `submodule`, otherwise null",
  22547. "type": "string",
  22548. "x-go-name": "SubmoduleGitURL"
  22549. },
  22550. "target": {
  22551. "description": "`target` is populated when `type` is `symlink`, otherwise null",
  22552. "type": "string",
  22553. "x-go-name": "Target"
  22554. },
  22555. "type": {
  22556. "description": "`type` will be `file`, `dir`, `symlink`, or `submodule`",
  22557. "type": "string",
  22558. "x-go-name": "Type"
  22559. },
  22560. "url": {
  22561. "description": "URL is the API URL for this file or directory",
  22562. "type": "string",
  22563. "x-go-name": "URL"
  22564. }
  22565. },
  22566. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22567. },
  22568. "CreateAccessTokenOption": {
  22569. "description": "CreateAccessTokenOption options when create access token",
  22570. "type": "object",
  22571. "required": [
  22572. "name"
  22573. ],
  22574. "properties": {
  22575. "name": {
  22576. "type": "string",
  22577. "x-go-name": "Name"
  22578. },
  22579. "scopes": {
  22580. "type": "array",
  22581. "items": {
  22582. "type": "string"
  22583. },
  22584. "x-go-name": "Scopes",
  22585. "example": [
  22586. "all",
  22587. "read:activitypub",
  22588. "read:issue",
  22589. "write:misc",
  22590. "read:notification",
  22591. "read:organization",
  22592. "read:package",
  22593. "read:repository",
  22594. "read:user"
  22595. ]
  22596. }
  22597. },
  22598. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22599. },
  22600. "CreateActionWorkflowDispatch": {
  22601. "description": "CreateActionWorkflowDispatch represents the payload for triggering a workflow dispatch event",
  22602. "type": "object",
  22603. "required": [
  22604. "ref"
  22605. ],
  22606. "properties": {
  22607. "inputs": {
  22608. "type": "object",
  22609. "additionalProperties": {
  22610. "type": "string"
  22611. },
  22612. "x-go-name": "Inputs"
  22613. },
  22614. "ref": {
  22615. "type": "string",
  22616. "x-go-name": "Ref",
  22617. "example": "refs/heads/main"
  22618. }
  22619. },
  22620. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22621. },
  22622. "CreateBranchProtectionOption": {
  22623. "description": "CreateBranchProtectionOption options for creating a branch protection",
  22624. "type": "object",
  22625. "properties": {
  22626. "approvals_whitelist_teams": {
  22627. "type": "array",
  22628. "items": {
  22629. "type": "string"
  22630. },
  22631. "x-go-name": "ApprovalsWhitelistTeams"
  22632. },
  22633. "approvals_whitelist_username": {
  22634. "type": "array",
  22635. "items": {
  22636. "type": "string"
  22637. },
  22638. "x-go-name": "ApprovalsWhitelistUsernames"
  22639. },
  22640. "block_admin_merge_override": {
  22641. "type": "boolean",
  22642. "x-go-name": "BlockAdminMergeOverride"
  22643. },
  22644. "block_on_official_review_requests": {
  22645. "type": "boolean",
  22646. "x-go-name": "BlockOnOfficialReviewRequests"
  22647. },
  22648. "block_on_outdated_branch": {
  22649. "type": "boolean",
  22650. "x-go-name": "BlockOnOutdatedBranch"
  22651. },
  22652. "block_on_rejected_reviews": {
  22653. "type": "boolean",
  22654. "x-go-name": "BlockOnRejectedReviews"
  22655. },
  22656. "branch_name": {
  22657. "description": "Deprecated: true",
  22658. "type": "string",
  22659. "x-go-name": "BranchName"
  22660. },
  22661. "dismiss_stale_approvals": {
  22662. "type": "boolean",
  22663. "x-go-name": "DismissStaleApprovals"
  22664. },
  22665. "enable_approvals_whitelist": {
  22666. "type": "boolean",
  22667. "x-go-name": "EnableApprovalsWhitelist"
  22668. },
  22669. "enable_force_push": {
  22670. "type": "boolean",
  22671. "x-go-name": "EnableForcePush"
  22672. },
  22673. "enable_force_push_allowlist": {
  22674. "type": "boolean",
  22675. "x-go-name": "EnableForcePushAllowlist"
  22676. },
  22677. "enable_merge_whitelist": {
  22678. "type": "boolean",
  22679. "x-go-name": "EnableMergeWhitelist"
  22680. },
  22681. "enable_push": {
  22682. "type": "boolean",
  22683. "x-go-name": "EnablePush"
  22684. },
  22685. "enable_push_whitelist": {
  22686. "type": "boolean",
  22687. "x-go-name": "EnablePushWhitelist"
  22688. },
  22689. "enable_status_check": {
  22690. "type": "boolean",
  22691. "x-go-name": "EnableStatusCheck"
  22692. },
  22693. "force_push_allowlist_deploy_keys": {
  22694. "type": "boolean",
  22695. "x-go-name": "ForcePushAllowlistDeployKeys"
  22696. },
  22697. "force_push_allowlist_teams": {
  22698. "type": "array",
  22699. "items": {
  22700. "type": "string"
  22701. },
  22702. "x-go-name": "ForcePushAllowlistTeams"
  22703. },
  22704. "force_push_allowlist_usernames": {
  22705. "type": "array",
  22706. "items": {
  22707. "type": "string"
  22708. },
  22709. "x-go-name": "ForcePushAllowlistUsernames"
  22710. },
  22711. "ignore_stale_approvals": {
  22712. "type": "boolean",
  22713. "x-go-name": "IgnoreStaleApprovals"
  22714. },
  22715. "merge_whitelist_teams": {
  22716. "type": "array",
  22717. "items": {
  22718. "type": "string"
  22719. },
  22720. "x-go-name": "MergeWhitelistTeams"
  22721. },
  22722. "merge_whitelist_usernames": {
  22723. "type": "array",
  22724. "items": {
  22725. "type": "string"
  22726. },
  22727. "x-go-name": "MergeWhitelistUsernames"
  22728. },
  22729. "priority": {
  22730. "type": "integer",
  22731. "format": "int64",
  22732. "x-go-name": "Priority"
  22733. },
  22734. "protected_file_patterns": {
  22735. "type": "string",
  22736. "x-go-name": "ProtectedFilePatterns"
  22737. },
  22738. "push_whitelist_deploy_keys": {
  22739. "type": "boolean",
  22740. "x-go-name": "PushWhitelistDeployKeys"
  22741. },
  22742. "push_whitelist_teams": {
  22743. "type": "array",
  22744. "items": {
  22745. "type": "string"
  22746. },
  22747. "x-go-name": "PushWhitelistTeams"
  22748. },
  22749. "push_whitelist_usernames": {
  22750. "type": "array",
  22751. "items": {
  22752. "type": "string"
  22753. },
  22754. "x-go-name": "PushWhitelistUsernames"
  22755. },
  22756. "require_signed_commits": {
  22757. "type": "boolean",
  22758. "x-go-name": "RequireSignedCommits"
  22759. },
  22760. "required_approvals": {
  22761. "type": "integer",
  22762. "format": "int64",
  22763. "x-go-name": "RequiredApprovals"
  22764. },
  22765. "rule_name": {
  22766. "type": "string",
  22767. "x-go-name": "RuleName"
  22768. },
  22769. "status_check_contexts": {
  22770. "type": "array",
  22771. "items": {
  22772. "type": "string"
  22773. },
  22774. "x-go-name": "StatusCheckContexts"
  22775. },
  22776. "unprotected_file_patterns": {
  22777. "type": "string",
  22778. "x-go-name": "UnprotectedFilePatterns"
  22779. }
  22780. },
  22781. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22782. },
  22783. "CreateBranchRepoOption": {
  22784. "description": "CreateBranchRepoOption options when creating a branch in a repository",
  22785. "type": "object",
  22786. "required": [
  22787. "new_branch_name"
  22788. ],
  22789. "properties": {
  22790. "new_branch_name": {
  22791. "description": "Name of the branch to create",
  22792. "type": "string",
  22793. "uniqueItems": true,
  22794. "x-go-name": "BranchName"
  22795. },
  22796. "old_branch_name": {
  22797. "description": "Deprecated: true\nName of the old branch to create from",
  22798. "type": "string",
  22799. "uniqueItems": true,
  22800. "x-go-name": "OldBranchName"
  22801. },
  22802. "old_ref_name": {
  22803. "description": "Name of the old branch/tag/commit to create from",
  22804. "type": "string",
  22805. "uniqueItems": true,
  22806. "x-go-name": "OldRefName"
  22807. }
  22808. },
  22809. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22810. },
  22811. "CreateEmailOption": {
  22812. "description": "CreateEmailOption options when creating email addresses",
  22813. "type": "object",
  22814. "properties": {
  22815. "emails": {
  22816. "description": "email addresses to add",
  22817. "type": "array",
  22818. "items": {
  22819. "type": "string"
  22820. },
  22821. "x-go-name": "Emails"
  22822. }
  22823. },
  22824. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22825. },
  22826. "CreateFileOptions": {
  22827. "description": "CreateFileOptions options for creating files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)",
  22828. "type": "object",
  22829. "required": [
  22830. "content"
  22831. ],
  22832. "properties": {
  22833. "author": {
  22834. "$ref": "#/definitions/Identity"
  22835. },
  22836. "branch": {
  22837. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  22838. "type": "string",
  22839. "x-go-name": "BranchName"
  22840. },
  22841. "committer": {
  22842. "$ref": "#/definitions/Identity"
  22843. },
  22844. "content": {
  22845. "description": "content must be base64 encoded",
  22846. "type": "string",
  22847. "x-go-name": "ContentBase64"
  22848. },
  22849. "dates": {
  22850. "$ref": "#/definitions/CommitDateOptions"
  22851. },
  22852. "message": {
  22853. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  22854. "type": "string",
  22855. "x-go-name": "Message"
  22856. },
  22857. "new_branch": {
  22858. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  22859. "type": "string",
  22860. "x-go-name": "NewBranchName"
  22861. },
  22862. "signoff": {
  22863. "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.",
  22864. "type": "boolean",
  22865. "x-go-name": "Signoff"
  22866. }
  22867. },
  22868. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22869. },
  22870. "CreateForkOption": {
  22871. "description": "CreateForkOption options for creating a fork",
  22872. "type": "object",
  22873. "properties": {
  22874. "name": {
  22875. "description": "name of the forked repository",
  22876. "type": "string",
  22877. "x-go-name": "Name"
  22878. },
  22879. "organization": {
  22880. "description": "organization name, if forking into an organization",
  22881. "type": "string",
  22882. "x-go-name": "Organization"
  22883. }
  22884. },
  22885. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22886. },
  22887. "CreateGPGKeyOption": {
  22888. "description": "CreateGPGKeyOption options create user GPG key",
  22889. "type": "object",
  22890. "required": [
  22891. "armored_public_key"
  22892. ],
  22893. "properties": {
  22894. "armored_public_key": {
  22895. "description": "An armored GPG key to add",
  22896. "type": "string",
  22897. "uniqueItems": true,
  22898. "x-go-name": "ArmoredKey"
  22899. },
  22900. "armored_signature": {
  22901. "description": "An optional armored signature for the GPG key",
  22902. "type": "string",
  22903. "x-go-name": "Signature"
  22904. }
  22905. },
  22906. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22907. },
  22908. "CreateHookOption": {
  22909. "description": "CreateHookOption options when create a hook",
  22910. "type": "object",
  22911. "required": [
  22912. "type",
  22913. "config"
  22914. ],
  22915. "properties": {
  22916. "active": {
  22917. "type": "boolean",
  22918. "default": false,
  22919. "x-go-name": "Active"
  22920. },
  22921. "authorization_header": {
  22922. "description": "Authorization header to include in webhook requests",
  22923. "type": "string",
  22924. "x-go-name": "AuthorizationHeader"
  22925. },
  22926. "branch_filter": {
  22927. "description": "Branch filter pattern to determine which branches trigger the webhook",
  22928. "type": "string",
  22929. "x-go-name": "BranchFilter"
  22930. },
  22931. "config": {
  22932. "$ref": "#/definitions/CreateHookOptionConfig"
  22933. },
  22934. "events": {
  22935. "description": "List of events that will trigger this webhook",
  22936. "type": "array",
  22937. "items": {
  22938. "type": "string"
  22939. },
  22940. "x-go-name": "Events"
  22941. },
  22942. "type": {
  22943. "type": "string",
  22944. "enum": [
  22945. "dingtalk",
  22946. "discord",
  22947. "gitea",
  22948. "gogs",
  22949. "msteams",
  22950. "slack",
  22951. "telegram",
  22952. "feishu",
  22953. "wechatwork",
  22954. "packagist"
  22955. ],
  22956. "x-go-name": "Type"
  22957. }
  22958. },
  22959. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22960. },
  22961. "CreateHookOptionConfig": {
  22962. "description": "CreateHookOptionConfig has all config options in it\nrequired are \"content_type\" and \"url\" Required",
  22963. "type": "object",
  22964. "additionalProperties": {
  22965. "type": "string"
  22966. },
  22967. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22968. },
  22969. "CreateIssueCommentOption": {
  22970. "description": "CreateIssueCommentOption options for creating a comment on an issue",
  22971. "type": "object",
  22972. "required": [
  22973. "body"
  22974. ],
  22975. "properties": {
  22976. "body": {
  22977. "type": "string",
  22978. "x-go-name": "Body"
  22979. }
  22980. },
  22981. "x-go-package": "code.gitea.io/gitea/modules/structs"
  22982. },
  22983. "CreateIssueOption": {
  22984. "description": "CreateIssueOption options to create one issue",
  22985. "type": "object",
  22986. "required": [
  22987. "title"
  22988. ],
  22989. "properties": {
  22990. "assignee": {
  22991. "description": "deprecated",
  22992. "type": "string",
  22993. "x-go-name": "Assignee"
  22994. },
  22995. "assignees": {
  22996. "type": "array",
  22997. "items": {
  22998. "type": "string"
  22999. },
  23000. "x-go-name": "Assignees"
  23001. },
  23002. "body": {
  23003. "type": "string",
  23004. "x-go-name": "Body"
  23005. },
  23006. "closed": {
  23007. "type": "boolean",
  23008. "x-go-name": "Closed"
  23009. },
  23010. "due_date": {
  23011. "type": "string",
  23012. "format": "date-time",
  23013. "x-go-name": "Deadline"
  23014. },
  23015. "labels": {
  23016. "description": "list of label ids",
  23017. "type": "array",
  23018. "items": {
  23019. "type": "integer",
  23020. "format": "int64"
  23021. },
  23022. "x-go-name": "Labels"
  23023. },
  23024. "milestone": {
  23025. "description": "milestone id",
  23026. "type": "integer",
  23027. "format": "int64",
  23028. "x-go-name": "Milestone"
  23029. },
  23030. "ref": {
  23031. "type": "string",
  23032. "x-go-name": "Ref"
  23033. },
  23034. "title": {
  23035. "type": "string",
  23036. "x-go-name": "Title"
  23037. }
  23038. },
  23039. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23040. },
  23041. "CreateKeyOption": {
  23042. "description": "CreateKeyOption options when creating a key",
  23043. "type": "object",
  23044. "required": [
  23045. "title",
  23046. "key"
  23047. ],
  23048. "properties": {
  23049. "key": {
  23050. "description": "An armored SSH key to add",
  23051. "type": "string",
  23052. "uniqueItems": true,
  23053. "x-go-name": "Key"
  23054. },
  23055. "read_only": {
  23056. "description": "Describe if the key has only read access or read/write",
  23057. "type": "boolean",
  23058. "x-go-name": "ReadOnly"
  23059. },
  23060. "title": {
  23061. "description": "Title of the key to add",
  23062. "type": "string",
  23063. "uniqueItems": true,
  23064. "x-go-name": "Title"
  23065. }
  23066. },
  23067. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23068. },
  23069. "CreateLabelOption": {
  23070. "description": "CreateLabelOption options for creating a label",
  23071. "type": "object",
  23072. "required": [
  23073. "name",
  23074. "color"
  23075. ],
  23076. "properties": {
  23077. "color": {
  23078. "type": "string",
  23079. "x-go-name": "Color",
  23080. "example": "#00aabb"
  23081. },
  23082. "description": {
  23083. "description": "Description provides additional context about the label's purpose",
  23084. "type": "string",
  23085. "x-go-name": "Description"
  23086. },
  23087. "exclusive": {
  23088. "type": "boolean",
  23089. "x-go-name": "Exclusive",
  23090. "example": false
  23091. },
  23092. "is_archived": {
  23093. "type": "boolean",
  23094. "x-go-name": "IsArchived",
  23095. "example": false
  23096. },
  23097. "name": {
  23098. "type": "string",
  23099. "x-go-name": "Name"
  23100. }
  23101. },
  23102. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23103. },
  23104. "CreateMilestoneOption": {
  23105. "description": "CreateMilestoneOption options for creating a milestone",
  23106. "type": "object",
  23107. "properties": {
  23108. "description": {
  23109. "description": "Description provides details about the milestone",
  23110. "type": "string",
  23111. "x-go-name": "Description"
  23112. },
  23113. "due_on": {
  23114. "type": "string",
  23115. "format": "date-time",
  23116. "x-go-name": "Deadline"
  23117. },
  23118. "state": {
  23119. "type": "string",
  23120. "enum": [
  23121. "open",
  23122. "closed"
  23123. ],
  23124. "x-go-name": "State"
  23125. },
  23126. "title": {
  23127. "description": "Title is the title of the new milestone",
  23128. "type": "string",
  23129. "x-go-name": "Title"
  23130. }
  23131. },
  23132. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23133. },
  23134. "CreateOAuth2ApplicationOptions": {
  23135. "description": "CreateOAuth2ApplicationOptions holds options to create an oauth2 application",
  23136. "type": "object",
  23137. "properties": {
  23138. "confidential_client": {
  23139. "description": "Whether the client is confidential",
  23140. "type": "boolean",
  23141. "x-go-name": "ConfidentialClient"
  23142. },
  23143. "name": {
  23144. "description": "The name of the OAuth2 application",
  23145. "type": "string",
  23146. "x-go-name": "Name"
  23147. },
  23148. "redirect_uris": {
  23149. "description": "The list of allowed redirect URIs",
  23150. "type": "array",
  23151. "items": {
  23152. "type": "string"
  23153. },
  23154. "x-go-name": "RedirectURIs"
  23155. },
  23156. "skip_secondary_authorization": {
  23157. "description": "Whether to skip secondary authorization",
  23158. "type": "boolean",
  23159. "x-go-name": "SkipSecondaryAuthorization"
  23160. }
  23161. },
  23162. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23163. },
  23164. "CreateOrUpdateSecretOption": {
  23165. "description": "CreateOrUpdateSecretOption options when creating or updating secret",
  23166. "type": "object",
  23167. "required": [
  23168. "data"
  23169. ],
  23170. "properties": {
  23171. "data": {
  23172. "description": "Data of the secret to update",
  23173. "type": "string",
  23174. "x-go-name": "Data"
  23175. },
  23176. "description": {
  23177. "description": "Description of the secret to update",
  23178. "type": "string",
  23179. "x-go-name": "Description"
  23180. }
  23181. },
  23182. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23183. },
  23184. "CreateOrgOption": {
  23185. "description": "CreateOrgOption options for creating an organization",
  23186. "type": "object",
  23187. "required": [
  23188. "username"
  23189. ],
  23190. "properties": {
  23191. "description": {
  23192. "description": "The description of the organization",
  23193. "type": "string",
  23194. "x-go-name": "Description"
  23195. },
  23196. "email": {
  23197. "description": "The email address of the organization",
  23198. "type": "string",
  23199. "x-go-name": "Email"
  23200. },
  23201. "full_name": {
  23202. "description": "The full display name of the organization",
  23203. "type": "string",
  23204. "x-go-name": "FullName"
  23205. },
  23206. "location": {
  23207. "description": "The location of the organization",
  23208. "type": "string",
  23209. "x-go-name": "Location"
  23210. },
  23211. "repo_admin_change_team_access": {
  23212. "description": "Whether repository administrators can change team access",
  23213. "type": "boolean",
  23214. "x-go-name": "RepoAdminChangeTeamAccess"
  23215. },
  23216. "username": {
  23217. "description": "username of the organization",
  23218. "type": "string",
  23219. "x-go-name": "UserName"
  23220. },
  23221. "visibility": {
  23222. "description": "possible values are `public` (default), `limited` or `private`",
  23223. "type": "string",
  23224. "enum": [
  23225. "public",
  23226. "limited",
  23227. "private"
  23228. ],
  23229. "x-go-name": "Visibility"
  23230. },
  23231. "website": {
  23232. "description": "The website URL of the organization",
  23233. "type": "string",
  23234. "x-go-name": "Website"
  23235. }
  23236. },
  23237. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23238. },
  23239. "CreatePullRequestOption": {
  23240. "description": "CreatePullRequestOption options when creating a pull request",
  23241. "type": "object",
  23242. "properties": {
  23243. "assignee": {
  23244. "description": "The primary assignee username",
  23245. "type": "string",
  23246. "x-go-name": "Assignee"
  23247. },
  23248. "assignees": {
  23249. "description": "The list of assignee usernames",
  23250. "type": "array",
  23251. "items": {
  23252. "type": "string"
  23253. },
  23254. "x-go-name": "Assignees"
  23255. },
  23256. "base": {
  23257. "description": "The base branch for the pull request",
  23258. "type": "string",
  23259. "x-go-name": "Base"
  23260. },
  23261. "body": {
  23262. "description": "The description body of the pull request",
  23263. "type": "string",
  23264. "x-go-name": "Body"
  23265. },
  23266. "due_date": {
  23267. "type": "string",
  23268. "format": "date-time",
  23269. "x-go-name": "Deadline"
  23270. },
  23271. "head": {
  23272. "description": "The head branch for the pull request, it could be a branch name on the base repository or\na form like `\u003cusername\u003e:\u003cbranch\u003e` which refers to the user's fork repository's branch.",
  23273. "type": "string",
  23274. "x-go-name": "Head"
  23275. },
  23276. "labels": {
  23277. "description": "The list of label IDs to assign to the pull request",
  23278. "type": "array",
  23279. "items": {
  23280. "type": "integer",
  23281. "format": "int64"
  23282. },
  23283. "x-go-name": "Labels"
  23284. },
  23285. "milestone": {
  23286. "description": "The milestone ID to assign to the pull request",
  23287. "type": "integer",
  23288. "format": "int64",
  23289. "x-go-name": "Milestone"
  23290. },
  23291. "reviewers": {
  23292. "description": "The list of reviewer usernames",
  23293. "type": "array",
  23294. "items": {
  23295. "type": "string"
  23296. },
  23297. "x-go-name": "Reviewers"
  23298. },
  23299. "team_reviewers": {
  23300. "description": "The list of team reviewer names",
  23301. "type": "array",
  23302. "items": {
  23303. "type": "string"
  23304. },
  23305. "x-go-name": "TeamReviewers"
  23306. },
  23307. "title": {
  23308. "description": "The title of the pull request",
  23309. "type": "string",
  23310. "x-go-name": "Title"
  23311. }
  23312. },
  23313. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23314. },
  23315. "CreatePullReviewComment": {
  23316. "description": "CreatePullReviewComment represent a review comment for creation api",
  23317. "type": "object",
  23318. "properties": {
  23319. "body": {
  23320. "type": "string",
  23321. "x-go-name": "Body"
  23322. },
  23323. "new_position": {
  23324. "description": "if comment to new file line or 0",
  23325. "type": "integer",
  23326. "format": "int64",
  23327. "x-go-name": "NewLineNum"
  23328. },
  23329. "old_position": {
  23330. "description": "if comment to old file line or 0",
  23331. "type": "integer",
  23332. "format": "int64",
  23333. "x-go-name": "OldLineNum"
  23334. },
  23335. "path": {
  23336. "description": "the tree path",
  23337. "type": "string",
  23338. "x-go-name": "Path"
  23339. }
  23340. },
  23341. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23342. },
  23343. "CreatePullReviewOptions": {
  23344. "description": "CreatePullReviewOptions are options to create a pull review",
  23345. "type": "object",
  23346. "properties": {
  23347. "body": {
  23348. "type": "string",
  23349. "x-go-name": "Body"
  23350. },
  23351. "comments": {
  23352. "type": "array",
  23353. "items": {
  23354. "$ref": "#/definitions/CreatePullReviewComment"
  23355. },
  23356. "x-go-name": "Comments"
  23357. },
  23358. "commit_id": {
  23359. "type": "string",
  23360. "x-go-name": "CommitID"
  23361. },
  23362. "event": {
  23363. "$ref": "#/definitions/ReviewStateType"
  23364. }
  23365. },
  23366. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23367. },
  23368. "CreatePushMirrorOption": {
  23369. "type": "object",
  23370. "title": "CreatePushMirrorOption represents need information to create a push mirror of a repository.",
  23371. "properties": {
  23372. "interval": {
  23373. "description": "The sync interval for automatic updates",
  23374. "type": "string",
  23375. "x-go-name": "Interval"
  23376. },
  23377. "remote_address": {
  23378. "description": "The remote repository URL to push to",
  23379. "type": "string",
  23380. "x-go-name": "RemoteAddress"
  23381. },
  23382. "remote_password": {
  23383. "description": "The password for authentication with the remote repository",
  23384. "type": "string",
  23385. "x-go-name": "RemotePassword"
  23386. },
  23387. "remote_username": {
  23388. "description": "The username for authentication with the remote repository",
  23389. "type": "string",
  23390. "x-go-name": "RemoteUsername"
  23391. },
  23392. "sync_on_commit": {
  23393. "description": "Whether to sync on every commit",
  23394. "type": "boolean",
  23395. "x-go-name": "SyncOnCommit"
  23396. }
  23397. },
  23398. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23399. },
  23400. "CreateReleaseOption": {
  23401. "description": "CreateReleaseOption options when creating a release",
  23402. "type": "object",
  23403. "required": [
  23404. "tag_name"
  23405. ],
  23406. "properties": {
  23407. "body": {
  23408. "description": "The release notes or description",
  23409. "type": "string",
  23410. "x-go-name": "Note"
  23411. },
  23412. "draft": {
  23413. "description": "Whether to create the release as a draft",
  23414. "type": "boolean",
  23415. "x-go-name": "IsDraft"
  23416. },
  23417. "name": {
  23418. "description": "The display title of the release",
  23419. "type": "string",
  23420. "x-go-name": "Title"
  23421. },
  23422. "prerelease": {
  23423. "description": "Whether to mark the release as a prerelease",
  23424. "type": "boolean",
  23425. "x-go-name": "IsPrerelease"
  23426. },
  23427. "tag_message": {
  23428. "description": "The message for the git tag",
  23429. "type": "string",
  23430. "x-go-name": "TagMessage"
  23431. },
  23432. "tag_name": {
  23433. "type": "string",
  23434. "x-go-name": "TagName"
  23435. },
  23436. "target_commitish": {
  23437. "description": "The target commitish for the release",
  23438. "type": "string",
  23439. "x-go-name": "Target"
  23440. }
  23441. },
  23442. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23443. },
  23444. "CreateRepoOption": {
  23445. "description": "CreateRepoOption options when creating repository",
  23446. "type": "object",
  23447. "required": [
  23448. "name"
  23449. ],
  23450. "properties": {
  23451. "auto_init": {
  23452. "description": "Whether the repository should be auto-initialized?",
  23453. "type": "boolean",
  23454. "x-go-name": "AutoInit"
  23455. },
  23456. "default_branch": {
  23457. "description": "DefaultBranch of the repository (used when initializes and in template)",
  23458. "type": "string",
  23459. "x-go-name": "DefaultBranch"
  23460. },
  23461. "description": {
  23462. "description": "Description of the repository to create",
  23463. "type": "string",
  23464. "x-go-name": "Description"
  23465. },
  23466. "gitignores": {
  23467. "description": "Gitignores to use",
  23468. "type": "string",
  23469. "x-go-name": "Gitignores"
  23470. },
  23471. "issue_labels": {
  23472. "description": "Label-Set to use",
  23473. "type": "string",
  23474. "x-go-name": "IssueLabels"
  23475. },
  23476. "license": {
  23477. "description": "License to use",
  23478. "type": "string",
  23479. "x-go-name": "License"
  23480. },
  23481. "name": {
  23482. "description": "Name of the repository to create",
  23483. "type": "string",
  23484. "uniqueItems": true,
  23485. "x-go-name": "Name"
  23486. },
  23487. "object_format_name": {
  23488. "description": "ObjectFormatName of the underlying git repository",
  23489. "type": "string",
  23490. "enum": [
  23491. "sha1",
  23492. "sha256"
  23493. ],
  23494. "x-go-name": "ObjectFormatName"
  23495. },
  23496. "private": {
  23497. "description": "Whether the repository is private",
  23498. "type": "boolean",
  23499. "x-go-name": "Private"
  23500. },
  23501. "readme": {
  23502. "description": "Readme of the repository to create",
  23503. "type": "string",
  23504. "x-go-name": "Readme"
  23505. },
  23506. "template": {
  23507. "description": "Whether the repository is template",
  23508. "type": "boolean",
  23509. "x-go-name": "Template"
  23510. },
  23511. "trust_model": {
  23512. "description": "TrustModel of the repository",
  23513. "type": "string",
  23514. "enum": [
  23515. "default",
  23516. "collaborator",
  23517. "committer",
  23518. "collaboratorcommitter"
  23519. ],
  23520. "x-go-name": "TrustModel"
  23521. }
  23522. },
  23523. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23524. },
  23525. "CreateStatusOption": {
  23526. "description": "CreateStatusOption holds the information needed to create a new CommitStatus for a Commit",
  23527. "type": "object",
  23528. "properties": {
  23529. "context": {
  23530. "description": "Context is the unique context identifier for the status",
  23531. "type": "string",
  23532. "x-go-name": "Context"
  23533. },
  23534. "description": {
  23535. "description": "Description provides a brief description of the status",
  23536. "type": "string",
  23537. "x-go-name": "Description"
  23538. },
  23539. "state": {
  23540. "description": "State represents the status state to set (pending, success, error, failure)\npending CommitStatusPending CommitStatusPending is for when the CommitStatus is Pending\nsuccess CommitStatusSuccess CommitStatusSuccess is for when the CommitStatus is Success\nerror CommitStatusError CommitStatusError is for when the CommitStatus is Error\nfailure CommitStatusFailure CommitStatusFailure is for when the CommitStatus is Failure\nwarning CommitStatusWarning CommitStatusWarning is for when the CommitStatus is Warning\nskipped CommitStatusSkipped CommitStatusSkipped is for when CommitStatus is Skipped",
  23541. "type": "string",
  23542. "enum": [
  23543. "pending",
  23544. "success",
  23545. "error",
  23546. "failure",
  23547. "warning",
  23548. "skipped"
  23549. ],
  23550. "x-go-enum-desc": "pending CommitStatusPending CommitStatusPending is for when the CommitStatus is Pending\nsuccess CommitStatusSuccess CommitStatusSuccess is for when the CommitStatus is Success\nerror CommitStatusError CommitStatusError is for when the CommitStatus is Error\nfailure CommitStatusFailure CommitStatusFailure is for when the CommitStatus is Failure\nwarning CommitStatusWarning CommitStatusWarning is for when the CommitStatus is Warning\nskipped CommitStatusSkipped CommitStatusSkipped is for when CommitStatus is Skipped",
  23551. "x-go-name": "State"
  23552. },
  23553. "target_url": {
  23554. "description": "TargetURL is the URL to link to for more details",
  23555. "type": "string",
  23556. "x-go-name": "TargetURL"
  23557. }
  23558. },
  23559. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23560. },
  23561. "CreateTagOption": {
  23562. "description": "CreateTagOption options when creating a tag",
  23563. "type": "object",
  23564. "required": [
  23565. "tag_name"
  23566. ],
  23567. "properties": {
  23568. "message": {
  23569. "description": "The message to associate with the tag",
  23570. "type": "string",
  23571. "x-go-name": "Message"
  23572. },
  23573. "tag_name": {
  23574. "type": "string",
  23575. "x-go-name": "TagName"
  23576. },
  23577. "target": {
  23578. "description": "The target commit SHA or branch name for the tag",
  23579. "type": "string",
  23580. "x-go-name": "Target"
  23581. }
  23582. },
  23583. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23584. },
  23585. "CreateTagProtectionOption": {
  23586. "description": "CreateTagProtectionOption options for creating a tag protection",
  23587. "type": "object",
  23588. "properties": {
  23589. "name_pattern": {
  23590. "description": "The pattern to match tag names for protection",
  23591. "type": "string",
  23592. "x-go-name": "NamePattern"
  23593. },
  23594. "whitelist_teams": {
  23595. "description": "List of team names allowed to create/delete protected tags",
  23596. "type": "array",
  23597. "items": {
  23598. "type": "string"
  23599. },
  23600. "x-go-name": "WhitelistTeams"
  23601. },
  23602. "whitelist_usernames": {
  23603. "description": "List of usernames allowed to create/delete protected tags",
  23604. "type": "array",
  23605. "items": {
  23606. "type": "string"
  23607. },
  23608. "x-go-name": "WhitelistUsernames"
  23609. }
  23610. },
  23611. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23612. },
  23613. "CreateTeamOption": {
  23614. "description": "CreateTeamOption options for creating a team",
  23615. "type": "object",
  23616. "required": [
  23617. "name"
  23618. ],
  23619. "properties": {
  23620. "can_create_org_repo": {
  23621. "description": "Whether the team can create repositories in the organization",
  23622. "type": "boolean",
  23623. "x-go-name": "CanCreateOrgRepo"
  23624. },
  23625. "description": {
  23626. "description": "The description of the team",
  23627. "type": "string",
  23628. "x-go-name": "Description"
  23629. },
  23630. "includes_all_repositories": {
  23631. "description": "Whether the team has access to all repositories in the organization",
  23632. "type": "boolean",
  23633. "x-go-name": "IncludesAllRepositories"
  23634. },
  23635. "name": {
  23636. "type": "string",
  23637. "x-go-name": "Name"
  23638. },
  23639. "permission": {
  23640. "type": "string",
  23641. "enum": [
  23642. "read",
  23643. "write",
  23644. "admin"
  23645. ],
  23646. "x-go-name": "Permission"
  23647. },
  23648. "units": {
  23649. "type": "array",
  23650. "items": {
  23651. "type": "string"
  23652. },
  23653. "x-go-name": "Units",
  23654. "example": [
  23655. "repo.actions",
  23656. "repo.code",
  23657. "repo.issues",
  23658. "repo.ext_issues",
  23659. "repo.wiki",
  23660. "repo.ext_wiki",
  23661. "repo.pulls",
  23662. "repo.releases",
  23663. "repo.projects",
  23664. "repo.ext_wiki"
  23665. ]
  23666. },
  23667. "units_map": {
  23668. "type": "object",
  23669. "additionalProperties": {
  23670. "type": "string"
  23671. },
  23672. "x-go-name": "UnitsMap",
  23673. "example": "{\"repo.actions\",\"repo.packages\",\"repo.code\":\"read\",\"repo.issues\":\"write\",\"repo.ext_issues\":\"none\",\"repo.wiki\":\"admin\",\"repo.pulls\":\"owner\",\"repo.releases\":\"none\",\"repo.projects\":\"none\",\"repo.ext_wiki\":\"none\"}"
  23674. }
  23675. },
  23676. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23677. },
  23678. "CreateUserOption": {
  23679. "description": "CreateUserOption create user options",
  23680. "type": "object",
  23681. "required": [
  23682. "username",
  23683. "email"
  23684. ],
  23685. "properties": {
  23686. "created_at": {
  23687. "description": "For explicitly setting the user creation timestamp. Useful when users are\nmigrated from other systems. When omitted, the user's creation timestamp\nwill be set to \"now\".",
  23688. "type": "string",
  23689. "format": "date-time",
  23690. "x-go-name": "Created"
  23691. },
  23692. "email": {
  23693. "type": "string",
  23694. "format": "email",
  23695. "x-go-name": "Email"
  23696. },
  23697. "full_name": {
  23698. "description": "The full display name of the user",
  23699. "type": "string",
  23700. "x-go-name": "FullName"
  23701. },
  23702. "login_name": {
  23703. "description": "identifier of the user, provided by the external authenticator (if configured)",
  23704. "type": "string",
  23705. "default": "empty",
  23706. "x-go-name": "LoginName"
  23707. },
  23708. "must_change_password": {
  23709. "description": "Whether the user must change password on first login",
  23710. "type": "boolean",
  23711. "x-go-name": "MustChangePassword"
  23712. },
  23713. "password": {
  23714. "description": "The plain text password for the user",
  23715. "type": "string",
  23716. "x-go-name": "Password"
  23717. },
  23718. "restricted": {
  23719. "description": "Whether the user has restricted access privileges",
  23720. "type": "boolean",
  23721. "x-go-name": "Restricted"
  23722. },
  23723. "send_notify": {
  23724. "description": "Whether to send welcome notification email to the user",
  23725. "type": "boolean",
  23726. "x-go-name": "SendNotify"
  23727. },
  23728. "source_id": {
  23729. "description": "The authentication source ID to associate with the user",
  23730. "type": "integer",
  23731. "format": "int64",
  23732. "x-go-name": "SourceID"
  23733. },
  23734. "username": {
  23735. "description": "username of the user",
  23736. "type": "string",
  23737. "x-go-name": "Username"
  23738. },
  23739. "visibility": {
  23740. "description": "User visibility level: public, limited, or private",
  23741. "type": "string",
  23742. "x-go-name": "Visibility"
  23743. }
  23744. },
  23745. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23746. },
  23747. "CreateVariableOption": {
  23748. "description": "CreateVariableOption the option when creating variable",
  23749. "type": "object",
  23750. "required": [
  23751. "value"
  23752. ],
  23753. "properties": {
  23754. "description": {
  23755. "description": "Description of the variable to create",
  23756. "type": "string",
  23757. "x-go-name": "Description"
  23758. },
  23759. "value": {
  23760. "description": "Value of the variable to create",
  23761. "type": "string",
  23762. "x-go-name": "Value"
  23763. }
  23764. },
  23765. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23766. },
  23767. "CreateWikiPageOptions": {
  23768. "description": "CreateWikiPageOptions form for creating wiki",
  23769. "type": "object",
  23770. "properties": {
  23771. "content_base64": {
  23772. "description": "content must be base64 encoded",
  23773. "type": "string",
  23774. "x-go-name": "ContentBase64"
  23775. },
  23776. "message": {
  23777. "description": "optional commit message summarizing the change",
  23778. "type": "string",
  23779. "x-go-name": "Message"
  23780. },
  23781. "title": {
  23782. "description": "page title. leave empty to keep unchanged",
  23783. "type": "string",
  23784. "x-go-name": "Title"
  23785. }
  23786. },
  23787. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23788. },
  23789. "Cron": {
  23790. "description": "Cron represents a Cron task",
  23791. "type": "object",
  23792. "properties": {
  23793. "exec_times": {
  23794. "description": "The total number of times this cron task has been executed",
  23795. "type": "integer",
  23796. "format": "int64",
  23797. "x-go-name": "ExecTimes"
  23798. },
  23799. "name": {
  23800. "description": "The name of the cron task",
  23801. "type": "string",
  23802. "x-go-name": "Name"
  23803. },
  23804. "next": {
  23805. "description": "The next scheduled execution time",
  23806. "type": "string",
  23807. "format": "date-time",
  23808. "x-go-name": "Next"
  23809. },
  23810. "prev": {
  23811. "description": "The previous execution time",
  23812. "type": "string",
  23813. "format": "date-time",
  23814. "x-go-name": "Prev"
  23815. },
  23816. "schedule": {
  23817. "description": "The cron schedule expression (e.g., \"0 0 * * *\")",
  23818. "type": "string",
  23819. "x-go-name": "Schedule"
  23820. }
  23821. },
  23822. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23823. },
  23824. "DeleteEmailOption": {
  23825. "description": "DeleteEmailOption options when deleting email addresses",
  23826. "type": "object",
  23827. "properties": {
  23828. "emails": {
  23829. "description": "email addresses to delete",
  23830. "type": "array",
  23831. "items": {
  23832. "type": "string"
  23833. },
  23834. "x-go-name": "Emails"
  23835. }
  23836. },
  23837. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23838. },
  23839. "DeleteFileOptions": {
  23840. "description": "DeleteFileOptions options for deleting files (used for other File structs below)\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)",
  23841. "type": "object",
  23842. "required": [
  23843. "sha"
  23844. ],
  23845. "properties": {
  23846. "author": {
  23847. "$ref": "#/definitions/Identity"
  23848. },
  23849. "branch": {
  23850. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  23851. "type": "string",
  23852. "x-go-name": "BranchName"
  23853. },
  23854. "committer": {
  23855. "$ref": "#/definitions/Identity"
  23856. },
  23857. "dates": {
  23858. "$ref": "#/definitions/CommitDateOptions"
  23859. },
  23860. "message": {
  23861. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  23862. "type": "string",
  23863. "x-go-name": "Message"
  23864. },
  23865. "new_branch": {
  23866. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  23867. "type": "string",
  23868. "x-go-name": "NewBranchName"
  23869. },
  23870. "sha": {
  23871. "description": "the blob ID (SHA) for the file that already exists, it is required for changing existing files",
  23872. "type": "string",
  23873. "x-go-name": "SHA"
  23874. },
  23875. "signoff": {
  23876. "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.",
  23877. "type": "boolean",
  23878. "x-go-name": "Signoff"
  23879. }
  23880. },
  23881. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23882. },
  23883. "DeployKey": {
  23884. "description": "DeployKey a deploy key",
  23885. "type": "object",
  23886. "properties": {
  23887. "created_at": {
  23888. "type": "string",
  23889. "format": "date-time",
  23890. "x-go-name": "Created"
  23891. },
  23892. "fingerprint": {
  23893. "description": "Fingerprint is the key's fingerprint",
  23894. "type": "string",
  23895. "x-go-name": "Fingerprint"
  23896. },
  23897. "id": {
  23898. "description": "ID is the unique identifier for the deploy key",
  23899. "type": "integer",
  23900. "format": "int64",
  23901. "x-go-name": "ID"
  23902. },
  23903. "key": {
  23904. "description": "Key contains the actual SSH key content",
  23905. "type": "string",
  23906. "x-go-name": "Key"
  23907. },
  23908. "key_id": {
  23909. "description": "KeyID is the associated public key ID",
  23910. "type": "integer",
  23911. "format": "int64",
  23912. "x-go-name": "KeyID"
  23913. },
  23914. "read_only": {
  23915. "description": "ReadOnly indicates if the key has read-only access",
  23916. "type": "boolean",
  23917. "x-go-name": "ReadOnly"
  23918. },
  23919. "repository": {
  23920. "$ref": "#/definitions/Repository"
  23921. },
  23922. "title": {
  23923. "description": "Title is the human-readable name for the key",
  23924. "type": "string",
  23925. "x-go-name": "Title"
  23926. },
  23927. "url": {
  23928. "description": "URL is the API URL for this deploy key",
  23929. "type": "string",
  23930. "x-go-name": "URL"
  23931. }
  23932. },
  23933. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23934. },
  23935. "DismissPullReviewOptions": {
  23936. "description": "DismissPullReviewOptions are options to dismiss a pull review",
  23937. "type": "object",
  23938. "properties": {
  23939. "message": {
  23940. "type": "string",
  23941. "x-go-name": "Message"
  23942. },
  23943. "priors": {
  23944. "type": "boolean",
  23945. "x-go-name": "Priors"
  23946. }
  23947. },
  23948. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23949. },
  23950. "EditAttachmentOptions": {
  23951. "description": "EditAttachmentOptions options for editing attachments",
  23952. "type": "object",
  23953. "properties": {
  23954. "name": {
  23955. "description": "Name is the new filename for the attachment",
  23956. "type": "string",
  23957. "x-go-name": "Name"
  23958. }
  23959. },
  23960. "x-go-package": "code.gitea.io/gitea/modules/structs"
  23961. },
  23962. "EditBranchProtectionOption": {
  23963. "description": "EditBranchProtectionOption options for editing a branch protection",
  23964. "type": "object",
  23965. "properties": {
  23966. "approvals_whitelist_teams": {
  23967. "type": "array",
  23968. "items": {
  23969. "type": "string"
  23970. },
  23971. "x-go-name": "ApprovalsWhitelistTeams"
  23972. },
  23973. "approvals_whitelist_username": {
  23974. "type": "array",
  23975. "items": {
  23976. "type": "string"
  23977. },
  23978. "x-go-name": "ApprovalsWhitelistUsernames"
  23979. },
  23980. "block_admin_merge_override": {
  23981. "type": "boolean",
  23982. "x-go-name": "BlockAdminMergeOverride"
  23983. },
  23984. "block_on_official_review_requests": {
  23985. "type": "boolean",
  23986. "x-go-name": "BlockOnOfficialReviewRequests"
  23987. },
  23988. "block_on_outdated_branch": {
  23989. "type": "boolean",
  23990. "x-go-name": "BlockOnOutdatedBranch"
  23991. },
  23992. "block_on_rejected_reviews": {
  23993. "type": "boolean",
  23994. "x-go-name": "BlockOnRejectedReviews"
  23995. },
  23996. "dismiss_stale_approvals": {
  23997. "type": "boolean",
  23998. "x-go-name": "DismissStaleApprovals"
  23999. },
  24000. "enable_approvals_whitelist": {
  24001. "type": "boolean",
  24002. "x-go-name": "EnableApprovalsWhitelist"
  24003. },
  24004. "enable_force_push": {
  24005. "type": "boolean",
  24006. "x-go-name": "EnableForcePush"
  24007. },
  24008. "enable_force_push_allowlist": {
  24009. "type": "boolean",
  24010. "x-go-name": "EnableForcePushAllowlist"
  24011. },
  24012. "enable_merge_whitelist": {
  24013. "type": "boolean",
  24014. "x-go-name": "EnableMergeWhitelist"
  24015. },
  24016. "enable_push": {
  24017. "type": "boolean",
  24018. "x-go-name": "EnablePush"
  24019. },
  24020. "enable_push_whitelist": {
  24021. "type": "boolean",
  24022. "x-go-name": "EnablePushWhitelist"
  24023. },
  24024. "enable_status_check": {
  24025. "type": "boolean",
  24026. "x-go-name": "EnableStatusCheck"
  24027. },
  24028. "force_push_allowlist_deploy_keys": {
  24029. "type": "boolean",
  24030. "x-go-name": "ForcePushAllowlistDeployKeys"
  24031. },
  24032. "force_push_allowlist_teams": {
  24033. "type": "array",
  24034. "items": {
  24035. "type": "string"
  24036. },
  24037. "x-go-name": "ForcePushAllowlistTeams"
  24038. },
  24039. "force_push_allowlist_usernames": {
  24040. "type": "array",
  24041. "items": {
  24042. "type": "string"
  24043. },
  24044. "x-go-name": "ForcePushAllowlistUsernames"
  24045. },
  24046. "ignore_stale_approvals": {
  24047. "type": "boolean",
  24048. "x-go-name": "IgnoreStaleApprovals"
  24049. },
  24050. "merge_whitelist_teams": {
  24051. "type": "array",
  24052. "items": {
  24053. "type": "string"
  24054. },
  24055. "x-go-name": "MergeWhitelistTeams"
  24056. },
  24057. "merge_whitelist_usernames": {
  24058. "type": "array",
  24059. "items": {
  24060. "type": "string"
  24061. },
  24062. "x-go-name": "MergeWhitelistUsernames"
  24063. },
  24064. "priority": {
  24065. "type": "integer",
  24066. "format": "int64",
  24067. "x-go-name": "Priority"
  24068. },
  24069. "protected_file_patterns": {
  24070. "type": "string",
  24071. "x-go-name": "ProtectedFilePatterns"
  24072. },
  24073. "push_whitelist_deploy_keys": {
  24074. "type": "boolean",
  24075. "x-go-name": "PushWhitelistDeployKeys"
  24076. },
  24077. "push_whitelist_teams": {
  24078. "type": "array",
  24079. "items": {
  24080. "type": "string"
  24081. },
  24082. "x-go-name": "PushWhitelistTeams"
  24083. },
  24084. "push_whitelist_usernames": {
  24085. "type": "array",
  24086. "items": {
  24087. "type": "string"
  24088. },
  24089. "x-go-name": "PushWhitelistUsernames"
  24090. },
  24091. "require_signed_commits": {
  24092. "type": "boolean",
  24093. "x-go-name": "RequireSignedCommits"
  24094. },
  24095. "required_approvals": {
  24096. "type": "integer",
  24097. "format": "int64",
  24098. "x-go-name": "RequiredApprovals"
  24099. },
  24100. "status_check_contexts": {
  24101. "type": "array",
  24102. "items": {
  24103. "type": "string"
  24104. },
  24105. "x-go-name": "StatusCheckContexts"
  24106. },
  24107. "unprotected_file_patterns": {
  24108. "type": "string",
  24109. "x-go-name": "UnprotectedFilePatterns"
  24110. }
  24111. },
  24112. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24113. },
  24114. "EditDeadlineOption": {
  24115. "description": "EditDeadlineOption options for creating a deadline",
  24116. "type": "object",
  24117. "required": [
  24118. "due_date"
  24119. ],
  24120. "properties": {
  24121. "due_date": {
  24122. "type": "string",
  24123. "format": "date-time",
  24124. "x-go-name": "Deadline"
  24125. }
  24126. },
  24127. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24128. },
  24129. "EditGitHookOption": {
  24130. "description": "EditGitHookOption options when modifying one Git hook",
  24131. "type": "object",
  24132. "properties": {
  24133. "content": {
  24134. "description": "Content is the new script content for the hook",
  24135. "type": "string",
  24136. "x-go-name": "Content"
  24137. }
  24138. },
  24139. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24140. },
  24141. "EditHookOption": {
  24142. "description": "EditHookOption options when modify one hook",
  24143. "type": "object",
  24144. "properties": {
  24145. "active": {
  24146. "description": "Whether the webhook is active and will be triggered",
  24147. "type": "boolean",
  24148. "x-go-name": "Active"
  24149. },
  24150. "authorization_header": {
  24151. "description": "Authorization header to include in webhook requests",
  24152. "type": "string",
  24153. "x-go-name": "AuthorizationHeader"
  24154. },
  24155. "branch_filter": {
  24156. "description": "Branch filter pattern to determine which branches trigger the webhook",
  24157. "type": "string",
  24158. "x-go-name": "BranchFilter"
  24159. },
  24160. "config": {
  24161. "description": "Configuration settings for the webhook",
  24162. "type": "object",
  24163. "additionalProperties": {
  24164. "type": "string"
  24165. },
  24166. "x-go-name": "Config"
  24167. },
  24168. "events": {
  24169. "description": "List of events that trigger this webhook",
  24170. "type": "array",
  24171. "items": {
  24172. "type": "string"
  24173. },
  24174. "x-go-name": "Events"
  24175. }
  24176. },
  24177. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24178. },
  24179. "EditIssueCommentOption": {
  24180. "description": "EditIssueCommentOption options for editing a comment",
  24181. "type": "object",
  24182. "required": [
  24183. "body"
  24184. ],
  24185. "properties": {
  24186. "body": {
  24187. "type": "string",
  24188. "x-go-name": "Body"
  24189. }
  24190. },
  24191. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24192. },
  24193. "EditIssueOption": {
  24194. "description": "EditIssueOption options for editing an issue",
  24195. "type": "object",
  24196. "properties": {
  24197. "assignee": {
  24198. "description": "deprecated",
  24199. "type": "string",
  24200. "x-go-name": "Assignee"
  24201. },
  24202. "assignees": {
  24203. "type": "array",
  24204. "items": {
  24205. "type": "string"
  24206. },
  24207. "x-go-name": "Assignees"
  24208. },
  24209. "body": {
  24210. "type": "string",
  24211. "x-go-name": "Body"
  24212. },
  24213. "due_date": {
  24214. "type": "string",
  24215. "format": "date-time",
  24216. "x-go-name": "Deadline"
  24217. },
  24218. "milestone": {
  24219. "type": "integer",
  24220. "format": "int64",
  24221. "x-go-name": "Milestone"
  24222. },
  24223. "ref": {
  24224. "type": "string",
  24225. "x-go-name": "Ref"
  24226. },
  24227. "state": {
  24228. "type": "string",
  24229. "x-go-name": "State"
  24230. },
  24231. "title": {
  24232. "type": "string",
  24233. "x-go-name": "Title"
  24234. },
  24235. "unset_due_date": {
  24236. "type": "boolean",
  24237. "x-go-name": "RemoveDeadline"
  24238. }
  24239. },
  24240. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24241. },
  24242. "EditLabelOption": {
  24243. "description": "EditLabelOption options for editing a label",
  24244. "type": "object",
  24245. "properties": {
  24246. "color": {
  24247. "type": "string",
  24248. "x-go-name": "Color",
  24249. "example": "#00aabb"
  24250. },
  24251. "description": {
  24252. "description": "Description provides additional context about the label's purpose",
  24253. "type": "string",
  24254. "x-go-name": "Description"
  24255. },
  24256. "exclusive": {
  24257. "type": "boolean",
  24258. "x-go-name": "Exclusive",
  24259. "example": false
  24260. },
  24261. "is_archived": {
  24262. "type": "boolean",
  24263. "x-go-name": "IsArchived",
  24264. "example": false
  24265. },
  24266. "name": {
  24267. "description": "Name is the new display name for the label",
  24268. "type": "string",
  24269. "x-go-name": "Name"
  24270. }
  24271. },
  24272. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24273. },
  24274. "EditMilestoneOption": {
  24275. "description": "EditMilestoneOption options for editing a milestone",
  24276. "type": "object",
  24277. "properties": {
  24278. "description": {
  24279. "description": "Description provides updated details about the milestone",
  24280. "type": "string",
  24281. "x-go-name": "Description"
  24282. },
  24283. "due_on": {
  24284. "description": "Deadline is the updated due date for the milestone",
  24285. "type": "string",
  24286. "format": "date-time",
  24287. "x-go-name": "Deadline"
  24288. },
  24289. "state": {
  24290. "description": "State indicates the updated state of the milestone",
  24291. "type": "string",
  24292. "x-go-name": "State"
  24293. },
  24294. "title": {
  24295. "description": "Title is the updated title of the milestone",
  24296. "type": "string",
  24297. "x-go-name": "Title"
  24298. }
  24299. },
  24300. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24301. },
  24302. "EditOrgOption": {
  24303. "description": "EditOrgOption options for editing an organization",
  24304. "type": "object",
  24305. "properties": {
  24306. "description": {
  24307. "description": "The description of the organization",
  24308. "type": "string",
  24309. "x-go-name": "Description"
  24310. },
  24311. "email": {
  24312. "description": "The email address of the organization",
  24313. "type": "string",
  24314. "x-go-name": "Email"
  24315. },
  24316. "full_name": {
  24317. "description": "The full display name of the organization",
  24318. "type": "string",
  24319. "x-go-name": "FullName"
  24320. },
  24321. "location": {
  24322. "description": "The location of the organization",
  24323. "type": "string",
  24324. "x-go-name": "Location"
  24325. },
  24326. "repo_admin_change_team_access": {
  24327. "description": "Whether repository administrators can change team access",
  24328. "type": "boolean",
  24329. "x-go-name": "RepoAdminChangeTeamAccess"
  24330. },
  24331. "visibility": {
  24332. "description": "possible values are `public`, `limited` or `private`",
  24333. "type": "string",
  24334. "enum": [
  24335. "public",
  24336. "limited",
  24337. "private"
  24338. ],
  24339. "x-go-name": "Visibility"
  24340. },
  24341. "website": {
  24342. "description": "The website URL of the organization",
  24343. "type": "string",
  24344. "x-go-name": "Website"
  24345. }
  24346. },
  24347. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24348. },
  24349. "EditPullRequestOption": {
  24350. "description": "EditPullRequestOption options when modify pull request",
  24351. "type": "object",
  24352. "properties": {
  24353. "allow_maintainer_edit": {
  24354. "description": "Whether to allow maintainer edits",
  24355. "type": "boolean",
  24356. "x-go-name": "AllowMaintainerEdit"
  24357. },
  24358. "assignee": {
  24359. "description": "The new primary assignee username",
  24360. "type": "string",
  24361. "x-go-name": "Assignee"
  24362. },
  24363. "assignees": {
  24364. "description": "The new list of assignee usernames",
  24365. "type": "array",
  24366. "items": {
  24367. "type": "string"
  24368. },
  24369. "x-go-name": "Assignees"
  24370. },
  24371. "base": {
  24372. "description": "The new base branch for the pull request",
  24373. "type": "string",
  24374. "x-go-name": "Base"
  24375. },
  24376. "body": {
  24377. "description": "The new description body for the pull request",
  24378. "type": "string",
  24379. "x-go-name": "Body"
  24380. },
  24381. "due_date": {
  24382. "type": "string",
  24383. "format": "date-time",
  24384. "x-go-name": "Deadline"
  24385. },
  24386. "labels": {
  24387. "description": "The new list of label IDs for the pull request",
  24388. "type": "array",
  24389. "items": {
  24390. "type": "integer",
  24391. "format": "int64"
  24392. },
  24393. "x-go-name": "Labels"
  24394. },
  24395. "milestone": {
  24396. "description": "The new milestone ID for the pull request",
  24397. "type": "integer",
  24398. "format": "int64",
  24399. "x-go-name": "Milestone"
  24400. },
  24401. "state": {
  24402. "description": "The new state for the pull request",
  24403. "type": "string",
  24404. "x-go-name": "State"
  24405. },
  24406. "title": {
  24407. "description": "The new title for the pull request",
  24408. "type": "string",
  24409. "x-go-name": "Title"
  24410. },
  24411. "unset_due_date": {
  24412. "description": "Whether to remove the current deadline",
  24413. "type": "boolean",
  24414. "x-go-name": "RemoveDeadline"
  24415. }
  24416. },
  24417. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24418. },
  24419. "EditReactionOption": {
  24420. "description": "EditReactionOption contain the reaction type",
  24421. "type": "object",
  24422. "properties": {
  24423. "content": {
  24424. "description": "The reaction content (e.g., emoji or reaction type)",
  24425. "type": "string",
  24426. "x-go-name": "Reaction"
  24427. }
  24428. },
  24429. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24430. },
  24431. "EditReleaseOption": {
  24432. "description": "EditReleaseOption options when editing a release",
  24433. "type": "object",
  24434. "properties": {
  24435. "body": {
  24436. "description": "The new release notes or description",
  24437. "type": "string",
  24438. "x-go-name": "Note"
  24439. },
  24440. "draft": {
  24441. "description": "Whether to change the draft status",
  24442. "type": "boolean",
  24443. "x-go-name": "IsDraft"
  24444. },
  24445. "name": {
  24446. "description": "The new display title of the release",
  24447. "type": "string",
  24448. "x-go-name": "Title"
  24449. },
  24450. "prerelease": {
  24451. "description": "Whether to change the prerelease status",
  24452. "type": "boolean",
  24453. "x-go-name": "IsPrerelease"
  24454. },
  24455. "tag_name": {
  24456. "description": "The new name of the git tag",
  24457. "type": "string",
  24458. "x-go-name": "TagName"
  24459. },
  24460. "target_commitish": {
  24461. "description": "The new target commitish for the release",
  24462. "type": "string",
  24463. "x-go-name": "Target"
  24464. }
  24465. },
  24466. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24467. },
  24468. "EditRepoOption": {
  24469. "description": "EditRepoOption options when editing a repository's properties",
  24470. "type": "object",
  24471. "properties": {
  24472. "allow_fast_forward_only_merge": {
  24473. "description": "either `true` to allow fast-forward-only merging pull requests, or `false` to prevent fast-forward-only merging.",
  24474. "type": "boolean",
  24475. "x-go-name": "AllowFastForwardOnly"
  24476. },
  24477. "allow_manual_merge": {
  24478. "description": "either `true` to allow mark pr as merged manually, or `false` to prevent it.",
  24479. "type": "boolean",
  24480. "x-go-name": "AllowManualMerge"
  24481. },
  24482. "allow_merge_commits": {
  24483. "description": "either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits.",
  24484. "type": "boolean",
  24485. "x-go-name": "AllowMerge"
  24486. },
  24487. "allow_rebase": {
  24488. "description": "either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging.",
  24489. "type": "boolean",
  24490. "x-go-name": "AllowRebase"
  24491. },
  24492. "allow_rebase_explicit": {
  24493. "description": "either `true` to allow rebase with explicit merge commits (--no-ff), or `false` to prevent rebase with explicit merge commits.",
  24494. "type": "boolean",
  24495. "x-go-name": "AllowRebaseMerge"
  24496. },
  24497. "allow_rebase_update": {
  24498. "description": "either `true` to allow updating pull request branch by rebase, or `false` to prevent it.",
  24499. "type": "boolean",
  24500. "x-go-name": "AllowRebaseUpdate"
  24501. },
  24502. "allow_squash_merge": {
  24503. "description": "either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging.",
  24504. "type": "boolean",
  24505. "x-go-name": "AllowSquash"
  24506. },
  24507. "archived": {
  24508. "description": "set to `true` to archive this repository.",
  24509. "type": "boolean",
  24510. "x-go-name": "Archived"
  24511. },
  24512. "autodetect_manual_merge": {
  24513. "description": "either `true` to enable AutodetectManualMerge, or `false` to prevent it. Note: In some special cases, misjudgments can occur.",
  24514. "type": "boolean",
  24515. "x-go-name": "AutodetectManualMerge"
  24516. },
  24517. "default_allow_maintainer_edit": {
  24518. "description": "set to `true` to allow edits from maintainers by default",
  24519. "type": "boolean",
  24520. "x-go-name": "DefaultAllowMaintainerEdit"
  24521. },
  24522. "default_branch": {
  24523. "description": "sets the default branch for this repository.",
  24524. "type": "string",
  24525. "x-go-name": "DefaultBranch"
  24526. },
  24527. "default_delete_branch_after_merge": {
  24528. "description": "set to `true` to delete pr branch after merge by default",
  24529. "type": "boolean",
  24530. "x-go-name": "DefaultDeleteBranchAfterMerge"
  24531. },
  24532. "default_merge_style": {
  24533. "description": "set to a merge style to be used by this repository: \"merge\", \"rebase\", \"rebase-merge\", \"squash\", or \"fast-forward-only\".",
  24534. "type": "string",
  24535. "x-go-name": "DefaultMergeStyle"
  24536. },
  24537. "description": {
  24538. "description": "a short description of the repository.",
  24539. "type": "string",
  24540. "x-go-name": "Description"
  24541. },
  24542. "enable_prune": {
  24543. "description": "enable prune - remove obsolete remote-tracking references when mirroring",
  24544. "type": "boolean",
  24545. "x-go-name": "EnablePrune"
  24546. },
  24547. "external_tracker": {
  24548. "$ref": "#/definitions/ExternalTracker"
  24549. },
  24550. "external_wiki": {
  24551. "$ref": "#/definitions/ExternalWiki"
  24552. },
  24553. "has_actions": {
  24554. "description": "either `true` to enable actions unit, or `false` to disable them.",
  24555. "type": "boolean",
  24556. "x-go-name": "HasActions"
  24557. },
  24558. "has_code": {
  24559. "description": "either `true` to enable code for this repository or `false` to disable it.",
  24560. "type": "boolean",
  24561. "x-go-name": "HasCode"
  24562. },
  24563. "has_issues": {
  24564. "description": "either `true` to enable issues for this repository or `false` to disable them.",
  24565. "type": "boolean",
  24566. "x-go-name": "HasIssues"
  24567. },
  24568. "has_packages": {
  24569. "description": "either `true` to enable packages unit, or `false` to disable them.",
  24570. "type": "boolean",
  24571. "x-go-name": "HasPackages"
  24572. },
  24573. "has_projects": {
  24574. "description": "either `true` to enable project unit, or `false` to disable them.",
  24575. "type": "boolean",
  24576. "x-go-name": "HasProjects"
  24577. },
  24578. "has_pull_requests": {
  24579. "description": "either `true` to allow pull requests, or `false` to prevent pull request.",
  24580. "type": "boolean",
  24581. "x-go-name": "HasPullRequests"
  24582. },
  24583. "has_releases": {
  24584. "description": "either `true` to enable releases unit, or `false` to disable them.",
  24585. "type": "boolean",
  24586. "x-go-name": "HasReleases"
  24587. },
  24588. "has_wiki": {
  24589. "description": "either `true` to enable the wiki for this repository or `false` to disable it.",
  24590. "type": "boolean",
  24591. "x-go-name": "HasWiki"
  24592. },
  24593. "ignore_whitespace_conflicts": {
  24594. "description": "either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace.",
  24595. "type": "boolean",
  24596. "x-go-name": "IgnoreWhitespaceConflicts"
  24597. },
  24598. "internal_tracker": {
  24599. "$ref": "#/definitions/InternalTracker"
  24600. },
  24601. "mirror_interval": {
  24602. "description": "set to a string like `8h30m0s` to set the mirror interval time",
  24603. "type": "string",
  24604. "x-go-name": "MirrorInterval"
  24605. },
  24606. "name": {
  24607. "description": "name of the repository",
  24608. "type": "string",
  24609. "uniqueItems": true,
  24610. "x-go-name": "Name"
  24611. },
  24612. "private": {
  24613. "description": "either `true` to make the repository private or `false` to make it public.\nNote: you will get a 422 error if the organization restricts changing repository visibility to organization\nowners and a non-owner tries to change the value of private.",
  24614. "type": "boolean",
  24615. "x-go-name": "Private"
  24616. },
  24617. "projects_mode": {
  24618. "description": "`repo` to only allow repo-level projects, `owner` to only allow owner projects, `all` to allow both.",
  24619. "type": "string",
  24620. "x-go-name": "ProjectsMode"
  24621. },
  24622. "template": {
  24623. "description": "either `true` to make this repository a template or `false` to make it a normal repository",
  24624. "type": "boolean",
  24625. "x-go-name": "Template"
  24626. },
  24627. "website": {
  24628. "description": "a URL with more information about the repository.",
  24629. "type": "string",
  24630. "x-go-name": "Website"
  24631. }
  24632. },
  24633. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24634. },
  24635. "EditTagProtectionOption": {
  24636. "description": "EditTagProtectionOption options for editing a tag protection",
  24637. "type": "object",
  24638. "properties": {
  24639. "name_pattern": {
  24640. "description": "The pattern to match tag names for protection",
  24641. "type": "string",
  24642. "x-go-name": "NamePattern"
  24643. },
  24644. "whitelist_teams": {
  24645. "description": "List of team names allowed to create/delete protected tags",
  24646. "type": "array",
  24647. "items": {
  24648. "type": "string"
  24649. },
  24650. "x-go-name": "WhitelistTeams"
  24651. },
  24652. "whitelist_usernames": {
  24653. "description": "List of usernames allowed to create/delete protected tags",
  24654. "type": "array",
  24655. "items": {
  24656. "type": "string"
  24657. },
  24658. "x-go-name": "WhitelistUsernames"
  24659. }
  24660. },
  24661. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24662. },
  24663. "EditTeamOption": {
  24664. "description": "EditTeamOption options for editing a team",
  24665. "type": "object",
  24666. "required": [
  24667. "name"
  24668. ],
  24669. "properties": {
  24670. "can_create_org_repo": {
  24671. "description": "Whether the team can create repositories in the organization",
  24672. "type": "boolean",
  24673. "x-go-name": "CanCreateOrgRepo"
  24674. },
  24675. "description": {
  24676. "description": "The description of the team",
  24677. "type": "string",
  24678. "x-go-name": "Description"
  24679. },
  24680. "includes_all_repositories": {
  24681. "description": "Whether the team has access to all repositories in the organization",
  24682. "type": "boolean",
  24683. "x-go-name": "IncludesAllRepositories"
  24684. },
  24685. "name": {
  24686. "type": "string",
  24687. "x-go-name": "Name"
  24688. },
  24689. "permission": {
  24690. "type": "string",
  24691. "enum": [
  24692. "read",
  24693. "write",
  24694. "admin"
  24695. ],
  24696. "x-go-name": "Permission"
  24697. },
  24698. "units": {
  24699. "type": "array",
  24700. "items": {
  24701. "type": "string"
  24702. },
  24703. "x-go-name": "Units",
  24704. "example": [
  24705. "repo.code",
  24706. "repo.issues",
  24707. "repo.ext_issues",
  24708. "repo.wiki",
  24709. "repo.pulls",
  24710. "repo.releases",
  24711. "repo.projects",
  24712. "repo.ext_wiki"
  24713. ]
  24714. },
  24715. "units_map": {
  24716. "type": "object",
  24717. "additionalProperties": {
  24718. "type": "string"
  24719. },
  24720. "x-go-name": "UnitsMap",
  24721. "example": {
  24722. "repo.code": "read",
  24723. "repo.ext_issues": "none",
  24724. "repo.ext_wiki": "none",
  24725. "repo.issues": "write",
  24726. "repo.projects": "none",
  24727. "repo.pulls": "owner",
  24728. "repo.releases": "none",
  24729. "repo.wiki": "admin"
  24730. }
  24731. }
  24732. },
  24733. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24734. },
  24735. "EditUserOption": {
  24736. "description": "EditUserOption edit user options",
  24737. "type": "object",
  24738. "required": [
  24739. "source_id",
  24740. "login_name"
  24741. ],
  24742. "properties": {
  24743. "active": {
  24744. "description": "Whether the user account is active",
  24745. "type": "boolean",
  24746. "x-go-name": "Active"
  24747. },
  24748. "admin": {
  24749. "description": "Whether the user has administrator privileges",
  24750. "type": "boolean",
  24751. "x-go-name": "Admin"
  24752. },
  24753. "allow_create_organization": {
  24754. "description": "Whether the user can create organizations",
  24755. "type": "boolean",
  24756. "x-go-name": "AllowCreateOrganization"
  24757. },
  24758. "allow_git_hook": {
  24759. "description": "Whether the user can use Git hooks",
  24760. "type": "boolean",
  24761. "x-go-name": "AllowGitHook"
  24762. },
  24763. "allow_import_local": {
  24764. "description": "Whether the user can import local repositories",
  24765. "type": "boolean",
  24766. "x-go-name": "AllowImportLocal"
  24767. },
  24768. "description": {
  24769. "description": "The user's personal description or bio",
  24770. "type": "string",
  24771. "x-go-name": "Description"
  24772. },
  24773. "email": {
  24774. "type": "string",
  24775. "format": "email",
  24776. "x-go-name": "Email"
  24777. },
  24778. "full_name": {
  24779. "description": "The full display name of the user",
  24780. "type": "string",
  24781. "x-go-name": "FullName"
  24782. },
  24783. "location": {
  24784. "description": "The user's location or address",
  24785. "type": "string",
  24786. "x-go-name": "Location"
  24787. },
  24788. "login_name": {
  24789. "description": "identifier of the user, provided by the external authenticator (if configured)",
  24790. "type": "string",
  24791. "default": "empty",
  24792. "x-go-name": "LoginName"
  24793. },
  24794. "max_repo_creation": {
  24795. "description": "Maximum number of repositories the user can create",
  24796. "type": "integer",
  24797. "format": "int64",
  24798. "x-go-name": "MaxRepoCreation"
  24799. },
  24800. "must_change_password": {
  24801. "description": "Whether the user must change password on next login",
  24802. "type": "boolean",
  24803. "x-go-name": "MustChangePassword"
  24804. },
  24805. "password": {
  24806. "description": "The plain text password for the user",
  24807. "type": "string",
  24808. "x-go-name": "Password"
  24809. },
  24810. "prohibit_login": {
  24811. "description": "Whether the user is prohibited from logging in",
  24812. "type": "boolean",
  24813. "x-go-name": "ProhibitLogin"
  24814. },
  24815. "restricted": {
  24816. "description": "Whether the user has restricted access privileges",
  24817. "type": "boolean",
  24818. "x-go-name": "Restricted"
  24819. },
  24820. "source_id": {
  24821. "type": "integer",
  24822. "format": "int64",
  24823. "x-go-name": "SourceID"
  24824. },
  24825. "visibility": {
  24826. "description": "User visibility level: public, limited, or private",
  24827. "type": "string",
  24828. "x-go-name": "Visibility"
  24829. },
  24830. "website": {
  24831. "description": "The user's personal website URL",
  24832. "type": "string",
  24833. "x-go-name": "Website"
  24834. }
  24835. },
  24836. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24837. },
  24838. "Email": {
  24839. "description": "Email an email address belonging to a user",
  24840. "type": "object",
  24841. "properties": {
  24842. "email": {
  24843. "type": "string",
  24844. "format": "email",
  24845. "x-go-name": "Email"
  24846. },
  24847. "primary": {
  24848. "description": "Whether this is the primary email address",
  24849. "type": "boolean",
  24850. "x-go-name": "Primary"
  24851. },
  24852. "user_id": {
  24853. "description": "The unique identifier of the user who owns this email",
  24854. "type": "integer",
  24855. "format": "int64",
  24856. "x-go-name": "UserID"
  24857. },
  24858. "username": {
  24859. "description": "username of the user",
  24860. "type": "string",
  24861. "x-go-name": "UserName"
  24862. },
  24863. "verified": {
  24864. "description": "Whether the email address has been verified",
  24865. "type": "boolean",
  24866. "x-go-name": "Verified"
  24867. }
  24868. },
  24869. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24870. },
  24871. "ExternalTracker": {
  24872. "description": "ExternalTracker represents settings for external tracker",
  24873. "type": "object",
  24874. "properties": {
  24875. "external_tracker_format": {
  24876. "description": "External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.",
  24877. "type": "string",
  24878. "x-go-name": "ExternalTrackerFormat"
  24879. },
  24880. "external_tracker_regexp_pattern": {
  24881. "description": "External Issue Tracker issue regular expression",
  24882. "type": "string",
  24883. "x-go-name": "ExternalTrackerRegexpPattern"
  24884. },
  24885. "external_tracker_style": {
  24886. "description": "External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp`",
  24887. "type": "string",
  24888. "x-go-name": "ExternalTrackerStyle"
  24889. },
  24890. "external_tracker_url": {
  24891. "description": "URL of external issue tracker.",
  24892. "type": "string",
  24893. "x-go-name": "ExternalTrackerURL"
  24894. }
  24895. },
  24896. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24897. },
  24898. "ExternalWiki": {
  24899. "description": "ExternalWiki represents setting for external wiki",
  24900. "type": "object",
  24901. "properties": {
  24902. "external_wiki_url": {
  24903. "description": "URL of external wiki.",
  24904. "type": "string",
  24905. "x-go-name": "ExternalWikiURL"
  24906. }
  24907. },
  24908. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24909. },
  24910. "FileCommitResponse": {
  24911. "type": "object",
  24912. "title": "FileCommitResponse contains information generated from a Git commit for a repo's file.",
  24913. "properties": {
  24914. "author": {
  24915. "$ref": "#/definitions/CommitUser"
  24916. },
  24917. "committer": {
  24918. "$ref": "#/definitions/CommitUser"
  24919. },
  24920. "created": {
  24921. "type": "string",
  24922. "format": "date-time",
  24923. "x-go-name": "Created"
  24924. },
  24925. "html_url": {
  24926. "description": "HTMLURL is the web URL for viewing this commit",
  24927. "type": "string",
  24928. "x-go-name": "HTMLURL"
  24929. },
  24930. "message": {
  24931. "description": "Message is the commit message",
  24932. "type": "string",
  24933. "x-go-name": "Message"
  24934. },
  24935. "parents": {
  24936. "description": "Parents contains parent commit metadata",
  24937. "type": "array",
  24938. "items": {
  24939. "$ref": "#/definitions/CommitMeta"
  24940. },
  24941. "x-go-name": "Parents"
  24942. },
  24943. "sha": {
  24944. "description": "SHA is the commit SHA hash",
  24945. "type": "string",
  24946. "x-go-name": "SHA"
  24947. },
  24948. "tree": {
  24949. "$ref": "#/definitions/CommitMeta"
  24950. },
  24951. "url": {
  24952. "description": "URL is the API URL for the commit",
  24953. "type": "string",
  24954. "x-go-name": "URL"
  24955. }
  24956. },
  24957. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24958. },
  24959. "FileDeleteResponse": {
  24960. "description": "FileDeleteResponse contains information about a repo's file that was deleted",
  24961. "type": "object",
  24962. "properties": {
  24963. "commit": {
  24964. "$ref": "#/definitions/FileCommitResponse"
  24965. },
  24966. "content": {
  24967. "description": "Content is always null for delete operations",
  24968. "x-go-name": "Content"
  24969. },
  24970. "verification": {
  24971. "$ref": "#/definitions/PayloadCommitVerification"
  24972. }
  24973. },
  24974. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24975. },
  24976. "FileLinksResponse": {
  24977. "description": "FileLinksResponse contains the links for a repo's file",
  24978. "type": "object",
  24979. "properties": {
  24980. "git": {
  24981. "description": "GitURL is the Git API URL for this file",
  24982. "type": "string",
  24983. "x-go-name": "GitURL"
  24984. },
  24985. "html": {
  24986. "description": "HTMLURL is the web URL for this file",
  24987. "type": "string",
  24988. "x-go-name": "HTMLURL"
  24989. },
  24990. "self": {
  24991. "description": "Self is the API URL for this file",
  24992. "type": "string",
  24993. "x-go-name": "Self"
  24994. }
  24995. },
  24996. "x-go-package": "code.gitea.io/gitea/modules/structs"
  24997. },
  24998. "FileResponse": {
  24999. "description": "FileResponse contains information about a repo's file",
  25000. "type": "object",
  25001. "properties": {
  25002. "commit": {
  25003. "$ref": "#/definitions/FileCommitResponse"
  25004. },
  25005. "content": {
  25006. "$ref": "#/definitions/ContentsResponse"
  25007. },
  25008. "verification": {
  25009. "$ref": "#/definitions/PayloadCommitVerification"
  25010. }
  25011. },
  25012. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25013. },
  25014. "FilesResponse": {
  25015. "description": "FilesResponse contains information about multiple files from a repo",
  25016. "type": "object",
  25017. "properties": {
  25018. "commit": {
  25019. "$ref": "#/definitions/FileCommitResponse"
  25020. },
  25021. "files": {
  25022. "description": "Files contains the list of file contents and metadata",
  25023. "type": "array",
  25024. "items": {
  25025. "$ref": "#/definitions/ContentsResponse"
  25026. },
  25027. "x-go-name": "Files"
  25028. },
  25029. "verification": {
  25030. "$ref": "#/definitions/PayloadCommitVerification"
  25031. }
  25032. },
  25033. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25034. },
  25035. "GPGKey": {
  25036. "description": "GPGKey a user GPG key to sign commit and tag in repository",
  25037. "type": "object",
  25038. "properties": {
  25039. "can_certify": {
  25040. "description": "Whether the key can be used for certification",
  25041. "type": "boolean",
  25042. "x-go-name": "CanCertify"
  25043. },
  25044. "can_encrypt_comms": {
  25045. "description": "Whether the key can be used for encrypting communications",
  25046. "type": "boolean",
  25047. "x-go-name": "CanEncryptComms"
  25048. },
  25049. "can_encrypt_storage": {
  25050. "description": "Whether the key can be used for encrypting storage",
  25051. "type": "boolean",
  25052. "x-go-name": "CanEncryptStorage"
  25053. },
  25054. "can_sign": {
  25055. "description": "Whether the key can be used for signing",
  25056. "type": "boolean",
  25057. "x-go-name": "CanSign"
  25058. },
  25059. "created_at": {
  25060. "type": "string",
  25061. "format": "date-time",
  25062. "x-go-name": "Created"
  25063. },
  25064. "emails": {
  25065. "description": "List of email addresses associated with this GPG key",
  25066. "type": "array",
  25067. "items": {
  25068. "$ref": "#/definitions/GPGKeyEmail"
  25069. },
  25070. "x-go-name": "Emails"
  25071. },
  25072. "expires_at": {
  25073. "type": "string",
  25074. "format": "date-time",
  25075. "x-go-name": "Expires"
  25076. },
  25077. "id": {
  25078. "description": "The unique identifier of the GPG key",
  25079. "type": "integer",
  25080. "format": "int64",
  25081. "x-go-name": "ID"
  25082. },
  25083. "key_id": {
  25084. "description": "The key ID of the GPG key",
  25085. "type": "string",
  25086. "x-go-name": "KeyID"
  25087. },
  25088. "primary_key_id": {
  25089. "description": "The primary key ID of the GPG key",
  25090. "type": "string",
  25091. "x-go-name": "PrimaryKeyID"
  25092. },
  25093. "public_key": {
  25094. "description": "The public key content in armored format",
  25095. "type": "string",
  25096. "x-go-name": "PublicKey"
  25097. },
  25098. "subkeys": {
  25099. "description": "List of subkeys of this GPG key",
  25100. "type": "array",
  25101. "items": {
  25102. "$ref": "#/definitions/GPGKey"
  25103. },
  25104. "x-go-name": "SubsKey"
  25105. },
  25106. "verified": {
  25107. "description": "Whether the GPG key has been verified",
  25108. "type": "boolean",
  25109. "x-go-name": "Verified"
  25110. }
  25111. },
  25112. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25113. },
  25114. "GPGKeyEmail": {
  25115. "description": "GPGKeyEmail an email attached to a GPGKey",
  25116. "type": "object",
  25117. "properties": {
  25118. "email": {
  25119. "description": "The email address associated with the GPG key",
  25120. "type": "string",
  25121. "x-go-name": "Email"
  25122. },
  25123. "verified": {
  25124. "description": "Whether the email address has been verified",
  25125. "type": "boolean",
  25126. "x-go-name": "Verified"
  25127. }
  25128. },
  25129. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25130. },
  25131. "GeneralAPISettings": {
  25132. "description": "GeneralAPISettings contains global api settings exposed by it",
  25133. "type": "object",
  25134. "properties": {
  25135. "default_git_trees_per_page": {
  25136. "description": "DefaultGitTreesPerPage is the default number of Git tree items per page",
  25137. "type": "integer",
  25138. "format": "int64",
  25139. "x-go-name": "DefaultGitTreesPerPage"
  25140. },
  25141. "default_max_blob_size": {
  25142. "description": "DefaultMaxBlobSize is the default maximum blob size for API responses",
  25143. "type": "integer",
  25144. "format": "int64",
  25145. "x-go-name": "DefaultMaxBlobSize"
  25146. },
  25147. "default_max_response_size": {
  25148. "description": "DefaultMaxResponseSize is the default maximum response size",
  25149. "type": "integer",
  25150. "format": "int64",
  25151. "x-go-name": "DefaultMaxResponseSize"
  25152. },
  25153. "default_paging_num": {
  25154. "description": "DefaultPagingNum is the default number of items per page",
  25155. "type": "integer",
  25156. "format": "int64",
  25157. "x-go-name": "DefaultPagingNum"
  25158. },
  25159. "max_response_items": {
  25160. "description": "MaxResponseItems is the maximum number of items returned in API responses",
  25161. "type": "integer",
  25162. "format": "int64",
  25163. "x-go-name": "MaxResponseItems"
  25164. }
  25165. },
  25166. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25167. },
  25168. "GeneralAttachmentSettings": {
  25169. "description": "GeneralAttachmentSettings contains global Attachment settings exposed by API",
  25170. "type": "object",
  25171. "properties": {
  25172. "allowed_types": {
  25173. "description": "AllowedTypes contains the allowed file types for attachments",
  25174. "type": "string",
  25175. "x-go-name": "AllowedTypes"
  25176. },
  25177. "enabled": {
  25178. "description": "Enabled indicates if file attachments are enabled",
  25179. "type": "boolean",
  25180. "x-go-name": "Enabled"
  25181. },
  25182. "max_files": {
  25183. "description": "MaxFiles is the maximum number of files per attachment",
  25184. "type": "integer",
  25185. "format": "int64",
  25186. "x-go-name": "MaxFiles"
  25187. },
  25188. "max_size": {
  25189. "description": "MaxSize is the maximum size for individual attachments",
  25190. "type": "integer",
  25191. "format": "int64",
  25192. "x-go-name": "MaxSize"
  25193. }
  25194. },
  25195. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25196. },
  25197. "GeneralRepoSettings": {
  25198. "description": "GeneralRepoSettings contains global repository settings exposed by API",
  25199. "type": "object",
  25200. "properties": {
  25201. "http_git_disabled": {
  25202. "description": "HTTPGitDisabled indicates if HTTP Git operations are disabled",
  25203. "type": "boolean",
  25204. "x-go-name": "HTTPGitDisabled"
  25205. },
  25206. "lfs_disabled": {
  25207. "description": "LFSDisabled indicates if Git LFS support is disabled",
  25208. "type": "boolean",
  25209. "x-go-name": "LFSDisabled"
  25210. },
  25211. "migrations_disabled": {
  25212. "description": "MigrationsDisabled indicates if repository migrations are disabled",
  25213. "type": "boolean",
  25214. "x-go-name": "MigrationsDisabled"
  25215. },
  25216. "mirrors_disabled": {
  25217. "description": "MirrorsDisabled indicates if repository mirroring is disabled",
  25218. "type": "boolean",
  25219. "x-go-name": "MirrorsDisabled"
  25220. },
  25221. "stars_disabled": {
  25222. "description": "StarsDisabled indicates if repository starring is disabled",
  25223. "type": "boolean",
  25224. "x-go-name": "StarsDisabled"
  25225. },
  25226. "time_tracking_disabled": {
  25227. "description": "TimeTrackingDisabled indicates if time tracking is disabled",
  25228. "type": "boolean",
  25229. "x-go-name": "TimeTrackingDisabled"
  25230. }
  25231. },
  25232. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25233. },
  25234. "GeneralUISettings": {
  25235. "description": "GeneralUISettings contains global ui settings exposed by API",
  25236. "type": "object",
  25237. "properties": {
  25238. "allowed_reactions": {
  25239. "description": "AllowedReactions contains the list of allowed emoji reactions",
  25240. "type": "array",
  25241. "items": {
  25242. "type": "string"
  25243. },
  25244. "x-go-name": "AllowedReactions"
  25245. },
  25246. "custom_emojis": {
  25247. "description": "CustomEmojis contains the list of custom emojis",
  25248. "type": "array",
  25249. "items": {
  25250. "type": "string"
  25251. },
  25252. "x-go-name": "CustomEmojis"
  25253. },
  25254. "default_theme": {
  25255. "description": "DefaultTheme is the default UI theme",
  25256. "type": "string",
  25257. "x-go-name": "DefaultTheme"
  25258. }
  25259. },
  25260. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25261. },
  25262. "GenerateRepoOption": {
  25263. "description": "GenerateRepoOption options when creating a repository using a template",
  25264. "type": "object",
  25265. "required": [
  25266. "owner",
  25267. "name"
  25268. ],
  25269. "properties": {
  25270. "avatar": {
  25271. "description": "include avatar of the template repo",
  25272. "type": "boolean",
  25273. "x-go-name": "Avatar"
  25274. },
  25275. "default_branch": {
  25276. "description": "Default branch of the new repository",
  25277. "type": "string",
  25278. "x-go-name": "DefaultBranch"
  25279. },
  25280. "description": {
  25281. "description": "Description of the repository to create",
  25282. "type": "string",
  25283. "x-go-name": "Description"
  25284. },
  25285. "git_content": {
  25286. "description": "include git content of default branch in template repo",
  25287. "type": "boolean",
  25288. "x-go-name": "GitContent"
  25289. },
  25290. "git_hooks": {
  25291. "description": "include git hooks in template repo",
  25292. "type": "boolean",
  25293. "x-go-name": "GitHooks"
  25294. },
  25295. "labels": {
  25296. "description": "include labels in template repo",
  25297. "type": "boolean",
  25298. "x-go-name": "Labels"
  25299. },
  25300. "name": {
  25301. "type": "string",
  25302. "uniqueItems": true,
  25303. "x-go-name": "Name"
  25304. },
  25305. "owner": {
  25306. "description": "the organization's name or individual user's name who will own the new repository",
  25307. "type": "string",
  25308. "x-go-name": "Owner"
  25309. },
  25310. "private": {
  25311. "description": "Whether the repository is private",
  25312. "type": "boolean",
  25313. "x-go-name": "Private"
  25314. },
  25315. "protected_branch": {
  25316. "description": "include protected branches in template repo",
  25317. "type": "boolean",
  25318. "x-go-name": "ProtectedBranch"
  25319. },
  25320. "topics": {
  25321. "description": "include topics in template repo",
  25322. "type": "boolean",
  25323. "x-go-name": "Topics"
  25324. },
  25325. "webhooks": {
  25326. "description": "include webhooks in template repo",
  25327. "type": "boolean",
  25328. "x-go-name": "Webhooks"
  25329. }
  25330. },
  25331. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25332. },
  25333. "GetFilesOptions": {
  25334. "description": "GetFilesOptions options for retrieving metadate and content of multiple files",
  25335. "type": "object",
  25336. "properties": {
  25337. "files": {
  25338. "description": "Files is the list of file paths to retrieve",
  25339. "type": "array",
  25340. "items": {
  25341. "type": "string"
  25342. },
  25343. "x-go-name": "Files"
  25344. }
  25345. },
  25346. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25347. },
  25348. "GitBlobResponse": {
  25349. "description": "GitBlobResponse represents a git blob",
  25350. "type": "object",
  25351. "properties": {
  25352. "content": {
  25353. "description": "The content of the git blob (may be base64 encoded)",
  25354. "type": "string",
  25355. "x-go-name": "Content"
  25356. },
  25357. "encoding": {
  25358. "description": "The encoding used for the content (e.g., \"base64\")",
  25359. "type": "string",
  25360. "x-go-name": "Encoding"
  25361. },
  25362. "lfs_oid": {
  25363. "description": "The LFS object ID if this blob is stored in LFS",
  25364. "type": "string",
  25365. "x-go-name": "LfsOid"
  25366. },
  25367. "lfs_size": {
  25368. "description": "The size of the LFS object if this blob is stored in LFS",
  25369. "type": "integer",
  25370. "format": "int64",
  25371. "x-go-name": "LfsSize"
  25372. },
  25373. "sha": {
  25374. "description": "The SHA hash of the git blob",
  25375. "type": "string",
  25376. "x-go-name": "SHA"
  25377. },
  25378. "size": {
  25379. "description": "The size of the git blob in bytes",
  25380. "type": "integer",
  25381. "format": "int64",
  25382. "x-go-name": "Size"
  25383. },
  25384. "url": {
  25385. "description": "The URL to access this git blob",
  25386. "type": "string",
  25387. "x-go-name": "URL"
  25388. }
  25389. },
  25390. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25391. },
  25392. "GitEntry": {
  25393. "description": "GitEntry represents a git tree",
  25394. "type": "object",
  25395. "properties": {
  25396. "mode": {
  25397. "description": "Mode is the file mode (permissions)",
  25398. "type": "string",
  25399. "x-go-name": "Mode"
  25400. },
  25401. "path": {
  25402. "description": "Path is the file or directory path",
  25403. "type": "string",
  25404. "x-go-name": "Path"
  25405. },
  25406. "sha": {
  25407. "description": "SHA is the Git object SHA",
  25408. "type": "string",
  25409. "x-go-name": "SHA"
  25410. },
  25411. "size": {
  25412. "description": "Size is the file size in bytes",
  25413. "type": "integer",
  25414. "format": "int64",
  25415. "x-go-name": "Size"
  25416. },
  25417. "type": {
  25418. "description": "Type indicates if this is a file, directory, or symlink",
  25419. "type": "string",
  25420. "x-go-name": "Type"
  25421. },
  25422. "url": {
  25423. "description": "URL is the API URL for this tree entry",
  25424. "type": "string",
  25425. "x-go-name": "URL"
  25426. }
  25427. },
  25428. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25429. },
  25430. "GitHook": {
  25431. "description": "GitHook represents a Git repository hook",
  25432. "type": "object",
  25433. "properties": {
  25434. "content": {
  25435. "description": "Content contains the script content of the hook",
  25436. "type": "string",
  25437. "x-go-name": "Content"
  25438. },
  25439. "is_active": {
  25440. "description": "IsActive indicates if the hook is active",
  25441. "type": "boolean",
  25442. "x-go-name": "IsActive"
  25443. },
  25444. "name": {
  25445. "description": "Name is the name of the Git hook",
  25446. "type": "string",
  25447. "x-go-name": "Name"
  25448. }
  25449. },
  25450. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25451. },
  25452. "GitObject": {
  25453. "type": "object",
  25454. "title": "GitObject represents a Git object.",
  25455. "properties": {
  25456. "sha": {
  25457. "description": "The SHA hash of the Git object",
  25458. "type": "string",
  25459. "x-go-name": "SHA"
  25460. },
  25461. "type": {
  25462. "description": "The type of the Git object (e.g., commit, tag, tree, blob)",
  25463. "type": "string",
  25464. "x-go-name": "Type"
  25465. },
  25466. "url": {
  25467. "description": "The URL to access this Git object",
  25468. "type": "string",
  25469. "x-go-name": "URL"
  25470. }
  25471. },
  25472. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25473. },
  25474. "GitTreeResponse": {
  25475. "description": "GitTreeResponse returns a git tree",
  25476. "type": "object",
  25477. "properties": {
  25478. "page": {
  25479. "description": "Page is the current page number for pagination",
  25480. "type": "integer",
  25481. "format": "int64",
  25482. "x-go-name": "Page"
  25483. },
  25484. "sha": {
  25485. "description": "SHA is the tree object SHA",
  25486. "type": "string",
  25487. "x-go-name": "SHA"
  25488. },
  25489. "total_count": {
  25490. "description": "TotalCount is the total number of entries in the tree",
  25491. "type": "integer",
  25492. "format": "int64",
  25493. "x-go-name": "TotalCount"
  25494. },
  25495. "tree": {
  25496. "description": "Entries contains the tree entries (files and directories)",
  25497. "type": "array",
  25498. "items": {
  25499. "$ref": "#/definitions/GitEntry"
  25500. },
  25501. "x-go-name": "Entries"
  25502. },
  25503. "truncated": {
  25504. "description": "Truncated indicates if the response was truncated due to size",
  25505. "type": "boolean",
  25506. "x-go-name": "Truncated"
  25507. },
  25508. "url": {
  25509. "description": "URL is the API URL for this tree",
  25510. "type": "string",
  25511. "x-go-name": "URL"
  25512. }
  25513. },
  25514. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25515. },
  25516. "GitignoreTemplateInfo": {
  25517. "description": "GitignoreTemplateInfo name and text of a gitignore template",
  25518. "type": "object",
  25519. "properties": {
  25520. "name": {
  25521. "description": "Name is the name of the gitignore template",
  25522. "type": "string",
  25523. "x-go-name": "Name"
  25524. },
  25525. "source": {
  25526. "description": "Source contains the content of the gitignore template",
  25527. "type": "string",
  25528. "x-go-name": "Source"
  25529. }
  25530. },
  25531. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25532. },
  25533. "Hook": {
  25534. "description": "Hook a hook is a web hook when one repository changed",
  25535. "type": "object",
  25536. "properties": {
  25537. "active": {
  25538. "description": "Whether the webhook is active and will be triggered",
  25539. "type": "boolean",
  25540. "x-go-name": "Active"
  25541. },
  25542. "authorization_header": {
  25543. "description": "Authorization header to include in webhook requests",
  25544. "type": "string",
  25545. "x-go-name": "AuthorizationHeader"
  25546. },
  25547. "branch_filter": {
  25548. "description": "Branch filter pattern to determine which branches trigger the webhook",
  25549. "type": "string",
  25550. "x-go-name": "BranchFilter"
  25551. },
  25552. "config": {
  25553. "description": "Configuration settings for the webhook",
  25554. "type": "object",
  25555. "additionalProperties": {
  25556. "type": "string"
  25557. },
  25558. "x-go-name": "Config"
  25559. },
  25560. "created_at": {
  25561. "type": "string",
  25562. "format": "date-time",
  25563. "x-go-name": "Created"
  25564. },
  25565. "events": {
  25566. "description": "List of events that trigger this webhook",
  25567. "type": "array",
  25568. "items": {
  25569. "type": "string"
  25570. },
  25571. "x-go-name": "Events"
  25572. },
  25573. "id": {
  25574. "description": "The unique identifier of the webhook",
  25575. "type": "integer",
  25576. "format": "int64",
  25577. "x-go-name": "ID"
  25578. },
  25579. "type": {
  25580. "description": "The type of the webhook (e.g., gitea, slack, discord)",
  25581. "type": "string",
  25582. "x-go-name": "Type"
  25583. },
  25584. "updated_at": {
  25585. "type": "string",
  25586. "format": "date-time",
  25587. "x-go-name": "Updated"
  25588. }
  25589. },
  25590. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25591. },
  25592. "Identity": {
  25593. "description": "Identity for a person's identity like an author or committer",
  25594. "type": "object",
  25595. "properties": {
  25596. "email": {
  25597. "type": "string",
  25598. "format": "email",
  25599. "x-go-name": "Email"
  25600. },
  25601. "name": {
  25602. "description": "Name is the person's name",
  25603. "type": "string",
  25604. "x-go-name": "Name"
  25605. }
  25606. },
  25607. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25608. },
  25609. "InternalTracker": {
  25610. "description": "InternalTracker represents settings for internal tracker",
  25611. "type": "object",
  25612. "properties": {
  25613. "allow_only_contributors_to_track_time": {
  25614. "description": "Let only contributors track time (Built-in issue tracker)",
  25615. "type": "boolean",
  25616. "x-go-name": "AllowOnlyContributorsToTrackTime"
  25617. },
  25618. "enable_issue_dependencies": {
  25619. "description": "Enable dependencies for issues and pull requests (Built-in issue tracker)",
  25620. "type": "boolean",
  25621. "x-go-name": "EnableIssueDependencies"
  25622. },
  25623. "enable_time_tracker": {
  25624. "description": "Enable time tracking (Built-in issue tracker)",
  25625. "type": "boolean",
  25626. "x-go-name": "EnableTimeTracker"
  25627. }
  25628. },
  25629. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25630. },
  25631. "Issue": {
  25632. "description": "Issue represents an issue in a repository",
  25633. "type": "object",
  25634. "properties": {
  25635. "assets": {
  25636. "type": "array",
  25637. "items": {
  25638. "$ref": "#/definitions/Attachment"
  25639. },
  25640. "x-go-name": "Attachments"
  25641. },
  25642. "assignee": {
  25643. "$ref": "#/definitions/User"
  25644. },
  25645. "assignees": {
  25646. "type": "array",
  25647. "items": {
  25648. "$ref": "#/definitions/User"
  25649. },
  25650. "x-go-name": "Assignees"
  25651. },
  25652. "body": {
  25653. "type": "string",
  25654. "x-go-name": "Body"
  25655. },
  25656. "closed_at": {
  25657. "type": "string",
  25658. "format": "date-time",
  25659. "x-go-name": "Closed"
  25660. },
  25661. "comments": {
  25662. "type": "integer",
  25663. "format": "int64",
  25664. "x-go-name": "Comments"
  25665. },
  25666. "created_at": {
  25667. "type": "string",
  25668. "format": "date-time",
  25669. "x-go-name": "Created"
  25670. },
  25671. "due_date": {
  25672. "type": "string",
  25673. "format": "date-time",
  25674. "x-go-name": "Deadline"
  25675. },
  25676. "html_url": {
  25677. "type": "string",
  25678. "x-go-name": "HTMLURL"
  25679. },
  25680. "id": {
  25681. "type": "integer",
  25682. "format": "int64",
  25683. "x-go-name": "ID"
  25684. },
  25685. "is_locked": {
  25686. "type": "boolean",
  25687. "x-go-name": "IsLocked"
  25688. },
  25689. "labels": {
  25690. "type": "array",
  25691. "items": {
  25692. "$ref": "#/definitions/Label"
  25693. },
  25694. "x-go-name": "Labels"
  25695. },
  25696. "milestone": {
  25697. "$ref": "#/definitions/Milestone"
  25698. },
  25699. "number": {
  25700. "type": "integer",
  25701. "format": "int64",
  25702. "x-go-name": "Index"
  25703. },
  25704. "original_author": {
  25705. "type": "string",
  25706. "x-go-name": "OriginalAuthor"
  25707. },
  25708. "original_author_id": {
  25709. "type": "integer",
  25710. "format": "int64",
  25711. "x-go-name": "OriginalAuthorID"
  25712. },
  25713. "pin_order": {
  25714. "type": "integer",
  25715. "format": "int64",
  25716. "x-go-name": "PinOrder"
  25717. },
  25718. "pull_request": {
  25719. "$ref": "#/definitions/PullRequestMeta"
  25720. },
  25721. "ref": {
  25722. "type": "string",
  25723. "x-go-name": "Ref"
  25724. },
  25725. "repository": {
  25726. "$ref": "#/definitions/RepositoryMeta"
  25727. },
  25728. "state": {
  25729. "$ref": "#/definitions/StateType"
  25730. },
  25731. "time_estimate": {
  25732. "type": "integer",
  25733. "format": "int64",
  25734. "x-go-name": "TimeEstimate"
  25735. },
  25736. "title": {
  25737. "type": "string",
  25738. "x-go-name": "Title"
  25739. },
  25740. "updated_at": {
  25741. "type": "string",
  25742. "format": "date-time",
  25743. "x-go-name": "Updated"
  25744. },
  25745. "url": {
  25746. "type": "string",
  25747. "x-go-name": "URL"
  25748. },
  25749. "user": {
  25750. "$ref": "#/definitions/User"
  25751. }
  25752. },
  25753. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25754. },
  25755. "IssueConfig": {
  25756. "type": "object",
  25757. "properties": {
  25758. "blank_issues_enabled": {
  25759. "type": "boolean",
  25760. "x-go-name": "BlankIssuesEnabled"
  25761. },
  25762. "contact_links": {
  25763. "type": "array",
  25764. "items": {
  25765. "$ref": "#/definitions/IssueConfigContactLink"
  25766. },
  25767. "x-go-name": "ContactLinks"
  25768. }
  25769. },
  25770. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25771. },
  25772. "IssueConfigContactLink": {
  25773. "type": "object",
  25774. "properties": {
  25775. "about": {
  25776. "type": "string",
  25777. "x-go-name": "About"
  25778. },
  25779. "name": {
  25780. "type": "string",
  25781. "x-go-name": "Name"
  25782. },
  25783. "url": {
  25784. "type": "string",
  25785. "x-go-name": "URL"
  25786. }
  25787. },
  25788. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25789. },
  25790. "IssueConfigValidation": {
  25791. "type": "object",
  25792. "properties": {
  25793. "message": {
  25794. "type": "string",
  25795. "x-go-name": "Message"
  25796. },
  25797. "valid": {
  25798. "type": "boolean",
  25799. "x-go-name": "Valid"
  25800. }
  25801. },
  25802. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25803. },
  25804. "IssueDeadline": {
  25805. "description": "IssueDeadline represents an issue deadline",
  25806. "type": "object",
  25807. "properties": {
  25808. "due_date": {
  25809. "type": "string",
  25810. "format": "date-time",
  25811. "x-go-name": "Deadline"
  25812. }
  25813. },
  25814. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25815. },
  25816. "IssueFormField": {
  25817. "description": "IssueFormField represents a form field",
  25818. "type": "object",
  25819. "properties": {
  25820. "attributes": {
  25821. "type": "object",
  25822. "additionalProperties": {},
  25823. "x-go-name": "Attributes"
  25824. },
  25825. "id": {
  25826. "type": "string",
  25827. "x-go-name": "ID"
  25828. },
  25829. "type": {
  25830. "$ref": "#/definitions/IssueFormFieldType"
  25831. },
  25832. "validations": {
  25833. "type": "object",
  25834. "additionalProperties": {},
  25835. "x-go-name": "Validations"
  25836. },
  25837. "visible": {
  25838. "type": "array",
  25839. "items": {
  25840. "$ref": "#/definitions/IssueFormFieldVisible"
  25841. },
  25842. "x-go-name": "Visible"
  25843. }
  25844. },
  25845. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25846. },
  25847. "IssueFormFieldType": {
  25848. "type": "string",
  25849. "title": "IssueFormFieldType defines issue form field type, can be \"markdown\", \"textarea\", \"input\", \"dropdown\" or \"checkboxes\"",
  25850. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25851. },
  25852. "IssueFormFieldVisible": {
  25853. "description": "IssueFormFieldVisible defines issue form field visible",
  25854. "type": "string",
  25855. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25856. },
  25857. "IssueLabelsOption": {
  25858. "description": "IssueLabelsOption a collection of labels",
  25859. "type": "object",
  25860. "properties": {
  25861. "labels": {
  25862. "description": "Labels can be a list of integers representing label IDs\nor a list of strings representing label names",
  25863. "type": "array",
  25864. "items": {},
  25865. "x-go-name": "Labels"
  25866. }
  25867. },
  25868. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25869. },
  25870. "IssueMeta": {
  25871. "description": "IssueMeta basic issue information",
  25872. "type": "object",
  25873. "properties": {
  25874. "index": {
  25875. "type": "integer",
  25876. "format": "int64",
  25877. "x-go-name": "Index"
  25878. },
  25879. "owner": {
  25880. "description": "owner of the issue's repo",
  25881. "type": "string",
  25882. "x-go-name": "Owner"
  25883. },
  25884. "repo": {
  25885. "type": "string",
  25886. "x-go-name": "Name"
  25887. }
  25888. },
  25889. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25890. },
  25891. "IssueTemplate": {
  25892. "description": "IssueTemplate represents an issue template for a repository",
  25893. "type": "object",
  25894. "properties": {
  25895. "about": {
  25896. "type": "string",
  25897. "x-go-name": "About"
  25898. },
  25899. "assignees": {
  25900. "$ref": "#/definitions/IssueTemplateStringSlice"
  25901. },
  25902. "body": {
  25903. "type": "array",
  25904. "items": {
  25905. "$ref": "#/definitions/IssueFormField"
  25906. },
  25907. "x-go-name": "Fields"
  25908. },
  25909. "content": {
  25910. "type": "string",
  25911. "x-go-name": "Content"
  25912. },
  25913. "file_name": {
  25914. "type": "string",
  25915. "x-go-name": "FileName"
  25916. },
  25917. "labels": {
  25918. "$ref": "#/definitions/IssueTemplateStringSlice"
  25919. },
  25920. "name": {
  25921. "type": "string",
  25922. "x-go-name": "Name"
  25923. },
  25924. "ref": {
  25925. "type": "string",
  25926. "x-go-name": "Ref"
  25927. },
  25928. "title": {
  25929. "type": "string",
  25930. "x-go-name": "Title"
  25931. }
  25932. },
  25933. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25934. },
  25935. "IssueTemplateStringSlice": {
  25936. "type": "array",
  25937. "items": {
  25938. "type": "string"
  25939. },
  25940. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25941. },
  25942. "Label": {
  25943. "description": "Label a label to an issue or a pr",
  25944. "type": "object",
  25945. "properties": {
  25946. "color": {
  25947. "type": "string",
  25948. "x-go-name": "Color",
  25949. "example": "00aabb"
  25950. },
  25951. "description": {
  25952. "description": "Description provides additional context about the label's purpose",
  25953. "type": "string",
  25954. "x-go-name": "Description"
  25955. },
  25956. "exclusive": {
  25957. "type": "boolean",
  25958. "x-go-name": "Exclusive",
  25959. "example": false
  25960. },
  25961. "id": {
  25962. "description": "ID is the unique identifier for the label",
  25963. "type": "integer",
  25964. "format": "int64",
  25965. "x-go-name": "ID"
  25966. },
  25967. "is_archived": {
  25968. "type": "boolean",
  25969. "x-go-name": "IsArchived",
  25970. "example": false
  25971. },
  25972. "name": {
  25973. "description": "Name is the display name of the label",
  25974. "type": "string",
  25975. "x-go-name": "Name"
  25976. },
  25977. "url": {
  25978. "description": "URL is the API endpoint for accessing this label",
  25979. "type": "string",
  25980. "x-go-name": "URL"
  25981. }
  25982. },
  25983. "x-go-package": "code.gitea.io/gitea/modules/structs"
  25984. },
  25985. "LabelTemplate": {
  25986. "description": "LabelTemplate info of a Label template",
  25987. "type": "object",
  25988. "properties": {
  25989. "color": {
  25990. "type": "string",
  25991. "x-go-name": "Color",
  25992. "example": "00aabb"
  25993. },
  25994. "description": {
  25995. "description": "Description provides additional context about the label template's purpose",
  25996. "type": "string",
  25997. "x-go-name": "Description"
  25998. },
  25999. "exclusive": {
  26000. "type": "boolean",
  26001. "x-go-name": "Exclusive",
  26002. "example": false
  26003. },
  26004. "name": {
  26005. "description": "Name is the display name of the label template",
  26006. "type": "string",
  26007. "x-go-name": "Name"
  26008. }
  26009. },
  26010. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26011. },
  26012. "LicenseTemplateInfo": {
  26013. "description": "LicensesInfo contains information about a License",
  26014. "type": "object",
  26015. "properties": {
  26016. "body": {
  26017. "description": "Body contains the full text of the license",
  26018. "type": "string",
  26019. "x-go-name": "Body"
  26020. },
  26021. "implementation": {
  26022. "description": "Implementation contains license implementation details",
  26023. "type": "string",
  26024. "x-go-name": "Implementation"
  26025. },
  26026. "key": {
  26027. "description": "Key is the unique identifier for the license template",
  26028. "type": "string",
  26029. "x-go-name": "Key"
  26030. },
  26031. "name": {
  26032. "description": "Name is the display name of the license",
  26033. "type": "string",
  26034. "x-go-name": "Name"
  26035. },
  26036. "url": {
  26037. "description": "URL is the reference URL for the license",
  26038. "type": "string",
  26039. "x-go-name": "URL"
  26040. }
  26041. },
  26042. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26043. },
  26044. "LicensesTemplateListEntry": {
  26045. "description": "LicensesListEntry is used for the API",
  26046. "type": "object",
  26047. "properties": {
  26048. "key": {
  26049. "description": "Key is the unique identifier for the license template",
  26050. "type": "string",
  26051. "x-go-name": "Key"
  26052. },
  26053. "name": {
  26054. "description": "Name is the display name of the license",
  26055. "type": "string",
  26056. "x-go-name": "Name"
  26057. },
  26058. "url": {
  26059. "description": "URL is the reference URL for the license",
  26060. "type": "string",
  26061. "x-go-name": "URL"
  26062. }
  26063. },
  26064. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26065. },
  26066. "LockIssueOption": {
  26067. "description": "LockIssueOption options to lock an issue",
  26068. "type": "object",
  26069. "properties": {
  26070. "lock_reason": {
  26071. "type": "string",
  26072. "x-go-name": "Reason"
  26073. }
  26074. },
  26075. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26076. },
  26077. "MarkdownOption": {
  26078. "description": "MarkdownOption markdown options",
  26079. "type": "object",
  26080. "properties": {
  26081. "Context": {
  26082. "description": "URL path for rendering issue, media and file links\nExpected format: /subpath/{user}/{repo}/src/{branch, commit, tag}/{identifier/path}/{file/dir}\n\nin: body",
  26083. "type": "string"
  26084. },
  26085. "Mode": {
  26086. "description": "Mode to render (markdown, comment, wiki, file)\n\nin: body",
  26087. "type": "string"
  26088. },
  26089. "Text": {
  26090. "description": "Text markdown to render\n\nin: body",
  26091. "type": "string"
  26092. },
  26093. "Wiki": {
  26094. "description": "Is it a wiki page? (use mode=wiki instead)\n\nDeprecated: true\nin: body",
  26095. "type": "boolean"
  26096. }
  26097. },
  26098. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26099. },
  26100. "MarkupOption": {
  26101. "description": "MarkupOption markup options",
  26102. "type": "object",
  26103. "properties": {
  26104. "Context": {
  26105. "description": "URL path for rendering issue, media and file links\nExpected format: /subpath/{user}/{repo}/src/{branch, commit, tag}/{identifier/path}/{file/dir}\n\nin: body",
  26106. "type": "string"
  26107. },
  26108. "FilePath": {
  26109. "description": "File path for detecting extension in file mode\n\nin: body",
  26110. "type": "string"
  26111. },
  26112. "Mode": {
  26113. "description": "Mode to render (markdown, comment, wiki, file)\n\nin: body",
  26114. "type": "string"
  26115. },
  26116. "Text": {
  26117. "description": "Text markup to render\n\nin: body",
  26118. "type": "string"
  26119. },
  26120. "Wiki": {
  26121. "description": "Is it a wiki page? (use mode=wiki instead)\n\nDeprecated: true\nin: body",
  26122. "type": "boolean"
  26123. }
  26124. },
  26125. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26126. },
  26127. "MergePullRequestOption": {
  26128. "description": "MergePullRequestForm form for merging Pull Request",
  26129. "type": "object",
  26130. "required": [
  26131. "Do"
  26132. ],
  26133. "properties": {
  26134. "Do": {
  26135. "type": "string",
  26136. "enum": [
  26137. "merge",
  26138. "rebase",
  26139. "rebase-merge",
  26140. "squash",
  26141. "fast-forward-only",
  26142. "manually-merged"
  26143. ]
  26144. },
  26145. "MergeCommitID": {
  26146. "type": "string"
  26147. },
  26148. "MergeMessageField": {
  26149. "type": "string"
  26150. },
  26151. "MergeTitleField": {
  26152. "type": "string"
  26153. },
  26154. "delete_branch_after_merge": {
  26155. "type": "boolean",
  26156. "x-go-name": "DeleteBranchAfterMerge"
  26157. },
  26158. "force_merge": {
  26159. "type": "boolean",
  26160. "x-go-name": "ForceMerge"
  26161. },
  26162. "head_commit_id": {
  26163. "type": "string",
  26164. "x-go-name": "HeadCommitID"
  26165. },
  26166. "merge_when_checks_succeed": {
  26167. "type": "boolean",
  26168. "x-go-name": "MergeWhenChecksSucceed"
  26169. }
  26170. },
  26171. "x-go-name": "MergePullRequestForm",
  26172. "x-go-package": "code.gitea.io/gitea/services/forms"
  26173. },
  26174. "MergeUpstreamRequest": {
  26175. "type": "object",
  26176. "properties": {
  26177. "branch": {
  26178. "type": "string",
  26179. "x-go-name": "Branch"
  26180. },
  26181. "ff_only": {
  26182. "type": "boolean",
  26183. "x-go-name": "FfOnly"
  26184. }
  26185. },
  26186. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26187. },
  26188. "MergeUpstreamResponse": {
  26189. "type": "object",
  26190. "properties": {
  26191. "merge_type": {
  26192. "type": "string",
  26193. "x-go-name": "MergeStyle"
  26194. }
  26195. },
  26196. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26197. },
  26198. "MigrateRepoOptions": {
  26199. "description": "MigrateRepoOptions options for migrating repository's\nthis is used to interact with api v1",
  26200. "type": "object",
  26201. "required": [
  26202. "clone_addr",
  26203. "repo_name"
  26204. ],
  26205. "properties": {
  26206. "auth_password": {
  26207. "type": "string",
  26208. "x-go-name": "AuthPassword"
  26209. },
  26210. "auth_token": {
  26211. "type": "string",
  26212. "x-go-name": "AuthToken"
  26213. },
  26214. "auth_username": {
  26215. "type": "string",
  26216. "x-go-name": "AuthUsername"
  26217. },
  26218. "aws_access_key_id": {
  26219. "type": "string",
  26220. "x-go-name": "AWSAccessKeyID"
  26221. },
  26222. "aws_secret_access_key": {
  26223. "type": "string",
  26224. "x-go-name": "AWSSecretAccessKey"
  26225. },
  26226. "clone_addr": {
  26227. "type": "string",
  26228. "x-go-name": "CloneAddr"
  26229. },
  26230. "description": {
  26231. "type": "string",
  26232. "x-go-name": "Description"
  26233. },
  26234. "issues": {
  26235. "type": "boolean",
  26236. "x-go-name": "Issues"
  26237. },
  26238. "labels": {
  26239. "type": "boolean",
  26240. "x-go-name": "Labels"
  26241. },
  26242. "lfs": {
  26243. "type": "boolean",
  26244. "x-go-name": "LFS"
  26245. },
  26246. "lfs_endpoint": {
  26247. "type": "string",
  26248. "x-go-name": "LFSEndpoint"
  26249. },
  26250. "milestones": {
  26251. "type": "boolean",
  26252. "x-go-name": "Milestones"
  26253. },
  26254. "mirror": {
  26255. "type": "boolean",
  26256. "x-go-name": "Mirror"
  26257. },
  26258. "mirror_interval": {
  26259. "type": "string",
  26260. "x-go-name": "MirrorInterval"
  26261. },
  26262. "private": {
  26263. "type": "boolean",
  26264. "x-go-name": "Private"
  26265. },
  26266. "pull_requests": {
  26267. "type": "boolean",
  26268. "x-go-name": "PullRequests"
  26269. },
  26270. "releases": {
  26271. "type": "boolean",
  26272. "x-go-name": "Releases"
  26273. },
  26274. "repo_name": {
  26275. "type": "string",
  26276. "x-go-name": "RepoName"
  26277. },
  26278. "repo_owner": {
  26279. "description": "the organization's name or individual user's name who will own the migrated repository",
  26280. "type": "string",
  26281. "x-go-name": "RepoOwner"
  26282. },
  26283. "service": {
  26284. "type": "string",
  26285. "enum": [
  26286. "git",
  26287. "github",
  26288. "gitea",
  26289. "gitlab",
  26290. "gogs",
  26291. "onedev",
  26292. "gitbucket",
  26293. "codebase",
  26294. "codecommit"
  26295. ],
  26296. "x-go-name": "Service"
  26297. },
  26298. "uid": {
  26299. "description": "deprecated (only for backwards compatibility, use repo_owner instead)",
  26300. "type": "integer",
  26301. "format": "int64",
  26302. "x-go-name": "RepoOwnerID"
  26303. },
  26304. "wiki": {
  26305. "type": "boolean",
  26306. "x-go-name": "Wiki"
  26307. }
  26308. },
  26309. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26310. },
  26311. "Milestone": {
  26312. "description": "Milestone milestone is a collection of issues on one repository",
  26313. "type": "object",
  26314. "properties": {
  26315. "closed_at": {
  26316. "type": "string",
  26317. "format": "date-time",
  26318. "x-go-name": "Closed"
  26319. },
  26320. "closed_issues": {
  26321. "description": "ClosedIssues is the number of closed issues in this milestone",
  26322. "type": "integer",
  26323. "format": "int64",
  26324. "x-go-name": "ClosedIssues"
  26325. },
  26326. "created_at": {
  26327. "type": "string",
  26328. "format": "date-time",
  26329. "x-go-name": "Created"
  26330. },
  26331. "description": {
  26332. "description": "Description provides details about the milestone",
  26333. "type": "string",
  26334. "x-go-name": "Description"
  26335. },
  26336. "due_on": {
  26337. "type": "string",
  26338. "format": "date-time",
  26339. "x-go-name": "Deadline"
  26340. },
  26341. "id": {
  26342. "description": "ID is the unique identifier for the milestone",
  26343. "type": "integer",
  26344. "format": "int64",
  26345. "x-go-name": "ID"
  26346. },
  26347. "open_issues": {
  26348. "description": "OpenIssues is the number of open issues in this milestone",
  26349. "type": "integer",
  26350. "format": "int64",
  26351. "x-go-name": "OpenIssues"
  26352. },
  26353. "state": {
  26354. "$ref": "#/definitions/StateType"
  26355. },
  26356. "title": {
  26357. "description": "Title is the title of the milestone",
  26358. "type": "string",
  26359. "x-go-name": "Title"
  26360. },
  26361. "updated_at": {
  26362. "type": "string",
  26363. "format": "date-time",
  26364. "x-go-name": "Updated"
  26365. }
  26366. },
  26367. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26368. },
  26369. "NewIssuePinsAllowed": {
  26370. "description": "NewIssuePinsAllowed represents an API response that says if new Issue Pins are allowed",
  26371. "type": "object",
  26372. "properties": {
  26373. "issues": {
  26374. "type": "boolean",
  26375. "x-go-name": "Issues"
  26376. },
  26377. "pull_requests": {
  26378. "type": "boolean",
  26379. "x-go-name": "PullRequests"
  26380. }
  26381. },
  26382. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26383. },
  26384. "NodeInfo": {
  26385. "description": "NodeInfo contains standardized way of exposing metadata about a server running one of the distributed social networks",
  26386. "type": "object",
  26387. "properties": {
  26388. "metadata": {
  26389. "description": "Metadata contains free form key value pairs for software specific values",
  26390. "type": "object",
  26391. "x-go-name": "Metadata"
  26392. },
  26393. "openRegistrations": {
  26394. "description": "OpenRegistrations indicates if new user registrations are accepted",
  26395. "type": "boolean",
  26396. "x-go-name": "OpenRegistrations"
  26397. },
  26398. "protocols": {
  26399. "description": "Protocols lists the protocols supported by this server",
  26400. "type": "array",
  26401. "items": {
  26402. "type": "string"
  26403. },
  26404. "x-go-name": "Protocols"
  26405. },
  26406. "services": {
  26407. "$ref": "#/definitions/NodeInfoServices"
  26408. },
  26409. "software": {
  26410. "$ref": "#/definitions/NodeInfoSoftware"
  26411. },
  26412. "usage": {
  26413. "$ref": "#/definitions/NodeInfoUsage"
  26414. },
  26415. "version": {
  26416. "description": "Version specifies the schema version",
  26417. "type": "string",
  26418. "x-go-name": "Version"
  26419. }
  26420. },
  26421. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26422. },
  26423. "NodeInfoServices": {
  26424. "description": "NodeInfoServices contains the third party sites this server can connect to via their application API",
  26425. "type": "object",
  26426. "properties": {
  26427. "inbound": {
  26428. "description": "Inbound lists services that can deliver content to this server",
  26429. "type": "array",
  26430. "items": {
  26431. "type": "string"
  26432. },
  26433. "x-go-name": "Inbound"
  26434. },
  26435. "outbound": {
  26436. "description": "Outbound lists services this server can deliver content to",
  26437. "type": "array",
  26438. "items": {
  26439. "type": "string"
  26440. },
  26441. "x-go-name": "Outbound"
  26442. }
  26443. },
  26444. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26445. },
  26446. "NodeInfoSoftware": {
  26447. "description": "NodeInfoSoftware contains Metadata about server software in use",
  26448. "type": "object",
  26449. "properties": {
  26450. "homepage": {
  26451. "description": "Homepage is the URL to the homepage of this server software",
  26452. "type": "string",
  26453. "x-go-name": "Homepage"
  26454. },
  26455. "name": {
  26456. "description": "Name is the canonical name of this server software",
  26457. "type": "string",
  26458. "x-go-name": "Name"
  26459. },
  26460. "repository": {
  26461. "description": "Repository is the URL to the source code repository",
  26462. "type": "string",
  26463. "x-go-name": "Repository"
  26464. },
  26465. "version": {
  26466. "description": "Version is the version of this server software",
  26467. "type": "string",
  26468. "x-go-name": "Version"
  26469. }
  26470. },
  26471. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26472. },
  26473. "NodeInfoUsage": {
  26474. "description": "NodeInfoUsage contains usage statistics for this server",
  26475. "type": "object",
  26476. "properties": {
  26477. "localComments": {
  26478. "description": "LocalComments is the total amount of comments made by users local to this server",
  26479. "type": "integer",
  26480. "format": "int64",
  26481. "x-go-name": "LocalComments"
  26482. },
  26483. "localPosts": {
  26484. "description": "LocalPosts is the total amount of posts made by users local to this server",
  26485. "type": "integer",
  26486. "format": "int64",
  26487. "x-go-name": "LocalPosts"
  26488. },
  26489. "users": {
  26490. "$ref": "#/definitions/NodeInfoUsageUsers"
  26491. }
  26492. },
  26493. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26494. },
  26495. "NodeInfoUsageUsers": {
  26496. "description": "NodeInfoUsageUsers contains statistics about the users of this server",
  26497. "type": "object",
  26498. "properties": {
  26499. "activeHalfyear": {
  26500. "description": "ActiveHalfyear is the amount of users that signed in at least once in the last 180 days",
  26501. "type": "integer",
  26502. "format": "int64",
  26503. "x-go-name": "ActiveHalfyear"
  26504. },
  26505. "activeMonth": {
  26506. "description": "ActiveMonth is the amount of users that signed in at least once in the last 30 days",
  26507. "type": "integer",
  26508. "format": "int64",
  26509. "x-go-name": "ActiveMonth"
  26510. },
  26511. "total": {
  26512. "description": "Total is the total amount of users on this server",
  26513. "type": "integer",
  26514. "format": "int64",
  26515. "x-go-name": "Total"
  26516. }
  26517. },
  26518. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26519. },
  26520. "Note": {
  26521. "description": "Note contains information related to a git note",
  26522. "type": "object",
  26523. "properties": {
  26524. "commit": {
  26525. "$ref": "#/definitions/Commit"
  26526. },
  26527. "message": {
  26528. "description": "The content message of the git note",
  26529. "type": "string",
  26530. "x-go-name": "Message"
  26531. }
  26532. },
  26533. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26534. },
  26535. "NotificationCount": {
  26536. "description": "NotificationCount number of unread notifications",
  26537. "type": "object",
  26538. "properties": {
  26539. "new": {
  26540. "description": "New is the number of unread notifications",
  26541. "type": "integer",
  26542. "format": "int64",
  26543. "x-go-name": "New"
  26544. }
  26545. },
  26546. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26547. },
  26548. "NotificationSubject": {
  26549. "description": "NotificationSubject contains the notification subject (Issue/Pull/Commit)",
  26550. "type": "object",
  26551. "properties": {
  26552. "html_url": {
  26553. "description": "HTMLURL is the web URL for the notification subject",
  26554. "type": "string",
  26555. "x-go-name": "HTMLURL"
  26556. },
  26557. "latest_comment_html_url": {
  26558. "description": "LatestCommentHTMLURL is the web URL for the latest comment",
  26559. "type": "string",
  26560. "x-go-name": "LatestCommentHTMLURL"
  26561. },
  26562. "latest_comment_url": {
  26563. "description": "LatestCommentURL is the API URL for the latest comment",
  26564. "type": "string",
  26565. "x-go-name": "LatestCommentURL"
  26566. },
  26567. "state": {
  26568. "$ref": "#/definitions/StateType"
  26569. },
  26570. "title": {
  26571. "description": "Title is the title of the notification subject",
  26572. "type": "string",
  26573. "x-go-name": "Title"
  26574. },
  26575. "type": {
  26576. "$ref": "#/definitions/NotifySubjectType"
  26577. },
  26578. "url": {
  26579. "description": "URL is the API URL for the notification subject",
  26580. "type": "string",
  26581. "x-go-name": "URL"
  26582. }
  26583. },
  26584. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26585. },
  26586. "NotificationThread": {
  26587. "description": "NotificationThread expose Notification on API",
  26588. "type": "object",
  26589. "properties": {
  26590. "id": {
  26591. "description": "ID is the unique identifier for the notification thread",
  26592. "type": "integer",
  26593. "format": "int64",
  26594. "x-go-name": "ID"
  26595. },
  26596. "pinned": {
  26597. "description": "Pinned indicates if the notification is pinned",
  26598. "type": "boolean",
  26599. "x-go-name": "Pinned"
  26600. },
  26601. "repository": {
  26602. "$ref": "#/definitions/Repository"
  26603. },
  26604. "subject": {
  26605. "$ref": "#/definitions/NotificationSubject"
  26606. },
  26607. "unread": {
  26608. "description": "Unread indicates if the notification has been read",
  26609. "type": "boolean",
  26610. "x-go-name": "Unread"
  26611. },
  26612. "updated_at": {
  26613. "description": "UpdatedAt is the time when the notification was last updated",
  26614. "type": "string",
  26615. "format": "date-time",
  26616. "x-go-name": "UpdatedAt"
  26617. },
  26618. "url": {
  26619. "description": "URL is the API URL for this notification thread",
  26620. "type": "string",
  26621. "x-go-name": "URL"
  26622. }
  26623. },
  26624. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26625. },
  26626. "NotifySubjectType": {
  26627. "description": "NotifySubjectType represent type of notification subject",
  26628. "type": "string",
  26629. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26630. },
  26631. "OAuth2Application": {
  26632. "type": "object",
  26633. "title": "OAuth2Application represents an OAuth2 application.",
  26634. "properties": {
  26635. "client_id": {
  26636. "description": "The client ID of the OAuth2 application",
  26637. "type": "string",
  26638. "x-go-name": "ClientID"
  26639. },
  26640. "client_secret": {
  26641. "description": "The client secret of the OAuth2 application",
  26642. "type": "string",
  26643. "x-go-name": "ClientSecret"
  26644. },
  26645. "confidential_client": {
  26646. "description": "Whether the client is confidential",
  26647. "type": "boolean",
  26648. "x-go-name": "ConfidentialClient"
  26649. },
  26650. "created": {
  26651. "description": "The timestamp when the application was created",
  26652. "type": "string",
  26653. "format": "date-time",
  26654. "x-go-name": "Created"
  26655. },
  26656. "id": {
  26657. "description": "The unique identifier of the OAuth2 application",
  26658. "type": "integer",
  26659. "format": "int64",
  26660. "x-go-name": "ID"
  26661. },
  26662. "name": {
  26663. "description": "The name of the OAuth2 application",
  26664. "type": "string",
  26665. "x-go-name": "Name"
  26666. },
  26667. "redirect_uris": {
  26668. "description": "The list of allowed redirect URIs",
  26669. "type": "array",
  26670. "items": {
  26671. "type": "string"
  26672. },
  26673. "x-go-name": "RedirectURIs"
  26674. },
  26675. "skip_secondary_authorization": {
  26676. "description": "Whether to skip secondary authorization",
  26677. "type": "boolean",
  26678. "x-go-name": "SkipSecondaryAuthorization"
  26679. }
  26680. },
  26681. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26682. },
  26683. "Organization": {
  26684. "description": "Organization represents an organization",
  26685. "type": "object",
  26686. "properties": {
  26687. "avatar_url": {
  26688. "description": "The URL of the organization's avatar",
  26689. "type": "string",
  26690. "x-go-name": "AvatarURL"
  26691. },
  26692. "description": {
  26693. "description": "The description of the organization",
  26694. "type": "string",
  26695. "x-go-name": "Description"
  26696. },
  26697. "email": {
  26698. "description": "The email address of the organization",
  26699. "type": "string",
  26700. "x-go-name": "Email"
  26701. },
  26702. "full_name": {
  26703. "description": "The full display name of the organization",
  26704. "type": "string",
  26705. "x-go-name": "FullName"
  26706. },
  26707. "id": {
  26708. "description": "The unique identifier of the organization",
  26709. "type": "integer",
  26710. "format": "int64",
  26711. "x-go-name": "ID"
  26712. },
  26713. "location": {
  26714. "description": "The location of the organization",
  26715. "type": "string",
  26716. "x-go-name": "Location"
  26717. },
  26718. "name": {
  26719. "description": "The name of the organization",
  26720. "type": "string",
  26721. "x-go-name": "Name"
  26722. },
  26723. "repo_admin_change_team_access": {
  26724. "description": "Whether repository administrators can change team access",
  26725. "type": "boolean",
  26726. "x-go-name": "RepoAdminChangeTeamAccess"
  26727. },
  26728. "username": {
  26729. "description": "username of the organization\ndeprecated",
  26730. "type": "string",
  26731. "x-go-name": "UserName"
  26732. },
  26733. "visibility": {
  26734. "description": "The visibility level of the organization (public, limited, private)",
  26735. "type": "string",
  26736. "x-go-name": "Visibility"
  26737. },
  26738. "website": {
  26739. "description": "The website URL of the organization",
  26740. "type": "string",
  26741. "x-go-name": "Website"
  26742. }
  26743. },
  26744. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26745. },
  26746. "OrganizationPermissions": {
  26747. "description": "OrganizationPermissions list different users permissions on an organization",
  26748. "type": "object",
  26749. "properties": {
  26750. "can_create_repository": {
  26751. "description": "Whether the user can create repositories in the organization",
  26752. "type": "boolean",
  26753. "x-go-name": "CanCreateRepository"
  26754. },
  26755. "can_read": {
  26756. "description": "Whether the user can read the organization",
  26757. "type": "boolean",
  26758. "x-go-name": "CanRead"
  26759. },
  26760. "can_write": {
  26761. "description": "Whether the user can write to the organization",
  26762. "type": "boolean",
  26763. "x-go-name": "CanWrite"
  26764. },
  26765. "is_admin": {
  26766. "description": "Whether the user is an admin of the organization",
  26767. "type": "boolean",
  26768. "x-go-name": "IsAdmin"
  26769. },
  26770. "is_owner": {
  26771. "description": "Whether the user is an owner of the organization",
  26772. "type": "boolean",
  26773. "x-go-name": "IsOwner"
  26774. }
  26775. },
  26776. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26777. },
  26778. "PRBranchInfo": {
  26779. "description": "PRBranchInfo information about a branch",
  26780. "type": "object",
  26781. "properties": {
  26782. "label": {
  26783. "description": "The display name of the branch",
  26784. "type": "string",
  26785. "x-go-name": "Name"
  26786. },
  26787. "ref": {
  26788. "description": "The git reference of the branch",
  26789. "type": "string",
  26790. "x-go-name": "Ref"
  26791. },
  26792. "repo": {
  26793. "$ref": "#/definitions/Repository"
  26794. },
  26795. "repo_id": {
  26796. "description": "The unique identifier of the repository",
  26797. "type": "integer",
  26798. "format": "int64",
  26799. "x-go-name": "RepoID"
  26800. },
  26801. "sha": {
  26802. "description": "The commit SHA of the branch head",
  26803. "type": "string",
  26804. "x-go-name": "Sha"
  26805. }
  26806. },
  26807. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26808. },
  26809. "Package": {
  26810. "description": "Package represents a package",
  26811. "type": "object",
  26812. "properties": {
  26813. "created_at": {
  26814. "type": "string",
  26815. "format": "date-time",
  26816. "x-go-name": "CreatedAt"
  26817. },
  26818. "creator": {
  26819. "$ref": "#/definitions/User"
  26820. },
  26821. "html_url": {
  26822. "description": "The HTML URL to view the package",
  26823. "type": "string",
  26824. "x-go-name": "HTMLURL"
  26825. },
  26826. "id": {
  26827. "description": "The unique identifier of the package",
  26828. "type": "integer",
  26829. "format": "int64",
  26830. "x-go-name": "ID"
  26831. },
  26832. "name": {
  26833. "description": "The name of the package",
  26834. "type": "string",
  26835. "x-go-name": "Name"
  26836. },
  26837. "owner": {
  26838. "$ref": "#/definitions/User"
  26839. },
  26840. "repository": {
  26841. "$ref": "#/definitions/Repository"
  26842. },
  26843. "type": {
  26844. "description": "The type of the package (e.g., npm, maven, docker)",
  26845. "type": "string",
  26846. "x-go-name": "Type"
  26847. },
  26848. "version": {
  26849. "description": "The version of the package",
  26850. "type": "string",
  26851. "x-go-name": "Version"
  26852. }
  26853. },
  26854. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26855. },
  26856. "PackageFile": {
  26857. "description": "PackageFile represents a package file",
  26858. "type": "object",
  26859. "properties": {
  26860. "id": {
  26861. "description": "The unique identifier of the package file",
  26862. "type": "integer",
  26863. "format": "int64",
  26864. "x-go-name": "ID"
  26865. },
  26866. "md5": {
  26867. "description": "The MD5 hash of the package file",
  26868. "type": "string",
  26869. "x-go-name": "HashMD5"
  26870. },
  26871. "name": {
  26872. "description": "The name of the package file",
  26873. "type": "string",
  26874. "x-go-name": "Name"
  26875. },
  26876. "sha1": {
  26877. "description": "The SHA1 hash of the package file",
  26878. "type": "string",
  26879. "x-go-name": "HashSHA1"
  26880. },
  26881. "sha256": {
  26882. "description": "The SHA256 hash of the package file",
  26883. "type": "string",
  26884. "x-go-name": "HashSHA256"
  26885. },
  26886. "sha512": {
  26887. "description": "The SHA512 hash of the package file",
  26888. "type": "string",
  26889. "x-go-name": "HashSHA512"
  26890. },
  26891. "size": {
  26892. "description": "The size of the package file in bytes",
  26893. "type": "integer",
  26894. "format": "int64",
  26895. "x-go-name": "Size"
  26896. }
  26897. },
  26898. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26899. },
  26900. "PayloadCommit": {
  26901. "description": "PayloadCommit represents a commit",
  26902. "type": "object",
  26903. "properties": {
  26904. "added": {
  26905. "description": "List of files added in this commit",
  26906. "type": "array",
  26907. "items": {
  26908. "type": "string"
  26909. },
  26910. "x-go-name": "Added"
  26911. },
  26912. "author": {
  26913. "$ref": "#/definitions/PayloadUser"
  26914. },
  26915. "committer": {
  26916. "$ref": "#/definitions/PayloadUser"
  26917. },
  26918. "id": {
  26919. "description": "sha1 hash of the commit",
  26920. "type": "string",
  26921. "x-go-name": "ID"
  26922. },
  26923. "message": {
  26924. "description": "The commit message",
  26925. "type": "string",
  26926. "x-go-name": "Message"
  26927. },
  26928. "modified": {
  26929. "description": "List of files modified in this commit",
  26930. "type": "array",
  26931. "items": {
  26932. "type": "string"
  26933. },
  26934. "x-go-name": "Modified"
  26935. },
  26936. "removed": {
  26937. "description": "List of files removed in this commit",
  26938. "type": "array",
  26939. "items": {
  26940. "type": "string"
  26941. },
  26942. "x-go-name": "Removed"
  26943. },
  26944. "timestamp": {
  26945. "type": "string",
  26946. "format": "date-time",
  26947. "x-go-name": "Timestamp"
  26948. },
  26949. "url": {
  26950. "description": "The URL to view this commit",
  26951. "type": "string",
  26952. "x-go-name": "URL"
  26953. },
  26954. "verification": {
  26955. "$ref": "#/definitions/PayloadCommitVerification"
  26956. }
  26957. },
  26958. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26959. },
  26960. "PayloadCommitVerification": {
  26961. "description": "PayloadCommitVerification represents the GPG verification of a commit",
  26962. "type": "object",
  26963. "properties": {
  26964. "payload": {
  26965. "description": "The signed payload content",
  26966. "type": "string",
  26967. "x-go-name": "Payload"
  26968. },
  26969. "reason": {
  26970. "description": "The reason for the verification status",
  26971. "type": "string",
  26972. "x-go-name": "Reason"
  26973. },
  26974. "signature": {
  26975. "description": "The GPG signature of the commit",
  26976. "type": "string",
  26977. "x-go-name": "Signature"
  26978. },
  26979. "signer": {
  26980. "$ref": "#/definitions/PayloadUser"
  26981. },
  26982. "verified": {
  26983. "description": "Whether the commit signature is verified",
  26984. "type": "boolean",
  26985. "x-go-name": "Verified"
  26986. }
  26987. },
  26988. "x-go-package": "code.gitea.io/gitea/modules/structs"
  26989. },
  26990. "PayloadUser": {
  26991. "description": "PayloadUser represents the author or committer of a commit",
  26992. "type": "object",
  26993. "properties": {
  26994. "email": {
  26995. "type": "string",
  26996. "format": "email",
  26997. "x-go-name": "Email"
  26998. },
  26999. "name": {
  27000. "description": "Full name of the commit author",
  27001. "type": "string",
  27002. "x-go-name": "Name"
  27003. },
  27004. "username": {
  27005. "description": "username of the user",
  27006. "type": "string",
  27007. "x-go-name": "UserName"
  27008. }
  27009. },
  27010. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27011. },
  27012. "Permission": {
  27013. "description": "Permission represents a set of permissions",
  27014. "type": "object",
  27015. "properties": {
  27016. "admin": {
  27017. "type": "boolean",
  27018. "x-go-name": "Admin"
  27019. },
  27020. "pull": {
  27021. "type": "boolean",
  27022. "x-go-name": "Pull"
  27023. },
  27024. "push": {
  27025. "type": "boolean",
  27026. "x-go-name": "Push"
  27027. }
  27028. },
  27029. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27030. },
  27031. "PublicKey": {
  27032. "description": "PublicKey publickey is a user key to push code to repository",
  27033. "type": "object",
  27034. "properties": {
  27035. "created_at": {
  27036. "type": "string",
  27037. "format": "date-time",
  27038. "x-go-name": "Created"
  27039. },
  27040. "fingerprint": {
  27041. "description": "Fingerprint is the key's fingerprint",
  27042. "type": "string",
  27043. "x-go-name": "Fingerprint"
  27044. },
  27045. "id": {
  27046. "description": "ID is the unique identifier for the public key",
  27047. "type": "integer",
  27048. "format": "int64",
  27049. "x-go-name": "ID"
  27050. },
  27051. "key": {
  27052. "description": "Key contains the actual SSH public key content",
  27053. "type": "string",
  27054. "x-go-name": "Key"
  27055. },
  27056. "key_type": {
  27057. "description": "KeyType indicates the type of the SSH key",
  27058. "type": "string",
  27059. "x-go-name": "KeyType"
  27060. },
  27061. "last_used_at": {
  27062. "description": "Updated is the time when the key was last used",
  27063. "type": "string",
  27064. "format": "date-time",
  27065. "x-go-name": "Updated"
  27066. },
  27067. "read_only": {
  27068. "description": "ReadOnly indicates if the key has read-only access",
  27069. "type": "boolean",
  27070. "x-go-name": "ReadOnly"
  27071. },
  27072. "title": {
  27073. "description": "Title is the human-readable name for the key",
  27074. "type": "string",
  27075. "x-go-name": "Title"
  27076. },
  27077. "url": {
  27078. "description": "URL is the API URL for this key",
  27079. "type": "string",
  27080. "x-go-name": "URL"
  27081. },
  27082. "user": {
  27083. "$ref": "#/definitions/User"
  27084. }
  27085. },
  27086. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27087. },
  27088. "PullRequest": {
  27089. "description": "PullRequest represents a pull request",
  27090. "type": "object",
  27091. "properties": {
  27092. "additions": {
  27093. "description": "The number of lines added in the pull request",
  27094. "type": "integer",
  27095. "format": "int64",
  27096. "x-go-name": "Additions"
  27097. },
  27098. "allow_maintainer_edit": {
  27099. "description": "Whether maintainers can edit the pull request",
  27100. "type": "boolean",
  27101. "x-go-name": "AllowMaintainerEdit"
  27102. },
  27103. "assignee": {
  27104. "$ref": "#/definitions/User"
  27105. },
  27106. "assignees": {
  27107. "description": "The list of users assigned to the pull request",
  27108. "type": "array",
  27109. "items": {
  27110. "$ref": "#/definitions/User"
  27111. },
  27112. "x-go-name": "Assignees"
  27113. },
  27114. "base": {
  27115. "$ref": "#/definitions/PRBranchInfo"
  27116. },
  27117. "body": {
  27118. "description": "The description body of the pull request",
  27119. "type": "string",
  27120. "x-go-name": "Body"
  27121. },
  27122. "changed_files": {
  27123. "description": "The number of files changed in the pull request",
  27124. "type": "integer",
  27125. "format": "int64",
  27126. "x-go-name": "ChangedFiles"
  27127. },
  27128. "closed_at": {
  27129. "type": "string",
  27130. "format": "date-time",
  27131. "x-go-name": "Closed"
  27132. },
  27133. "comments": {
  27134. "description": "The number of comments on the pull request",
  27135. "type": "integer",
  27136. "format": "int64",
  27137. "x-go-name": "Comments"
  27138. },
  27139. "created_at": {
  27140. "type": "string",
  27141. "format": "date-time",
  27142. "x-go-name": "Created"
  27143. },
  27144. "deletions": {
  27145. "description": "The number of lines deleted in the pull request",
  27146. "type": "integer",
  27147. "format": "int64",
  27148. "x-go-name": "Deletions"
  27149. },
  27150. "diff_url": {
  27151. "description": "The URL to download the diff patch",
  27152. "type": "string",
  27153. "x-go-name": "DiffURL"
  27154. },
  27155. "draft": {
  27156. "description": "Whether the pull request is a draft",
  27157. "type": "boolean",
  27158. "x-go-name": "Draft"
  27159. },
  27160. "due_date": {
  27161. "type": "string",
  27162. "format": "date-time",
  27163. "x-go-name": "Deadline"
  27164. },
  27165. "head": {
  27166. "$ref": "#/definitions/PRBranchInfo"
  27167. },
  27168. "html_url": {
  27169. "description": "The HTML URL to view the pull request",
  27170. "type": "string",
  27171. "x-go-name": "HTMLURL"
  27172. },
  27173. "id": {
  27174. "description": "The unique identifier of the pull request",
  27175. "type": "integer",
  27176. "format": "int64",
  27177. "x-go-name": "ID"
  27178. },
  27179. "is_locked": {
  27180. "description": "Whether the pull request conversation is locked",
  27181. "type": "boolean",
  27182. "x-go-name": "IsLocked"
  27183. },
  27184. "labels": {
  27185. "description": "The labels attached to the pull request",
  27186. "type": "array",
  27187. "items": {
  27188. "$ref": "#/definitions/Label"
  27189. },
  27190. "x-go-name": "Labels"
  27191. },
  27192. "merge_base": {
  27193. "description": "The merge base commit SHA",
  27194. "type": "string",
  27195. "x-go-name": "MergeBase"
  27196. },
  27197. "merge_commit_sha": {
  27198. "description": "The SHA of the merge commit",
  27199. "type": "string",
  27200. "x-go-name": "MergedCommitID"
  27201. },
  27202. "mergeable": {
  27203. "description": "Whether the pull request can be merged",
  27204. "type": "boolean",
  27205. "x-go-name": "Mergeable"
  27206. },
  27207. "merged": {
  27208. "description": "Whether the pull request has been merged",
  27209. "type": "boolean",
  27210. "x-go-name": "HasMerged"
  27211. },
  27212. "merged_at": {
  27213. "type": "string",
  27214. "format": "date-time",
  27215. "x-go-name": "Merged"
  27216. },
  27217. "merged_by": {
  27218. "$ref": "#/definitions/User"
  27219. },
  27220. "milestone": {
  27221. "$ref": "#/definitions/Milestone"
  27222. },
  27223. "number": {
  27224. "description": "The pull request number",
  27225. "type": "integer",
  27226. "format": "int64",
  27227. "x-go-name": "Index"
  27228. },
  27229. "patch_url": {
  27230. "description": "The URL to download the patch file",
  27231. "type": "string",
  27232. "x-go-name": "PatchURL"
  27233. },
  27234. "pin_order": {
  27235. "description": "The pin order for the pull request",
  27236. "type": "integer",
  27237. "format": "int64",
  27238. "x-go-name": "PinOrder"
  27239. },
  27240. "requested_reviewers": {
  27241. "description": "The users requested to review the pull request",
  27242. "type": "array",
  27243. "items": {
  27244. "$ref": "#/definitions/User"
  27245. },
  27246. "x-go-name": "RequestedReviewers"
  27247. },
  27248. "requested_reviewers_teams": {
  27249. "description": "The teams requested to review the pull request",
  27250. "type": "array",
  27251. "items": {
  27252. "$ref": "#/definitions/Team"
  27253. },
  27254. "x-go-name": "RequestedReviewersTeams"
  27255. },
  27256. "review_comments": {
  27257. "description": "number of review comments made on the diff of a PR review (not including comments on commits or issues in a PR)",
  27258. "type": "integer",
  27259. "format": "int64",
  27260. "x-go-name": "ReviewComments"
  27261. },
  27262. "state": {
  27263. "$ref": "#/definitions/StateType"
  27264. },
  27265. "title": {
  27266. "description": "The title of the pull request",
  27267. "type": "string",
  27268. "x-go-name": "Title"
  27269. },
  27270. "updated_at": {
  27271. "type": "string",
  27272. "format": "date-time",
  27273. "x-go-name": "Updated"
  27274. },
  27275. "url": {
  27276. "description": "The API URL of the pull request",
  27277. "type": "string",
  27278. "x-go-name": "URL"
  27279. },
  27280. "user": {
  27281. "$ref": "#/definitions/User"
  27282. }
  27283. },
  27284. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27285. },
  27286. "PullRequestMeta": {
  27287. "description": "PullRequestMeta PR info if an issue is a PR",
  27288. "type": "object",
  27289. "properties": {
  27290. "draft": {
  27291. "type": "boolean",
  27292. "x-go-name": "IsWorkInProgress"
  27293. },
  27294. "html_url": {
  27295. "type": "string",
  27296. "x-go-name": "HTMLURL"
  27297. },
  27298. "merged": {
  27299. "type": "boolean",
  27300. "x-go-name": "HasMerged"
  27301. },
  27302. "merged_at": {
  27303. "type": "string",
  27304. "format": "date-time",
  27305. "x-go-name": "Merged"
  27306. }
  27307. },
  27308. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27309. },
  27310. "PullReview": {
  27311. "description": "PullReview represents a pull request review",
  27312. "type": "object",
  27313. "properties": {
  27314. "body": {
  27315. "type": "string",
  27316. "x-go-name": "Body"
  27317. },
  27318. "comments_count": {
  27319. "type": "integer",
  27320. "format": "int64",
  27321. "x-go-name": "CodeCommentsCount"
  27322. },
  27323. "commit_id": {
  27324. "type": "string",
  27325. "x-go-name": "CommitID"
  27326. },
  27327. "dismissed": {
  27328. "type": "boolean",
  27329. "x-go-name": "Dismissed"
  27330. },
  27331. "html_url": {
  27332. "description": "HTMLURL is the web URL for viewing the review",
  27333. "type": "string",
  27334. "x-go-name": "HTMLURL"
  27335. },
  27336. "id": {
  27337. "type": "integer",
  27338. "format": "int64",
  27339. "x-go-name": "ID"
  27340. },
  27341. "official": {
  27342. "type": "boolean",
  27343. "x-go-name": "Official"
  27344. },
  27345. "pull_request_url": {
  27346. "description": "HTMLPullURL is the web URL for the pull request",
  27347. "type": "string",
  27348. "x-go-name": "HTMLPullURL"
  27349. },
  27350. "stale": {
  27351. "type": "boolean",
  27352. "x-go-name": "Stale"
  27353. },
  27354. "state": {
  27355. "$ref": "#/definitions/ReviewStateType"
  27356. },
  27357. "submitted_at": {
  27358. "type": "string",
  27359. "format": "date-time",
  27360. "x-go-name": "Submitted"
  27361. },
  27362. "team": {
  27363. "$ref": "#/definitions/Team"
  27364. },
  27365. "updated_at": {
  27366. "type": "string",
  27367. "format": "date-time",
  27368. "x-go-name": "Updated"
  27369. },
  27370. "user": {
  27371. "$ref": "#/definitions/User"
  27372. }
  27373. },
  27374. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27375. },
  27376. "PullReviewComment": {
  27377. "description": "PullReviewComment represents a comment on a pull request review",
  27378. "type": "object",
  27379. "properties": {
  27380. "body": {
  27381. "type": "string",
  27382. "x-go-name": "Body"
  27383. },
  27384. "commit_id": {
  27385. "type": "string",
  27386. "x-go-name": "CommitID"
  27387. },
  27388. "created_at": {
  27389. "type": "string",
  27390. "format": "date-time",
  27391. "x-go-name": "Created"
  27392. },
  27393. "diff_hunk": {
  27394. "type": "string",
  27395. "x-go-name": "DiffHunk"
  27396. },
  27397. "html_url": {
  27398. "type": "string",
  27399. "x-go-name": "HTMLURL"
  27400. },
  27401. "id": {
  27402. "type": "integer",
  27403. "format": "int64",
  27404. "x-go-name": "ID"
  27405. },
  27406. "original_commit_id": {
  27407. "type": "string",
  27408. "x-go-name": "OrigCommitID"
  27409. },
  27410. "original_position": {
  27411. "type": "integer",
  27412. "format": "uint64",
  27413. "x-go-name": "OldLineNum"
  27414. },
  27415. "path": {
  27416. "type": "string",
  27417. "x-go-name": "Path"
  27418. },
  27419. "position": {
  27420. "type": "integer",
  27421. "format": "uint64",
  27422. "x-go-name": "LineNum"
  27423. },
  27424. "pull_request_review_id": {
  27425. "type": "integer",
  27426. "format": "int64",
  27427. "x-go-name": "ReviewID"
  27428. },
  27429. "pull_request_url": {
  27430. "type": "string",
  27431. "x-go-name": "HTMLPullURL"
  27432. },
  27433. "resolver": {
  27434. "$ref": "#/definitions/User"
  27435. },
  27436. "updated_at": {
  27437. "type": "string",
  27438. "format": "date-time",
  27439. "x-go-name": "Updated"
  27440. },
  27441. "user": {
  27442. "$ref": "#/definitions/User"
  27443. }
  27444. },
  27445. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27446. },
  27447. "PullReviewRequestOptions": {
  27448. "description": "PullReviewRequestOptions are options to add or remove pull review requests",
  27449. "type": "object",
  27450. "properties": {
  27451. "reviewers": {
  27452. "type": "array",
  27453. "items": {
  27454. "type": "string"
  27455. },
  27456. "x-go-name": "Reviewers"
  27457. },
  27458. "team_reviewers": {
  27459. "type": "array",
  27460. "items": {
  27461. "type": "string"
  27462. },
  27463. "x-go-name": "TeamReviewers"
  27464. }
  27465. },
  27466. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27467. },
  27468. "PushMirror": {
  27469. "description": "PushMirror represents information of a push mirror",
  27470. "type": "object",
  27471. "properties": {
  27472. "created": {
  27473. "type": "string",
  27474. "format": "date-time",
  27475. "x-go-name": "CreatedUnix"
  27476. },
  27477. "interval": {
  27478. "description": "The sync interval for automatic updates",
  27479. "type": "string",
  27480. "x-go-name": "Interval"
  27481. },
  27482. "last_error": {
  27483. "description": "The last error message encountered during sync",
  27484. "type": "string",
  27485. "x-go-name": "LastError"
  27486. },
  27487. "last_update": {
  27488. "type": "string",
  27489. "format": "date-time",
  27490. "x-go-name": "LastUpdateUnix"
  27491. },
  27492. "remote_address": {
  27493. "description": "The remote repository URL being mirrored to",
  27494. "type": "string",
  27495. "x-go-name": "RemoteAddress"
  27496. },
  27497. "remote_name": {
  27498. "description": "The name of the remote in the git configuration",
  27499. "type": "string",
  27500. "x-go-name": "RemoteName"
  27501. },
  27502. "repo_name": {
  27503. "description": "The name of the source repository",
  27504. "type": "string",
  27505. "x-go-name": "RepoName"
  27506. },
  27507. "sync_on_commit": {
  27508. "description": "Whether to sync on every commit",
  27509. "type": "boolean",
  27510. "x-go-name": "SyncOnCommit"
  27511. }
  27512. },
  27513. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27514. },
  27515. "Reaction": {
  27516. "description": "Reaction contain one reaction",
  27517. "type": "object",
  27518. "properties": {
  27519. "content": {
  27520. "description": "The reaction content (e.g., emoji or reaction type)",
  27521. "type": "string",
  27522. "x-go-name": "Reaction"
  27523. },
  27524. "created_at": {
  27525. "type": "string",
  27526. "format": "date-time",
  27527. "x-go-name": "Created"
  27528. },
  27529. "user": {
  27530. "$ref": "#/definitions/User"
  27531. }
  27532. },
  27533. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27534. },
  27535. "Reference": {
  27536. "type": "object",
  27537. "title": "Reference represents a Git reference.",
  27538. "properties": {
  27539. "object": {
  27540. "$ref": "#/definitions/GitObject"
  27541. },
  27542. "ref": {
  27543. "description": "The name of the Git reference (e.g., refs/heads/main)",
  27544. "type": "string",
  27545. "x-go-name": "Ref"
  27546. },
  27547. "url": {
  27548. "description": "The URL to access this Git reference",
  27549. "type": "string",
  27550. "x-go-name": "URL"
  27551. }
  27552. },
  27553. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27554. },
  27555. "Release": {
  27556. "description": "Release represents a repository release",
  27557. "type": "object",
  27558. "properties": {
  27559. "assets": {
  27560. "description": "The files attached to the release",
  27561. "type": "array",
  27562. "items": {
  27563. "$ref": "#/definitions/Attachment"
  27564. },
  27565. "x-go-name": "Attachments"
  27566. },
  27567. "author": {
  27568. "$ref": "#/definitions/User"
  27569. },
  27570. "body": {
  27571. "description": "The release notes or description",
  27572. "type": "string",
  27573. "x-go-name": "Note"
  27574. },
  27575. "created_at": {
  27576. "type": "string",
  27577. "format": "date-time",
  27578. "x-go-name": "CreatedAt"
  27579. },
  27580. "draft": {
  27581. "description": "Whether the release is a draft",
  27582. "type": "boolean",
  27583. "x-go-name": "IsDraft"
  27584. },
  27585. "html_url": {
  27586. "description": "The HTML URL to view the release",
  27587. "type": "string",
  27588. "x-go-name": "HTMLURL"
  27589. },
  27590. "id": {
  27591. "description": "The unique identifier of the release",
  27592. "type": "integer",
  27593. "format": "int64",
  27594. "x-go-name": "ID"
  27595. },
  27596. "name": {
  27597. "description": "The display title of the release",
  27598. "type": "string",
  27599. "x-go-name": "Title"
  27600. },
  27601. "prerelease": {
  27602. "description": "Whether the release is a prerelease",
  27603. "type": "boolean",
  27604. "x-go-name": "IsPrerelease"
  27605. },
  27606. "published_at": {
  27607. "type": "string",
  27608. "format": "date-time",
  27609. "x-go-name": "PublishedAt"
  27610. },
  27611. "tag_name": {
  27612. "description": "The name of the git tag associated with the release",
  27613. "type": "string",
  27614. "x-go-name": "TagName"
  27615. },
  27616. "tarball_url": {
  27617. "description": "The URL to download the tarball archive",
  27618. "type": "string",
  27619. "x-go-name": "TarURL"
  27620. },
  27621. "target_commitish": {
  27622. "description": "The target commitish for the release",
  27623. "type": "string",
  27624. "x-go-name": "Target"
  27625. },
  27626. "upload_url": {
  27627. "description": "The URL template for uploading release assets",
  27628. "type": "string",
  27629. "x-go-name": "UploadURL"
  27630. },
  27631. "url": {
  27632. "description": "The API URL of the release",
  27633. "type": "string",
  27634. "x-go-name": "URL"
  27635. },
  27636. "zipball_url": {
  27637. "description": "The URL to download the zip archive",
  27638. "type": "string",
  27639. "x-go-name": "ZipURL"
  27640. }
  27641. },
  27642. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27643. },
  27644. "RenameBranchRepoOption": {
  27645. "description": "RenameBranchRepoOption options when renaming a branch in a repository",
  27646. "type": "object",
  27647. "required": [
  27648. "name"
  27649. ],
  27650. "properties": {
  27651. "name": {
  27652. "description": "New branch name",
  27653. "type": "string",
  27654. "uniqueItems": true,
  27655. "x-go-name": "Name"
  27656. }
  27657. },
  27658. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27659. },
  27660. "RenameOrgOption": {
  27661. "description": "RenameOrgOption options when renaming an organization",
  27662. "type": "object",
  27663. "required": [
  27664. "new_name"
  27665. ],
  27666. "properties": {
  27667. "new_name": {
  27668. "description": "New username for this org. This name cannot be in use yet by any other user.",
  27669. "type": "string",
  27670. "uniqueItems": true,
  27671. "x-go-name": "NewName"
  27672. }
  27673. },
  27674. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27675. },
  27676. "RenameUserOption": {
  27677. "description": "RenameUserOption options when renaming a user",
  27678. "type": "object",
  27679. "required": [
  27680. "new_username"
  27681. ],
  27682. "properties": {
  27683. "new_username": {
  27684. "description": "New username for this user. This name cannot be in use yet by any other user.",
  27685. "type": "string",
  27686. "uniqueItems": true,
  27687. "x-go-name": "NewName"
  27688. }
  27689. },
  27690. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27691. },
  27692. "RepoCollaboratorPermission": {
  27693. "description": "RepoCollaboratorPermission to get repository permission for a collaborator",
  27694. "type": "object",
  27695. "properties": {
  27696. "permission": {
  27697. "description": "Permission level of the collaborator",
  27698. "type": "string",
  27699. "x-go-name": "Permission"
  27700. },
  27701. "role_name": {
  27702. "description": "RoleName is the name of the permission role",
  27703. "type": "string",
  27704. "x-go-name": "RoleName"
  27705. },
  27706. "user": {
  27707. "$ref": "#/definitions/User"
  27708. }
  27709. },
  27710. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27711. },
  27712. "RepoCommit": {
  27713. "type": "object",
  27714. "title": "RepoCommit contains information of a commit in the context of a repository.",
  27715. "properties": {
  27716. "author": {
  27717. "$ref": "#/definitions/CommitUser"
  27718. },
  27719. "committer": {
  27720. "$ref": "#/definitions/CommitUser"
  27721. },
  27722. "message": {
  27723. "description": "Message is the commit message",
  27724. "type": "string",
  27725. "x-go-name": "Message"
  27726. },
  27727. "tree": {
  27728. "$ref": "#/definitions/CommitMeta"
  27729. },
  27730. "url": {
  27731. "description": "URL is the API URL for the commit",
  27732. "type": "string",
  27733. "x-go-name": "URL"
  27734. },
  27735. "verification": {
  27736. "$ref": "#/definitions/PayloadCommitVerification"
  27737. }
  27738. },
  27739. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27740. },
  27741. "RepoTopicOptions": {
  27742. "description": "RepoTopicOptions a collection of repo topic names",
  27743. "type": "object",
  27744. "properties": {
  27745. "topics": {
  27746. "description": "list of topic names",
  27747. "type": "array",
  27748. "items": {
  27749. "type": "string"
  27750. },
  27751. "x-go-name": "Topics"
  27752. }
  27753. },
  27754. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27755. },
  27756. "RepoTransfer": {
  27757. "description": "RepoTransfer represents a pending repo transfer",
  27758. "type": "object",
  27759. "properties": {
  27760. "doer": {
  27761. "$ref": "#/definitions/User"
  27762. },
  27763. "recipient": {
  27764. "$ref": "#/definitions/User"
  27765. },
  27766. "teams": {
  27767. "type": "array",
  27768. "items": {
  27769. "$ref": "#/definitions/Team"
  27770. },
  27771. "x-go-name": "Teams"
  27772. }
  27773. },
  27774. "x-go-package": "code.gitea.io/gitea/modules/structs"
  27775. },
  27776. "Repository": {
  27777. "description": "Repository represents a repository",
  27778. "type": "object",
  27779. "properties": {
  27780. "allow_fast_forward_only_merge": {
  27781. "type": "boolean",
  27782. "x-go-name": "AllowFastForwardOnly"
  27783. },
  27784. "allow_manual_merge": {
  27785. "type": "boolean",
  27786. "x-go-name": "AllowManualMerge"
  27787. },
  27788. "allow_merge_commits": {
  27789. "type": "boolean",
  27790. "x-go-name": "AllowMerge"
  27791. },
  27792. "allow_rebase": {
  27793. "type": "boolean",
  27794. "x-go-name": "AllowRebase"
  27795. },
  27796. "allow_rebase_explicit": {
  27797. "type": "boolean",
  27798. "x-go-name": "AllowRebaseMerge"
  27799. },
  27800. "allow_rebase_update": {
  27801. "type": "boolean",
  27802. "x-go-name": "AllowRebaseUpdate"
  27803. },
  27804. "allow_squash_merge": {
  27805. "type": "boolean",
  27806. "x-go-name": "AllowSquash"
  27807. },
  27808. "archived": {
  27809. "type": "boolean",
  27810. "x-go-name": "Archived"
  27811. },
  27812. "archived_at": {
  27813. "type": "string",
  27814. "format": "date-time",
  27815. "x-go-name": "ArchivedAt"
  27816. },
  27817. "autodetect_manual_merge": {
  27818. "type": "boolean",
  27819. "x-go-name": "AutodetectManualMerge"
  27820. },
  27821. "avatar_url": {
  27822. "type": "string",
  27823. "x-go-name": "AvatarURL"
  27824. },
  27825. "clone_url": {
  27826. "type": "string",
  27827. "x-go-name": "CloneURL"
  27828. },
  27829. "created_at": {
  27830. "type": "string",
  27831. "format": "date-time",
  27832. "x-go-name": "Created"
  27833. },
  27834. "default_allow_maintainer_edit": {
  27835. "type": "boolean",
  27836. "x-go-name": "DefaultAllowMaintainerEdit"
  27837. },
  27838. "default_branch": {
  27839. "type": "string",
  27840. "x-go-name": "DefaultBranch"
  27841. },
  27842. "default_delete_branch_after_merge": {
  27843. "type": "boolean",
  27844. "x-go-name": "DefaultDeleteBranchAfterMerge"
  27845. },
  27846. "default_merge_style": {
  27847. "type": "string",
  27848. "x-go-name": "DefaultMergeStyle"
  27849. },
  27850. "description": {
  27851. "type": "string",
  27852. "x-go-name": "Description"
  27853. },
  27854. "empty": {
  27855. "type": "boolean",
  27856. "x-go-name": "Empty"
  27857. },
  27858. "external_tracker": {
  27859. "$ref": "#/definitions/ExternalTracker"
  27860. },
  27861. "external_wiki": {
  27862. "$ref": "#/definitions/ExternalWiki"
  27863. },
  27864. "fork": {
  27865. "type": "boolean",
  27866. "x-go-name": "Fork"
  27867. },
  27868. "forks_count": {
  27869. "type": "integer",
  27870. "format": "int64",
  27871. "x-go-name": "Forks"
  27872. },
  27873. "full_name": {
  27874. "type": "string",
  27875. "x-go-name": "FullName"
  27876. },
  27877. "has_actions": {
  27878. "type": "boolean",
  27879. "x-go-name": "HasActions"
  27880. },
  27881. "has_code": {
  27882. "type": "boolean",
  27883. "x-go-name": "HasCode"
  27884. },
  27885. "has_issues": {
  27886. "type": "boolean",
  27887. "x-go-name": "HasIssues"
  27888. },
  27889. "has_packages": {
  27890. "type": "boolean",
  27891. "x-go-name": "HasPackages"
  27892. },
  27893. "has_projects": {
  27894. "type": "boolean",
  27895. "x-go-name": "HasProjects"
  27896. },
  27897. "has_pull_requests": {
  27898. "type": "boolean",
  27899. "x-go-name": "HasPullRequests"
  27900. },
  27901. "has_releases": {
  27902. "type": "boolean",
  27903. "x-go-name": "HasReleases"
  27904. },
  27905. "has_wiki": {
  27906. "type": "boolean",
  27907. "x-go-name": "HasWiki"
  27908. },
  27909. "html_url": {
  27910. "type": "string",
  27911. "x-go-name": "HTMLURL"
  27912. },
  27913. "id": {
  27914. "type": "integer",
  27915. "format": "int64",
  27916. "x-go-name": "ID"
  27917. },
  27918. "ignore_whitespace_conflicts": {
  27919. "type": "boolean",
  27920. "x-go-name": "IgnoreWhitespaceConflicts"
  27921. },
  27922. "internal": {
  27923. "type": "boolean",
  27924. "x-go-name": "Internal"
  27925. },
  27926. "internal_tracker": {
  27927. "$ref": "#/definitions/InternalTracker"
  27928. },
  27929. "language": {
  27930. "type": "string",
  27931. "x-go-name": "Language"
  27932. },
  27933. "languages_url": {
  27934. "type": "string",
  27935. "x-go-name": "LanguagesURL"
  27936. },
  27937. "licenses": {
  27938. "type": "array",
  27939. "items": {
  27940. "type": "string"
  27941. },
  27942. "x-go-name": "Licenses"
  27943. },
  27944. "link": {
  27945. "type": "string",
  27946. "x-go-name": "Link"
  27947. },
  27948. "mirror": {
  27949. "type": "boolean",
  27950. "x-go-name": "Mirror"
  27951. },
  27952. "mirror_interval": {
  27953. "type": "string",
  27954. "x-go-name": "MirrorInterval"
  27955. },
  27956. "mirror_updated": {
  27957. "type": "string",
  27958. "format": "date-time",
  27959. "x-go-name": "MirrorUpdated"
  27960. },
  27961. "name": {
  27962. "type": "string",
  27963. "x-go-name": "Name"
  27964. },
  27965. "object_format_name": {
  27966. "description": "ObjectFormatName of the underlying git repository",
  27967. "type": "string",
  27968. "enum": [
  27969. "sha1",
  27970. "sha256"
  27971. ],
  27972. "x-go-name": "ObjectFormatName"
  27973. },
  27974. "open_issues_count": {
  27975. "type": "integer",
  27976. "format": "int64",
  27977. "x-go-name": "OpenIssues"
  27978. },
  27979. "open_pr_counter": {
  27980. "type": "integer",
  27981. "format": "int64",
  27982. "x-go-name": "OpenPulls"
  27983. },
  27984. "original_url": {
  27985. "type": "string",
  27986. "x-go-name": "OriginalURL"
  27987. },
  27988. "owner": {
  27989. "$ref": "#/definitions/User"
  27990. },
  27991. "parent": {
  27992. "$ref": "#/definitions/Repository"
  27993. },
  27994. "permissions": {
  27995. "$ref": "#/definitions/Permission"
  27996. },
  27997. "private": {
  27998. "type": "boolean",
  27999. "x-go-name": "Private"
  28000. },
  28001. "projects_mode": {
  28002. "type": "string",
  28003. "x-go-name": "ProjectsMode"
  28004. },
  28005. "release_counter": {
  28006. "type": "integer",
  28007. "format": "int64",
  28008. "x-go-name": "Releases"
  28009. },
  28010. "repo_transfer": {
  28011. "$ref": "#/definitions/RepoTransfer"
  28012. },
  28013. "size": {
  28014. "type": "integer",
  28015. "format": "int64",
  28016. "x-go-name": "Size"
  28017. },
  28018. "ssh_url": {
  28019. "type": "string",
  28020. "x-go-name": "SSHURL"
  28021. },
  28022. "stars_count": {
  28023. "type": "integer",
  28024. "format": "int64",
  28025. "x-go-name": "Stars"
  28026. },
  28027. "template": {
  28028. "type": "boolean",
  28029. "x-go-name": "Template"
  28030. },
  28031. "topics": {
  28032. "type": "array",
  28033. "items": {
  28034. "type": "string"
  28035. },
  28036. "x-go-name": "Topics"
  28037. },
  28038. "updated_at": {
  28039. "type": "string",
  28040. "format": "date-time",
  28041. "x-go-name": "Updated"
  28042. },
  28043. "url": {
  28044. "type": "string",
  28045. "x-go-name": "URL"
  28046. },
  28047. "watchers_count": {
  28048. "type": "integer",
  28049. "format": "int64",
  28050. "x-go-name": "Watchers"
  28051. },
  28052. "website": {
  28053. "type": "string",
  28054. "x-go-name": "Website"
  28055. }
  28056. },
  28057. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28058. },
  28059. "RepositoryMeta": {
  28060. "description": "RepositoryMeta basic repository information",
  28061. "type": "object",
  28062. "properties": {
  28063. "full_name": {
  28064. "type": "string",
  28065. "x-go-name": "FullName"
  28066. },
  28067. "id": {
  28068. "type": "integer",
  28069. "format": "int64",
  28070. "x-go-name": "ID"
  28071. },
  28072. "name": {
  28073. "type": "string",
  28074. "x-go-name": "Name"
  28075. },
  28076. "owner": {
  28077. "type": "string",
  28078. "x-go-name": "Owner"
  28079. }
  28080. },
  28081. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28082. },
  28083. "ReviewStateType": {
  28084. "description": "ReviewStateType review state type",
  28085. "type": "string",
  28086. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28087. },
  28088. "SearchResults": {
  28089. "description": "SearchResults results of a successful search",
  28090. "type": "object",
  28091. "properties": {
  28092. "data": {
  28093. "description": "Data contains the repository search results",
  28094. "type": "array",
  28095. "items": {
  28096. "$ref": "#/definitions/Repository"
  28097. },
  28098. "x-go-name": "Data"
  28099. },
  28100. "ok": {
  28101. "description": "OK indicates if the search was successful",
  28102. "type": "boolean",
  28103. "x-go-name": "OK"
  28104. }
  28105. },
  28106. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28107. },
  28108. "Secret": {
  28109. "description": "Secret represents a secret",
  28110. "type": "object",
  28111. "properties": {
  28112. "created_at": {
  28113. "type": "string",
  28114. "format": "date-time",
  28115. "x-go-name": "Created"
  28116. },
  28117. "description": {
  28118. "description": "the secret's description",
  28119. "type": "string",
  28120. "x-go-name": "Description"
  28121. },
  28122. "name": {
  28123. "description": "the secret's name",
  28124. "type": "string",
  28125. "x-go-name": "Name"
  28126. }
  28127. },
  28128. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28129. },
  28130. "ServerVersion": {
  28131. "description": "ServerVersion wraps the version of the server",
  28132. "type": "object",
  28133. "properties": {
  28134. "version": {
  28135. "description": "Version is the server version string",
  28136. "type": "string",
  28137. "x-go-name": "Version"
  28138. }
  28139. },
  28140. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28141. },
  28142. "StateType": {
  28143. "description": "StateType issue state type",
  28144. "type": "string",
  28145. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28146. },
  28147. "StopWatch": {
  28148. "description": "StopWatch represent a running stopwatch",
  28149. "type": "object",
  28150. "properties": {
  28151. "created": {
  28152. "type": "string",
  28153. "format": "date-time",
  28154. "x-go-name": "Created"
  28155. },
  28156. "duration": {
  28157. "description": "Duration is a human-readable duration string",
  28158. "type": "string",
  28159. "x-go-name": "Duration"
  28160. },
  28161. "issue_index": {
  28162. "description": "IssueIndex is the index number of the associated issue",
  28163. "type": "integer",
  28164. "format": "int64",
  28165. "x-go-name": "IssueIndex"
  28166. },
  28167. "issue_title": {
  28168. "description": "IssueTitle is the title of the associated issue",
  28169. "type": "string",
  28170. "x-go-name": "IssueTitle"
  28171. },
  28172. "repo_name": {
  28173. "description": "RepoName is the name of the repository",
  28174. "type": "string",
  28175. "x-go-name": "RepoName"
  28176. },
  28177. "repo_owner_name": {
  28178. "description": "RepoOwnerName is the name of the repository owner",
  28179. "type": "string",
  28180. "x-go-name": "RepoOwnerName"
  28181. },
  28182. "seconds": {
  28183. "description": "Seconds is the total elapsed time in seconds",
  28184. "type": "integer",
  28185. "format": "int64",
  28186. "x-go-name": "Seconds"
  28187. }
  28188. },
  28189. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28190. },
  28191. "SubmitPullReviewOptions": {
  28192. "description": "SubmitPullReviewOptions are options to submit a pending pull review",
  28193. "type": "object",
  28194. "properties": {
  28195. "body": {
  28196. "type": "string",
  28197. "x-go-name": "Body"
  28198. },
  28199. "event": {
  28200. "$ref": "#/definitions/ReviewStateType"
  28201. }
  28202. },
  28203. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28204. },
  28205. "Tag": {
  28206. "description": "Tag represents a repository tag",
  28207. "type": "object",
  28208. "properties": {
  28209. "commit": {
  28210. "$ref": "#/definitions/CommitMeta"
  28211. },
  28212. "id": {
  28213. "description": "The ID (SHA) of the tag",
  28214. "type": "string",
  28215. "x-go-name": "ID"
  28216. },
  28217. "message": {
  28218. "description": "The message associated with the tag",
  28219. "type": "string",
  28220. "x-go-name": "Message"
  28221. },
  28222. "name": {
  28223. "description": "The name of the tag",
  28224. "type": "string",
  28225. "x-go-name": "Name"
  28226. },
  28227. "tarball_url": {
  28228. "description": "The URL to download the tarball archive",
  28229. "type": "string",
  28230. "x-go-name": "TarballURL"
  28231. },
  28232. "zipball_url": {
  28233. "description": "The URL to download the zipball archive",
  28234. "type": "string",
  28235. "x-go-name": "ZipballURL"
  28236. }
  28237. },
  28238. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28239. },
  28240. "TagProtection": {
  28241. "description": "TagProtection represents a tag protection",
  28242. "type": "object",
  28243. "properties": {
  28244. "created_at": {
  28245. "type": "string",
  28246. "format": "date-time",
  28247. "x-go-name": "Created"
  28248. },
  28249. "id": {
  28250. "description": "The unique identifier of the tag protection",
  28251. "type": "integer",
  28252. "format": "int64",
  28253. "x-go-name": "ID"
  28254. },
  28255. "name_pattern": {
  28256. "description": "The pattern to match tag names for protection",
  28257. "type": "string",
  28258. "x-go-name": "NamePattern"
  28259. },
  28260. "updated_at": {
  28261. "type": "string",
  28262. "format": "date-time",
  28263. "x-go-name": "Updated"
  28264. },
  28265. "whitelist_teams": {
  28266. "description": "List of team names allowed to create/delete protected tags",
  28267. "type": "array",
  28268. "items": {
  28269. "type": "string"
  28270. },
  28271. "x-go-name": "WhitelistTeams"
  28272. },
  28273. "whitelist_usernames": {
  28274. "description": "List of usernames allowed to create/delete protected tags",
  28275. "type": "array",
  28276. "items": {
  28277. "type": "string"
  28278. },
  28279. "x-go-name": "WhitelistUsernames"
  28280. }
  28281. },
  28282. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28283. },
  28284. "Team": {
  28285. "description": "Team represents a team in an organization",
  28286. "type": "object",
  28287. "properties": {
  28288. "can_create_org_repo": {
  28289. "description": "Whether the team can create repositories in the organization",
  28290. "type": "boolean",
  28291. "x-go-name": "CanCreateOrgRepo"
  28292. },
  28293. "description": {
  28294. "description": "The description of the team",
  28295. "type": "string",
  28296. "x-go-name": "Description"
  28297. },
  28298. "id": {
  28299. "description": "The unique identifier of the team",
  28300. "type": "integer",
  28301. "format": "int64",
  28302. "x-go-name": "ID"
  28303. },
  28304. "includes_all_repositories": {
  28305. "description": "Whether the team has access to all repositories in the organization",
  28306. "type": "boolean",
  28307. "x-go-name": "IncludesAllRepositories"
  28308. },
  28309. "name": {
  28310. "description": "The name of the team",
  28311. "type": "string",
  28312. "x-go-name": "Name"
  28313. },
  28314. "organization": {
  28315. "$ref": "#/definitions/Organization"
  28316. },
  28317. "permission": {
  28318. "type": "string",
  28319. "enum": [
  28320. "none",
  28321. "read",
  28322. "write",
  28323. "admin",
  28324. "owner"
  28325. ],
  28326. "x-go-name": "Permission"
  28327. },
  28328. "units": {
  28329. "type": "array",
  28330. "items": {
  28331. "type": "string"
  28332. },
  28333. "x-go-name": "Units",
  28334. "example": [
  28335. "repo.code",
  28336. "repo.issues",
  28337. "repo.ext_issues",
  28338. "repo.wiki",
  28339. "repo.pulls",
  28340. "repo.releases",
  28341. "repo.projects",
  28342. "repo.ext_wiki"
  28343. ]
  28344. },
  28345. "units_map": {
  28346. "type": "object",
  28347. "additionalProperties": {
  28348. "type": "string"
  28349. },
  28350. "x-go-name": "UnitsMap",
  28351. "example": {
  28352. "repo.code": "read",
  28353. "repo.ext_issues": "none",
  28354. "repo.ext_wiki": "none",
  28355. "repo.issues": "write",
  28356. "repo.projects": "none",
  28357. "repo.pulls": "owner",
  28358. "repo.releases": "none",
  28359. "repo.wiki": "admin"
  28360. }
  28361. }
  28362. },
  28363. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28364. },
  28365. "TimeStamp": {
  28366. "description": "TimeStamp defines a timestamp",
  28367. "type": "integer",
  28368. "format": "int64",
  28369. "x-go-package": "code.gitea.io/gitea/modules/timeutil"
  28370. },
  28371. "TimelineComment": {
  28372. "description": "TimelineComment represents a timeline comment (comment of any type) on a commit or issue",
  28373. "type": "object",
  28374. "properties": {
  28375. "assignee": {
  28376. "$ref": "#/definitions/User"
  28377. },
  28378. "assignee_team": {
  28379. "$ref": "#/definitions/Team"
  28380. },
  28381. "body": {
  28382. "description": "Body contains the timeline event content",
  28383. "type": "string",
  28384. "x-go-name": "Body"
  28385. },
  28386. "created_at": {
  28387. "type": "string",
  28388. "format": "date-time",
  28389. "x-go-name": "Created"
  28390. },
  28391. "dependent_issue": {
  28392. "$ref": "#/definitions/Issue"
  28393. },
  28394. "html_url": {
  28395. "description": "HTMLURL is the web URL for viewing the comment",
  28396. "type": "string",
  28397. "x-go-name": "HTMLURL"
  28398. },
  28399. "id": {
  28400. "description": "ID is the unique identifier for the timeline comment",
  28401. "type": "integer",
  28402. "format": "int64",
  28403. "x-go-name": "ID"
  28404. },
  28405. "issue_url": {
  28406. "description": "IssueURL is the API URL for the issue",
  28407. "type": "string",
  28408. "x-go-name": "IssueURL"
  28409. },
  28410. "label": {
  28411. "$ref": "#/definitions/Label"
  28412. },
  28413. "milestone": {
  28414. "$ref": "#/definitions/Milestone"
  28415. },
  28416. "new_ref": {
  28417. "type": "string",
  28418. "x-go-name": "NewRef"
  28419. },
  28420. "new_title": {
  28421. "type": "string",
  28422. "x-go-name": "NewTitle"
  28423. },
  28424. "old_milestone": {
  28425. "$ref": "#/definitions/Milestone"
  28426. },
  28427. "old_project_id": {
  28428. "type": "integer",
  28429. "format": "int64",
  28430. "x-go-name": "OldProjectID"
  28431. },
  28432. "old_ref": {
  28433. "type": "string",
  28434. "x-go-name": "OldRef"
  28435. },
  28436. "old_title": {
  28437. "type": "string",
  28438. "x-go-name": "OldTitle"
  28439. },
  28440. "project_id": {
  28441. "type": "integer",
  28442. "format": "int64",
  28443. "x-go-name": "ProjectID"
  28444. },
  28445. "pull_request_url": {
  28446. "description": "PRURL is the API URL for the pull request (if applicable)",
  28447. "type": "string",
  28448. "x-go-name": "PRURL"
  28449. },
  28450. "ref_action": {
  28451. "type": "string",
  28452. "x-go-name": "RefAction"
  28453. },
  28454. "ref_comment": {
  28455. "$ref": "#/definitions/Comment"
  28456. },
  28457. "ref_commit_sha": {
  28458. "description": "commit SHA where issue/PR was referenced",
  28459. "type": "string",
  28460. "x-go-name": "RefCommitSHA"
  28461. },
  28462. "ref_issue": {
  28463. "$ref": "#/definitions/Issue"
  28464. },
  28465. "removed_assignee": {
  28466. "description": "whether the assignees were removed or added",
  28467. "type": "boolean",
  28468. "x-go-name": "RemovedAssignee"
  28469. },
  28470. "resolve_doer": {
  28471. "$ref": "#/definitions/User"
  28472. },
  28473. "review_id": {
  28474. "type": "integer",
  28475. "format": "int64",
  28476. "x-go-name": "ReviewID"
  28477. },
  28478. "tracked_time": {
  28479. "$ref": "#/definitions/TrackedTime"
  28480. },
  28481. "type": {
  28482. "description": "Type indicates the type of timeline event",
  28483. "type": "string",
  28484. "x-go-name": "Type"
  28485. },
  28486. "updated_at": {
  28487. "type": "string",
  28488. "format": "date-time",
  28489. "x-go-name": "Updated"
  28490. },
  28491. "user": {
  28492. "$ref": "#/definitions/User"
  28493. }
  28494. },
  28495. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28496. },
  28497. "TopicName": {
  28498. "description": "TopicName a list of repo topic names",
  28499. "type": "object",
  28500. "properties": {
  28501. "topics": {
  28502. "description": "List of topic names",
  28503. "type": "array",
  28504. "items": {
  28505. "type": "string"
  28506. },
  28507. "x-go-name": "TopicNames"
  28508. }
  28509. },
  28510. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28511. },
  28512. "TopicResponse": {
  28513. "description": "TopicResponse for returning topics",
  28514. "type": "object",
  28515. "properties": {
  28516. "created": {
  28517. "description": "The date and time when the topic was created",
  28518. "type": "string",
  28519. "format": "date-time",
  28520. "x-go-name": "Created"
  28521. },
  28522. "id": {
  28523. "description": "The unique identifier of the topic",
  28524. "type": "integer",
  28525. "format": "int64",
  28526. "x-go-name": "ID"
  28527. },
  28528. "repo_count": {
  28529. "description": "The number of repositories using this topic",
  28530. "type": "integer",
  28531. "format": "int64",
  28532. "x-go-name": "RepoCount"
  28533. },
  28534. "topic_name": {
  28535. "description": "The name of the topic",
  28536. "type": "string",
  28537. "x-go-name": "Name"
  28538. },
  28539. "updated": {
  28540. "description": "The date and time when the topic was last updated",
  28541. "type": "string",
  28542. "format": "date-time",
  28543. "x-go-name": "Updated"
  28544. }
  28545. },
  28546. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28547. },
  28548. "TrackedTime": {
  28549. "description": "TrackedTime worked time for an issue / pr",
  28550. "type": "object",
  28551. "properties": {
  28552. "created": {
  28553. "type": "string",
  28554. "format": "date-time",
  28555. "x-go-name": "Created"
  28556. },
  28557. "id": {
  28558. "description": "ID is the unique identifier for the tracked time entry",
  28559. "type": "integer",
  28560. "format": "int64",
  28561. "x-go-name": "ID"
  28562. },
  28563. "issue": {
  28564. "$ref": "#/definitions/Issue"
  28565. },
  28566. "issue_id": {
  28567. "description": "deprecated (only for backwards compatibility)",
  28568. "type": "integer",
  28569. "format": "int64",
  28570. "x-go-name": "IssueID"
  28571. },
  28572. "time": {
  28573. "description": "Time in seconds",
  28574. "type": "integer",
  28575. "format": "int64",
  28576. "x-go-name": "Time"
  28577. },
  28578. "user_id": {
  28579. "description": "deprecated (only for backwards compatibility)",
  28580. "type": "integer",
  28581. "format": "int64",
  28582. "x-go-name": "UserID"
  28583. },
  28584. "user_name": {
  28585. "description": "username of the user",
  28586. "type": "string",
  28587. "x-go-name": "UserName"
  28588. }
  28589. },
  28590. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28591. },
  28592. "TransferRepoOption": {
  28593. "description": "TransferRepoOption options when transfer a repository's ownership",
  28594. "type": "object",
  28595. "required": [
  28596. "new_owner"
  28597. ],
  28598. "properties": {
  28599. "new_owner": {
  28600. "type": "string",
  28601. "x-go-name": "NewOwner"
  28602. },
  28603. "team_ids": {
  28604. "description": "ID of the team or teams to add to the repository. Teams can only be added to organization-owned repositories.",
  28605. "type": "array",
  28606. "items": {
  28607. "type": "integer",
  28608. "format": "int64"
  28609. },
  28610. "x-go-name": "TeamIDs"
  28611. }
  28612. },
  28613. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28614. },
  28615. "UpdateBranchProtectionPriories": {
  28616. "description": "UpdateBranchProtectionPriories a list to update the branch protection rule priorities",
  28617. "type": "object",
  28618. "properties": {
  28619. "ids": {
  28620. "type": "array",
  28621. "items": {
  28622. "type": "integer",
  28623. "format": "int64"
  28624. },
  28625. "x-go-name": "IDs"
  28626. }
  28627. },
  28628. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28629. },
  28630. "UpdateFileOptions": {
  28631. "description": "UpdateFileOptions options for updating files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)",
  28632. "type": "object",
  28633. "required": [
  28634. "sha",
  28635. "content"
  28636. ],
  28637. "properties": {
  28638. "author": {
  28639. "$ref": "#/definitions/Identity"
  28640. },
  28641. "branch": {
  28642. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  28643. "type": "string",
  28644. "x-go-name": "BranchName"
  28645. },
  28646. "committer": {
  28647. "$ref": "#/definitions/Identity"
  28648. },
  28649. "content": {
  28650. "description": "content must be base64 encoded",
  28651. "type": "string",
  28652. "x-go-name": "ContentBase64"
  28653. },
  28654. "dates": {
  28655. "$ref": "#/definitions/CommitDateOptions"
  28656. },
  28657. "from_path": {
  28658. "description": "from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL",
  28659. "type": "string",
  28660. "x-go-name": "FromPath"
  28661. },
  28662. "message": {
  28663. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  28664. "type": "string",
  28665. "x-go-name": "Message"
  28666. },
  28667. "new_branch": {
  28668. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  28669. "type": "string",
  28670. "x-go-name": "NewBranchName"
  28671. },
  28672. "sha": {
  28673. "description": "the blob ID (SHA) for the file that already exists, it is required for changing existing files",
  28674. "type": "string",
  28675. "x-go-name": "SHA"
  28676. },
  28677. "signoff": {
  28678. "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.",
  28679. "type": "boolean",
  28680. "x-go-name": "Signoff"
  28681. }
  28682. },
  28683. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28684. },
  28685. "UpdateRepoAvatarOption": {
  28686. "description": "UpdateRepoAvatarUserOption options when updating the repo avatar",
  28687. "type": "object",
  28688. "properties": {
  28689. "image": {
  28690. "description": "image must be base64 encoded",
  28691. "type": "string",
  28692. "x-go-name": "Image"
  28693. }
  28694. },
  28695. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28696. },
  28697. "UpdateUserAvatarOption": {
  28698. "description": "UpdateUserAvatarUserOption options when updating the user avatar",
  28699. "type": "object",
  28700. "properties": {
  28701. "image": {
  28702. "description": "image must be base64 encoded",
  28703. "type": "string",
  28704. "x-go-name": "Image"
  28705. }
  28706. },
  28707. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28708. },
  28709. "UpdateVariableOption": {
  28710. "description": "UpdateVariableOption the option when updating variable",
  28711. "type": "object",
  28712. "required": [
  28713. "value"
  28714. ],
  28715. "properties": {
  28716. "description": {
  28717. "description": "Description of the variable to update",
  28718. "type": "string",
  28719. "x-go-name": "Description"
  28720. },
  28721. "name": {
  28722. "description": "New name for the variable. If the field is empty, the variable name won't be updated.",
  28723. "type": "string",
  28724. "x-go-name": "Name"
  28725. },
  28726. "value": {
  28727. "description": "Value of the variable to update",
  28728. "type": "string",
  28729. "x-go-name": "Value"
  28730. }
  28731. },
  28732. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28733. },
  28734. "User": {
  28735. "description": "User represents a user",
  28736. "type": "object",
  28737. "properties": {
  28738. "active": {
  28739. "description": "Is user active",
  28740. "type": "boolean",
  28741. "x-go-name": "IsActive"
  28742. },
  28743. "avatar_url": {
  28744. "description": "URL to the user's avatar",
  28745. "type": "string",
  28746. "x-go-name": "AvatarURL"
  28747. },
  28748. "created": {
  28749. "type": "string",
  28750. "format": "date-time",
  28751. "x-go-name": "Created"
  28752. },
  28753. "description": {
  28754. "description": "the user's description",
  28755. "type": "string",
  28756. "x-go-name": "Description"
  28757. },
  28758. "email": {
  28759. "type": "string",
  28760. "format": "email",
  28761. "x-go-name": "Email"
  28762. },
  28763. "followers_count": {
  28764. "description": "user counts",
  28765. "type": "integer",
  28766. "format": "int64",
  28767. "x-go-name": "Followers"
  28768. },
  28769. "following_count": {
  28770. "type": "integer",
  28771. "format": "int64",
  28772. "x-go-name": "Following"
  28773. },
  28774. "full_name": {
  28775. "description": "the user's full name",
  28776. "type": "string",
  28777. "x-go-name": "FullName"
  28778. },
  28779. "html_url": {
  28780. "description": "URL to the user's gitea page",
  28781. "type": "string",
  28782. "x-go-name": "HTMLURL"
  28783. },
  28784. "id": {
  28785. "description": "the user's id",
  28786. "type": "integer",
  28787. "format": "int64",
  28788. "x-go-name": "ID"
  28789. },
  28790. "is_admin": {
  28791. "description": "Is the user an administrator",
  28792. "type": "boolean",
  28793. "x-go-name": "IsAdmin"
  28794. },
  28795. "language": {
  28796. "description": "User locale",
  28797. "type": "string",
  28798. "x-go-name": "Language"
  28799. },
  28800. "last_login": {
  28801. "type": "string",
  28802. "format": "date-time",
  28803. "x-go-name": "LastLogin"
  28804. },
  28805. "location": {
  28806. "description": "the user's location",
  28807. "type": "string",
  28808. "x-go-name": "Location"
  28809. },
  28810. "login": {
  28811. "description": "login of the user, same as `username`",
  28812. "type": "string",
  28813. "x-go-name": "UserName"
  28814. },
  28815. "login_name": {
  28816. "description": "identifier of the user, provided by the external authenticator (if configured)",
  28817. "type": "string",
  28818. "default": "empty",
  28819. "x-go-name": "LoginName"
  28820. },
  28821. "prohibit_login": {
  28822. "description": "Is user login prohibited",
  28823. "type": "boolean",
  28824. "x-go-name": "ProhibitLogin"
  28825. },
  28826. "restricted": {
  28827. "description": "Is user restricted",
  28828. "type": "boolean",
  28829. "x-go-name": "Restricted"
  28830. },
  28831. "source_id": {
  28832. "description": "The ID of the user's Authentication Source",
  28833. "type": "integer",
  28834. "format": "int64",
  28835. "x-go-name": "SourceID"
  28836. },
  28837. "starred_repos_count": {
  28838. "type": "integer",
  28839. "format": "int64",
  28840. "x-go-name": "StarredRepos"
  28841. },
  28842. "visibility": {
  28843. "description": "User visibility level option: public, limited, private",
  28844. "type": "string",
  28845. "x-go-name": "Visibility"
  28846. },
  28847. "website": {
  28848. "description": "the user's website",
  28849. "type": "string",
  28850. "x-go-name": "Website"
  28851. }
  28852. },
  28853. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28854. },
  28855. "UserBadgeOption": {
  28856. "description": "UserBadgeOption options for link between users and badges",
  28857. "type": "object",
  28858. "properties": {
  28859. "badge_slugs": {
  28860. "type": "array",
  28861. "items": {
  28862. "type": "string"
  28863. },
  28864. "x-go-name": "BadgeSlugs",
  28865. "example": [
  28866. "badge1",
  28867. "badge2"
  28868. ]
  28869. }
  28870. },
  28871. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28872. },
  28873. "UserHeatmapData": {
  28874. "description": "UserHeatmapData represents the data needed to create a heatmap",
  28875. "type": "object",
  28876. "properties": {
  28877. "contributions": {
  28878. "type": "integer",
  28879. "format": "int64",
  28880. "x-go-name": "Contributions"
  28881. },
  28882. "timestamp": {
  28883. "$ref": "#/definitions/TimeStamp"
  28884. }
  28885. },
  28886. "x-go-package": "code.gitea.io/gitea/models/activities"
  28887. },
  28888. "UserSettings": {
  28889. "description": "UserSettings represents user settings",
  28890. "type": "object",
  28891. "properties": {
  28892. "description": {
  28893. "type": "string",
  28894. "x-go-name": "Description"
  28895. },
  28896. "diff_view_style": {
  28897. "type": "string",
  28898. "x-go-name": "DiffViewStyle"
  28899. },
  28900. "full_name": {
  28901. "type": "string",
  28902. "x-go-name": "FullName"
  28903. },
  28904. "hide_activity": {
  28905. "type": "boolean",
  28906. "x-go-name": "HideActivity"
  28907. },
  28908. "hide_email": {
  28909. "description": "Privacy",
  28910. "type": "boolean",
  28911. "x-go-name": "HideEmail"
  28912. },
  28913. "language": {
  28914. "type": "string",
  28915. "x-go-name": "Language"
  28916. },
  28917. "location": {
  28918. "type": "string",
  28919. "x-go-name": "Location"
  28920. },
  28921. "theme": {
  28922. "type": "string",
  28923. "x-go-name": "Theme"
  28924. },
  28925. "website": {
  28926. "type": "string",
  28927. "x-go-name": "Website"
  28928. }
  28929. },
  28930. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28931. },
  28932. "UserSettingsOptions": {
  28933. "description": "UserSettingsOptions represents options to change user settings",
  28934. "type": "object",
  28935. "properties": {
  28936. "description": {
  28937. "type": "string",
  28938. "x-go-name": "Description"
  28939. },
  28940. "diff_view_style": {
  28941. "type": "string",
  28942. "x-go-name": "DiffViewStyle"
  28943. },
  28944. "full_name": {
  28945. "type": "string",
  28946. "x-go-name": "FullName"
  28947. },
  28948. "hide_activity": {
  28949. "type": "boolean",
  28950. "x-go-name": "HideActivity"
  28951. },
  28952. "hide_email": {
  28953. "description": "Privacy",
  28954. "type": "boolean",
  28955. "x-go-name": "HideEmail"
  28956. },
  28957. "language": {
  28958. "type": "string",
  28959. "x-go-name": "Language"
  28960. },
  28961. "location": {
  28962. "type": "string",
  28963. "x-go-name": "Location"
  28964. },
  28965. "theme": {
  28966. "type": "string",
  28967. "x-go-name": "Theme"
  28968. },
  28969. "website": {
  28970. "type": "string",
  28971. "x-go-name": "Website"
  28972. }
  28973. },
  28974. "x-go-package": "code.gitea.io/gitea/modules/structs"
  28975. },
  28976. "WatchInfo": {
  28977. "description": "WatchInfo represents an API watch status of one repository",
  28978. "type": "object",
  28979. "properties": {
  28980. "created_at": {
  28981. "description": "The timestamp when the watch status was created",
  28982. "type": "string",
  28983. "format": "date-time",
  28984. "x-go-name": "CreatedAt"
  28985. },
  28986. "ignored": {
  28987. "description": "Whether notifications for the repository are ignored",
  28988. "type": "boolean",
  28989. "x-go-name": "Ignored"
  28990. },
  28991. "reason": {
  28992. "description": "The reason for the current watch status",
  28993. "x-go-name": "Reason"
  28994. },
  28995. "repository_url": {
  28996. "description": "The URL of the repository being watched",
  28997. "type": "string",
  28998. "x-go-name": "RepositoryURL"
  28999. },
  29000. "subscribed": {
  29001. "description": "Whether the repository is being watched for notifications",
  29002. "type": "boolean",
  29003. "x-go-name": "Subscribed"
  29004. },
  29005. "url": {
  29006. "description": "The URL for managing the watch status",
  29007. "type": "string",
  29008. "x-go-name": "URL"
  29009. }
  29010. },
  29011. "x-go-package": "code.gitea.io/gitea/modules/structs"
  29012. },
  29013. "WikiCommit": {
  29014. "description": "WikiCommit page commit/revision",
  29015. "type": "object",
  29016. "properties": {
  29017. "author": {
  29018. "$ref": "#/definitions/CommitUser"
  29019. },
  29020. "commiter": {
  29021. "$ref": "#/definitions/CommitUser"
  29022. },
  29023. "message": {
  29024. "description": "The commit message",
  29025. "type": "string",
  29026. "x-go-name": "Message"
  29027. },
  29028. "sha": {
  29029. "description": "The commit SHA hash",
  29030. "type": "string",
  29031. "x-go-name": "ID"
  29032. }
  29033. },
  29034. "x-go-package": "code.gitea.io/gitea/modules/structs"
  29035. },
  29036. "WikiCommitList": {
  29037. "description": "WikiCommitList commit/revision list",
  29038. "type": "object",
  29039. "properties": {
  29040. "commits": {
  29041. "description": "The list of wiki commits",
  29042. "type": "array",
  29043. "items": {
  29044. "$ref": "#/definitions/WikiCommit"
  29045. },
  29046. "x-go-name": "WikiCommits"
  29047. },
  29048. "count": {
  29049. "description": "The total count of commits",
  29050. "type": "integer",
  29051. "format": "int64",
  29052. "x-go-name": "Count"
  29053. }
  29054. },
  29055. "x-go-package": "code.gitea.io/gitea/modules/structs"
  29056. },
  29057. "WikiPage": {
  29058. "description": "WikiPage a wiki page",
  29059. "type": "object",
  29060. "properties": {
  29061. "commit_count": {
  29062. "description": "The number of commits that modified this page",
  29063. "type": "integer",
  29064. "format": "int64",
  29065. "x-go-name": "CommitCount"
  29066. },
  29067. "content_base64": {
  29068. "description": "Page content, base64 encoded",
  29069. "type": "string",
  29070. "x-go-name": "ContentBase64"
  29071. },
  29072. "footer": {
  29073. "description": "The footer content for the wiki page",
  29074. "type": "string",
  29075. "x-go-name": "Footer"
  29076. },
  29077. "html_url": {
  29078. "description": "The HTML URL to view the wiki page",
  29079. "type": "string",
  29080. "x-go-name": "HTMLURL"
  29081. },
  29082. "last_commit": {
  29083. "$ref": "#/definitions/WikiCommit"
  29084. },
  29085. "sidebar": {
  29086. "description": "The sidebar content for the wiki page",
  29087. "type": "string",
  29088. "x-go-name": "Sidebar"
  29089. },
  29090. "sub_url": {
  29091. "description": "The sub URL path for the wiki page",
  29092. "type": "string",
  29093. "x-go-name": "SubURL"
  29094. },
  29095. "title": {
  29096. "description": "The title of the wiki page",
  29097. "type": "string",
  29098. "x-go-name": "Title"
  29099. }
  29100. },
  29101. "x-go-package": "code.gitea.io/gitea/modules/structs"
  29102. },
  29103. "WikiPageMetaData": {
  29104. "description": "WikiPageMetaData wiki page meta information",
  29105. "type": "object",
  29106. "properties": {
  29107. "html_url": {
  29108. "description": "The HTML URL to view the wiki page",
  29109. "type": "string",
  29110. "x-go-name": "HTMLURL"
  29111. },
  29112. "last_commit": {
  29113. "$ref": "#/definitions/WikiCommit"
  29114. },
  29115. "sub_url": {
  29116. "description": "The sub URL path for the wiki page",
  29117. "type": "string",
  29118. "x-go-name": "SubURL"
  29119. },
  29120. "title": {
  29121. "description": "The title of the wiki page",
  29122. "type": "string",
  29123. "x-go-name": "Title"
  29124. }
  29125. },
  29126. "x-go-package": "code.gitea.io/gitea/modules/structs"
  29127. }
  29128. },
  29129. "responses": {
  29130. "AccessToken": {
  29131. "description": "AccessToken represents an API access token.",
  29132. "schema": {
  29133. "$ref": "#/definitions/AccessToken"
  29134. }
  29135. },
  29136. "AccessTokenList": {
  29137. "description": "AccessTokenList represents a list of API access token.",
  29138. "schema": {
  29139. "type": "array",
  29140. "items": {
  29141. "$ref": "#/definitions/AccessToken"
  29142. }
  29143. }
  29144. },
  29145. "ActionVariable": {
  29146. "description": "ActionVariable",
  29147. "schema": {
  29148. "$ref": "#/definitions/ActionVariable"
  29149. }
  29150. },
  29151. "ActionWorkflow": {
  29152. "description": "ActionWorkflow",
  29153. "schema": {
  29154. "$ref": "#/definitions/ActionWorkflow"
  29155. }
  29156. },
  29157. "ActionWorkflowList": {
  29158. "description": "ActionWorkflowList",
  29159. "schema": {
  29160. "$ref": "#/definitions/ActionWorkflowResponse"
  29161. }
  29162. },
  29163. "ActivityFeedsList": {
  29164. "description": "ActivityFeedsList",
  29165. "schema": {
  29166. "type": "array",
  29167. "items": {
  29168. "$ref": "#/definitions/Activity"
  29169. }
  29170. }
  29171. },
  29172. "ActivityPub": {
  29173. "description": "ActivityPub",
  29174. "schema": {
  29175. "$ref": "#/definitions/ActivityPub"
  29176. }
  29177. },
  29178. "AnnotatedTag": {
  29179. "description": "AnnotatedTag",
  29180. "schema": {
  29181. "$ref": "#/definitions/AnnotatedTag"
  29182. }
  29183. },
  29184. "Artifact": {
  29185. "description": "Artifact",
  29186. "schema": {
  29187. "$ref": "#/definitions/ActionArtifact"
  29188. }
  29189. },
  29190. "ArtifactsList": {
  29191. "description": "ArtifactsList",
  29192. "schema": {
  29193. "$ref": "#/definitions/ActionArtifactsResponse"
  29194. }
  29195. },
  29196. "Attachment": {
  29197. "description": "Attachment",
  29198. "schema": {
  29199. "$ref": "#/definitions/Attachment"
  29200. }
  29201. },
  29202. "AttachmentList": {
  29203. "description": "AttachmentList",
  29204. "schema": {
  29205. "type": "array",
  29206. "items": {
  29207. "$ref": "#/definitions/Attachment"
  29208. }
  29209. }
  29210. },
  29211. "BadgeList": {
  29212. "description": "BadgeList",
  29213. "schema": {
  29214. "type": "array",
  29215. "items": {
  29216. "$ref": "#/definitions/Badge"
  29217. }
  29218. }
  29219. },
  29220. "Branch": {
  29221. "description": "Branch",
  29222. "schema": {
  29223. "$ref": "#/definitions/Branch"
  29224. }
  29225. },
  29226. "BranchList": {
  29227. "description": "BranchList",
  29228. "schema": {
  29229. "type": "array",
  29230. "items": {
  29231. "$ref": "#/definitions/Branch"
  29232. }
  29233. }
  29234. },
  29235. "BranchProtection": {
  29236. "description": "BranchProtection",
  29237. "schema": {
  29238. "$ref": "#/definitions/BranchProtection"
  29239. }
  29240. },
  29241. "BranchProtectionList": {
  29242. "description": "BranchProtectionList",
  29243. "schema": {
  29244. "type": "array",
  29245. "items": {
  29246. "$ref": "#/definitions/BranchProtection"
  29247. }
  29248. }
  29249. },
  29250. "ChangedFileList": {
  29251. "description": "ChangedFileList",
  29252. "schema": {
  29253. "type": "array",
  29254. "items": {
  29255. "$ref": "#/definitions/ChangedFile"
  29256. }
  29257. },
  29258. "headers": {
  29259. "X-HasMore": {
  29260. "type": "boolean",
  29261. "description": "True if there is another page"
  29262. },
  29263. "X-Page": {
  29264. "type": "integer",
  29265. "format": "int64",
  29266. "description": "The current page"
  29267. },
  29268. "X-PageCount": {
  29269. "type": "integer",
  29270. "format": "int64",
  29271. "description": "Total number of pages"
  29272. },
  29273. "X-PerPage": {
  29274. "type": "integer",
  29275. "format": "int64",
  29276. "description": "Commits per page"
  29277. },
  29278. "X-Total": {
  29279. "type": "integer",
  29280. "format": "int64",
  29281. "description": "Total commit count"
  29282. }
  29283. }
  29284. },
  29285. "CombinedStatus": {
  29286. "description": "CombinedStatus",
  29287. "schema": {
  29288. "$ref": "#/definitions/CombinedStatus"
  29289. }
  29290. },
  29291. "Comment": {
  29292. "description": "Comment",
  29293. "schema": {
  29294. "$ref": "#/definitions/Comment"
  29295. }
  29296. },
  29297. "CommentList": {
  29298. "description": "CommentList",
  29299. "schema": {
  29300. "type": "array",
  29301. "items": {
  29302. "$ref": "#/definitions/Comment"
  29303. }
  29304. }
  29305. },
  29306. "Commit": {
  29307. "description": "Commit",
  29308. "schema": {
  29309. "$ref": "#/definitions/Commit"
  29310. }
  29311. },
  29312. "CommitList": {
  29313. "description": "CommitList",
  29314. "schema": {
  29315. "type": "array",
  29316. "items": {
  29317. "$ref": "#/definitions/Commit"
  29318. }
  29319. },
  29320. "headers": {
  29321. "X-HasMore": {
  29322. "type": "boolean",
  29323. "description": "True if there is another page"
  29324. },
  29325. "X-Page": {
  29326. "type": "integer",
  29327. "format": "int64",
  29328. "description": "The current page"
  29329. },
  29330. "X-PageCount": {
  29331. "type": "integer",
  29332. "format": "int64",
  29333. "description": "Total number of pages"
  29334. },
  29335. "X-PerPage": {
  29336. "type": "integer",
  29337. "format": "int64",
  29338. "description": "Commits per page"
  29339. },
  29340. "X-Total": {
  29341. "type": "integer",
  29342. "format": "int64",
  29343. "description": "Total commit count"
  29344. }
  29345. }
  29346. },
  29347. "CommitStatus": {
  29348. "description": "CommitStatus",
  29349. "schema": {
  29350. "$ref": "#/definitions/CommitStatus"
  29351. }
  29352. },
  29353. "CommitStatusList": {
  29354. "description": "CommitStatusList",
  29355. "schema": {
  29356. "type": "array",
  29357. "items": {
  29358. "$ref": "#/definitions/CommitStatus"
  29359. }
  29360. }
  29361. },
  29362. "Compare": {
  29363. "description": "",
  29364. "schema": {
  29365. "$ref": "#/definitions/Compare"
  29366. }
  29367. },
  29368. "ContentsExtResponse": {
  29369. "description": "",
  29370. "schema": {
  29371. "$ref": "#/definitions/ContentsExtResponse"
  29372. }
  29373. },
  29374. "ContentsListResponse": {
  29375. "description": "ContentsListResponse",
  29376. "schema": {
  29377. "type": "array",
  29378. "items": {
  29379. "$ref": "#/definitions/ContentsResponse"
  29380. }
  29381. }
  29382. },
  29383. "ContentsResponse": {
  29384. "description": "ContentsResponse",
  29385. "schema": {
  29386. "$ref": "#/definitions/ContentsResponse"
  29387. }
  29388. },
  29389. "CronList": {
  29390. "description": "CronList",
  29391. "schema": {
  29392. "type": "array",
  29393. "items": {
  29394. "$ref": "#/definitions/Cron"
  29395. }
  29396. }
  29397. },
  29398. "DeployKey": {
  29399. "description": "DeployKey",
  29400. "schema": {
  29401. "$ref": "#/definitions/DeployKey"
  29402. }
  29403. },
  29404. "DeployKeyList": {
  29405. "description": "DeployKeyList",
  29406. "schema": {
  29407. "type": "array",
  29408. "items": {
  29409. "$ref": "#/definitions/DeployKey"
  29410. }
  29411. }
  29412. },
  29413. "EmailList": {
  29414. "description": "EmailList",
  29415. "schema": {
  29416. "type": "array",
  29417. "items": {
  29418. "$ref": "#/definitions/Email"
  29419. }
  29420. }
  29421. },
  29422. "EmptyRepository": {
  29423. "description": "EmptyRepository",
  29424. "schema": {
  29425. "$ref": "#/definitions/APIError"
  29426. }
  29427. },
  29428. "FileDeleteResponse": {
  29429. "description": "FileDeleteResponse",
  29430. "schema": {
  29431. "$ref": "#/definitions/FileDeleteResponse"
  29432. }
  29433. },
  29434. "FileResponse": {
  29435. "description": "FileResponse",
  29436. "schema": {
  29437. "$ref": "#/definitions/FileResponse"
  29438. }
  29439. },
  29440. "FilesResponse": {
  29441. "description": "FilesResponse",
  29442. "schema": {
  29443. "$ref": "#/definitions/FilesResponse"
  29444. }
  29445. },
  29446. "GPGKey": {
  29447. "description": "GPGKey",
  29448. "schema": {
  29449. "$ref": "#/definitions/GPGKey"
  29450. }
  29451. },
  29452. "GPGKeyList": {
  29453. "description": "GPGKeyList",
  29454. "schema": {
  29455. "type": "array",
  29456. "items": {
  29457. "$ref": "#/definitions/GPGKey"
  29458. }
  29459. }
  29460. },
  29461. "GeneralAPISettings": {
  29462. "description": "GeneralAPISettings",
  29463. "schema": {
  29464. "$ref": "#/definitions/GeneralAPISettings"
  29465. }
  29466. },
  29467. "GeneralAttachmentSettings": {
  29468. "description": "GeneralAttachmentSettings",
  29469. "schema": {
  29470. "$ref": "#/definitions/GeneralAttachmentSettings"
  29471. }
  29472. },
  29473. "GeneralRepoSettings": {
  29474. "description": "GeneralRepoSettings",
  29475. "schema": {
  29476. "$ref": "#/definitions/GeneralRepoSettings"
  29477. }
  29478. },
  29479. "GeneralUISettings": {
  29480. "description": "GeneralUISettings",
  29481. "schema": {
  29482. "$ref": "#/definitions/GeneralUISettings"
  29483. }
  29484. },
  29485. "GitBlobResponse": {
  29486. "description": "GitBlobResponse",
  29487. "schema": {
  29488. "$ref": "#/definitions/GitBlobResponse"
  29489. }
  29490. },
  29491. "GitHook": {
  29492. "description": "GitHook",
  29493. "schema": {
  29494. "$ref": "#/definitions/GitHook"
  29495. }
  29496. },
  29497. "GitHookList": {
  29498. "description": "GitHookList",
  29499. "schema": {
  29500. "type": "array",
  29501. "items": {
  29502. "$ref": "#/definitions/GitHook"
  29503. }
  29504. }
  29505. },
  29506. "GitTreeResponse": {
  29507. "description": "GitTreeResponse",
  29508. "schema": {
  29509. "$ref": "#/definitions/GitTreeResponse"
  29510. }
  29511. },
  29512. "GitignoreTemplateInfo": {
  29513. "description": "GitignoreTemplateInfo",
  29514. "schema": {
  29515. "$ref": "#/definitions/GitignoreTemplateInfo"
  29516. }
  29517. },
  29518. "GitignoreTemplateList": {
  29519. "description": "GitignoreTemplateList",
  29520. "schema": {
  29521. "type": "array",
  29522. "items": {
  29523. "type": "string"
  29524. }
  29525. }
  29526. },
  29527. "Hook": {
  29528. "description": "Hook",
  29529. "schema": {
  29530. "$ref": "#/definitions/Hook"
  29531. }
  29532. },
  29533. "HookList": {
  29534. "description": "HookList",
  29535. "schema": {
  29536. "type": "array",
  29537. "items": {
  29538. "$ref": "#/definitions/Hook"
  29539. }
  29540. }
  29541. },
  29542. "Issue": {
  29543. "description": "Issue",
  29544. "schema": {
  29545. "$ref": "#/definitions/Issue"
  29546. }
  29547. },
  29548. "IssueDeadline": {
  29549. "description": "IssueDeadline",
  29550. "schema": {
  29551. "$ref": "#/definitions/IssueDeadline"
  29552. }
  29553. },
  29554. "IssueList": {
  29555. "description": "IssueList",
  29556. "schema": {
  29557. "type": "array",
  29558. "items": {
  29559. "$ref": "#/definitions/Issue"
  29560. }
  29561. }
  29562. },
  29563. "IssueTemplates": {
  29564. "description": "IssueTemplates",
  29565. "schema": {
  29566. "type": "array",
  29567. "items": {
  29568. "$ref": "#/definitions/IssueTemplate"
  29569. }
  29570. }
  29571. },
  29572. "Label": {
  29573. "description": "Label",
  29574. "schema": {
  29575. "$ref": "#/definitions/Label"
  29576. }
  29577. },
  29578. "LabelList": {
  29579. "description": "LabelList",
  29580. "schema": {
  29581. "type": "array",
  29582. "items": {
  29583. "$ref": "#/definitions/Label"
  29584. }
  29585. }
  29586. },
  29587. "LabelTemplateInfo": {
  29588. "description": "LabelTemplateInfo",
  29589. "schema": {
  29590. "type": "array",
  29591. "items": {
  29592. "$ref": "#/definitions/LabelTemplate"
  29593. }
  29594. }
  29595. },
  29596. "LabelTemplateList": {
  29597. "description": "LabelTemplateList",
  29598. "schema": {
  29599. "type": "array",
  29600. "items": {
  29601. "type": "string"
  29602. }
  29603. }
  29604. },
  29605. "LanguageStatistics": {
  29606. "description": "LanguageStatistics",
  29607. "schema": {
  29608. "type": "object",
  29609. "additionalProperties": {
  29610. "type": "integer",
  29611. "format": "int64"
  29612. }
  29613. }
  29614. },
  29615. "LicenseTemplateInfo": {
  29616. "description": "LicenseTemplateInfo",
  29617. "schema": {
  29618. "$ref": "#/definitions/LicenseTemplateInfo"
  29619. }
  29620. },
  29621. "LicenseTemplateList": {
  29622. "description": "LicenseTemplateList",
  29623. "schema": {
  29624. "type": "array",
  29625. "items": {
  29626. "$ref": "#/definitions/LicensesTemplateListEntry"
  29627. }
  29628. }
  29629. },
  29630. "LicensesList": {
  29631. "description": "LicensesList",
  29632. "schema": {
  29633. "type": "array",
  29634. "items": {
  29635. "type": "string"
  29636. }
  29637. }
  29638. },
  29639. "MarkdownRender": {
  29640. "description": "MarkdownRender is a rendered markdown document",
  29641. "schema": {
  29642. "type": "string"
  29643. }
  29644. },
  29645. "MarkupRender": {
  29646. "description": "MarkupRender is a rendered markup document",
  29647. "schema": {
  29648. "type": "string"
  29649. }
  29650. },
  29651. "MergeUpstreamRequest": {
  29652. "description": "",
  29653. "schema": {
  29654. "$ref": "#/definitions/MergeUpstreamRequest"
  29655. }
  29656. },
  29657. "MergeUpstreamResponse": {
  29658. "description": "",
  29659. "schema": {
  29660. "$ref": "#/definitions/MergeUpstreamResponse"
  29661. }
  29662. },
  29663. "Milestone": {
  29664. "description": "Milestone",
  29665. "schema": {
  29666. "$ref": "#/definitions/Milestone"
  29667. }
  29668. },
  29669. "MilestoneList": {
  29670. "description": "MilestoneList",
  29671. "schema": {
  29672. "type": "array",
  29673. "items": {
  29674. "$ref": "#/definitions/Milestone"
  29675. }
  29676. }
  29677. },
  29678. "NodeInfo": {
  29679. "description": "NodeInfo",
  29680. "schema": {
  29681. "$ref": "#/definitions/NodeInfo"
  29682. }
  29683. },
  29684. "Note": {
  29685. "description": "Note",
  29686. "schema": {
  29687. "$ref": "#/definitions/Note"
  29688. }
  29689. },
  29690. "NotificationCount": {
  29691. "description": "Number of unread notifications",
  29692. "schema": {
  29693. "$ref": "#/definitions/NotificationCount"
  29694. }
  29695. },
  29696. "NotificationThread": {
  29697. "description": "NotificationThread",
  29698. "schema": {
  29699. "$ref": "#/definitions/NotificationThread"
  29700. }
  29701. },
  29702. "NotificationThreadList": {
  29703. "description": "NotificationThreadList",
  29704. "schema": {
  29705. "type": "array",
  29706. "items": {
  29707. "$ref": "#/definitions/NotificationThread"
  29708. }
  29709. }
  29710. },
  29711. "OAuth2Application": {
  29712. "description": "OAuth2Application",
  29713. "schema": {
  29714. "$ref": "#/definitions/OAuth2Application"
  29715. }
  29716. },
  29717. "OAuth2ApplicationList": {
  29718. "description": "OAuth2ApplicationList represents a list of OAuth2 applications.",
  29719. "schema": {
  29720. "type": "array",
  29721. "items": {
  29722. "$ref": "#/definitions/OAuth2Application"
  29723. }
  29724. }
  29725. },
  29726. "Organization": {
  29727. "description": "Organization",
  29728. "schema": {
  29729. "$ref": "#/definitions/Organization"
  29730. }
  29731. },
  29732. "OrganizationList": {
  29733. "description": "OrganizationList",
  29734. "schema": {
  29735. "type": "array",
  29736. "items": {
  29737. "$ref": "#/definitions/Organization"
  29738. }
  29739. }
  29740. },
  29741. "OrganizationPermissions": {
  29742. "description": "OrganizationPermissions",
  29743. "schema": {
  29744. "$ref": "#/definitions/OrganizationPermissions"
  29745. }
  29746. },
  29747. "Package": {
  29748. "description": "Package",
  29749. "schema": {
  29750. "$ref": "#/definitions/Package"
  29751. }
  29752. },
  29753. "PackageFileList": {
  29754. "description": "PackageFileList",
  29755. "schema": {
  29756. "type": "array",
  29757. "items": {
  29758. "$ref": "#/definitions/PackageFile"
  29759. }
  29760. }
  29761. },
  29762. "PackageList": {
  29763. "description": "PackageList",
  29764. "schema": {
  29765. "type": "array",
  29766. "items": {
  29767. "$ref": "#/definitions/Package"
  29768. }
  29769. }
  29770. },
  29771. "PublicKey": {
  29772. "description": "PublicKey",
  29773. "schema": {
  29774. "$ref": "#/definitions/PublicKey"
  29775. }
  29776. },
  29777. "PublicKeyList": {
  29778. "description": "PublicKeyList",
  29779. "schema": {
  29780. "type": "array",
  29781. "items": {
  29782. "$ref": "#/definitions/PublicKey"
  29783. }
  29784. }
  29785. },
  29786. "PullRequest": {
  29787. "description": "PullRequest",
  29788. "schema": {
  29789. "$ref": "#/definitions/PullRequest"
  29790. }
  29791. },
  29792. "PullRequestList": {
  29793. "description": "PullRequestList",
  29794. "schema": {
  29795. "type": "array",
  29796. "items": {
  29797. "$ref": "#/definitions/PullRequest"
  29798. }
  29799. }
  29800. },
  29801. "PullReview": {
  29802. "description": "PullReview",
  29803. "schema": {
  29804. "$ref": "#/definitions/PullReview"
  29805. }
  29806. },
  29807. "PullReviewComment": {
  29808. "description": "PullComment",
  29809. "schema": {
  29810. "$ref": "#/definitions/PullReviewComment"
  29811. }
  29812. },
  29813. "PullReviewCommentList": {
  29814. "description": "PullCommentList",
  29815. "schema": {
  29816. "type": "array",
  29817. "items": {
  29818. "$ref": "#/definitions/PullReviewComment"
  29819. }
  29820. }
  29821. },
  29822. "PullReviewList": {
  29823. "description": "PullReviewList",
  29824. "schema": {
  29825. "type": "array",
  29826. "items": {
  29827. "$ref": "#/definitions/PullReview"
  29828. }
  29829. }
  29830. },
  29831. "PushMirror": {
  29832. "description": "PushMirror",
  29833. "schema": {
  29834. "$ref": "#/definitions/PushMirror"
  29835. }
  29836. },
  29837. "PushMirrorList": {
  29838. "description": "PushMirrorList",
  29839. "schema": {
  29840. "type": "array",
  29841. "items": {
  29842. "$ref": "#/definitions/PushMirror"
  29843. }
  29844. }
  29845. },
  29846. "Reaction": {
  29847. "description": "Reaction",
  29848. "schema": {
  29849. "$ref": "#/definitions/Reaction"
  29850. }
  29851. },
  29852. "ReactionList": {
  29853. "description": "ReactionList",
  29854. "schema": {
  29855. "type": "array",
  29856. "items": {
  29857. "$ref": "#/definitions/Reaction"
  29858. }
  29859. }
  29860. },
  29861. "Reference": {
  29862. "description": "Reference",
  29863. "schema": {
  29864. "$ref": "#/definitions/Reference"
  29865. }
  29866. },
  29867. "ReferenceList": {
  29868. "description": "ReferenceList",
  29869. "schema": {
  29870. "type": "array",
  29871. "items": {
  29872. "$ref": "#/definitions/Reference"
  29873. }
  29874. }
  29875. },
  29876. "RegistrationToken": {
  29877. "description": "RegistrationToken is response related to registration token",
  29878. "headers": {
  29879. "token": {
  29880. "type": "string"
  29881. }
  29882. }
  29883. },
  29884. "Release": {
  29885. "description": "Release",
  29886. "schema": {
  29887. "$ref": "#/definitions/Release"
  29888. }
  29889. },
  29890. "ReleaseList": {
  29891. "description": "ReleaseList",
  29892. "schema": {
  29893. "type": "array",
  29894. "items": {
  29895. "$ref": "#/definitions/Release"
  29896. }
  29897. }
  29898. },
  29899. "RepoCollaboratorPermission": {
  29900. "description": "RepoCollaboratorPermission",
  29901. "schema": {
  29902. "$ref": "#/definitions/RepoCollaboratorPermission"
  29903. }
  29904. },
  29905. "RepoIssueConfig": {
  29906. "description": "RepoIssueConfig",
  29907. "schema": {
  29908. "$ref": "#/definitions/IssueConfig"
  29909. }
  29910. },
  29911. "RepoIssueConfigValidation": {
  29912. "description": "RepoIssueConfigValidation",
  29913. "schema": {
  29914. "$ref": "#/definitions/IssueConfigValidation"
  29915. }
  29916. },
  29917. "RepoNewIssuePinsAllowed": {
  29918. "description": "RepoNewIssuePinsAllowed",
  29919. "schema": {
  29920. "$ref": "#/definitions/NewIssuePinsAllowed"
  29921. }
  29922. },
  29923. "Repository": {
  29924. "description": "Repository",
  29925. "schema": {
  29926. "$ref": "#/definitions/Repository"
  29927. }
  29928. },
  29929. "RepositoryList": {
  29930. "description": "RepositoryList",
  29931. "schema": {
  29932. "type": "array",
  29933. "items": {
  29934. "$ref": "#/definitions/Repository"
  29935. }
  29936. }
  29937. },
  29938. "Runner": {
  29939. "description": "Runner",
  29940. "schema": {
  29941. "$ref": "#/definitions/ActionRunner"
  29942. }
  29943. },
  29944. "RunnerList": {
  29945. "description": "RunnerList",
  29946. "schema": {
  29947. "$ref": "#/definitions/ActionRunnersResponse"
  29948. }
  29949. },
  29950. "SearchResults": {
  29951. "description": "SearchResults",
  29952. "schema": {
  29953. "$ref": "#/definitions/SearchResults"
  29954. }
  29955. },
  29956. "Secret": {
  29957. "description": "Secret",
  29958. "schema": {
  29959. "$ref": "#/definitions/Secret"
  29960. }
  29961. },
  29962. "SecretList": {
  29963. "description": "SecretList",
  29964. "schema": {
  29965. "type": "array",
  29966. "items": {
  29967. "$ref": "#/definitions/Secret"
  29968. }
  29969. }
  29970. },
  29971. "ServerVersion": {
  29972. "description": "ServerVersion",
  29973. "schema": {
  29974. "$ref": "#/definitions/ServerVersion"
  29975. }
  29976. },
  29977. "StopWatch": {
  29978. "description": "StopWatch",
  29979. "schema": {
  29980. "$ref": "#/definitions/StopWatch"
  29981. }
  29982. },
  29983. "StopWatchList": {
  29984. "description": "StopWatchList",
  29985. "schema": {
  29986. "type": "array",
  29987. "items": {
  29988. "$ref": "#/definitions/StopWatch"
  29989. }
  29990. }
  29991. },
  29992. "StringSlice": {
  29993. "description": "StringSlice",
  29994. "schema": {
  29995. "type": "array",
  29996. "items": {
  29997. "type": "string"
  29998. }
  29999. }
  30000. },
  30001. "Tag": {
  30002. "description": "Tag",
  30003. "schema": {
  30004. "$ref": "#/definitions/Tag"
  30005. }
  30006. },
  30007. "TagList": {
  30008. "description": "TagList",
  30009. "schema": {
  30010. "type": "array",
  30011. "items": {
  30012. "$ref": "#/definitions/Tag"
  30013. }
  30014. }
  30015. },
  30016. "TagProtection": {
  30017. "description": "TagProtection",
  30018. "schema": {
  30019. "$ref": "#/definitions/TagProtection"
  30020. }
  30021. },
  30022. "TagProtectionList": {
  30023. "description": "TagProtectionList",
  30024. "schema": {
  30025. "type": "array",
  30026. "items": {
  30027. "$ref": "#/definitions/TagProtection"
  30028. }
  30029. }
  30030. },
  30031. "TasksList": {
  30032. "description": "TasksList",
  30033. "schema": {
  30034. "$ref": "#/definitions/ActionTaskResponse"
  30035. }
  30036. },
  30037. "Team": {
  30038. "description": "Team",
  30039. "schema": {
  30040. "$ref": "#/definitions/Team"
  30041. }
  30042. },
  30043. "TeamList": {
  30044. "description": "TeamList",
  30045. "schema": {
  30046. "type": "array",
  30047. "items": {
  30048. "$ref": "#/definitions/Team"
  30049. }
  30050. }
  30051. },
  30052. "TimelineList": {
  30053. "description": "TimelineList",
  30054. "schema": {
  30055. "type": "array",
  30056. "items": {
  30057. "$ref": "#/definitions/TimelineComment"
  30058. }
  30059. }
  30060. },
  30061. "TopicListResponse": {
  30062. "description": "TopicListResponse",
  30063. "schema": {
  30064. "type": "array",
  30065. "items": {
  30066. "$ref": "#/definitions/TopicResponse"
  30067. }
  30068. }
  30069. },
  30070. "TopicNames": {
  30071. "description": "TopicNames",
  30072. "schema": {
  30073. "$ref": "#/definitions/TopicName"
  30074. }
  30075. },
  30076. "TrackedTime": {
  30077. "description": "TrackedTime",
  30078. "schema": {
  30079. "$ref": "#/definitions/TrackedTime"
  30080. }
  30081. },
  30082. "TrackedTimeList": {
  30083. "description": "TrackedTimeList",
  30084. "schema": {
  30085. "type": "array",
  30086. "items": {
  30087. "$ref": "#/definitions/TrackedTime"
  30088. }
  30089. }
  30090. },
  30091. "User": {
  30092. "description": "User",
  30093. "schema": {
  30094. "$ref": "#/definitions/User"
  30095. }
  30096. },
  30097. "UserHeatmapData": {
  30098. "description": "UserHeatmapData",
  30099. "schema": {
  30100. "type": "array",
  30101. "items": {
  30102. "$ref": "#/definitions/UserHeatmapData"
  30103. }
  30104. }
  30105. },
  30106. "UserList": {
  30107. "description": "UserList",
  30108. "schema": {
  30109. "type": "array",
  30110. "items": {
  30111. "$ref": "#/definitions/User"
  30112. }
  30113. }
  30114. },
  30115. "UserSettings": {
  30116. "description": "UserSettings",
  30117. "schema": {
  30118. "type": "array",
  30119. "items": {
  30120. "$ref": "#/definitions/UserSettings"
  30121. }
  30122. }
  30123. },
  30124. "VariableList": {
  30125. "description": "VariableList",
  30126. "schema": {
  30127. "type": "array",
  30128. "items": {
  30129. "$ref": "#/definitions/ActionVariable"
  30130. }
  30131. }
  30132. },
  30133. "WatchInfo": {
  30134. "description": "WatchInfo",
  30135. "schema": {
  30136. "$ref": "#/definitions/WatchInfo"
  30137. }
  30138. },
  30139. "WikiCommitList": {
  30140. "description": "WikiCommitList",
  30141. "schema": {
  30142. "$ref": "#/definitions/WikiCommitList"
  30143. }
  30144. },
  30145. "WikiPage": {
  30146. "description": "WikiPage",
  30147. "schema": {
  30148. "$ref": "#/definitions/WikiPage"
  30149. }
  30150. },
  30151. "WikiPageList": {
  30152. "description": "WikiPageList",
  30153. "schema": {
  30154. "type": "array",
  30155. "items": {
  30156. "$ref": "#/definitions/WikiPageMetaData"
  30157. }
  30158. }
  30159. },
  30160. "WorkflowJob": {
  30161. "description": "WorkflowJob",
  30162. "schema": {
  30163. "$ref": "#/definitions/ActionWorkflowJob"
  30164. }
  30165. },
  30166. "WorkflowJobsList": {
  30167. "description": "WorkflowJobsList",
  30168. "schema": {
  30169. "$ref": "#/definitions/ActionWorkflowJobsResponse"
  30170. }
  30171. },
  30172. "WorkflowRun": {
  30173. "description": "WorkflowRun",
  30174. "schema": {
  30175. "$ref": "#/definitions/ActionWorkflowRun"
  30176. }
  30177. },
  30178. "WorkflowRunsList": {
  30179. "description": "WorkflowRunsList",
  30180. "schema": {
  30181. "$ref": "#/definitions/ActionWorkflowRunsResponse"
  30182. }
  30183. },
  30184. "conflict": {
  30185. "description": "APIConflict is a conflict empty response"
  30186. },
  30187. "empty": {
  30188. "description": "APIEmpty is an empty response"
  30189. },
  30190. "error": {
  30191. "description": "APIError is error format response",
  30192. "headers": {
  30193. "message": {
  30194. "type": "string"
  30195. },
  30196. "url": {
  30197. "type": "string"
  30198. }
  30199. }
  30200. },
  30201. "forbidden": {
  30202. "description": "APIForbiddenError is a forbidden error response",
  30203. "headers": {
  30204. "message": {
  30205. "type": "string"
  30206. },
  30207. "url": {
  30208. "type": "string"
  30209. }
  30210. }
  30211. },
  30212. "invalidTopicsError": {
  30213. "description": "APIInvalidTopicsError is error format response to invalid topics",
  30214. "headers": {
  30215. "invalidTopics": {
  30216. "type": "array",
  30217. "items": {
  30218. "type": "string"
  30219. }
  30220. },
  30221. "message": {
  30222. "type": "string"
  30223. }
  30224. }
  30225. },
  30226. "notFound": {
  30227. "description": "APINotFound is a not found empty response"
  30228. },
  30229. "parameterBodies": {
  30230. "description": "parameterBodies",
  30231. "schema": {
  30232. "$ref": "#/definitions/LockIssueOption"
  30233. }
  30234. },
  30235. "redirect": {
  30236. "description": "APIRedirect is a redirect response"
  30237. },
  30238. "repoArchivedError": {
  30239. "description": "APIRepoArchivedError is an error that is raised when an archived repo should be modified",
  30240. "headers": {
  30241. "message": {
  30242. "type": "string"
  30243. },
  30244. "url": {
  30245. "type": "string"
  30246. }
  30247. }
  30248. },
  30249. "string": {
  30250. "description": "APIString is a string response",
  30251. "schema": {
  30252. "type": "string"
  30253. }
  30254. },
  30255. "validationError": {
  30256. "description": "APIValidationError is error format response related to input validation",
  30257. "headers": {
  30258. "message": {
  30259. "type": "string"
  30260. },
  30261. "url": {
  30262. "type": "string"
  30263. }
  30264. }
  30265. }
  30266. },
  30267. "securityDefinitions": {
  30268. "AccessToken": {
  30269. "description": "This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead.",
  30270. "type": "apiKey",
  30271. "name": "access_token",
  30272. "in": "query"
  30273. },
  30274. "AuthorizationHeaderToken": {
  30275. "description": "API tokens must be prepended with \"token\" followed by a space.",
  30276. "type": "apiKey",
  30277. "name": "Authorization",
  30278. "in": "header"
  30279. },
  30280. "BasicAuth": {
  30281. "type": "basic"
  30282. },
  30283. "SudoHeader": {
  30284. "description": "Sudo API request as the user provided as the key. Admin privileges are required.",
  30285. "type": "apiKey",
  30286. "name": "Sudo",
  30287. "in": "header"
  30288. },
  30289. "SudoParam": {
  30290. "description": "Sudo API request as the user provided as the key. Admin privileges are required.",
  30291. "type": "apiKey",
  30292. "name": "sudo",
  30293. "in": "query"
  30294. },
  30295. "TOTPHeader": {
  30296. "description": "Must be used in combination with BasicAuth if two-factor authentication is enabled.",
  30297. "type": "apiKey",
  30298. "name": "X-GITEA-OTP",
  30299. "in": "header"
  30300. },
  30301. "Token": {
  30302. "description": "This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead.",
  30303. "type": "apiKey",
  30304. "name": "token",
  30305. "in": "query"
  30306. }
  30307. },
  30308. "security": [
  30309. {
  30310. "BasicAuth": []
  30311. },
  30312. {
  30313. "Token": []
  30314. },
  30315. {
  30316. "AccessToken": []
  30317. },
  30318. {
  30319. "AuthorizationHeaderToken": []
  30320. },
  30321. {
  30322. "SudoParam": []
  30323. },
  30324. {
  30325. "SudoHeader": []
  30326. },
  30327. {
  30328. "TOTPHeader": []
  30329. }
  30330. ]
  30331. }