Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494
  1. {
  2. "consumes": [
  3. "application/json",
  4. "text/plain"
  5. ],
  6. "produces": [
  7. "application/json",
  8. "text/html"
  9. ],
  10. "schemes": [
  11. "http",
  12. "https"
  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": "1.1.1"
  23. },
  24. "basePath": "{{AppSubUrl}}/api/v1",
  25. "paths": {
  26. "/admin/orgs": {
  27. "get": {
  28. "produces": [
  29. "application/json"
  30. ],
  31. "tags": [
  32. "admin"
  33. ],
  34. "summary": "List all organizations",
  35. "operationId": "adminGetAllOrgs",
  36. "parameters": [
  37. {
  38. "type": "integer",
  39. "description": "page number of results to return (1-based)",
  40. "name": "page",
  41. "in": "query"
  42. },
  43. {
  44. "type": "integer",
  45. "description": "page size of results",
  46. "name": "limit",
  47. "in": "query"
  48. }
  49. ],
  50. "responses": {
  51. "200": {
  52. "$ref": "#/responses/OrganizationList"
  53. },
  54. "403": {
  55. "$ref": "#/responses/forbidden"
  56. }
  57. }
  58. }
  59. },
  60. "/admin/users": {
  61. "get": {
  62. "produces": [
  63. "application/json"
  64. ],
  65. "tags": [
  66. "admin"
  67. ],
  68. "summary": "List all users",
  69. "operationId": "adminGetAllUsers",
  70. "parameters": [
  71. {
  72. "type": "integer",
  73. "description": "page number of results to return (1-based)",
  74. "name": "page",
  75. "in": "query"
  76. },
  77. {
  78. "type": "integer",
  79. "description": "page size of results",
  80. "name": "limit",
  81. "in": "query"
  82. }
  83. ],
  84. "responses": {
  85. "200": {
  86. "$ref": "#/responses/UserList"
  87. },
  88. "403": {
  89. "$ref": "#/responses/forbidden"
  90. }
  91. }
  92. },
  93. "post": {
  94. "consumes": [
  95. "application/json"
  96. ],
  97. "produces": [
  98. "application/json"
  99. ],
  100. "tags": [
  101. "admin"
  102. ],
  103. "summary": "Create a user",
  104. "operationId": "adminCreateUser",
  105. "parameters": [
  106. {
  107. "name": "body",
  108. "in": "body",
  109. "schema": {
  110. "$ref": "#/definitions/CreateUserOption"
  111. }
  112. }
  113. ],
  114. "responses": {
  115. "201": {
  116. "$ref": "#/responses/User"
  117. },
  118. "400": {
  119. "$ref": "#/responses/error"
  120. },
  121. "403": {
  122. "$ref": "#/responses/forbidden"
  123. },
  124. "422": {
  125. "$ref": "#/responses/validationError"
  126. }
  127. }
  128. }
  129. },
  130. "/admin/users/{username}": {
  131. "delete": {
  132. "produces": [
  133. "application/json"
  134. ],
  135. "tags": [
  136. "admin"
  137. ],
  138. "summary": "Delete a user",
  139. "operationId": "adminDeleteUser",
  140. "parameters": [
  141. {
  142. "type": "string",
  143. "description": "username of user to delete",
  144. "name": "username",
  145. "in": "path",
  146. "required": true
  147. }
  148. ],
  149. "responses": {
  150. "204": {
  151. "$ref": "#/responses/empty"
  152. },
  153. "403": {
  154. "$ref": "#/responses/forbidden"
  155. },
  156. "422": {
  157. "$ref": "#/responses/validationError"
  158. }
  159. }
  160. },
  161. "patch": {
  162. "consumes": [
  163. "application/json"
  164. ],
  165. "produces": [
  166. "application/json"
  167. ],
  168. "tags": [
  169. "admin"
  170. ],
  171. "summary": "Edit an existing user",
  172. "operationId": "adminEditUser",
  173. "parameters": [
  174. {
  175. "type": "string",
  176. "description": "username of user to edit",
  177. "name": "username",
  178. "in": "path",
  179. "required": true
  180. },
  181. {
  182. "name": "body",
  183. "in": "body",
  184. "schema": {
  185. "$ref": "#/definitions/EditUserOption"
  186. }
  187. }
  188. ],
  189. "responses": {
  190. "200": {
  191. "$ref": "#/responses/User"
  192. },
  193. "403": {
  194. "$ref": "#/responses/forbidden"
  195. },
  196. "422": {
  197. "$ref": "#/responses/validationError"
  198. }
  199. }
  200. }
  201. },
  202. "/admin/users/{username}/keys": {
  203. "post": {
  204. "consumes": [
  205. "application/json"
  206. ],
  207. "produces": [
  208. "application/json"
  209. ],
  210. "tags": [
  211. "admin"
  212. ],
  213. "summary": "Add a public key on behalf of a user",
  214. "operationId": "adminCreatePublicKey",
  215. "parameters": [
  216. {
  217. "type": "string",
  218. "description": "username of the user",
  219. "name": "username",
  220. "in": "path",
  221. "required": true
  222. },
  223. {
  224. "name": "key",
  225. "in": "body",
  226. "schema": {
  227. "$ref": "#/definitions/CreateKeyOption"
  228. }
  229. }
  230. ],
  231. "responses": {
  232. "201": {
  233. "$ref": "#/responses/PublicKey"
  234. },
  235. "403": {
  236. "$ref": "#/responses/forbidden"
  237. },
  238. "422": {
  239. "$ref": "#/responses/validationError"
  240. }
  241. }
  242. }
  243. },
  244. "/admin/users/{username}/keys/{id}": {
  245. "delete": {
  246. "produces": [
  247. "application/json"
  248. ],
  249. "tags": [
  250. "admin"
  251. ],
  252. "summary": "Delete a user's public key",
  253. "operationId": "adminDeleteUserPublicKey",
  254. "parameters": [
  255. {
  256. "type": "string",
  257. "description": "username of user",
  258. "name": "username",
  259. "in": "path",
  260. "required": true
  261. },
  262. {
  263. "type": "integer",
  264. "format": "int64",
  265. "description": "id of the key to delete",
  266. "name": "id",
  267. "in": "path",
  268. "required": true
  269. }
  270. ],
  271. "responses": {
  272. "204": {
  273. "$ref": "#/responses/empty"
  274. },
  275. "403": {
  276. "$ref": "#/responses/forbidden"
  277. },
  278. "404": {
  279. "$ref": "#/responses/notFound"
  280. }
  281. }
  282. }
  283. },
  284. "/admin/users/{username}/orgs": {
  285. "post": {
  286. "consumes": [
  287. "application/json"
  288. ],
  289. "produces": [
  290. "application/json"
  291. ],
  292. "tags": [
  293. "admin"
  294. ],
  295. "summary": "Create an organization",
  296. "operationId": "adminCreateOrg",
  297. "parameters": [
  298. {
  299. "type": "string",
  300. "description": "username of the user that will own the created organization",
  301. "name": "username",
  302. "in": "path",
  303. "required": true
  304. },
  305. {
  306. "name": "organization",
  307. "in": "body",
  308. "required": true,
  309. "schema": {
  310. "$ref": "#/definitions/CreateOrgOption"
  311. }
  312. }
  313. ],
  314. "responses": {
  315. "201": {
  316. "$ref": "#/responses/Organization"
  317. },
  318. "403": {
  319. "$ref": "#/responses/forbidden"
  320. },
  321. "422": {
  322. "$ref": "#/responses/validationError"
  323. }
  324. }
  325. }
  326. },
  327. "/admin/users/{username}/repos": {
  328. "post": {
  329. "consumes": [
  330. "application/json"
  331. ],
  332. "produces": [
  333. "application/json"
  334. ],
  335. "tags": [
  336. "admin"
  337. ],
  338. "summary": "Create a repository on behalf of a user",
  339. "operationId": "adminCreateRepo",
  340. "parameters": [
  341. {
  342. "type": "string",
  343. "description": "username of the user. This user will own the created repository",
  344. "name": "username",
  345. "in": "path",
  346. "required": true
  347. },
  348. {
  349. "name": "repository",
  350. "in": "body",
  351. "required": true,
  352. "schema": {
  353. "$ref": "#/definitions/CreateRepoOption"
  354. }
  355. }
  356. ],
  357. "responses": {
  358. "201": {
  359. "$ref": "#/responses/Repository"
  360. },
  361. "403": {
  362. "$ref": "#/responses/forbidden"
  363. },
  364. "404": {
  365. "$ref": "#/responses/notFound"
  366. },
  367. "409": {
  368. "$ref": "#/responses/error"
  369. },
  370. "422": {
  371. "$ref": "#/responses/validationError"
  372. }
  373. }
  374. }
  375. },
  376. "/markdown": {
  377. "post": {
  378. "consumes": [
  379. "application/json"
  380. ],
  381. "produces": [
  382. "text/html"
  383. ],
  384. "tags": [
  385. "miscellaneous"
  386. ],
  387. "summary": "Render a markdown document as HTML",
  388. "operationId": "renderMarkdown",
  389. "parameters": [
  390. {
  391. "name": "body",
  392. "in": "body",
  393. "schema": {
  394. "$ref": "#/definitions/MarkdownOption"
  395. }
  396. }
  397. ],
  398. "responses": {
  399. "200": {
  400. "$ref": "#/responses/MarkdownRender"
  401. },
  402. "422": {
  403. "$ref": "#/responses/validationError"
  404. }
  405. }
  406. }
  407. },
  408. "/markdown/raw": {
  409. "post": {
  410. "consumes": [
  411. "text/plain"
  412. ],
  413. "produces": [
  414. "text/html"
  415. ],
  416. "tags": [
  417. "miscellaneous"
  418. ],
  419. "summary": "Render raw markdown as HTML",
  420. "operationId": "renderMarkdownRaw",
  421. "parameters": [
  422. {
  423. "description": "Request body to render",
  424. "name": "body",
  425. "in": "body",
  426. "required": true,
  427. "schema": {
  428. "type": "string"
  429. }
  430. }
  431. ],
  432. "responses": {
  433. "200": {
  434. "$ref": "#/responses/MarkdownRender"
  435. },
  436. "422": {
  437. "$ref": "#/responses/validationError"
  438. }
  439. }
  440. }
  441. },
  442. "/notifications": {
  443. "get": {
  444. "consumes": [
  445. "application/json"
  446. ],
  447. "produces": [
  448. "application/json"
  449. ],
  450. "tags": [
  451. "notification"
  452. ],
  453. "summary": "List users's notification threads",
  454. "operationId": "notifyGetList",
  455. "parameters": [
  456. {
  457. "type": "string",
  458. "description": "If true, show notifications marked as read. Default value is false",
  459. "name": "all",
  460. "in": "query"
  461. },
  462. {
  463. "type": "string",
  464. "format": "date-time",
  465. "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format",
  466. "name": "since",
  467. "in": "query"
  468. },
  469. {
  470. "type": "string",
  471. "format": "date-time",
  472. "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format",
  473. "name": "before",
  474. "in": "query"
  475. },
  476. {
  477. "type": "integer",
  478. "description": "page number of results to return (1-based)",
  479. "name": "page",
  480. "in": "query"
  481. },
  482. {
  483. "type": "integer",
  484. "description": "page size of results",
  485. "name": "limit",
  486. "in": "query"
  487. }
  488. ],
  489. "responses": {
  490. "200": {
  491. "$ref": "#/responses/NotificationThreadList"
  492. }
  493. }
  494. },
  495. "put": {
  496. "consumes": [
  497. "application/json"
  498. ],
  499. "produces": [
  500. "application/json"
  501. ],
  502. "tags": [
  503. "notification"
  504. ],
  505. "summary": "Mark notification threads as read",
  506. "operationId": "notifyReadList",
  507. "parameters": [
  508. {
  509. "type": "string",
  510. "format": "date-time",
  511. "description": "Describes the last point that notifications were checked. Anything updated since this time will not be updated.",
  512. "name": "last_read_at",
  513. "in": "query"
  514. }
  515. ],
  516. "responses": {
  517. "205": {
  518. "$ref": "#/responses/empty"
  519. }
  520. }
  521. }
  522. },
  523. "/notifications/new": {
  524. "get": {
  525. "tags": [
  526. "notification"
  527. ],
  528. "summary": "Check if unread notifications exist",
  529. "operationId": "notifyNewAvailable",
  530. "responses": {
  531. "200": {
  532. "$ref": "#/responses/NotificationCount"
  533. }
  534. }
  535. }
  536. },
  537. "/notifications/threads/{id}": {
  538. "get": {
  539. "consumes": [
  540. "application/json"
  541. ],
  542. "produces": [
  543. "application/json"
  544. ],
  545. "tags": [
  546. "notification"
  547. ],
  548. "summary": "Get notification thread by ID",
  549. "operationId": "notifyGetThread",
  550. "parameters": [
  551. {
  552. "type": "string",
  553. "description": "id of notification thread",
  554. "name": "id",
  555. "in": "path",
  556. "required": true
  557. }
  558. ],
  559. "responses": {
  560. "200": {
  561. "$ref": "#/responses/NotificationThread"
  562. },
  563. "403": {
  564. "$ref": "#/responses/forbidden"
  565. },
  566. "404": {
  567. "$ref": "#/responses/notFound"
  568. }
  569. }
  570. },
  571. "patch": {
  572. "consumes": [
  573. "application/json"
  574. ],
  575. "produces": [
  576. "application/json"
  577. ],
  578. "tags": [
  579. "notification"
  580. ],
  581. "summary": "Mark notification thread as read by ID",
  582. "operationId": "notifyReadThread",
  583. "parameters": [
  584. {
  585. "type": "string",
  586. "description": "id of notification thread",
  587. "name": "id",
  588. "in": "path",
  589. "required": true
  590. }
  591. ],
  592. "responses": {
  593. "205": {
  594. "$ref": "#/responses/empty"
  595. },
  596. "403": {
  597. "$ref": "#/responses/forbidden"
  598. },
  599. "404": {
  600. "$ref": "#/responses/notFound"
  601. }
  602. }
  603. }
  604. },
  605. "/org/{org}/repos": {
  606. "post": {
  607. "consumes": [
  608. "application/json"
  609. ],
  610. "produces": [
  611. "application/json"
  612. ],
  613. "tags": [
  614. "organization"
  615. ],
  616. "summary": "Create a repository in an organization",
  617. "operationId": "createOrgRepoDeprecated",
  618. "deprecated": true,
  619. "parameters": [
  620. {
  621. "type": "string",
  622. "description": "name of organization",
  623. "name": "org",
  624. "in": "path",
  625. "required": true
  626. },
  627. {
  628. "name": "body",
  629. "in": "body",
  630. "schema": {
  631. "$ref": "#/definitions/CreateRepoOption"
  632. }
  633. }
  634. ],
  635. "responses": {
  636. "201": {
  637. "$ref": "#/responses/Repository"
  638. },
  639. "403": {
  640. "$ref": "#/responses/forbidden"
  641. },
  642. "422": {
  643. "$ref": "#/responses/validationError"
  644. }
  645. }
  646. }
  647. },
  648. "/orgs": {
  649. "get": {
  650. "produces": [
  651. "application/json"
  652. ],
  653. "tags": [
  654. "organization"
  655. ],
  656. "summary": "Get list of organizations",
  657. "operationId": "orgGetAll",
  658. "parameters": [
  659. {
  660. "type": "integer",
  661. "description": "page number of results to return (1-based)",
  662. "name": "page",
  663. "in": "query"
  664. },
  665. {
  666. "type": "integer",
  667. "description": "page size of results",
  668. "name": "limit",
  669. "in": "query"
  670. }
  671. ],
  672. "responses": {
  673. "200": {
  674. "$ref": "#/responses/OrganizationList"
  675. }
  676. }
  677. },
  678. "post": {
  679. "consumes": [
  680. "application/json"
  681. ],
  682. "produces": [
  683. "application/json"
  684. ],
  685. "tags": [
  686. "organization"
  687. ],
  688. "summary": "Create an organization",
  689. "operationId": "orgCreate",
  690. "parameters": [
  691. {
  692. "name": "organization",
  693. "in": "body",
  694. "required": true,
  695. "schema": {
  696. "$ref": "#/definitions/CreateOrgOption"
  697. }
  698. }
  699. ],
  700. "responses": {
  701. "201": {
  702. "$ref": "#/responses/Organization"
  703. },
  704. "403": {
  705. "$ref": "#/responses/forbidden"
  706. },
  707. "422": {
  708. "$ref": "#/responses/validationError"
  709. }
  710. }
  711. }
  712. },
  713. "/orgs/{org}": {
  714. "get": {
  715. "produces": [
  716. "application/json"
  717. ],
  718. "tags": [
  719. "organization"
  720. ],
  721. "summary": "Get an organization",
  722. "operationId": "orgGet",
  723. "parameters": [
  724. {
  725. "type": "string",
  726. "description": "name of the organization to get",
  727. "name": "org",
  728. "in": "path",
  729. "required": true
  730. }
  731. ],
  732. "responses": {
  733. "200": {
  734. "$ref": "#/responses/Organization"
  735. }
  736. }
  737. },
  738. "delete": {
  739. "produces": [
  740. "application/json"
  741. ],
  742. "tags": [
  743. "organization"
  744. ],
  745. "summary": "Delete an organization",
  746. "operationId": "orgDelete",
  747. "parameters": [
  748. {
  749. "type": "string",
  750. "description": "organization that is to be deleted",
  751. "name": "org",
  752. "in": "path",
  753. "required": true
  754. }
  755. ],
  756. "responses": {
  757. "204": {
  758. "$ref": "#/responses/empty"
  759. }
  760. }
  761. },
  762. "patch": {
  763. "consumes": [
  764. "application/json"
  765. ],
  766. "produces": [
  767. "application/json"
  768. ],
  769. "tags": [
  770. "organization"
  771. ],
  772. "summary": "Edit an organization",
  773. "operationId": "orgEdit",
  774. "parameters": [
  775. {
  776. "type": "string",
  777. "description": "name of the organization to edit",
  778. "name": "org",
  779. "in": "path",
  780. "required": true
  781. },
  782. {
  783. "name": "body",
  784. "in": "body",
  785. "required": true,
  786. "schema": {
  787. "$ref": "#/definitions/EditOrgOption"
  788. }
  789. }
  790. ],
  791. "responses": {
  792. "200": {
  793. "$ref": "#/responses/Organization"
  794. }
  795. }
  796. }
  797. },
  798. "/orgs/{org}/hooks": {
  799. "get": {
  800. "produces": [
  801. "application/json"
  802. ],
  803. "tags": [
  804. "organization"
  805. ],
  806. "summary": "List an organization's webhooks",
  807. "operationId": "orgListHooks",
  808. "parameters": [
  809. {
  810. "type": "string",
  811. "description": "name of the organization",
  812. "name": "org",
  813. "in": "path",
  814. "required": true
  815. },
  816. {
  817. "type": "integer",
  818. "description": "page number of results to return (1-based)",
  819. "name": "page",
  820. "in": "query"
  821. },
  822. {
  823. "type": "integer",
  824. "description": "page size of results",
  825. "name": "limit",
  826. "in": "query"
  827. }
  828. ],
  829. "responses": {
  830. "200": {
  831. "$ref": "#/responses/HookList"
  832. }
  833. }
  834. }
  835. },
  836. "/orgs/{org}/hooks/": {
  837. "post": {
  838. "consumes": [
  839. "application/json"
  840. ],
  841. "produces": [
  842. "application/json"
  843. ],
  844. "tags": [
  845. "organization"
  846. ],
  847. "summary": "Create a hook",
  848. "operationId": "orgCreateHook",
  849. "parameters": [
  850. {
  851. "type": "string",
  852. "description": "name of the organization",
  853. "name": "org",
  854. "in": "path",
  855. "required": true
  856. },
  857. {
  858. "name": "body",
  859. "in": "body",
  860. "required": true,
  861. "schema": {
  862. "$ref": "#/definitions/CreateHookOption"
  863. }
  864. }
  865. ],
  866. "responses": {
  867. "201": {
  868. "$ref": "#/responses/Hook"
  869. }
  870. }
  871. }
  872. },
  873. "/orgs/{org}/hooks/{id}": {
  874. "get": {
  875. "produces": [
  876. "application/json"
  877. ],
  878. "tags": [
  879. "organization"
  880. ],
  881. "summary": "Get a hook",
  882. "operationId": "orgGetHook",
  883. "parameters": [
  884. {
  885. "type": "string",
  886. "description": "name of the organization",
  887. "name": "org",
  888. "in": "path",
  889. "required": true
  890. },
  891. {
  892. "type": "integer",
  893. "format": "int64",
  894. "description": "id of the hook to get",
  895. "name": "id",
  896. "in": "path",
  897. "required": true
  898. }
  899. ],
  900. "responses": {
  901. "200": {
  902. "$ref": "#/responses/Hook"
  903. }
  904. }
  905. },
  906. "delete": {
  907. "produces": [
  908. "application/json"
  909. ],
  910. "tags": [
  911. "organization"
  912. ],
  913. "summary": "Delete a hook",
  914. "operationId": "orgDeleteHook",
  915. "parameters": [
  916. {
  917. "type": "string",
  918. "description": "name of the organization",
  919. "name": "org",
  920. "in": "path",
  921. "required": true
  922. },
  923. {
  924. "type": "integer",
  925. "format": "int64",
  926. "description": "id of the hook to delete",
  927. "name": "id",
  928. "in": "path",
  929. "required": true
  930. }
  931. ],
  932. "responses": {
  933. "204": {
  934. "$ref": "#/responses/empty"
  935. }
  936. }
  937. },
  938. "patch": {
  939. "consumes": [
  940. "application/json"
  941. ],
  942. "produces": [
  943. "application/json"
  944. ],
  945. "tags": [
  946. "organization"
  947. ],
  948. "summary": "Update a hook",
  949. "operationId": "orgEditHook",
  950. "parameters": [
  951. {
  952. "type": "string",
  953. "description": "name of the organization",
  954. "name": "org",
  955. "in": "path",
  956. "required": true
  957. },
  958. {
  959. "type": "integer",
  960. "format": "int64",
  961. "description": "id of the hook to update",
  962. "name": "id",
  963. "in": "path",
  964. "required": true
  965. },
  966. {
  967. "name": "body",
  968. "in": "body",
  969. "schema": {
  970. "$ref": "#/definitions/EditHookOption"
  971. }
  972. }
  973. ],
  974. "responses": {
  975. "200": {
  976. "$ref": "#/responses/Hook"
  977. }
  978. }
  979. }
  980. },
  981. "/orgs/{org}/labels": {
  982. "get": {
  983. "produces": [
  984. "application/json"
  985. ],
  986. "tags": [
  987. "organization"
  988. ],
  989. "summary": "List an organization's labels",
  990. "operationId": "orgListLabels",
  991. "parameters": [
  992. {
  993. "type": "string",
  994. "description": "name of the organization",
  995. "name": "org",
  996. "in": "path",
  997. "required": true
  998. },
  999. {
  1000. "type": "integer",
  1001. "description": "page number of results to return (1-based)",
  1002. "name": "page",
  1003. "in": "query"
  1004. },
  1005. {
  1006. "type": "integer",
  1007. "description": "page size of results",
  1008. "name": "limit",
  1009. "in": "query"
  1010. }
  1011. ],
  1012. "responses": {
  1013. "200": {
  1014. "$ref": "#/responses/LabelList"
  1015. }
  1016. }
  1017. },
  1018. "post": {
  1019. "consumes": [
  1020. "application/json"
  1021. ],
  1022. "produces": [
  1023. "application/json"
  1024. ],
  1025. "tags": [
  1026. "organization"
  1027. ],
  1028. "summary": "Create a label for an organization",
  1029. "operationId": "orgCreateLabel",
  1030. "parameters": [
  1031. {
  1032. "type": "string",
  1033. "description": "name of the organization",
  1034. "name": "org",
  1035. "in": "path",
  1036. "required": true
  1037. },
  1038. {
  1039. "name": "body",
  1040. "in": "body",
  1041. "schema": {
  1042. "$ref": "#/definitions/CreateLabelOption"
  1043. }
  1044. }
  1045. ],
  1046. "responses": {
  1047. "201": {
  1048. "$ref": "#/responses/Label"
  1049. },
  1050. "422": {
  1051. "$ref": "#/responses/validationError"
  1052. }
  1053. }
  1054. }
  1055. },
  1056. "/orgs/{org}/labels/{id}": {
  1057. "get": {
  1058. "produces": [
  1059. "application/json"
  1060. ],
  1061. "tags": [
  1062. "organization"
  1063. ],
  1064. "summary": "Get a single label",
  1065. "operationId": "orgGetLabel",
  1066. "parameters": [
  1067. {
  1068. "type": "string",
  1069. "description": "name of the organization",
  1070. "name": "org",
  1071. "in": "path",
  1072. "required": true
  1073. },
  1074. {
  1075. "type": "integer",
  1076. "format": "int64",
  1077. "description": "id of the label to get",
  1078. "name": "id",
  1079. "in": "path",
  1080. "required": true
  1081. }
  1082. ],
  1083. "responses": {
  1084. "200": {
  1085. "$ref": "#/responses/Label"
  1086. }
  1087. }
  1088. },
  1089. "delete": {
  1090. "tags": [
  1091. "organization"
  1092. ],
  1093. "summary": "Delete a label",
  1094. "operationId": "orgDeleteLabel",
  1095. "parameters": [
  1096. {
  1097. "type": "string",
  1098. "description": "name of the organization",
  1099. "name": "org",
  1100. "in": "path",
  1101. "required": true
  1102. },
  1103. {
  1104. "type": "integer",
  1105. "format": "int64",
  1106. "description": "id of the label to delete",
  1107. "name": "id",
  1108. "in": "path",
  1109. "required": true
  1110. }
  1111. ],
  1112. "responses": {
  1113. "204": {
  1114. "$ref": "#/responses/empty"
  1115. }
  1116. }
  1117. },
  1118. "patch": {
  1119. "consumes": [
  1120. "application/json"
  1121. ],
  1122. "produces": [
  1123. "application/json"
  1124. ],
  1125. "tags": [
  1126. "organization"
  1127. ],
  1128. "summary": "Update a label",
  1129. "operationId": "orgEditLabel",
  1130. "parameters": [
  1131. {
  1132. "type": "string",
  1133. "description": "name of the organization",
  1134. "name": "org",
  1135. "in": "path",
  1136. "required": true
  1137. },
  1138. {
  1139. "type": "integer",
  1140. "format": "int64",
  1141. "description": "id of the label to edit",
  1142. "name": "id",
  1143. "in": "path",
  1144. "required": true
  1145. },
  1146. {
  1147. "name": "body",
  1148. "in": "body",
  1149. "schema": {
  1150. "$ref": "#/definitions/EditLabelOption"
  1151. }
  1152. }
  1153. ],
  1154. "responses": {
  1155. "200": {
  1156. "$ref": "#/responses/Label"
  1157. },
  1158. "422": {
  1159. "$ref": "#/responses/validationError"
  1160. }
  1161. }
  1162. }
  1163. },
  1164. "/orgs/{org}/members": {
  1165. "get": {
  1166. "produces": [
  1167. "application/json"
  1168. ],
  1169. "tags": [
  1170. "organization"
  1171. ],
  1172. "summary": "List an organization's members",
  1173. "operationId": "orgListMembers",
  1174. "parameters": [
  1175. {
  1176. "type": "string",
  1177. "description": "name of the organization",
  1178. "name": "org",
  1179. "in": "path",
  1180. "required": true
  1181. },
  1182. {
  1183. "type": "integer",
  1184. "description": "page number of results to return (1-based)",
  1185. "name": "page",
  1186. "in": "query"
  1187. },
  1188. {
  1189. "type": "integer",
  1190. "description": "page size of results",
  1191. "name": "limit",
  1192. "in": "query"
  1193. }
  1194. ],
  1195. "responses": {
  1196. "200": {
  1197. "$ref": "#/responses/UserList"
  1198. }
  1199. }
  1200. }
  1201. },
  1202. "/orgs/{org}/members/{username}": {
  1203. "get": {
  1204. "tags": [
  1205. "organization"
  1206. ],
  1207. "summary": "Check if a user is a member of an organization",
  1208. "operationId": "orgIsMember",
  1209. "parameters": [
  1210. {
  1211. "type": "string",
  1212. "description": "name of the organization",
  1213. "name": "org",
  1214. "in": "path",
  1215. "required": true
  1216. },
  1217. {
  1218. "type": "string",
  1219. "description": "username of the user",
  1220. "name": "username",
  1221. "in": "path",
  1222. "required": true
  1223. }
  1224. ],
  1225. "responses": {
  1226. "204": {
  1227. "description": "user is a member"
  1228. },
  1229. "302": {
  1230. "description": "redirection to /orgs/{org}/public_members/{username}"
  1231. },
  1232. "404": {
  1233. "description": "user is not a member"
  1234. }
  1235. }
  1236. },
  1237. "delete": {
  1238. "produces": [
  1239. "application/json"
  1240. ],
  1241. "tags": [
  1242. "organization"
  1243. ],
  1244. "summary": "Remove a member from an organization",
  1245. "operationId": "orgDeleteMember",
  1246. "parameters": [
  1247. {
  1248. "type": "string",
  1249. "description": "name of the organization",
  1250. "name": "org",
  1251. "in": "path",
  1252. "required": true
  1253. },
  1254. {
  1255. "type": "string",
  1256. "description": "username of the user",
  1257. "name": "username",
  1258. "in": "path",
  1259. "required": true
  1260. }
  1261. ],
  1262. "responses": {
  1263. "204": {
  1264. "description": "member removed"
  1265. }
  1266. }
  1267. }
  1268. },
  1269. "/orgs/{org}/public_members": {
  1270. "get": {
  1271. "produces": [
  1272. "application/json"
  1273. ],
  1274. "tags": [
  1275. "organization"
  1276. ],
  1277. "summary": "List an organization's public members",
  1278. "operationId": "orgListPublicMembers",
  1279. "parameters": [
  1280. {
  1281. "type": "string",
  1282. "description": "name of the organization",
  1283. "name": "org",
  1284. "in": "path",
  1285. "required": true
  1286. },
  1287. {
  1288. "type": "integer",
  1289. "description": "page number of results to return (1-based)",
  1290. "name": "page",
  1291. "in": "query"
  1292. },
  1293. {
  1294. "type": "integer",
  1295. "description": "page size of results",
  1296. "name": "limit",
  1297. "in": "query"
  1298. }
  1299. ],
  1300. "responses": {
  1301. "200": {
  1302. "$ref": "#/responses/UserList"
  1303. }
  1304. }
  1305. }
  1306. },
  1307. "/orgs/{org}/public_members/{username}": {
  1308. "get": {
  1309. "tags": [
  1310. "organization"
  1311. ],
  1312. "summary": "Check if a user is a public member of an organization",
  1313. "operationId": "orgIsPublicMember",
  1314. "parameters": [
  1315. {
  1316. "type": "string",
  1317. "description": "name of the organization",
  1318. "name": "org",
  1319. "in": "path",
  1320. "required": true
  1321. },
  1322. {
  1323. "type": "string",
  1324. "description": "username of the user",
  1325. "name": "username",
  1326. "in": "path",
  1327. "required": true
  1328. }
  1329. ],
  1330. "responses": {
  1331. "204": {
  1332. "description": "user is a public member"
  1333. },
  1334. "404": {
  1335. "description": "user is not a public member"
  1336. }
  1337. }
  1338. },
  1339. "put": {
  1340. "produces": [
  1341. "application/json"
  1342. ],
  1343. "tags": [
  1344. "organization"
  1345. ],
  1346. "summary": "Publicize a user's membership",
  1347. "operationId": "orgPublicizeMember",
  1348. "parameters": [
  1349. {
  1350. "type": "string",
  1351. "description": "name of the organization",
  1352. "name": "org",
  1353. "in": "path",
  1354. "required": true
  1355. },
  1356. {
  1357. "type": "string",
  1358. "description": "username of the user",
  1359. "name": "username",
  1360. "in": "path",
  1361. "required": true
  1362. }
  1363. ],
  1364. "responses": {
  1365. "204": {
  1366. "description": "membership publicized"
  1367. },
  1368. "403": {
  1369. "$ref": "#/responses/forbidden"
  1370. }
  1371. }
  1372. },
  1373. "delete": {
  1374. "produces": [
  1375. "application/json"
  1376. ],
  1377. "tags": [
  1378. "organization"
  1379. ],
  1380. "summary": "Conceal a user's membership",
  1381. "operationId": "orgConcealMember",
  1382. "parameters": [
  1383. {
  1384. "type": "string",
  1385. "description": "name of the organization",
  1386. "name": "org",
  1387. "in": "path",
  1388. "required": true
  1389. },
  1390. {
  1391. "type": "string",
  1392. "description": "username of the user",
  1393. "name": "username",
  1394. "in": "path",
  1395. "required": true
  1396. }
  1397. ],
  1398. "responses": {
  1399. "204": {
  1400. "$ref": "#/responses/empty"
  1401. },
  1402. "403": {
  1403. "$ref": "#/responses/forbidden"
  1404. }
  1405. }
  1406. }
  1407. },
  1408. "/orgs/{org}/repos": {
  1409. "get": {
  1410. "produces": [
  1411. "application/json"
  1412. ],
  1413. "tags": [
  1414. "organization"
  1415. ],
  1416. "summary": "List an organization's repos",
  1417. "operationId": "orgListRepos",
  1418. "parameters": [
  1419. {
  1420. "type": "string",
  1421. "description": "name of the organization",
  1422. "name": "org",
  1423. "in": "path",
  1424. "required": true
  1425. },
  1426. {
  1427. "type": "integer",
  1428. "description": "page number of results to return (1-based)",
  1429. "name": "page",
  1430. "in": "query"
  1431. },
  1432. {
  1433. "type": "integer",
  1434. "description": "page size of results",
  1435. "name": "limit",
  1436. "in": "query"
  1437. }
  1438. ],
  1439. "responses": {
  1440. "200": {
  1441. "$ref": "#/responses/RepositoryList"
  1442. }
  1443. }
  1444. },
  1445. "post": {
  1446. "consumes": [
  1447. "application/json"
  1448. ],
  1449. "produces": [
  1450. "application/json"
  1451. ],
  1452. "tags": [
  1453. "organization"
  1454. ],
  1455. "summary": "Create a repository in an organization",
  1456. "operationId": "createOrgRepo",
  1457. "parameters": [
  1458. {
  1459. "type": "string",
  1460. "description": "name of organization",
  1461. "name": "org",
  1462. "in": "path",
  1463. "required": true
  1464. },
  1465. {
  1466. "name": "body",
  1467. "in": "body",
  1468. "schema": {
  1469. "$ref": "#/definitions/CreateRepoOption"
  1470. }
  1471. }
  1472. ],
  1473. "responses": {
  1474. "201": {
  1475. "$ref": "#/responses/Repository"
  1476. },
  1477. "403": {
  1478. "$ref": "#/responses/forbidden"
  1479. },
  1480. "404": {
  1481. "$ref": "#/responses/notFound"
  1482. }
  1483. }
  1484. }
  1485. },
  1486. "/orgs/{org}/teams": {
  1487. "get": {
  1488. "produces": [
  1489. "application/json"
  1490. ],
  1491. "tags": [
  1492. "organization"
  1493. ],
  1494. "summary": "List an organization's teams",
  1495. "operationId": "orgListTeams",
  1496. "parameters": [
  1497. {
  1498. "type": "string",
  1499. "description": "name of the organization",
  1500. "name": "org",
  1501. "in": "path",
  1502. "required": true
  1503. },
  1504. {
  1505. "type": "integer",
  1506. "description": "page number of results to return (1-based)",
  1507. "name": "page",
  1508. "in": "query"
  1509. },
  1510. {
  1511. "type": "integer",
  1512. "description": "page size of results",
  1513. "name": "limit",
  1514. "in": "query"
  1515. }
  1516. ],
  1517. "responses": {
  1518. "200": {
  1519. "$ref": "#/responses/TeamList"
  1520. }
  1521. }
  1522. },
  1523. "post": {
  1524. "consumes": [
  1525. "application/json"
  1526. ],
  1527. "produces": [
  1528. "application/json"
  1529. ],
  1530. "tags": [
  1531. "organization"
  1532. ],
  1533. "summary": "Create a team",
  1534. "operationId": "orgCreateTeam",
  1535. "parameters": [
  1536. {
  1537. "type": "string",
  1538. "description": "name of the organization",
  1539. "name": "org",
  1540. "in": "path",
  1541. "required": true
  1542. },
  1543. {
  1544. "name": "body",
  1545. "in": "body",
  1546. "schema": {
  1547. "$ref": "#/definitions/CreateTeamOption"
  1548. }
  1549. }
  1550. ],
  1551. "responses": {
  1552. "201": {
  1553. "$ref": "#/responses/Team"
  1554. },
  1555. "422": {
  1556. "$ref": "#/responses/validationError"
  1557. }
  1558. }
  1559. }
  1560. },
  1561. "/orgs/{org}/teams/search": {
  1562. "get": {
  1563. "produces": [
  1564. "application/json"
  1565. ],
  1566. "tags": [
  1567. "organization"
  1568. ],
  1569. "summary": "Search for teams within an organization",
  1570. "operationId": "teamSearch",
  1571. "parameters": [
  1572. {
  1573. "type": "string",
  1574. "description": "name of the organization",
  1575. "name": "org",
  1576. "in": "path",
  1577. "required": true
  1578. },
  1579. {
  1580. "type": "string",
  1581. "description": "keywords to search",
  1582. "name": "q",
  1583. "in": "query"
  1584. },
  1585. {
  1586. "type": "boolean",
  1587. "description": "include search within team description (defaults to true)",
  1588. "name": "include_desc",
  1589. "in": "query"
  1590. },
  1591. {
  1592. "type": "integer",
  1593. "description": "page number of results to return (1-based)",
  1594. "name": "page",
  1595. "in": "query"
  1596. },
  1597. {
  1598. "type": "integer",
  1599. "description": "page size of results",
  1600. "name": "limit",
  1601. "in": "query"
  1602. }
  1603. ],
  1604. "responses": {
  1605. "200": {
  1606. "description": "SearchResults of a successful search",
  1607. "schema": {
  1608. "type": "object",
  1609. "properties": {
  1610. "data": {
  1611. "type": "array",
  1612. "items": {
  1613. "$ref": "#/definitions/Team"
  1614. }
  1615. },
  1616. "ok": {
  1617. "type": "boolean"
  1618. }
  1619. }
  1620. }
  1621. }
  1622. }
  1623. }
  1624. },
  1625. "/repos/issues/search": {
  1626. "get": {
  1627. "produces": [
  1628. "application/json"
  1629. ],
  1630. "tags": [
  1631. "issue"
  1632. ],
  1633. "summary": "Search for issues across the repositories that the user has access to",
  1634. "operationId": "issueSearchIssues",
  1635. "parameters": [
  1636. {
  1637. "type": "string",
  1638. "description": "whether issue is open or closed",
  1639. "name": "state",
  1640. "in": "query"
  1641. },
  1642. {
  1643. "type": "string",
  1644. "description": "comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded",
  1645. "name": "labels",
  1646. "in": "query"
  1647. },
  1648. {
  1649. "type": "string",
  1650. "description": "search string",
  1651. "name": "q",
  1652. "in": "query"
  1653. },
  1654. {
  1655. "type": "integer",
  1656. "format": "int64",
  1657. "description": "repository to prioritize in the results",
  1658. "name": "priority_repo_id",
  1659. "in": "query"
  1660. },
  1661. {
  1662. "type": "string",
  1663. "description": "filter by type (issues / pulls) if set",
  1664. "name": "type",
  1665. "in": "query"
  1666. },
  1667. {
  1668. "type": "integer",
  1669. "description": "page number of requested issues",
  1670. "name": "page",
  1671. "in": "query"
  1672. }
  1673. ],
  1674. "responses": {
  1675. "200": {
  1676. "$ref": "#/responses/IssueList"
  1677. }
  1678. }
  1679. }
  1680. },
  1681. "/repos/migrate": {
  1682. "post": {
  1683. "consumes": [
  1684. "application/json"
  1685. ],
  1686. "produces": [
  1687. "application/json"
  1688. ],
  1689. "tags": [
  1690. "repository"
  1691. ],
  1692. "summary": "Migrate a remote git repository",
  1693. "operationId": "repoMigrate",
  1694. "parameters": [
  1695. {
  1696. "name": "body",
  1697. "in": "body",
  1698. "schema": {
  1699. "$ref": "#/definitions/MigrateRepoForm"
  1700. }
  1701. }
  1702. ],
  1703. "responses": {
  1704. "201": {
  1705. "$ref": "#/responses/Repository"
  1706. },
  1707. "403": {
  1708. "$ref": "#/responses/forbidden"
  1709. },
  1710. "422": {
  1711. "$ref": "#/responses/validationError"
  1712. }
  1713. }
  1714. }
  1715. },
  1716. "/repos/search": {
  1717. "get": {
  1718. "produces": [
  1719. "application/json"
  1720. ],
  1721. "tags": [
  1722. "repository"
  1723. ],
  1724. "summary": "Search for repositories",
  1725. "operationId": "repoSearch",
  1726. "parameters": [
  1727. {
  1728. "type": "string",
  1729. "description": "keyword",
  1730. "name": "q",
  1731. "in": "query"
  1732. },
  1733. {
  1734. "type": "boolean",
  1735. "description": "Limit search to repositories with keyword as topic",
  1736. "name": "topic",
  1737. "in": "query"
  1738. },
  1739. {
  1740. "type": "boolean",
  1741. "description": "include search of keyword within repository description",
  1742. "name": "includeDesc",
  1743. "in": "query"
  1744. },
  1745. {
  1746. "type": "integer",
  1747. "format": "int64",
  1748. "description": "search only for repos that the user with the given id owns or contributes to",
  1749. "name": "uid",
  1750. "in": "query"
  1751. },
  1752. {
  1753. "type": "integer",
  1754. "format": "int64",
  1755. "description": "repo owner to prioritize in the results",
  1756. "name": "priority_owner_id",
  1757. "in": "query"
  1758. },
  1759. {
  1760. "type": "integer",
  1761. "format": "int64",
  1762. "description": "search only for repos that the user with the given id has starred",
  1763. "name": "starredBy",
  1764. "in": "query"
  1765. },
  1766. {
  1767. "type": "boolean",
  1768. "description": "include private repositories this user has access to (defaults to true)",
  1769. "name": "private",
  1770. "in": "query"
  1771. },
  1772. {
  1773. "type": "boolean",
  1774. "description": "show only pubic, private or all repositories (defaults to all)",
  1775. "name": "is_private",
  1776. "in": "query"
  1777. },
  1778. {
  1779. "type": "boolean",
  1780. "description": "include template repositories this user has access to (defaults to true)",
  1781. "name": "template",
  1782. "in": "query"
  1783. },
  1784. {
  1785. "type": "boolean",
  1786. "description": "show only archived, non-archived or all repositories (defaults to all)",
  1787. "name": "archived",
  1788. "in": "query"
  1789. },
  1790. {
  1791. "type": "string",
  1792. "description": "type of repository to search for. Supported values are \"fork\", \"source\", \"mirror\" and \"collaborative\"",
  1793. "name": "mode",
  1794. "in": "query"
  1795. },
  1796. {
  1797. "type": "boolean",
  1798. "description": "if `uid` is given, search only for repos that the user owns",
  1799. "name": "exclusive",
  1800. "in": "query"
  1801. },
  1802. {
  1803. "type": "string",
  1804. "description": "sort repos by attribute. Supported values are \"alpha\", \"created\", \"updated\", \"size\", and \"id\". Default is \"alpha\"",
  1805. "name": "sort",
  1806. "in": "query"
  1807. },
  1808. {
  1809. "type": "string",
  1810. "description": "sort order, either \"asc\" (ascending) or \"desc\" (descending). Default is \"asc\", ignored if \"sort\" is not specified.",
  1811. "name": "order",
  1812. "in": "query"
  1813. },
  1814. {
  1815. "type": "integer",
  1816. "description": "page number of results to return (1-based)",
  1817. "name": "page",
  1818. "in": "query"
  1819. },
  1820. {
  1821. "type": "integer",
  1822. "description": "page size of results",
  1823. "name": "limit",
  1824. "in": "query"
  1825. }
  1826. ],
  1827. "responses": {
  1828. "200": {
  1829. "$ref": "#/responses/SearchResults"
  1830. },
  1831. "422": {
  1832. "$ref": "#/responses/validationError"
  1833. }
  1834. }
  1835. }
  1836. },
  1837. "/repos/{owner}/{repo}": {
  1838. "get": {
  1839. "produces": [
  1840. "application/json"
  1841. ],
  1842. "tags": [
  1843. "repository"
  1844. ],
  1845. "summary": "Get a repository",
  1846. "operationId": "repoGet",
  1847. "parameters": [
  1848. {
  1849. "type": "string",
  1850. "description": "owner of the repo",
  1851. "name": "owner",
  1852. "in": "path",
  1853. "required": true
  1854. },
  1855. {
  1856. "type": "string",
  1857. "description": "name of the repo",
  1858. "name": "repo",
  1859. "in": "path",
  1860. "required": true
  1861. }
  1862. ],
  1863. "responses": {
  1864. "200": {
  1865. "$ref": "#/responses/Repository"
  1866. }
  1867. }
  1868. },
  1869. "delete": {
  1870. "produces": [
  1871. "application/json"
  1872. ],
  1873. "tags": [
  1874. "repository"
  1875. ],
  1876. "summary": "Delete a repository",
  1877. "operationId": "repoDelete",
  1878. "parameters": [
  1879. {
  1880. "type": "string",
  1881. "description": "owner of the repo to delete",
  1882. "name": "owner",
  1883. "in": "path",
  1884. "required": true
  1885. },
  1886. {
  1887. "type": "string",
  1888. "description": "name of the repo to delete",
  1889. "name": "repo",
  1890. "in": "path",
  1891. "required": true
  1892. }
  1893. ],
  1894. "responses": {
  1895. "204": {
  1896. "$ref": "#/responses/empty"
  1897. },
  1898. "403": {
  1899. "$ref": "#/responses/forbidden"
  1900. }
  1901. }
  1902. },
  1903. "patch": {
  1904. "produces": [
  1905. "application/json"
  1906. ],
  1907. "tags": [
  1908. "repository"
  1909. ],
  1910. "summary": "Edit a repository's properties. Only fields that are set will be changed.",
  1911. "operationId": "repoEdit",
  1912. "parameters": [
  1913. {
  1914. "type": "string",
  1915. "description": "owner of the repo to edit",
  1916. "name": "owner",
  1917. "in": "path",
  1918. "required": true
  1919. },
  1920. {
  1921. "type": "string",
  1922. "description": "name of the repo to edit",
  1923. "name": "repo",
  1924. "in": "path",
  1925. "required": true
  1926. },
  1927. {
  1928. "description": "Properties of a repo that you can edit",
  1929. "name": "body",
  1930. "in": "body",
  1931. "schema": {
  1932. "$ref": "#/definitions/EditRepoOption"
  1933. }
  1934. }
  1935. ],
  1936. "responses": {
  1937. "200": {
  1938. "$ref": "#/responses/Repository"
  1939. },
  1940. "403": {
  1941. "$ref": "#/responses/forbidden"
  1942. },
  1943. "422": {
  1944. "$ref": "#/responses/validationError"
  1945. }
  1946. }
  1947. }
  1948. },
  1949. "/repos/{owner}/{repo}/archive/{archive}": {
  1950. "get": {
  1951. "produces": [
  1952. "application/json"
  1953. ],
  1954. "tags": [
  1955. "repository"
  1956. ],
  1957. "summary": "Get an archive of a repository",
  1958. "operationId": "repoGetArchive",
  1959. "parameters": [
  1960. {
  1961. "type": "string",
  1962. "description": "owner of the repo",
  1963. "name": "owner",
  1964. "in": "path",
  1965. "required": true
  1966. },
  1967. {
  1968. "type": "string",
  1969. "description": "name of the repo",
  1970. "name": "repo",
  1971. "in": "path",
  1972. "required": true
  1973. },
  1974. {
  1975. "type": "string",
  1976. "description": "archive to download, consisting of a git reference and archive",
  1977. "name": "archive",
  1978. "in": "path",
  1979. "required": true
  1980. }
  1981. ],
  1982. "responses": {
  1983. "200": {
  1984. "description": "success"
  1985. },
  1986. "404": {
  1987. "$ref": "#/responses/notFound"
  1988. }
  1989. }
  1990. }
  1991. },
  1992. "/repos/{owner}/{repo}/branch_protections": {
  1993. "get": {
  1994. "produces": [
  1995. "application/json"
  1996. ],
  1997. "tags": [
  1998. "repository"
  1999. ],
  2000. "summary": "List branch protections for a repository",
  2001. "operationId": "repoListBranchProtection",
  2002. "parameters": [
  2003. {
  2004. "type": "string",
  2005. "description": "owner of the repo",
  2006. "name": "owner",
  2007. "in": "path",
  2008. "required": true
  2009. },
  2010. {
  2011. "type": "string",
  2012. "description": "name of the repo",
  2013. "name": "repo",
  2014. "in": "path",
  2015. "required": true
  2016. }
  2017. ],
  2018. "responses": {
  2019. "200": {
  2020. "$ref": "#/responses/BranchProtectionList"
  2021. }
  2022. }
  2023. },
  2024. "post": {
  2025. "consumes": [
  2026. "application/json"
  2027. ],
  2028. "produces": [
  2029. "application/json"
  2030. ],
  2031. "tags": [
  2032. "repository"
  2033. ],
  2034. "summary": "Create a branch protections for a repository",
  2035. "operationId": "repoCreateBranchProtection",
  2036. "parameters": [
  2037. {
  2038. "type": "string",
  2039. "description": "owner of the repo",
  2040. "name": "owner",
  2041. "in": "path",
  2042. "required": true
  2043. },
  2044. {
  2045. "type": "string",
  2046. "description": "name of the repo",
  2047. "name": "repo",
  2048. "in": "path",
  2049. "required": true
  2050. },
  2051. {
  2052. "name": "body",
  2053. "in": "body",
  2054. "schema": {
  2055. "$ref": "#/definitions/CreateBranchProtectionOption"
  2056. }
  2057. }
  2058. ],
  2059. "responses": {
  2060. "201": {
  2061. "$ref": "#/responses/BranchProtection"
  2062. },
  2063. "403": {
  2064. "$ref": "#/responses/forbidden"
  2065. },
  2066. "404": {
  2067. "$ref": "#/responses/notFound"
  2068. },
  2069. "422": {
  2070. "$ref": "#/responses/validationError"
  2071. }
  2072. }
  2073. }
  2074. },
  2075. "/repos/{owner}/{repo}/branch_protections/{name}": {
  2076. "get": {
  2077. "produces": [
  2078. "application/json"
  2079. ],
  2080. "tags": [
  2081. "repository"
  2082. ],
  2083. "summary": "Get a specific branch protection for the repository",
  2084. "operationId": "repoGetBranchProtection",
  2085. "parameters": [
  2086. {
  2087. "type": "string",
  2088. "description": "owner of the repo",
  2089. "name": "owner",
  2090. "in": "path",
  2091. "required": true
  2092. },
  2093. {
  2094. "type": "string",
  2095. "description": "name of the repo",
  2096. "name": "repo",
  2097. "in": "path",
  2098. "required": true
  2099. },
  2100. {
  2101. "type": "string",
  2102. "description": "name of protected branch",
  2103. "name": "name",
  2104. "in": "path",
  2105. "required": true
  2106. }
  2107. ],
  2108. "responses": {
  2109. "200": {
  2110. "$ref": "#/responses/BranchProtection"
  2111. },
  2112. "404": {
  2113. "$ref": "#/responses/notFound"
  2114. }
  2115. }
  2116. },
  2117. "delete": {
  2118. "produces": [
  2119. "application/json"
  2120. ],
  2121. "tags": [
  2122. "repository"
  2123. ],
  2124. "summary": "Delete a specific branch protection for the repository",
  2125. "operationId": "repoDeleteBranchProtection",
  2126. "parameters": [
  2127. {
  2128. "type": "string",
  2129. "description": "owner of the repo",
  2130. "name": "owner",
  2131. "in": "path",
  2132. "required": true
  2133. },
  2134. {
  2135. "type": "string",
  2136. "description": "name of the repo",
  2137. "name": "repo",
  2138. "in": "path",
  2139. "required": true
  2140. },
  2141. {
  2142. "type": "string",
  2143. "description": "name of protected branch",
  2144. "name": "name",
  2145. "in": "path",
  2146. "required": true
  2147. }
  2148. ],
  2149. "responses": {
  2150. "204": {
  2151. "$ref": "#/responses/empty"
  2152. },
  2153. "404": {
  2154. "$ref": "#/responses/notFound"
  2155. }
  2156. }
  2157. },
  2158. "patch": {
  2159. "consumes": [
  2160. "application/json"
  2161. ],
  2162. "produces": [
  2163. "application/json"
  2164. ],
  2165. "tags": [
  2166. "repository"
  2167. ],
  2168. "summary": "Edit a branch protections for a repository. Only fields that are set will be changed",
  2169. "operationId": "repoEditBranchProtection",
  2170. "parameters": [
  2171. {
  2172. "type": "string",
  2173. "description": "owner of the repo",
  2174. "name": "owner",
  2175. "in": "path",
  2176. "required": true
  2177. },
  2178. {
  2179. "type": "string",
  2180. "description": "name of the repo",
  2181. "name": "repo",
  2182. "in": "path",
  2183. "required": true
  2184. },
  2185. {
  2186. "type": "string",
  2187. "description": "name of protected branch",
  2188. "name": "name",
  2189. "in": "path",
  2190. "required": true
  2191. },
  2192. {
  2193. "name": "body",
  2194. "in": "body",
  2195. "schema": {
  2196. "$ref": "#/definitions/EditBranchProtectionOption"
  2197. }
  2198. }
  2199. ],
  2200. "responses": {
  2201. "200": {
  2202. "$ref": "#/responses/BranchProtection"
  2203. },
  2204. "404": {
  2205. "$ref": "#/responses/notFound"
  2206. },
  2207. "422": {
  2208. "$ref": "#/responses/validationError"
  2209. }
  2210. }
  2211. }
  2212. },
  2213. "/repos/{owner}/{repo}/branches": {
  2214. "get": {
  2215. "produces": [
  2216. "application/json"
  2217. ],
  2218. "tags": [
  2219. "repository"
  2220. ],
  2221. "summary": "List a repository's branches",
  2222. "operationId": "repoListBranches",
  2223. "parameters": [
  2224. {
  2225. "type": "string",
  2226. "description": "owner of the repo",
  2227. "name": "owner",
  2228. "in": "path",
  2229. "required": true
  2230. },
  2231. {
  2232. "type": "string",
  2233. "description": "name of the repo",
  2234. "name": "repo",
  2235. "in": "path",
  2236. "required": true
  2237. }
  2238. ],
  2239. "responses": {
  2240. "200": {
  2241. "$ref": "#/responses/BranchList"
  2242. }
  2243. }
  2244. },
  2245. "post": {
  2246. "consumes": [
  2247. "application/json"
  2248. ],
  2249. "produces": [
  2250. "application/json"
  2251. ],
  2252. "tags": [
  2253. "repository"
  2254. ],
  2255. "summary": "Create a branch",
  2256. "operationId": "repoCreateBranch",
  2257. "parameters": [
  2258. {
  2259. "type": "string",
  2260. "description": "owner of the repo",
  2261. "name": "owner",
  2262. "in": "path",
  2263. "required": true
  2264. },
  2265. {
  2266. "type": "string",
  2267. "description": "name of the repo",
  2268. "name": "repo",
  2269. "in": "path",
  2270. "required": true
  2271. },
  2272. {
  2273. "name": "body",
  2274. "in": "body",
  2275. "schema": {
  2276. "$ref": "#/definitions/CreateBranchRepoOption"
  2277. }
  2278. }
  2279. ],
  2280. "responses": {
  2281. "201": {
  2282. "$ref": "#/responses/Branch"
  2283. },
  2284. "404": {
  2285. "description": "The old branch does not exist."
  2286. },
  2287. "409": {
  2288. "description": "The branch with the same name already exists."
  2289. }
  2290. }
  2291. }
  2292. },
  2293. "/repos/{owner}/{repo}/branches/{branch}": {
  2294. "get": {
  2295. "produces": [
  2296. "application/json"
  2297. ],
  2298. "tags": [
  2299. "repository"
  2300. ],
  2301. "summary": "Retrieve a specific branch from a repository, including its effective branch protection",
  2302. "operationId": "repoGetBranch",
  2303. "parameters": [
  2304. {
  2305. "type": "string",
  2306. "description": "owner of the repo",
  2307. "name": "owner",
  2308. "in": "path",
  2309. "required": true
  2310. },
  2311. {
  2312. "type": "string",
  2313. "description": "name of the repo",
  2314. "name": "repo",
  2315. "in": "path",
  2316. "required": true
  2317. },
  2318. {
  2319. "type": "string",
  2320. "description": "branch to get",
  2321. "name": "branch",
  2322. "in": "path",
  2323. "required": true
  2324. }
  2325. ],
  2326. "responses": {
  2327. "200": {
  2328. "$ref": "#/responses/Branch"
  2329. }
  2330. }
  2331. },
  2332. "delete": {
  2333. "produces": [
  2334. "application/json"
  2335. ],
  2336. "tags": [
  2337. "repository"
  2338. ],
  2339. "summary": "Delete a specific branch from a repository",
  2340. "operationId": "repoDeleteBranch",
  2341. "parameters": [
  2342. {
  2343. "type": "string",
  2344. "description": "owner of the repo",
  2345. "name": "owner",
  2346. "in": "path",
  2347. "required": true
  2348. },
  2349. {
  2350. "type": "string",
  2351. "description": "name of the repo",
  2352. "name": "repo",
  2353. "in": "path",
  2354. "required": true
  2355. },
  2356. {
  2357. "type": "string",
  2358. "description": "branch to delete",
  2359. "name": "branch",
  2360. "in": "path",
  2361. "required": true
  2362. }
  2363. ],
  2364. "responses": {
  2365. "204": {
  2366. "$ref": "#/responses/empty"
  2367. },
  2368. "403": {
  2369. "$ref": "#/responses/error"
  2370. }
  2371. }
  2372. }
  2373. },
  2374. "/repos/{owner}/{repo}/collaborators": {
  2375. "get": {
  2376. "produces": [
  2377. "application/json"
  2378. ],
  2379. "tags": [
  2380. "repository"
  2381. ],
  2382. "summary": "List a repository's collaborators",
  2383. "operationId": "repoListCollaborators",
  2384. "parameters": [
  2385. {
  2386. "type": "string",
  2387. "description": "owner of the repo",
  2388. "name": "owner",
  2389. "in": "path",
  2390. "required": true
  2391. },
  2392. {
  2393. "type": "string",
  2394. "description": "name of the repo",
  2395. "name": "repo",
  2396. "in": "path",
  2397. "required": true
  2398. },
  2399. {
  2400. "type": "integer",
  2401. "description": "page number of results to return (1-based)",
  2402. "name": "page",
  2403. "in": "query"
  2404. },
  2405. {
  2406. "type": "integer",
  2407. "description": "page size of results",
  2408. "name": "limit",
  2409. "in": "query"
  2410. }
  2411. ],
  2412. "responses": {
  2413. "200": {
  2414. "$ref": "#/responses/UserList"
  2415. }
  2416. }
  2417. }
  2418. },
  2419. "/repos/{owner}/{repo}/collaborators/{collaborator}": {
  2420. "get": {
  2421. "produces": [
  2422. "application/json"
  2423. ],
  2424. "tags": [
  2425. "repository"
  2426. ],
  2427. "summary": "Check if a user is a collaborator of a repository",
  2428. "operationId": "repoCheckCollaborator",
  2429. "parameters": [
  2430. {
  2431. "type": "string",
  2432. "description": "owner of the repo",
  2433. "name": "owner",
  2434. "in": "path",
  2435. "required": true
  2436. },
  2437. {
  2438. "type": "string",
  2439. "description": "name of the repo",
  2440. "name": "repo",
  2441. "in": "path",
  2442. "required": true
  2443. },
  2444. {
  2445. "type": "string",
  2446. "description": "username of the collaborator",
  2447. "name": "collaborator",
  2448. "in": "path",
  2449. "required": true
  2450. }
  2451. ],
  2452. "responses": {
  2453. "204": {
  2454. "$ref": "#/responses/empty"
  2455. },
  2456. "404": {
  2457. "$ref": "#/responses/notFound"
  2458. },
  2459. "422": {
  2460. "$ref": "#/responses/validationError"
  2461. }
  2462. }
  2463. },
  2464. "put": {
  2465. "produces": [
  2466. "application/json"
  2467. ],
  2468. "tags": [
  2469. "repository"
  2470. ],
  2471. "summary": "Add a collaborator to a repository",
  2472. "operationId": "repoAddCollaborator",
  2473. "parameters": [
  2474. {
  2475. "type": "string",
  2476. "description": "owner of the repo",
  2477. "name": "owner",
  2478. "in": "path",
  2479. "required": true
  2480. },
  2481. {
  2482. "type": "string",
  2483. "description": "name of the repo",
  2484. "name": "repo",
  2485. "in": "path",
  2486. "required": true
  2487. },
  2488. {
  2489. "type": "string",
  2490. "description": "username of the collaborator to add",
  2491. "name": "collaborator",
  2492. "in": "path",
  2493. "required": true
  2494. },
  2495. {
  2496. "name": "body",
  2497. "in": "body",
  2498. "schema": {
  2499. "$ref": "#/definitions/AddCollaboratorOption"
  2500. }
  2501. }
  2502. ],
  2503. "responses": {
  2504. "204": {
  2505. "$ref": "#/responses/empty"
  2506. },
  2507. "422": {
  2508. "$ref": "#/responses/validationError"
  2509. }
  2510. }
  2511. },
  2512. "delete": {
  2513. "produces": [
  2514. "application/json"
  2515. ],
  2516. "tags": [
  2517. "repository"
  2518. ],
  2519. "summary": "Delete a collaborator from a repository",
  2520. "operationId": "repoDeleteCollaborator",
  2521. "parameters": [
  2522. {
  2523. "type": "string",
  2524. "description": "owner of the repo",
  2525. "name": "owner",
  2526. "in": "path",
  2527. "required": true
  2528. },
  2529. {
  2530. "type": "string",
  2531. "description": "name of the repo",
  2532. "name": "repo",
  2533. "in": "path",
  2534. "required": true
  2535. },
  2536. {
  2537. "type": "string",
  2538. "description": "username of the collaborator to delete",
  2539. "name": "collaborator",
  2540. "in": "path",
  2541. "required": true
  2542. }
  2543. ],
  2544. "responses": {
  2545. "204": {
  2546. "$ref": "#/responses/empty"
  2547. },
  2548. "422": {
  2549. "$ref": "#/responses/validationError"
  2550. }
  2551. }
  2552. }
  2553. },
  2554. "/repos/{owner}/{repo}/commits": {
  2555. "get": {
  2556. "produces": [
  2557. "application/json"
  2558. ],
  2559. "tags": [
  2560. "repository"
  2561. ],
  2562. "summary": "Get a list of all commits from a repository",
  2563. "operationId": "repoGetAllCommits",
  2564. "parameters": [
  2565. {
  2566. "type": "string",
  2567. "description": "owner of the repo",
  2568. "name": "owner",
  2569. "in": "path",
  2570. "required": true
  2571. },
  2572. {
  2573. "type": "string",
  2574. "description": "name of the repo",
  2575. "name": "repo",
  2576. "in": "path",
  2577. "required": true
  2578. },
  2579. {
  2580. "type": "string",
  2581. "description": "SHA or branch to start listing commits from (usually 'master')",
  2582. "name": "sha",
  2583. "in": "query"
  2584. },
  2585. {
  2586. "type": "integer",
  2587. "description": "page number of results to return (1-based)",
  2588. "name": "page",
  2589. "in": "query"
  2590. },
  2591. {
  2592. "type": "integer",
  2593. "description": "page size of results",
  2594. "name": "limit",
  2595. "in": "query"
  2596. }
  2597. ],
  2598. "responses": {
  2599. "200": {
  2600. "$ref": "#/responses/CommitList"
  2601. },
  2602. "404": {
  2603. "$ref": "#/responses/notFound"
  2604. },
  2605. "409": {
  2606. "$ref": "#/responses/EmptyRepository"
  2607. }
  2608. }
  2609. }
  2610. },
  2611. "/repos/{owner}/{repo}/commits/{ref}/statuses": {
  2612. "get": {
  2613. "produces": [
  2614. "application/json"
  2615. ],
  2616. "tags": [
  2617. "repository"
  2618. ],
  2619. "summary": "Get a commit's combined status, by branch/tag/commit reference",
  2620. "operationId": "repoGetCombinedStatusByRef",
  2621. "parameters": [
  2622. {
  2623. "type": "string",
  2624. "description": "owner of the repo",
  2625. "name": "owner",
  2626. "in": "path",
  2627. "required": true
  2628. },
  2629. {
  2630. "type": "string",
  2631. "description": "name of the repo",
  2632. "name": "repo",
  2633. "in": "path",
  2634. "required": true
  2635. },
  2636. {
  2637. "type": "string",
  2638. "description": "name of branch/tag/commit",
  2639. "name": "ref",
  2640. "in": "path",
  2641. "required": true
  2642. },
  2643. {
  2644. "type": "integer",
  2645. "description": "page number of results",
  2646. "name": "page",
  2647. "in": "query"
  2648. }
  2649. ],
  2650. "responses": {
  2651. "200": {
  2652. "$ref": "#/responses/Status"
  2653. },
  2654. "400": {
  2655. "$ref": "#/responses/error"
  2656. }
  2657. }
  2658. }
  2659. },
  2660. "/repos/{owner}/{repo}/contents": {
  2661. "get": {
  2662. "produces": [
  2663. "application/json"
  2664. ],
  2665. "tags": [
  2666. "repository"
  2667. ],
  2668. "summary": "Gets the metadata of all the entries of the root dir",
  2669. "operationId": "repoGetContentsList",
  2670. "parameters": [
  2671. {
  2672. "type": "string",
  2673. "description": "owner of the repo",
  2674. "name": "owner",
  2675. "in": "path",
  2676. "required": true
  2677. },
  2678. {
  2679. "type": "string",
  2680. "description": "name of the repo",
  2681. "name": "repo",
  2682. "in": "path",
  2683. "required": true
  2684. },
  2685. {
  2686. "type": "string",
  2687. "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)",
  2688. "name": "ref",
  2689. "in": "query"
  2690. }
  2691. ],
  2692. "responses": {
  2693. "200": {
  2694. "$ref": "#/responses/ContentsListResponse"
  2695. },
  2696. "404": {
  2697. "$ref": "#/responses/notFound"
  2698. }
  2699. }
  2700. }
  2701. },
  2702. "/repos/{owner}/{repo}/contents/{filepath}": {
  2703. "get": {
  2704. "produces": [
  2705. "application/json"
  2706. ],
  2707. "tags": [
  2708. "repository"
  2709. ],
  2710. "summary": "Gets the metadata and contents (if a file) of an entry in a repository, or a list of entries if a dir",
  2711. "operationId": "repoGetContents",
  2712. "parameters": [
  2713. {
  2714. "type": "string",
  2715. "description": "owner of the repo",
  2716. "name": "owner",
  2717. "in": "path",
  2718. "required": true
  2719. },
  2720. {
  2721. "type": "string",
  2722. "description": "name of the repo",
  2723. "name": "repo",
  2724. "in": "path",
  2725. "required": true
  2726. },
  2727. {
  2728. "type": "string",
  2729. "description": "path of the dir, file, symlink or submodule in the repo",
  2730. "name": "filepath",
  2731. "in": "path",
  2732. "required": true
  2733. },
  2734. {
  2735. "type": "string",
  2736. "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)",
  2737. "name": "ref",
  2738. "in": "query"
  2739. }
  2740. ],
  2741. "responses": {
  2742. "200": {
  2743. "$ref": "#/responses/ContentsResponse"
  2744. },
  2745. "404": {
  2746. "$ref": "#/responses/notFound"
  2747. }
  2748. }
  2749. },
  2750. "put": {
  2751. "consumes": [
  2752. "application/json"
  2753. ],
  2754. "produces": [
  2755. "application/json"
  2756. ],
  2757. "tags": [
  2758. "repository"
  2759. ],
  2760. "summary": "Update a file in a repository",
  2761. "operationId": "repoUpdateFile",
  2762. "parameters": [
  2763. {
  2764. "type": "string",
  2765. "description": "owner of the repo",
  2766. "name": "owner",
  2767. "in": "path",
  2768. "required": true
  2769. },
  2770. {
  2771. "type": "string",
  2772. "description": "name of the repo",
  2773. "name": "repo",
  2774. "in": "path",
  2775. "required": true
  2776. },
  2777. {
  2778. "type": "string",
  2779. "description": "path of the file to update",
  2780. "name": "filepath",
  2781. "in": "path",
  2782. "required": true
  2783. },
  2784. {
  2785. "name": "body",
  2786. "in": "body",
  2787. "required": true,
  2788. "schema": {
  2789. "$ref": "#/definitions/UpdateFileOptions"
  2790. }
  2791. }
  2792. ],
  2793. "responses": {
  2794. "200": {
  2795. "$ref": "#/responses/FileResponse"
  2796. },
  2797. "403": {
  2798. "$ref": "#/responses/error"
  2799. },
  2800. "404": {
  2801. "$ref": "#/responses/notFound"
  2802. },
  2803. "422": {
  2804. "$ref": "#/responses/error"
  2805. }
  2806. }
  2807. },
  2808. "post": {
  2809. "consumes": [
  2810. "application/json"
  2811. ],
  2812. "produces": [
  2813. "application/json"
  2814. ],
  2815. "tags": [
  2816. "repository"
  2817. ],
  2818. "summary": "Create a file in a repository",
  2819. "operationId": "repoCreateFile",
  2820. "parameters": [
  2821. {
  2822. "type": "string",
  2823. "description": "owner of the repo",
  2824. "name": "owner",
  2825. "in": "path",
  2826. "required": true
  2827. },
  2828. {
  2829. "type": "string",
  2830. "description": "name of the repo",
  2831. "name": "repo",
  2832. "in": "path",
  2833. "required": true
  2834. },
  2835. {
  2836. "type": "string",
  2837. "description": "path of the file to create",
  2838. "name": "filepath",
  2839. "in": "path",
  2840. "required": true
  2841. },
  2842. {
  2843. "name": "body",
  2844. "in": "body",
  2845. "required": true,
  2846. "schema": {
  2847. "$ref": "#/definitions/CreateFileOptions"
  2848. }
  2849. }
  2850. ],
  2851. "responses": {
  2852. "201": {
  2853. "$ref": "#/responses/FileResponse"
  2854. },
  2855. "403": {
  2856. "$ref": "#/responses/error"
  2857. },
  2858. "404": {
  2859. "$ref": "#/responses/notFound"
  2860. },
  2861. "422": {
  2862. "$ref": "#/responses/error"
  2863. }
  2864. }
  2865. },
  2866. "delete": {
  2867. "consumes": [
  2868. "application/json"
  2869. ],
  2870. "produces": [
  2871. "application/json"
  2872. ],
  2873. "tags": [
  2874. "repository"
  2875. ],
  2876. "summary": "Delete a file in a repository",
  2877. "operationId": "repoDeleteFile",
  2878. "parameters": [
  2879. {
  2880. "type": "string",
  2881. "description": "owner of the repo",
  2882. "name": "owner",
  2883. "in": "path",
  2884. "required": true
  2885. },
  2886. {
  2887. "type": "string",
  2888. "description": "name of the repo",
  2889. "name": "repo",
  2890. "in": "path",
  2891. "required": true
  2892. },
  2893. {
  2894. "type": "string",
  2895. "description": "path of the file to delete",
  2896. "name": "filepath",
  2897. "in": "path",
  2898. "required": true
  2899. },
  2900. {
  2901. "name": "body",
  2902. "in": "body",
  2903. "required": true,
  2904. "schema": {
  2905. "$ref": "#/definitions/DeleteFileOptions"
  2906. }
  2907. }
  2908. ],
  2909. "responses": {
  2910. "200": {
  2911. "$ref": "#/responses/FileDeleteResponse"
  2912. },
  2913. "400": {
  2914. "$ref": "#/responses/error"
  2915. },
  2916. "403": {
  2917. "$ref": "#/responses/error"
  2918. },
  2919. "404": {
  2920. "$ref": "#/responses/error"
  2921. }
  2922. }
  2923. }
  2924. },
  2925. "/repos/{owner}/{repo}/editorconfig/{filepath}": {
  2926. "get": {
  2927. "produces": [
  2928. "application/json"
  2929. ],
  2930. "tags": [
  2931. "repository"
  2932. ],
  2933. "summary": "Get the EditorConfig definitions of a file in a repository",
  2934. "operationId": "repoGetEditorConfig",
  2935. "parameters": [
  2936. {
  2937. "type": "string",
  2938. "description": "owner of the repo",
  2939. "name": "owner",
  2940. "in": "path",
  2941. "required": true
  2942. },
  2943. {
  2944. "type": "string",
  2945. "description": "name of the repo",
  2946. "name": "repo",
  2947. "in": "path",
  2948. "required": true
  2949. },
  2950. {
  2951. "type": "string",
  2952. "description": "filepath of file to get",
  2953. "name": "filepath",
  2954. "in": "path",
  2955. "required": true
  2956. }
  2957. ],
  2958. "responses": {
  2959. "200": {
  2960. "description": "success"
  2961. },
  2962. "404": {
  2963. "$ref": "#/responses/notFound"
  2964. }
  2965. }
  2966. }
  2967. },
  2968. "/repos/{owner}/{repo}/forks": {
  2969. "get": {
  2970. "produces": [
  2971. "application/json"
  2972. ],
  2973. "tags": [
  2974. "repository"
  2975. ],
  2976. "summary": "List a repository's forks",
  2977. "operationId": "listForks",
  2978. "parameters": [
  2979. {
  2980. "type": "string",
  2981. "description": "owner of the repo",
  2982. "name": "owner",
  2983. "in": "path",
  2984. "required": true
  2985. },
  2986. {
  2987. "type": "string",
  2988. "description": "name of the repo",
  2989. "name": "repo",
  2990. "in": "path",
  2991. "required": true
  2992. },
  2993. {
  2994. "type": "integer",
  2995. "description": "page number of results to return (1-based)",
  2996. "name": "page",
  2997. "in": "query"
  2998. },
  2999. {
  3000. "type": "integer",
  3001. "description": "page size of results",
  3002. "name": "limit",
  3003. "in": "query"
  3004. }
  3005. ],
  3006. "responses": {
  3007. "200": {
  3008. "$ref": "#/responses/RepositoryList"
  3009. }
  3010. }
  3011. },
  3012. "post": {
  3013. "produces": [
  3014. "application/json"
  3015. ],
  3016. "tags": [
  3017. "repository"
  3018. ],
  3019. "summary": "Fork a repository",
  3020. "operationId": "createFork",
  3021. "parameters": [
  3022. {
  3023. "type": "string",
  3024. "description": "owner of the repo to fork",
  3025. "name": "owner",
  3026. "in": "path",
  3027. "required": true
  3028. },
  3029. {
  3030. "type": "string",
  3031. "description": "name of the repo to fork",
  3032. "name": "repo",
  3033. "in": "path",
  3034. "required": true
  3035. },
  3036. {
  3037. "name": "body",
  3038. "in": "body",
  3039. "schema": {
  3040. "$ref": "#/definitions/CreateForkOption"
  3041. }
  3042. }
  3043. ],
  3044. "responses": {
  3045. "202": {
  3046. "$ref": "#/responses/Repository"
  3047. },
  3048. "403": {
  3049. "$ref": "#/responses/forbidden"
  3050. },
  3051. "422": {
  3052. "$ref": "#/responses/validationError"
  3053. }
  3054. }
  3055. }
  3056. },
  3057. "/repos/{owner}/{repo}/git/blobs/{sha}": {
  3058. "get": {
  3059. "produces": [
  3060. "application/json"
  3061. ],
  3062. "tags": [
  3063. "repository"
  3064. ],
  3065. "summary": "Gets the blob of a repository.",
  3066. "operationId": "GetBlob",
  3067. "parameters": [
  3068. {
  3069. "type": "string",
  3070. "description": "owner of the repo",
  3071. "name": "owner",
  3072. "in": "path",
  3073. "required": true
  3074. },
  3075. {
  3076. "type": "string",
  3077. "description": "name of the repo",
  3078. "name": "repo",
  3079. "in": "path",
  3080. "required": true
  3081. },
  3082. {
  3083. "type": "string",
  3084. "description": "sha of the commit",
  3085. "name": "sha",
  3086. "in": "path",
  3087. "required": true
  3088. }
  3089. ],
  3090. "responses": {
  3091. "200": {
  3092. "$ref": "#/responses/GitBlobResponse"
  3093. },
  3094. "400": {
  3095. "$ref": "#/responses/error"
  3096. }
  3097. }
  3098. }
  3099. },
  3100. "/repos/{owner}/{repo}/git/commits/{sha}": {
  3101. "get": {
  3102. "produces": [
  3103. "application/json"
  3104. ],
  3105. "tags": [
  3106. "repository"
  3107. ],
  3108. "summary": "Get a single commit from a repository",
  3109. "operationId": "repoGetSingleCommit",
  3110. "parameters": [
  3111. {
  3112. "type": "string",
  3113. "description": "owner of the repo",
  3114. "name": "owner",
  3115. "in": "path",
  3116. "required": true
  3117. },
  3118. {
  3119. "type": "string",
  3120. "description": "name of the repo",
  3121. "name": "repo",
  3122. "in": "path",
  3123. "required": true
  3124. },
  3125. {
  3126. "type": "string",
  3127. "description": "a git ref or commit sha",
  3128. "name": "sha",
  3129. "in": "path",
  3130. "required": true
  3131. }
  3132. ],
  3133. "responses": {
  3134. "200": {
  3135. "$ref": "#/responses/Commit"
  3136. },
  3137. "404": {
  3138. "$ref": "#/responses/notFound"
  3139. },
  3140. "422": {
  3141. "$ref": "#/responses/validationError"
  3142. }
  3143. }
  3144. }
  3145. },
  3146. "/repos/{owner}/{repo}/git/refs": {
  3147. "get": {
  3148. "produces": [
  3149. "application/json"
  3150. ],
  3151. "tags": [
  3152. "repository"
  3153. ],
  3154. "summary": "Get specified ref or filtered repository's refs",
  3155. "operationId": "repoListAllGitRefs",
  3156. "parameters": [
  3157. {
  3158. "type": "string",
  3159. "description": "owner of the repo",
  3160. "name": "owner",
  3161. "in": "path",
  3162. "required": true
  3163. },
  3164. {
  3165. "type": "string",
  3166. "description": "name of the repo",
  3167. "name": "repo",
  3168. "in": "path",
  3169. "required": true
  3170. }
  3171. ],
  3172. "responses": {
  3173. "200": {
  3174. "$ref": "#/responses/ReferenceList"
  3175. },
  3176. "404": {
  3177. "$ref": "#/responses/notFound"
  3178. }
  3179. }
  3180. }
  3181. },
  3182. "/repos/{owner}/{repo}/git/refs/{ref}": {
  3183. "get": {
  3184. "produces": [
  3185. "application/json"
  3186. ],
  3187. "tags": [
  3188. "repository"
  3189. ],
  3190. "summary": "Get specified ref or filtered repository's refs",
  3191. "operationId": "repoListGitRefs",
  3192. "parameters": [
  3193. {
  3194. "type": "string",
  3195. "description": "owner of the repo",
  3196. "name": "owner",
  3197. "in": "path",
  3198. "required": true
  3199. },
  3200. {
  3201. "type": "string",
  3202. "description": "name of the repo",
  3203. "name": "repo",
  3204. "in": "path",
  3205. "required": true
  3206. },
  3207. {
  3208. "type": "string",
  3209. "description": "part or full name of the ref",
  3210. "name": "ref",
  3211. "in": "path",
  3212. "required": true
  3213. }
  3214. ],
  3215. "responses": {
  3216. "200": {
  3217. "$ref": "#/responses/ReferenceList"
  3218. },
  3219. "404": {
  3220. "$ref": "#/responses/notFound"
  3221. }
  3222. }
  3223. }
  3224. },
  3225. "/repos/{owner}/{repo}/git/tags/{sha}": {
  3226. "get": {
  3227. "produces": [
  3228. "application/json"
  3229. ],
  3230. "tags": [
  3231. "repository"
  3232. ],
  3233. "summary": "Gets the tag object of an annotated tag (not lightweight tags)",
  3234. "operationId": "GetTag",
  3235. "parameters": [
  3236. {
  3237. "type": "string",
  3238. "description": "owner of the repo",
  3239. "name": "owner",
  3240. "in": "path",
  3241. "required": true
  3242. },
  3243. {
  3244. "type": "string",
  3245. "description": "name of the repo",
  3246. "name": "repo",
  3247. "in": "path",
  3248. "required": true
  3249. },
  3250. {
  3251. "type": "string",
  3252. "description": "sha of the tag. The Git tags API only supports annotated tag objects, not lightweight tags.",
  3253. "name": "sha",
  3254. "in": "path",
  3255. "required": true
  3256. }
  3257. ],
  3258. "responses": {
  3259. "200": {
  3260. "$ref": "#/responses/AnnotatedTag"
  3261. },
  3262. "400": {
  3263. "$ref": "#/responses/error"
  3264. }
  3265. }
  3266. }
  3267. },
  3268. "/repos/{owner}/{repo}/git/trees/{sha}": {
  3269. "get": {
  3270. "produces": [
  3271. "application/json"
  3272. ],
  3273. "tags": [
  3274. "repository"
  3275. ],
  3276. "summary": "Gets the tree of a repository.",
  3277. "operationId": "GetTree",
  3278. "parameters": [
  3279. {
  3280. "type": "string",
  3281. "description": "owner of the repo",
  3282. "name": "owner",
  3283. "in": "path",
  3284. "required": true
  3285. },
  3286. {
  3287. "type": "string",
  3288. "description": "name of the repo",
  3289. "name": "repo",
  3290. "in": "path",
  3291. "required": true
  3292. },
  3293. {
  3294. "type": "string",
  3295. "description": "sha of the commit",
  3296. "name": "sha",
  3297. "in": "path",
  3298. "required": true
  3299. },
  3300. {
  3301. "type": "boolean",
  3302. "description": "show all directories and files",
  3303. "name": "recursive",
  3304. "in": "query"
  3305. },
  3306. {
  3307. "type": "integer",
  3308. "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",
  3309. "name": "page",
  3310. "in": "query"
  3311. },
  3312. {
  3313. "type": "integer",
  3314. "description": "number of items per page",
  3315. "name": "per_page",
  3316. "in": "query"
  3317. }
  3318. ],
  3319. "responses": {
  3320. "200": {
  3321. "$ref": "#/responses/GitTreeResponse"
  3322. },
  3323. "400": {
  3324. "$ref": "#/responses/error"
  3325. }
  3326. }
  3327. }
  3328. },
  3329. "/repos/{owner}/{repo}/hooks": {
  3330. "get": {
  3331. "produces": [
  3332. "application/json"
  3333. ],
  3334. "tags": [
  3335. "repository"
  3336. ],
  3337. "summary": "List the hooks in a repository",
  3338. "operationId": "repoListHooks",
  3339. "parameters": [
  3340. {
  3341. "type": "string",
  3342. "description": "owner of the repo",
  3343. "name": "owner",
  3344. "in": "path",
  3345. "required": true
  3346. },
  3347. {
  3348. "type": "string",
  3349. "description": "name of the repo",
  3350. "name": "repo",
  3351. "in": "path",
  3352. "required": true
  3353. },
  3354. {
  3355. "type": "integer",
  3356. "description": "page number of results to return (1-based)",
  3357. "name": "page",
  3358. "in": "query"
  3359. },
  3360. {
  3361. "type": "integer",
  3362. "description": "page size of results",
  3363. "name": "limit",
  3364. "in": "query"
  3365. }
  3366. ],
  3367. "responses": {
  3368. "200": {
  3369. "$ref": "#/responses/HookList"
  3370. }
  3371. }
  3372. },
  3373. "post": {
  3374. "consumes": [
  3375. "application/json"
  3376. ],
  3377. "produces": [
  3378. "application/json"
  3379. ],
  3380. "tags": [
  3381. "repository"
  3382. ],
  3383. "summary": "Create a hook",
  3384. "operationId": "repoCreateHook",
  3385. "parameters": [
  3386. {
  3387. "type": "string",
  3388. "description": "owner of the repo",
  3389. "name": "owner",
  3390. "in": "path",
  3391. "required": true
  3392. },
  3393. {
  3394. "type": "string",
  3395. "description": "name of the repo",
  3396. "name": "repo",
  3397. "in": "path",
  3398. "required": true
  3399. },
  3400. {
  3401. "name": "body",
  3402. "in": "body",
  3403. "schema": {
  3404. "$ref": "#/definitions/CreateHookOption"
  3405. }
  3406. }
  3407. ],
  3408. "responses": {
  3409. "201": {
  3410. "$ref": "#/responses/Hook"
  3411. }
  3412. }
  3413. }
  3414. },
  3415. "/repos/{owner}/{repo}/hooks/git": {
  3416. "get": {
  3417. "produces": [
  3418. "application/json"
  3419. ],
  3420. "tags": [
  3421. "repository"
  3422. ],
  3423. "summary": "List the Git hooks in a repository",
  3424. "operationId": "repoListGitHooks",
  3425. "parameters": [
  3426. {
  3427. "type": "string",
  3428. "description": "owner of the repo",
  3429. "name": "owner",
  3430. "in": "path",
  3431. "required": true
  3432. },
  3433. {
  3434. "type": "string",
  3435. "description": "name of the repo",
  3436. "name": "repo",
  3437. "in": "path",
  3438. "required": true
  3439. }
  3440. ],
  3441. "responses": {
  3442. "200": {
  3443. "$ref": "#/responses/GitHookList"
  3444. }
  3445. }
  3446. }
  3447. },
  3448. "/repos/{owner}/{repo}/hooks/git/{id}": {
  3449. "get": {
  3450. "produces": [
  3451. "application/json"
  3452. ],
  3453. "tags": [
  3454. "repository"
  3455. ],
  3456. "summary": "Get a Git hook",
  3457. "operationId": "repoGetGitHook",
  3458. "parameters": [
  3459. {
  3460. "type": "string",
  3461. "description": "owner of the repo",
  3462. "name": "owner",
  3463. "in": "path",
  3464. "required": true
  3465. },
  3466. {
  3467. "type": "string",
  3468. "description": "name of the repo",
  3469. "name": "repo",
  3470. "in": "path",
  3471. "required": true
  3472. },
  3473. {
  3474. "type": "string",
  3475. "description": "id of the hook to get",
  3476. "name": "id",
  3477. "in": "path",
  3478. "required": true
  3479. }
  3480. ],
  3481. "responses": {
  3482. "200": {
  3483. "$ref": "#/responses/GitHook"
  3484. },
  3485. "404": {
  3486. "$ref": "#/responses/notFound"
  3487. }
  3488. }
  3489. },
  3490. "delete": {
  3491. "produces": [
  3492. "application/json"
  3493. ],
  3494. "tags": [
  3495. "repository"
  3496. ],
  3497. "summary": "Delete a Git hook in a repository",
  3498. "operationId": "repoDeleteGitHook",
  3499. "parameters": [
  3500. {
  3501. "type": "string",
  3502. "description": "owner of the repo",
  3503. "name": "owner",
  3504. "in": "path",
  3505. "required": true
  3506. },
  3507. {
  3508. "type": "string",
  3509. "description": "name of the repo",
  3510. "name": "repo",
  3511. "in": "path",
  3512. "required": true
  3513. },
  3514. {
  3515. "type": "string",
  3516. "description": "id of the hook to get",
  3517. "name": "id",
  3518. "in": "path",
  3519. "required": true
  3520. }
  3521. ],
  3522. "responses": {
  3523. "204": {
  3524. "$ref": "#/responses/empty"
  3525. },
  3526. "404": {
  3527. "$ref": "#/responses/notFound"
  3528. }
  3529. }
  3530. },
  3531. "patch": {
  3532. "produces": [
  3533. "application/json"
  3534. ],
  3535. "tags": [
  3536. "repository"
  3537. ],
  3538. "summary": "Edit a Git hook in a repository",
  3539. "operationId": "repoEditGitHook",
  3540. "parameters": [
  3541. {
  3542. "type": "string",
  3543. "description": "owner of the repo",
  3544. "name": "owner",
  3545. "in": "path",
  3546. "required": true
  3547. },
  3548. {
  3549. "type": "string",
  3550. "description": "name of the repo",
  3551. "name": "repo",
  3552. "in": "path",
  3553. "required": true
  3554. },
  3555. {
  3556. "type": "string",
  3557. "description": "id of the hook to get",
  3558. "name": "id",
  3559. "in": "path",
  3560. "required": true
  3561. },
  3562. {
  3563. "name": "body",
  3564. "in": "body",
  3565. "schema": {
  3566. "$ref": "#/definitions/EditGitHookOption"
  3567. }
  3568. }
  3569. ],
  3570. "responses": {
  3571. "200": {
  3572. "$ref": "#/responses/GitHook"
  3573. },
  3574. "404": {
  3575. "$ref": "#/responses/notFound"
  3576. }
  3577. }
  3578. }
  3579. },
  3580. "/repos/{owner}/{repo}/hooks/{id}": {
  3581. "get": {
  3582. "produces": [
  3583. "application/json"
  3584. ],
  3585. "tags": [
  3586. "repository"
  3587. ],
  3588. "summary": "Get a hook",
  3589. "operationId": "repoGetHook",
  3590. "parameters": [
  3591. {
  3592. "type": "string",
  3593. "description": "owner of the repo",
  3594. "name": "owner",
  3595. "in": "path",
  3596. "required": true
  3597. },
  3598. {
  3599. "type": "string",
  3600. "description": "name of the repo",
  3601. "name": "repo",
  3602. "in": "path",
  3603. "required": true
  3604. },
  3605. {
  3606. "type": "integer",
  3607. "format": "int64",
  3608. "description": "id of the hook to get",
  3609. "name": "id",
  3610. "in": "path",
  3611. "required": true
  3612. }
  3613. ],
  3614. "responses": {
  3615. "200": {
  3616. "$ref": "#/responses/Hook"
  3617. },
  3618. "404": {
  3619. "$ref": "#/responses/notFound"
  3620. }
  3621. }
  3622. },
  3623. "delete": {
  3624. "produces": [
  3625. "application/json"
  3626. ],
  3627. "tags": [
  3628. "repository"
  3629. ],
  3630. "summary": "Delete a hook in a repository",
  3631. "operationId": "repoDeleteHook",
  3632. "parameters": [
  3633. {
  3634. "type": "string",
  3635. "description": "owner of the repo",
  3636. "name": "owner",
  3637. "in": "path",
  3638. "required": true
  3639. },
  3640. {
  3641. "type": "string",
  3642. "description": "name of the repo",
  3643. "name": "repo",
  3644. "in": "path",
  3645. "required": true
  3646. },
  3647. {
  3648. "type": "integer",
  3649. "format": "int64",
  3650. "description": "id of the hook to delete",
  3651. "name": "id",
  3652. "in": "path",
  3653. "required": true
  3654. }
  3655. ],
  3656. "responses": {
  3657. "204": {
  3658. "$ref": "#/responses/empty"
  3659. },
  3660. "404": {
  3661. "$ref": "#/responses/notFound"
  3662. }
  3663. }
  3664. },
  3665. "patch": {
  3666. "produces": [
  3667. "application/json"
  3668. ],
  3669. "tags": [
  3670. "repository"
  3671. ],
  3672. "summary": "Edit a hook in a repository",
  3673. "operationId": "repoEditHook",
  3674. "parameters": [
  3675. {
  3676. "type": "string",
  3677. "description": "owner of the repo",
  3678. "name": "owner",
  3679. "in": "path",
  3680. "required": true
  3681. },
  3682. {
  3683. "type": "string",
  3684. "description": "name of the repo",
  3685. "name": "repo",
  3686. "in": "path",
  3687. "required": true
  3688. },
  3689. {
  3690. "type": "integer",
  3691. "format": "int64",
  3692. "description": "index of the hook",
  3693. "name": "id",
  3694. "in": "path",
  3695. "required": true
  3696. },
  3697. {
  3698. "name": "body",
  3699. "in": "body",
  3700. "schema": {
  3701. "$ref": "#/definitions/EditHookOption"
  3702. }
  3703. }
  3704. ],
  3705. "responses": {
  3706. "200": {
  3707. "$ref": "#/responses/Hook"
  3708. }
  3709. }
  3710. }
  3711. },
  3712. "/repos/{owner}/{repo}/hooks/{id}/tests": {
  3713. "post": {
  3714. "produces": [
  3715. "application/json"
  3716. ],
  3717. "tags": [
  3718. "repository"
  3719. ],
  3720. "summary": "Test a push webhook",
  3721. "operationId": "repoTestHook",
  3722. "parameters": [
  3723. {
  3724. "type": "string",
  3725. "description": "owner of the repo",
  3726. "name": "owner",
  3727. "in": "path",
  3728. "required": true
  3729. },
  3730. {
  3731. "type": "string",
  3732. "description": "name of the repo",
  3733. "name": "repo",
  3734. "in": "path",
  3735. "required": true
  3736. },
  3737. {
  3738. "type": "integer",
  3739. "format": "int64",
  3740. "description": "id of the hook to test",
  3741. "name": "id",
  3742. "in": "path",
  3743. "required": true
  3744. }
  3745. ],
  3746. "responses": {
  3747. "204": {
  3748. "$ref": "#/responses/empty"
  3749. }
  3750. }
  3751. }
  3752. },
  3753. "/repos/{owner}/{repo}/issues": {
  3754. "get": {
  3755. "produces": [
  3756. "application/json"
  3757. ],
  3758. "tags": [
  3759. "issue"
  3760. ],
  3761. "summary": "List a repository's issues",
  3762. "operationId": "issueListIssues",
  3763. "parameters": [
  3764. {
  3765. "type": "string",
  3766. "description": "owner of the repo",
  3767. "name": "owner",
  3768. "in": "path",
  3769. "required": true
  3770. },
  3771. {
  3772. "type": "string",
  3773. "description": "name of the repo",
  3774. "name": "repo",
  3775. "in": "path",
  3776. "required": true
  3777. },
  3778. {
  3779. "type": "string",
  3780. "description": "whether issue is open or closed",
  3781. "name": "state",
  3782. "in": "query"
  3783. },
  3784. {
  3785. "type": "string",
  3786. "description": "comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded",
  3787. "name": "labels",
  3788. "in": "query"
  3789. },
  3790. {
  3791. "type": "string",
  3792. "description": "search string",
  3793. "name": "q",
  3794. "in": "query"
  3795. },
  3796. {
  3797. "type": "string",
  3798. "description": "filter by type (issues / pulls) if set",
  3799. "name": "type",
  3800. "in": "query"
  3801. },
  3802. {
  3803. "type": "string",
  3804. "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",
  3805. "name": "milestones",
  3806. "in": "query"
  3807. },
  3808. {
  3809. "type": "integer",
  3810. "description": "page number of results to return (1-based)",
  3811. "name": "page",
  3812. "in": "query"
  3813. },
  3814. {
  3815. "type": "integer",
  3816. "description": "page size of results",
  3817. "name": "limit",
  3818. "in": "query"
  3819. }
  3820. ],
  3821. "responses": {
  3822. "200": {
  3823. "$ref": "#/responses/IssueList"
  3824. }
  3825. }
  3826. },
  3827. "post": {
  3828. "consumes": [
  3829. "application/json"
  3830. ],
  3831. "produces": [
  3832. "application/json"
  3833. ],
  3834. "tags": [
  3835. "issue"
  3836. ],
  3837. "summary": "Create an issue. If using deadline only the date will be taken into account, and time of day ignored.",
  3838. "operationId": "issueCreateIssue",
  3839. "parameters": [
  3840. {
  3841. "type": "string",
  3842. "description": "owner of the repo",
  3843. "name": "owner",
  3844. "in": "path",
  3845. "required": true
  3846. },
  3847. {
  3848. "type": "string",
  3849. "description": "name of the repo",
  3850. "name": "repo",
  3851. "in": "path",
  3852. "required": true
  3853. },
  3854. {
  3855. "name": "body",
  3856. "in": "body",
  3857. "schema": {
  3858. "$ref": "#/definitions/CreateIssueOption"
  3859. }
  3860. }
  3861. ],
  3862. "responses": {
  3863. "201": {
  3864. "$ref": "#/responses/Issue"
  3865. },
  3866. "403": {
  3867. "$ref": "#/responses/forbidden"
  3868. },
  3869. "412": {
  3870. "$ref": "#/responses/error"
  3871. },
  3872. "422": {
  3873. "$ref": "#/responses/validationError"
  3874. }
  3875. }
  3876. }
  3877. },
  3878. "/repos/{owner}/{repo}/issues/comments": {
  3879. "get": {
  3880. "produces": [
  3881. "application/json"
  3882. ],
  3883. "tags": [
  3884. "issue"
  3885. ],
  3886. "summary": "List all comments in a repository",
  3887. "operationId": "issueGetRepoComments",
  3888. "parameters": [
  3889. {
  3890. "type": "string",
  3891. "description": "owner of the repo",
  3892. "name": "owner",
  3893. "in": "path",
  3894. "required": true
  3895. },
  3896. {
  3897. "type": "string",
  3898. "description": "name of the repo",
  3899. "name": "repo",
  3900. "in": "path",
  3901. "required": true
  3902. },
  3903. {
  3904. "type": "string",
  3905. "format": "date-time",
  3906. "description": "if provided, only comments updated since the provided time are returned.",
  3907. "name": "since",
  3908. "in": "query"
  3909. },
  3910. {
  3911. "type": "string",
  3912. "format": "date-time",
  3913. "description": "if provided, only comments updated before the provided time are returned.",
  3914. "name": "before",
  3915. "in": "query"
  3916. },
  3917. {
  3918. "type": "integer",
  3919. "description": "page number of results to return (1-based)",
  3920. "name": "page",
  3921. "in": "query"
  3922. },
  3923. {
  3924. "type": "integer",
  3925. "description": "page size of results",
  3926. "name": "limit",
  3927. "in": "query"
  3928. }
  3929. ],
  3930. "responses": {
  3931. "200": {
  3932. "$ref": "#/responses/CommentList"
  3933. }
  3934. }
  3935. }
  3936. },
  3937. "/repos/{owner}/{repo}/issues/comments/{id}": {
  3938. "get": {
  3939. "consumes": [
  3940. "application/json"
  3941. ],
  3942. "produces": [
  3943. "application/json"
  3944. ],
  3945. "tags": [
  3946. "issue"
  3947. ],
  3948. "summary": "Get a comment",
  3949. "operationId": "issueGetComment",
  3950. "parameters": [
  3951. {
  3952. "type": "string",
  3953. "description": "owner of the repo",
  3954. "name": "owner",
  3955. "in": "path",
  3956. "required": true
  3957. },
  3958. {
  3959. "type": "string",
  3960. "description": "name of the repo",
  3961. "name": "repo",
  3962. "in": "path",
  3963. "required": true
  3964. },
  3965. {
  3966. "type": "integer",
  3967. "format": "int64",
  3968. "description": "id of the comment",
  3969. "name": "id",
  3970. "in": "path",
  3971. "required": true
  3972. }
  3973. ],
  3974. "responses": {
  3975. "200": {
  3976. "$ref": "#/responses/Comment"
  3977. },
  3978. "204": {
  3979. "$ref": "#/responses/empty"
  3980. },
  3981. "403": {
  3982. "$ref": "#/responses/forbidden"
  3983. },
  3984. "404": {
  3985. "$ref": "#/responses/notFound"
  3986. }
  3987. }
  3988. },
  3989. "delete": {
  3990. "tags": [
  3991. "issue"
  3992. ],
  3993. "summary": "Delete a comment",
  3994. "operationId": "issueDeleteComment",
  3995. "parameters": [
  3996. {
  3997. "type": "string",
  3998. "description": "owner of the repo",
  3999. "name": "owner",
  4000. "in": "path",
  4001. "required": true
  4002. },
  4003. {
  4004. "type": "string",
  4005. "description": "name of the repo",
  4006. "name": "repo",
  4007. "in": "path",
  4008. "required": true
  4009. },
  4010. {
  4011. "type": "integer",
  4012. "format": "int64",
  4013. "description": "id of comment to delete",
  4014. "name": "id",
  4015. "in": "path",
  4016. "required": true
  4017. }
  4018. ],
  4019. "responses": {
  4020. "204": {
  4021. "$ref": "#/responses/empty"
  4022. },
  4023. "403": {
  4024. "$ref": "#/responses/forbidden"
  4025. },
  4026. "404": {
  4027. "$ref": "#/responses/notFound"
  4028. }
  4029. }
  4030. },
  4031. "patch": {
  4032. "consumes": [
  4033. "application/json"
  4034. ],
  4035. "produces": [
  4036. "application/json"
  4037. ],
  4038. "tags": [
  4039. "issue"
  4040. ],
  4041. "summary": "Edit a comment",
  4042. "operationId": "issueEditComment",
  4043. "parameters": [
  4044. {
  4045. "type": "string",
  4046. "description": "owner of the repo",
  4047. "name": "owner",
  4048. "in": "path",
  4049. "required": true
  4050. },
  4051. {
  4052. "type": "string",
  4053. "description": "name of the repo",
  4054. "name": "repo",
  4055. "in": "path",
  4056. "required": true
  4057. },
  4058. {
  4059. "type": "integer",
  4060. "format": "int64",
  4061. "description": "id of the comment to edit",
  4062. "name": "id",
  4063. "in": "path",
  4064. "required": true
  4065. },
  4066. {
  4067. "name": "body",
  4068. "in": "body",
  4069. "schema": {
  4070. "$ref": "#/definitions/EditIssueCommentOption"
  4071. }
  4072. }
  4073. ],
  4074. "responses": {
  4075. "200": {
  4076. "$ref": "#/responses/Comment"
  4077. },
  4078. "204": {
  4079. "$ref": "#/responses/empty"
  4080. },
  4081. "403": {
  4082. "$ref": "#/responses/forbidden"
  4083. },
  4084. "404": {
  4085. "$ref": "#/responses/notFound"
  4086. }
  4087. }
  4088. }
  4089. },
  4090. "/repos/{owner}/{repo}/issues/comments/{id}/reactions": {
  4091. "get": {
  4092. "consumes": [
  4093. "application/json"
  4094. ],
  4095. "produces": [
  4096. "application/json"
  4097. ],
  4098. "tags": [
  4099. "issue"
  4100. ],
  4101. "summary": "Get a list of reactions from a comment of an issue",
  4102. "operationId": "issueGetCommentReactions",
  4103. "parameters": [
  4104. {
  4105. "type": "string",
  4106. "description": "owner of the repo",
  4107. "name": "owner",
  4108. "in": "path",
  4109. "required": true
  4110. },
  4111. {
  4112. "type": "string",
  4113. "description": "name of the repo",
  4114. "name": "repo",
  4115. "in": "path",
  4116. "required": true
  4117. },
  4118. {
  4119. "type": "integer",
  4120. "format": "int64",
  4121. "description": "id of the comment to edit",
  4122. "name": "id",
  4123. "in": "path",
  4124. "required": true
  4125. }
  4126. ],
  4127. "responses": {
  4128. "200": {
  4129. "$ref": "#/responses/ReactionList"
  4130. },
  4131. "403": {
  4132. "$ref": "#/responses/forbidden"
  4133. }
  4134. }
  4135. },
  4136. "post": {
  4137. "consumes": [
  4138. "application/json"
  4139. ],
  4140. "produces": [
  4141. "application/json"
  4142. ],
  4143. "tags": [
  4144. "issue"
  4145. ],
  4146. "summary": "Add a reaction to a comment of an issue",
  4147. "operationId": "issuePostCommentReaction",
  4148. "parameters": [
  4149. {
  4150. "type": "string",
  4151. "description": "owner of the repo",
  4152. "name": "owner",
  4153. "in": "path",
  4154. "required": true
  4155. },
  4156. {
  4157. "type": "string",
  4158. "description": "name of the repo",
  4159. "name": "repo",
  4160. "in": "path",
  4161. "required": true
  4162. },
  4163. {
  4164. "type": "integer",
  4165. "format": "int64",
  4166. "description": "id of the comment to edit",
  4167. "name": "id",
  4168. "in": "path",
  4169. "required": true
  4170. },
  4171. {
  4172. "name": "content",
  4173. "in": "body",
  4174. "schema": {
  4175. "$ref": "#/definitions/EditReactionOption"
  4176. }
  4177. }
  4178. ],
  4179. "responses": {
  4180. "200": {
  4181. "$ref": "#/responses/Reaction"
  4182. },
  4183. "201": {
  4184. "$ref": "#/responses/Reaction"
  4185. },
  4186. "403": {
  4187. "$ref": "#/responses/forbidden"
  4188. }
  4189. }
  4190. },
  4191. "delete": {
  4192. "consumes": [
  4193. "application/json"
  4194. ],
  4195. "produces": [
  4196. "application/json"
  4197. ],
  4198. "tags": [
  4199. "issue"
  4200. ],
  4201. "summary": "Remove a reaction from a comment of an issue",
  4202. "operationId": "issueDeleteCommentReaction",
  4203. "parameters": [
  4204. {
  4205. "type": "string",
  4206. "description": "owner of the repo",
  4207. "name": "owner",
  4208. "in": "path",
  4209. "required": true
  4210. },
  4211. {
  4212. "type": "string",
  4213. "description": "name of the repo",
  4214. "name": "repo",
  4215. "in": "path",
  4216. "required": true
  4217. },
  4218. {
  4219. "type": "integer",
  4220. "format": "int64",
  4221. "description": "id of the comment to edit",
  4222. "name": "id",
  4223. "in": "path",
  4224. "required": true
  4225. },
  4226. {
  4227. "name": "content",
  4228. "in": "body",
  4229. "schema": {
  4230. "$ref": "#/definitions/EditReactionOption"
  4231. }
  4232. }
  4233. ],
  4234. "responses": {
  4235. "200": {
  4236. "$ref": "#/responses/empty"
  4237. },
  4238. "403": {
  4239. "$ref": "#/responses/forbidden"
  4240. }
  4241. }
  4242. }
  4243. },
  4244. "/repos/{owner}/{repo}/issues/{index}": {
  4245. "get": {
  4246. "produces": [
  4247. "application/json"
  4248. ],
  4249. "tags": [
  4250. "issue"
  4251. ],
  4252. "summary": "Get an issue",
  4253. "operationId": "issueGetIssue",
  4254. "parameters": [
  4255. {
  4256. "type": "string",
  4257. "description": "owner of the repo",
  4258. "name": "owner",
  4259. "in": "path",
  4260. "required": true
  4261. },
  4262. {
  4263. "type": "string",
  4264. "description": "name of the repo",
  4265. "name": "repo",
  4266. "in": "path",
  4267. "required": true
  4268. },
  4269. {
  4270. "type": "integer",
  4271. "format": "int64",
  4272. "description": "index of the issue to get",
  4273. "name": "index",
  4274. "in": "path",
  4275. "required": true
  4276. }
  4277. ],
  4278. "responses": {
  4279. "200": {
  4280. "$ref": "#/responses/Issue"
  4281. },
  4282. "404": {
  4283. "$ref": "#/responses/notFound"
  4284. }
  4285. }
  4286. },
  4287. "patch": {
  4288. "consumes": [
  4289. "application/json"
  4290. ],
  4291. "produces": [
  4292. "application/json"
  4293. ],
  4294. "tags": [
  4295. "issue"
  4296. ],
  4297. "summary": "Edit an issue. If using deadline only the date will be taken into account, and time of day ignored.",
  4298. "operationId": "issueEditIssue",
  4299. "parameters": [
  4300. {
  4301. "type": "string",
  4302. "description": "owner of the repo",
  4303. "name": "owner",
  4304. "in": "path",
  4305. "required": true
  4306. },
  4307. {
  4308. "type": "string",
  4309. "description": "name of the repo",
  4310. "name": "repo",
  4311. "in": "path",
  4312. "required": true
  4313. },
  4314. {
  4315. "type": "integer",
  4316. "format": "int64",
  4317. "description": "index of the issue to edit",
  4318. "name": "index",
  4319. "in": "path",
  4320. "required": true
  4321. },
  4322. {
  4323. "name": "body",
  4324. "in": "body",
  4325. "schema": {
  4326. "$ref": "#/definitions/EditIssueOption"
  4327. }
  4328. }
  4329. ],
  4330. "responses": {
  4331. "201": {
  4332. "$ref": "#/responses/Issue"
  4333. },
  4334. "403": {
  4335. "$ref": "#/responses/forbidden"
  4336. },
  4337. "404": {
  4338. "$ref": "#/responses/notFound"
  4339. },
  4340. "412": {
  4341. "$ref": "#/responses/error"
  4342. }
  4343. }
  4344. }
  4345. },
  4346. "/repos/{owner}/{repo}/issues/{index}/comments": {
  4347. "get": {
  4348. "produces": [
  4349. "application/json"
  4350. ],
  4351. "tags": [
  4352. "issue"
  4353. ],
  4354. "summary": "List all comments on an issue",
  4355. "operationId": "issueGetComments",
  4356. "parameters": [
  4357. {
  4358. "type": "string",
  4359. "description": "owner of the repo",
  4360. "name": "owner",
  4361. "in": "path",
  4362. "required": true
  4363. },
  4364. {
  4365. "type": "string",
  4366. "description": "name of the repo",
  4367. "name": "repo",
  4368. "in": "path",
  4369. "required": true
  4370. },
  4371. {
  4372. "type": "integer",
  4373. "format": "int64",
  4374. "description": "index of the issue",
  4375. "name": "index",
  4376. "in": "path",
  4377. "required": true
  4378. },
  4379. {
  4380. "type": "string",
  4381. "format": "date-time",
  4382. "description": "if provided, only comments updated since the specified time are returned.",
  4383. "name": "since",
  4384. "in": "query"
  4385. },
  4386. {
  4387. "type": "string",
  4388. "format": "date-time",
  4389. "description": "if provided, only comments updated before the provided time are returned.",
  4390. "name": "before",
  4391. "in": "query"
  4392. }
  4393. ],
  4394. "responses": {
  4395. "200": {
  4396. "$ref": "#/responses/CommentList"
  4397. }
  4398. }
  4399. },
  4400. "post": {
  4401. "consumes": [
  4402. "application/json"
  4403. ],
  4404. "produces": [
  4405. "application/json"
  4406. ],
  4407. "tags": [
  4408. "issue"
  4409. ],
  4410. "summary": "Add a comment to an issue",
  4411. "operationId": "issueCreateComment",
  4412. "parameters": [
  4413. {
  4414. "type": "string",
  4415. "description": "owner of the repo",
  4416. "name": "owner",
  4417. "in": "path",
  4418. "required": true
  4419. },
  4420. {
  4421. "type": "string",
  4422. "description": "name of the repo",
  4423. "name": "repo",
  4424. "in": "path",
  4425. "required": true
  4426. },
  4427. {
  4428. "type": "integer",
  4429. "format": "int64",
  4430. "description": "index of the issue",
  4431. "name": "index",
  4432. "in": "path",
  4433. "required": true
  4434. },
  4435. {
  4436. "name": "body",
  4437. "in": "body",
  4438. "schema": {
  4439. "$ref": "#/definitions/CreateIssueCommentOption"
  4440. }
  4441. }
  4442. ],
  4443. "responses": {
  4444. "201": {
  4445. "$ref": "#/responses/Comment"
  4446. },
  4447. "403": {
  4448. "$ref": "#/responses/forbidden"
  4449. }
  4450. }
  4451. }
  4452. },
  4453. "/repos/{owner}/{repo}/issues/{index}/comments/{id}": {
  4454. "delete": {
  4455. "tags": [
  4456. "issue"
  4457. ],
  4458. "summary": "Delete a comment",
  4459. "operationId": "issueDeleteCommentDeprecated",
  4460. "deprecated": true,
  4461. "parameters": [
  4462. {
  4463. "type": "string",
  4464. "description": "owner of the repo",
  4465. "name": "owner",
  4466. "in": "path",
  4467. "required": true
  4468. },
  4469. {
  4470. "type": "string",
  4471. "description": "name of the repo",
  4472. "name": "repo",
  4473. "in": "path",
  4474. "required": true
  4475. },
  4476. {
  4477. "type": "integer",
  4478. "description": "this parameter is ignored",
  4479. "name": "index",
  4480. "in": "path",
  4481. "required": true
  4482. },
  4483. {
  4484. "type": "integer",
  4485. "format": "int64",
  4486. "description": "id of comment to delete",
  4487. "name": "id",
  4488. "in": "path",
  4489. "required": true
  4490. }
  4491. ],
  4492. "responses": {
  4493. "204": {
  4494. "$ref": "#/responses/empty"
  4495. },
  4496. "403": {
  4497. "$ref": "#/responses/forbidden"
  4498. },
  4499. "404": {
  4500. "$ref": "#/responses/notFound"
  4501. }
  4502. }
  4503. },
  4504. "patch": {
  4505. "consumes": [
  4506. "application/json"
  4507. ],
  4508. "produces": [
  4509. "application/json"
  4510. ],
  4511. "tags": [
  4512. "issue"
  4513. ],
  4514. "summary": "Edit a comment",
  4515. "operationId": "issueEditCommentDeprecated",
  4516. "deprecated": true,
  4517. "parameters": [
  4518. {
  4519. "type": "string",
  4520. "description": "owner of the repo",
  4521. "name": "owner",
  4522. "in": "path",
  4523. "required": true
  4524. },
  4525. {
  4526. "type": "string",
  4527. "description": "name of the repo",
  4528. "name": "repo",
  4529. "in": "path",
  4530. "required": true
  4531. },
  4532. {
  4533. "type": "integer",
  4534. "description": "this parameter is ignored",
  4535. "name": "index",
  4536. "in": "path",
  4537. "required": true
  4538. },
  4539. {
  4540. "type": "integer",
  4541. "format": "int64",
  4542. "description": "id of the comment to edit",
  4543. "name": "id",
  4544. "in": "path",
  4545. "required": true
  4546. },
  4547. {
  4548. "name": "body",
  4549. "in": "body",
  4550. "schema": {
  4551. "$ref": "#/definitions/EditIssueCommentOption"
  4552. }
  4553. }
  4554. ],
  4555. "responses": {
  4556. "200": {
  4557. "$ref": "#/responses/Comment"
  4558. },
  4559. "204": {
  4560. "$ref": "#/responses/empty"
  4561. },
  4562. "403": {
  4563. "$ref": "#/responses/forbidden"
  4564. },
  4565. "404": {
  4566. "$ref": "#/responses/notFound"
  4567. }
  4568. }
  4569. }
  4570. },
  4571. "/repos/{owner}/{repo}/issues/{index}/deadline": {
  4572. "post": {
  4573. "consumes": [
  4574. "application/json"
  4575. ],
  4576. "produces": [
  4577. "application/json"
  4578. ],
  4579. "tags": [
  4580. "issue"
  4581. ],
  4582. "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.",
  4583. "operationId": "issueEditIssueDeadline",
  4584. "parameters": [
  4585. {
  4586. "type": "string",
  4587. "description": "owner of the repo",
  4588. "name": "owner",
  4589. "in": "path",
  4590. "required": true
  4591. },
  4592. {
  4593. "type": "string",
  4594. "description": "name of the repo",
  4595. "name": "repo",
  4596. "in": "path",
  4597. "required": true
  4598. },
  4599. {
  4600. "type": "integer",
  4601. "format": "int64",
  4602. "description": "index of the issue to create or update a deadline on",
  4603. "name": "index",
  4604. "in": "path",
  4605. "required": true
  4606. },
  4607. {
  4608. "name": "body",
  4609. "in": "body",
  4610. "schema": {
  4611. "$ref": "#/definitions/EditDeadlineOption"
  4612. }
  4613. }
  4614. ],
  4615. "responses": {
  4616. "201": {
  4617. "$ref": "#/responses/IssueDeadline"
  4618. },
  4619. "403": {
  4620. "$ref": "#/responses/forbidden"
  4621. },
  4622. "404": {
  4623. "$ref": "#/responses/notFound"
  4624. }
  4625. }
  4626. }
  4627. },
  4628. "/repos/{owner}/{repo}/issues/{index}/labels": {
  4629. "get": {
  4630. "produces": [
  4631. "application/json"
  4632. ],
  4633. "tags": [
  4634. "issue"
  4635. ],
  4636. "summary": "Get an issue's labels",
  4637. "operationId": "issueGetLabels",
  4638. "parameters": [
  4639. {
  4640. "type": "string",
  4641. "description": "owner of the repo",
  4642. "name": "owner",
  4643. "in": "path",
  4644. "required": true
  4645. },
  4646. {
  4647. "type": "string",
  4648. "description": "name of the repo",
  4649. "name": "repo",
  4650. "in": "path",
  4651. "required": true
  4652. },
  4653. {
  4654. "type": "integer",
  4655. "format": "int64",
  4656. "description": "index of the issue",
  4657. "name": "index",
  4658. "in": "path",
  4659. "required": true
  4660. }
  4661. ],
  4662. "responses": {
  4663. "200": {
  4664. "$ref": "#/responses/LabelList"
  4665. },
  4666. "404": {
  4667. "$ref": "#/responses/notFound"
  4668. }
  4669. }
  4670. },
  4671. "put": {
  4672. "consumes": [
  4673. "application/json"
  4674. ],
  4675. "produces": [
  4676. "application/json"
  4677. ],
  4678. "tags": [
  4679. "issue"
  4680. ],
  4681. "summary": "Replace an issue's labels",
  4682. "operationId": "issueReplaceLabels",
  4683. "parameters": [
  4684. {
  4685. "type": "string",
  4686. "description": "owner of the repo",
  4687. "name": "owner",
  4688. "in": "path",
  4689. "required": true
  4690. },
  4691. {
  4692. "type": "string",
  4693. "description": "name of the repo",
  4694. "name": "repo",
  4695. "in": "path",
  4696. "required": true
  4697. },
  4698. {
  4699. "type": "integer",
  4700. "format": "int64",
  4701. "description": "index of the issue",
  4702. "name": "index",
  4703. "in": "path",
  4704. "required": true
  4705. },
  4706. {
  4707. "name": "body",
  4708. "in": "body",
  4709. "schema": {
  4710. "$ref": "#/definitions/IssueLabelsOption"
  4711. }
  4712. }
  4713. ],
  4714. "responses": {
  4715. "200": {
  4716. "$ref": "#/responses/LabelList"
  4717. },
  4718. "403": {
  4719. "$ref": "#/responses/forbidden"
  4720. }
  4721. }
  4722. },
  4723. "post": {
  4724. "consumes": [
  4725. "application/json"
  4726. ],
  4727. "produces": [
  4728. "application/json"
  4729. ],
  4730. "tags": [
  4731. "issue"
  4732. ],
  4733. "summary": "Add a label to an issue",
  4734. "operationId": "issueAddLabel",
  4735. "parameters": [
  4736. {
  4737. "type": "string",
  4738. "description": "owner of the repo",
  4739. "name": "owner",
  4740. "in": "path",
  4741. "required": true
  4742. },
  4743. {
  4744. "type": "string",
  4745. "description": "name of the repo",
  4746. "name": "repo",
  4747. "in": "path",
  4748. "required": true
  4749. },
  4750. {
  4751. "type": "integer",
  4752. "format": "int64",
  4753. "description": "index of the issue",
  4754. "name": "index",
  4755. "in": "path",
  4756. "required": true
  4757. },
  4758. {
  4759. "name": "body",
  4760. "in": "body",
  4761. "schema": {
  4762. "$ref": "#/definitions/IssueLabelsOption"
  4763. }
  4764. }
  4765. ],
  4766. "responses": {
  4767. "200": {
  4768. "$ref": "#/responses/LabelList"
  4769. },
  4770. "403": {
  4771. "$ref": "#/responses/forbidden"
  4772. }
  4773. }
  4774. },
  4775. "delete": {
  4776. "produces": [
  4777. "application/json"
  4778. ],
  4779. "tags": [
  4780. "issue"
  4781. ],
  4782. "summary": "Remove all labels from an issue",
  4783. "operationId": "issueClearLabels",
  4784. "parameters": [
  4785. {
  4786. "type": "string",
  4787. "description": "owner of the repo",
  4788. "name": "owner",
  4789. "in": "path",
  4790. "required": true
  4791. },
  4792. {
  4793. "type": "string",
  4794. "description": "name of the repo",
  4795. "name": "repo",
  4796. "in": "path",
  4797. "required": true
  4798. },
  4799. {
  4800. "type": "integer",
  4801. "format": "int64",
  4802. "description": "index of the issue",
  4803. "name": "index",
  4804. "in": "path",
  4805. "required": true
  4806. }
  4807. ],
  4808. "responses": {
  4809. "204": {
  4810. "$ref": "#/responses/empty"
  4811. },
  4812. "403": {
  4813. "$ref": "#/responses/forbidden"
  4814. }
  4815. }
  4816. }
  4817. },
  4818. "/repos/{owner}/{repo}/issues/{index}/labels/{id}": {
  4819. "delete": {
  4820. "produces": [
  4821. "application/json"
  4822. ],
  4823. "tags": [
  4824. "issue"
  4825. ],
  4826. "summary": "Remove a label from an issue",
  4827. "operationId": "issueRemoveLabel",
  4828. "parameters": [
  4829. {
  4830. "type": "string",
  4831. "description": "owner of the repo",
  4832. "name": "owner",
  4833. "in": "path",
  4834. "required": true
  4835. },
  4836. {
  4837. "type": "string",
  4838. "description": "name of the repo",
  4839. "name": "repo",
  4840. "in": "path",
  4841. "required": true
  4842. },
  4843. {
  4844. "type": "integer",
  4845. "format": "int64",
  4846. "description": "index of the issue",
  4847. "name": "index",
  4848. "in": "path",
  4849. "required": true
  4850. },
  4851. {
  4852. "type": "integer",
  4853. "format": "int64",
  4854. "description": "id of the label to remove",
  4855. "name": "id",
  4856. "in": "path",
  4857. "required": true
  4858. }
  4859. ],
  4860. "responses": {
  4861. "204": {
  4862. "$ref": "#/responses/empty"
  4863. },
  4864. "403": {
  4865. "$ref": "#/responses/forbidden"
  4866. },
  4867. "422": {
  4868. "$ref": "#/responses/validationError"
  4869. }
  4870. }
  4871. }
  4872. },
  4873. "/repos/{owner}/{repo}/issues/{index}/reactions": {
  4874. "get": {
  4875. "consumes": [
  4876. "application/json"
  4877. ],
  4878. "produces": [
  4879. "application/json"
  4880. ],
  4881. "tags": [
  4882. "issue"
  4883. ],
  4884. "summary": "Get a list reactions of an issue",
  4885. "operationId": "issueGetIssueReactions",
  4886. "parameters": [
  4887. {
  4888. "type": "string",
  4889. "description": "owner of the repo",
  4890. "name": "owner",
  4891. "in": "path",
  4892. "required": true
  4893. },
  4894. {
  4895. "type": "string",
  4896. "description": "name of the repo",
  4897. "name": "repo",
  4898. "in": "path",
  4899. "required": true
  4900. },
  4901. {
  4902. "type": "integer",
  4903. "format": "int64",
  4904. "description": "index of the issue",
  4905. "name": "index",
  4906. "in": "path",
  4907. "required": true
  4908. },
  4909. {
  4910. "type": "integer",
  4911. "description": "page number of results to return (1-based)",
  4912. "name": "page",
  4913. "in": "query"
  4914. },
  4915. {
  4916. "type": "integer",
  4917. "description": "page size of results",
  4918. "name": "limit",
  4919. "in": "query"
  4920. }
  4921. ],
  4922. "responses": {
  4923. "200": {
  4924. "$ref": "#/responses/ReactionList"
  4925. },
  4926. "403": {
  4927. "$ref": "#/responses/forbidden"
  4928. }
  4929. }
  4930. },
  4931. "post": {
  4932. "consumes": [
  4933. "application/json"
  4934. ],
  4935. "produces": [
  4936. "application/json"
  4937. ],
  4938. "tags": [
  4939. "issue"
  4940. ],
  4941. "summary": "Add a reaction to an issue",
  4942. "operationId": "issuePostIssueReaction",
  4943. "parameters": [
  4944. {
  4945. "type": "string",
  4946. "description": "owner of the repo",
  4947. "name": "owner",
  4948. "in": "path",
  4949. "required": true
  4950. },
  4951. {
  4952. "type": "string",
  4953. "description": "name of the repo",
  4954. "name": "repo",
  4955. "in": "path",
  4956. "required": true
  4957. },
  4958. {
  4959. "type": "integer",
  4960. "format": "int64",
  4961. "description": "index of the issue",
  4962. "name": "index",
  4963. "in": "path",
  4964. "required": true
  4965. },
  4966. {
  4967. "name": "content",
  4968. "in": "body",
  4969. "schema": {
  4970. "$ref": "#/definitions/EditReactionOption"
  4971. }
  4972. }
  4973. ],
  4974. "responses": {
  4975. "200": {
  4976. "$ref": "#/responses/Reaction"
  4977. },
  4978. "201": {
  4979. "$ref": "#/responses/Reaction"
  4980. },
  4981. "403": {
  4982. "$ref": "#/responses/forbidden"
  4983. }
  4984. }
  4985. },
  4986. "delete": {
  4987. "consumes": [
  4988. "application/json"
  4989. ],
  4990. "produces": [
  4991. "application/json"
  4992. ],
  4993. "tags": [
  4994. "issue"
  4995. ],
  4996. "summary": "Remove a reaction from an issue",
  4997. "operationId": "issueDeleteIssueReaction",
  4998. "parameters": [
  4999. {
  5000. "type": "string",
  5001. "description": "owner of the repo",
  5002. "name": "owner",
  5003. "in": "path",
  5004. "required": true
  5005. },
  5006. {
  5007. "type": "string",
  5008. "description": "name of the repo",
  5009. "name": "repo",
  5010. "in": "path",
  5011. "required": true
  5012. },
  5013. {
  5014. "type": "integer",
  5015. "format": "int64",
  5016. "description": "index of the issue",
  5017. "name": "index",
  5018. "in": "path",
  5019. "required": true
  5020. },
  5021. {
  5022. "name": "content",
  5023. "in": "body",
  5024. "schema": {
  5025. "$ref": "#/definitions/EditReactionOption"
  5026. }
  5027. }
  5028. ],
  5029. "responses": {
  5030. "200": {
  5031. "$ref": "#/responses/empty"
  5032. },
  5033. "403": {
  5034. "$ref": "#/responses/forbidden"
  5035. }
  5036. }
  5037. }
  5038. },
  5039. "/repos/{owner}/{repo}/issues/{index}/stopwatch/delete": {
  5040. "delete": {
  5041. "consumes": [
  5042. "application/json"
  5043. ],
  5044. "produces": [
  5045. "application/json"
  5046. ],
  5047. "tags": [
  5048. "issue"
  5049. ],
  5050. "summary": "Delete an issue's existing stopwatch.",
  5051. "operationId": "issueDeleteStopWatch",
  5052. "parameters": [
  5053. {
  5054. "type": "string",
  5055. "description": "owner of the repo",
  5056. "name": "owner",
  5057. "in": "path",
  5058. "required": true
  5059. },
  5060. {
  5061. "type": "string",
  5062. "description": "name of the repo",
  5063. "name": "repo",
  5064. "in": "path",
  5065. "required": true
  5066. },
  5067. {
  5068. "type": "integer",
  5069. "format": "int64",
  5070. "description": "index of the issue to stop the stopwatch on",
  5071. "name": "index",
  5072. "in": "path",
  5073. "required": true
  5074. }
  5075. ],
  5076. "responses": {
  5077. "204": {
  5078. "$ref": "#/responses/empty"
  5079. },
  5080. "403": {
  5081. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  5082. },
  5083. "404": {
  5084. "$ref": "#/responses/notFound"
  5085. },
  5086. "409": {
  5087. "description": "Cannot cancel a non existent stopwatch"
  5088. }
  5089. }
  5090. }
  5091. },
  5092. "/repos/{owner}/{repo}/issues/{index}/stopwatch/start": {
  5093. "post": {
  5094. "consumes": [
  5095. "application/json"
  5096. ],
  5097. "produces": [
  5098. "application/json"
  5099. ],
  5100. "tags": [
  5101. "issue"
  5102. ],
  5103. "summary": "Start stopwatch on an issue.",
  5104. "operationId": "issueStartStopWatch",
  5105. "parameters": [
  5106. {
  5107. "type": "string",
  5108. "description": "owner of the repo",
  5109. "name": "owner",
  5110. "in": "path",
  5111. "required": true
  5112. },
  5113. {
  5114. "type": "string",
  5115. "description": "name of the repo",
  5116. "name": "repo",
  5117. "in": "path",
  5118. "required": true
  5119. },
  5120. {
  5121. "type": "integer",
  5122. "format": "int64",
  5123. "description": "index of the issue to create the stopwatch on",
  5124. "name": "index",
  5125. "in": "path",
  5126. "required": true
  5127. }
  5128. ],
  5129. "responses": {
  5130. "201": {
  5131. "$ref": "#/responses/empty"
  5132. },
  5133. "403": {
  5134. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  5135. },
  5136. "404": {
  5137. "$ref": "#/responses/notFound"
  5138. },
  5139. "409": {
  5140. "description": "Cannot start a stopwatch again if it already exists"
  5141. }
  5142. }
  5143. }
  5144. },
  5145. "/repos/{owner}/{repo}/issues/{index}/stopwatch/stop": {
  5146. "post": {
  5147. "consumes": [
  5148. "application/json"
  5149. ],
  5150. "produces": [
  5151. "application/json"
  5152. ],
  5153. "tags": [
  5154. "issue"
  5155. ],
  5156. "summary": "Stop an issue's existing stopwatch.",
  5157. "operationId": "issueStopStopWatch",
  5158. "parameters": [
  5159. {
  5160. "type": "string",
  5161. "description": "owner of the repo",
  5162. "name": "owner",
  5163. "in": "path",
  5164. "required": true
  5165. },
  5166. {
  5167. "type": "string",
  5168. "description": "name of the repo",
  5169. "name": "repo",
  5170. "in": "path",
  5171. "required": true
  5172. },
  5173. {
  5174. "type": "integer",
  5175. "format": "int64",
  5176. "description": "index of the issue to stop the stopwatch on",
  5177. "name": "index",
  5178. "in": "path",
  5179. "required": true
  5180. }
  5181. ],
  5182. "responses": {
  5183. "201": {
  5184. "$ref": "#/responses/empty"
  5185. },
  5186. "403": {
  5187. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  5188. },
  5189. "404": {
  5190. "$ref": "#/responses/notFound"
  5191. },
  5192. "409": {
  5193. "description": "Cannot stop a non existent stopwatch"
  5194. }
  5195. }
  5196. }
  5197. },
  5198. "/repos/{owner}/{repo}/issues/{index}/subscriptions": {
  5199. "get": {
  5200. "consumes": [
  5201. "application/json"
  5202. ],
  5203. "produces": [
  5204. "application/json"
  5205. ],
  5206. "tags": [
  5207. "issue"
  5208. ],
  5209. "summary": "Get users who subscribed on an issue.",
  5210. "operationId": "issueSubscriptions",
  5211. "parameters": [
  5212. {
  5213. "type": "string",
  5214. "description": "owner of the repo",
  5215. "name": "owner",
  5216. "in": "path",
  5217. "required": true
  5218. },
  5219. {
  5220. "type": "string",
  5221. "description": "name of the repo",
  5222. "name": "repo",
  5223. "in": "path",
  5224. "required": true
  5225. },
  5226. {
  5227. "type": "integer",
  5228. "format": "int64",
  5229. "description": "index of the issue",
  5230. "name": "index",
  5231. "in": "path",
  5232. "required": true
  5233. },
  5234. {
  5235. "type": "integer",
  5236. "description": "page number of results to return (1-based)",
  5237. "name": "page",
  5238. "in": "query"
  5239. },
  5240. {
  5241. "type": "integer",
  5242. "description": "page size of results",
  5243. "name": "limit",
  5244. "in": "query"
  5245. }
  5246. ],
  5247. "responses": {
  5248. "200": {
  5249. "$ref": "#/responses/UserList"
  5250. },
  5251. "404": {
  5252. "$ref": "#/responses/notFound"
  5253. }
  5254. }
  5255. }
  5256. },
  5257. "/repos/{owner}/{repo}/issues/{index}/subscriptions/check": {
  5258. "get": {
  5259. "consumes": [
  5260. "application/json"
  5261. ],
  5262. "produces": [
  5263. "application/json"
  5264. ],
  5265. "tags": [
  5266. "issue"
  5267. ],
  5268. "summary": "Check if user is subscribed to an issue",
  5269. "operationId": "issueCheckSubscription",
  5270. "parameters": [
  5271. {
  5272. "type": "string",
  5273. "description": "owner of the repo",
  5274. "name": "owner",
  5275. "in": "path",
  5276. "required": true
  5277. },
  5278. {
  5279. "type": "string",
  5280. "description": "name of the repo",
  5281. "name": "repo",
  5282. "in": "path",
  5283. "required": true
  5284. },
  5285. {
  5286. "type": "integer",
  5287. "format": "int64",
  5288. "description": "index of the issue",
  5289. "name": "index",
  5290. "in": "path",
  5291. "required": true
  5292. }
  5293. ],
  5294. "responses": {
  5295. "200": {
  5296. "$ref": "#/responses/WatchInfo"
  5297. },
  5298. "404": {
  5299. "$ref": "#/responses/notFound"
  5300. }
  5301. }
  5302. }
  5303. },
  5304. "/repos/{owner}/{repo}/issues/{index}/subscriptions/{user}": {
  5305. "put": {
  5306. "consumes": [
  5307. "application/json"
  5308. ],
  5309. "produces": [
  5310. "application/json"
  5311. ],
  5312. "tags": [
  5313. "issue"
  5314. ],
  5315. "summary": "Subscribe user to issue",
  5316. "operationId": "issueAddSubscription",
  5317. "parameters": [
  5318. {
  5319. "type": "string",
  5320. "description": "owner of the repo",
  5321. "name": "owner",
  5322. "in": "path",
  5323. "required": true
  5324. },
  5325. {
  5326. "type": "string",
  5327. "description": "name of the repo",
  5328. "name": "repo",
  5329. "in": "path",
  5330. "required": true
  5331. },
  5332. {
  5333. "type": "integer",
  5334. "format": "int64",
  5335. "description": "index of the issue",
  5336. "name": "index",
  5337. "in": "path",
  5338. "required": true
  5339. },
  5340. {
  5341. "type": "string",
  5342. "description": "user to subscribe",
  5343. "name": "user",
  5344. "in": "path",
  5345. "required": true
  5346. }
  5347. ],
  5348. "responses": {
  5349. "200": {
  5350. "description": "Already subscribed"
  5351. },
  5352. "201": {
  5353. "description": "Successfully Subscribed"
  5354. },
  5355. "304": {
  5356. "description": "User can only subscribe itself if he is no admin"
  5357. },
  5358. "404": {
  5359. "$ref": "#/responses/notFound"
  5360. }
  5361. }
  5362. },
  5363. "delete": {
  5364. "consumes": [
  5365. "application/json"
  5366. ],
  5367. "produces": [
  5368. "application/json"
  5369. ],
  5370. "tags": [
  5371. "issue"
  5372. ],
  5373. "summary": "Unsubscribe user from issue",
  5374. "operationId": "issueDeleteSubscription",
  5375. "parameters": [
  5376. {
  5377. "type": "string",
  5378. "description": "owner of the repo",
  5379. "name": "owner",
  5380. "in": "path",
  5381. "required": true
  5382. },
  5383. {
  5384. "type": "string",
  5385. "description": "name of the repo",
  5386. "name": "repo",
  5387. "in": "path",
  5388. "required": true
  5389. },
  5390. {
  5391. "type": "integer",
  5392. "format": "int64",
  5393. "description": "index of the issue",
  5394. "name": "index",
  5395. "in": "path",
  5396. "required": true
  5397. },
  5398. {
  5399. "type": "string",
  5400. "description": "user witch unsubscribe",
  5401. "name": "user",
  5402. "in": "path",
  5403. "required": true
  5404. }
  5405. ],
  5406. "responses": {
  5407. "200": {
  5408. "description": "Already unsubscribed"
  5409. },
  5410. "201": {
  5411. "description": "Successfully Unsubscribed"
  5412. },
  5413. "304": {
  5414. "description": "User can only subscribe itself if he is no admin"
  5415. },
  5416. "404": {
  5417. "$ref": "#/responses/notFound"
  5418. }
  5419. }
  5420. }
  5421. },
  5422. "/repos/{owner}/{repo}/issues/{index}/times": {
  5423. "get": {
  5424. "produces": [
  5425. "application/json"
  5426. ],
  5427. "tags": [
  5428. "issue"
  5429. ],
  5430. "summary": "List an issue's tracked times",
  5431. "operationId": "issueTrackedTimes",
  5432. "parameters": [
  5433. {
  5434. "type": "string",
  5435. "description": "owner of the repo",
  5436. "name": "owner",
  5437. "in": "path",
  5438. "required": true
  5439. },
  5440. {
  5441. "type": "string",
  5442. "description": "name of the repo",
  5443. "name": "repo",
  5444. "in": "path",
  5445. "required": true
  5446. },
  5447. {
  5448. "type": "integer",
  5449. "format": "int64",
  5450. "description": "index of the issue",
  5451. "name": "index",
  5452. "in": "path",
  5453. "required": true
  5454. },
  5455. {
  5456. "type": "string",
  5457. "format": "date-time",
  5458. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  5459. "name": "since",
  5460. "in": "query"
  5461. },
  5462. {
  5463. "type": "string",
  5464. "format": "date-time",
  5465. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  5466. "name": "before",
  5467. "in": "query"
  5468. },
  5469. {
  5470. "type": "integer",
  5471. "description": "page number of results to return (1-based)",
  5472. "name": "page",
  5473. "in": "query"
  5474. },
  5475. {
  5476. "type": "integer",
  5477. "description": "page size of results",
  5478. "name": "limit",
  5479. "in": "query"
  5480. }
  5481. ],
  5482. "responses": {
  5483. "200": {
  5484. "$ref": "#/responses/TrackedTimeList"
  5485. },
  5486. "404": {
  5487. "$ref": "#/responses/notFound"
  5488. }
  5489. }
  5490. },
  5491. "post": {
  5492. "consumes": [
  5493. "application/json"
  5494. ],
  5495. "produces": [
  5496. "application/json"
  5497. ],
  5498. "tags": [
  5499. "issue"
  5500. ],
  5501. "summary": "Add tracked time to a issue",
  5502. "operationId": "issueAddTime",
  5503. "parameters": [
  5504. {
  5505. "type": "string",
  5506. "description": "owner of the repo",
  5507. "name": "owner",
  5508. "in": "path",
  5509. "required": true
  5510. },
  5511. {
  5512. "type": "string",
  5513. "description": "name of the repo",
  5514. "name": "repo",
  5515. "in": "path",
  5516. "required": true
  5517. },
  5518. {
  5519. "type": "integer",
  5520. "format": "int64",
  5521. "description": "index of the issue",
  5522. "name": "index",
  5523. "in": "path",
  5524. "required": true
  5525. },
  5526. {
  5527. "name": "body",
  5528. "in": "body",
  5529. "schema": {
  5530. "$ref": "#/definitions/AddTimeOption"
  5531. }
  5532. }
  5533. ],
  5534. "responses": {
  5535. "200": {
  5536. "$ref": "#/responses/TrackedTime"
  5537. },
  5538. "400": {
  5539. "$ref": "#/responses/error"
  5540. },
  5541. "403": {
  5542. "$ref": "#/responses/forbidden"
  5543. }
  5544. }
  5545. },
  5546. "delete": {
  5547. "consumes": [
  5548. "application/json"
  5549. ],
  5550. "produces": [
  5551. "application/json"
  5552. ],
  5553. "tags": [
  5554. "issue"
  5555. ],
  5556. "summary": "Reset a tracked time of an issue",
  5557. "operationId": "issueResetTime",
  5558. "parameters": [
  5559. {
  5560. "type": "string",
  5561. "description": "owner of the repo",
  5562. "name": "owner",
  5563. "in": "path",
  5564. "required": true
  5565. },
  5566. {
  5567. "type": "string",
  5568. "description": "name of the repo",
  5569. "name": "repo",
  5570. "in": "path",
  5571. "required": true
  5572. },
  5573. {
  5574. "type": "integer",
  5575. "format": "int64",
  5576. "description": "index of the issue to add tracked time to",
  5577. "name": "index",
  5578. "in": "path",
  5579. "required": true
  5580. }
  5581. ],
  5582. "responses": {
  5583. "204": {
  5584. "$ref": "#/responses/empty"
  5585. },
  5586. "400": {
  5587. "$ref": "#/responses/error"
  5588. },
  5589. "403": {
  5590. "$ref": "#/responses/forbidden"
  5591. }
  5592. }
  5593. }
  5594. },
  5595. "/repos/{owner}/{repo}/issues/{index}/times/{id}": {
  5596. "delete": {
  5597. "consumes": [
  5598. "application/json"
  5599. ],
  5600. "produces": [
  5601. "application/json"
  5602. ],
  5603. "tags": [
  5604. "issue"
  5605. ],
  5606. "summary": "Delete specific tracked time",
  5607. "operationId": "issueDeleteTime",
  5608. "parameters": [
  5609. {
  5610. "type": "string",
  5611. "description": "owner of the repo",
  5612. "name": "owner",
  5613. "in": "path",
  5614. "required": true
  5615. },
  5616. {
  5617. "type": "string",
  5618. "description": "name of the repo",
  5619. "name": "repo",
  5620. "in": "path",
  5621. "required": true
  5622. },
  5623. {
  5624. "type": "integer",
  5625. "format": "int64",
  5626. "description": "index of the issue",
  5627. "name": "index",
  5628. "in": "path",
  5629. "required": true
  5630. },
  5631. {
  5632. "type": "integer",
  5633. "format": "int64",
  5634. "description": "id of time to delete",
  5635. "name": "id",
  5636. "in": "path",
  5637. "required": true
  5638. }
  5639. ],
  5640. "responses": {
  5641. "204": {
  5642. "$ref": "#/responses/empty"
  5643. },
  5644. "400": {
  5645. "$ref": "#/responses/error"
  5646. },
  5647. "403": {
  5648. "$ref": "#/responses/forbidden"
  5649. }
  5650. }
  5651. }
  5652. },
  5653. "/repos/{owner}/{repo}/keys": {
  5654. "get": {
  5655. "produces": [
  5656. "application/json"
  5657. ],
  5658. "tags": [
  5659. "repository"
  5660. ],
  5661. "summary": "List a repository's keys",
  5662. "operationId": "repoListKeys",
  5663. "parameters": [
  5664. {
  5665. "type": "string",
  5666. "description": "owner of the repo",
  5667. "name": "owner",
  5668. "in": "path",
  5669. "required": true
  5670. },
  5671. {
  5672. "type": "string",
  5673. "description": "name of the repo",
  5674. "name": "repo",
  5675. "in": "path",
  5676. "required": true
  5677. },
  5678. {
  5679. "type": "integer",
  5680. "description": "the key_id to search for",
  5681. "name": "key_id",
  5682. "in": "query"
  5683. },
  5684. {
  5685. "type": "string",
  5686. "description": "fingerprint of the key",
  5687. "name": "fingerprint",
  5688. "in": "query"
  5689. },
  5690. {
  5691. "type": "integer",
  5692. "description": "page number of results to return (1-based)",
  5693. "name": "page",
  5694. "in": "query"
  5695. },
  5696. {
  5697. "type": "integer",
  5698. "description": "page size of results",
  5699. "name": "limit",
  5700. "in": "query"
  5701. }
  5702. ],
  5703. "responses": {
  5704. "200": {
  5705. "$ref": "#/responses/DeployKeyList"
  5706. }
  5707. }
  5708. },
  5709. "post": {
  5710. "consumes": [
  5711. "application/json"
  5712. ],
  5713. "produces": [
  5714. "application/json"
  5715. ],
  5716. "tags": [
  5717. "repository"
  5718. ],
  5719. "summary": "Add a key to a repository",
  5720. "operationId": "repoCreateKey",
  5721. "parameters": [
  5722. {
  5723. "type": "string",
  5724. "description": "owner of the repo",
  5725. "name": "owner",
  5726. "in": "path",
  5727. "required": true
  5728. },
  5729. {
  5730. "type": "string",
  5731. "description": "name of the repo",
  5732. "name": "repo",
  5733. "in": "path",
  5734. "required": true
  5735. },
  5736. {
  5737. "name": "body",
  5738. "in": "body",
  5739. "schema": {
  5740. "$ref": "#/definitions/CreateKeyOption"
  5741. }
  5742. }
  5743. ],
  5744. "responses": {
  5745. "201": {
  5746. "$ref": "#/responses/DeployKey"
  5747. },
  5748. "422": {
  5749. "$ref": "#/responses/validationError"
  5750. }
  5751. }
  5752. }
  5753. },
  5754. "/repos/{owner}/{repo}/keys/{id}": {
  5755. "get": {
  5756. "produces": [
  5757. "application/json"
  5758. ],
  5759. "tags": [
  5760. "repository"
  5761. ],
  5762. "summary": "Get a repository's key by id",
  5763. "operationId": "repoGetKey",
  5764. "parameters": [
  5765. {
  5766. "type": "string",
  5767. "description": "owner of the repo",
  5768. "name": "owner",
  5769. "in": "path",
  5770. "required": true
  5771. },
  5772. {
  5773. "type": "string",
  5774. "description": "name of the repo",
  5775. "name": "repo",
  5776. "in": "path",
  5777. "required": true
  5778. },
  5779. {
  5780. "type": "integer",
  5781. "format": "int64",
  5782. "description": "id of the key to get",
  5783. "name": "id",
  5784. "in": "path",
  5785. "required": true
  5786. }
  5787. ],
  5788. "responses": {
  5789. "200": {
  5790. "$ref": "#/responses/DeployKey"
  5791. }
  5792. }
  5793. },
  5794. "delete": {
  5795. "tags": [
  5796. "repository"
  5797. ],
  5798. "summary": "Delete a key from a repository",
  5799. "operationId": "repoDeleteKey",
  5800. "parameters": [
  5801. {
  5802. "type": "string",
  5803. "description": "owner of the repo",
  5804. "name": "owner",
  5805. "in": "path",
  5806. "required": true
  5807. },
  5808. {
  5809. "type": "string",
  5810. "description": "name of the repo",
  5811. "name": "repo",
  5812. "in": "path",
  5813. "required": true
  5814. },
  5815. {
  5816. "type": "integer",
  5817. "format": "int64",
  5818. "description": "id of the key to delete",
  5819. "name": "id",
  5820. "in": "path",
  5821. "required": true
  5822. }
  5823. ],
  5824. "responses": {
  5825. "204": {
  5826. "$ref": "#/responses/empty"
  5827. },
  5828. "403": {
  5829. "$ref": "#/responses/forbidden"
  5830. }
  5831. }
  5832. }
  5833. },
  5834. "/repos/{owner}/{repo}/labels": {
  5835. "get": {
  5836. "produces": [
  5837. "application/json"
  5838. ],
  5839. "tags": [
  5840. "issue"
  5841. ],
  5842. "summary": "Get all of a repository's labels",
  5843. "operationId": "issueListLabels",
  5844. "parameters": [
  5845. {
  5846. "type": "string",
  5847. "description": "owner of the repo",
  5848. "name": "owner",
  5849. "in": "path",
  5850. "required": true
  5851. },
  5852. {
  5853. "type": "string",
  5854. "description": "name of the repo",
  5855. "name": "repo",
  5856. "in": "path",
  5857. "required": true
  5858. },
  5859. {
  5860. "type": "integer",
  5861. "description": "page number of results to return (1-based)",
  5862. "name": "page",
  5863. "in": "query"
  5864. },
  5865. {
  5866. "type": "integer",
  5867. "description": "page size of results",
  5868. "name": "limit",
  5869. "in": "query"
  5870. }
  5871. ],
  5872. "responses": {
  5873. "200": {
  5874. "$ref": "#/responses/LabelList"
  5875. }
  5876. }
  5877. },
  5878. "post": {
  5879. "consumes": [
  5880. "application/json"
  5881. ],
  5882. "produces": [
  5883. "application/json"
  5884. ],
  5885. "tags": [
  5886. "issue"
  5887. ],
  5888. "summary": "Create a label",
  5889. "operationId": "issueCreateLabel",
  5890. "parameters": [
  5891. {
  5892. "type": "string",
  5893. "description": "owner of the repo",
  5894. "name": "owner",
  5895. "in": "path",
  5896. "required": true
  5897. },
  5898. {
  5899. "type": "string",
  5900. "description": "name of the repo",
  5901. "name": "repo",
  5902. "in": "path",
  5903. "required": true
  5904. },
  5905. {
  5906. "name": "body",
  5907. "in": "body",
  5908. "schema": {
  5909. "$ref": "#/definitions/CreateLabelOption"
  5910. }
  5911. }
  5912. ],
  5913. "responses": {
  5914. "201": {
  5915. "$ref": "#/responses/Label"
  5916. },
  5917. "422": {
  5918. "$ref": "#/responses/validationError"
  5919. }
  5920. }
  5921. }
  5922. },
  5923. "/repos/{owner}/{repo}/labels/{id}": {
  5924. "get": {
  5925. "produces": [
  5926. "application/json"
  5927. ],
  5928. "tags": [
  5929. "issue"
  5930. ],
  5931. "summary": "Get a single label",
  5932. "operationId": "issueGetLabel",
  5933. "parameters": [
  5934. {
  5935. "type": "string",
  5936. "description": "owner of the repo",
  5937. "name": "owner",
  5938. "in": "path",
  5939. "required": true
  5940. },
  5941. {
  5942. "type": "string",
  5943. "description": "name of the repo",
  5944. "name": "repo",
  5945. "in": "path",
  5946. "required": true
  5947. },
  5948. {
  5949. "type": "integer",
  5950. "format": "int64",
  5951. "description": "id of the label to get",
  5952. "name": "id",
  5953. "in": "path",
  5954. "required": true
  5955. }
  5956. ],
  5957. "responses": {
  5958. "200": {
  5959. "$ref": "#/responses/Label"
  5960. }
  5961. }
  5962. },
  5963. "delete": {
  5964. "tags": [
  5965. "issue"
  5966. ],
  5967. "summary": "Delete a label",
  5968. "operationId": "issueDeleteLabel",
  5969. "parameters": [
  5970. {
  5971. "type": "string",
  5972. "description": "owner of the repo",
  5973. "name": "owner",
  5974. "in": "path",
  5975. "required": true
  5976. },
  5977. {
  5978. "type": "string",
  5979. "description": "name of the repo",
  5980. "name": "repo",
  5981. "in": "path",
  5982. "required": true
  5983. },
  5984. {
  5985. "type": "integer",
  5986. "format": "int64",
  5987. "description": "id of the label to delete",
  5988. "name": "id",
  5989. "in": "path",
  5990. "required": true
  5991. }
  5992. ],
  5993. "responses": {
  5994. "204": {
  5995. "$ref": "#/responses/empty"
  5996. }
  5997. }
  5998. },
  5999. "patch": {
  6000. "consumes": [
  6001. "application/json"
  6002. ],
  6003. "produces": [
  6004. "application/json"
  6005. ],
  6006. "tags": [
  6007. "issue"
  6008. ],
  6009. "summary": "Update a label",
  6010. "operationId": "issueEditLabel",
  6011. "parameters": [
  6012. {
  6013. "type": "string",
  6014. "description": "owner of the repo",
  6015. "name": "owner",
  6016. "in": "path",
  6017. "required": true
  6018. },
  6019. {
  6020. "type": "string",
  6021. "description": "name of the repo",
  6022. "name": "repo",
  6023. "in": "path",
  6024. "required": true
  6025. },
  6026. {
  6027. "type": "integer",
  6028. "format": "int64",
  6029. "description": "id of the label to edit",
  6030. "name": "id",
  6031. "in": "path",
  6032. "required": true
  6033. },
  6034. {
  6035. "name": "body",
  6036. "in": "body",
  6037. "schema": {
  6038. "$ref": "#/definitions/EditLabelOption"
  6039. }
  6040. }
  6041. ],
  6042. "responses": {
  6043. "200": {
  6044. "$ref": "#/responses/Label"
  6045. },
  6046. "422": {
  6047. "$ref": "#/responses/validationError"
  6048. }
  6049. }
  6050. }
  6051. },
  6052. "/repos/{owner}/{repo}/languages": {
  6053. "get": {
  6054. "produces": [
  6055. "application/json"
  6056. ],
  6057. "tags": [
  6058. "repository"
  6059. ],
  6060. "summary": "Get languages and number of bytes of code written",
  6061. "operationId": "repoGetLanguages",
  6062. "parameters": [
  6063. {
  6064. "type": "string",
  6065. "description": "owner of the repo",
  6066. "name": "owner",
  6067. "in": "path",
  6068. "required": true
  6069. },
  6070. {
  6071. "type": "string",
  6072. "description": "name of the repo",
  6073. "name": "repo",
  6074. "in": "path",
  6075. "required": true
  6076. }
  6077. ],
  6078. "responses": {
  6079. "200": {
  6080. "$ref": "#/responses/LanguageStatistics"
  6081. },
  6082. "404": {
  6083. "$ref": "#/responses/notFound"
  6084. }
  6085. }
  6086. }
  6087. },
  6088. "/repos/{owner}/{repo}/milestones": {
  6089. "get": {
  6090. "produces": [
  6091. "application/json"
  6092. ],
  6093. "tags": [
  6094. "issue"
  6095. ],
  6096. "summary": "Get all of a repository's opened milestones",
  6097. "operationId": "issueGetMilestonesList",
  6098. "parameters": [
  6099. {
  6100. "type": "string",
  6101. "description": "owner of the repo",
  6102. "name": "owner",
  6103. "in": "path",
  6104. "required": true
  6105. },
  6106. {
  6107. "type": "string",
  6108. "description": "name of the repo",
  6109. "name": "repo",
  6110. "in": "path",
  6111. "required": true
  6112. },
  6113. {
  6114. "type": "string",
  6115. "description": "Milestone state, Recognised values are open, closed and all. Defaults to \"open\"",
  6116. "name": "state",
  6117. "in": "query"
  6118. },
  6119. {
  6120. "type": "integer",
  6121. "description": "page number of results to return (1-based)",
  6122. "name": "page",
  6123. "in": "query"
  6124. },
  6125. {
  6126. "type": "integer",
  6127. "description": "page size of results",
  6128. "name": "limit",
  6129. "in": "query"
  6130. }
  6131. ],
  6132. "responses": {
  6133. "200": {
  6134. "$ref": "#/responses/MilestoneList"
  6135. }
  6136. }
  6137. },
  6138. "post": {
  6139. "consumes": [
  6140. "application/json"
  6141. ],
  6142. "produces": [
  6143. "application/json"
  6144. ],
  6145. "tags": [
  6146. "issue"
  6147. ],
  6148. "summary": "Create a milestone",
  6149. "operationId": "issueCreateMilestone",
  6150. "parameters": [
  6151. {
  6152. "type": "string",
  6153. "description": "owner of the repo",
  6154. "name": "owner",
  6155. "in": "path",
  6156. "required": true
  6157. },
  6158. {
  6159. "type": "string",
  6160. "description": "name of the repo",
  6161. "name": "repo",
  6162. "in": "path",
  6163. "required": true
  6164. },
  6165. {
  6166. "name": "body",
  6167. "in": "body",
  6168. "schema": {
  6169. "$ref": "#/definitions/CreateMilestoneOption"
  6170. }
  6171. }
  6172. ],
  6173. "responses": {
  6174. "201": {
  6175. "$ref": "#/responses/Milestone"
  6176. }
  6177. }
  6178. }
  6179. },
  6180. "/repos/{owner}/{repo}/milestones/{id}": {
  6181. "get": {
  6182. "produces": [
  6183. "application/json"
  6184. ],
  6185. "tags": [
  6186. "issue"
  6187. ],
  6188. "summary": "Get a milestone",
  6189. "operationId": "issueGetMilestone",
  6190. "parameters": [
  6191. {
  6192. "type": "string",
  6193. "description": "owner of the repo",
  6194. "name": "owner",
  6195. "in": "path",
  6196. "required": true
  6197. },
  6198. {
  6199. "type": "string",
  6200. "description": "name of the repo",
  6201. "name": "repo",
  6202. "in": "path",
  6203. "required": true
  6204. },
  6205. {
  6206. "type": "integer",
  6207. "format": "int64",
  6208. "description": "id of the milestone",
  6209. "name": "id",
  6210. "in": "path",
  6211. "required": true
  6212. }
  6213. ],
  6214. "responses": {
  6215. "200": {
  6216. "$ref": "#/responses/Milestone"
  6217. }
  6218. }
  6219. },
  6220. "delete": {
  6221. "tags": [
  6222. "issue"
  6223. ],
  6224. "summary": "Delete a milestone",
  6225. "operationId": "issueDeleteMilestone",
  6226. "parameters": [
  6227. {
  6228. "type": "string",
  6229. "description": "owner of the repo",
  6230. "name": "owner",
  6231. "in": "path",
  6232. "required": true
  6233. },
  6234. {
  6235. "type": "string",
  6236. "description": "name of the repo",
  6237. "name": "repo",
  6238. "in": "path",
  6239. "required": true
  6240. },
  6241. {
  6242. "type": "integer",
  6243. "format": "int64",
  6244. "description": "id of the milestone to delete",
  6245. "name": "id",
  6246. "in": "path",
  6247. "required": true
  6248. }
  6249. ],
  6250. "responses": {
  6251. "204": {
  6252. "$ref": "#/responses/empty"
  6253. }
  6254. }
  6255. },
  6256. "patch": {
  6257. "consumes": [
  6258. "application/json"
  6259. ],
  6260. "produces": [
  6261. "application/json"
  6262. ],
  6263. "tags": [
  6264. "issue"
  6265. ],
  6266. "summary": "Update a milestone",
  6267. "operationId": "issueEditMilestone",
  6268. "parameters": [
  6269. {
  6270. "type": "string",
  6271. "description": "owner of the repo",
  6272. "name": "owner",
  6273. "in": "path",
  6274. "required": true
  6275. },
  6276. {
  6277. "type": "string",
  6278. "description": "name of the repo",
  6279. "name": "repo",
  6280. "in": "path",
  6281. "required": true
  6282. },
  6283. {
  6284. "type": "integer",
  6285. "format": "int64",
  6286. "description": "id of the milestone",
  6287. "name": "id",
  6288. "in": "path",
  6289. "required": true
  6290. },
  6291. {
  6292. "name": "body",
  6293. "in": "body",
  6294. "schema": {
  6295. "$ref": "#/definitions/EditMilestoneOption"
  6296. }
  6297. }
  6298. ],
  6299. "responses": {
  6300. "200": {
  6301. "$ref": "#/responses/Milestone"
  6302. }
  6303. }
  6304. }
  6305. },
  6306. "/repos/{owner}/{repo}/mirror-sync": {
  6307. "post": {
  6308. "produces": [
  6309. "application/json"
  6310. ],
  6311. "tags": [
  6312. "repository"
  6313. ],
  6314. "summary": "Sync a mirrored repository",
  6315. "operationId": "repoMirrorSync",
  6316. "parameters": [
  6317. {
  6318. "type": "string",
  6319. "description": "owner of the repo to sync",
  6320. "name": "owner",
  6321. "in": "path",
  6322. "required": true
  6323. },
  6324. {
  6325. "type": "string",
  6326. "description": "name of the repo to sync",
  6327. "name": "repo",
  6328. "in": "path",
  6329. "required": true
  6330. }
  6331. ],
  6332. "responses": {
  6333. "200": {
  6334. "$ref": "#/responses/empty"
  6335. },
  6336. "403": {
  6337. "$ref": "#/responses/forbidden"
  6338. }
  6339. }
  6340. }
  6341. },
  6342. "/repos/{owner}/{repo}/notifications": {
  6343. "get": {
  6344. "consumes": [
  6345. "application/json"
  6346. ],
  6347. "produces": [
  6348. "application/json"
  6349. ],
  6350. "tags": [
  6351. "notification"
  6352. ],
  6353. "summary": "List users's notification threads on a specific repo",
  6354. "operationId": "notifyGetRepoList",
  6355. "parameters": [
  6356. {
  6357. "type": "string",
  6358. "description": "owner of the repo",
  6359. "name": "owner",
  6360. "in": "path",
  6361. "required": true
  6362. },
  6363. {
  6364. "type": "string",
  6365. "description": "name of the repo",
  6366. "name": "repo",
  6367. "in": "path",
  6368. "required": true
  6369. },
  6370. {
  6371. "type": "string",
  6372. "description": "If true, show notifications marked as read. Default value is false",
  6373. "name": "all",
  6374. "in": "query"
  6375. },
  6376. {
  6377. "type": "string",
  6378. "format": "date-time",
  6379. "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format",
  6380. "name": "since",
  6381. "in": "query"
  6382. },
  6383. {
  6384. "type": "string",
  6385. "format": "date-time",
  6386. "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format",
  6387. "name": "before",
  6388. "in": "query"
  6389. },
  6390. {
  6391. "type": "integer",
  6392. "description": "page number of results to return (1-based)",
  6393. "name": "page",
  6394. "in": "query"
  6395. },
  6396. {
  6397. "type": "integer",
  6398. "description": "page size of results",
  6399. "name": "limit",
  6400. "in": "query"
  6401. }
  6402. ],
  6403. "responses": {
  6404. "200": {
  6405. "$ref": "#/responses/NotificationThreadList"
  6406. }
  6407. }
  6408. },
  6409. "put": {
  6410. "consumes": [
  6411. "application/json"
  6412. ],
  6413. "produces": [
  6414. "application/json"
  6415. ],
  6416. "tags": [
  6417. "notification"
  6418. ],
  6419. "summary": "Mark notification threads as read on a specific repo",
  6420. "operationId": "notifyReadRepoList",
  6421. "parameters": [
  6422. {
  6423. "type": "string",
  6424. "description": "owner of the repo",
  6425. "name": "owner",
  6426. "in": "path",
  6427. "required": true
  6428. },
  6429. {
  6430. "type": "string",
  6431. "description": "name of the repo",
  6432. "name": "repo",
  6433. "in": "path",
  6434. "required": true
  6435. },
  6436. {
  6437. "type": "string",
  6438. "format": "date-time",
  6439. "description": "Describes the last point that notifications were checked. Anything updated since this time will not be updated.",
  6440. "name": "last_read_at",
  6441. "in": "query"
  6442. }
  6443. ],
  6444. "responses": {
  6445. "205": {
  6446. "$ref": "#/responses/empty"
  6447. }
  6448. }
  6449. }
  6450. },
  6451. "/repos/{owner}/{repo}/pulls": {
  6452. "get": {
  6453. "produces": [
  6454. "application/json"
  6455. ],
  6456. "tags": [
  6457. "repository"
  6458. ],
  6459. "summary": "List a repo's pull requests",
  6460. "operationId": "repoListPullRequests",
  6461. "parameters": [
  6462. {
  6463. "type": "string",
  6464. "description": "owner of the repo",
  6465. "name": "owner",
  6466. "in": "path",
  6467. "required": true
  6468. },
  6469. {
  6470. "type": "string",
  6471. "description": "name of the repo",
  6472. "name": "repo",
  6473. "in": "path",
  6474. "required": true
  6475. },
  6476. {
  6477. "enum": [
  6478. "closed",
  6479. "open",
  6480. "all"
  6481. ],
  6482. "type": "string",
  6483. "description": "State of pull request: open or closed (optional)",
  6484. "name": "state",
  6485. "in": "query"
  6486. },
  6487. {
  6488. "enum": [
  6489. "oldest",
  6490. "recentupdate",
  6491. "leastupdate",
  6492. "mostcomment",
  6493. "leastcomment",
  6494. "priority"
  6495. ],
  6496. "type": "string",
  6497. "description": "Type of sort",
  6498. "name": "sort",
  6499. "in": "query"
  6500. },
  6501. {
  6502. "type": "integer",
  6503. "format": "int64",
  6504. "description": "ID of the milestone",
  6505. "name": "milestone",
  6506. "in": "query"
  6507. },
  6508. {
  6509. "type": "array",
  6510. "items": {
  6511. "type": "integer",
  6512. "format": "int64"
  6513. },
  6514. "collectionFormat": "multi",
  6515. "description": "Label IDs",
  6516. "name": "labels",
  6517. "in": "query"
  6518. },
  6519. {
  6520. "type": "integer",
  6521. "description": "page number of results to return (1-based)",
  6522. "name": "page",
  6523. "in": "query"
  6524. },
  6525. {
  6526. "type": "integer",
  6527. "description": "page size of results",
  6528. "name": "limit",
  6529. "in": "query"
  6530. }
  6531. ],
  6532. "responses": {
  6533. "200": {
  6534. "$ref": "#/responses/PullRequestList"
  6535. }
  6536. }
  6537. },
  6538. "post": {
  6539. "consumes": [
  6540. "application/json"
  6541. ],
  6542. "produces": [
  6543. "application/json"
  6544. ],
  6545. "tags": [
  6546. "repository"
  6547. ],
  6548. "summary": "Create a pull request",
  6549. "operationId": "repoCreatePullRequest",
  6550. "parameters": [
  6551. {
  6552. "type": "string",
  6553. "description": "owner of the repo",
  6554. "name": "owner",
  6555. "in": "path",
  6556. "required": true
  6557. },
  6558. {
  6559. "type": "string",
  6560. "description": "name of the repo",
  6561. "name": "repo",
  6562. "in": "path",
  6563. "required": true
  6564. },
  6565. {
  6566. "name": "body",
  6567. "in": "body",
  6568. "schema": {
  6569. "$ref": "#/definitions/CreatePullRequestOption"
  6570. }
  6571. }
  6572. ],
  6573. "responses": {
  6574. "201": {
  6575. "$ref": "#/responses/PullRequest"
  6576. },
  6577. "409": {
  6578. "$ref": "#/responses/error"
  6579. },
  6580. "422": {
  6581. "$ref": "#/responses/validationError"
  6582. }
  6583. }
  6584. }
  6585. },
  6586. "/repos/{owner}/{repo}/pulls/{index}": {
  6587. "get": {
  6588. "produces": [
  6589. "application/json"
  6590. ],
  6591. "tags": [
  6592. "repository"
  6593. ],
  6594. "summary": "Get a pull request",
  6595. "operationId": "repoGetPullRequest",
  6596. "parameters": [
  6597. {
  6598. "type": "string",
  6599. "description": "owner of the repo",
  6600. "name": "owner",
  6601. "in": "path",
  6602. "required": true
  6603. },
  6604. {
  6605. "type": "string",
  6606. "description": "name of the repo",
  6607. "name": "repo",
  6608. "in": "path",
  6609. "required": true
  6610. },
  6611. {
  6612. "type": "integer",
  6613. "format": "int64",
  6614. "description": "index of the pull request to get",
  6615. "name": "index",
  6616. "in": "path",
  6617. "required": true
  6618. }
  6619. ],
  6620. "responses": {
  6621. "200": {
  6622. "$ref": "#/responses/PullRequest"
  6623. },
  6624. "404": {
  6625. "$ref": "#/responses/notFound"
  6626. }
  6627. }
  6628. },
  6629. "patch": {
  6630. "consumes": [
  6631. "application/json"
  6632. ],
  6633. "produces": [
  6634. "application/json"
  6635. ],
  6636. "tags": [
  6637. "repository"
  6638. ],
  6639. "summary": "Update a pull request. If using deadline only the date will be taken into account, and time of day ignored.",
  6640. "operationId": "repoEditPullRequest",
  6641. "parameters": [
  6642. {
  6643. "type": "string",
  6644. "description": "owner of the repo",
  6645. "name": "owner",
  6646. "in": "path",
  6647. "required": true
  6648. },
  6649. {
  6650. "type": "string",
  6651. "description": "name of the repo",
  6652. "name": "repo",
  6653. "in": "path",
  6654. "required": true
  6655. },
  6656. {
  6657. "type": "integer",
  6658. "format": "int64",
  6659. "description": "index of the pull request to edit",
  6660. "name": "index",
  6661. "in": "path",
  6662. "required": true
  6663. },
  6664. {
  6665. "name": "body",
  6666. "in": "body",
  6667. "schema": {
  6668. "$ref": "#/definitions/EditPullRequestOption"
  6669. }
  6670. }
  6671. ],
  6672. "responses": {
  6673. "201": {
  6674. "$ref": "#/responses/PullRequest"
  6675. },
  6676. "403": {
  6677. "$ref": "#/responses/forbidden"
  6678. },
  6679. "409": {
  6680. "$ref": "#/responses/error"
  6681. },
  6682. "412": {
  6683. "$ref": "#/responses/error"
  6684. },
  6685. "422": {
  6686. "$ref": "#/responses/validationError"
  6687. }
  6688. }
  6689. }
  6690. },
  6691. "/repos/{owner}/{repo}/pulls/{index}.diff": {
  6692. "get": {
  6693. "produces": [
  6694. "text/plain"
  6695. ],
  6696. "tags": [
  6697. "repository"
  6698. ],
  6699. "summary": "Get a pull request diff",
  6700. "operationId": "repoDownloadPullDiff",
  6701. "parameters": [
  6702. {
  6703. "type": "string",
  6704. "description": "owner of the repo",
  6705. "name": "owner",
  6706. "in": "path",
  6707. "required": true
  6708. },
  6709. {
  6710. "type": "string",
  6711. "description": "name of the repo",
  6712. "name": "repo",
  6713. "in": "path",
  6714. "required": true
  6715. },
  6716. {
  6717. "type": "integer",
  6718. "format": "int64",
  6719. "description": "index of the pull request to get",
  6720. "name": "index",
  6721. "in": "path",
  6722. "required": true
  6723. }
  6724. ],
  6725. "responses": {
  6726. "200": {
  6727. "$ref": "#/responses/string"
  6728. },
  6729. "404": {
  6730. "$ref": "#/responses/notFound"
  6731. }
  6732. }
  6733. }
  6734. },
  6735. "/repos/{owner}/{repo}/pulls/{index}.patch": {
  6736. "get": {
  6737. "produces": [
  6738. "text/plain"
  6739. ],
  6740. "tags": [
  6741. "repository"
  6742. ],
  6743. "summary": "Get a pull request patch file",
  6744. "operationId": "repoDownloadPullPatch",
  6745. "parameters": [
  6746. {
  6747. "type": "string",
  6748. "description": "owner of the repo",
  6749. "name": "owner",
  6750. "in": "path",
  6751. "required": true
  6752. },
  6753. {
  6754. "type": "string",
  6755. "description": "name of the repo",
  6756. "name": "repo",
  6757. "in": "path",
  6758. "required": true
  6759. },
  6760. {
  6761. "type": "integer",
  6762. "format": "int64",
  6763. "description": "index of the pull request to get",
  6764. "name": "index",
  6765. "in": "path",
  6766. "required": true
  6767. }
  6768. ],
  6769. "responses": {
  6770. "200": {
  6771. "$ref": "#/responses/string"
  6772. },
  6773. "404": {
  6774. "$ref": "#/responses/notFound"
  6775. }
  6776. }
  6777. }
  6778. },
  6779. "/repos/{owner}/{repo}/pulls/{index}/merge": {
  6780. "get": {
  6781. "produces": [
  6782. "application/json"
  6783. ],
  6784. "tags": [
  6785. "repository"
  6786. ],
  6787. "summary": "Check if a pull request has been merged",
  6788. "operationId": "repoPullRequestIsMerged",
  6789. "parameters": [
  6790. {
  6791. "type": "string",
  6792. "description": "owner of the repo",
  6793. "name": "owner",
  6794. "in": "path",
  6795. "required": true
  6796. },
  6797. {
  6798. "type": "string",
  6799. "description": "name of the repo",
  6800. "name": "repo",
  6801. "in": "path",
  6802. "required": true
  6803. },
  6804. {
  6805. "type": "integer",
  6806. "format": "int64",
  6807. "description": "index of the pull request",
  6808. "name": "index",
  6809. "in": "path",
  6810. "required": true
  6811. }
  6812. ],
  6813. "responses": {
  6814. "204": {
  6815. "description": "pull request has been merged"
  6816. },
  6817. "404": {
  6818. "description": "pull request has not been merged"
  6819. }
  6820. }
  6821. },
  6822. "post": {
  6823. "produces": [
  6824. "application/json"
  6825. ],
  6826. "tags": [
  6827. "repository"
  6828. ],
  6829. "summary": "Merge a pull request",
  6830. "operationId": "repoMergePullRequest",
  6831. "parameters": [
  6832. {
  6833. "type": "string",
  6834. "description": "owner of the repo",
  6835. "name": "owner",
  6836. "in": "path",
  6837. "required": true
  6838. },
  6839. {
  6840. "type": "string",
  6841. "description": "name of the repo",
  6842. "name": "repo",
  6843. "in": "path",
  6844. "required": true
  6845. },
  6846. {
  6847. "type": "integer",
  6848. "format": "int64",
  6849. "description": "index of the pull request to merge",
  6850. "name": "index",
  6851. "in": "path",
  6852. "required": true
  6853. },
  6854. {
  6855. "name": "body",
  6856. "in": "body",
  6857. "schema": {
  6858. "$ref": "#/definitions/MergePullRequestOption"
  6859. }
  6860. }
  6861. ],
  6862. "responses": {
  6863. "200": {
  6864. "$ref": "#/responses/empty"
  6865. },
  6866. "405": {
  6867. "$ref": "#/responses/empty"
  6868. },
  6869. "409": {
  6870. "$ref": "#/responses/error"
  6871. }
  6872. }
  6873. }
  6874. },
  6875. "/repos/{owner}/{repo}/pulls/{index}/reviews": {
  6876. "get": {
  6877. "produces": [
  6878. "application/json"
  6879. ],
  6880. "tags": [
  6881. "repository"
  6882. ],
  6883. "summary": "List all reviews for a pull request",
  6884. "operationId": "repoListPullReviews",
  6885. "parameters": [
  6886. {
  6887. "type": "string",
  6888. "description": "owner of the repo",
  6889. "name": "owner",
  6890. "in": "path",
  6891. "required": true
  6892. },
  6893. {
  6894. "type": "string",
  6895. "description": "name of the repo",
  6896. "name": "repo",
  6897. "in": "path",
  6898. "required": true
  6899. },
  6900. {
  6901. "type": "integer",
  6902. "format": "int64",
  6903. "description": "index of the pull request",
  6904. "name": "index",
  6905. "in": "path",
  6906. "required": true
  6907. },
  6908. {
  6909. "type": "integer",
  6910. "description": "page number of results to return (1-based)",
  6911. "name": "page",
  6912. "in": "query"
  6913. },
  6914. {
  6915. "type": "integer",
  6916. "description": "page size of results",
  6917. "name": "limit",
  6918. "in": "query"
  6919. }
  6920. ],
  6921. "responses": {
  6922. "200": {
  6923. "$ref": "#/responses/PullReviewList"
  6924. },
  6925. "404": {
  6926. "$ref": "#/responses/notFound"
  6927. }
  6928. }
  6929. },
  6930. "post": {
  6931. "produces": [
  6932. "application/json"
  6933. ],
  6934. "tags": [
  6935. "repository"
  6936. ],
  6937. "summary": "Create a review to an pull request",
  6938. "operationId": "repoCreatePullReview",
  6939. "parameters": [
  6940. {
  6941. "type": "string",
  6942. "description": "owner of the repo",
  6943. "name": "owner",
  6944. "in": "path",
  6945. "required": true
  6946. },
  6947. {
  6948. "type": "string",
  6949. "description": "name of the repo",
  6950. "name": "repo",
  6951. "in": "path",
  6952. "required": true
  6953. },
  6954. {
  6955. "type": "integer",
  6956. "format": "int64",
  6957. "description": "index of the pull request",
  6958. "name": "index",
  6959. "in": "path",
  6960. "required": true
  6961. },
  6962. {
  6963. "name": "body",
  6964. "in": "body",
  6965. "required": true,
  6966. "schema": {
  6967. "$ref": "#/definitions/CreatePullReviewOptions"
  6968. }
  6969. }
  6970. ],
  6971. "responses": {
  6972. "200": {
  6973. "$ref": "#/responses/PullReview"
  6974. },
  6975. "404": {
  6976. "$ref": "#/responses/notFound"
  6977. },
  6978. "422": {
  6979. "$ref": "#/responses/validationError"
  6980. }
  6981. }
  6982. }
  6983. },
  6984. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}": {
  6985. "get": {
  6986. "produces": [
  6987. "application/json"
  6988. ],
  6989. "tags": [
  6990. "repository"
  6991. ],
  6992. "summary": "Get a specific review for a pull request",
  6993. "operationId": "repoGetPullReview",
  6994. "parameters": [
  6995. {
  6996. "type": "string",
  6997. "description": "owner of the repo",
  6998. "name": "owner",
  6999. "in": "path",
  7000. "required": true
  7001. },
  7002. {
  7003. "type": "string",
  7004. "description": "name of the repo",
  7005. "name": "repo",
  7006. "in": "path",
  7007. "required": true
  7008. },
  7009. {
  7010. "type": "integer",
  7011. "format": "int64",
  7012. "description": "index of the pull request",
  7013. "name": "index",
  7014. "in": "path",
  7015. "required": true
  7016. },
  7017. {
  7018. "type": "integer",
  7019. "format": "int64",
  7020. "description": "id of the review",
  7021. "name": "id",
  7022. "in": "path",
  7023. "required": true
  7024. }
  7025. ],
  7026. "responses": {
  7027. "200": {
  7028. "$ref": "#/responses/PullReview"
  7029. },
  7030. "404": {
  7031. "$ref": "#/responses/notFound"
  7032. }
  7033. }
  7034. },
  7035. "post": {
  7036. "produces": [
  7037. "application/json"
  7038. ],
  7039. "tags": [
  7040. "repository"
  7041. ],
  7042. "summary": "Submit a pending review to an pull request",
  7043. "operationId": "repoSubmitPullReview",
  7044. "parameters": [
  7045. {
  7046. "type": "string",
  7047. "description": "owner of the repo",
  7048. "name": "owner",
  7049. "in": "path",
  7050. "required": true
  7051. },
  7052. {
  7053. "type": "string",
  7054. "description": "name of the repo",
  7055. "name": "repo",
  7056. "in": "path",
  7057. "required": true
  7058. },
  7059. {
  7060. "type": "integer",
  7061. "format": "int64",
  7062. "description": "index of the pull request",
  7063. "name": "index",
  7064. "in": "path",
  7065. "required": true
  7066. },
  7067. {
  7068. "type": "integer",
  7069. "format": "int64",
  7070. "description": "id of the review",
  7071. "name": "id",
  7072. "in": "path",
  7073. "required": true
  7074. },
  7075. {
  7076. "name": "body",
  7077. "in": "body",
  7078. "required": true,
  7079. "schema": {
  7080. "$ref": "#/definitions/SubmitPullReviewOptions"
  7081. }
  7082. }
  7083. ],
  7084. "responses": {
  7085. "200": {
  7086. "$ref": "#/responses/PullReview"
  7087. },
  7088. "404": {
  7089. "$ref": "#/responses/notFound"
  7090. },
  7091. "422": {
  7092. "$ref": "#/responses/validationError"
  7093. }
  7094. }
  7095. },
  7096. "delete": {
  7097. "produces": [
  7098. "application/json"
  7099. ],
  7100. "tags": [
  7101. "repository"
  7102. ],
  7103. "summary": "Delete a specific review from a pull request",
  7104. "operationId": "repoDeletePullReview",
  7105. "parameters": [
  7106. {
  7107. "type": "string",
  7108. "description": "owner of the repo",
  7109. "name": "owner",
  7110. "in": "path",
  7111. "required": true
  7112. },
  7113. {
  7114. "type": "string",
  7115. "description": "name of the repo",
  7116. "name": "repo",
  7117. "in": "path",
  7118. "required": true
  7119. },
  7120. {
  7121. "type": "integer",
  7122. "format": "int64",
  7123. "description": "index of the pull request",
  7124. "name": "index",
  7125. "in": "path",
  7126. "required": true
  7127. },
  7128. {
  7129. "type": "integer",
  7130. "format": "int64",
  7131. "description": "id of the review",
  7132. "name": "id",
  7133. "in": "path",
  7134. "required": true
  7135. }
  7136. ],
  7137. "responses": {
  7138. "204": {
  7139. "$ref": "#/responses/empty"
  7140. },
  7141. "403": {
  7142. "$ref": "#/responses/forbidden"
  7143. },
  7144. "404": {
  7145. "$ref": "#/responses/notFound"
  7146. }
  7147. }
  7148. }
  7149. },
  7150. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/comments": {
  7151. "get": {
  7152. "produces": [
  7153. "application/json"
  7154. ],
  7155. "tags": [
  7156. "repository"
  7157. ],
  7158. "summary": "Get a specific review for a pull request",
  7159. "operationId": "repoGetPullReviewComments",
  7160. "parameters": [
  7161. {
  7162. "type": "string",
  7163. "description": "owner of the repo",
  7164. "name": "owner",
  7165. "in": "path",
  7166. "required": true
  7167. },
  7168. {
  7169. "type": "string",
  7170. "description": "name of the repo",
  7171. "name": "repo",
  7172. "in": "path",
  7173. "required": true
  7174. },
  7175. {
  7176. "type": "integer",
  7177. "format": "int64",
  7178. "description": "index of the pull request",
  7179. "name": "index",
  7180. "in": "path",
  7181. "required": true
  7182. },
  7183. {
  7184. "type": "integer",
  7185. "format": "int64",
  7186. "description": "id of the review",
  7187. "name": "id",
  7188. "in": "path",
  7189. "required": true
  7190. }
  7191. ],
  7192. "responses": {
  7193. "200": {
  7194. "$ref": "#/responses/PullReviewCommentList"
  7195. },
  7196. "404": {
  7197. "$ref": "#/responses/notFound"
  7198. }
  7199. }
  7200. }
  7201. },
  7202. "/repos/{owner}/{repo}/raw/{filepath}": {
  7203. "get": {
  7204. "produces": [
  7205. "application/json"
  7206. ],
  7207. "tags": [
  7208. "repository"
  7209. ],
  7210. "summary": "Get a file from a repository",
  7211. "operationId": "repoGetRawFile",
  7212. "parameters": [
  7213. {
  7214. "type": "string",
  7215. "description": "owner of the repo",
  7216. "name": "owner",
  7217. "in": "path",
  7218. "required": true
  7219. },
  7220. {
  7221. "type": "string",
  7222. "description": "name of the repo",
  7223. "name": "repo",
  7224. "in": "path",
  7225. "required": true
  7226. },
  7227. {
  7228. "type": "string",
  7229. "description": "filepath of the file to get",
  7230. "name": "filepath",
  7231. "in": "path",
  7232. "required": true
  7233. }
  7234. ],
  7235. "responses": {
  7236. "200": {
  7237. "description": "success"
  7238. },
  7239. "404": {
  7240. "$ref": "#/responses/notFound"
  7241. }
  7242. }
  7243. }
  7244. },
  7245. "/repos/{owner}/{repo}/releases": {
  7246. "get": {
  7247. "produces": [
  7248. "application/json"
  7249. ],
  7250. "tags": [
  7251. "repository"
  7252. ],
  7253. "summary": "List a repo's releases",
  7254. "operationId": "repoListReleases",
  7255. "parameters": [
  7256. {
  7257. "type": "string",
  7258. "description": "owner of the repo",
  7259. "name": "owner",
  7260. "in": "path",
  7261. "required": true
  7262. },
  7263. {
  7264. "type": "string",
  7265. "description": "name of the repo",
  7266. "name": "repo",
  7267. "in": "path",
  7268. "required": true
  7269. },
  7270. {
  7271. "type": "integer",
  7272. "description": "page size of results, deprecated - use limit",
  7273. "name": "per_page",
  7274. "in": "query"
  7275. },
  7276. {
  7277. "type": "integer",
  7278. "description": "page number of results to return (1-based)",
  7279. "name": "page",
  7280. "in": "query"
  7281. },
  7282. {
  7283. "type": "integer",
  7284. "description": "page size of results",
  7285. "name": "limit",
  7286. "in": "query"
  7287. }
  7288. ],
  7289. "responses": {
  7290. "200": {
  7291. "$ref": "#/responses/ReleaseList"
  7292. }
  7293. }
  7294. },
  7295. "post": {
  7296. "consumes": [
  7297. "application/json"
  7298. ],
  7299. "produces": [
  7300. "application/json"
  7301. ],
  7302. "tags": [
  7303. "repository"
  7304. ],
  7305. "summary": "Create a release",
  7306. "operationId": "repoCreateRelease",
  7307. "parameters": [
  7308. {
  7309. "type": "string",
  7310. "description": "owner of the repo",
  7311. "name": "owner",
  7312. "in": "path",
  7313. "required": true
  7314. },
  7315. {
  7316. "type": "string",
  7317. "description": "name of the repo",
  7318. "name": "repo",
  7319. "in": "path",
  7320. "required": true
  7321. },
  7322. {
  7323. "name": "body",
  7324. "in": "body",
  7325. "schema": {
  7326. "$ref": "#/definitions/CreateReleaseOption"
  7327. }
  7328. }
  7329. ],
  7330. "responses": {
  7331. "201": {
  7332. "$ref": "#/responses/Release"
  7333. },
  7334. "409": {
  7335. "$ref": "#/responses/error"
  7336. }
  7337. }
  7338. }
  7339. },
  7340. "/repos/{owner}/{repo}/releases/{id}": {
  7341. "get": {
  7342. "produces": [
  7343. "application/json"
  7344. ],
  7345. "tags": [
  7346. "repository"
  7347. ],
  7348. "summary": "Get a release",
  7349. "operationId": "repoGetRelease",
  7350. "parameters": [
  7351. {
  7352. "type": "string",
  7353. "description": "owner of the repo",
  7354. "name": "owner",
  7355. "in": "path",
  7356. "required": true
  7357. },
  7358. {
  7359. "type": "string",
  7360. "description": "name of the repo",
  7361. "name": "repo",
  7362. "in": "path",
  7363. "required": true
  7364. },
  7365. {
  7366. "type": "integer",
  7367. "format": "int64",
  7368. "description": "id of the release to get",
  7369. "name": "id",
  7370. "in": "path",
  7371. "required": true
  7372. }
  7373. ],
  7374. "responses": {
  7375. "200": {
  7376. "$ref": "#/responses/Release"
  7377. }
  7378. }
  7379. },
  7380. "delete": {
  7381. "tags": [
  7382. "repository"
  7383. ],
  7384. "summary": "Delete a release",
  7385. "operationId": "repoDeleteRelease",
  7386. "parameters": [
  7387. {
  7388. "type": "string",
  7389. "description": "owner of the repo",
  7390. "name": "owner",
  7391. "in": "path",
  7392. "required": true
  7393. },
  7394. {
  7395. "type": "string",
  7396. "description": "name of the repo",
  7397. "name": "repo",
  7398. "in": "path",
  7399. "required": true
  7400. },
  7401. {
  7402. "type": "integer",
  7403. "format": "int64",
  7404. "description": "id of the release to delete",
  7405. "name": "id",
  7406. "in": "path",
  7407. "required": true
  7408. }
  7409. ],
  7410. "responses": {
  7411. "204": {
  7412. "$ref": "#/responses/empty"
  7413. }
  7414. }
  7415. },
  7416. "patch": {
  7417. "consumes": [
  7418. "application/json"
  7419. ],
  7420. "produces": [
  7421. "application/json"
  7422. ],
  7423. "tags": [
  7424. "repository"
  7425. ],
  7426. "summary": "Update a release",
  7427. "operationId": "repoEditRelease",
  7428. "parameters": [
  7429. {
  7430. "type": "string",
  7431. "description": "owner of the repo",
  7432. "name": "owner",
  7433. "in": "path",
  7434. "required": true
  7435. },
  7436. {
  7437. "type": "string",
  7438. "description": "name of the repo",
  7439. "name": "repo",
  7440. "in": "path",
  7441. "required": true
  7442. },
  7443. {
  7444. "type": "integer",
  7445. "format": "int64",
  7446. "description": "id of the release to edit",
  7447. "name": "id",
  7448. "in": "path",
  7449. "required": true
  7450. },
  7451. {
  7452. "name": "body",
  7453. "in": "body",
  7454. "schema": {
  7455. "$ref": "#/definitions/EditReleaseOption"
  7456. }
  7457. }
  7458. ],
  7459. "responses": {
  7460. "200": {
  7461. "$ref": "#/responses/Release"
  7462. }
  7463. }
  7464. }
  7465. },
  7466. "/repos/{owner}/{repo}/releases/{id}/assets": {
  7467. "get": {
  7468. "produces": [
  7469. "application/json"
  7470. ],
  7471. "tags": [
  7472. "repository"
  7473. ],
  7474. "summary": "List release's attachments",
  7475. "operationId": "repoListReleaseAttachments",
  7476. "parameters": [
  7477. {
  7478. "type": "string",
  7479. "description": "owner of the repo",
  7480. "name": "owner",
  7481. "in": "path",
  7482. "required": true
  7483. },
  7484. {
  7485. "type": "string",
  7486. "description": "name of the repo",
  7487. "name": "repo",
  7488. "in": "path",
  7489. "required": true
  7490. },
  7491. {
  7492. "type": "integer",
  7493. "format": "int64",
  7494. "description": "id of the release",
  7495. "name": "id",
  7496. "in": "path",
  7497. "required": true
  7498. }
  7499. ],
  7500. "responses": {
  7501. "200": {
  7502. "$ref": "#/responses/AttachmentList"
  7503. }
  7504. }
  7505. },
  7506. "post": {
  7507. "consumes": [
  7508. "multipart/form-data"
  7509. ],
  7510. "produces": [
  7511. "application/json"
  7512. ],
  7513. "tags": [
  7514. "repository"
  7515. ],
  7516. "summary": "Create a release attachment",
  7517. "operationId": "repoCreateReleaseAttachment",
  7518. "parameters": [
  7519. {
  7520. "type": "string",
  7521. "description": "owner of the repo",
  7522. "name": "owner",
  7523. "in": "path",
  7524. "required": true
  7525. },
  7526. {
  7527. "type": "string",
  7528. "description": "name of the repo",
  7529. "name": "repo",
  7530. "in": "path",
  7531. "required": true
  7532. },
  7533. {
  7534. "type": "integer",
  7535. "format": "int64",
  7536. "description": "id of the release",
  7537. "name": "id",
  7538. "in": "path",
  7539. "required": true
  7540. },
  7541. {
  7542. "type": "string",
  7543. "description": "name of the attachment",
  7544. "name": "name",
  7545. "in": "query"
  7546. },
  7547. {
  7548. "type": "file",
  7549. "description": "attachment to upload",
  7550. "name": "attachment",
  7551. "in": "formData",
  7552. "required": true
  7553. }
  7554. ],
  7555. "responses": {
  7556. "201": {
  7557. "$ref": "#/responses/Attachment"
  7558. },
  7559. "400": {
  7560. "$ref": "#/responses/error"
  7561. }
  7562. }
  7563. }
  7564. },
  7565. "/repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}": {
  7566. "get": {
  7567. "produces": [
  7568. "application/json"
  7569. ],
  7570. "tags": [
  7571. "repository"
  7572. ],
  7573. "summary": "Get a release attachment",
  7574. "operationId": "repoGetReleaseAttachment",
  7575. "parameters": [
  7576. {
  7577. "type": "string",
  7578. "description": "owner of the repo",
  7579. "name": "owner",
  7580. "in": "path",
  7581. "required": true
  7582. },
  7583. {
  7584. "type": "string",
  7585. "description": "name of the repo",
  7586. "name": "repo",
  7587. "in": "path",
  7588. "required": true
  7589. },
  7590. {
  7591. "type": "integer",
  7592. "format": "int64",
  7593. "description": "id of the release",
  7594. "name": "id",
  7595. "in": "path",
  7596. "required": true
  7597. },
  7598. {
  7599. "type": "integer",
  7600. "format": "int64",
  7601. "description": "id of the attachment to get",
  7602. "name": "attachment_id",
  7603. "in": "path",
  7604. "required": true
  7605. }
  7606. ],
  7607. "responses": {
  7608. "200": {
  7609. "$ref": "#/responses/Attachment"
  7610. }
  7611. }
  7612. },
  7613. "delete": {
  7614. "produces": [
  7615. "application/json"
  7616. ],
  7617. "tags": [
  7618. "repository"
  7619. ],
  7620. "summary": "Delete a release attachment",
  7621. "operationId": "repoDeleteReleaseAttachment",
  7622. "parameters": [
  7623. {
  7624. "type": "string",
  7625. "description": "owner of the repo",
  7626. "name": "owner",
  7627. "in": "path",
  7628. "required": true
  7629. },
  7630. {
  7631. "type": "string",
  7632. "description": "name of the repo",
  7633. "name": "repo",
  7634. "in": "path",
  7635. "required": true
  7636. },
  7637. {
  7638. "type": "integer",
  7639. "format": "int64",
  7640. "description": "id of the release",
  7641. "name": "id",
  7642. "in": "path",
  7643. "required": true
  7644. },
  7645. {
  7646. "type": "integer",
  7647. "format": "int64",
  7648. "description": "id of the attachment to delete",
  7649. "name": "attachment_id",
  7650. "in": "path",
  7651. "required": true
  7652. }
  7653. ],
  7654. "responses": {
  7655. "204": {
  7656. "$ref": "#/responses/empty"
  7657. }
  7658. }
  7659. },
  7660. "patch": {
  7661. "consumes": [
  7662. "application/json"
  7663. ],
  7664. "produces": [
  7665. "application/json"
  7666. ],
  7667. "tags": [
  7668. "repository"
  7669. ],
  7670. "summary": "Edit a release attachment",
  7671. "operationId": "repoEditReleaseAttachment",
  7672. "parameters": [
  7673. {
  7674. "type": "string",
  7675. "description": "owner of the repo",
  7676. "name": "owner",
  7677. "in": "path",
  7678. "required": true
  7679. },
  7680. {
  7681. "type": "string",
  7682. "description": "name of the repo",
  7683. "name": "repo",
  7684. "in": "path",
  7685. "required": true
  7686. },
  7687. {
  7688. "type": "integer",
  7689. "format": "int64",
  7690. "description": "id of the release",
  7691. "name": "id",
  7692. "in": "path",
  7693. "required": true
  7694. },
  7695. {
  7696. "type": "integer",
  7697. "format": "int64",
  7698. "description": "id of the attachment to edit",
  7699. "name": "attachment_id",
  7700. "in": "path",
  7701. "required": true
  7702. },
  7703. {
  7704. "name": "body",
  7705. "in": "body",
  7706. "schema": {
  7707. "$ref": "#/definitions/EditAttachmentOptions"
  7708. }
  7709. }
  7710. ],
  7711. "responses": {
  7712. "201": {
  7713. "$ref": "#/responses/Attachment"
  7714. }
  7715. }
  7716. }
  7717. },
  7718. "/repos/{owner}/{repo}/signing-key.gpg": {
  7719. "get": {
  7720. "produces": [
  7721. "text/plain"
  7722. ],
  7723. "tags": [
  7724. "repository"
  7725. ],
  7726. "summary": "Get signing-key.gpg for given repository",
  7727. "operationId": "repoSigningKey",
  7728. "parameters": [
  7729. {
  7730. "type": "string",
  7731. "description": "owner of the repo",
  7732. "name": "owner",
  7733. "in": "path",
  7734. "required": true
  7735. },
  7736. {
  7737. "type": "string",
  7738. "description": "name of the repo",
  7739. "name": "repo",
  7740. "in": "path",
  7741. "required": true
  7742. }
  7743. ],
  7744. "responses": {
  7745. "200": {
  7746. "description": "GPG armored public key",
  7747. "schema": {
  7748. "type": "string"
  7749. }
  7750. }
  7751. }
  7752. }
  7753. },
  7754. "/repos/{owner}/{repo}/stargazers": {
  7755. "get": {
  7756. "produces": [
  7757. "application/json"
  7758. ],
  7759. "tags": [
  7760. "repository"
  7761. ],
  7762. "summary": "List a repo's stargazers",
  7763. "operationId": "repoListStargazers",
  7764. "parameters": [
  7765. {
  7766. "type": "string",
  7767. "description": "owner of the repo",
  7768. "name": "owner",
  7769. "in": "path",
  7770. "required": true
  7771. },
  7772. {
  7773. "type": "string",
  7774. "description": "name of the repo",
  7775. "name": "repo",
  7776. "in": "path",
  7777. "required": true
  7778. },
  7779. {
  7780. "type": "integer",
  7781. "description": "page number of results to return (1-based)",
  7782. "name": "page",
  7783. "in": "query"
  7784. },
  7785. {
  7786. "type": "integer",
  7787. "description": "page size of results",
  7788. "name": "limit",
  7789. "in": "query"
  7790. }
  7791. ],
  7792. "responses": {
  7793. "200": {
  7794. "$ref": "#/responses/UserList"
  7795. }
  7796. }
  7797. }
  7798. },
  7799. "/repos/{owner}/{repo}/statuses/{sha}": {
  7800. "get": {
  7801. "produces": [
  7802. "application/json"
  7803. ],
  7804. "tags": [
  7805. "repository"
  7806. ],
  7807. "summary": "Get a commit's statuses",
  7808. "operationId": "repoListStatuses",
  7809. "parameters": [
  7810. {
  7811. "type": "string",
  7812. "description": "owner of the repo",
  7813. "name": "owner",
  7814. "in": "path",
  7815. "required": true
  7816. },
  7817. {
  7818. "type": "string",
  7819. "description": "name of the repo",
  7820. "name": "repo",
  7821. "in": "path",
  7822. "required": true
  7823. },
  7824. {
  7825. "type": "string",
  7826. "description": "sha of the commit",
  7827. "name": "sha",
  7828. "in": "path",
  7829. "required": true
  7830. },
  7831. {
  7832. "enum": [
  7833. "oldest",
  7834. "recentupdate",
  7835. "leastupdate",
  7836. "leastindex",
  7837. "highestindex"
  7838. ],
  7839. "type": "string",
  7840. "description": "type of sort",
  7841. "name": "sort",
  7842. "in": "query"
  7843. },
  7844. {
  7845. "enum": [
  7846. "pending",
  7847. "success",
  7848. "error",
  7849. "failure",
  7850. "warning"
  7851. ],
  7852. "type": "string",
  7853. "description": "type of state",
  7854. "name": "state",
  7855. "in": "query"
  7856. },
  7857. {
  7858. "type": "integer",
  7859. "description": "page number of results to return (1-based)",
  7860. "name": "page",
  7861. "in": "query"
  7862. },
  7863. {
  7864. "type": "integer",
  7865. "description": "page size of results",
  7866. "name": "limit",
  7867. "in": "query"
  7868. }
  7869. ],
  7870. "responses": {
  7871. "200": {
  7872. "$ref": "#/responses/StatusList"
  7873. },
  7874. "400": {
  7875. "$ref": "#/responses/error"
  7876. }
  7877. }
  7878. },
  7879. "post": {
  7880. "produces": [
  7881. "application/json"
  7882. ],
  7883. "tags": [
  7884. "repository"
  7885. ],
  7886. "summary": "Create a commit status",
  7887. "operationId": "repoCreateStatus",
  7888. "parameters": [
  7889. {
  7890. "type": "string",
  7891. "description": "owner of the repo",
  7892. "name": "owner",
  7893. "in": "path",
  7894. "required": true
  7895. },
  7896. {
  7897. "type": "string",
  7898. "description": "name of the repo",
  7899. "name": "repo",
  7900. "in": "path",
  7901. "required": true
  7902. },
  7903. {
  7904. "type": "string",
  7905. "description": "sha of the commit",
  7906. "name": "sha",
  7907. "in": "path",
  7908. "required": true
  7909. },
  7910. {
  7911. "name": "body",
  7912. "in": "body",
  7913. "schema": {
  7914. "$ref": "#/definitions/CreateStatusOption"
  7915. }
  7916. }
  7917. ],
  7918. "responses": {
  7919. "201": {
  7920. "$ref": "#/responses/Status"
  7921. },
  7922. "400": {
  7923. "$ref": "#/responses/error"
  7924. }
  7925. }
  7926. }
  7927. },
  7928. "/repos/{owner}/{repo}/subscribers": {
  7929. "get": {
  7930. "produces": [
  7931. "application/json"
  7932. ],
  7933. "tags": [
  7934. "repository"
  7935. ],
  7936. "summary": "List a repo's watchers",
  7937. "operationId": "repoListSubscribers",
  7938. "parameters": [
  7939. {
  7940. "type": "string",
  7941. "description": "owner of the repo",
  7942. "name": "owner",
  7943. "in": "path",
  7944. "required": true
  7945. },
  7946. {
  7947. "type": "string",
  7948. "description": "name of the repo",
  7949. "name": "repo",
  7950. "in": "path",
  7951. "required": true
  7952. },
  7953. {
  7954. "type": "integer",
  7955. "description": "page number of results to return (1-based)",
  7956. "name": "page",
  7957. "in": "query"
  7958. },
  7959. {
  7960. "type": "integer",
  7961. "description": "page size of results",
  7962. "name": "limit",
  7963. "in": "query"
  7964. }
  7965. ],
  7966. "responses": {
  7967. "200": {
  7968. "$ref": "#/responses/UserList"
  7969. }
  7970. }
  7971. }
  7972. },
  7973. "/repos/{owner}/{repo}/subscription": {
  7974. "get": {
  7975. "tags": [
  7976. "repository"
  7977. ],
  7978. "summary": "Check if the current user is watching a repo",
  7979. "operationId": "userCurrentCheckSubscription",
  7980. "parameters": [
  7981. {
  7982. "type": "string",
  7983. "description": "owner of the repo",
  7984. "name": "owner",
  7985. "in": "path",
  7986. "required": true
  7987. },
  7988. {
  7989. "type": "string",
  7990. "description": "name of the repo",
  7991. "name": "repo",
  7992. "in": "path",
  7993. "required": true
  7994. }
  7995. ],
  7996. "responses": {
  7997. "200": {
  7998. "$ref": "#/responses/WatchInfo"
  7999. },
  8000. "404": {
  8001. "description": "User is not watching this repo or repo do not exist"
  8002. }
  8003. }
  8004. },
  8005. "put": {
  8006. "tags": [
  8007. "repository"
  8008. ],
  8009. "summary": "Watch a repo",
  8010. "operationId": "userCurrentPutSubscription",
  8011. "parameters": [
  8012. {
  8013. "type": "string",
  8014. "description": "owner of the repo",
  8015. "name": "owner",
  8016. "in": "path",
  8017. "required": true
  8018. },
  8019. {
  8020. "type": "string",
  8021. "description": "name of the repo",
  8022. "name": "repo",
  8023. "in": "path",
  8024. "required": true
  8025. }
  8026. ],
  8027. "responses": {
  8028. "200": {
  8029. "$ref": "#/responses/WatchInfo"
  8030. }
  8031. }
  8032. },
  8033. "delete": {
  8034. "tags": [
  8035. "repository"
  8036. ],
  8037. "summary": "Unwatch a repo",
  8038. "operationId": "userCurrentDeleteSubscription",
  8039. "parameters": [
  8040. {
  8041. "type": "string",
  8042. "description": "owner of the repo",
  8043. "name": "owner",
  8044. "in": "path",
  8045. "required": true
  8046. },
  8047. {
  8048. "type": "string",
  8049. "description": "name of the repo",
  8050. "name": "repo",
  8051. "in": "path",
  8052. "required": true
  8053. }
  8054. ],
  8055. "responses": {
  8056. "204": {
  8057. "$ref": "#/responses/empty"
  8058. }
  8059. }
  8060. }
  8061. },
  8062. "/repos/{owner}/{repo}/tags": {
  8063. "get": {
  8064. "produces": [
  8065. "application/json"
  8066. ],
  8067. "tags": [
  8068. "repository"
  8069. ],
  8070. "summary": "List a repository's tags",
  8071. "operationId": "repoListTags",
  8072. "parameters": [
  8073. {
  8074. "type": "string",
  8075. "description": "owner of the repo",
  8076. "name": "owner",
  8077. "in": "path",
  8078. "required": true
  8079. },
  8080. {
  8081. "type": "string",
  8082. "description": "name of the repo",
  8083. "name": "repo",
  8084. "in": "path",
  8085. "required": true
  8086. },
  8087. {
  8088. "type": "integer",
  8089. "description": "page number of results to return (1-based)",
  8090. "name": "page",
  8091. "in": "query"
  8092. },
  8093. {
  8094. "type": "integer",
  8095. "description": "page size of results, default maximum page size is 50",
  8096. "name": "limit",
  8097. "in": "query"
  8098. }
  8099. ],
  8100. "responses": {
  8101. "200": {
  8102. "$ref": "#/responses/TagList"
  8103. }
  8104. }
  8105. }
  8106. },
  8107. "/repos/{owner}/{repo}/times": {
  8108. "get": {
  8109. "produces": [
  8110. "application/json"
  8111. ],
  8112. "tags": [
  8113. "repository"
  8114. ],
  8115. "summary": "List a repo's tracked times",
  8116. "operationId": "repoTrackedTimes",
  8117. "parameters": [
  8118. {
  8119. "type": "string",
  8120. "description": "owner of the repo",
  8121. "name": "owner",
  8122. "in": "path",
  8123. "required": true
  8124. },
  8125. {
  8126. "type": "string",
  8127. "description": "name of the repo",
  8128. "name": "repo",
  8129. "in": "path",
  8130. "required": true
  8131. },
  8132. {
  8133. "type": "string",
  8134. "description": "optional filter by user",
  8135. "name": "user",
  8136. "in": "query"
  8137. },
  8138. {
  8139. "type": "string",
  8140. "format": "date-time",
  8141. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  8142. "name": "since",
  8143. "in": "query"
  8144. },
  8145. {
  8146. "type": "string",
  8147. "format": "date-time",
  8148. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  8149. "name": "before",
  8150. "in": "query"
  8151. },
  8152. {
  8153. "type": "integer",
  8154. "description": "page number of results to return (1-based)",
  8155. "name": "page",
  8156. "in": "query"
  8157. },
  8158. {
  8159. "type": "integer",
  8160. "description": "page size of results",
  8161. "name": "limit",
  8162. "in": "query"
  8163. }
  8164. ],
  8165. "responses": {
  8166. "200": {
  8167. "$ref": "#/responses/TrackedTimeList"
  8168. },
  8169. "400": {
  8170. "$ref": "#/responses/error"
  8171. },
  8172. "403": {
  8173. "$ref": "#/responses/forbidden"
  8174. }
  8175. }
  8176. }
  8177. },
  8178. "/repos/{owner}/{repo}/times/{user}": {
  8179. "get": {
  8180. "produces": [
  8181. "application/json"
  8182. ],
  8183. "tags": [
  8184. "repository"
  8185. ],
  8186. "summary": "List a user's tracked times in a repo",
  8187. "operationId": "userTrackedTimes",
  8188. "deprecated": true,
  8189. "parameters": [
  8190. {
  8191. "type": "string",
  8192. "description": "owner of the repo",
  8193. "name": "owner",
  8194. "in": "path",
  8195. "required": true
  8196. },
  8197. {
  8198. "type": "string",
  8199. "description": "name of the repo",
  8200. "name": "repo",
  8201. "in": "path",
  8202. "required": true
  8203. },
  8204. {
  8205. "type": "string",
  8206. "description": "username of user",
  8207. "name": "user",
  8208. "in": "path",
  8209. "required": true
  8210. }
  8211. ],
  8212. "responses": {
  8213. "200": {
  8214. "$ref": "#/responses/TrackedTimeList"
  8215. },
  8216. "400": {
  8217. "$ref": "#/responses/error"
  8218. },
  8219. "403": {
  8220. "$ref": "#/responses/forbidden"
  8221. }
  8222. }
  8223. }
  8224. },
  8225. "/repos/{owner}/{repo}/topics": {
  8226. "get": {
  8227. "produces": [
  8228. "application/json"
  8229. ],
  8230. "tags": [
  8231. "repository"
  8232. ],
  8233. "summary": "Get list of topics that a repository has",
  8234. "operationId": "repoListTopics",
  8235. "parameters": [
  8236. {
  8237. "type": "string",
  8238. "description": "owner of the repo",
  8239. "name": "owner",
  8240. "in": "path",
  8241. "required": true
  8242. },
  8243. {
  8244. "type": "string",
  8245. "description": "name of the repo",
  8246. "name": "repo",
  8247. "in": "path",
  8248. "required": true
  8249. },
  8250. {
  8251. "type": "integer",
  8252. "description": "page number of results to return (1-based)",
  8253. "name": "page",
  8254. "in": "query"
  8255. },
  8256. {
  8257. "type": "integer",
  8258. "description": "page size of results",
  8259. "name": "limit",
  8260. "in": "query"
  8261. }
  8262. ],
  8263. "responses": {
  8264. "200": {
  8265. "$ref": "#/responses/TopicNames"
  8266. }
  8267. }
  8268. },
  8269. "put": {
  8270. "produces": [
  8271. "application/json"
  8272. ],
  8273. "tags": [
  8274. "repository"
  8275. ],
  8276. "summary": "Replace list of topics for a repository",
  8277. "operationId": "repoUpdateTopics",
  8278. "parameters": [
  8279. {
  8280. "type": "string",
  8281. "description": "owner of the repo",
  8282. "name": "owner",
  8283. "in": "path",
  8284. "required": true
  8285. },
  8286. {
  8287. "type": "string",
  8288. "description": "name of the repo",
  8289. "name": "repo",
  8290. "in": "path",
  8291. "required": true
  8292. },
  8293. {
  8294. "name": "body",
  8295. "in": "body",
  8296. "schema": {
  8297. "$ref": "#/definitions/RepoTopicOptions"
  8298. }
  8299. }
  8300. ],
  8301. "responses": {
  8302. "204": {
  8303. "$ref": "#/responses/empty"
  8304. },
  8305. "422": {
  8306. "$ref": "#/responses/invalidTopicsError"
  8307. }
  8308. }
  8309. }
  8310. },
  8311. "/repos/{owner}/{repo}/topics/{topic}": {
  8312. "put": {
  8313. "produces": [
  8314. "application/json"
  8315. ],
  8316. "tags": [
  8317. "repository"
  8318. ],
  8319. "summary": "Add a topic to a repository",
  8320. "operationId": "repoAddTopíc",
  8321. "parameters": [
  8322. {
  8323. "type": "string",
  8324. "description": "owner of the repo",
  8325. "name": "owner",
  8326. "in": "path",
  8327. "required": true
  8328. },
  8329. {
  8330. "type": "string",
  8331. "description": "name of the repo",
  8332. "name": "repo",
  8333. "in": "path",
  8334. "required": true
  8335. },
  8336. {
  8337. "type": "string",
  8338. "description": "name of the topic to add",
  8339. "name": "topic",
  8340. "in": "path",
  8341. "required": true
  8342. }
  8343. ],
  8344. "responses": {
  8345. "204": {
  8346. "$ref": "#/responses/empty"
  8347. },
  8348. "422": {
  8349. "$ref": "#/responses/invalidTopicsError"
  8350. }
  8351. }
  8352. },
  8353. "delete": {
  8354. "produces": [
  8355. "application/json"
  8356. ],
  8357. "tags": [
  8358. "repository"
  8359. ],
  8360. "summary": "Delete a topic from a repository",
  8361. "operationId": "repoDeleteTopic",
  8362. "parameters": [
  8363. {
  8364. "type": "string",
  8365. "description": "owner of the repo",
  8366. "name": "owner",
  8367. "in": "path",
  8368. "required": true
  8369. },
  8370. {
  8371. "type": "string",
  8372. "description": "name of the repo",
  8373. "name": "repo",
  8374. "in": "path",
  8375. "required": true
  8376. },
  8377. {
  8378. "type": "string",
  8379. "description": "name of the topic to delete",
  8380. "name": "topic",
  8381. "in": "path",
  8382. "required": true
  8383. }
  8384. ],
  8385. "responses": {
  8386. "204": {
  8387. "$ref": "#/responses/empty"
  8388. },
  8389. "422": {
  8390. "$ref": "#/responses/invalidTopicsError"
  8391. }
  8392. }
  8393. }
  8394. },
  8395. "/repos/{owner}/{repo}/transfer": {
  8396. "post": {
  8397. "produces": [
  8398. "application/json"
  8399. ],
  8400. "tags": [
  8401. "repository"
  8402. ],
  8403. "summary": "Transfer a repo ownership",
  8404. "operationId": "repoTransfer",
  8405. "parameters": [
  8406. {
  8407. "type": "string",
  8408. "description": "owner of the repo to transfer",
  8409. "name": "owner",
  8410. "in": "path",
  8411. "required": true
  8412. },
  8413. {
  8414. "type": "string",
  8415. "description": "name of the repo to transfer",
  8416. "name": "repo",
  8417. "in": "path",
  8418. "required": true
  8419. },
  8420. {
  8421. "description": "Transfer Options",
  8422. "name": "body",
  8423. "in": "body",
  8424. "required": true,
  8425. "schema": {
  8426. "$ref": "#/definitions/TransferRepoOption"
  8427. }
  8428. }
  8429. ],
  8430. "responses": {
  8431. "202": {
  8432. "$ref": "#/responses/Repository"
  8433. },
  8434. "403": {
  8435. "$ref": "#/responses/forbidden"
  8436. },
  8437. "404": {
  8438. "$ref": "#/responses/notFound"
  8439. },
  8440. "422": {
  8441. "$ref": "#/responses/validationError"
  8442. }
  8443. }
  8444. }
  8445. },
  8446. "/repositories/{id}": {
  8447. "get": {
  8448. "produces": [
  8449. "application/json"
  8450. ],
  8451. "tags": [
  8452. "repository"
  8453. ],
  8454. "summary": "Get a repository by id",
  8455. "operationId": "repoGetByID",
  8456. "parameters": [
  8457. {
  8458. "type": "integer",
  8459. "format": "int64",
  8460. "description": "id of the repo to get",
  8461. "name": "id",
  8462. "in": "path",
  8463. "required": true
  8464. }
  8465. ],
  8466. "responses": {
  8467. "200": {
  8468. "$ref": "#/responses/Repository"
  8469. }
  8470. }
  8471. }
  8472. },
  8473. "/settings/repository": {
  8474. "get": {
  8475. "produces": [
  8476. "application/json"
  8477. ],
  8478. "tags": [
  8479. "settings"
  8480. ],
  8481. "summary": "Get instance's global settings for repositories",
  8482. "operationId": "getGeneralRepositorySettings",
  8483. "responses": {
  8484. "200": {
  8485. "$ref": "#/responses/GeneralRepoSettings"
  8486. }
  8487. }
  8488. }
  8489. },
  8490. "/settings/ui": {
  8491. "get": {
  8492. "produces": [
  8493. "application/json"
  8494. ],
  8495. "tags": [
  8496. "settings"
  8497. ],
  8498. "summary": "Get instance's global settings for ui",
  8499. "operationId": "getGeneralUISettings",
  8500. "responses": {
  8501. "200": {
  8502. "$ref": "#/responses/GeneralUISettings"
  8503. }
  8504. }
  8505. }
  8506. },
  8507. "/signing-key.gpg": {
  8508. "get": {
  8509. "produces": [
  8510. "text/plain"
  8511. ],
  8512. "tags": [
  8513. "miscellaneous"
  8514. ],
  8515. "summary": "Get default signing-key.gpg",
  8516. "operationId": "getSigningKey",
  8517. "responses": {
  8518. "200": {
  8519. "description": "GPG armored public key",
  8520. "schema": {
  8521. "type": "string"
  8522. }
  8523. }
  8524. }
  8525. }
  8526. },
  8527. "/teams/{id}": {
  8528. "get": {
  8529. "produces": [
  8530. "application/json"
  8531. ],
  8532. "tags": [
  8533. "organization"
  8534. ],
  8535. "summary": "Get a team",
  8536. "operationId": "orgGetTeam",
  8537. "parameters": [
  8538. {
  8539. "type": "integer",
  8540. "format": "int64",
  8541. "description": "id of the team to get",
  8542. "name": "id",
  8543. "in": "path",
  8544. "required": true
  8545. }
  8546. ],
  8547. "responses": {
  8548. "200": {
  8549. "$ref": "#/responses/Team"
  8550. }
  8551. }
  8552. },
  8553. "delete": {
  8554. "tags": [
  8555. "organization"
  8556. ],
  8557. "summary": "Delete a team",
  8558. "operationId": "orgDeleteTeam",
  8559. "parameters": [
  8560. {
  8561. "type": "integer",
  8562. "format": "int64",
  8563. "description": "id of the team to delete",
  8564. "name": "id",
  8565. "in": "path",
  8566. "required": true
  8567. }
  8568. ],
  8569. "responses": {
  8570. "204": {
  8571. "description": "team deleted"
  8572. }
  8573. }
  8574. },
  8575. "patch": {
  8576. "consumes": [
  8577. "application/json"
  8578. ],
  8579. "produces": [
  8580. "application/json"
  8581. ],
  8582. "tags": [
  8583. "organization"
  8584. ],
  8585. "summary": "Edit a team",
  8586. "operationId": "orgEditTeam",
  8587. "parameters": [
  8588. {
  8589. "type": "integer",
  8590. "description": "id of the team to edit",
  8591. "name": "id",
  8592. "in": "path",
  8593. "required": true
  8594. },
  8595. {
  8596. "name": "body",
  8597. "in": "body",
  8598. "schema": {
  8599. "$ref": "#/definitions/EditTeamOption"
  8600. }
  8601. }
  8602. ],
  8603. "responses": {
  8604. "200": {
  8605. "$ref": "#/responses/Team"
  8606. }
  8607. }
  8608. }
  8609. },
  8610. "/teams/{id}/members": {
  8611. "get": {
  8612. "produces": [
  8613. "application/json"
  8614. ],
  8615. "tags": [
  8616. "organization"
  8617. ],
  8618. "summary": "List a team's members",
  8619. "operationId": "orgListTeamMembers",
  8620. "parameters": [
  8621. {
  8622. "type": "integer",
  8623. "format": "int64",
  8624. "description": "id of the team",
  8625. "name": "id",
  8626. "in": "path",
  8627. "required": true
  8628. },
  8629. {
  8630. "type": "integer",
  8631. "description": "page number of results to return (1-based)",
  8632. "name": "page",
  8633. "in": "query"
  8634. },
  8635. {
  8636. "type": "integer",
  8637. "description": "page size of results",
  8638. "name": "limit",
  8639. "in": "query"
  8640. }
  8641. ],
  8642. "responses": {
  8643. "200": {
  8644. "$ref": "#/responses/UserList"
  8645. }
  8646. }
  8647. }
  8648. },
  8649. "/teams/{id}/members/{username}": {
  8650. "get": {
  8651. "produces": [
  8652. "application/json"
  8653. ],
  8654. "tags": [
  8655. "organization"
  8656. ],
  8657. "summary": "List a particular member of team",
  8658. "operationId": "orgListTeamMember",
  8659. "parameters": [
  8660. {
  8661. "type": "integer",
  8662. "format": "int64",
  8663. "description": "id of the team",
  8664. "name": "id",
  8665. "in": "path",
  8666. "required": true
  8667. },
  8668. {
  8669. "type": "string",
  8670. "description": "username of the member to list",
  8671. "name": "username",
  8672. "in": "path",
  8673. "required": true
  8674. }
  8675. ],
  8676. "responses": {
  8677. "200": {
  8678. "$ref": "#/responses/User"
  8679. },
  8680. "404": {
  8681. "$ref": "#/responses/notFound"
  8682. }
  8683. }
  8684. },
  8685. "put": {
  8686. "produces": [
  8687. "application/json"
  8688. ],
  8689. "tags": [
  8690. "organization"
  8691. ],
  8692. "summary": "Add a team member",
  8693. "operationId": "orgAddTeamMember",
  8694. "parameters": [
  8695. {
  8696. "type": "integer",
  8697. "format": "int64",
  8698. "description": "id of the team",
  8699. "name": "id",
  8700. "in": "path",
  8701. "required": true
  8702. },
  8703. {
  8704. "type": "string",
  8705. "description": "username of the user to add",
  8706. "name": "username",
  8707. "in": "path",
  8708. "required": true
  8709. }
  8710. ],
  8711. "responses": {
  8712. "204": {
  8713. "$ref": "#/responses/empty"
  8714. },
  8715. "404": {
  8716. "$ref": "#/responses/notFound"
  8717. }
  8718. }
  8719. },
  8720. "delete": {
  8721. "produces": [
  8722. "application/json"
  8723. ],
  8724. "tags": [
  8725. "organization"
  8726. ],
  8727. "summary": "Remove a team member",
  8728. "operationId": "orgRemoveTeamMember",
  8729. "parameters": [
  8730. {
  8731. "type": "integer",
  8732. "format": "int64",
  8733. "description": "id of the team",
  8734. "name": "id",
  8735. "in": "path",
  8736. "required": true
  8737. },
  8738. {
  8739. "type": "string",
  8740. "description": "username of the user to remove",
  8741. "name": "username",
  8742. "in": "path",
  8743. "required": true
  8744. }
  8745. ],
  8746. "responses": {
  8747. "204": {
  8748. "$ref": "#/responses/empty"
  8749. },
  8750. "404": {
  8751. "$ref": "#/responses/notFound"
  8752. }
  8753. }
  8754. }
  8755. },
  8756. "/teams/{id}/repos": {
  8757. "get": {
  8758. "produces": [
  8759. "application/json"
  8760. ],
  8761. "tags": [
  8762. "organization"
  8763. ],
  8764. "summary": "List a team's repos",
  8765. "operationId": "orgListTeamRepos",
  8766. "parameters": [
  8767. {
  8768. "type": "integer",
  8769. "format": "int64",
  8770. "description": "id of the team",
  8771. "name": "id",
  8772. "in": "path",
  8773. "required": true
  8774. },
  8775. {
  8776. "type": "integer",
  8777. "description": "page number of results to return (1-based)",
  8778. "name": "page",
  8779. "in": "query"
  8780. },
  8781. {
  8782. "type": "integer",
  8783. "description": "page size of results",
  8784. "name": "limit",
  8785. "in": "query"
  8786. }
  8787. ],
  8788. "responses": {
  8789. "200": {
  8790. "$ref": "#/responses/RepositoryList"
  8791. }
  8792. }
  8793. }
  8794. },
  8795. "/teams/{id}/repos/{org}/{repo}": {
  8796. "put": {
  8797. "produces": [
  8798. "application/json"
  8799. ],
  8800. "tags": [
  8801. "organization"
  8802. ],
  8803. "summary": "Add a repository to a team",
  8804. "operationId": "orgAddTeamRepository",
  8805. "parameters": [
  8806. {
  8807. "type": "integer",
  8808. "format": "int64",
  8809. "description": "id of the team",
  8810. "name": "id",
  8811. "in": "path",
  8812. "required": true
  8813. },
  8814. {
  8815. "type": "string",
  8816. "description": "organization that owns the repo to add",
  8817. "name": "org",
  8818. "in": "path",
  8819. "required": true
  8820. },
  8821. {
  8822. "type": "string",
  8823. "description": "name of the repo to add",
  8824. "name": "repo",
  8825. "in": "path",
  8826. "required": true
  8827. }
  8828. ],
  8829. "responses": {
  8830. "204": {
  8831. "$ref": "#/responses/empty"
  8832. },
  8833. "403": {
  8834. "$ref": "#/responses/forbidden"
  8835. }
  8836. }
  8837. },
  8838. "delete": {
  8839. "description": "This does not delete the repository, it only removes the repository from the team.",
  8840. "produces": [
  8841. "application/json"
  8842. ],
  8843. "tags": [
  8844. "organization"
  8845. ],
  8846. "summary": "Remove a repository from a team",
  8847. "operationId": "orgRemoveTeamRepository",
  8848. "parameters": [
  8849. {
  8850. "type": "integer",
  8851. "format": "int64",
  8852. "description": "id of the team",
  8853. "name": "id",
  8854. "in": "path",
  8855. "required": true
  8856. },
  8857. {
  8858. "type": "string",
  8859. "description": "organization that owns the repo to remove",
  8860. "name": "org",
  8861. "in": "path",
  8862. "required": true
  8863. },
  8864. {
  8865. "type": "string",
  8866. "description": "name of the repo to remove",
  8867. "name": "repo",
  8868. "in": "path",
  8869. "required": true
  8870. }
  8871. ],
  8872. "responses": {
  8873. "204": {
  8874. "$ref": "#/responses/empty"
  8875. },
  8876. "403": {
  8877. "$ref": "#/responses/forbidden"
  8878. }
  8879. }
  8880. }
  8881. },
  8882. "/topics/search": {
  8883. "get": {
  8884. "produces": [
  8885. "application/json"
  8886. ],
  8887. "tags": [
  8888. "repository"
  8889. ],
  8890. "summary": "search topics via keyword",
  8891. "operationId": "topicSearch",
  8892. "parameters": [
  8893. {
  8894. "type": "string",
  8895. "description": "keywords to search",
  8896. "name": "q",
  8897. "in": "query",
  8898. "required": true
  8899. },
  8900. {
  8901. "type": "integer",
  8902. "description": "page number of results to return (1-based)",
  8903. "name": "page",
  8904. "in": "query"
  8905. },
  8906. {
  8907. "type": "integer",
  8908. "description": "page size of results",
  8909. "name": "limit",
  8910. "in": "query"
  8911. }
  8912. ],
  8913. "responses": {
  8914. "200": {
  8915. "$ref": "#/responses/TopicListResponse"
  8916. },
  8917. "403": {
  8918. "$ref": "#/responses/forbidden"
  8919. }
  8920. }
  8921. }
  8922. },
  8923. "/user": {
  8924. "get": {
  8925. "produces": [
  8926. "application/json"
  8927. ],
  8928. "tags": [
  8929. "user"
  8930. ],
  8931. "summary": "Get the authenticated user",
  8932. "operationId": "userGetCurrent",
  8933. "responses": {
  8934. "200": {
  8935. "$ref": "#/responses/User"
  8936. }
  8937. }
  8938. }
  8939. },
  8940. "/user/applications/oauth2": {
  8941. "get": {
  8942. "produces": [
  8943. "application/json"
  8944. ],
  8945. "tags": [
  8946. "user"
  8947. ],
  8948. "summary": "List the authenticated user's oauth2 applications",
  8949. "operationId": "userGetOauth2Application",
  8950. "parameters": [
  8951. {
  8952. "type": "integer",
  8953. "description": "page number of results to return (1-based)",
  8954. "name": "page",
  8955. "in": "query"
  8956. },
  8957. {
  8958. "type": "integer",
  8959. "description": "page size of results",
  8960. "name": "limit",
  8961. "in": "query"
  8962. }
  8963. ],
  8964. "responses": {
  8965. "200": {
  8966. "$ref": "#/responses/OAuth2ApplicationList"
  8967. }
  8968. }
  8969. },
  8970. "post": {
  8971. "produces": [
  8972. "application/json"
  8973. ],
  8974. "tags": [
  8975. "user"
  8976. ],
  8977. "summary": "creates a new OAuth2 application",
  8978. "operationId": "userCreateOAuth2Application",
  8979. "parameters": [
  8980. {
  8981. "name": "body",
  8982. "in": "body",
  8983. "required": true,
  8984. "schema": {
  8985. "$ref": "#/definitions/CreateOAuth2ApplicationOptions"
  8986. }
  8987. }
  8988. ],
  8989. "responses": {
  8990. "201": {
  8991. "$ref": "#/responses/OAuth2Application"
  8992. }
  8993. }
  8994. }
  8995. },
  8996. "/user/applications/oauth2/{id}": {
  8997. "get": {
  8998. "produces": [
  8999. "application/json"
  9000. ],
  9001. "tags": [
  9002. "user"
  9003. ],
  9004. "summary": "get an OAuth2 Application",
  9005. "operationId": "userGetOAuth2Application",
  9006. "parameters": [
  9007. {
  9008. "type": "integer",
  9009. "format": "int64",
  9010. "description": "Application ID to be found",
  9011. "name": "id",
  9012. "in": "path",
  9013. "required": true
  9014. }
  9015. ],
  9016. "responses": {
  9017. "200": {
  9018. "$ref": "#/responses/OAuth2Application"
  9019. }
  9020. }
  9021. },
  9022. "delete": {
  9023. "produces": [
  9024. "application/json"
  9025. ],
  9026. "tags": [
  9027. "user"
  9028. ],
  9029. "summary": "delete an OAuth2 Application",
  9030. "operationId": "userDeleteOAuth2Application",
  9031. "parameters": [
  9032. {
  9033. "type": "integer",
  9034. "format": "int64",
  9035. "description": "token to be deleted",
  9036. "name": "id",
  9037. "in": "path",
  9038. "required": true
  9039. }
  9040. ],
  9041. "responses": {
  9042. "204": {
  9043. "$ref": "#/responses/empty"
  9044. }
  9045. }
  9046. },
  9047. "patch": {
  9048. "produces": [
  9049. "application/json"
  9050. ],
  9051. "tags": [
  9052. "user"
  9053. ],
  9054. "summary": "update an OAuth2 Application, this includes regenerating the client secret",
  9055. "operationId": "userUpdateOAuth2Application",
  9056. "parameters": [
  9057. {
  9058. "type": "integer",
  9059. "format": "int64",
  9060. "description": "application to be updated",
  9061. "name": "id",
  9062. "in": "path",
  9063. "required": true
  9064. },
  9065. {
  9066. "name": "body",
  9067. "in": "body",
  9068. "required": true,
  9069. "schema": {
  9070. "$ref": "#/definitions/CreateOAuth2ApplicationOptions"
  9071. }
  9072. }
  9073. ],
  9074. "responses": {
  9075. "200": {
  9076. "$ref": "#/responses/OAuth2Application"
  9077. }
  9078. }
  9079. }
  9080. },
  9081. "/user/emails": {
  9082. "get": {
  9083. "produces": [
  9084. "application/json"
  9085. ],
  9086. "tags": [
  9087. "user"
  9088. ],
  9089. "summary": "List the authenticated user's email addresses",
  9090. "operationId": "userListEmails",
  9091. "responses": {
  9092. "200": {
  9093. "$ref": "#/responses/EmailList"
  9094. }
  9095. }
  9096. },
  9097. "post": {
  9098. "produces": [
  9099. "application/json"
  9100. ],
  9101. "tags": [
  9102. "user"
  9103. ],
  9104. "summary": "Add email addresses",
  9105. "operationId": "userAddEmail",
  9106. "parameters": [
  9107. {
  9108. "name": "body",
  9109. "in": "body",
  9110. "schema": {
  9111. "$ref": "#/definitions/CreateEmailOption"
  9112. }
  9113. }
  9114. ],
  9115. "responses": {
  9116. "201": {
  9117. "$ref": "#/responses/EmailList"
  9118. },
  9119. "422": {
  9120. "$ref": "#/responses/validationError"
  9121. }
  9122. }
  9123. },
  9124. "delete": {
  9125. "produces": [
  9126. "application/json"
  9127. ],
  9128. "tags": [
  9129. "user"
  9130. ],
  9131. "summary": "Delete email addresses",
  9132. "operationId": "userDeleteEmail",
  9133. "parameters": [
  9134. {
  9135. "name": "body",
  9136. "in": "body",
  9137. "schema": {
  9138. "$ref": "#/definitions/DeleteEmailOption"
  9139. }
  9140. }
  9141. ],
  9142. "responses": {
  9143. "204": {
  9144. "$ref": "#/responses/empty"
  9145. }
  9146. }
  9147. }
  9148. },
  9149. "/user/followers": {
  9150. "get": {
  9151. "produces": [
  9152. "application/json"
  9153. ],
  9154. "tags": [
  9155. "user"
  9156. ],
  9157. "summary": "List the authenticated user's followers",
  9158. "operationId": "userCurrentListFollowers",
  9159. "parameters": [
  9160. {
  9161. "type": "integer",
  9162. "description": "page number of results to return (1-based)",
  9163. "name": "page",
  9164. "in": "query"
  9165. },
  9166. {
  9167. "type": "integer",
  9168. "description": "page size of results",
  9169. "name": "limit",
  9170. "in": "query"
  9171. }
  9172. ],
  9173. "responses": {
  9174. "200": {
  9175. "$ref": "#/responses/UserList"
  9176. }
  9177. }
  9178. }
  9179. },
  9180. "/user/following": {
  9181. "get": {
  9182. "produces": [
  9183. "application/json"
  9184. ],
  9185. "tags": [
  9186. "user"
  9187. ],
  9188. "summary": "List the users that the authenticated user is following",
  9189. "operationId": "userCurrentListFollowing",
  9190. "parameters": [
  9191. {
  9192. "type": "integer",
  9193. "description": "page number of results to return (1-based)",
  9194. "name": "page",
  9195. "in": "query"
  9196. },
  9197. {
  9198. "type": "integer",
  9199. "description": "page size of results",
  9200. "name": "limit",
  9201. "in": "query"
  9202. }
  9203. ],
  9204. "responses": {
  9205. "200": {
  9206. "$ref": "#/responses/UserList"
  9207. }
  9208. }
  9209. }
  9210. },
  9211. "/user/following/{username}": {
  9212. "get": {
  9213. "tags": [
  9214. "user"
  9215. ],
  9216. "summary": "Check whether a user is followed by the authenticated user",
  9217. "operationId": "userCurrentCheckFollowing",
  9218. "parameters": [
  9219. {
  9220. "type": "string",
  9221. "description": "username of followed user",
  9222. "name": "username",
  9223. "in": "path",
  9224. "required": true
  9225. }
  9226. ],
  9227. "responses": {
  9228. "204": {
  9229. "$ref": "#/responses/empty"
  9230. },
  9231. "404": {
  9232. "$ref": "#/responses/notFound"
  9233. }
  9234. }
  9235. },
  9236. "put": {
  9237. "tags": [
  9238. "user"
  9239. ],
  9240. "summary": "Follow a user",
  9241. "operationId": "userCurrentPutFollow",
  9242. "parameters": [
  9243. {
  9244. "type": "string",
  9245. "description": "username of user to follow",
  9246. "name": "username",
  9247. "in": "path",
  9248. "required": true
  9249. }
  9250. ],
  9251. "responses": {
  9252. "204": {
  9253. "$ref": "#/responses/empty"
  9254. }
  9255. }
  9256. },
  9257. "delete": {
  9258. "tags": [
  9259. "user"
  9260. ],
  9261. "summary": "Unfollow a user",
  9262. "operationId": "userCurrentDeleteFollow",
  9263. "parameters": [
  9264. {
  9265. "type": "string",
  9266. "description": "username of user to unfollow",
  9267. "name": "username",
  9268. "in": "path",
  9269. "required": true
  9270. }
  9271. ],
  9272. "responses": {
  9273. "204": {
  9274. "$ref": "#/responses/empty"
  9275. }
  9276. }
  9277. }
  9278. },
  9279. "/user/gpg_keys": {
  9280. "get": {
  9281. "produces": [
  9282. "application/json"
  9283. ],
  9284. "tags": [
  9285. "user"
  9286. ],
  9287. "summary": "List the authenticated user's GPG keys",
  9288. "operationId": "userCurrentListGPGKeys",
  9289. "parameters": [
  9290. {
  9291. "type": "integer",
  9292. "description": "page number of results to return (1-based)",
  9293. "name": "page",
  9294. "in": "query"
  9295. },
  9296. {
  9297. "type": "integer",
  9298. "description": "page size of results",
  9299. "name": "limit",
  9300. "in": "query"
  9301. }
  9302. ],
  9303. "responses": {
  9304. "200": {
  9305. "$ref": "#/responses/GPGKeyList"
  9306. }
  9307. }
  9308. },
  9309. "post": {
  9310. "consumes": [
  9311. "application/json"
  9312. ],
  9313. "produces": [
  9314. "application/json"
  9315. ],
  9316. "tags": [
  9317. "user"
  9318. ],
  9319. "summary": "Create a GPG key",
  9320. "operationId": "userCurrentPostGPGKey",
  9321. "parameters": [
  9322. {
  9323. "name": "Form",
  9324. "in": "body",
  9325. "schema": {
  9326. "$ref": "#/definitions/CreateGPGKeyOption"
  9327. }
  9328. }
  9329. ],
  9330. "responses": {
  9331. "201": {
  9332. "$ref": "#/responses/GPGKey"
  9333. },
  9334. "404": {
  9335. "$ref": "#/responses/notFound"
  9336. },
  9337. "422": {
  9338. "$ref": "#/responses/validationError"
  9339. }
  9340. }
  9341. }
  9342. },
  9343. "/user/gpg_keys/{id}": {
  9344. "get": {
  9345. "produces": [
  9346. "application/json"
  9347. ],
  9348. "tags": [
  9349. "user"
  9350. ],
  9351. "summary": "Get a GPG key",
  9352. "operationId": "userCurrentGetGPGKey",
  9353. "parameters": [
  9354. {
  9355. "type": "integer",
  9356. "format": "int64",
  9357. "description": "id of key to get",
  9358. "name": "id",
  9359. "in": "path",
  9360. "required": true
  9361. }
  9362. ],
  9363. "responses": {
  9364. "200": {
  9365. "$ref": "#/responses/GPGKey"
  9366. },
  9367. "404": {
  9368. "$ref": "#/responses/notFound"
  9369. }
  9370. }
  9371. },
  9372. "delete": {
  9373. "produces": [
  9374. "application/json"
  9375. ],
  9376. "tags": [
  9377. "user"
  9378. ],
  9379. "summary": "Remove a GPG key",
  9380. "operationId": "userCurrentDeleteGPGKey",
  9381. "parameters": [
  9382. {
  9383. "type": "integer",
  9384. "format": "int64",
  9385. "description": "id of key to delete",
  9386. "name": "id",
  9387. "in": "path",
  9388. "required": true
  9389. }
  9390. ],
  9391. "responses": {
  9392. "204": {
  9393. "$ref": "#/responses/empty"
  9394. },
  9395. "403": {
  9396. "$ref": "#/responses/forbidden"
  9397. },
  9398. "404": {
  9399. "$ref": "#/responses/notFound"
  9400. }
  9401. }
  9402. }
  9403. },
  9404. "/user/keys": {
  9405. "get": {
  9406. "produces": [
  9407. "application/json"
  9408. ],
  9409. "tags": [
  9410. "user"
  9411. ],
  9412. "summary": "List the authenticated user's public keys",
  9413. "operationId": "userCurrentListKeys",
  9414. "parameters": [
  9415. {
  9416. "type": "string",
  9417. "description": "fingerprint of the key",
  9418. "name": "fingerprint",
  9419. "in": "query"
  9420. },
  9421. {
  9422. "type": "integer",
  9423. "description": "page number of results to return (1-based)",
  9424. "name": "page",
  9425. "in": "query"
  9426. },
  9427. {
  9428. "type": "integer",
  9429. "description": "page size of results",
  9430. "name": "limit",
  9431. "in": "query"
  9432. }
  9433. ],
  9434. "responses": {
  9435. "200": {
  9436. "$ref": "#/responses/PublicKeyList"
  9437. }
  9438. }
  9439. },
  9440. "post": {
  9441. "consumes": [
  9442. "application/json"
  9443. ],
  9444. "produces": [
  9445. "application/json"
  9446. ],
  9447. "tags": [
  9448. "user"
  9449. ],
  9450. "summary": "Create a public key",
  9451. "operationId": "userCurrentPostKey",
  9452. "parameters": [
  9453. {
  9454. "name": "body",
  9455. "in": "body",
  9456. "schema": {
  9457. "$ref": "#/definitions/CreateKeyOption"
  9458. }
  9459. }
  9460. ],
  9461. "responses": {
  9462. "201": {
  9463. "$ref": "#/responses/PublicKey"
  9464. },
  9465. "422": {
  9466. "$ref": "#/responses/validationError"
  9467. }
  9468. }
  9469. }
  9470. },
  9471. "/user/keys/{id}": {
  9472. "get": {
  9473. "produces": [
  9474. "application/json"
  9475. ],
  9476. "tags": [
  9477. "user"
  9478. ],
  9479. "summary": "Get a public key",
  9480. "operationId": "userCurrentGetKey",
  9481. "parameters": [
  9482. {
  9483. "type": "integer",
  9484. "format": "int64",
  9485. "description": "id of key to get",
  9486. "name": "id",
  9487. "in": "path",
  9488. "required": true
  9489. }
  9490. ],
  9491. "responses": {
  9492. "200": {
  9493. "$ref": "#/responses/PublicKey"
  9494. },
  9495. "404": {
  9496. "$ref": "#/responses/notFound"
  9497. }
  9498. }
  9499. },
  9500. "delete": {
  9501. "produces": [
  9502. "application/json"
  9503. ],
  9504. "tags": [
  9505. "user"
  9506. ],
  9507. "summary": "Delete a public key",
  9508. "operationId": "userCurrentDeleteKey",
  9509. "parameters": [
  9510. {
  9511. "type": "integer",
  9512. "format": "int64",
  9513. "description": "id of key to delete",
  9514. "name": "id",
  9515. "in": "path",
  9516. "required": true
  9517. }
  9518. ],
  9519. "responses": {
  9520. "204": {
  9521. "$ref": "#/responses/empty"
  9522. },
  9523. "403": {
  9524. "$ref": "#/responses/forbidden"
  9525. },
  9526. "404": {
  9527. "$ref": "#/responses/notFound"
  9528. }
  9529. }
  9530. }
  9531. },
  9532. "/user/orgs": {
  9533. "get": {
  9534. "produces": [
  9535. "application/json"
  9536. ],
  9537. "tags": [
  9538. "organization"
  9539. ],
  9540. "summary": "List the current user's organizations",
  9541. "operationId": "orgListCurrentUserOrgs",
  9542. "parameters": [
  9543. {
  9544. "type": "integer",
  9545. "description": "page number of results to return (1-based)",
  9546. "name": "page",
  9547. "in": "query"
  9548. },
  9549. {
  9550. "type": "integer",
  9551. "description": "page size of results",
  9552. "name": "limit",
  9553. "in": "query"
  9554. }
  9555. ],
  9556. "responses": {
  9557. "200": {
  9558. "$ref": "#/responses/OrganizationList"
  9559. }
  9560. }
  9561. }
  9562. },
  9563. "/user/repos": {
  9564. "get": {
  9565. "produces": [
  9566. "application/json"
  9567. ],
  9568. "tags": [
  9569. "user"
  9570. ],
  9571. "summary": "List the repos that the authenticated user owns or has access to",
  9572. "operationId": "userCurrentListRepos",
  9573. "parameters": [
  9574. {
  9575. "type": "integer",
  9576. "description": "page number of results to return (1-based)",
  9577. "name": "page",
  9578. "in": "query"
  9579. },
  9580. {
  9581. "type": "integer",
  9582. "description": "page size of results",
  9583. "name": "limit",
  9584. "in": "query"
  9585. }
  9586. ],
  9587. "responses": {
  9588. "200": {
  9589. "$ref": "#/responses/RepositoryList"
  9590. }
  9591. }
  9592. },
  9593. "post": {
  9594. "consumes": [
  9595. "application/json"
  9596. ],
  9597. "produces": [
  9598. "application/json"
  9599. ],
  9600. "tags": [
  9601. "repository",
  9602. "user"
  9603. ],
  9604. "summary": "Create a repository",
  9605. "operationId": "createCurrentUserRepo",
  9606. "parameters": [
  9607. {
  9608. "name": "body",
  9609. "in": "body",
  9610. "schema": {
  9611. "$ref": "#/definitions/CreateRepoOption"
  9612. }
  9613. }
  9614. ],
  9615. "responses": {
  9616. "201": {
  9617. "$ref": "#/responses/Repository"
  9618. },
  9619. "409": {
  9620. "description": "The repository with the same name already exists."
  9621. },
  9622. "422": {
  9623. "$ref": "#/responses/validationError"
  9624. }
  9625. }
  9626. }
  9627. },
  9628. "/user/starred": {
  9629. "get": {
  9630. "produces": [
  9631. "application/json"
  9632. ],
  9633. "tags": [
  9634. "user"
  9635. ],
  9636. "summary": "The repos that the authenticated user has starred",
  9637. "operationId": "userCurrentListStarred",
  9638. "parameters": [
  9639. {
  9640. "type": "integer",
  9641. "description": "page number of results to return (1-based)",
  9642. "name": "page",
  9643. "in": "query"
  9644. },
  9645. {
  9646. "type": "integer",
  9647. "description": "page size of results",
  9648. "name": "limit",
  9649. "in": "query"
  9650. }
  9651. ],
  9652. "responses": {
  9653. "200": {
  9654. "$ref": "#/responses/RepositoryList"
  9655. }
  9656. }
  9657. }
  9658. },
  9659. "/user/starred/{owner}/{repo}": {
  9660. "get": {
  9661. "tags": [
  9662. "user"
  9663. ],
  9664. "summary": "Whether the authenticated is starring the repo",
  9665. "operationId": "userCurrentCheckStarring",
  9666. "parameters": [
  9667. {
  9668. "type": "string",
  9669. "description": "owner of the repo",
  9670. "name": "owner",
  9671. "in": "path",
  9672. "required": true
  9673. },
  9674. {
  9675. "type": "string",
  9676. "description": "name of the repo",
  9677. "name": "repo",
  9678. "in": "path",
  9679. "required": true
  9680. }
  9681. ],
  9682. "responses": {
  9683. "204": {
  9684. "$ref": "#/responses/empty"
  9685. },
  9686. "404": {
  9687. "$ref": "#/responses/notFound"
  9688. }
  9689. }
  9690. },
  9691. "put": {
  9692. "tags": [
  9693. "user"
  9694. ],
  9695. "summary": "Star the given repo",
  9696. "operationId": "userCurrentPutStar",
  9697. "parameters": [
  9698. {
  9699. "type": "string",
  9700. "description": "owner of the repo to star",
  9701. "name": "owner",
  9702. "in": "path",
  9703. "required": true
  9704. },
  9705. {
  9706. "type": "string",
  9707. "description": "name of the repo to star",
  9708. "name": "repo",
  9709. "in": "path",
  9710. "required": true
  9711. }
  9712. ],
  9713. "responses": {
  9714. "204": {
  9715. "$ref": "#/responses/empty"
  9716. }
  9717. }
  9718. },
  9719. "delete": {
  9720. "tags": [
  9721. "user"
  9722. ],
  9723. "summary": "Unstar the given repo",
  9724. "operationId": "userCurrentDeleteStar",
  9725. "parameters": [
  9726. {
  9727. "type": "string",
  9728. "description": "owner of the repo to unstar",
  9729. "name": "owner",
  9730. "in": "path",
  9731. "required": true
  9732. },
  9733. {
  9734. "type": "string",
  9735. "description": "name of the repo to unstar",
  9736. "name": "repo",
  9737. "in": "path",
  9738. "required": true
  9739. }
  9740. ],
  9741. "responses": {
  9742. "204": {
  9743. "$ref": "#/responses/empty"
  9744. }
  9745. }
  9746. }
  9747. },
  9748. "/user/stopwatches": {
  9749. "get": {
  9750. "consumes": [
  9751. "application/json"
  9752. ],
  9753. "produces": [
  9754. "application/json"
  9755. ],
  9756. "tags": [
  9757. "user"
  9758. ],
  9759. "summary": "Get list of all existing stopwatches",
  9760. "operationId": "userGetStopWatches",
  9761. "parameters": [
  9762. {
  9763. "type": "integer",
  9764. "description": "page number of results to return (1-based)",
  9765. "name": "page",
  9766. "in": "query"
  9767. },
  9768. {
  9769. "type": "integer",
  9770. "description": "page size of results",
  9771. "name": "limit",
  9772. "in": "query"
  9773. }
  9774. ],
  9775. "responses": {
  9776. "200": {
  9777. "$ref": "#/responses/StopWatchList"
  9778. }
  9779. }
  9780. }
  9781. },
  9782. "/user/subscriptions": {
  9783. "get": {
  9784. "produces": [
  9785. "application/json"
  9786. ],
  9787. "tags": [
  9788. "user"
  9789. ],
  9790. "summary": "List repositories watched by the authenticated user",
  9791. "operationId": "userCurrentListSubscriptions",
  9792. "parameters": [
  9793. {
  9794. "type": "integer",
  9795. "description": "page number of results to return (1-based)",
  9796. "name": "page",
  9797. "in": "query"
  9798. },
  9799. {
  9800. "type": "integer",
  9801. "description": "page size of results",
  9802. "name": "limit",
  9803. "in": "query"
  9804. }
  9805. ],
  9806. "responses": {
  9807. "200": {
  9808. "$ref": "#/responses/RepositoryList"
  9809. }
  9810. }
  9811. }
  9812. },
  9813. "/user/teams": {
  9814. "get": {
  9815. "produces": [
  9816. "application/json"
  9817. ],
  9818. "tags": [
  9819. "user"
  9820. ],
  9821. "summary": "List all the teams a user belongs to",
  9822. "operationId": "userListTeams",
  9823. "parameters": [
  9824. {
  9825. "type": "integer",
  9826. "description": "page number of results to return (1-based)",
  9827. "name": "page",
  9828. "in": "query"
  9829. },
  9830. {
  9831. "type": "integer",
  9832. "description": "page size of results",
  9833. "name": "limit",
  9834. "in": "query"
  9835. }
  9836. ],
  9837. "responses": {
  9838. "200": {
  9839. "$ref": "#/responses/TeamList"
  9840. }
  9841. }
  9842. }
  9843. },
  9844. "/user/times": {
  9845. "get": {
  9846. "produces": [
  9847. "application/json"
  9848. ],
  9849. "tags": [
  9850. "user"
  9851. ],
  9852. "summary": "List the current user's tracked times",
  9853. "operationId": "userCurrentTrackedTimes",
  9854. "parameters": [
  9855. {
  9856. "type": "string",
  9857. "format": "date-time",
  9858. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  9859. "name": "since",
  9860. "in": "query"
  9861. },
  9862. {
  9863. "type": "string",
  9864. "format": "date-time",
  9865. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  9866. "name": "before",
  9867. "in": "query"
  9868. }
  9869. ],
  9870. "responses": {
  9871. "200": {
  9872. "$ref": "#/responses/TrackedTimeList"
  9873. }
  9874. }
  9875. }
  9876. },
  9877. "/users/search": {
  9878. "get": {
  9879. "produces": [
  9880. "application/json"
  9881. ],
  9882. "tags": [
  9883. "user"
  9884. ],
  9885. "summary": "Search for users",
  9886. "operationId": "userSearch",
  9887. "parameters": [
  9888. {
  9889. "type": "string",
  9890. "description": "keyword",
  9891. "name": "q",
  9892. "in": "query"
  9893. },
  9894. {
  9895. "type": "integer",
  9896. "format": "int64",
  9897. "description": "ID of the user to search for",
  9898. "name": "uid",
  9899. "in": "query"
  9900. },
  9901. {
  9902. "type": "integer",
  9903. "description": "page number of results to return (1-based)",
  9904. "name": "page",
  9905. "in": "query"
  9906. },
  9907. {
  9908. "type": "integer",
  9909. "description": "page size of results",
  9910. "name": "limit",
  9911. "in": "query"
  9912. }
  9913. ],
  9914. "responses": {
  9915. "200": {
  9916. "description": "SearchResults of a successful search",
  9917. "schema": {
  9918. "type": "object",
  9919. "properties": {
  9920. "data": {
  9921. "type": "array",
  9922. "items": {
  9923. "$ref": "#/definitions/User"
  9924. }
  9925. },
  9926. "ok": {
  9927. "type": "boolean"
  9928. }
  9929. }
  9930. }
  9931. }
  9932. }
  9933. }
  9934. },
  9935. "/users/{follower}/following/{followee}": {
  9936. "get": {
  9937. "tags": [
  9938. "user"
  9939. ],
  9940. "summary": "Check if one user is following another user",
  9941. "operationId": "userCheckFollowing",
  9942. "parameters": [
  9943. {
  9944. "type": "string",
  9945. "description": "username of following user",
  9946. "name": "follower",
  9947. "in": "path",
  9948. "required": true
  9949. },
  9950. {
  9951. "type": "string",
  9952. "description": "username of followed user",
  9953. "name": "followee",
  9954. "in": "path",
  9955. "required": true
  9956. }
  9957. ],
  9958. "responses": {
  9959. "204": {
  9960. "$ref": "#/responses/empty"
  9961. },
  9962. "404": {
  9963. "$ref": "#/responses/notFound"
  9964. }
  9965. }
  9966. }
  9967. },
  9968. "/users/{username}": {
  9969. "get": {
  9970. "produces": [
  9971. "application/json"
  9972. ],
  9973. "tags": [
  9974. "user"
  9975. ],
  9976. "summary": "Get a user",
  9977. "operationId": "userGet",
  9978. "parameters": [
  9979. {
  9980. "type": "string",
  9981. "description": "username of user to get",
  9982. "name": "username",
  9983. "in": "path",
  9984. "required": true
  9985. }
  9986. ],
  9987. "responses": {
  9988. "200": {
  9989. "$ref": "#/responses/User"
  9990. },
  9991. "404": {
  9992. "$ref": "#/responses/notFound"
  9993. }
  9994. }
  9995. }
  9996. },
  9997. "/users/{username}/followers": {
  9998. "get": {
  9999. "produces": [
  10000. "application/json"
  10001. ],
  10002. "tags": [
  10003. "user"
  10004. ],
  10005. "summary": "List the given user's followers",
  10006. "operationId": "userListFollowers",
  10007. "parameters": [
  10008. {
  10009. "type": "string",
  10010. "description": "username of user",
  10011. "name": "username",
  10012. "in": "path",
  10013. "required": true
  10014. },
  10015. {
  10016. "type": "integer",
  10017. "description": "page number of results to return (1-based)",
  10018. "name": "page",
  10019. "in": "query"
  10020. },
  10021. {
  10022. "type": "integer",
  10023. "description": "page size of results",
  10024. "name": "limit",
  10025. "in": "query"
  10026. }
  10027. ],
  10028. "responses": {
  10029. "200": {
  10030. "$ref": "#/responses/UserList"
  10031. }
  10032. }
  10033. }
  10034. },
  10035. "/users/{username}/following": {
  10036. "get": {
  10037. "produces": [
  10038. "application/json"
  10039. ],
  10040. "tags": [
  10041. "user"
  10042. ],
  10043. "summary": "List the users that the given user is following",
  10044. "operationId": "userListFollowing",
  10045. "parameters": [
  10046. {
  10047. "type": "string",
  10048. "description": "username of user",
  10049. "name": "username",
  10050. "in": "path",
  10051. "required": true
  10052. },
  10053. {
  10054. "type": "integer",
  10055. "description": "page number of results to return (1-based)",
  10056. "name": "page",
  10057. "in": "query"
  10058. },
  10059. {
  10060. "type": "integer",
  10061. "description": "page size of results",
  10062. "name": "limit",
  10063. "in": "query"
  10064. }
  10065. ],
  10066. "responses": {
  10067. "200": {
  10068. "$ref": "#/responses/UserList"
  10069. }
  10070. }
  10071. }
  10072. },
  10073. "/users/{username}/gpg_keys": {
  10074. "get": {
  10075. "produces": [
  10076. "application/json"
  10077. ],
  10078. "tags": [
  10079. "user"
  10080. ],
  10081. "summary": "List the given user's GPG keys",
  10082. "operationId": "userListGPGKeys",
  10083. "parameters": [
  10084. {
  10085. "type": "string",
  10086. "description": "username of user",
  10087. "name": "username",
  10088. "in": "path",
  10089. "required": true
  10090. },
  10091. {
  10092. "type": "integer",
  10093. "description": "page number of results to return (1-based)",
  10094. "name": "page",
  10095. "in": "query"
  10096. },
  10097. {
  10098. "type": "integer",
  10099. "description": "page size of results",
  10100. "name": "limit",
  10101. "in": "query"
  10102. }
  10103. ],
  10104. "responses": {
  10105. "200": {
  10106. "$ref": "#/responses/GPGKeyList"
  10107. }
  10108. }
  10109. }
  10110. },
  10111. "/users/{username}/heatmap": {
  10112. "get": {
  10113. "produces": [
  10114. "application/json"
  10115. ],
  10116. "tags": [
  10117. "user"
  10118. ],
  10119. "summary": "Get a user's heatmap",
  10120. "operationId": "userGetHeatmapData",
  10121. "parameters": [
  10122. {
  10123. "type": "string",
  10124. "description": "username of user to get",
  10125. "name": "username",
  10126. "in": "path",
  10127. "required": true
  10128. }
  10129. ],
  10130. "responses": {
  10131. "200": {
  10132. "$ref": "#/responses/UserHeatmapData"
  10133. },
  10134. "404": {
  10135. "$ref": "#/responses/notFound"
  10136. }
  10137. }
  10138. }
  10139. },
  10140. "/users/{username}/keys": {
  10141. "get": {
  10142. "produces": [
  10143. "application/json"
  10144. ],
  10145. "tags": [
  10146. "user"
  10147. ],
  10148. "summary": "List the given user's public keys",
  10149. "operationId": "userListKeys",
  10150. "parameters": [
  10151. {
  10152. "type": "string",
  10153. "description": "username of user",
  10154. "name": "username",
  10155. "in": "path",
  10156. "required": true
  10157. },
  10158. {
  10159. "type": "string",
  10160. "description": "fingerprint of the key",
  10161. "name": "fingerprint",
  10162. "in": "query"
  10163. },
  10164. {
  10165. "type": "integer",
  10166. "description": "page number of results to return (1-based)",
  10167. "name": "page",
  10168. "in": "query"
  10169. },
  10170. {
  10171. "type": "integer",
  10172. "description": "page size of results",
  10173. "name": "limit",
  10174. "in": "query"
  10175. }
  10176. ],
  10177. "responses": {
  10178. "200": {
  10179. "$ref": "#/responses/PublicKeyList"
  10180. }
  10181. }
  10182. }
  10183. },
  10184. "/users/{username}/orgs": {
  10185. "get": {
  10186. "produces": [
  10187. "application/json"
  10188. ],
  10189. "tags": [
  10190. "organization"
  10191. ],
  10192. "summary": "List a user's organizations",
  10193. "operationId": "orgListUserOrgs",
  10194. "parameters": [
  10195. {
  10196. "type": "string",
  10197. "description": "username of user",
  10198. "name": "username",
  10199. "in": "path",
  10200. "required": true
  10201. },
  10202. {
  10203. "type": "integer",
  10204. "description": "page number of results to return (1-based)",
  10205. "name": "page",
  10206. "in": "query"
  10207. },
  10208. {
  10209. "type": "integer",
  10210. "description": "page size of results",
  10211. "name": "limit",
  10212. "in": "query"
  10213. }
  10214. ],
  10215. "responses": {
  10216. "200": {
  10217. "$ref": "#/responses/OrganizationList"
  10218. }
  10219. }
  10220. }
  10221. },
  10222. "/users/{username}/repos": {
  10223. "get": {
  10224. "produces": [
  10225. "application/json"
  10226. ],
  10227. "tags": [
  10228. "user"
  10229. ],
  10230. "summary": "List the repos owned by the given user",
  10231. "operationId": "userListRepos",
  10232. "parameters": [
  10233. {
  10234. "type": "string",
  10235. "description": "username of user",
  10236. "name": "username",
  10237. "in": "path",
  10238. "required": true
  10239. },
  10240. {
  10241. "type": "integer",
  10242. "description": "page number of results to return (1-based)",
  10243. "name": "page",
  10244. "in": "query"
  10245. },
  10246. {
  10247. "type": "integer",
  10248. "description": "page size of results",
  10249. "name": "limit",
  10250. "in": "query"
  10251. }
  10252. ],
  10253. "responses": {
  10254. "200": {
  10255. "$ref": "#/responses/RepositoryList"
  10256. }
  10257. }
  10258. }
  10259. },
  10260. "/users/{username}/starred": {
  10261. "get": {
  10262. "produces": [
  10263. "application/json"
  10264. ],
  10265. "tags": [
  10266. "user"
  10267. ],
  10268. "summary": "The repos that the given user has starred",
  10269. "operationId": "userListStarred",
  10270. "parameters": [
  10271. {
  10272. "type": "string",
  10273. "description": "username of user",
  10274. "name": "username",
  10275. "in": "path",
  10276. "required": true
  10277. },
  10278. {
  10279. "type": "integer",
  10280. "description": "page number of results to return (1-based)",
  10281. "name": "page",
  10282. "in": "query"
  10283. },
  10284. {
  10285. "type": "integer",
  10286. "description": "page size of results",
  10287. "name": "limit",
  10288. "in": "query"
  10289. }
  10290. ],
  10291. "responses": {
  10292. "200": {
  10293. "$ref": "#/responses/RepositoryList"
  10294. }
  10295. }
  10296. }
  10297. },
  10298. "/users/{username}/subscriptions": {
  10299. "get": {
  10300. "produces": [
  10301. "application/json"
  10302. ],
  10303. "tags": [
  10304. "user"
  10305. ],
  10306. "summary": "List the repositories watched by a user",
  10307. "operationId": "userListSubscriptions",
  10308. "parameters": [
  10309. {
  10310. "type": "string",
  10311. "description": "username of the user",
  10312. "name": "username",
  10313. "in": "path",
  10314. "required": true
  10315. },
  10316. {
  10317. "type": "integer",
  10318. "description": "page number of results to return (1-based)",
  10319. "name": "page",
  10320. "in": "query"
  10321. },
  10322. {
  10323. "type": "integer",
  10324. "description": "page size of results",
  10325. "name": "limit",
  10326. "in": "query"
  10327. }
  10328. ],
  10329. "responses": {
  10330. "200": {
  10331. "$ref": "#/responses/RepositoryList"
  10332. }
  10333. }
  10334. }
  10335. },
  10336. "/users/{username}/tokens": {
  10337. "get": {
  10338. "produces": [
  10339. "application/json"
  10340. ],
  10341. "tags": [
  10342. "user"
  10343. ],
  10344. "summary": "List the authenticated user's access tokens",
  10345. "operationId": "userGetTokens",
  10346. "parameters": [
  10347. {
  10348. "type": "string",
  10349. "description": "username of user",
  10350. "name": "username",
  10351. "in": "path",
  10352. "required": true
  10353. },
  10354. {
  10355. "type": "integer",
  10356. "description": "page number of results to return (1-based)",
  10357. "name": "page",
  10358. "in": "query"
  10359. },
  10360. {
  10361. "type": "integer",
  10362. "description": "page size of results",
  10363. "name": "limit",
  10364. "in": "query"
  10365. }
  10366. ],
  10367. "responses": {
  10368. "200": {
  10369. "$ref": "#/responses/AccessTokenList"
  10370. }
  10371. }
  10372. },
  10373. "post": {
  10374. "consumes": [
  10375. "application/json"
  10376. ],
  10377. "produces": [
  10378. "application/json"
  10379. ],
  10380. "tags": [
  10381. "user"
  10382. ],
  10383. "summary": "Create an access token",
  10384. "operationId": "userCreateToken",
  10385. "parameters": [
  10386. {
  10387. "type": "string",
  10388. "x-go-name": "Name",
  10389. "description": "username of user",
  10390. "name": "username",
  10391. "in": "path",
  10392. "required": true
  10393. },
  10394. {
  10395. "name": "accessToken",
  10396. "in": "body",
  10397. "schema": {
  10398. "type": "object",
  10399. "required": [
  10400. "name"
  10401. ],
  10402. "properties": {
  10403. "name": {
  10404. "type": "string"
  10405. }
  10406. }
  10407. }
  10408. }
  10409. ],
  10410. "responses": {
  10411. "200": {
  10412. "$ref": "#/responses/AccessToken"
  10413. }
  10414. }
  10415. }
  10416. },
  10417. "/users/{username}/tokens/{token}": {
  10418. "delete": {
  10419. "produces": [
  10420. "application/json"
  10421. ],
  10422. "tags": [
  10423. "user"
  10424. ],
  10425. "summary": "delete an access token",
  10426. "operationId": "userDeleteAccessToken",
  10427. "parameters": [
  10428. {
  10429. "type": "string",
  10430. "description": "username of user",
  10431. "name": "username",
  10432. "in": "path",
  10433. "required": true
  10434. },
  10435. {
  10436. "type": "integer",
  10437. "format": "int64",
  10438. "description": "token to be deleted",
  10439. "name": "token",
  10440. "in": "path",
  10441. "required": true
  10442. }
  10443. ],
  10444. "responses": {
  10445. "204": {
  10446. "$ref": "#/responses/empty"
  10447. }
  10448. }
  10449. }
  10450. },
  10451. "/version": {
  10452. "get": {
  10453. "produces": [
  10454. "application/json"
  10455. ],
  10456. "tags": [
  10457. "miscellaneous"
  10458. ],
  10459. "summary": "Returns the version of the Gitea application",
  10460. "operationId": "getVersion",
  10461. "responses": {
  10462. "200": {
  10463. "$ref": "#/responses/ServerVersion"
  10464. }
  10465. }
  10466. }
  10467. }
  10468. },
  10469. "definitions": {
  10470. "APIError": {
  10471. "description": "APIError is an api error with a message",
  10472. "type": "object",
  10473. "properties": {
  10474. "message": {
  10475. "type": "string",
  10476. "x-go-name": "Message"
  10477. },
  10478. "url": {
  10479. "type": "string",
  10480. "x-go-name": "URL"
  10481. }
  10482. },
  10483. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10484. },
  10485. "AccessToken": {
  10486. "type": "object",
  10487. "title": "AccessToken represents an API access token.",
  10488. "properties": {
  10489. "id": {
  10490. "type": "integer",
  10491. "format": "int64",
  10492. "x-go-name": "ID"
  10493. },
  10494. "name": {
  10495. "type": "string",
  10496. "x-go-name": "Name"
  10497. },
  10498. "sha1": {
  10499. "type": "string",
  10500. "x-go-name": "Token"
  10501. },
  10502. "token_last_eight": {
  10503. "type": "string",
  10504. "x-go-name": "TokenLastEight"
  10505. }
  10506. },
  10507. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10508. },
  10509. "AddCollaboratorOption": {
  10510. "description": "AddCollaboratorOption options when adding a user as a collaborator of a repository",
  10511. "type": "object",
  10512. "properties": {
  10513. "permission": {
  10514. "type": "string",
  10515. "x-go-name": "Permission"
  10516. }
  10517. },
  10518. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10519. },
  10520. "AddTimeOption": {
  10521. "description": "AddTimeOption options for adding time to an issue",
  10522. "type": "object",
  10523. "required": [
  10524. "time"
  10525. ],
  10526. "properties": {
  10527. "created": {
  10528. "type": "string",
  10529. "format": "date-time",
  10530. "x-go-name": "Created"
  10531. },
  10532. "time": {
  10533. "description": "time in seconds",
  10534. "type": "integer",
  10535. "format": "int64",
  10536. "x-go-name": "Time"
  10537. },
  10538. "user_name": {
  10539. "description": "User who spent the time (optional)",
  10540. "type": "string",
  10541. "x-go-name": "User"
  10542. }
  10543. },
  10544. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10545. },
  10546. "AnnotatedTag": {
  10547. "description": "AnnotatedTag represents an annotated tag",
  10548. "type": "object",
  10549. "properties": {
  10550. "message": {
  10551. "type": "string",
  10552. "x-go-name": "Message"
  10553. },
  10554. "object": {
  10555. "$ref": "#/definitions/AnnotatedTagObject"
  10556. },
  10557. "sha": {
  10558. "type": "string",
  10559. "x-go-name": "SHA"
  10560. },
  10561. "tag": {
  10562. "type": "string",
  10563. "x-go-name": "Tag"
  10564. },
  10565. "tagger": {
  10566. "$ref": "#/definitions/CommitUser"
  10567. },
  10568. "url": {
  10569. "type": "string",
  10570. "x-go-name": "URL"
  10571. },
  10572. "verification": {
  10573. "$ref": "#/definitions/PayloadCommitVerification"
  10574. }
  10575. },
  10576. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10577. },
  10578. "AnnotatedTagObject": {
  10579. "description": "AnnotatedTagObject contains meta information of the tag object",
  10580. "type": "object",
  10581. "properties": {
  10582. "sha": {
  10583. "type": "string",
  10584. "x-go-name": "SHA"
  10585. },
  10586. "type": {
  10587. "type": "string",
  10588. "x-go-name": "Type"
  10589. },
  10590. "url": {
  10591. "type": "string",
  10592. "x-go-name": "URL"
  10593. }
  10594. },
  10595. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10596. },
  10597. "Attachment": {
  10598. "description": "Attachment a generic attachment",
  10599. "type": "object",
  10600. "properties": {
  10601. "browser_download_url": {
  10602. "type": "string",
  10603. "x-go-name": "DownloadURL"
  10604. },
  10605. "created_at": {
  10606. "type": "string",
  10607. "format": "date-time",
  10608. "x-go-name": "Created"
  10609. },
  10610. "download_count": {
  10611. "type": "integer",
  10612. "format": "int64",
  10613. "x-go-name": "DownloadCount"
  10614. },
  10615. "id": {
  10616. "type": "integer",
  10617. "format": "int64",
  10618. "x-go-name": "ID"
  10619. },
  10620. "name": {
  10621. "type": "string",
  10622. "x-go-name": "Name"
  10623. },
  10624. "size": {
  10625. "type": "integer",
  10626. "format": "int64",
  10627. "x-go-name": "Size"
  10628. },
  10629. "uuid": {
  10630. "type": "string",
  10631. "x-go-name": "UUID"
  10632. }
  10633. },
  10634. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10635. },
  10636. "Branch": {
  10637. "description": "Branch represents a repository branch",
  10638. "type": "object",
  10639. "properties": {
  10640. "commit": {
  10641. "$ref": "#/definitions/PayloadCommit"
  10642. },
  10643. "effective_branch_protection_name": {
  10644. "type": "string",
  10645. "x-go-name": "EffectiveBranchProtectionName"
  10646. },
  10647. "enable_status_check": {
  10648. "type": "boolean",
  10649. "x-go-name": "EnableStatusCheck"
  10650. },
  10651. "name": {
  10652. "type": "string",
  10653. "x-go-name": "Name"
  10654. },
  10655. "protected": {
  10656. "type": "boolean",
  10657. "x-go-name": "Protected"
  10658. },
  10659. "required_approvals": {
  10660. "type": "integer",
  10661. "format": "int64",
  10662. "x-go-name": "RequiredApprovals"
  10663. },
  10664. "status_check_contexts": {
  10665. "type": "array",
  10666. "items": {
  10667. "type": "string"
  10668. },
  10669. "x-go-name": "StatusCheckContexts"
  10670. },
  10671. "user_can_merge": {
  10672. "type": "boolean",
  10673. "x-go-name": "UserCanMerge"
  10674. },
  10675. "user_can_push": {
  10676. "type": "boolean",
  10677. "x-go-name": "UserCanPush"
  10678. }
  10679. },
  10680. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10681. },
  10682. "BranchProtection": {
  10683. "description": "BranchProtection represents a branch protection for a repository",
  10684. "type": "object",
  10685. "properties": {
  10686. "approvals_whitelist_teams": {
  10687. "type": "array",
  10688. "items": {
  10689. "type": "string"
  10690. },
  10691. "x-go-name": "ApprovalsWhitelistTeams"
  10692. },
  10693. "approvals_whitelist_username": {
  10694. "type": "array",
  10695. "items": {
  10696. "type": "string"
  10697. },
  10698. "x-go-name": "ApprovalsWhitelistUsernames"
  10699. },
  10700. "block_on_outdated_branch": {
  10701. "type": "boolean",
  10702. "x-go-name": "BlockOnOutdatedBranch"
  10703. },
  10704. "block_on_rejected_reviews": {
  10705. "type": "boolean",
  10706. "x-go-name": "BlockOnRejectedReviews"
  10707. },
  10708. "branch_name": {
  10709. "type": "string",
  10710. "x-go-name": "BranchName"
  10711. },
  10712. "created_at": {
  10713. "type": "string",
  10714. "format": "date-time",
  10715. "x-go-name": "Created"
  10716. },
  10717. "dismiss_stale_approvals": {
  10718. "type": "boolean",
  10719. "x-go-name": "DismissStaleApprovals"
  10720. },
  10721. "enable_approvals_whitelist": {
  10722. "type": "boolean",
  10723. "x-go-name": "EnableApprovalsWhitelist"
  10724. },
  10725. "enable_merge_whitelist": {
  10726. "type": "boolean",
  10727. "x-go-name": "EnableMergeWhitelist"
  10728. },
  10729. "enable_push": {
  10730. "type": "boolean",
  10731. "x-go-name": "EnablePush"
  10732. },
  10733. "enable_push_whitelist": {
  10734. "type": "boolean",
  10735. "x-go-name": "EnablePushWhitelist"
  10736. },
  10737. "enable_status_check": {
  10738. "type": "boolean",
  10739. "x-go-name": "EnableStatusCheck"
  10740. },
  10741. "merge_whitelist_teams": {
  10742. "type": "array",
  10743. "items": {
  10744. "type": "string"
  10745. },
  10746. "x-go-name": "MergeWhitelistTeams"
  10747. },
  10748. "merge_whitelist_usernames": {
  10749. "type": "array",
  10750. "items": {
  10751. "type": "string"
  10752. },
  10753. "x-go-name": "MergeWhitelistUsernames"
  10754. },
  10755. "protected_file_patterns": {
  10756. "type": "string",
  10757. "x-go-name": "ProtectedFilePatterns"
  10758. },
  10759. "push_whitelist_deploy_keys": {
  10760. "type": "boolean",
  10761. "x-go-name": "PushWhitelistDeployKeys"
  10762. },
  10763. "push_whitelist_teams": {
  10764. "type": "array",
  10765. "items": {
  10766. "type": "string"
  10767. },
  10768. "x-go-name": "PushWhitelistTeams"
  10769. },
  10770. "push_whitelist_usernames": {
  10771. "type": "array",
  10772. "items": {
  10773. "type": "string"
  10774. },
  10775. "x-go-name": "PushWhitelistUsernames"
  10776. },
  10777. "require_signed_commits": {
  10778. "type": "boolean",
  10779. "x-go-name": "RequireSignedCommits"
  10780. },
  10781. "required_approvals": {
  10782. "type": "integer",
  10783. "format": "int64",
  10784. "x-go-name": "RequiredApprovals"
  10785. },
  10786. "status_check_contexts": {
  10787. "type": "array",
  10788. "items": {
  10789. "type": "string"
  10790. },
  10791. "x-go-name": "StatusCheckContexts"
  10792. },
  10793. "updated_at": {
  10794. "type": "string",
  10795. "format": "date-time",
  10796. "x-go-name": "Updated"
  10797. }
  10798. },
  10799. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10800. },
  10801. "Comment": {
  10802. "description": "Comment represents a comment on a commit or issue",
  10803. "type": "object",
  10804. "properties": {
  10805. "body": {
  10806. "type": "string",
  10807. "x-go-name": "Body"
  10808. },
  10809. "created_at": {
  10810. "type": "string",
  10811. "format": "date-time",
  10812. "x-go-name": "Created"
  10813. },
  10814. "html_url": {
  10815. "type": "string",
  10816. "x-go-name": "HTMLURL"
  10817. },
  10818. "id": {
  10819. "type": "integer",
  10820. "format": "int64",
  10821. "x-go-name": "ID"
  10822. },
  10823. "issue_url": {
  10824. "type": "string",
  10825. "x-go-name": "IssueURL"
  10826. },
  10827. "original_author": {
  10828. "type": "string",
  10829. "x-go-name": "OriginalAuthor"
  10830. },
  10831. "original_author_id": {
  10832. "type": "integer",
  10833. "format": "int64",
  10834. "x-go-name": "OriginalAuthorID"
  10835. },
  10836. "pull_request_url": {
  10837. "type": "string",
  10838. "x-go-name": "PRURL"
  10839. },
  10840. "updated_at": {
  10841. "type": "string",
  10842. "format": "date-time",
  10843. "x-go-name": "Updated"
  10844. },
  10845. "user": {
  10846. "$ref": "#/definitions/User"
  10847. }
  10848. },
  10849. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10850. },
  10851. "Commit": {
  10852. "type": "object",
  10853. "title": "Commit contains information generated from a Git commit.",
  10854. "properties": {
  10855. "author": {
  10856. "$ref": "#/definitions/User"
  10857. },
  10858. "commit": {
  10859. "$ref": "#/definitions/RepoCommit"
  10860. },
  10861. "committer": {
  10862. "$ref": "#/definitions/User"
  10863. },
  10864. "html_url": {
  10865. "type": "string",
  10866. "x-go-name": "HTMLURL"
  10867. },
  10868. "parents": {
  10869. "type": "array",
  10870. "items": {
  10871. "$ref": "#/definitions/CommitMeta"
  10872. },
  10873. "x-go-name": "Parents"
  10874. },
  10875. "sha": {
  10876. "type": "string",
  10877. "x-go-name": "SHA"
  10878. },
  10879. "url": {
  10880. "type": "string",
  10881. "x-go-name": "URL"
  10882. }
  10883. },
  10884. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10885. },
  10886. "CommitDateOptions": {
  10887. "description": "CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE",
  10888. "type": "object",
  10889. "properties": {
  10890. "author": {
  10891. "type": "string",
  10892. "format": "date-time",
  10893. "x-go-name": "Author"
  10894. },
  10895. "committer": {
  10896. "type": "string",
  10897. "format": "date-time",
  10898. "x-go-name": "Committer"
  10899. }
  10900. },
  10901. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10902. },
  10903. "CommitMeta": {
  10904. "type": "object",
  10905. "title": "CommitMeta contains meta information of a commit in terms of API.",
  10906. "properties": {
  10907. "sha": {
  10908. "type": "string",
  10909. "x-go-name": "SHA"
  10910. },
  10911. "url": {
  10912. "type": "string",
  10913. "x-go-name": "URL"
  10914. }
  10915. },
  10916. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10917. },
  10918. "CommitUser": {
  10919. "type": "object",
  10920. "title": "CommitUser contains information of a user in the context of a commit.",
  10921. "properties": {
  10922. "date": {
  10923. "type": "string",
  10924. "x-go-name": "Date"
  10925. },
  10926. "email": {
  10927. "type": "string",
  10928. "format": "email",
  10929. "x-go-name": "Email"
  10930. },
  10931. "name": {
  10932. "type": "string",
  10933. "x-go-name": "Name"
  10934. }
  10935. },
  10936. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10937. },
  10938. "ContentsResponse": {
  10939. "description": "ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content",
  10940. "type": "object",
  10941. "properties": {
  10942. "_links": {
  10943. "$ref": "#/definitions/FileLinksResponse"
  10944. },
  10945. "content": {
  10946. "description": "`content` is populated when `type` is `file`, otherwise null",
  10947. "type": "string",
  10948. "x-go-name": "Content"
  10949. },
  10950. "download_url": {
  10951. "type": "string",
  10952. "x-go-name": "DownloadURL"
  10953. },
  10954. "encoding": {
  10955. "description": "`encoding` is populated when `type` is `file`, otherwise null",
  10956. "type": "string",
  10957. "x-go-name": "Encoding"
  10958. },
  10959. "git_url": {
  10960. "type": "string",
  10961. "x-go-name": "GitURL"
  10962. },
  10963. "html_url": {
  10964. "type": "string",
  10965. "x-go-name": "HTMLURL"
  10966. },
  10967. "name": {
  10968. "type": "string",
  10969. "x-go-name": "Name"
  10970. },
  10971. "path": {
  10972. "type": "string",
  10973. "x-go-name": "Path"
  10974. },
  10975. "sha": {
  10976. "type": "string",
  10977. "x-go-name": "SHA"
  10978. },
  10979. "size": {
  10980. "type": "integer",
  10981. "format": "int64",
  10982. "x-go-name": "Size"
  10983. },
  10984. "submodule_git_url": {
  10985. "description": "`submodule_git_url` is populated when `type` is `submodule`, otherwise null",
  10986. "type": "string",
  10987. "x-go-name": "SubmoduleGitURL"
  10988. },
  10989. "target": {
  10990. "description": "`target` is populated when `type` is `symlink`, otherwise null",
  10991. "type": "string",
  10992. "x-go-name": "Target"
  10993. },
  10994. "type": {
  10995. "description": "`type` will be `file`, `dir`, `symlink`, or `submodule`",
  10996. "type": "string",
  10997. "x-go-name": "Type"
  10998. },
  10999. "url": {
  11000. "type": "string",
  11001. "x-go-name": "URL"
  11002. }
  11003. },
  11004. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11005. },
  11006. "CreateBranchProtectionOption": {
  11007. "description": "CreateBranchProtectionOption options for creating a branch protection",
  11008. "type": "object",
  11009. "properties": {
  11010. "approvals_whitelist_teams": {
  11011. "type": "array",
  11012. "items": {
  11013. "type": "string"
  11014. },
  11015. "x-go-name": "ApprovalsWhitelistTeams"
  11016. },
  11017. "approvals_whitelist_username": {
  11018. "type": "array",
  11019. "items": {
  11020. "type": "string"
  11021. },
  11022. "x-go-name": "ApprovalsWhitelistUsernames"
  11023. },
  11024. "block_on_outdated_branch": {
  11025. "type": "boolean",
  11026. "x-go-name": "BlockOnOutdatedBranch"
  11027. },
  11028. "block_on_rejected_reviews": {
  11029. "type": "boolean",
  11030. "x-go-name": "BlockOnRejectedReviews"
  11031. },
  11032. "branch_name": {
  11033. "type": "string",
  11034. "x-go-name": "BranchName"
  11035. },
  11036. "dismiss_stale_approvals": {
  11037. "type": "boolean",
  11038. "x-go-name": "DismissStaleApprovals"
  11039. },
  11040. "enable_approvals_whitelist": {
  11041. "type": "boolean",
  11042. "x-go-name": "EnableApprovalsWhitelist"
  11043. },
  11044. "enable_merge_whitelist": {
  11045. "type": "boolean",
  11046. "x-go-name": "EnableMergeWhitelist"
  11047. },
  11048. "enable_push": {
  11049. "type": "boolean",
  11050. "x-go-name": "EnablePush"
  11051. },
  11052. "enable_push_whitelist": {
  11053. "type": "boolean",
  11054. "x-go-name": "EnablePushWhitelist"
  11055. },
  11056. "enable_status_check": {
  11057. "type": "boolean",
  11058. "x-go-name": "EnableStatusCheck"
  11059. },
  11060. "merge_whitelist_teams": {
  11061. "type": "array",
  11062. "items": {
  11063. "type": "string"
  11064. },
  11065. "x-go-name": "MergeWhitelistTeams"
  11066. },
  11067. "merge_whitelist_usernames": {
  11068. "type": "array",
  11069. "items": {
  11070. "type": "string"
  11071. },
  11072. "x-go-name": "MergeWhitelistUsernames"
  11073. },
  11074. "protected_file_patterns": {
  11075. "type": "string",
  11076. "x-go-name": "ProtectedFilePatterns"
  11077. },
  11078. "push_whitelist_deploy_keys": {
  11079. "type": "boolean",
  11080. "x-go-name": "PushWhitelistDeployKeys"
  11081. },
  11082. "push_whitelist_teams": {
  11083. "type": "array",
  11084. "items": {
  11085. "type": "string"
  11086. },
  11087. "x-go-name": "PushWhitelistTeams"
  11088. },
  11089. "push_whitelist_usernames": {
  11090. "type": "array",
  11091. "items": {
  11092. "type": "string"
  11093. },
  11094. "x-go-name": "PushWhitelistUsernames"
  11095. },
  11096. "require_signed_commits": {
  11097. "type": "boolean",
  11098. "x-go-name": "RequireSignedCommits"
  11099. },
  11100. "required_approvals": {
  11101. "type": "integer",
  11102. "format": "int64",
  11103. "x-go-name": "RequiredApprovals"
  11104. },
  11105. "status_check_contexts": {
  11106. "type": "array",
  11107. "items": {
  11108. "type": "string"
  11109. },
  11110. "x-go-name": "StatusCheckContexts"
  11111. }
  11112. },
  11113. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11114. },
  11115. "CreateBranchRepoOption": {
  11116. "description": "CreateBranchRepoOption options when creating a branch in a repository",
  11117. "type": "object",
  11118. "required": [
  11119. "new_branch_name"
  11120. ],
  11121. "properties": {
  11122. "new_branch_name": {
  11123. "description": "Name of the branch to create",
  11124. "type": "string",
  11125. "uniqueItems": true,
  11126. "x-go-name": "BranchName"
  11127. },
  11128. "old_branch_name": {
  11129. "description": "Name of the old branch to create from",
  11130. "type": "string",
  11131. "uniqueItems": true,
  11132. "x-go-name": "OldBranchName"
  11133. }
  11134. },
  11135. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11136. },
  11137. "CreateEmailOption": {
  11138. "description": "CreateEmailOption options when creating email addresses",
  11139. "type": "object",
  11140. "properties": {
  11141. "emails": {
  11142. "description": "email addresses to add",
  11143. "type": "array",
  11144. "items": {
  11145. "type": "string"
  11146. },
  11147. "x-go-name": "Emails"
  11148. }
  11149. },
  11150. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11151. },
  11152. "CreateFileOptions": {
  11153. "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)",
  11154. "type": "object",
  11155. "required": [
  11156. "content"
  11157. ],
  11158. "properties": {
  11159. "author": {
  11160. "$ref": "#/definitions/Identity"
  11161. },
  11162. "branch": {
  11163. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  11164. "type": "string",
  11165. "x-go-name": "BranchName"
  11166. },
  11167. "committer": {
  11168. "$ref": "#/definitions/Identity"
  11169. },
  11170. "content": {
  11171. "description": "content must be base64 encoded",
  11172. "type": "string",
  11173. "x-go-name": "Content"
  11174. },
  11175. "dates": {
  11176. "$ref": "#/definitions/CommitDateOptions"
  11177. },
  11178. "message": {
  11179. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  11180. "type": "string",
  11181. "x-go-name": "Message"
  11182. },
  11183. "new_branch": {
  11184. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  11185. "type": "string",
  11186. "x-go-name": "NewBranchName"
  11187. }
  11188. },
  11189. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11190. },
  11191. "CreateForkOption": {
  11192. "description": "CreateForkOption options for creating a fork",
  11193. "type": "object",
  11194. "properties": {
  11195. "organization": {
  11196. "description": "organization name, if forking into an organization",
  11197. "type": "string",
  11198. "x-go-name": "Organization"
  11199. }
  11200. },
  11201. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11202. },
  11203. "CreateGPGKeyOption": {
  11204. "description": "CreateGPGKeyOption options create user GPG key",
  11205. "type": "object",
  11206. "required": [
  11207. "armored_public_key"
  11208. ],
  11209. "properties": {
  11210. "armored_public_key": {
  11211. "description": "An armored GPG key to add",
  11212. "type": "string",
  11213. "uniqueItems": true,
  11214. "x-go-name": "ArmoredKey"
  11215. }
  11216. },
  11217. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11218. },
  11219. "CreateHookOption": {
  11220. "description": "CreateHookOption options when create a hook",
  11221. "type": "object",
  11222. "required": [
  11223. "type",
  11224. "config"
  11225. ],
  11226. "properties": {
  11227. "active": {
  11228. "type": "boolean",
  11229. "default": false,
  11230. "x-go-name": "Active"
  11231. },
  11232. "branch_filter": {
  11233. "type": "string",
  11234. "x-go-name": "BranchFilter"
  11235. },
  11236. "config": {
  11237. "$ref": "#/definitions/CreateHookOptionConfig"
  11238. },
  11239. "events": {
  11240. "type": "array",
  11241. "items": {
  11242. "type": "string"
  11243. },
  11244. "x-go-name": "Events"
  11245. },
  11246. "type": {
  11247. "type": "string",
  11248. "enum": [
  11249. "dingtalk",
  11250. "discord",
  11251. "gitea",
  11252. "gogs",
  11253. "msteams",
  11254. "slack",
  11255. "telegram",
  11256. "feishu"
  11257. ],
  11258. "x-go-name": "Type"
  11259. }
  11260. },
  11261. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11262. },
  11263. "CreateHookOptionConfig": {
  11264. "description": "CreateHookOptionConfig has all config options in it\nrequired are \"content_type\" and \"url\" Required",
  11265. "type": "object",
  11266. "additionalProperties": {
  11267. "type": "string"
  11268. },
  11269. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11270. },
  11271. "CreateIssueCommentOption": {
  11272. "description": "CreateIssueCommentOption options for creating a comment on an issue",
  11273. "type": "object",
  11274. "required": [
  11275. "body"
  11276. ],
  11277. "properties": {
  11278. "body": {
  11279. "type": "string",
  11280. "x-go-name": "Body"
  11281. }
  11282. },
  11283. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11284. },
  11285. "CreateIssueOption": {
  11286. "description": "CreateIssueOption options to create one issue",
  11287. "type": "object",
  11288. "required": [
  11289. "title"
  11290. ],
  11291. "properties": {
  11292. "assignee": {
  11293. "description": "username of assignee",
  11294. "type": "string",
  11295. "x-go-name": "Assignee"
  11296. },
  11297. "assignees": {
  11298. "type": "array",
  11299. "items": {
  11300. "type": "string"
  11301. },
  11302. "x-go-name": "Assignees"
  11303. },
  11304. "body": {
  11305. "type": "string",
  11306. "x-go-name": "Body"
  11307. },
  11308. "closed": {
  11309. "type": "boolean",
  11310. "x-go-name": "Closed"
  11311. },
  11312. "due_date": {
  11313. "type": "string",
  11314. "format": "date-time",
  11315. "x-go-name": "Deadline"
  11316. },
  11317. "labels": {
  11318. "description": "list of label ids",
  11319. "type": "array",
  11320. "items": {
  11321. "type": "integer",
  11322. "format": "int64"
  11323. },
  11324. "x-go-name": "Labels"
  11325. },
  11326. "milestone": {
  11327. "description": "milestone id",
  11328. "type": "integer",
  11329. "format": "int64",
  11330. "x-go-name": "Milestone"
  11331. },
  11332. "title": {
  11333. "type": "string",
  11334. "x-go-name": "Title"
  11335. }
  11336. },
  11337. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11338. },
  11339. "CreateKeyOption": {
  11340. "description": "CreateKeyOption options when creating a key",
  11341. "type": "object",
  11342. "required": [
  11343. "title",
  11344. "key"
  11345. ],
  11346. "properties": {
  11347. "key": {
  11348. "description": "An armored SSH key to add",
  11349. "type": "string",
  11350. "uniqueItems": true,
  11351. "x-go-name": "Key"
  11352. },
  11353. "read_only": {
  11354. "description": "Describe if the key has only read access or read/write",
  11355. "type": "boolean",
  11356. "x-go-name": "ReadOnly"
  11357. },
  11358. "title": {
  11359. "description": "Title of the key to add",
  11360. "type": "string",
  11361. "uniqueItems": true,
  11362. "x-go-name": "Title"
  11363. }
  11364. },
  11365. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11366. },
  11367. "CreateLabelOption": {
  11368. "description": "CreateLabelOption options for creating a label",
  11369. "type": "object",
  11370. "required": [
  11371. "name",
  11372. "color"
  11373. ],
  11374. "properties": {
  11375. "color": {
  11376. "type": "string",
  11377. "x-go-name": "Color",
  11378. "example": "#00aabb"
  11379. },
  11380. "description": {
  11381. "type": "string",
  11382. "x-go-name": "Description"
  11383. },
  11384. "name": {
  11385. "type": "string",
  11386. "x-go-name": "Name"
  11387. }
  11388. },
  11389. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11390. },
  11391. "CreateMilestoneOption": {
  11392. "description": "CreateMilestoneOption options for creating a milestone",
  11393. "type": "object",
  11394. "properties": {
  11395. "description": {
  11396. "type": "string",
  11397. "x-go-name": "Description"
  11398. },
  11399. "due_on": {
  11400. "type": "string",
  11401. "format": "date-time",
  11402. "x-go-name": "Deadline"
  11403. },
  11404. "state": {
  11405. "type": "string",
  11406. "enum": [
  11407. "open",
  11408. "closed"
  11409. ],
  11410. "x-go-name": "State"
  11411. },
  11412. "title": {
  11413. "type": "string",
  11414. "x-go-name": "Title"
  11415. }
  11416. },
  11417. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11418. },
  11419. "CreateOAuth2ApplicationOptions": {
  11420. "description": "CreateOAuth2ApplicationOptions holds options to create an oauth2 application",
  11421. "type": "object",
  11422. "properties": {
  11423. "name": {
  11424. "type": "string",
  11425. "x-go-name": "Name"
  11426. },
  11427. "redirect_uris": {
  11428. "type": "array",
  11429. "items": {
  11430. "type": "string"
  11431. },
  11432. "x-go-name": "RedirectURIs"
  11433. }
  11434. },
  11435. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11436. },
  11437. "CreateOrgOption": {
  11438. "description": "CreateOrgOption options for creating an organization",
  11439. "type": "object",
  11440. "required": [
  11441. "username"
  11442. ],
  11443. "properties": {
  11444. "description": {
  11445. "type": "string",
  11446. "x-go-name": "Description"
  11447. },
  11448. "full_name": {
  11449. "type": "string",
  11450. "x-go-name": "FullName"
  11451. },
  11452. "location": {
  11453. "type": "string",
  11454. "x-go-name": "Location"
  11455. },
  11456. "repo_admin_change_team_access": {
  11457. "type": "boolean",
  11458. "x-go-name": "RepoAdminChangeTeamAccess"
  11459. },
  11460. "username": {
  11461. "type": "string",
  11462. "x-go-name": "UserName"
  11463. },
  11464. "visibility": {
  11465. "description": "possible values are `public` (default), `limited` or `private`",
  11466. "type": "string",
  11467. "enum": [
  11468. "public",
  11469. "limited",
  11470. "private"
  11471. ],
  11472. "x-go-name": "Visibility"
  11473. },
  11474. "website": {
  11475. "type": "string",
  11476. "x-go-name": "Website"
  11477. }
  11478. },
  11479. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11480. },
  11481. "CreatePullRequestOption": {
  11482. "description": "CreatePullRequestOption options when creating a pull request",
  11483. "type": "object",
  11484. "properties": {
  11485. "assignee": {
  11486. "type": "string",
  11487. "x-go-name": "Assignee"
  11488. },
  11489. "assignees": {
  11490. "type": "array",
  11491. "items": {
  11492. "type": "string"
  11493. },
  11494. "x-go-name": "Assignees"
  11495. },
  11496. "base": {
  11497. "type": "string",
  11498. "x-go-name": "Base"
  11499. },
  11500. "body": {
  11501. "type": "string",
  11502. "x-go-name": "Body"
  11503. },
  11504. "due_date": {
  11505. "type": "string",
  11506. "format": "date-time",
  11507. "x-go-name": "Deadline"
  11508. },
  11509. "head": {
  11510. "type": "string",
  11511. "x-go-name": "Head"
  11512. },
  11513. "labels": {
  11514. "type": "array",
  11515. "items": {
  11516. "type": "integer",
  11517. "format": "int64"
  11518. },
  11519. "x-go-name": "Labels"
  11520. },
  11521. "milestone": {
  11522. "type": "integer",
  11523. "format": "int64",
  11524. "x-go-name": "Milestone"
  11525. },
  11526. "title": {
  11527. "type": "string",
  11528. "x-go-name": "Title"
  11529. }
  11530. },
  11531. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11532. },
  11533. "CreatePullReviewComment": {
  11534. "description": "CreatePullReviewComment represent a review comment for creation api",
  11535. "type": "object",
  11536. "properties": {
  11537. "body": {
  11538. "type": "string",
  11539. "x-go-name": "Body"
  11540. },
  11541. "new_position": {
  11542. "description": "if comment to new file line or 0",
  11543. "type": "integer",
  11544. "format": "int64",
  11545. "x-go-name": "NewLineNum"
  11546. },
  11547. "old_position": {
  11548. "description": "if comment to old file line or 0",
  11549. "type": "integer",
  11550. "format": "int64",
  11551. "x-go-name": "OldLineNum"
  11552. },
  11553. "path": {
  11554. "description": "the tree path",
  11555. "type": "string",
  11556. "x-go-name": "Path"
  11557. }
  11558. },
  11559. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11560. },
  11561. "CreatePullReviewOptions": {
  11562. "description": "CreatePullReviewOptions are options to create a pull review",
  11563. "type": "object",
  11564. "properties": {
  11565. "body": {
  11566. "type": "string",
  11567. "x-go-name": "Body"
  11568. },
  11569. "comments": {
  11570. "type": "array",
  11571. "items": {
  11572. "$ref": "#/definitions/CreatePullReviewComment"
  11573. },
  11574. "x-go-name": "Comments"
  11575. },
  11576. "commit_id": {
  11577. "type": "string",
  11578. "x-go-name": "CommitID"
  11579. },
  11580. "event": {
  11581. "$ref": "#/definitions/ReviewStateType"
  11582. }
  11583. },
  11584. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11585. },
  11586. "CreateReleaseOption": {
  11587. "description": "CreateReleaseOption options when creating a release",
  11588. "type": "object",
  11589. "required": [
  11590. "tag_name"
  11591. ],
  11592. "properties": {
  11593. "body": {
  11594. "type": "string",
  11595. "x-go-name": "Note"
  11596. },
  11597. "draft": {
  11598. "type": "boolean",
  11599. "x-go-name": "IsDraft"
  11600. },
  11601. "name": {
  11602. "type": "string",
  11603. "x-go-name": "Title"
  11604. },
  11605. "prerelease": {
  11606. "type": "boolean",
  11607. "x-go-name": "IsPrerelease"
  11608. },
  11609. "tag_name": {
  11610. "type": "string",
  11611. "x-go-name": "TagName"
  11612. },
  11613. "target_commitish": {
  11614. "type": "string",
  11615. "x-go-name": "Target"
  11616. }
  11617. },
  11618. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11619. },
  11620. "CreateRepoOption": {
  11621. "description": "CreateRepoOption options when creating repository",
  11622. "type": "object",
  11623. "required": [
  11624. "name"
  11625. ],
  11626. "properties": {
  11627. "auto_init": {
  11628. "description": "Whether the repository should be auto-intialized?",
  11629. "type": "boolean",
  11630. "x-go-name": "AutoInit"
  11631. },
  11632. "default_branch": {
  11633. "description": "DefaultBranch of the repository (used when initializes and in template)",
  11634. "type": "string",
  11635. "x-go-name": "DefaultBranch"
  11636. },
  11637. "description": {
  11638. "description": "Description of the repository to create",
  11639. "type": "string",
  11640. "x-go-name": "Description"
  11641. },
  11642. "gitignores": {
  11643. "description": "Gitignores to use",
  11644. "type": "string",
  11645. "x-go-name": "Gitignores"
  11646. },
  11647. "issue_labels": {
  11648. "description": "Issue Label set to use",
  11649. "type": "string",
  11650. "x-go-name": "IssueLabels"
  11651. },
  11652. "license": {
  11653. "description": "License to use",
  11654. "type": "string",
  11655. "x-go-name": "License"
  11656. },
  11657. "name": {
  11658. "description": "Name of the repository to create",
  11659. "type": "string",
  11660. "uniqueItems": true,
  11661. "x-go-name": "Name"
  11662. },
  11663. "private": {
  11664. "description": "Whether the repository is private",
  11665. "type": "boolean",
  11666. "x-go-name": "Private"
  11667. },
  11668. "readme": {
  11669. "description": "Readme of the repository to create",
  11670. "type": "string",
  11671. "x-go-name": "Readme"
  11672. }
  11673. },
  11674. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11675. },
  11676. "CreateStatusOption": {
  11677. "description": "CreateStatusOption holds the information needed to create a new Status for a Commit",
  11678. "type": "object",
  11679. "properties": {
  11680. "context": {
  11681. "type": "string",
  11682. "x-go-name": "Context"
  11683. },
  11684. "description": {
  11685. "type": "string",
  11686. "x-go-name": "Description"
  11687. },
  11688. "state": {
  11689. "$ref": "#/definitions/StatusState"
  11690. },
  11691. "target_url": {
  11692. "type": "string",
  11693. "x-go-name": "TargetURL"
  11694. }
  11695. },
  11696. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11697. },
  11698. "CreateTeamOption": {
  11699. "description": "CreateTeamOption options for creating a team",
  11700. "type": "object",
  11701. "required": [
  11702. "name"
  11703. ],
  11704. "properties": {
  11705. "can_create_org_repo": {
  11706. "type": "boolean",
  11707. "x-go-name": "CanCreateOrgRepo"
  11708. },
  11709. "description": {
  11710. "type": "string",
  11711. "x-go-name": "Description"
  11712. },
  11713. "includes_all_repositories": {
  11714. "type": "boolean",
  11715. "x-go-name": "IncludesAllRepositories"
  11716. },
  11717. "name": {
  11718. "type": "string",
  11719. "x-go-name": "Name"
  11720. },
  11721. "permission": {
  11722. "type": "string",
  11723. "enum": [
  11724. "read",
  11725. "write",
  11726. "admin"
  11727. ],
  11728. "x-go-name": "Permission"
  11729. },
  11730. "units": {
  11731. "type": "array",
  11732. "items": {
  11733. "type": "string"
  11734. },
  11735. "x-go-name": "Units",
  11736. "example": [
  11737. "repo.code",
  11738. "repo.issues",
  11739. "repo.ext_issues",
  11740. "repo.wiki",
  11741. "repo.pulls",
  11742. "repo.releases",
  11743. "repo.ext_wiki"
  11744. ]
  11745. }
  11746. },
  11747. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11748. },
  11749. "CreateUserOption": {
  11750. "description": "CreateUserOption create user options",
  11751. "type": "object",
  11752. "required": [
  11753. "username",
  11754. "email",
  11755. "password"
  11756. ],
  11757. "properties": {
  11758. "email": {
  11759. "type": "string",
  11760. "format": "email",
  11761. "x-go-name": "Email"
  11762. },
  11763. "full_name": {
  11764. "type": "string",
  11765. "x-go-name": "FullName"
  11766. },
  11767. "login_name": {
  11768. "type": "string",
  11769. "x-go-name": "LoginName"
  11770. },
  11771. "must_change_password": {
  11772. "type": "boolean",
  11773. "x-go-name": "MustChangePassword"
  11774. },
  11775. "password": {
  11776. "type": "string",
  11777. "x-go-name": "Password"
  11778. },
  11779. "send_notify": {
  11780. "type": "boolean",
  11781. "x-go-name": "SendNotify"
  11782. },
  11783. "source_id": {
  11784. "type": "integer",
  11785. "format": "int64",
  11786. "x-go-name": "SourceID"
  11787. },
  11788. "username": {
  11789. "type": "string",
  11790. "x-go-name": "Username"
  11791. }
  11792. },
  11793. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11794. },
  11795. "DeleteEmailOption": {
  11796. "description": "DeleteEmailOption options when deleting email addresses",
  11797. "type": "object",
  11798. "properties": {
  11799. "emails": {
  11800. "description": "email addresses to delete",
  11801. "type": "array",
  11802. "items": {
  11803. "type": "string"
  11804. },
  11805. "x-go-name": "Emails"
  11806. }
  11807. },
  11808. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11809. },
  11810. "DeleteFileOptions": {
  11811. "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)",
  11812. "type": "object",
  11813. "required": [
  11814. "sha"
  11815. ],
  11816. "properties": {
  11817. "author": {
  11818. "$ref": "#/definitions/Identity"
  11819. },
  11820. "branch": {
  11821. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  11822. "type": "string",
  11823. "x-go-name": "BranchName"
  11824. },
  11825. "committer": {
  11826. "$ref": "#/definitions/Identity"
  11827. },
  11828. "dates": {
  11829. "$ref": "#/definitions/CommitDateOptions"
  11830. },
  11831. "message": {
  11832. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  11833. "type": "string",
  11834. "x-go-name": "Message"
  11835. },
  11836. "new_branch": {
  11837. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  11838. "type": "string",
  11839. "x-go-name": "NewBranchName"
  11840. },
  11841. "sha": {
  11842. "description": "sha is the SHA for the file that already exists",
  11843. "type": "string",
  11844. "x-go-name": "SHA"
  11845. }
  11846. },
  11847. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11848. },
  11849. "DeployKey": {
  11850. "description": "DeployKey a deploy key",
  11851. "type": "object",
  11852. "properties": {
  11853. "created_at": {
  11854. "type": "string",
  11855. "format": "date-time",
  11856. "x-go-name": "Created"
  11857. },
  11858. "fingerprint": {
  11859. "type": "string",
  11860. "x-go-name": "Fingerprint"
  11861. },
  11862. "id": {
  11863. "type": "integer",
  11864. "format": "int64",
  11865. "x-go-name": "ID"
  11866. },
  11867. "key": {
  11868. "type": "string",
  11869. "x-go-name": "Key"
  11870. },
  11871. "key_id": {
  11872. "type": "integer",
  11873. "format": "int64",
  11874. "x-go-name": "KeyID"
  11875. },
  11876. "read_only": {
  11877. "type": "boolean",
  11878. "x-go-name": "ReadOnly"
  11879. },
  11880. "repository": {
  11881. "$ref": "#/definitions/Repository"
  11882. },
  11883. "title": {
  11884. "type": "string",
  11885. "x-go-name": "Title"
  11886. },
  11887. "url": {
  11888. "type": "string",
  11889. "x-go-name": "URL"
  11890. }
  11891. },
  11892. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11893. },
  11894. "EditAttachmentOptions": {
  11895. "description": "EditAttachmentOptions options for editing attachments",
  11896. "type": "object",
  11897. "properties": {
  11898. "name": {
  11899. "type": "string",
  11900. "x-go-name": "Name"
  11901. }
  11902. },
  11903. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11904. },
  11905. "EditBranchProtectionOption": {
  11906. "description": "EditBranchProtectionOption options for editing a branch protection",
  11907. "type": "object",
  11908. "properties": {
  11909. "approvals_whitelist_teams": {
  11910. "type": "array",
  11911. "items": {
  11912. "type": "string"
  11913. },
  11914. "x-go-name": "ApprovalsWhitelistTeams"
  11915. },
  11916. "approvals_whitelist_username": {
  11917. "type": "array",
  11918. "items": {
  11919. "type": "string"
  11920. },
  11921. "x-go-name": "ApprovalsWhitelistUsernames"
  11922. },
  11923. "block_on_outdated_branch": {
  11924. "type": "boolean",
  11925. "x-go-name": "BlockOnOutdatedBranch"
  11926. },
  11927. "block_on_rejected_reviews": {
  11928. "type": "boolean",
  11929. "x-go-name": "BlockOnRejectedReviews"
  11930. },
  11931. "dismiss_stale_approvals": {
  11932. "type": "boolean",
  11933. "x-go-name": "DismissStaleApprovals"
  11934. },
  11935. "enable_approvals_whitelist": {
  11936. "type": "boolean",
  11937. "x-go-name": "EnableApprovalsWhitelist"
  11938. },
  11939. "enable_merge_whitelist": {
  11940. "type": "boolean",
  11941. "x-go-name": "EnableMergeWhitelist"
  11942. },
  11943. "enable_push": {
  11944. "type": "boolean",
  11945. "x-go-name": "EnablePush"
  11946. },
  11947. "enable_push_whitelist": {
  11948. "type": "boolean",
  11949. "x-go-name": "EnablePushWhitelist"
  11950. },
  11951. "enable_status_check": {
  11952. "type": "boolean",
  11953. "x-go-name": "EnableStatusCheck"
  11954. },
  11955. "merge_whitelist_teams": {
  11956. "type": "array",
  11957. "items": {
  11958. "type": "string"
  11959. },
  11960. "x-go-name": "MergeWhitelistTeams"
  11961. },
  11962. "merge_whitelist_usernames": {
  11963. "type": "array",
  11964. "items": {
  11965. "type": "string"
  11966. },
  11967. "x-go-name": "MergeWhitelistUsernames"
  11968. },
  11969. "protected_file_patterns": {
  11970. "type": "string",
  11971. "x-go-name": "ProtectedFilePatterns"
  11972. },
  11973. "push_whitelist_deploy_keys": {
  11974. "type": "boolean",
  11975. "x-go-name": "PushWhitelistDeployKeys"
  11976. },
  11977. "push_whitelist_teams": {
  11978. "type": "array",
  11979. "items": {
  11980. "type": "string"
  11981. },
  11982. "x-go-name": "PushWhitelistTeams"
  11983. },
  11984. "push_whitelist_usernames": {
  11985. "type": "array",
  11986. "items": {
  11987. "type": "string"
  11988. },
  11989. "x-go-name": "PushWhitelistUsernames"
  11990. },
  11991. "require_signed_commits": {
  11992. "type": "boolean",
  11993. "x-go-name": "RequireSignedCommits"
  11994. },
  11995. "required_approvals": {
  11996. "type": "integer",
  11997. "format": "int64",
  11998. "x-go-name": "RequiredApprovals"
  11999. },
  12000. "status_check_contexts": {
  12001. "type": "array",
  12002. "items": {
  12003. "type": "string"
  12004. },
  12005. "x-go-name": "StatusCheckContexts"
  12006. }
  12007. },
  12008. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12009. },
  12010. "EditDeadlineOption": {
  12011. "description": "EditDeadlineOption options for creating a deadline",
  12012. "type": "object",
  12013. "required": [
  12014. "due_date"
  12015. ],
  12016. "properties": {
  12017. "due_date": {
  12018. "type": "string",
  12019. "format": "date-time",
  12020. "x-go-name": "Deadline"
  12021. }
  12022. },
  12023. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12024. },
  12025. "EditGitHookOption": {
  12026. "description": "EditGitHookOption options when modifying one Git hook",
  12027. "type": "object",
  12028. "properties": {
  12029. "content": {
  12030. "type": "string",
  12031. "x-go-name": "Content"
  12032. }
  12033. },
  12034. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12035. },
  12036. "EditHookOption": {
  12037. "description": "EditHookOption options when modify one hook",
  12038. "type": "object",
  12039. "properties": {
  12040. "active": {
  12041. "type": "boolean",
  12042. "x-go-name": "Active"
  12043. },
  12044. "branch_filter": {
  12045. "type": "string",
  12046. "x-go-name": "BranchFilter"
  12047. },
  12048. "config": {
  12049. "type": "object",
  12050. "additionalProperties": {
  12051. "type": "string"
  12052. },
  12053. "x-go-name": "Config"
  12054. },
  12055. "events": {
  12056. "type": "array",
  12057. "items": {
  12058. "type": "string"
  12059. },
  12060. "x-go-name": "Events"
  12061. }
  12062. },
  12063. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12064. },
  12065. "EditIssueCommentOption": {
  12066. "description": "EditIssueCommentOption options for editing a comment",
  12067. "type": "object",
  12068. "required": [
  12069. "body"
  12070. ],
  12071. "properties": {
  12072. "body": {
  12073. "type": "string",
  12074. "x-go-name": "Body"
  12075. }
  12076. },
  12077. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12078. },
  12079. "EditIssueOption": {
  12080. "description": "EditIssueOption options for editing an issue",
  12081. "type": "object",
  12082. "properties": {
  12083. "assignee": {
  12084. "type": "string",
  12085. "x-go-name": "Assignee"
  12086. },
  12087. "assignees": {
  12088. "type": "array",
  12089. "items": {
  12090. "type": "string"
  12091. },
  12092. "x-go-name": "Assignees"
  12093. },
  12094. "body": {
  12095. "type": "string",
  12096. "x-go-name": "Body"
  12097. },
  12098. "due_date": {
  12099. "type": "string",
  12100. "format": "date-time",
  12101. "x-go-name": "Deadline"
  12102. },
  12103. "milestone": {
  12104. "type": "integer",
  12105. "format": "int64",
  12106. "x-go-name": "Milestone"
  12107. },
  12108. "state": {
  12109. "type": "string",
  12110. "x-go-name": "State"
  12111. },
  12112. "title": {
  12113. "type": "string",
  12114. "x-go-name": "Title"
  12115. },
  12116. "unset_due_date": {
  12117. "type": "boolean",
  12118. "x-go-name": "RemoveDeadline"
  12119. }
  12120. },
  12121. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12122. },
  12123. "EditLabelOption": {
  12124. "description": "EditLabelOption options for editing a label",
  12125. "type": "object",
  12126. "properties": {
  12127. "color": {
  12128. "type": "string",
  12129. "x-go-name": "Color"
  12130. },
  12131. "description": {
  12132. "type": "string",
  12133. "x-go-name": "Description"
  12134. },
  12135. "name": {
  12136. "type": "string",
  12137. "x-go-name": "Name"
  12138. }
  12139. },
  12140. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12141. },
  12142. "EditMilestoneOption": {
  12143. "description": "EditMilestoneOption options for editing a milestone",
  12144. "type": "object",
  12145. "properties": {
  12146. "description": {
  12147. "type": "string",
  12148. "x-go-name": "Description"
  12149. },
  12150. "due_on": {
  12151. "type": "string",
  12152. "format": "date-time",
  12153. "x-go-name": "Deadline"
  12154. },
  12155. "state": {
  12156. "type": "string",
  12157. "x-go-name": "State"
  12158. },
  12159. "title": {
  12160. "type": "string",
  12161. "x-go-name": "Title"
  12162. }
  12163. },
  12164. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12165. },
  12166. "EditOrgOption": {
  12167. "description": "EditOrgOption options for editing an organization",
  12168. "type": "object",
  12169. "properties": {
  12170. "description": {
  12171. "type": "string",
  12172. "x-go-name": "Description"
  12173. },
  12174. "full_name": {
  12175. "type": "string",
  12176. "x-go-name": "FullName"
  12177. },
  12178. "location": {
  12179. "type": "string",
  12180. "x-go-name": "Location"
  12181. },
  12182. "repo_admin_change_team_access": {
  12183. "type": "boolean",
  12184. "x-go-name": "RepoAdminChangeTeamAccess"
  12185. },
  12186. "visibility": {
  12187. "description": "possible values are `public`, `limited` or `private`",
  12188. "type": "string",
  12189. "enum": [
  12190. "public",
  12191. "limited",
  12192. "private"
  12193. ],
  12194. "x-go-name": "Visibility"
  12195. },
  12196. "website": {
  12197. "type": "string",
  12198. "x-go-name": "Website"
  12199. }
  12200. },
  12201. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12202. },
  12203. "EditPullRequestOption": {
  12204. "description": "EditPullRequestOption options when modify pull request",
  12205. "type": "object",
  12206. "properties": {
  12207. "assignee": {
  12208. "type": "string",
  12209. "x-go-name": "Assignee"
  12210. },
  12211. "assignees": {
  12212. "type": "array",
  12213. "items": {
  12214. "type": "string"
  12215. },
  12216. "x-go-name": "Assignees"
  12217. },
  12218. "base": {
  12219. "type": "string",
  12220. "x-go-name": "Base"
  12221. },
  12222. "body": {
  12223. "type": "string",
  12224. "x-go-name": "Body"
  12225. },
  12226. "due_date": {
  12227. "type": "string",
  12228. "format": "date-time",
  12229. "x-go-name": "Deadline"
  12230. },
  12231. "labels": {
  12232. "type": "array",
  12233. "items": {
  12234. "type": "integer",
  12235. "format": "int64"
  12236. },
  12237. "x-go-name": "Labels"
  12238. },
  12239. "milestone": {
  12240. "type": "integer",
  12241. "format": "int64",
  12242. "x-go-name": "Milestone"
  12243. },
  12244. "state": {
  12245. "type": "string",
  12246. "x-go-name": "State"
  12247. },
  12248. "title": {
  12249. "type": "string",
  12250. "x-go-name": "Title"
  12251. },
  12252. "unset_due_date": {
  12253. "type": "boolean",
  12254. "x-go-name": "RemoveDeadline"
  12255. }
  12256. },
  12257. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12258. },
  12259. "EditReactionOption": {
  12260. "description": "EditReactionOption contain the reaction type",
  12261. "type": "object",
  12262. "properties": {
  12263. "content": {
  12264. "type": "string",
  12265. "x-go-name": "Reaction"
  12266. }
  12267. },
  12268. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12269. },
  12270. "EditReleaseOption": {
  12271. "description": "EditReleaseOption options when editing a release",
  12272. "type": "object",
  12273. "properties": {
  12274. "body": {
  12275. "type": "string",
  12276. "x-go-name": "Note"
  12277. },
  12278. "draft": {
  12279. "type": "boolean",
  12280. "x-go-name": "IsDraft"
  12281. },
  12282. "name": {
  12283. "type": "string",
  12284. "x-go-name": "Title"
  12285. },
  12286. "prerelease": {
  12287. "type": "boolean",
  12288. "x-go-name": "IsPrerelease"
  12289. },
  12290. "tag_name": {
  12291. "type": "string",
  12292. "x-go-name": "TagName"
  12293. },
  12294. "target_commitish": {
  12295. "type": "string",
  12296. "x-go-name": "Target"
  12297. }
  12298. },
  12299. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12300. },
  12301. "EditRepoOption": {
  12302. "description": "EditRepoOption options when editing a repository's properties",
  12303. "type": "object",
  12304. "properties": {
  12305. "allow_merge_commits": {
  12306. "description": "either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits. `has_pull_requests` must be `true`.",
  12307. "type": "boolean",
  12308. "x-go-name": "AllowMerge"
  12309. },
  12310. "allow_rebase": {
  12311. "description": "either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging. `has_pull_requests` must be `true`.",
  12312. "type": "boolean",
  12313. "x-go-name": "AllowRebase"
  12314. },
  12315. "allow_rebase_explicit": {
  12316. "description": "either `true` to allow rebase with explicit merge commits (--no-ff), or `false` to prevent rebase with explicit merge commits. `has_pull_requests` must be `true`.",
  12317. "type": "boolean",
  12318. "x-go-name": "AllowRebaseMerge"
  12319. },
  12320. "allow_squash_merge": {
  12321. "description": "either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging. `has_pull_requests` must be `true`.",
  12322. "type": "boolean",
  12323. "x-go-name": "AllowSquash"
  12324. },
  12325. "archived": {
  12326. "description": "set to `true` to archive this repository.",
  12327. "type": "boolean",
  12328. "x-go-name": "Archived"
  12329. },
  12330. "default_branch": {
  12331. "description": "sets the default branch for this repository.",
  12332. "type": "string",
  12333. "x-go-name": "DefaultBranch"
  12334. },
  12335. "description": {
  12336. "description": "a short description of the repository.",
  12337. "type": "string",
  12338. "x-go-name": "Description"
  12339. },
  12340. "external_tracker": {
  12341. "$ref": "#/definitions/ExternalTracker"
  12342. },
  12343. "external_wiki": {
  12344. "$ref": "#/definitions/ExternalWiki"
  12345. },
  12346. "has_issues": {
  12347. "description": "either `true` to enable issues for this repository or `false` to disable them.",
  12348. "type": "boolean",
  12349. "x-go-name": "HasIssues"
  12350. },
  12351. "has_pull_requests": {
  12352. "description": "either `true` to allow pull requests, or `false` to prevent pull request.",
  12353. "type": "boolean",
  12354. "x-go-name": "HasPullRequests"
  12355. },
  12356. "has_wiki": {
  12357. "description": "either `true` to enable the wiki for this repository or `false` to disable it.",
  12358. "type": "boolean",
  12359. "x-go-name": "HasWiki"
  12360. },
  12361. "ignore_whitespace_conflicts": {
  12362. "description": "either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace. `has_pull_requests` must be `true`.",
  12363. "type": "boolean",
  12364. "x-go-name": "IgnoreWhitespaceConflicts"
  12365. },
  12366. "internal_tracker": {
  12367. "$ref": "#/definitions/InternalTracker"
  12368. },
  12369. "name": {
  12370. "description": "name of the repository",
  12371. "type": "string",
  12372. "uniqueItems": true,
  12373. "x-go-name": "Name"
  12374. },
  12375. "private": {
  12376. "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.",
  12377. "type": "boolean",
  12378. "x-go-name": "Private"
  12379. },
  12380. "template": {
  12381. "description": "either `true` to make this repository a template or `false` to make it a normal repository",
  12382. "type": "boolean",
  12383. "x-go-name": "Template"
  12384. },
  12385. "website": {
  12386. "description": "a URL with more information about the repository.",
  12387. "type": "string",
  12388. "x-go-name": "Website"
  12389. }
  12390. },
  12391. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12392. },
  12393. "EditTeamOption": {
  12394. "description": "EditTeamOption options for editing a team",
  12395. "type": "object",
  12396. "required": [
  12397. "name"
  12398. ],
  12399. "properties": {
  12400. "can_create_org_repo": {
  12401. "type": "boolean",
  12402. "x-go-name": "CanCreateOrgRepo"
  12403. },
  12404. "description": {
  12405. "type": "string",
  12406. "x-go-name": "Description"
  12407. },
  12408. "includes_all_repositories": {
  12409. "type": "boolean",
  12410. "x-go-name": "IncludesAllRepositories"
  12411. },
  12412. "name": {
  12413. "type": "string",
  12414. "x-go-name": "Name"
  12415. },
  12416. "permission": {
  12417. "type": "string",
  12418. "enum": [
  12419. "read",
  12420. "write",
  12421. "admin"
  12422. ],
  12423. "x-go-name": "Permission"
  12424. },
  12425. "units": {
  12426. "type": "array",
  12427. "items": {
  12428. "type": "string"
  12429. },
  12430. "x-go-name": "Units",
  12431. "example": [
  12432. "repo.code",
  12433. "repo.issues",
  12434. "repo.ext_issues",
  12435. "repo.wiki",
  12436. "repo.pulls",
  12437. "repo.releases",
  12438. "repo.ext_wiki"
  12439. ]
  12440. }
  12441. },
  12442. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12443. },
  12444. "EditUserOption": {
  12445. "description": "EditUserOption edit user options",
  12446. "type": "object",
  12447. "required": [
  12448. "email"
  12449. ],
  12450. "properties": {
  12451. "active": {
  12452. "type": "boolean",
  12453. "x-go-name": "Active"
  12454. },
  12455. "admin": {
  12456. "type": "boolean",
  12457. "x-go-name": "Admin"
  12458. },
  12459. "allow_create_organization": {
  12460. "type": "boolean",
  12461. "x-go-name": "AllowCreateOrganization"
  12462. },
  12463. "allow_git_hook": {
  12464. "type": "boolean",
  12465. "x-go-name": "AllowGitHook"
  12466. },
  12467. "allow_import_local": {
  12468. "type": "boolean",
  12469. "x-go-name": "AllowImportLocal"
  12470. },
  12471. "email": {
  12472. "type": "string",
  12473. "format": "email",
  12474. "x-go-name": "Email"
  12475. },
  12476. "full_name": {
  12477. "type": "string",
  12478. "x-go-name": "FullName"
  12479. },
  12480. "location": {
  12481. "type": "string",
  12482. "x-go-name": "Location"
  12483. },
  12484. "login_name": {
  12485. "type": "string",
  12486. "x-go-name": "LoginName"
  12487. },
  12488. "max_repo_creation": {
  12489. "type": "integer",
  12490. "format": "int64",
  12491. "x-go-name": "MaxRepoCreation"
  12492. },
  12493. "must_change_password": {
  12494. "type": "boolean",
  12495. "x-go-name": "MustChangePassword"
  12496. },
  12497. "password": {
  12498. "type": "string",
  12499. "x-go-name": "Password"
  12500. },
  12501. "prohibit_login": {
  12502. "type": "boolean",
  12503. "x-go-name": "ProhibitLogin"
  12504. },
  12505. "source_id": {
  12506. "type": "integer",
  12507. "format": "int64",
  12508. "x-go-name": "SourceID"
  12509. },
  12510. "website": {
  12511. "type": "string",
  12512. "x-go-name": "Website"
  12513. }
  12514. },
  12515. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12516. },
  12517. "Email": {
  12518. "description": "Email an email address belonging to a user",
  12519. "type": "object",
  12520. "properties": {
  12521. "email": {
  12522. "type": "string",
  12523. "format": "email",
  12524. "x-go-name": "Email"
  12525. },
  12526. "primary": {
  12527. "type": "boolean",
  12528. "x-go-name": "Primary"
  12529. },
  12530. "verified": {
  12531. "type": "boolean",
  12532. "x-go-name": "Verified"
  12533. }
  12534. },
  12535. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12536. },
  12537. "ExternalTracker": {
  12538. "description": "ExternalTracker represents settings for external tracker",
  12539. "type": "object",
  12540. "properties": {
  12541. "external_tracker_format": {
  12542. "description": "External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.",
  12543. "type": "string",
  12544. "x-go-name": "ExternalTrackerFormat"
  12545. },
  12546. "external_tracker_style": {
  12547. "description": "External Issue Tracker Number Format, either `numeric` or `alphanumeric`",
  12548. "type": "string",
  12549. "x-go-name": "ExternalTrackerStyle"
  12550. },
  12551. "external_tracker_url": {
  12552. "description": "URL of external issue tracker.",
  12553. "type": "string",
  12554. "x-go-name": "ExternalTrackerURL"
  12555. }
  12556. },
  12557. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12558. },
  12559. "ExternalWiki": {
  12560. "description": "ExternalWiki represents setting for external wiki",
  12561. "type": "object",
  12562. "properties": {
  12563. "external_wiki_url": {
  12564. "description": "URL of external wiki.",
  12565. "type": "string",
  12566. "x-go-name": "ExternalWikiURL"
  12567. }
  12568. },
  12569. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12570. },
  12571. "FileCommitResponse": {
  12572. "type": "object",
  12573. "title": "FileCommitResponse contains information generated from a Git commit for a repo's file.",
  12574. "properties": {
  12575. "author": {
  12576. "$ref": "#/definitions/CommitUser"
  12577. },
  12578. "committer": {
  12579. "$ref": "#/definitions/CommitUser"
  12580. },
  12581. "html_url": {
  12582. "type": "string",
  12583. "x-go-name": "HTMLURL"
  12584. },
  12585. "message": {
  12586. "type": "string",
  12587. "x-go-name": "Message"
  12588. },
  12589. "parents": {
  12590. "type": "array",
  12591. "items": {
  12592. "$ref": "#/definitions/CommitMeta"
  12593. },
  12594. "x-go-name": "Parents"
  12595. },
  12596. "sha": {
  12597. "type": "string",
  12598. "x-go-name": "SHA"
  12599. },
  12600. "tree": {
  12601. "$ref": "#/definitions/CommitMeta"
  12602. },
  12603. "url": {
  12604. "type": "string",
  12605. "x-go-name": "URL"
  12606. }
  12607. },
  12608. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12609. },
  12610. "FileDeleteResponse": {
  12611. "description": "FileDeleteResponse contains information about a repo's file that was deleted",
  12612. "type": "object",
  12613. "properties": {
  12614. "commit": {
  12615. "$ref": "#/definitions/FileCommitResponse"
  12616. },
  12617. "content": {
  12618. "type": "object",
  12619. "x-go-name": "Content"
  12620. },
  12621. "verification": {
  12622. "$ref": "#/definitions/PayloadCommitVerification"
  12623. }
  12624. },
  12625. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12626. },
  12627. "FileLinksResponse": {
  12628. "description": "FileLinksResponse contains the links for a repo's file",
  12629. "type": "object",
  12630. "properties": {
  12631. "git": {
  12632. "type": "string",
  12633. "x-go-name": "GitURL"
  12634. },
  12635. "html": {
  12636. "type": "string",
  12637. "x-go-name": "HTMLURL"
  12638. },
  12639. "self": {
  12640. "type": "string",
  12641. "x-go-name": "Self"
  12642. }
  12643. },
  12644. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12645. },
  12646. "FileResponse": {
  12647. "description": "FileResponse contains information about a repo's file",
  12648. "type": "object",
  12649. "properties": {
  12650. "commit": {
  12651. "$ref": "#/definitions/FileCommitResponse"
  12652. },
  12653. "content": {
  12654. "$ref": "#/definitions/ContentsResponse"
  12655. },
  12656. "verification": {
  12657. "$ref": "#/definitions/PayloadCommitVerification"
  12658. }
  12659. },
  12660. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12661. },
  12662. "GPGKey": {
  12663. "description": "GPGKey a user GPG key to sign commit and tag in repository",
  12664. "type": "object",
  12665. "properties": {
  12666. "can_certify": {
  12667. "type": "boolean",
  12668. "x-go-name": "CanCertify"
  12669. },
  12670. "can_encrypt_comms": {
  12671. "type": "boolean",
  12672. "x-go-name": "CanEncryptComms"
  12673. },
  12674. "can_encrypt_storage": {
  12675. "type": "boolean",
  12676. "x-go-name": "CanEncryptStorage"
  12677. },
  12678. "can_sign": {
  12679. "type": "boolean",
  12680. "x-go-name": "CanSign"
  12681. },
  12682. "created_at": {
  12683. "type": "string",
  12684. "format": "date-time",
  12685. "x-go-name": "Created"
  12686. },
  12687. "emails": {
  12688. "type": "array",
  12689. "items": {
  12690. "$ref": "#/definitions/GPGKeyEmail"
  12691. },
  12692. "x-go-name": "Emails"
  12693. },
  12694. "expires_at": {
  12695. "type": "string",
  12696. "format": "date-time",
  12697. "x-go-name": "Expires"
  12698. },
  12699. "id": {
  12700. "type": "integer",
  12701. "format": "int64",
  12702. "x-go-name": "ID"
  12703. },
  12704. "key_id": {
  12705. "type": "string",
  12706. "x-go-name": "KeyID"
  12707. },
  12708. "primary_key_id": {
  12709. "type": "string",
  12710. "x-go-name": "PrimaryKeyID"
  12711. },
  12712. "public_key": {
  12713. "type": "string",
  12714. "x-go-name": "PublicKey"
  12715. },
  12716. "subkeys": {
  12717. "type": "array",
  12718. "items": {
  12719. "$ref": "#/definitions/GPGKey"
  12720. },
  12721. "x-go-name": "SubsKey"
  12722. }
  12723. },
  12724. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12725. },
  12726. "GPGKeyEmail": {
  12727. "description": "GPGKeyEmail an email attached to a GPGKey",
  12728. "type": "object",
  12729. "properties": {
  12730. "email": {
  12731. "type": "string",
  12732. "x-go-name": "Email"
  12733. },
  12734. "verified": {
  12735. "type": "boolean",
  12736. "x-go-name": "Verified"
  12737. }
  12738. },
  12739. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12740. },
  12741. "GeneralRepoSettings": {
  12742. "description": "GeneralRepoSettings contains global repository settings exposed by API",
  12743. "type": "object",
  12744. "properties": {
  12745. "http_git_disabled": {
  12746. "type": "boolean",
  12747. "x-go-name": "HTTPGitDisabled"
  12748. },
  12749. "mirrors_disabled": {
  12750. "type": "boolean",
  12751. "x-go-name": "MirrorsDisabled"
  12752. }
  12753. },
  12754. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12755. },
  12756. "GeneralUISettings": {
  12757. "description": "GeneralUISettings contains global ui settings exposed by API",
  12758. "type": "object",
  12759. "properties": {
  12760. "allowed_reactions": {
  12761. "type": "array",
  12762. "items": {
  12763. "type": "string"
  12764. },
  12765. "x-go-name": "AllowedReactions"
  12766. }
  12767. },
  12768. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12769. },
  12770. "GitBlobResponse": {
  12771. "description": "GitBlobResponse represents a git blob",
  12772. "type": "object",
  12773. "properties": {
  12774. "content": {
  12775. "type": "string",
  12776. "x-go-name": "Content"
  12777. },
  12778. "encoding": {
  12779. "type": "string",
  12780. "x-go-name": "Encoding"
  12781. },
  12782. "sha": {
  12783. "type": "string",
  12784. "x-go-name": "SHA"
  12785. },
  12786. "size": {
  12787. "type": "integer",
  12788. "format": "int64",
  12789. "x-go-name": "Size"
  12790. },
  12791. "url": {
  12792. "type": "string",
  12793. "x-go-name": "URL"
  12794. }
  12795. },
  12796. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12797. },
  12798. "GitEntry": {
  12799. "description": "GitEntry represents a git tree",
  12800. "type": "object",
  12801. "properties": {
  12802. "mode": {
  12803. "type": "string",
  12804. "x-go-name": "Mode"
  12805. },
  12806. "path": {
  12807. "type": "string",
  12808. "x-go-name": "Path"
  12809. },
  12810. "sha": {
  12811. "type": "string",
  12812. "x-go-name": "SHA"
  12813. },
  12814. "size": {
  12815. "type": "integer",
  12816. "format": "int64",
  12817. "x-go-name": "Size"
  12818. },
  12819. "type": {
  12820. "type": "string",
  12821. "x-go-name": "Type"
  12822. },
  12823. "url": {
  12824. "type": "string",
  12825. "x-go-name": "URL"
  12826. }
  12827. },
  12828. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12829. },
  12830. "GitHook": {
  12831. "description": "GitHook represents a Git repository hook",
  12832. "type": "object",
  12833. "properties": {
  12834. "content": {
  12835. "type": "string",
  12836. "x-go-name": "Content"
  12837. },
  12838. "is_active": {
  12839. "type": "boolean",
  12840. "x-go-name": "IsActive"
  12841. },
  12842. "name": {
  12843. "type": "string",
  12844. "x-go-name": "Name"
  12845. }
  12846. },
  12847. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12848. },
  12849. "GitObject": {
  12850. "type": "object",
  12851. "title": "GitObject represents a Git object.",
  12852. "properties": {
  12853. "sha": {
  12854. "type": "string",
  12855. "x-go-name": "SHA"
  12856. },
  12857. "type": {
  12858. "type": "string",
  12859. "x-go-name": "Type"
  12860. },
  12861. "url": {
  12862. "type": "string",
  12863. "x-go-name": "URL"
  12864. }
  12865. },
  12866. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12867. },
  12868. "GitTreeResponse": {
  12869. "description": "GitTreeResponse returns a git tree",
  12870. "type": "object",
  12871. "properties": {
  12872. "page": {
  12873. "type": "integer",
  12874. "format": "int64",
  12875. "x-go-name": "Page"
  12876. },
  12877. "sha": {
  12878. "type": "string",
  12879. "x-go-name": "SHA"
  12880. },
  12881. "total_count": {
  12882. "type": "integer",
  12883. "format": "int64",
  12884. "x-go-name": "TotalCount"
  12885. },
  12886. "tree": {
  12887. "type": "array",
  12888. "items": {
  12889. "$ref": "#/definitions/GitEntry"
  12890. },
  12891. "x-go-name": "Entries"
  12892. },
  12893. "truncated": {
  12894. "type": "boolean",
  12895. "x-go-name": "Truncated"
  12896. },
  12897. "url": {
  12898. "type": "string",
  12899. "x-go-name": "URL"
  12900. }
  12901. },
  12902. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12903. },
  12904. "Hook": {
  12905. "description": "Hook a hook is a web hook when one repository changed",
  12906. "type": "object",
  12907. "properties": {
  12908. "active": {
  12909. "type": "boolean",
  12910. "x-go-name": "Active"
  12911. },
  12912. "config": {
  12913. "type": "object",
  12914. "additionalProperties": {
  12915. "type": "string"
  12916. },
  12917. "x-go-name": "Config"
  12918. },
  12919. "created_at": {
  12920. "type": "string",
  12921. "format": "date-time",
  12922. "x-go-name": "Created"
  12923. },
  12924. "events": {
  12925. "type": "array",
  12926. "items": {
  12927. "type": "string"
  12928. },
  12929. "x-go-name": "Events"
  12930. },
  12931. "id": {
  12932. "type": "integer",
  12933. "format": "int64",
  12934. "x-go-name": "ID"
  12935. },
  12936. "type": {
  12937. "type": "string",
  12938. "x-go-name": "Type"
  12939. },
  12940. "updated_at": {
  12941. "type": "string",
  12942. "format": "date-time",
  12943. "x-go-name": "Updated"
  12944. }
  12945. },
  12946. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12947. },
  12948. "Identity": {
  12949. "description": "Identity for a person's identity like an author or committer",
  12950. "type": "object",
  12951. "properties": {
  12952. "email": {
  12953. "type": "string",
  12954. "format": "email",
  12955. "x-go-name": "Email"
  12956. },
  12957. "name": {
  12958. "type": "string",
  12959. "x-go-name": "Name"
  12960. }
  12961. },
  12962. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12963. },
  12964. "InternalTracker": {
  12965. "description": "InternalTracker represents settings for internal tracker",
  12966. "type": "object",
  12967. "properties": {
  12968. "allow_only_contributors_to_track_time": {
  12969. "description": "Let only contributors track time (Built-in issue tracker)",
  12970. "type": "boolean",
  12971. "x-go-name": "AllowOnlyContributorsToTrackTime"
  12972. },
  12973. "enable_issue_dependencies": {
  12974. "description": "Enable dependencies for issues and pull requests (Built-in issue tracker)",
  12975. "type": "boolean",
  12976. "x-go-name": "EnableIssueDependencies"
  12977. },
  12978. "enable_time_tracker": {
  12979. "description": "Enable time tracking (Built-in issue tracker)",
  12980. "type": "boolean",
  12981. "x-go-name": "EnableTimeTracker"
  12982. }
  12983. },
  12984. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12985. },
  12986. "Issue": {
  12987. "description": "Issue represents an issue in a repository",
  12988. "type": "object",
  12989. "properties": {
  12990. "assignee": {
  12991. "$ref": "#/definitions/User"
  12992. },
  12993. "assignees": {
  12994. "type": "array",
  12995. "items": {
  12996. "$ref": "#/definitions/User"
  12997. },
  12998. "x-go-name": "Assignees"
  12999. },
  13000. "body": {
  13001. "type": "string",
  13002. "x-go-name": "Body"
  13003. },
  13004. "closed_at": {
  13005. "type": "string",
  13006. "format": "date-time",
  13007. "x-go-name": "Closed"
  13008. },
  13009. "comments": {
  13010. "type": "integer",
  13011. "format": "int64",
  13012. "x-go-name": "Comments"
  13013. },
  13014. "created_at": {
  13015. "type": "string",
  13016. "format": "date-time",
  13017. "x-go-name": "Created"
  13018. },
  13019. "due_date": {
  13020. "type": "string",
  13021. "format": "date-time",
  13022. "x-go-name": "Deadline"
  13023. },
  13024. "html_url": {
  13025. "type": "string",
  13026. "x-go-name": "HTMLURL"
  13027. },
  13028. "id": {
  13029. "type": "integer",
  13030. "format": "int64",
  13031. "x-go-name": "ID"
  13032. },
  13033. "is_locked": {
  13034. "type": "boolean",
  13035. "x-go-name": "IsLocked"
  13036. },
  13037. "labels": {
  13038. "type": "array",
  13039. "items": {
  13040. "$ref": "#/definitions/Label"
  13041. },
  13042. "x-go-name": "Labels"
  13043. },
  13044. "milestone": {
  13045. "$ref": "#/definitions/Milestone"
  13046. },
  13047. "number": {
  13048. "type": "integer",
  13049. "format": "int64",
  13050. "x-go-name": "Index"
  13051. },
  13052. "original_author": {
  13053. "type": "string",
  13054. "x-go-name": "OriginalAuthor"
  13055. },
  13056. "original_author_id": {
  13057. "type": "integer",
  13058. "format": "int64",
  13059. "x-go-name": "OriginalAuthorID"
  13060. },
  13061. "pull_request": {
  13062. "$ref": "#/definitions/PullRequestMeta"
  13063. },
  13064. "repository": {
  13065. "$ref": "#/definitions/RepositoryMeta"
  13066. },
  13067. "state": {
  13068. "$ref": "#/definitions/StateType"
  13069. },
  13070. "title": {
  13071. "type": "string",
  13072. "x-go-name": "Title"
  13073. },
  13074. "updated_at": {
  13075. "type": "string",
  13076. "format": "date-time",
  13077. "x-go-name": "Updated"
  13078. },
  13079. "url": {
  13080. "type": "string",
  13081. "x-go-name": "URL"
  13082. },
  13083. "user": {
  13084. "$ref": "#/definitions/User"
  13085. }
  13086. },
  13087. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13088. },
  13089. "IssueDeadline": {
  13090. "description": "IssueDeadline represents an issue deadline",
  13091. "type": "object",
  13092. "properties": {
  13093. "due_date": {
  13094. "type": "string",
  13095. "format": "date-time",
  13096. "x-go-name": "Deadline"
  13097. }
  13098. },
  13099. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13100. },
  13101. "IssueLabelsOption": {
  13102. "description": "IssueLabelsOption a collection of labels",
  13103. "type": "object",
  13104. "properties": {
  13105. "labels": {
  13106. "description": "list of label IDs",
  13107. "type": "array",
  13108. "items": {
  13109. "type": "integer",
  13110. "format": "int64"
  13111. },
  13112. "x-go-name": "Labels"
  13113. }
  13114. },
  13115. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13116. },
  13117. "Label": {
  13118. "description": "Label a label to an issue or a pr",
  13119. "type": "object",
  13120. "properties": {
  13121. "color": {
  13122. "type": "string",
  13123. "x-go-name": "Color",
  13124. "example": "00aabb"
  13125. },
  13126. "description": {
  13127. "type": "string",
  13128. "x-go-name": "Description"
  13129. },
  13130. "id": {
  13131. "type": "integer",
  13132. "format": "int64",
  13133. "x-go-name": "ID"
  13134. },
  13135. "name": {
  13136. "type": "string",
  13137. "x-go-name": "Name"
  13138. },
  13139. "url": {
  13140. "type": "string",
  13141. "x-go-name": "URL"
  13142. }
  13143. },
  13144. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13145. },
  13146. "MarkdownOption": {
  13147. "description": "MarkdownOption markdown options",
  13148. "type": "object",
  13149. "properties": {
  13150. "Context": {
  13151. "description": "Context to render\n\nin: body",
  13152. "type": "string"
  13153. },
  13154. "Mode": {
  13155. "description": "Mode to render\n\nin: body",
  13156. "type": "string"
  13157. },
  13158. "Text": {
  13159. "description": "Text markdown to render\n\nin: body",
  13160. "type": "string"
  13161. },
  13162. "Wiki": {
  13163. "description": "Is it a wiki page ?\n\nin: body",
  13164. "type": "boolean"
  13165. }
  13166. },
  13167. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13168. },
  13169. "MergePullRequestOption": {
  13170. "description": "MergePullRequestForm form for merging Pull Request",
  13171. "type": "object",
  13172. "required": [
  13173. "Do"
  13174. ],
  13175. "properties": {
  13176. "Do": {
  13177. "type": "string",
  13178. "enum": [
  13179. "merge",
  13180. "rebase",
  13181. "rebase-merge",
  13182. "squash"
  13183. ]
  13184. },
  13185. "MergeMessageField": {
  13186. "type": "string"
  13187. },
  13188. "MergeTitleField": {
  13189. "type": "string"
  13190. },
  13191. "force_merge": {
  13192. "type": "boolean",
  13193. "x-go-name": "ForceMerge"
  13194. }
  13195. },
  13196. "x-go-name": "MergePullRequestForm",
  13197. "x-go-package": "code.gitea.io/gitea/modules/auth"
  13198. },
  13199. "MigrateRepoForm": {
  13200. "description": "MigrateRepoForm form for migrating repository",
  13201. "type": "object",
  13202. "required": [
  13203. "clone_addr",
  13204. "uid",
  13205. "repo_name"
  13206. ],
  13207. "properties": {
  13208. "auth_password": {
  13209. "type": "string",
  13210. "x-go-name": "AuthPassword"
  13211. },
  13212. "auth_username": {
  13213. "type": "string",
  13214. "x-go-name": "AuthUsername"
  13215. },
  13216. "clone_addr": {
  13217. "type": "string",
  13218. "x-go-name": "CloneAddr"
  13219. },
  13220. "description": {
  13221. "type": "string",
  13222. "x-go-name": "Description"
  13223. },
  13224. "issues": {
  13225. "type": "boolean",
  13226. "x-go-name": "Issues"
  13227. },
  13228. "labels": {
  13229. "type": "boolean",
  13230. "x-go-name": "Labels"
  13231. },
  13232. "milestones": {
  13233. "type": "boolean",
  13234. "x-go-name": "Milestones"
  13235. },
  13236. "mirror": {
  13237. "type": "boolean",
  13238. "x-go-name": "Mirror"
  13239. },
  13240. "private": {
  13241. "type": "boolean",
  13242. "x-go-name": "Private"
  13243. },
  13244. "pull_requests": {
  13245. "type": "boolean",
  13246. "x-go-name": "PullRequests"
  13247. },
  13248. "releases": {
  13249. "type": "boolean",
  13250. "x-go-name": "Releases"
  13251. },
  13252. "repo_name": {
  13253. "type": "string",
  13254. "x-go-name": "RepoName"
  13255. },
  13256. "uid": {
  13257. "type": "integer",
  13258. "format": "int64",
  13259. "x-go-name": "UID"
  13260. },
  13261. "wiki": {
  13262. "type": "boolean",
  13263. "x-go-name": "Wiki"
  13264. }
  13265. },
  13266. "x-go-package": "code.gitea.io/gitea/modules/auth"
  13267. },
  13268. "Milestone": {
  13269. "description": "Milestone milestone is a collection of issues on one repository",
  13270. "type": "object",
  13271. "properties": {
  13272. "closed_at": {
  13273. "type": "string",
  13274. "format": "date-time",
  13275. "x-go-name": "Closed"
  13276. },
  13277. "closed_issues": {
  13278. "type": "integer",
  13279. "format": "int64",
  13280. "x-go-name": "ClosedIssues"
  13281. },
  13282. "description": {
  13283. "type": "string",
  13284. "x-go-name": "Description"
  13285. },
  13286. "due_on": {
  13287. "type": "string",
  13288. "format": "date-time",
  13289. "x-go-name": "Deadline"
  13290. },
  13291. "id": {
  13292. "type": "integer",
  13293. "format": "int64",
  13294. "x-go-name": "ID"
  13295. },
  13296. "open_issues": {
  13297. "type": "integer",
  13298. "format": "int64",
  13299. "x-go-name": "OpenIssues"
  13300. },
  13301. "state": {
  13302. "$ref": "#/definitions/StateType"
  13303. },
  13304. "title": {
  13305. "type": "string",
  13306. "x-go-name": "Title"
  13307. }
  13308. },
  13309. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13310. },
  13311. "NotificationCount": {
  13312. "description": "NotificationCount number of unread notifications",
  13313. "type": "object",
  13314. "properties": {
  13315. "new": {
  13316. "type": "integer",
  13317. "format": "int64",
  13318. "x-go-name": "New"
  13319. }
  13320. },
  13321. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13322. },
  13323. "NotificationSubject": {
  13324. "description": "NotificationSubject contains the notification subject (Issue/Pull/Commit)",
  13325. "type": "object",
  13326. "properties": {
  13327. "latest_comment_url": {
  13328. "type": "string",
  13329. "x-go-name": "LatestCommentURL"
  13330. },
  13331. "title": {
  13332. "type": "string",
  13333. "x-go-name": "Title"
  13334. },
  13335. "type": {
  13336. "type": "string",
  13337. "x-go-name": "Type"
  13338. },
  13339. "url": {
  13340. "type": "string",
  13341. "x-go-name": "URL"
  13342. }
  13343. },
  13344. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13345. },
  13346. "NotificationThread": {
  13347. "description": "NotificationThread expose Notification on API",
  13348. "type": "object",
  13349. "properties": {
  13350. "id": {
  13351. "type": "integer",
  13352. "format": "int64",
  13353. "x-go-name": "ID"
  13354. },
  13355. "pinned": {
  13356. "type": "boolean",
  13357. "x-go-name": "Pinned"
  13358. },
  13359. "repository": {
  13360. "$ref": "#/definitions/Repository"
  13361. },
  13362. "subject": {
  13363. "$ref": "#/definitions/NotificationSubject"
  13364. },
  13365. "unread": {
  13366. "type": "boolean",
  13367. "x-go-name": "Unread"
  13368. },
  13369. "updated_at": {
  13370. "type": "string",
  13371. "format": "date-time",
  13372. "x-go-name": "UpdatedAt"
  13373. },
  13374. "url": {
  13375. "type": "string",
  13376. "x-go-name": "URL"
  13377. }
  13378. },
  13379. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13380. },
  13381. "OAuth2Application": {
  13382. "type": "object",
  13383. "title": "OAuth2Application represents an OAuth2 application.",
  13384. "properties": {
  13385. "client_id": {
  13386. "type": "string",
  13387. "x-go-name": "ClientID"
  13388. },
  13389. "client_secret": {
  13390. "type": "string",
  13391. "x-go-name": "ClientSecret"
  13392. },
  13393. "created": {
  13394. "type": "string",
  13395. "format": "date-time",
  13396. "x-go-name": "Created"
  13397. },
  13398. "id": {
  13399. "type": "integer",
  13400. "format": "int64",
  13401. "x-go-name": "ID"
  13402. },
  13403. "name": {
  13404. "type": "string",
  13405. "x-go-name": "Name"
  13406. },
  13407. "redirect_uris": {
  13408. "type": "array",
  13409. "items": {
  13410. "type": "string"
  13411. },
  13412. "x-go-name": "RedirectURIs"
  13413. }
  13414. },
  13415. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13416. },
  13417. "Organization": {
  13418. "description": "Organization represents an organization",
  13419. "type": "object",
  13420. "properties": {
  13421. "avatar_url": {
  13422. "type": "string",
  13423. "x-go-name": "AvatarURL"
  13424. },
  13425. "description": {
  13426. "type": "string",
  13427. "x-go-name": "Description"
  13428. },
  13429. "full_name": {
  13430. "type": "string",
  13431. "x-go-name": "FullName"
  13432. },
  13433. "id": {
  13434. "type": "integer",
  13435. "format": "int64",
  13436. "x-go-name": "ID"
  13437. },
  13438. "location": {
  13439. "type": "string",
  13440. "x-go-name": "Location"
  13441. },
  13442. "repo_admin_change_team_access": {
  13443. "type": "boolean",
  13444. "x-go-name": "RepoAdminChangeTeamAccess"
  13445. },
  13446. "username": {
  13447. "type": "string",
  13448. "x-go-name": "UserName"
  13449. },
  13450. "visibility": {
  13451. "type": "string",
  13452. "x-go-name": "Visibility"
  13453. },
  13454. "website": {
  13455. "type": "string",
  13456. "x-go-name": "Website"
  13457. }
  13458. },
  13459. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13460. },
  13461. "PRBranchInfo": {
  13462. "description": "PRBranchInfo information about a branch",
  13463. "type": "object",
  13464. "properties": {
  13465. "label": {
  13466. "type": "string",
  13467. "x-go-name": "Name"
  13468. },
  13469. "ref": {
  13470. "type": "string",
  13471. "x-go-name": "Ref"
  13472. },
  13473. "repo": {
  13474. "$ref": "#/definitions/Repository"
  13475. },
  13476. "repo_id": {
  13477. "type": "integer",
  13478. "format": "int64",
  13479. "x-go-name": "RepoID"
  13480. },
  13481. "sha": {
  13482. "type": "string",
  13483. "x-go-name": "Sha"
  13484. }
  13485. },
  13486. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13487. },
  13488. "PayloadCommit": {
  13489. "description": "PayloadCommit represents a commit",
  13490. "type": "object",
  13491. "properties": {
  13492. "added": {
  13493. "type": "array",
  13494. "items": {
  13495. "type": "string"
  13496. },
  13497. "x-go-name": "Added"
  13498. },
  13499. "author": {
  13500. "$ref": "#/definitions/PayloadUser"
  13501. },
  13502. "committer": {
  13503. "$ref": "#/definitions/PayloadUser"
  13504. },
  13505. "id": {
  13506. "description": "sha1 hash of the commit",
  13507. "type": "string",
  13508. "x-go-name": "ID"
  13509. },
  13510. "message": {
  13511. "type": "string",
  13512. "x-go-name": "Message"
  13513. },
  13514. "modified": {
  13515. "type": "array",
  13516. "items": {
  13517. "type": "string"
  13518. },
  13519. "x-go-name": "Modified"
  13520. },
  13521. "removed": {
  13522. "type": "array",
  13523. "items": {
  13524. "type": "string"
  13525. },
  13526. "x-go-name": "Removed"
  13527. },
  13528. "timestamp": {
  13529. "type": "string",
  13530. "format": "date-time",
  13531. "x-go-name": "Timestamp"
  13532. },
  13533. "url": {
  13534. "type": "string",
  13535. "x-go-name": "URL"
  13536. },
  13537. "verification": {
  13538. "$ref": "#/definitions/PayloadCommitVerification"
  13539. }
  13540. },
  13541. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13542. },
  13543. "PayloadCommitVerification": {
  13544. "description": "PayloadCommitVerification represents the GPG verification of a commit",
  13545. "type": "object",
  13546. "properties": {
  13547. "payload": {
  13548. "type": "string",
  13549. "x-go-name": "Payload"
  13550. },
  13551. "reason": {
  13552. "type": "string",
  13553. "x-go-name": "Reason"
  13554. },
  13555. "signature": {
  13556. "type": "string",
  13557. "x-go-name": "Signature"
  13558. },
  13559. "signer": {
  13560. "$ref": "#/definitions/PayloadUser"
  13561. },
  13562. "verified": {
  13563. "type": "boolean",
  13564. "x-go-name": "Verified"
  13565. }
  13566. },
  13567. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13568. },
  13569. "PayloadUser": {
  13570. "description": "PayloadUser represents the author or committer of a commit",
  13571. "type": "object",
  13572. "properties": {
  13573. "email": {
  13574. "type": "string",
  13575. "format": "email",
  13576. "x-go-name": "Email"
  13577. },
  13578. "name": {
  13579. "description": "Full name of the commit author",
  13580. "type": "string",
  13581. "x-go-name": "Name"
  13582. },
  13583. "username": {
  13584. "type": "string",
  13585. "x-go-name": "UserName"
  13586. }
  13587. },
  13588. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13589. },
  13590. "Permission": {
  13591. "description": "Permission represents a set of permissions",
  13592. "type": "object",
  13593. "properties": {
  13594. "admin": {
  13595. "type": "boolean",
  13596. "x-go-name": "Admin"
  13597. },
  13598. "pull": {
  13599. "type": "boolean",
  13600. "x-go-name": "Pull"
  13601. },
  13602. "push": {
  13603. "type": "boolean",
  13604. "x-go-name": "Push"
  13605. }
  13606. },
  13607. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13608. },
  13609. "PublicKey": {
  13610. "description": "PublicKey publickey is a user key to push code to repository",
  13611. "type": "object",
  13612. "properties": {
  13613. "created_at": {
  13614. "type": "string",
  13615. "format": "date-time",
  13616. "x-go-name": "Created"
  13617. },
  13618. "fingerprint": {
  13619. "type": "string",
  13620. "x-go-name": "Fingerprint"
  13621. },
  13622. "id": {
  13623. "type": "integer",
  13624. "format": "int64",
  13625. "x-go-name": "ID"
  13626. },
  13627. "key": {
  13628. "type": "string",
  13629. "x-go-name": "Key"
  13630. },
  13631. "key_type": {
  13632. "type": "string",
  13633. "x-go-name": "KeyType"
  13634. },
  13635. "read_only": {
  13636. "type": "boolean",
  13637. "x-go-name": "ReadOnly"
  13638. },
  13639. "title": {
  13640. "type": "string",
  13641. "x-go-name": "Title"
  13642. },
  13643. "url": {
  13644. "type": "string",
  13645. "x-go-name": "URL"
  13646. },
  13647. "user": {
  13648. "$ref": "#/definitions/User"
  13649. }
  13650. },
  13651. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13652. },
  13653. "PullRequest": {
  13654. "description": "PullRequest represents a pull request",
  13655. "type": "object",
  13656. "properties": {
  13657. "assignee": {
  13658. "$ref": "#/definitions/User"
  13659. },
  13660. "assignees": {
  13661. "type": "array",
  13662. "items": {
  13663. "$ref": "#/definitions/User"
  13664. },
  13665. "x-go-name": "Assignees"
  13666. },
  13667. "base": {
  13668. "$ref": "#/definitions/PRBranchInfo"
  13669. },
  13670. "body": {
  13671. "type": "string",
  13672. "x-go-name": "Body"
  13673. },
  13674. "closed_at": {
  13675. "type": "string",
  13676. "format": "date-time",
  13677. "x-go-name": "Closed"
  13678. },
  13679. "comments": {
  13680. "type": "integer",
  13681. "format": "int64",
  13682. "x-go-name": "Comments"
  13683. },
  13684. "created_at": {
  13685. "type": "string",
  13686. "format": "date-time",
  13687. "x-go-name": "Created"
  13688. },
  13689. "diff_url": {
  13690. "type": "string",
  13691. "x-go-name": "DiffURL"
  13692. },
  13693. "due_date": {
  13694. "type": "string",
  13695. "format": "date-time",
  13696. "x-go-name": "Deadline"
  13697. },
  13698. "head": {
  13699. "$ref": "#/definitions/PRBranchInfo"
  13700. },
  13701. "html_url": {
  13702. "type": "string",
  13703. "x-go-name": "HTMLURL"
  13704. },
  13705. "id": {
  13706. "type": "integer",
  13707. "format": "int64",
  13708. "x-go-name": "ID"
  13709. },
  13710. "is_locked": {
  13711. "type": "boolean",
  13712. "x-go-name": "IsLocked"
  13713. },
  13714. "labels": {
  13715. "type": "array",
  13716. "items": {
  13717. "$ref": "#/definitions/Label"
  13718. },
  13719. "x-go-name": "Labels"
  13720. },
  13721. "merge_base": {
  13722. "type": "string",
  13723. "x-go-name": "MergeBase"
  13724. },
  13725. "merge_commit_sha": {
  13726. "type": "string",
  13727. "x-go-name": "MergedCommitID"
  13728. },
  13729. "mergeable": {
  13730. "type": "boolean",
  13731. "x-go-name": "Mergeable"
  13732. },
  13733. "merged": {
  13734. "type": "boolean",
  13735. "x-go-name": "HasMerged"
  13736. },
  13737. "merged_at": {
  13738. "type": "string",
  13739. "format": "date-time",
  13740. "x-go-name": "Merged"
  13741. },
  13742. "merged_by": {
  13743. "$ref": "#/definitions/User"
  13744. },
  13745. "milestone": {
  13746. "$ref": "#/definitions/Milestone"
  13747. },
  13748. "number": {
  13749. "type": "integer",
  13750. "format": "int64",
  13751. "x-go-name": "Index"
  13752. },
  13753. "patch_url": {
  13754. "type": "string",
  13755. "x-go-name": "PatchURL"
  13756. },
  13757. "state": {
  13758. "$ref": "#/definitions/StateType"
  13759. },
  13760. "title": {
  13761. "type": "string",
  13762. "x-go-name": "Title"
  13763. },
  13764. "updated_at": {
  13765. "type": "string",
  13766. "format": "date-time",
  13767. "x-go-name": "Updated"
  13768. },
  13769. "url": {
  13770. "type": "string",
  13771. "x-go-name": "URL"
  13772. },
  13773. "user": {
  13774. "$ref": "#/definitions/User"
  13775. }
  13776. },
  13777. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13778. },
  13779. "PullRequestMeta": {
  13780. "description": "PullRequestMeta PR info if an issue is a PR",
  13781. "type": "object",
  13782. "properties": {
  13783. "merged": {
  13784. "type": "boolean",
  13785. "x-go-name": "HasMerged"
  13786. },
  13787. "merged_at": {
  13788. "type": "string",
  13789. "format": "date-time",
  13790. "x-go-name": "Merged"
  13791. }
  13792. },
  13793. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13794. },
  13795. "PullReview": {
  13796. "description": "PullReview represents a pull request review",
  13797. "type": "object",
  13798. "properties": {
  13799. "body": {
  13800. "type": "string",
  13801. "x-go-name": "Body"
  13802. },
  13803. "comments_count": {
  13804. "type": "integer",
  13805. "format": "int64",
  13806. "x-go-name": "CodeCommentsCount"
  13807. },
  13808. "commit_id": {
  13809. "type": "string",
  13810. "x-go-name": "CommitID"
  13811. },
  13812. "html_url": {
  13813. "type": "string",
  13814. "x-go-name": "HTMLURL"
  13815. },
  13816. "id": {
  13817. "type": "integer",
  13818. "format": "int64",
  13819. "x-go-name": "ID"
  13820. },
  13821. "official": {
  13822. "type": "boolean",
  13823. "x-go-name": "Official"
  13824. },
  13825. "pull_request_url": {
  13826. "type": "string",
  13827. "x-go-name": "HTMLPullURL"
  13828. },
  13829. "stale": {
  13830. "type": "boolean",
  13831. "x-go-name": "Stale"
  13832. },
  13833. "state": {
  13834. "$ref": "#/definitions/ReviewStateType"
  13835. },
  13836. "submitted_at": {
  13837. "type": "string",
  13838. "format": "date-time",
  13839. "x-go-name": "Submitted"
  13840. },
  13841. "user": {
  13842. "$ref": "#/definitions/User"
  13843. }
  13844. },
  13845. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13846. },
  13847. "PullReviewComment": {
  13848. "description": "PullReviewComment represents a comment on a pull request review",
  13849. "type": "object",
  13850. "properties": {
  13851. "body": {
  13852. "type": "string",
  13853. "x-go-name": "Body"
  13854. },
  13855. "commit_id": {
  13856. "type": "string",
  13857. "x-go-name": "CommitID"
  13858. },
  13859. "created_at": {
  13860. "type": "string",
  13861. "format": "date-time",
  13862. "x-go-name": "Created"
  13863. },
  13864. "diff_hunk": {
  13865. "type": "string",
  13866. "x-go-name": "DiffHunk"
  13867. },
  13868. "html_url": {
  13869. "type": "string",
  13870. "x-go-name": "HTMLURL"
  13871. },
  13872. "id": {
  13873. "type": "integer",
  13874. "format": "int64",
  13875. "x-go-name": "ID"
  13876. },
  13877. "original_commit_id": {
  13878. "type": "string",
  13879. "x-go-name": "OrigCommitID"
  13880. },
  13881. "original_position": {
  13882. "type": "integer",
  13883. "format": "uint64",
  13884. "x-go-name": "OldLineNum"
  13885. },
  13886. "path": {
  13887. "type": "string",
  13888. "x-go-name": "Path"
  13889. },
  13890. "position": {
  13891. "type": "integer",
  13892. "format": "uint64",
  13893. "x-go-name": "LineNum"
  13894. },
  13895. "pull_request_review_id": {
  13896. "type": "integer",
  13897. "format": "int64",
  13898. "x-go-name": "ReviewID"
  13899. },
  13900. "pull_request_url": {
  13901. "type": "string",
  13902. "x-go-name": "HTMLPullURL"
  13903. },
  13904. "updated_at": {
  13905. "type": "string",
  13906. "format": "date-time",
  13907. "x-go-name": "Updated"
  13908. },
  13909. "user": {
  13910. "$ref": "#/definitions/User"
  13911. }
  13912. },
  13913. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13914. },
  13915. "Reaction": {
  13916. "description": "Reaction contain one reaction",
  13917. "type": "object",
  13918. "properties": {
  13919. "content": {
  13920. "type": "string",
  13921. "x-go-name": "Reaction"
  13922. },
  13923. "created_at": {
  13924. "type": "string",
  13925. "format": "date-time",
  13926. "x-go-name": "Created"
  13927. },
  13928. "user": {
  13929. "$ref": "#/definitions/User"
  13930. }
  13931. },
  13932. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13933. },
  13934. "Reference": {
  13935. "type": "object",
  13936. "title": "Reference represents a Git reference.",
  13937. "properties": {
  13938. "object": {
  13939. "$ref": "#/definitions/GitObject"
  13940. },
  13941. "ref": {
  13942. "type": "string",
  13943. "x-go-name": "Ref"
  13944. },
  13945. "url": {
  13946. "type": "string",
  13947. "x-go-name": "URL"
  13948. }
  13949. },
  13950. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13951. },
  13952. "Release": {
  13953. "description": "Release represents a repository release",
  13954. "type": "object",
  13955. "properties": {
  13956. "assets": {
  13957. "type": "array",
  13958. "items": {
  13959. "$ref": "#/definitions/Attachment"
  13960. },
  13961. "x-go-name": "Attachments"
  13962. },
  13963. "author": {
  13964. "$ref": "#/definitions/User"
  13965. },
  13966. "body": {
  13967. "type": "string",
  13968. "x-go-name": "Note"
  13969. },
  13970. "created_at": {
  13971. "type": "string",
  13972. "format": "date-time",
  13973. "x-go-name": "CreatedAt"
  13974. },
  13975. "draft": {
  13976. "type": "boolean",
  13977. "x-go-name": "IsDraft"
  13978. },
  13979. "html_url": {
  13980. "type": "string",
  13981. "x-go-name": "HTMLURL"
  13982. },
  13983. "id": {
  13984. "type": "integer",
  13985. "format": "int64",
  13986. "x-go-name": "ID"
  13987. },
  13988. "name": {
  13989. "type": "string",
  13990. "x-go-name": "Title"
  13991. },
  13992. "prerelease": {
  13993. "type": "boolean",
  13994. "x-go-name": "IsPrerelease"
  13995. },
  13996. "published_at": {
  13997. "type": "string",
  13998. "format": "date-time",
  13999. "x-go-name": "PublishedAt"
  14000. },
  14001. "tag_name": {
  14002. "type": "string",
  14003. "x-go-name": "TagName"
  14004. },
  14005. "tarball_url": {
  14006. "type": "string",
  14007. "x-go-name": "TarURL"
  14008. },
  14009. "target_commitish": {
  14010. "type": "string",
  14011. "x-go-name": "Target"
  14012. },
  14013. "url": {
  14014. "type": "string",
  14015. "x-go-name": "URL"
  14016. },
  14017. "zipball_url": {
  14018. "type": "string",
  14019. "x-go-name": "ZipURL"
  14020. }
  14021. },
  14022. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14023. },
  14024. "RepoCommit": {
  14025. "type": "object",
  14026. "title": "RepoCommit contains information of a commit in the context of a repository.",
  14027. "properties": {
  14028. "author": {
  14029. "$ref": "#/definitions/CommitUser"
  14030. },
  14031. "committer": {
  14032. "$ref": "#/definitions/CommitUser"
  14033. },
  14034. "message": {
  14035. "type": "string",
  14036. "x-go-name": "Message"
  14037. },
  14038. "tree": {
  14039. "$ref": "#/definitions/CommitMeta"
  14040. },
  14041. "url": {
  14042. "type": "string",
  14043. "x-go-name": "URL"
  14044. }
  14045. },
  14046. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14047. },
  14048. "RepoTopicOptions": {
  14049. "description": "RepoTopicOptions a collection of repo topic names",
  14050. "type": "object",
  14051. "properties": {
  14052. "topics": {
  14053. "description": "list of topic names",
  14054. "type": "array",
  14055. "items": {
  14056. "type": "string"
  14057. },
  14058. "x-go-name": "Topics"
  14059. }
  14060. },
  14061. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14062. },
  14063. "Repository": {
  14064. "description": "Repository represents a repository",
  14065. "type": "object",
  14066. "properties": {
  14067. "allow_merge_commits": {
  14068. "type": "boolean",
  14069. "x-go-name": "AllowMerge"
  14070. },
  14071. "allow_rebase": {
  14072. "type": "boolean",
  14073. "x-go-name": "AllowRebase"
  14074. },
  14075. "allow_rebase_explicit": {
  14076. "type": "boolean",
  14077. "x-go-name": "AllowRebaseMerge"
  14078. },
  14079. "allow_squash_merge": {
  14080. "type": "boolean",
  14081. "x-go-name": "AllowSquash"
  14082. },
  14083. "archived": {
  14084. "type": "boolean",
  14085. "x-go-name": "Archived"
  14086. },
  14087. "avatar_url": {
  14088. "type": "string",
  14089. "x-go-name": "AvatarURL"
  14090. },
  14091. "clone_url": {
  14092. "type": "string",
  14093. "x-go-name": "CloneURL"
  14094. },
  14095. "created_at": {
  14096. "type": "string",
  14097. "format": "date-time",
  14098. "x-go-name": "Created"
  14099. },
  14100. "default_branch": {
  14101. "type": "string",
  14102. "x-go-name": "DefaultBranch"
  14103. },
  14104. "description": {
  14105. "type": "string",
  14106. "x-go-name": "Description"
  14107. },
  14108. "empty": {
  14109. "type": "boolean",
  14110. "x-go-name": "Empty"
  14111. },
  14112. "external_tracker": {
  14113. "$ref": "#/definitions/ExternalTracker"
  14114. },
  14115. "external_wiki": {
  14116. "$ref": "#/definitions/ExternalWiki"
  14117. },
  14118. "fork": {
  14119. "type": "boolean",
  14120. "x-go-name": "Fork"
  14121. },
  14122. "forks_count": {
  14123. "type": "integer",
  14124. "format": "int64",
  14125. "x-go-name": "Forks"
  14126. },
  14127. "full_name": {
  14128. "type": "string",
  14129. "x-go-name": "FullName"
  14130. },
  14131. "has_issues": {
  14132. "type": "boolean",
  14133. "x-go-name": "HasIssues"
  14134. },
  14135. "has_pull_requests": {
  14136. "type": "boolean",
  14137. "x-go-name": "HasPullRequests"
  14138. },
  14139. "has_wiki": {
  14140. "type": "boolean",
  14141. "x-go-name": "HasWiki"
  14142. },
  14143. "html_url": {
  14144. "type": "string",
  14145. "x-go-name": "HTMLURL"
  14146. },
  14147. "id": {
  14148. "type": "integer",
  14149. "format": "int64",
  14150. "x-go-name": "ID"
  14151. },
  14152. "ignore_whitespace_conflicts": {
  14153. "type": "boolean",
  14154. "x-go-name": "IgnoreWhitespaceConflicts"
  14155. },
  14156. "internal": {
  14157. "type": "boolean",
  14158. "x-go-name": "Internal"
  14159. },
  14160. "internal_tracker": {
  14161. "$ref": "#/definitions/InternalTracker"
  14162. },
  14163. "mirror": {
  14164. "type": "boolean",
  14165. "x-go-name": "Mirror"
  14166. },
  14167. "name": {
  14168. "type": "string",
  14169. "x-go-name": "Name"
  14170. },
  14171. "open_issues_count": {
  14172. "type": "integer",
  14173. "format": "int64",
  14174. "x-go-name": "OpenIssues"
  14175. },
  14176. "open_pr_counter": {
  14177. "type": "integer",
  14178. "format": "int64",
  14179. "x-go-name": "OpenPulls"
  14180. },
  14181. "original_url": {
  14182. "type": "string",
  14183. "x-go-name": "OriginalURL"
  14184. },
  14185. "owner": {
  14186. "$ref": "#/definitions/User"
  14187. },
  14188. "parent": {
  14189. "$ref": "#/definitions/Repository"
  14190. },
  14191. "permissions": {
  14192. "$ref": "#/definitions/Permission"
  14193. },
  14194. "private": {
  14195. "type": "boolean",
  14196. "x-go-name": "Private"
  14197. },
  14198. "release_counter": {
  14199. "type": "integer",
  14200. "format": "int64",
  14201. "x-go-name": "Releases"
  14202. },
  14203. "size": {
  14204. "type": "integer",
  14205. "format": "int64",
  14206. "x-go-name": "Size"
  14207. },
  14208. "ssh_url": {
  14209. "type": "string",
  14210. "x-go-name": "SSHURL"
  14211. },
  14212. "stars_count": {
  14213. "type": "integer",
  14214. "format": "int64",
  14215. "x-go-name": "Stars"
  14216. },
  14217. "template": {
  14218. "type": "boolean",
  14219. "x-go-name": "Template"
  14220. },
  14221. "updated_at": {
  14222. "type": "string",
  14223. "format": "date-time",
  14224. "x-go-name": "Updated"
  14225. },
  14226. "watchers_count": {
  14227. "type": "integer",
  14228. "format": "int64",
  14229. "x-go-name": "Watchers"
  14230. },
  14231. "website": {
  14232. "type": "string",
  14233. "x-go-name": "Website"
  14234. }
  14235. },
  14236. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14237. },
  14238. "RepositoryMeta": {
  14239. "description": "RepositoryMeta basic repository information",
  14240. "type": "object",
  14241. "properties": {
  14242. "full_name": {
  14243. "type": "string",
  14244. "x-go-name": "FullName"
  14245. },
  14246. "id": {
  14247. "type": "integer",
  14248. "format": "int64",
  14249. "x-go-name": "ID"
  14250. },
  14251. "name": {
  14252. "type": "string",
  14253. "x-go-name": "Name"
  14254. },
  14255. "owner": {
  14256. "type": "string",
  14257. "x-go-name": "Owner"
  14258. }
  14259. },
  14260. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14261. },
  14262. "ReviewStateType": {
  14263. "description": "ReviewStateType review state type",
  14264. "type": "string",
  14265. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14266. },
  14267. "SearchResults": {
  14268. "description": "SearchResults results of a successful search",
  14269. "type": "object",
  14270. "properties": {
  14271. "data": {
  14272. "type": "array",
  14273. "items": {
  14274. "$ref": "#/definitions/Repository"
  14275. },
  14276. "x-go-name": "Data"
  14277. },
  14278. "ok": {
  14279. "type": "boolean",
  14280. "x-go-name": "OK"
  14281. }
  14282. },
  14283. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14284. },
  14285. "ServerVersion": {
  14286. "description": "ServerVersion wraps the version of the server",
  14287. "type": "object",
  14288. "properties": {
  14289. "version": {
  14290. "type": "string",
  14291. "x-go-name": "Version"
  14292. }
  14293. },
  14294. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14295. },
  14296. "StateType": {
  14297. "description": "StateType issue state type",
  14298. "type": "string",
  14299. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14300. },
  14301. "Status": {
  14302. "description": "Status holds a single Status of a single Commit",
  14303. "type": "object",
  14304. "properties": {
  14305. "context": {
  14306. "type": "string",
  14307. "x-go-name": "Context"
  14308. },
  14309. "created_at": {
  14310. "type": "string",
  14311. "format": "date-time",
  14312. "x-go-name": "Created"
  14313. },
  14314. "creator": {
  14315. "$ref": "#/definitions/User"
  14316. },
  14317. "description": {
  14318. "type": "string",
  14319. "x-go-name": "Description"
  14320. },
  14321. "id": {
  14322. "type": "integer",
  14323. "format": "int64",
  14324. "x-go-name": "ID"
  14325. },
  14326. "status": {
  14327. "$ref": "#/definitions/StatusState"
  14328. },
  14329. "target_url": {
  14330. "type": "string",
  14331. "x-go-name": "TargetURL"
  14332. },
  14333. "updated_at": {
  14334. "type": "string",
  14335. "format": "date-time",
  14336. "x-go-name": "Updated"
  14337. },
  14338. "url": {
  14339. "type": "string",
  14340. "x-go-name": "URL"
  14341. }
  14342. },
  14343. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14344. },
  14345. "StatusState": {
  14346. "description": "StatusState holds the state of a Status\nIt can be \"pending\", \"success\", \"error\", \"failure\", and \"warning\"",
  14347. "type": "string",
  14348. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14349. },
  14350. "StopWatch": {
  14351. "description": "StopWatch represent a running stopwatch",
  14352. "type": "object",
  14353. "properties": {
  14354. "created": {
  14355. "type": "string",
  14356. "format": "date-time",
  14357. "x-go-name": "Created"
  14358. },
  14359. "issue_index": {
  14360. "type": "integer",
  14361. "format": "int64",
  14362. "x-go-name": "IssueIndex"
  14363. }
  14364. },
  14365. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14366. },
  14367. "SubmitPullReviewOptions": {
  14368. "description": "SubmitPullReviewOptions are options to submit a pending pull review",
  14369. "type": "object",
  14370. "properties": {
  14371. "body": {
  14372. "type": "string",
  14373. "x-go-name": "Body"
  14374. },
  14375. "event": {
  14376. "$ref": "#/definitions/ReviewStateType"
  14377. }
  14378. },
  14379. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14380. },
  14381. "Tag": {
  14382. "description": "Tag represents a repository tag",
  14383. "type": "object",
  14384. "properties": {
  14385. "commit": {
  14386. "$ref": "#/definitions/CommitMeta"
  14387. },
  14388. "id": {
  14389. "type": "string",
  14390. "x-go-name": "ID"
  14391. },
  14392. "name": {
  14393. "type": "string",
  14394. "x-go-name": "Name"
  14395. },
  14396. "tarball_url": {
  14397. "type": "string",
  14398. "x-go-name": "TarballURL"
  14399. },
  14400. "zipball_url": {
  14401. "type": "string",
  14402. "x-go-name": "ZipballURL"
  14403. }
  14404. },
  14405. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14406. },
  14407. "Team": {
  14408. "description": "Team represents a team in an organization",
  14409. "type": "object",
  14410. "properties": {
  14411. "can_create_org_repo": {
  14412. "type": "boolean",
  14413. "x-go-name": "CanCreateOrgRepo"
  14414. },
  14415. "description": {
  14416. "type": "string",
  14417. "x-go-name": "Description"
  14418. },
  14419. "id": {
  14420. "type": "integer",
  14421. "format": "int64",
  14422. "x-go-name": "ID"
  14423. },
  14424. "includes_all_repositories": {
  14425. "type": "boolean",
  14426. "x-go-name": "IncludesAllRepositories"
  14427. },
  14428. "name": {
  14429. "type": "string",
  14430. "x-go-name": "Name"
  14431. },
  14432. "organization": {
  14433. "$ref": "#/definitions/Organization"
  14434. },
  14435. "permission": {
  14436. "type": "string",
  14437. "enum": [
  14438. "none",
  14439. "read",
  14440. "write",
  14441. "admin",
  14442. "owner"
  14443. ],
  14444. "x-go-name": "Permission"
  14445. },
  14446. "units": {
  14447. "type": "array",
  14448. "items": {
  14449. "type": "string"
  14450. },
  14451. "x-go-name": "Units",
  14452. "example": [
  14453. "repo.code",
  14454. "repo.issues",
  14455. "repo.ext_issues",
  14456. "repo.wiki",
  14457. "repo.pulls",
  14458. "repo.releases",
  14459. "repo.ext_wiki"
  14460. ]
  14461. }
  14462. },
  14463. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14464. },
  14465. "TimeStamp": {
  14466. "description": "TimeStamp defines a timestamp",
  14467. "type": "integer",
  14468. "format": "int64",
  14469. "x-go-package": "code.gitea.io/gitea/modules/timeutil"
  14470. },
  14471. "TopicName": {
  14472. "description": "TopicName a list of repo topic names",
  14473. "type": "object",
  14474. "properties": {
  14475. "topics": {
  14476. "type": "array",
  14477. "items": {
  14478. "type": "string"
  14479. },
  14480. "x-go-name": "TopicNames"
  14481. }
  14482. },
  14483. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14484. },
  14485. "TopicResponse": {
  14486. "description": "TopicResponse for returning topics",
  14487. "type": "object",
  14488. "properties": {
  14489. "created": {
  14490. "type": "string",
  14491. "format": "date-time",
  14492. "x-go-name": "Created"
  14493. },
  14494. "id": {
  14495. "type": "integer",
  14496. "format": "int64",
  14497. "x-go-name": "ID"
  14498. },
  14499. "repo_count": {
  14500. "type": "integer",
  14501. "format": "int64",
  14502. "x-go-name": "RepoCount"
  14503. },
  14504. "topic_name": {
  14505. "type": "string",
  14506. "x-go-name": "Name"
  14507. },
  14508. "updated": {
  14509. "type": "string",
  14510. "format": "date-time",
  14511. "x-go-name": "Updated"
  14512. }
  14513. },
  14514. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14515. },
  14516. "TrackedTime": {
  14517. "description": "TrackedTime worked time for an issue / pr",
  14518. "type": "object",
  14519. "properties": {
  14520. "created": {
  14521. "type": "string",
  14522. "format": "date-time",
  14523. "x-go-name": "Created"
  14524. },
  14525. "id": {
  14526. "type": "integer",
  14527. "format": "int64",
  14528. "x-go-name": "ID"
  14529. },
  14530. "issue": {
  14531. "$ref": "#/definitions/Issue"
  14532. },
  14533. "issue_id": {
  14534. "description": "deprecated (only for backwards compatibility)",
  14535. "type": "integer",
  14536. "format": "int64",
  14537. "x-go-name": "IssueID"
  14538. },
  14539. "time": {
  14540. "description": "Time in seconds",
  14541. "type": "integer",
  14542. "format": "int64",
  14543. "x-go-name": "Time"
  14544. },
  14545. "user_id": {
  14546. "description": "deprecated (only for backwards compatibility)",
  14547. "type": "integer",
  14548. "format": "int64",
  14549. "x-go-name": "UserID"
  14550. },
  14551. "user_name": {
  14552. "type": "string",
  14553. "x-go-name": "UserName"
  14554. }
  14555. },
  14556. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14557. },
  14558. "TransferRepoOption": {
  14559. "description": "TransferRepoOption options when transfer a repository's ownership",
  14560. "type": "object",
  14561. "required": [
  14562. "new_owner"
  14563. ],
  14564. "properties": {
  14565. "new_owner": {
  14566. "type": "string",
  14567. "x-go-name": "NewOwner"
  14568. },
  14569. "team_ids": {
  14570. "description": "ID of the team or teams to add to the repository. Teams can only be added to organization-owned repositories.",
  14571. "type": "array",
  14572. "items": {
  14573. "type": "integer",
  14574. "format": "int64"
  14575. },
  14576. "x-go-name": "TeamIDs"
  14577. }
  14578. },
  14579. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14580. },
  14581. "UpdateFileOptions": {
  14582. "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)",
  14583. "type": "object",
  14584. "required": [
  14585. "sha",
  14586. "content"
  14587. ],
  14588. "properties": {
  14589. "author": {
  14590. "$ref": "#/definitions/Identity"
  14591. },
  14592. "branch": {
  14593. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  14594. "type": "string",
  14595. "x-go-name": "BranchName"
  14596. },
  14597. "committer": {
  14598. "$ref": "#/definitions/Identity"
  14599. },
  14600. "content": {
  14601. "description": "content must be base64 encoded",
  14602. "type": "string",
  14603. "x-go-name": "Content"
  14604. },
  14605. "dates": {
  14606. "$ref": "#/definitions/CommitDateOptions"
  14607. },
  14608. "from_path": {
  14609. "description": "from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL",
  14610. "type": "string",
  14611. "x-go-name": "FromPath"
  14612. },
  14613. "message": {
  14614. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  14615. "type": "string",
  14616. "x-go-name": "Message"
  14617. },
  14618. "new_branch": {
  14619. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  14620. "type": "string",
  14621. "x-go-name": "NewBranchName"
  14622. },
  14623. "sha": {
  14624. "description": "sha is the SHA for the file that already exists",
  14625. "type": "string",
  14626. "x-go-name": "SHA"
  14627. }
  14628. },
  14629. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14630. },
  14631. "User": {
  14632. "description": "User represents a user",
  14633. "type": "object",
  14634. "properties": {
  14635. "avatar_url": {
  14636. "description": "URL to the user's avatar",
  14637. "type": "string",
  14638. "x-go-name": "AvatarURL"
  14639. },
  14640. "created": {
  14641. "type": "string",
  14642. "format": "date-time",
  14643. "x-go-name": "Created"
  14644. },
  14645. "email": {
  14646. "type": "string",
  14647. "format": "email",
  14648. "x-go-name": "Email"
  14649. },
  14650. "full_name": {
  14651. "description": "the user's full name",
  14652. "type": "string",
  14653. "x-go-name": "FullName"
  14654. },
  14655. "id": {
  14656. "description": "the user's id",
  14657. "type": "integer",
  14658. "format": "int64",
  14659. "x-go-name": "ID"
  14660. },
  14661. "is_admin": {
  14662. "description": "Is the user an administrator",
  14663. "type": "boolean",
  14664. "x-go-name": "IsAdmin"
  14665. },
  14666. "language": {
  14667. "description": "User locale",
  14668. "type": "string",
  14669. "x-go-name": "Language"
  14670. },
  14671. "last_login": {
  14672. "type": "string",
  14673. "format": "date-time",
  14674. "x-go-name": "LastLogin"
  14675. },
  14676. "login": {
  14677. "description": "the user's username",
  14678. "type": "string",
  14679. "x-go-name": "UserName"
  14680. }
  14681. },
  14682. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14683. },
  14684. "UserHeatmapData": {
  14685. "description": "UserHeatmapData represents the data needed to create a heatmap",
  14686. "type": "object",
  14687. "properties": {
  14688. "contributions": {
  14689. "type": "integer",
  14690. "format": "int64",
  14691. "x-go-name": "Contributions"
  14692. },
  14693. "timestamp": {
  14694. "$ref": "#/definitions/TimeStamp"
  14695. }
  14696. },
  14697. "x-go-package": "code.gitea.io/gitea/models"
  14698. },
  14699. "WatchInfo": {
  14700. "description": "WatchInfo represents an API watch status of one repository",
  14701. "type": "object",
  14702. "properties": {
  14703. "created_at": {
  14704. "type": "string",
  14705. "format": "date-time",
  14706. "x-go-name": "CreatedAt"
  14707. },
  14708. "ignored": {
  14709. "type": "boolean",
  14710. "x-go-name": "Ignored"
  14711. },
  14712. "reason": {
  14713. "type": "object",
  14714. "x-go-name": "Reason"
  14715. },
  14716. "repository_url": {
  14717. "type": "string",
  14718. "x-go-name": "RepositoryURL"
  14719. },
  14720. "subscribed": {
  14721. "type": "boolean",
  14722. "x-go-name": "Subscribed"
  14723. },
  14724. "url": {
  14725. "type": "string",
  14726. "x-go-name": "URL"
  14727. }
  14728. },
  14729. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14730. }
  14731. },
  14732. "responses": {
  14733. "AccessToken": {
  14734. "description": "AccessToken represents an API access token.",
  14735. "headers": {
  14736. "id": {
  14737. "type": "integer",
  14738. "format": "int64"
  14739. },
  14740. "name": {
  14741. "type": "string"
  14742. },
  14743. "sha1": {
  14744. "type": "string"
  14745. },
  14746. "token_last_eight": {
  14747. "type": "string"
  14748. }
  14749. }
  14750. },
  14751. "AccessTokenList": {
  14752. "description": "AccessTokenList represents a list of API access token.",
  14753. "schema": {
  14754. "type": "array",
  14755. "items": {
  14756. "$ref": "#/definitions/AccessToken"
  14757. }
  14758. }
  14759. },
  14760. "AnnotatedTag": {
  14761. "description": "AnnotatedTag",
  14762. "schema": {
  14763. "$ref": "#/definitions/AnnotatedTag"
  14764. }
  14765. },
  14766. "Attachment": {
  14767. "description": "Attachment",
  14768. "schema": {
  14769. "$ref": "#/definitions/Attachment"
  14770. }
  14771. },
  14772. "AttachmentList": {
  14773. "description": "AttachmentList",
  14774. "schema": {
  14775. "type": "array",
  14776. "items": {
  14777. "$ref": "#/definitions/Attachment"
  14778. }
  14779. }
  14780. },
  14781. "Branch": {
  14782. "description": "Branch",
  14783. "schema": {
  14784. "$ref": "#/definitions/Branch"
  14785. }
  14786. },
  14787. "BranchList": {
  14788. "description": "BranchList",
  14789. "schema": {
  14790. "type": "array",
  14791. "items": {
  14792. "$ref": "#/definitions/Branch"
  14793. }
  14794. }
  14795. },
  14796. "BranchProtection": {
  14797. "description": "BranchProtection",
  14798. "schema": {
  14799. "$ref": "#/definitions/BranchProtection"
  14800. }
  14801. },
  14802. "BranchProtectionList": {
  14803. "description": "BranchProtectionList",
  14804. "schema": {
  14805. "type": "array",
  14806. "items": {
  14807. "$ref": "#/definitions/BranchProtection"
  14808. }
  14809. }
  14810. },
  14811. "Comment": {
  14812. "description": "Comment",
  14813. "schema": {
  14814. "$ref": "#/definitions/Comment"
  14815. }
  14816. },
  14817. "CommentList": {
  14818. "description": "CommentList",
  14819. "schema": {
  14820. "type": "array",
  14821. "items": {
  14822. "$ref": "#/definitions/Comment"
  14823. }
  14824. }
  14825. },
  14826. "Commit": {
  14827. "description": "Commit",
  14828. "schema": {
  14829. "$ref": "#/definitions/Commit"
  14830. }
  14831. },
  14832. "CommitList": {
  14833. "description": "CommitList",
  14834. "schema": {
  14835. "type": "array",
  14836. "items": {
  14837. "$ref": "#/definitions/Commit"
  14838. }
  14839. },
  14840. "headers": {
  14841. "X-HasMore": {
  14842. "type": "boolean",
  14843. "description": "True if there is another page"
  14844. },
  14845. "X-Page": {
  14846. "type": "integer",
  14847. "format": "int64",
  14848. "description": "The current page"
  14849. },
  14850. "X-PageCount": {
  14851. "type": "integer",
  14852. "format": "int64",
  14853. "description": "Total number of pages"
  14854. },
  14855. "X-PerPage": {
  14856. "type": "integer",
  14857. "format": "int64",
  14858. "description": "Commits per page"
  14859. },
  14860. "X-Total": {
  14861. "type": "integer",
  14862. "format": "int64",
  14863. "description": "Total commit count"
  14864. }
  14865. }
  14866. },
  14867. "ContentsListResponse": {
  14868. "description": "ContentsListResponse",
  14869. "schema": {
  14870. "type": "array",
  14871. "items": {
  14872. "$ref": "#/definitions/ContentsResponse"
  14873. }
  14874. }
  14875. },
  14876. "ContentsResponse": {
  14877. "description": "ContentsResponse",
  14878. "schema": {
  14879. "$ref": "#/definitions/ContentsResponse"
  14880. }
  14881. },
  14882. "DeployKey": {
  14883. "description": "DeployKey",
  14884. "schema": {
  14885. "$ref": "#/definitions/DeployKey"
  14886. }
  14887. },
  14888. "DeployKeyList": {
  14889. "description": "DeployKeyList",
  14890. "schema": {
  14891. "type": "array",
  14892. "items": {
  14893. "$ref": "#/definitions/DeployKey"
  14894. }
  14895. }
  14896. },
  14897. "EmailList": {
  14898. "description": "EmailList",
  14899. "schema": {
  14900. "type": "array",
  14901. "items": {
  14902. "$ref": "#/definitions/Email"
  14903. }
  14904. }
  14905. },
  14906. "EmptyRepository": {
  14907. "description": "EmptyRepository",
  14908. "schema": {
  14909. "$ref": "#/definitions/APIError"
  14910. }
  14911. },
  14912. "FileDeleteResponse": {
  14913. "description": "FileDeleteResponse",
  14914. "schema": {
  14915. "$ref": "#/definitions/FileDeleteResponse"
  14916. }
  14917. },
  14918. "FileResponse": {
  14919. "description": "FileResponse",
  14920. "schema": {
  14921. "$ref": "#/definitions/FileResponse"
  14922. }
  14923. },
  14924. "GPGKey": {
  14925. "description": "GPGKey",
  14926. "schema": {
  14927. "$ref": "#/definitions/GPGKey"
  14928. }
  14929. },
  14930. "GPGKeyList": {
  14931. "description": "GPGKeyList",
  14932. "schema": {
  14933. "type": "array",
  14934. "items": {
  14935. "$ref": "#/definitions/GPGKey"
  14936. }
  14937. }
  14938. },
  14939. "GeneralRepoSettings": {
  14940. "description": "GeneralRepoSettings",
  14941. "schema": {
  14942. "$ref": "#/definitions/GeneralRepoSettings"
  14943. }
  14944. },
  14945. "GeneralUISettings": {
  14946. "description": "GeneralUISettings",
  14947. "schema": {
  14948. "$ref": "#/definitions/GeneralUISettings"
  14949. }
  14950. },
  14951. "GitBlobResponse": {
  14952. "description": "GitBlobResponse",
  14953. "schema": {
  14954. "$ref": "#/definitions/GitBlobResponse"
  14955. }
  14956. },
  14957. "GitHook": {
  14958. "description": "GitHook",
  14959. "schema": {
  14960. "$ref": "#/definitions/GitHook"
  14961. }
  14962. },
  14963. "GitHookList": {
  14964. "description": "GitHookList",
  14965. "schema": {
  14966. "type": "array",
  14967. "items": {
  14968. "$ref": "#/definitions/GitHook"
  14969. }
  14970. }
  14971. },
  14972. "GitTreeResponse": {
  14973. "description": "GitTreeResponse",
  14974. "schema": {
  14975. "$ref": "#/definitions/GitTreeResponse"
  14976. }
  14977. },
  14978. "Hook": {
  14979. "description": "Hook",
  14980. "schema": {
  14981. "$ref": "#/definitions/Hook"
  14982. }
  14983. },
  14984. "HookList": {
  14985. "description": "HookList",
  14986. "schema": {
  14987. "type": "array",
  14988. "items": {
  14989. "$ref": "#/definitions/Hook"
  14990. }
  14991. }
  14992. },
  14993. "Issue": {
  14994. "description": "Issue",
  14995. "schema": {
  14996. "$ref": "#/definitions/Issue"
  14997. }
  14998. },
  14999. "IssueDeadline": {
  15000. "description": "IssueDeadline",
  15001. "schema": {
  15002. "$ref": "#/definitions/IssueDeadline"
  15003. }
  15004. },
  15005. "IssueList": {
  15006. "description": "IssueList",
  15007. "schema": {
  15008. "type": "array",
  15009. "items": {
  15010. "$ref": "#/definitions/Issue"
  15011. }
  15012. }
  15013. },
  15014. "Label": {
  15015. "description": "Label",
  15016. "schema": {
  15017. "$ref": "#/definitions/Label"
  15018. }
  15019. },
  15020. "LabelList": {
  15021. "description": "LabelList",
  15022. "schema": {
  15023. "type": "array",
  15024. "items": {
  15025. "$ref": "#/definitions/Label"
  15026. }
  15027. }
  15028. },
  15029. "LanguageStatistics": {
  15030. "description": "LanguageStatistics",
  15031. "schema": {
  15032. "type": "object",
  15033. "additionalProperties": {
  15034. "type": "integer",
  15035. "format": "int64"
  15036. }
  15037. }
  15038. },
  15039. "MarkdownRender": {
  15040. "description": "MarkdownRender is a rendered markdown document",
  15041. "schema": {
  15042. "type": "string"
  15043. }
  15044. },
  15045. "Milestone": {
  15046. "description": "Milestone",
  15047. "schema": {
  15048. "$ref": "#/definitions/Milestone"
  15049. }
  15050. },
  15051. "MilestoneList": {
  15052. "description": "MilestoneList",
  15053. "schema": {
  15054. "type": "array",
  15055. "items": {
  15056. "$ref": "#/definitions/Milestone"
  15057. }
  15058. }
  15059. },
  15060. "NotificationCount": {
  15061. "description": "Number of unread notifications",
  15062. "schema": {
  15063. "$ref": "#/definitions/NotificationCount"
  15064. }
  15065. },
  15066. "NotificationThread": {
  15067. "description": "NotificationThread",
  15068. "schema": {
  15069. "$ref": "#/definitions/NotificationThread"
  15070. }
  15071. },
  15072. "NotificationThreadList": {
  15073. "description": "NotificationThreadList",
  15074. "schema": {
  15075. "type": "array",
  15076. "items": {
  15077. "$ref": "#/definitions/NotificationThread"
  15078. }
  15079. }
  15080. },
  15081. "OAuth2Application": {
  15082. "description": "OAuth2Application",
  15083. "schema": {
  15084. "$ref": "#/definitions/OAuth2Application"
  15085. }
  15086. },
  15087. "OAuth2ApplicationList": {
  15088. "description": "OAuth2ApplicationList represents a list of OAuth2 applications.",
  15089. "schema": {
  15090. "type": "array",
  15091. "items": {
  15092. "$ref": "#/definitions/OAuth2Application"
  15093. }
  15094. }
  15095. },
  15096. "Organization": {
  15097. "description": "Organization",
  15098. "schema": {
  15099. "$ref": "#/definitions/Organization"
  15100. }
  15101. },
  15102. "OrganizationList": {
  15103. "description": "OrganizationList",
  15104. "schema": {
  15105. "type": "array",
  15106. "items": {
  15107. "$ref": "#/definitions/Organization"
  15108. }
  15109. }
  15110. },
  15111. "PublicKey": {
  15112. "description": "PublicKey",
  15113. "schema": {
  15114. "$ref": "#/definitions/PublicKey"
  15115. }
  15116. },
  15117. "PublicKeyList": {
  15118. "description": "PublicKeyList",
  15119. "schema": {
  15120. "type": "array",
  15121. "items": {
  15122. "$ref": "#/definitions/PublicKey"
  15123. }
  15124. }
  15125. },
  15126. "PullRequest": {
  15127. "description": "PullRequest",
  15128. "schema": {
  15129. "$ref": "#/definitions/PullRequest"
  15130. }
  15131. },
  15132. "PullRequestList": {
  15133. "description": "PullRequestList",
  15134. "schema": {
  15135. "type": "array",
  15136. "items": {
  15137. "$ref": "#/definitions/PullRequest"
  15138. }
  15139. }
  15140. },
  15141. "PullReview": {
  15142. "description": "PullReview",
  15143. "schema": {
  15144. "$ref": "#/definitions/PullReview"
  15145. }
  15146. },
  15147. "PullReviewComment": {
  15148. "description": "PullComment",
  15149. "schema": {
  15150. "$ref": "#/definitions/PullReviewComment"
  15151. }
  15152. },
  15153. "PullReviewCommentList": {
  15154. "description": "PullCommentList",
  15155. "schema": {
  15156. "type": "array",
  15157. "items": {
  15158. "$ref": "#/definitions/PullReviewComment"
  15159. }
  15160. }
  15161. },
  15162. "PullReviewList": {
  15163. "description": "PullReviewList",
  15164. "schema": {
  15165. "type": "array",
  15166. "items": {
  15167. "$ref": "#/definitions/PullReview"
  15168. }
  15169. }
  15170. },
  15171. "Reaction": {
  15172. "description": "Reaction",
  15173. "schema": {
  15174. "$ref": "#/definitions/Reaction"
  15175. }
  15176. },
  15177. "ReactionList": {
  15178. "description": "ReactionList",
  15179. "schema": {
  15180. "type": "array",
  15181. "items": {
  15182. "$ref": "#/definitions/Reaction"
  15183. }
  15184. }
  15185. },
  15186. "Reference": {
  15187. "description": "Reference",
  15188. "schema": {
  15189. "$ref": "#/definitions/Reference"
  15190. }
  15191. },
  15192. "ReferenceList": {
  15193. "description": "ReferenceList",
  15194. "schema": {
  15195. "type": "array",
  15196. "items": {
  15197. "$ref": "#/definitions/Reference"
  15198. }
  15199. }
  15200. },
  15201. "Release": {
  15202. "description": "Release",
  15203. "schema": {
  15204. "$ref": "#/definitions/Release"
  15205. }
  15206. },
  15207. "ReleaseList": {
  15208. "description": "ReleaseList",
  15209. "schema": {
  15210. "type": "array",
  15211. "items": {
  15212. "$ref": "#/definitions/Release"
  15213. }
  15214. }
  15215. },
  15216. "Repository": {
  15217. "description": "Repository",
  15218. "schema": {
  15219. "$ref": "#/definitions/Repository"
  15220. }
  15221. },
  15222. "RepositoryList": {
  15223. "description": "RepositoryList",
  15224. "schema": {
  15225. "type": "array",
  15226. "items": {
  15227. "$ref": "#/definitions/Repository"
  15228. }
  15229. }
  15230. },
  15231. "SearchResults": {
  15232. "description": "SearchResults",
  15233. "schema": {
  15234. "$ref": "#/definitions/SearchResults"
  15235. }
  15236. },
  15237. "ServerVersion": {
  15238. "description": "ServerVersion",
  15239. "schema": {
  15240. "$ref": "#/definitions/ServerVersion"
  15241. }
  15242. },
  15243. "Status": {
  15244. "description": "Status",
  15245. "schema": {
  15246. "$ref": "#/definitions/Status"
  15247. }
  15248. },
  15249. "StatusList": {
  15250. "description": "StatusList",
  15251. "schema": {
  15252. "type": "array",
  15253. "items": {
  15254. "$ref": "#/definitions/Status"
  15255. }
  15256. }
  15257. },
  15258. "StopWatch": {
  15259. "description": "StopWatch",
  15260. "schema": {
  15261. "$ref": "#/definitions/StopWatch"
  15262. }
  15263. },
  15264. "StopWatchList": {
  15265. "description": "StopWatchList",
  15266. "schema": {
  15267. "type": "array",
  15268. "items": {
  15269. "$ref": "#/definitions/StopWatch"
  15270. }
  15271. }
  15272. },
  15273. "StringSlice": {
  15274. "description": "StringSlice",
  15275. "schema": {
  15276. "type": "array",
  15277. "items": {
  15278. "type": "string"
  15279. }
  15280. }
  15281. },
  15282. "Tag": {
  15283. "description": "Tag",
  15284. "schema": {
  15285. "$ref": "#/definitions/Tag"
  15286. }
  15287. },
  15288. "TagList": {
  15289. "description": "TagList",
  15290. "schema": {
  15291. "type": "array",
  15292. "items": {
  15293. "$ref": "#/definitions/Tag"
  15294. }
  15295. }
  15296. },
  15297. "Team": {
  15298. "description": "Team",
  15299. "schema": {
  15300. "$ref": "#/definitions/Team"
  15301. }
  15302. },
  15303. "TeamList": {
  15304. "description": "TeamList",
  15305. "schema": {
  15306. "type": "array",
  15307. "items": {
  15308. "$ref": "#/definitions/Team"
  15309. }
  15310. }
  15311. },
  15312. "TopicListResponse": {
  15313. "description": "TopicListResponse",
  15314. "schema": {
  15315. "type": "array",
  15316. "items": {
  15317. "$ref": "#/definitions/TopicResponse"
  15318. }
  15319. }
  15320. },
  15321. "TopicNames": {
  15322. "description": "TopicNames",
  15323. "schema": {
  15324. "$ref": "#/definitions/TopicName"
  15325. }
  15326. },
  15327. "TrackedTime": {
  15328. "description": "TrackedTime",
  15329. "schema": {
  15330. "$ref": "#/definitions/TrackedTime"
  15331. }
  15332. },
  15333. "TrackedTimeList": {
  15334. "description": "TrackedTimeList",
  15335. "schema": {
  15336. "type": "array",
  15337. "items": {
  15338. "$ref": "#/definitions/TrackedTime"
  15339. }
  15340. }
  15341. },
  15342. "User": {
  15343. "description": "User",
  15344. "schema": {
  15345. "$ref": "#/definitions/User"
  15346. }
  15347. },
  15348. "UserHeatmapData": {
  15349. "description": "UserHeatmapData",
  15350. "schema": {
  15351. "type": "array",
  15352. "items": {
  15353. "$ref": "#/definitions/UserHeatmapData"
  15354. }
  15355. }
  15356. },
  15357. "UserList": {
  15358. "description": "UserList",
  15359. "schema": {
  15360. "type": "array",
  15361. "items": {
  15362. "$ref": "#/definitions/User"
  15363. }
  15364. }
  15365. },
  15366. "WatchInfo": {
  15367. "description": "WatchInfo",
  15368. "schema": {
  15369. "$ref": "#/definitions/WatchInfo"
  15370. }
  15371. },
  15372. "empty": {
  15373. "description": "APIEmpty is an empty response"
  15374. },
  15375. "error": {
  15376. "description": "APIError is error format response",
  15377. "headers": {
  15378. "message": {
  15379. "type": "string"
  15380. },
  15381. "url": {
  15382. "type": "string"
  15383. }
  15384. }
  15385. },
  15386. "forbidden": {
  15387. "description": "APIForbiddenError is a forbidden error response",
  15388. "headers": {
  15389. "message": {
  15390. "type": "string"
  15391. },
  15392. "url": {
  15393. "type": "string"
  15394. }
  15395. }
  15396. },
  15397. "invalidTopicsError": {
  15398. "description": "APIInvalidTopicsError is error format response to invalid topics",
  15399. "headers": {
  15400. "invalidTopics": {
  15401. "type": "array",
  15402. "items": {
  15403. "type": "string"
  15404. }
  15405. },
  15406. "message": {
  15407. "type": "string"
  15408. }
  15409. }
  15410. },
  15411. "notFound": {
  15412. "description": "APINotFound is a not found empty response"
  15413. },
  15414. "parameterBodies": {
  15415. "description": "parameterBodies",
  15416. "schema": {
  15417. "$ref": "#/definitions/SubmitPullReviewOptions"
  15418. }
  15419. },
  15420. "redirect": {
  15421. "description": "APIRedirect is a redirect response"
  15422. },
  15423. "string": {
  15424. "description": "APIString is a string response",
  15425. "schema": {
  15426. "type": "string"
  15427. }
  15428. },
  15429. "validationError": {
  15430. "description": "APIValidationError is error format response related to input validation",
  15431. "headers": {
  15432. "message": {
  15433. "type": "string"
  15434. },
  15435. "url": {
  15436. "type": "string"
  15437. }
  15438. }
  15439. }
  15440. },
  15441. "securityDefinitions": {
  15442. "AccessToken": {
  15443. "type": "apiKey",
  15444. "name": "access_token",
  15445. "in": "query"
  15446. },
  15447. "AuthorizationHeaderToken": {
  15448. "description": "API tokens must be prepended with \"token\" followed by a space.",
  15449. "type": "apiKey",
  15450. "name": "Authorization",
  15451. "in": "header"
  15452. },
  15453. "BasicAuth": {
  15454. "type": "basic"
  15455. },
  15456. "SudoHeader": {
  15457. "description": "Sudo API request as the user provided as the key. Admin privileges are required.",
  15458. "type": "apiKey",
  15459. "name": "Sudo",
  15460. "in": "header"
  15461. },
  15462. "SudoParam": {
  15463. "description": "Sudo API request as the user provided as the key. Admin privileges are required.",
  15464. "type": "apiKey",
  15465. "name": "sudo",
  15466. "in": "query"
  15467. },
  15468. "Token": {
  15469. "type": "apiKey",
  15470. "name": "token",
  15471. "in": "query"
  15472. }
  15473. },
  15474. "security": [
  15475. {
  15476. "BasicAuth": []
  15477. },
  15478. {
  15479. "Token": []
  15480. },
  15481. {
  15482. "AccessToken": []
  15483. },
  15484. {
  15485. "AuthorizationHeaderToken": []
  15486. },
  15487. {
  15488. "SudoParam": []
  15489. },
  15490. {
  15491. "SudoHeader": []
  15492. }
  15493. ]
  15494. }