You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

v1_json.tmpl 387KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503
  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. "enum": [
  3780. "closed",
  3781. "open",
  3782. "all"
  3783. ],
  3784. "type": "string",
  3785. "description": "whether issue is open or closed",
  3786. "name": "state",
  3787. "in": "query"
  3788. },
  3789. {
  3790. "type": "string",
  3791. "description": "comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded",
  3792. "name": "labels",
  3793. "in": "query"
  3794. },
  3795. {
  3796. "type": "string",
  3797. "description": "search string",
  3798. "name": "q",
  3799. "in": "query"
  3800. },
  3801. {
  3802. "enum": [
  3803. "issues",
  3804. "pulls"
  3805. ],
  3806. "type": "string",
  3807. "description": "filter by type (issues / pulls) if set",
  3808. "name": "type",
  3809. "in": "query"
  3810. },
  3811. {
  3812. "type": "string",
  3813. "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",
  3814. "name": "milestones",
  3815. "in": "query"
  3816. },
  3817. {
  3818. "type": "integer",
  3819. "description": "page number of results to return (1-based)",
  3820. "name": "page",
  3821. "in": "query"
  3822. },
  3823. {
  3824. "type": "integer",
  3825. "description": "page size of results",
  3826. "name": "limit",
  3827. "in": "query"
  3828. }
  3829. ],
  3830. "responses": {
  3831. "200": {
  3832. "$ref": "#/responses/IssueList"
  3833. }
  3834. }
  3835. },
  3836. "post": {
  3837. "consumes": [
  3838. "application/json"
  3839. ],
  3840. "produces": [
  3841. "application/json"
  3842. ],
  3843. "tags": [
  3844. "issue"
  3845. ],
  3846. "summary": "Create an issue. If using deadline only the date will be taken into account, and time of day ignored.",
  3847. "operationId": "issueCreateIssue",
  3848. "parameters": [
  3849. {
  3850. "type": "string",
  3851. "description": "owner of the repo",
  3852. "name": "owner",
  3853. "in": "path",
  3854. "required": true
  3855. },
  3856. {
  3857. "type": "string",
  3858. "description": "name of the repo",
  3859. "name": "repo",
  3860. "in": "path",
  3861. "required": true
  3862. },
  3863. {
  3864. "name": "body",
  3865. "in": "body",
  3866. "schema": {
  3867. "$ref": "#/definitions/CreateIssueOption"
  3868. }
  3869. }
  3870. ],
  3871. "responses": {
  3872. "201": {
  3873. "$ref": "#/responses/Issue"
  3874. },
  3875. "403": {
  3876. "$ref": "#/responses/forbidden"
  3877. },
  3878. "412": {
  3879. "$ref": "#/responses/error"
  3880. },
  3881. "422": {
  3882. "$ref": "#/responses/validationError"
  3883. }
  3884. }
  3885. }
  3886. },
  3887. "/repos/{owner}/{repo}/issues/comments": {
  3888. "get": {
  3889. "produces": [
  3890. "application/json"
  3891. ],
  3892. "tags": [
  3893. "issue"
  3894. ],
  3895. "summary": "List all comments in a repository",
  3896. "operationId": "issueGetRepoComments",
  3897. "parameters": [
  3898. {
  3899. "type": "string",
  3900. "description": "owner of the repo",
  3901. "name": "owner",
  3902. "in": "path",
  3903. "required": true
  3904. },
  3905. {
  3906. "type": "string",
  3907. "description": "name of the repo",
  3908. "name": "repo",
  3909. "in": "path",
  3910. "required": true
  3911. },
  3912. {
  3913. "type": "string",
  3914. "format": "date-time",
  3915. "description": "if provided, only comments updated since the provided time are returned.",
  3916. "name": "since",
  3917. "in": "query"
  3918. },
  3919. {
  3920. "type": "string",
  3921. "format": "date-time",
  3922. "description": "if provided, only comments updated before the provided time are returned.",
  3923. "name": "before",
  3924. "in": "query"
  3925. },
  3926. {
  3927. "type": "integer",
  3928. "description": "page number of results to return (1-based)",
  3929. "name": "page",
  3930. "in": "query"
  3931. },
  3932. {
  3933. "type": "integer",
  3934. "description": "page size of results",
  3935. "name": "limit",
  3936. "in": "query"
  3937. }
  3938. ],
  3939. "responses": {
  3940. "200": {
  3941. "$ref": "#/responses/CommentList"
  3942. }
  3943. }
  3944. }
  3945. },
  3946. "/repos/{owner}/{repo}/issues/comments/{id}": {
  3947. "get": {
  3948. "consumes": [
  3949. "application/json"
  3950. ],
  3951. "produces": [
  3952. "application/json"
  3953. ],
  3954. "tags": [
  3955. "issue"
  3956. ],
  3957. "summary": "Get a comment",
  3958. "operationId": "issueGetComment",
  3959. "parameters": [
  3960. {
  3961. "type": "string",
  3962. "description": "owner of the repo",
  3963. "name": "owner",
  3964. "in": "path",
  3965. "required": true
  3966. },
  3967. {
  3968. "type": "string",
  3969. "description": "name of the repo",
  3970. "name": "repo",
  3971. "in": "path",
  3972. "required": true
  3973. },
  3974. {
  3975. "type": "integer",
  3976. "format": "int64",
  3977. "description": "id of the comment",
  3978. "name": "id",
  3979. "in": "path",
  3980. "required": true
  3981. }
  3982. ],
  3983. "responses": {
  3984. "200": {
  3985. "$ref": "#/responses/Comment"
  3986. },
  3987. "204": {
  3988. "$ref": "#/responses/empty"
  3989. },
  3990. "403": {
  3991. "$ref": "#/responses/forbidden"
  3992. },
  3993. "404": {
  3994. "$ref": "#/responses/notFound"
  3995. }
  3996. }
  3997. },
  3998. "delete": {
  3999. "tags": [
  4000. "issue"
  4001. ],
  4002. "summary": "Delete a comment",
  4003. "operationId": "issueDeleteComment",
  4004. "parameters": [
  4005. {
  4006. "type": "string",
  4007. "description": "owner of the repo",
  4008. "name": "owner",
  4009. "in": "path",
  4010. "required": true
  4011. },
  4012. {
  4013. "type": "string",
  4014. "description": "name of the repo",
  4015. "name": "repo",
  4016. "in": "path",
  4017. "required": true
  4018. },
  4019. {
  4020. "type": "integer",
  4021. "format": "int64",
  4022. "description": "id of comment to delete",
  4023. "name": "id",
  4024. "in": "path",
  4025. "required": true
  4026. }
  4027. ],
  4028. "responses": {
  4029. "204": {
  4030. "$ref": "#/responses/empty"
  4031. },
  4032. "403": {
  4033. "$ref": "#/responses/forbidden"
  4034. },
  4035. "404": {
  4036. "$ref": "#/responses/notFound"
  4037. }
  4038. }
  4039. },
  4040. "patch": {
  4041. "consumes": [
  4042. "application/json"
  4043. ],
  4044. "produces": [
  4045. "application/json"
  4046. ],
  4047. "tags": [
  4048. "issue"
  4049. ],
  4050. "summary": "Edit a comment",
  4051. "operationId": "issueEditComment",
  4052. "parameters": [
  4053. {
  4054. "type": "string",
  4055. "description": "owner of the repo",
  4056. "name": "owner",
  4057. "in": "path",
  4058. "required": true
  4059. },
  4060. {
  4061. "type": "string",
  4062. "description": "name of the repo",
  4063. "name": "repo",
  4064. "in": "path",
  4065. "required": true
  4066. },
  4067. {
  4068. "type": "integer",
  4069. "format": "int64",
  4070. "description": "id of the comment to edit",
  4071. "name": "id",
  4072. "in": "path",
  4073. "required": true
  4074. },
  4075. {
  4076. "name": "body",
  4077. "in": "body",
  4078. "schema": {
  4079. "$ref": "#/definitions/EditIssueCommentOption"
  4080. }
  4081. }
  4082. ],
  4083. "responses": {
  4084. "200": {
  4085. "$ref": "#/responses/Comment"
  4086. },
  4087. "204": {
  4088. "$ref": "#/responses/empty"
  4089. },
  4090. "403": {
  4091. "$ref": "#/responses/forbidden"
  4092. },
  4093. "404": {
  4094. "$ref": "#/responses/notFound"
  4095. }
  4096. }
  4097. }
  4098. },
  4099. "/repos/{owner}/{repo}/issues/comments/{id}/reactions": {
  4100. "get": {
  4101. "consumes": [
  4102. "application/json"
  4103. ],
  4104. "produces": [
  4105. "application/json"
  4106. ],
  4107. "tags": [
  4108. "issue"
  4109. ],
  4110. "summary": "Get a list of reactions from a comment of an issue",
  4111. "operationId": "issueGetCommentReactions",
  4112. "parameters": [
  4113. {
  4114. "type": "string",
  4115. "description": "owner of the repo",
  4116. "name": "owner",
  4117. "in": "path",
  4118. "required": true
  4119. },
  4120. {
  4121. "type": "string",
  4122. "description": "name of the repo",
  4123. "name": "repo",
  4124. "in": "path",
  4125. "required": true
  4126. },
  4127. {
  4128. "type": "integer",
  4129. "format": "int64",
  4130. "description": "id of the comment to edit",
  4131. "name": "id",
  4132. "in": "path",
  4133. "required": true
  4134. }
  4135. ],
  4136. "responses": {
  4137. "200": {
  4138. "$ref": "#/responses/ReactionList"
  4139. },
  4140. "403": {
  4141. "$ref": "#/responses/forbidden"
  4142. }
  4143. }
  4144. },
  4145. "post": {
  4146. "consumes": [
  4147. "application/json"
  4148. ],
  4149. "produces": [
  4150. "application/json"
  4151. ],
  4152. "tags": [
  4153. "issue"
  4154. ],
  4155. "summary": "Add a reaction to a comment of an issue",
  4156. "operationId": "issuePostCommentReaction",
  4157. "parameters": [
  4158. {
  4159. "type": "string",
  4160. "description": "owner of the repo",
  4161. "name": "owner",
  4162. "in": "path",
  4163. "required": true
  4164. },
  4165. {
  4166. "type": "string",
  4167. "description": "name of the repo",
  4168. "name": "repo",
  4169. "in": "path",
  4170. "required": true
  4171. },
  4172. {
  4173. "type": "integer",
  4174. "format": "int64",
  4175. "description": "id of the comment to edit",
  4176. "name": "id",
  4177. "in": "path",
  4178. "required": true
  4179. },
  4180. {
  4181. "name": "content",
  4182. "in": "body",
  4183. "schema": {
  4184. "$ref": "#/definitions/EditReactionOption"
  4185. }
  4186. }
  4187. ],
  4188. "responses": {
  4189. "200": {
  4190. "$ref": "#/responses/Reaction"
  4191. },
  4192. "201": {
  4193. "$ref": "#/responses/Reaction"
  4194. },
  4195. "403": {
  4196. "$ref": "#/responses/forbidden"
  4197. }
  4198. }
  4199. },
  4200. "delete": {
  4201. "consumes": [
  4202. "application/json"
  4203. ],
  4204. "produces": [
  4205. "application/json"
  4206. ],
  4207. "tags": [
  4208. "issue"
  4209. ],
  4210. "summary": "Remove a reaction from a comment of an issue",
  4211. "operationId": "issueDeleteCommentReaction",
  4212. "parameters": [
  4213. {
  4214. "type": "string",
  4215. "description": "owner of the repo",
  4216. "name": "owner",
  4217. "in": "path",
  4218. "required": true
  4219. },
  4220. {
  4221. "type": "string",
  4222. "description": "name of the repo",
  4223. "name": "repo",
  4224. "in": "path",
  4225. "required": true
  4226. },
  4227. {
  4228. "type": "integer",
  4229. "format": "int64",
  4230. "description": "id of the comment to edit",
  4231. "name": "id",
  4232. "in": "path",
  4233. "required": true
  4234. },
  4235. {
  4236. "name": "content",
  4237. "in": "body",
  4238. "schema": {
  4239. "$ref": "#/definitions/EditReactionOption"
  4240. }
  4241. }
  4242. ],
  4243. "responses": {
  4244. "200": {
  4245. "$ref": "#/responses/empty"
  4246. },
  4247. "403": {
  4248. "$ref": "#/responses/forbidden"
  4249. }
  4250. }
  4251. }
  4252. },
  4253. "/repos/{owner}/{repo}/issues/{index}": {
  4254. "get": {
  4255. "produces": [
  4256. "application/json"
  4257. ],
  4258. "tags": [
  4259. "issue"
  4260. ],
  4261. "summary": "Get an issue",
  4262. "operationId": "issueGetIssue",
  4263. "parameters": [
  4264. {
  4265. "type": "string",
  4266. "description": "owner of the repo",
  4267. "name": "owner",
  4268. "in": "path",
  4269. "required": true
  4270. },
  4271. {
  4272. "type": "string",
  4273. "description": "name of the repo",
  4274. "name": "repo",
  4275. "in": "path",
  4276. "required": true
  4277. },
  4278. {
  4279. "type": "integer",
  4280. "format": "int64",
  4281. "description": "index of the issue to get",
  4282. "name": "index",
  4283. "in": "path",
  4284. "required": true
  4285. }
  4286. ],
  4287. "responses": {
  4288. "200": {
  4289. "$ref": "#/responses/Issue"
  4290. },
  4291. "404": {
  4292. "$ref": "#/responses/notFound"
  4293. }
  4294. }
  4295. },
  4296. "patch": {
  4297. "consumes": [
  4298. "application/json"
  4299. ],
  4300. "produces": [
  4301. "application/json"
  4302. ],
  4303. "tags": [
  4304. "issue"
  4305. ],
  4306. "summary": "Edit an issue. If using deadline only the date will be taken into account, and time of day ignored.",
  4307. "operationId": "issueEditIssue",
  4308. "parameters": [
  4309. {
  4310. "type": "string",
  4311. "description": "owner of the repo",
  4312. "name": "owner",
  4313. "in": "path",
  4314. "required": true
  4315. },
  4316. {
  4317. "type": "string",
  4318. "description": "name of the repo",
  4319. "name": "repo",
  4320. "in": "path",
  4321. "required": true
  4322. },
  4323. {
  4324. "type": "integer",
  4325. "format": "int64",
  4326. "description": "index of the issue to edit",
  4327. "name": "index",
  4328. "in": "path",
  4329. "required": true
  4330. },
  4331. {
  4332. "name": "body",
  4333. "in": "body",
  4334. "schema": {
  4335. "$ref": "#/definitions/EditIssueOption"
  4336. }
  4337. }
  4338. ],
  4339. "responses": {
  4340. "201": {
  4341. "$ref": "#/responses/Issue"
  4342. },
  4343. "403": {
  4344. "$ref": "#/responses/forbidden"
  4345. },
  4346. "404": {
  4347. "$ref": "#/responses/notFound"
  4348. },
  4349. "412": {
  4350. "$ref": "#/responses/error"
  4351. }
  4352. }
  4353. }
  4354. },
  4355. "/repos/{owner}/{repo}/issues/{index}/comments": {
  4356. "get": {
  4357. "produces": [
  4358. "application/json"
  4359. ],
  4360. "tags": [
  4361. "issue"
  4362. ],
  4363. "summary": "List all comments on an issue",
  4364. "operationId": "issueGetComments",
  4365. "parameters": [
  4366. {
  4367. "type": "string",
  4368. "description": "owner of the repo",
  4369. "name": "owner",
  4370. "in": "path",
  4371. "required": true
  4372. },
  4373. {
  4374. "type": "string",
  4375. "description": "name of the repo",
  4376. "name": "repo",
  4377. "in": "path",
  4378. "required": true
  4379. },
  4380. {
  4381. "type": "integer",
  4382. "format": "int64",
  4383. "description": "index of the issue",
  4384. "name": "index",
  4385. "in": "path",
  4386. "required": true
  4387. },
  4388. {
  4389. "type": "string",
  4390. "format": "date-time",
  4391. "description": "if provided, only comments updated since the specified time are returned.",
  4392. "name": "since",
  4393. "in": "query"
  4394. },
  4395. {
  4396. "type": "string",
  4397. "format": "date-time",
  4398. "description": "if provided, only comments updated before the provided time are returned.",
  4399. "name": "before",
  4400. "in": "query"
  4401. }
  4402. ],
  4403. "responses": {
  4404. "200": {
  4405. "$ref": "#/responses/CommentList"
  4406. }
  4407. }
  4408. },
  4409. "post": {
  4410. "consumes": [
  4411. "application/json"
  4412. ],
  4413. "produces": [
  4414. "application/json"
  4415. ],
  4416. "tags": [
  4417. "issue"
  4418. ],
  4419. "summary": "Add a comment to an issue",
  4420. "operationId": "issueCreateComment",
  4421. "parameters": [
  4422. {
  4423. "type": "string",
  4424. "description": "owner of the repo",
  4425. "name": "owner",
  4426. "in": "path",
  4427. "required": true
  4428. },
  4429. {
  4430. "type": "string",
  4431. "description": "name of the repo",
  4432. "name": "repo",
  4433. "in": "path",
  4434. "required": true
  4435. },
  4436. {
  4437. "type": "integer",
  4438. "format": "int64",
  4439. "description": "index of the issue",
  4440. "name": "index",
  4441. "in": "path",
  4442. "required": true
  4443. },
  4444. {
  4445. "name": "body",
  4446. "in": "body",
  4447. "schema": {
  4448. "$ref": "#/definitions/CreateIssueCommentOption"
  4449. }
  4450. }
  4451. ],
  4452. "responses": {
  4453. "201": {
  4454. "$ref": "#/responses/Comment"
  4455. },
  4456. "403": {
  4457. "$ref": "#/responses/forbidden"
  4458. }
  4459. }
  4460. }
  4461. },
  4462. "/repos/{owner}/{repo}/issues/{index}/comments/{id}": {
  4463. "delete": {
  4464. "tags": [
  4465. "issue"
  4466. ],
  4467. "summary": "Delete a comment",
  4468. "operationId": "issueDeleteCommentDeprecated",
  4469. "deprecated": true,
  4470. "parameters": [
  4471. {
  4472. "type": "string",
  4473. "description": "owner of the repo",
  4474. "name": "owner",
  4475. "in": "path",
  4476. "required": true
  4477. },
  4478. {
  4479. "type": "string",
  4480. "description": "name of the repo",
  4481. "name": "repo",
  4482. "in": "path",
  4483. "required": true
  4484. },
  4485. {
  4486. "type": "integer",
  4487. "description": "this parameter is ignored",
  4488. "name": "index",
  4489. "in": "path",
  4490. "required": true
  4491. },
  4492. {
  4493. "type": "integer",
  4494. "format": "int64",
  4495. "description": "id of comment to delete",
  4496. "name": "id",
  4497. "in": "path",
  4498. "required": true
  4499. }
  4500. ],
  4501. "responses": {
  4502. "204": {
  4503. "$ref": "#/responses/empty"
  4504. },
  4505. "403": {
  4506. "$ref": "#/responses/forbidden"
  4507. },
  4508. "404": {
  4509. "$ref": "#/responses/notFound"
  4510. }
  4511. }
  4512. },
  4513. "patch": {
  4514. "consumes": [
  4515. "application/json"
  4516. ],
  4517. "produces": [
  4518. "application/json"
  4519. ],
  4520. "tags": [
  4521. "issue"
  4522. ],
  4523. "summary": "Edit a comment",
  4524. "operationId": "issueEditCommentDeprecated",
  4525. "deprecated": true,
  4526. "parameters": [
  4527. {
  4528. "type": "string",
  4529. "description": "owner of the repo",
  4530. "name": "owner",
  4531. "in": "path",
  4532. "required": true
  4533. },
  4534. {
  4535. "type": "string",
  4536. "description": "name of the repo",
  4537. "name": "repo",
  4538. "in": "path",
  4539. "required": true
  4540. },
  4541. {
  4542. "type": "integer",
  4543. "description": "this parameter is ignored",
  4544. "name": "index",
  4545. "in": "path",
  4546. "required": true
  4547. },
  4548. {
  4549. "type": "integer",
  4550. "format": "int64",
  4551. "description": "id of the comment to edit",
  4552. "name": "id",
  4553. "in": "path",
  4554. "required": true
  4555. },
  4556. {
  4557. "name": "body",
  4558. "in": "body",
  4559. "schema": {
  4560. "$ref": "#/definitions/EditIssueCommentOption"
  4561. }
  4562. }
  4563. ],
  4564. "responses": {
  4565. "200": {
  4566. "$ref": "#/responses/Comment"
  4567. },
  4568. "204": {
  4569. "$ref": "#/responses/empty"
  4570. },
  4571. "403": {
  4572. "$ref": "#/responses/forbidden"
  4573. },
  4574. "404": {
  4575. "$ref": "#/responses/notFound"
  4576. }
  4577. }
  4578. }
  4579. },
  4580. "/repos/{owner}/{repo}/issues/{index}/deadline": {
  4581. "post": {
  4582. "consumes": [
  4583. "application/json"
  4584. ],
  4585. "produces": [
  4586. "application/json"
  4587. ],
  4588. "tags": [
  4589. "issue"
  4590. ],
  4591. "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.",
  4592. "operationId": "issueEditIssueDeadline",
  4593. "parameters": [
  4594. {
  4595. "type": "string",
  4596. "description": "owner of the repo",
  4597. "name": "owner",
  4598. "in": "path",
  4599. "required": true
  4600. },
  4601. {
  4602. "type": "string",
  4603. "description": "name of the repo",
  4604. "name": "repo",
  4605. "in": "path",
  4606. "required": true
  4607. },
  4608. {
  4609. "type": "integer",
  4610. "format": "int64",
  4611. "description": "index of the issue to create or update a deadline on",
  4612. "name": "index",
  4613. "in": "path",
  4614. "required": true
  4615. },
  4616. {
  4617. "name": "body",
  4618. "in": "body",
  4619. "schema": {
  4620. "$ref": "#/definitions/EditDeadlineOption"
  4621. }
  4622. }
  4623. ],
  4624. "responses": {
  4625. "201": {
  4626. "$ref": "#/responses/IssueDeadline"
  4627. },
  4628. "403": {
  4629. "$ref": "#/responses/forbidden"
  4630. },
  4631. "404": {
  4632. "$ref": "#/responses/notFound"
  4633. }
  4634. }
  4635. }
  4636. },
  4637. "/repos/{owner}/{repo}/issues/{index}/labels": {
  4638. "get": {
  4639. "produces": [
  4640. "application/json"
  4641. ],
  4642. "tags": [
  4643. "issue"
  4644. ],
  4645. "summary": "Get an issue's labels",
  4646. "operationId": "issueGetLabels",
  4647. "parameters": [
  4648. {
  4649. "type": "string",
  4650. "description": "owner of the repo",
  4651. "name": "owner",
  4652. "in": "path",
  4653. "required": true
  4654. },
  4655. {
  4656. "type": "string",
  4657. "description": "name of the repo",
  4658. "name": "repo",
  4659. "in": "path",
  4660. "required": true
  4661. },
  4662. {
  4663. "type": "integer",
  4664. "format": "int64",
  4665. "description": "index of the issue",
  4666. "name": "index",
  4667. "in": "path",
  4668. "required": true
  4669. }
  4670. ],
  4671. "responses": {
  4672. "200": {
  4673. "$ref": "#/responses/LabelList"
  4674. },
  4675. "404": {
  4676. "$ref": "#/responses/notFound"
  4677. }
  4678. }
  4679. },
  4680. "put": {
  4681. "consumes": [
  4682. "application/json"
  4683. ],
  4684. "produces": [
  4685. "application/json"
  4686. ],
  4687. "tags": [
  4688. "issue"
  4689. ],
  4690. "summary": "Replace an issue's labels",
  4691. "operationId": "issueReplaceLabels",
  4692. "parameters": [
  4693. {
  4694. "type": "string",
  4695. "description": "owner of the repo",
  4696. "name": "owner",
  4697. "in": "path",
  4698. "required": true
  4699. },
  4700. {
  4701. "type": "string",
  4702. "description": "name of the repo",
  4703. "name": "repo",
  4704. "in": "path",
  4705. "required": true
  4706. },
  4707. {
  4708. "type": "integer",
  4709. "format": "int64",
  4710. "description": "index of the issue",
  4711. "name": "index",
  4712. "in": "path",
  4713. "required": true
  4714. },
  4715. {
  4716. "name": "body",
  4717. "in": "body",
  4718. "schema": {
  4719. "$ref": "#/definitions/IssueLabelsOption"
  4720. }
  4721. }
  4722. ],
  4723. "responses": {
  4724. "200": {
  4725. "$ref": "#/responses/LabelList"
  4726. },
  4727. "403": {
  4728. "$ref": "#/responses/forbidden"
  4729. }
  4730. }
  4731. },
  4732. "post": {
  4733. "consumes": [
  4734. "application/json"
  4735. ],
  4736. "produces": [
  4737. "application/json"
  4738. ],
  4739. "tags": [
  4740. "issue"
  4741. ],
  4742. "summary": "Add a label to an issue",
  4743. "operationId": "issueAddLabel",
  4744. "parameters": [
  4745. {
  4746. "type": "string",
  4747. "description": "owner of the repo",
  4748. "name": "owner",
  4749. "in": "path",
  4750. "required": true
  4751. },
  4752. {
  4753. "type": "string",
  4754. "description": "name of the repo",
  4755. "name": "repo",
  4756. "in": "path",
  4757. "required": true
  4758. },
  4759. {
  4760. "type": "integer",
  4761. "format": "int64",
  4762. "description": "index of the issue",
  4763. "name": "index",
  4764. "in": "path",
  4765. "required": true
  4766. },
  4767. {
  4768. "name": "body",
  4769. "in": "body",
  4770. "schema": {
  4771. "$ref": "#/definitions/IssueLabelsOption"
  4772. }
  4773. }
  4774. ],
  4775. "responses": {
  4776. "200": {
  4777. "$ref": "#/responses/LabelList"
  4778. },
  4779. "403": {
  4780. "$ref": "#/responses/forbidden"
  4781. }
  4782. }
  4783. },
  4784. "delete": {
  4785. "produces": [
  4786. "application/json"
  4787. ],
  4788. "tags": [
  4789. "issue"
  4790. ],
  4791. "summary": "Remove all labels from an issue",
  4792. "operationId": "issueClearLabels",
  4793. "parameters": [
  4794. {
  4795. "type": "string",
  4796. "description": "owner of the repo",
  4797. "name": "owner",
  4798. "in": "path",
  4799. "required": true
  4800. },
  4801. {
  4802. "type": "string",
  4803. "description": "name of the repo",
  4804. "name": "repo",
  4805. "in": "path",
  4806. "required": true
  4807. },
  4808. {
  4809. "type": "integer",
  4810. "format": "int64",
  4811. "description": "index of the issue",
  4812. "name": "index",
  4813. "in": "path",
  4814. "required": true
  4815. }
  4816. ],
  4817. "responses": {
  4818. "204": {
  4819. "$ref": "#/responses/empty"
  4820. },
  4821. "403": {
  4822. "$ref": "#/responses/forbidden"
  4823. }
  4824. }
  4825. }
  4826. },
  4827. "/repos/{owner}/{repo}/issues/{index}/labels/{id}": {
  4828. "delete": {
  4829. "produces": [
  4830. "application/json"
  4831. ],
  4832. "tags": [
  4833. "issue"
  4834. ],
  4835. "summary": "Remove a label from an issue",
  4836. "operationId": "issueRemoveLabel",
  4837. "parameters": [
  4838. {
  4839. "type": "string",
  4840. "description": "owner of the repo",
  4841. "name": "owner",
  4842. "in": "path",
  4843. "required": true
  4844. },
  4845. {
  4846. "type": "string",
  4847. "description": "name of the repo",
  4848. "name": "repo",
  4849. "in": "path",
  4850. "required": true
  4851. },
  4852. {
  4853. "type": "integer",
  4854. "format": "int64",
  4855. "description": "index of the issue",
  4856. "name": "index",
  4857. "in": "path",
  4858. "required": true
  4859. },
  4860. {
  4861. "type": "integer",
  4862. "format": "int64",
  4863. "description": "id of the label to remove",
  4864. "name": "id",
  4865. "in": "path",
  4866. "required": true
  4867. }
  4868. ],
  4869. "responses": {
  4870. "204": {
  4871. "$ref": "#/responses/empty"
  4872. },
  4873. "403": {
  4874. "$ref": "#/responses/forbidden"
  4875. },
  4876. "422": {
  4877. "$ref": "#/responses/validationError"
  4878. }
  4879. }
  4880. }
  4881. },
  4882. "/repos/{owner}/{repo}/issues/{index}/reactions": {
  4883. "get": {
  4884. "consumes": [
  4885. "application/json"
  4886. ],
  4887. "produces": [
  4888. "application/json"
  4889. ],
  4890. "tags": [
  4891. "issue"
  4892. ],
  4893. "summary": "Get a list reactions of an issue",
  4894. "operationId": "issueGetIssueReactions",
  4895. "parameters": [
  4896. {
  4897. "type": "string",
  4898. "description": "owner of the repo",
  4899. "name": "owner",
  4900. "in": "path",
  4901. "required": true
  4902. },
  4903. {
  4904. "type": "string",
  4905. "description": "name of the repo",
  4906. "name": "repo",
  4907. "in": "path",
  4908. "required": true
  4909. },
  4910. {
  4911. "type": "integer",
  4912. "format": "int64",
  4913. "description": "index of the issue",
  4914. "name": "index",
  4915. "in": "path",
  4916. "required": true
  4917. },
  4918. {
  4919. "type": "integer",
  4920. "description": "page number of results to return (1-based)",
  4921. "name": "page",
  4922. "in": "query"
  4923. },
  4924. {
  4925. "type": "integer",
  4926. "description": "page size of results",
  4927. "name": "limit",
  4928. "in": "query"
  4929. }
  4930. ],
  4931. "responses": {
  4932. "200": {
  4933. "$ref": "#/responses/ReactionList"
  4934. },
  4935. "403": {
  4936. "$ref": "#/responses/forbidden"
  4937. }
  4938. }
  4939. },
  4940. "post": {
  4941. "consumes": [
  4942. "application/json"
  4943. ],
  4944. "produces": [
  4945. "application/json"
  4946. ],
  4947. "tags": [
  4948. "issue"
  4949. ],
  4950. "summary": "Add a reaction to an issue",
  4951. "operationId": "issuePostIssueReaction",
  4952. "parameters": [
  4953. {
  4954. "type": "string",
  4955. "description": "owner of the repo",
  4956. "name": "owner",
  4957. "in": "path",
  4958. "required": true
  4959. },
  4960. {
  4961. "type": "string",
  4962. "description": "name of the repo",
  4963. "name": "repo",
  4964. "in": "path",
  4965. "required": true
  4966. },
  4967. {
  4968. "type": "integer",
  4969. "format": "int64",
  4970. "description": "index of the issue",
  4971. "name": "index",
  4972. "in": "path",
  4973. "required": true
  4974. },
  4975. {
  4976. "name": "content",
  4977. "in": "body",
  4978. "schema": {
  4979. "$ref": "#/definitions/EditReactionOption"
  4980. }
  4981. }
  4982. ],
  4983. "responses": {
  4984. "200": {
  4985. "$ref": "#/responses/Reaction"
  4986. },
  4987. "201": {
  4988. "$ref": "#/responses/Reaction"
  4989. },
  4990. "403": {
  4991. "$ref": "#/responses/forbidden"
  4992. }
  4993. }
  4994. },
  4995. "delete": {
  4996. "consumes": [
  4997. "application/json"
  4998. ],
  4999. "produces": [
  5000. "application/json"
  5001. ],
  5002. "tags": [
  5003. "issue"
  5004. ],
  5005. "summary": "Remove a reaction from an issue",
  5006. "operationId": "issueDeleteIssueReaction",
  5007. "parameters": [
  5008. {
  5009. "type": "string",
  5010. "description": "owner of the repo",
  5011. "name": "owner",
  5012. "in": "path",
  5013. "required": true
  5014. },
  5015. {
  5016. "type": "string",
  5017. "description": "name of the repo",
  5018. "name": "repo",
  5019. "in": "path",
  5020. "required": true
  5021. },
  5022. {
  5023. "type": "integer",
  5024. "format": "int64",
  5025. "description": "index of the issue",
  5026. "name": "index",
  5027. "in": "path",
  5028. "required": true
  5029. },
  5030. {
  5031. "name": "content",
  5032. "in": "body",
  5033. "schema": {
  5034. "$ref": "#/definitions/EditReactionOption"
  5035. }
  5036. }
  5037. ],
  5038. "responses": {
  5039. "200": {
  5040. "$ref": "#/responses/empty"
  5041. },
  5042. "403": {
  5043. "$ref": "#/responses/forbidden"
  5044. }
  5045. }
  5046. }
  5047. },
  5048. "/repos/{owner}/{repo}/issues/{index}/stopwatch/delete": {
  5049. "delete": {
  5050. "consumes": [
  5051. "application/json"
  5052. ],
  5053. "produces": [
  5054. "application/json"
  5055. ],
  5056. "tags": [
  5057. "issue"
  5058. ],
  5059. "summary": "Delete an issue's existing stopwatch.",
  5060. "operationId": "issueDeleteStopWatch",
  5061. "parameters": [
  5062. {
  5063. "type": "string",
  5064. "description": "owner of the repo",
  5065. "name": "owner",
  5066. "in": "path",
  5067. "required": true
  5068. },
  5069. {
  5070. "type": "string",
  5071. "description": "name of the repo",
  5072. "name": "repo",
  5073. "in": "path",
  5074. "required": true
  5075. },
  5076. {
  5077. "type": "integer",
  5078. "format": "int64",
  5079. "description": "index of the issue to stop the stopwatch on",
  5080. "name": "index",
  5081. "in": "path",
  5082. "required": true
  5083. }
  5084. ],
  5085. "responses": {
  5086. "204": {
  5087. "$ref": "#/responses/empty"
  5088. },
  5089. "403": {
  5090. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  5091. },
  5092. "404": {
  5093. "$ref": "#/responses/notFound"
  5094. },
  5095. "409": {
  5096. "description": "Cannot cancel a non existent stopwatch"
  5097. }
  5098. }
  5099. }
  5100. },
  5101. "/repos/{owner}/{repo}/issues/{index}/stopwatch/start": {
  5102. "post": {
  5103. "consumes": [
  5104. "application/json"
  5105. ],
  5106. "produces": [
  5107. "application/json"
  5108. ],
  5109. "tags": [
  5110. "issue"
  5111. ],
  5112. "summary": "Start stopwatch on an issue.",
  5113. "operationId": "issueStartStopWatch",
  5114. "parameters": [
  5115. {
  5116. "type": "string",
  5117. "description": "owner of the repo",
  5118. "name": "owner",
  5119. "in": "path",
  5120. "required": true
  5121. },
  5122. {
  5123. "type": "string",
  5124. "description": "name of the repo",
  5125. "name": "repo",
  5126. "in": "path",
  5127. "required": true
  5128. },
  5129. {
  5130. "type": "integer",
  5131. "format": "int64",
  5132. "description": "index of the issue to create the stopwatch on",
  5133. "name": "index",
  5134. "in": "path",
  5135. "required": true
  5136. }
  5137. ],
  5138. "responses": {
  5139. "201": {
  5140. "$ref": "#/responses/empty"
  5141. },
  5142. "403": {
  5143. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  5144. },
  5145. "404": {
  5146. "$ref": "#/responses/notFound"
  5147. },
  5148. "409": {
  5149. "description": "Cannot start a stopwatch again if it already exists"
  5150. }
  5151. }
  5152. }
  5153. },
  5154. "/repos/{owner}/{repo}/issues/{index}/stopwatch/stop": {
  5155. "post": {
  5156. "consumes": [
  5157. "application/json"
  5158. ],
  5159. "produces": [
  5160. "application/json"
  5161. ],
  5162. "tags": [
  5163. "issue"
  5164. ],
  5165. "summary": "Stop an issue's existing stopwatch.",
  5166. "operationId": "issueStopStopWatch",
  5167. "parameters": [
  5168. {
  5169. "type": "string",
  5170. "description": "owner of the repo",
  5171. "name": "owner",
  5172. "in": "path",
  5173. "required": true
  5174. },
  5175. {
  5176. "type": "string",
  5177. "description": "name of the repo",
  5178. "name": "repo",
  5179. "in": "path",
  5180. "required": true
  5181. },
  5182. {
  5183. "type": "integer",
  5184. "format": "int64",
  5185. "description": "index of the issue to stop the stopwatch on",
  5186. "name": "index",
  5187. "in": "path",
  5188. "required": true
  5189. }
  5190. ],
  5191. "responses": {
  5192. "201": {
  5193. "$ref": "#/responses/empty"
  5194. },
  5195. "403": {
  5196. "description": "Not repo writer, user does not have rights to toggle stopwatch"
  5197. },
  5198. "404": {
  5199. "$ref": "#/responses/notFound"
  5200. },
  5201. "409": {
  5202. "description": "Cannot stop a non existent stopwatch"
  5203. }
  5204. }
  5205. }
  5206. },
  5207. "/repos/{owner}/{repo}/issues/{index}/subscriptions": {
  5208. "get": {
  5209. "consumes": [
  5210. "application/json"
  5211. ],
  5212. "produces": [
  5213. "application/json"
  5214. ],
  5215. "tags": [
  5216. "issue"
  5217. ],
  5218. "summary": "Get users who subscribed on an issue.",
  5219. "operationId": "issueSubscriptions",
  5220. "parameters": [
  5221. {
  5222. "type": "string",
  5223. "description": "owner of the repo",
  5224. "name": "owner",
  5225. "in": "path",
  5226. "required": true
  5227. },
  5228. {
  5229. "type": "string",
  5230. "description": "name of the repo",
  5231. "name": "repo",
  5232. "in": "path",
  5233. "required": true
  5234. },
  5235. {
  5236. "type": "integer",
  5237. "format": "int64",
  5238. "description": "index of the issue",
  5239. "name": "index",
  5240. "in": "path",
  5241. "required": true
  5242. },
  5243. {
  5244. "type": "integer",
  5245. "description": "page number of results to return (1-based)",
  5246. "name": "page",
  5247. "in": "query"
  5248. },
  5249. {
  5250. "type": "integer",
  5251. "description": "page size of results",
  5252. "name": "limit",
  5253. "in": "query"
  5254. }
  5255. ],
  5256. "responses": {
  5257. "200": {
  5258. "$ref": "#/responses/UserList"
  5259. },
  5260. "404": {
  5261. "$ref": "#/responses/notFound"
  5262. }
  5263. }
  5264. }
  5265. },
  5266. "/repos/{owner}/{repo}/issues/{index}/subscriptions/check": {
  5267. "get": {
  5268. "consumes": [
  5269. "application/json"
  5270. ],
  5271. "produces": [
  5272. "application/json"
  5273. ],
  5274. "tags": [
  5275. "issue"
  5276. ],
  5277. "summary": "Check if user is subscribed to an issue",
  5278. "operationId": "issueCheckSubscription",
  5279. "parameters": [
  5280. {
  5281. "type": "string",
  5282. "description": "owner of the repo",
  5283. "name": "owner",
  5284. "in": "path",
  5285. "required": true
  5286. },
  5287. {
  5288. "type": "string",
  5289. "description": "name of the repo",
  5290. "name": "repo",
  5291. "in": "path",
  5292. "required": true
  5293. },
  5294. {
  5295. "type": "integer",
  5296. "format": "int64",
  5297. "description": "index of the issue",
  5298. "name": "index",
  5299. "in": "path",
  5300. "required": true
  5301. }
  5302. ],
  5303. "responses": {
  5304. "200": {
  5305. "$ref": "#/responses/WatchInfo"
  5306. },
  5307. "404": {
  5308. "$ref": "#/responses/notFound"
  5309. }
  5310. }
  5311. }
  5312. },
  5313. "/repos/{owner}/{repo}/issues/{index}/subscriptions/{user}": {
  5314. "put": {
  5315. "consumes": [
  5316. "application/json"
  5317. ],
  5318. "produces": [
  5319. "application/json"
  5320. ],
  5321. "tags": [
  5322. "issue"
  5323. ],
  5324. "summary": "Subscribe user to issue",
  5325. "operationId": "issueAddSubscription",
  5326. "parameters": [
  5327. {
  5328. "type": "string",
  5329. "description": "owner of the repo",
  5330. "name": "owner",
  5331. "in": "path",
  5332. "required": true
  5333. },
  5334. {
  5335. "type": "string",
  5336. "description": "name of the repo",
  5337. "name": "repo",
  5338. "in": "path",
  5339. "required": true
  5340. },
  5341. {
  5342. "type": "integer",
  5343. "format": "int64",
  5344. "description": "index of the issue",
  5345. "name": "index",
  5346. "in": "path",
  5347. "required": true
  5348. },
  5349. {
  5350. "type": "string",
  5351. "description": "user to subscribe",
  5352. "name": "user",
  5353. "in": "path",
  5354. "required": true
  5355. }
  5356. ],
  5357. "responses": {
  5358. "200": {
  5359. "description": "Already subscribed"
  5360. },
  5361. "201": {
  5362. "description": "Successfully Subscribed"
  5363. },
  5364. "304": {
  5365. "description": "User can only subscribe itself if he is no admin"
  5366. },
  5367. "404": {
  5368. "$ref": "#/responses/notFound"
  5369. }
  5370. }
  5371. },
  5372. "delete": {
  5373. "consumes": [
  5374. "application/json"
  5375. ],
  5376. "produces": [
  5377. "application/json"
  5378. ],
  5379. "tags": [
  5380. "issue"
  5381. ],
  5382. "summary": "Unsubscribe user from issue",
  5383. "operationId": "issueDeleteSubscription",
  5384. "parameters": [
  5385. {
  5386. "type": "string",
  5387. "description": "owner of the repo",
  5388. "name": "owner",
  5389. "in": "path",
  5390. "required": true
  5391. },
  5392. {
  5393. "type": "string",
  5394. "description": "name of the repo",
  5395. "name": "repo",
  5396. "in": "path",
  5397. "required": true
  5398. },
  5399. {
  5400. "type": "integer",
  5401. "format": "int64",
  5402. "description": "index of the issue",
  5403. "name": "index",
  5404. "in": "path",
  5405. "required": true
  5406. },
  5407. {
  5408. "type": "string",
  5409. "description": "user witch unsubscribe",
  5410. "name": "user",
  5411. "in": "path",
  5412. "required": true
  5413. }
  5414. ],
  5415. "responses": {
  5416. "200": {
  5417. "description": "Already unsubscribed"
  5418. },
  5419. "201": {
  5420. "description": "Successfully Unsubscribed"
  5421. },
  5422. "304": {
  5423. "description": "User can only subscribe itself if he is no admin"
  5424. },
  5425. "404": {
  5426. "$ref": "#/responses/notFound"
  5427. }
  5428. }
  5429. }
  5430. },
  5431. "/repos/{owner}/{repo}/issues/{index}/times": {
  5432. "get": {
  5433. "produces": [
  5434. "application/json"
  5435. ],
  5436. "tags": [
  5437. "issue"
  5438. ],
  5439. "summary": "List an issue's tracked times",
  5440. "operationId": "issueTrackedTimes",
  5441. "parameters": [
  5442. {
  5443. "type": "string",
  5444. "description": "owner of the repo",
  5445. "name": "owner",
  5446. "in": "path",
  5447. "required": true
  5448. },
  5449. {
  5450. "type": "string",
  5451. "description": "name of the repo",
  5452. "name": "repo",
  5453. "in": "path",
  5454. "required": true
  5455. },
  5456. {
  5457. "type": "integer",
  5458. "format": "int64",
  5459. "description": "index of the issue",
  5460. "name": "index",
  5461. "in": "path",
  5462. "required": true
  5463. },
  5464. {
  5465. "type": "string",
  5466. "format": "date-time",
  5467. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  5468. "name": "since",
  5469. "in": "query"
  5470. },
  5471. {
  5472. "type": "string",
  5473. "format": "date-time",
  5474. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  5475. "name": "before",
  5476. "in": "query"
  5477. },
  5478. {
  5479. "type": "integer",
  5480. "description": "page number of results to return (1-based)",
  5481. "name": "page",
  5482. "in": "query"
  5483. },
  5484. {
  5485. "type": "integer",
  5486. "description": "page size of results",
  5487. "name": "limit",
  5488. "in": "query"
  5489. }
  5490. ],
  5491. "responses": {
  5492. "200": {
  5493. "$ref": "#/responses/TrackedTimeList"
  5494. },
  5495. "404": {
  5496. "$ref": "#/responses/notFound"
  5497. }
  5498. }
  5499. },
  5500. "post": {
  5501. "consumes": [
  5502. "application/json"
  5503. ],
  5504. "produces": [
  5505. "application/json"
  5506. ],
  5507. "tags": [
  5508. "issue"
  5509. ],
  5510. "summary": "Add tracked time to a issue",
  5511. "operationId": "issueAddTime",
  5512. "parameters": [
  5513. {
  5514. "type": "string",
  5515. "description": "owner of the repo",
  5516. "name": "owner",
  5517. "in": "path",
  5518. "required": true
  5519. },
  5520. {
  5521. "type": "string",
  5522. "description": "name of the repo",
  5523. "name": "repo",
  5524. "in": "path",
  5525. "required": true
  5526. },
  5527. {
  5528. "type": "integer",
  5529. "format": "int64",
  5530. "description": "index of the issue",
  5531. "name": "index",
  5532. "in": "path",
  5533. "required": true
  5534. },
  5535. {
  5536. "name": "body",
  5537. "in": "body",
  5538. "schema": {
  5539. "$ref": "#/definitions/AddTimeOption"
  5540. }
  5541. }
  5542. ],
  5543. "responses": {
  5544. "200": {
  5545. "$ref": "#/responses/TrackedTime"
  5546. },
  5547. "400": {
  5548. "$ref": "#/responses/error"
  5549. },
  5550. "403": {
  5551. "$ref": "#/responses/forbidden"
  5552. }
  5553. }
  5554. },
  5555. "delete": {
  5556. "consumes": [
  5557. "application/json"
  5558. ],
  5559. "produces": [
  5560. "application/json"
  5561. ],
  5562. "tags": [
  5563. "issue"
  5564. ],
  5565. "summary": "Reset a tracked time of an issue",
  5566. "operationId": "issueResetTime",
  5567. "parameters": [
  5568. {
  5569. "type": "string",
  5570. "description": "owner of the repo",
  5571. "name": "owner",
  5572. "in": "path",
  5573. "required": true
  5574. },
  5575. {
  5576. "type": "string",
  5577. "description": "name of the repo",
  5578. "name": "repo",
  5579. "in": "path",
  5580. "required": true
  5581. },
  5582. {
  5583. "type": "integer",
  5584. "format": "int64",
  5585. "description": "index of the issue to add tracked time to",
  5586. "name": "index",
  5587. "in": "path",
  5588. "required": true
  5589. }
  5590. ],
  5591. "responses": {
  5592. "204": {
  5593. "$ref": "#/responses/empty"
  5594. },
  5595. "400": {
  5596. "$ref": "#/responses/error"
  5597. },
  5598. "403": {
  5599. "$ref": "#/responses/forbidden"
  5600. }
  5601. }
  5602. }
  5603. },
  5604. "/repos/{owner}/{repo}/issues/{index}/times/{id}": {
  5605. "delete": {
  5606. "consumes": [
  5607. "application/json"
  5608. ],
  5609. "produces": [
  5610. "application/json"
  5611. ],
  5612. "tags": [
  5613. "issue"
  5614. ],
  5615. "summary": "Delete specific tracked time",
  5616. "operationId": "issueDeleteTime",
  5617. "parameters": [
  5618. {
  5619. "type": "string",
  5620. "description": "owner of the repo",
  5621. "name": "owner",
  5622. "in": "path",
  5623. "required": true
  5624. },
  5625. {
  5626. "type": "string",
  5627. "description": "name of the repo",
  5628. "name": "repo",
  5629. "in": "path",
  5630. "required": true
  5631. },
  5632. {
  5633. "type": "integer",
  5634. "format": "int64",
  5635. "description": "index of the issue",
  5636. "name": "index",
  5637. "in": "path",
  5638. "required": true
  5639. },
  5640. {
  5641. "type": "integer",
  5642. "format": "int64",
  5643. "description": "id of time to delete",
  5644. "name": "id",
  5645. "in": "path",
  5646. "required": true
  5647. }
  5648. ],
  5649. "responses": {
  5650. "204": {
  5651. "$ref": "#/responses/empty"
  5652. },
  5653. "400": {
  5654. "$ref": "#/responses/error"
  5655. },
  5656. "403": {
  5657. "$ref": "#/responses/forbidden"
  5658. }
  5659. }
  5660. }
  5661. },
  5662. "/repos/{owner}/{repo}/keys": {
  5663. "get": {
  5664. "produces": [
  5665. "application/json"
  5666. ],
  5667. "tags": [
  5668. "repository"
  5669. ],
  5670. "summary": "List a repository's keys",
  5671. "operationId": "repoListKeys",
  5672. "parameters": [
  5673. {
  5674. "type": "string",
  5675. "description": "owner of the repo",
  5676. "name": "owner",
  5677. "in": "path",
  5678. "required": true
  5679. },
  5680. {
  5681. "type": "string",
  5682. "description": "name of the repo",
  5683. "name": "repo",
  5684. "in": "path",
  5685. "required": true
  5686. },
  5687. {
  5688. "type": "integer",
  5689. "description": "the key_id to search for",
  5690. "name": "key_id",
  5691. "in": "query"
  5692. },
  5693. {
  5694. "type": "string",
  5695. "description": "fingerprint of the key",
  5696. "name": "fingerprint",
  5697. "in": "query"
  5698. },
  5699. {
  5700. "type": "integer",
  5701. "description": "page number of results to return (1-based)",
  5702. "name": "page",
  5703. "in": "query"
  5704. },
  5705. {
  5706. "type": "integer",
  5707. "description": "page size of results",
  5708. "name": "limit",
  5709. "in": "query"
  5710. }
  5711. ],
  5712. "responses": {
  5713. "200": {
  5714. "$ref": "#/responses/DeployKeyList"
  5715. }
  5716. }
  5717. },
  5718. "post": {
  5719. "consumes": [
  5720. "application/json"
  5721. ],
  5722. "produces": [
  5723. "application/json"
  5724. ],
  5725. "tags": [
  5726. "repository"
  5727. ],
  5728. "summary": "Add a key to a repository",
  5729. "operationId": "repoCreateKey",
  5730. "parameters": [
  5731. {
  5732. "type": "string",
  5733. "description": "owner of the repo",
  5734. "name": "owner",
  5735. "in": "path",
  5736. "required": true
  5737. },
  5738. {
  5739. "type": "string",
  5740. "description": "name of the repo",
  5741. "name": "repo",
  5742. "in": "path",
  5743. "required": true
  5744. },
  5745. {
  5746. "name": "body",
  5747. "in": "body",
  5748. "schema": {
  5749. "$ref": "#/definitions/CreateKeyOption"
  5750. }
  5751. }
  5752. ],
  5753. "responses": {
  5754. "201": {
  5755. "$ref": "#/responses/DeployKey"
  5756. },
  5757. "422": {
  5758. "$ref": "#/responses/validationError"
  5759. }
  5760. }
  5761. }
  5762. },
  5763. "/repos/{owner}/{repo}/keys/{id}": {
  5764. "get": {
  5765. "produces": [
  5766. "application/json"
  5767. ],
  5768. "tags": [
  5769. "repository"
  5770. ],
  5771. "summary": "Get a repository's key by id",
  5772. "operationId": "repoGetKey",
  5773. "parameters": [
  5774. {
  5775. "type": "string",
  5776. "description": "owner of the repo",
  5777. "name": "owner",
  5778. "in": "path",
  5779. "required": true
  5780. },
  5781. {
  5782. "type": "string",
  5783. "description": "name of the repo",
  5784. "name": "repo",
  5785. "in": "path",
  5786. "required": true
  5787. },
  5788. {
  5789. "type": "integer",
  5790. "format": "int64",
  5791. "description": "id of the key to get",
  5792. "name": "id",
  5793. "in": "path",
  5794. "required": true
  5795. }
  5796. ],
  5797. "responses": {
  5798. "200": {
  5799. "$ref": "#/responses/DeployKey"
  5800. }
  5801. }
  5802. },
  5803. "delete": {
  5804. "tags": [
  5805. "repository"
  5806. ],
  5807. "summary": "Delete a key from a repository",
  5808. "operationId": "repoDeleteKey",
  5809. "parameters": [
  5810. {
  5811. "type": "string",
  5812. "description": "owner of the repo",
  5813. "name": "owner",
  5814. "in": "path",
  5815. "required": true
  5816. },
  5817. {
  5818. "type": "string",
  5819. "description": "name of the repo",
  5820. "name": "repo",
  5821. "in": "path",
  5822. "required": true
  5823. },
  5824. {
  5825. "type": "integer",
  5826. "format": "int64",
  5827. "description": "id of the key to delete",
  5828. "name": "id",
  5829. "in": "path",
  5830. "required": true
  5831. }
  5832. ],
  5833. "responses": {
  5834. "204": {
  5835. "$ref": "#/responses/empty"
  5836. },
  5837. "403": {
  5838. "$ref": "#/responses/forbidden"
  5839. }
  5840. }
  5841. }
  5842. },
  5843. "/repos/{owner}/{repo}/labels": {
  5844. "get": {
  5845. "produces": [
  5846. "application/json"
  5847. ],
  5848. "tags": [
  5849. "issue"
  5850. ],
  5851. "summary": "Get all of a repository's labels",
  5852. "operationId": "issueListLabels",
  5853. "parameters": [
  5854. {
  5855. "type": "string",
  5856. "description": "owner of the repo",
  5857. "name": "owner",
  5858. "in": "path",
  5859. "required": true
  5860. },
  5861. {
  5862. "type": "string",
  5863. "description": "name of the repo",
  5864. "name": "repo",
  5865. "in": "path",
  5866. "required": true
  5867. },
  5868. {
  5869. "type": "integer",
  5870. "description": "page number of results to return (1-based)",
  5871. "name": "page",
  5872. "in": "query"
  5873. },
  5874. {
  5875. "type": "integer",
  5876. "description": "page size of results",
  5877. "name": "limit",
  5878. "in": "query"
  5879. }
  5880. ],
  5881. "responses": {
  5882. "200": {
  5883. "$ref": "#/responses/LabelList"
  5884. }
  5885. }
  5886. },
  5887. "post": {
  5888. "consumes": [
  5889. "application/json"
  5890. ],
  5891. "produces": [
  5892. "application/json"
  5893. ],
  5894. "tags": [
  5895. "issue"
  5896. ],
  5897. "summary": "Create a label",
  5898. "operationId": "issueCreateLabel",
  5899. "parameters": [
  5900. {
  5901. "type": "string",
  5902. "description": "owner of the repo",
  5903. "name": "owner",
  5904. "in": "path",
  5905. "required": true
  5906. },
  5907. {
  5908. "type": "string",
  5909. "description": "name of the repo",
  5910. "name": "repo",
  5911. "in": "path",
  5912. "required": true
  5913. },
  5914. {
  5915. "name": "body",
  5916. "in": "body",
  5917. "schema": {
  5918. "$ref": "#/definitions/CreateLabelOption"
  5919. }
  5920. }
  5921. ],
  5922. "responses": {
  5923. "201": {
  5924. "$ref": "#/responses/Label"
  5925. },
  5926. "422": {
  5927. "$ref": "#/responses/validationError"
  5928. }
  5929. }
  5930. }
  5931. },
  5932. "/repos/{owner}/{repo}/labels/{id}": {
  5933. "get": {
  5934. "produces": [
  5935. "application/json"
  5936. ],
  5937. "tags": [
  5938. "issue"
  5939. ],
  5940. "summary": "Get a single label",
  5941. "operationId": "issueGetLabel",
  5942. "parameters": [
  5943. {
  5944. "type": "string",
  5945. "description": "owner of the repo",
  5946. "name": "owner",
  5947. "in": "path",
  5948. "required": true
  5949. },
  5950. {
  5951. "type": "string",
  5952. "description": "name of the repo",
  5953. "name": "repo",
  5954. "in": "path",
  5955. "required": true
  5956. },
  5957. {
  5958. "type": "integer",
  5959. "format": "int64",
  5960. "description": "id of the label to get",
  5961. "name": "id",
  5962. "in": "path",
  5963. "required": true
  5964. }
  5965. ],
  5966. "responses": {
  5967. "200": {
  5968. "$ref": "#/responses/Label"
  5969. }
  5970. }
  5971. },
  5972. "delete": {
  5973. "tags": [
  5974. "issue"
  5975. ],
  5976. "summary": "Delete a label",
  5977. "operationId": "issueDeleteLabel",
  5978. "parameters": [
  5979. {
  5980. "type": "string",
  5981. "description": "owner of the repo",
  5982. "name": "owner",
  5983. "in": "path",
  5984. "required": true
  5985. },
  5986. {
  5987. "type": "string",
  5988. "description": "name of the repo",
  5989. "name": "repo",
  5990. "in": "path",
  5991. "required": true
  5992. },
  5993. {
  5994. "type": "integer",
  5995. "format": "int64",
  5996. "description": "id of the label to delete",
  5997. "name": "id",
  5998. "in": "path",
  5999. "required": true
  6000. }
  6001. ],
  6002. "responses": {
  6003. "204": {
  6004. "$ref": "#/responses/empty"
  6005. }
  6006. }
  6007. },
  6008. "patch": {
  6009. "consumes": [
  6010. "application/json"
  6011. ],
  6012. "produces": [
  6013. "application/json"
  6014. ],
  6015. "tags": [
  6016. "issue"
  6017. ],
  6018. "summary": "Update a label",
  6019. "operationId": "issueEditLabel",
  6020. "parameters": [
  6021. {
  6022. "type": "string",
  6023. "description": "owner of the repo",
  6024. "name": "owner",
  6025. "in": "path",
  6026. "required": true
  6027. },
  6028. {
  6029. "type": "string",
  6030. "description": "name of the repo",
  6031. "name": "repo",
  6032. "in": "path",
  6033. "required": true
  6034. },
  6035. {
  6036. "type": "integer",
  6037. "format": "int64",
  6038. "description": "id of the label to edit",
  6039. "name": "id",
  6040. "in": "path",
  6041. "required": true
  6042. },
  6043. {
  6044. "name": "body",
  6045. "in": "body",
  6046. "schema": {
  6047. "$ref": "#/definitions/EditLabelOption"
  6048. }
  6049. }
  6050. ],
  6051. "responses": {
  6052. "200": {
  6053. "$ref": "#/responses/Label"
  6054. },
  6055. "422": {
  6056. "$ref": "#/responses/validationError"
  6057. }
  6058. }
  6059. }
  6060. },
  6061. "/repos/{owner}/{repo}/languages": {
  6062. "get": {
  6063. "produces": [
  6064. "application/json"
  6065. ],
  6066. "tags": [
  6067. "repository"
  6068. ],
  6069. "summary": "Get languages and number of bytes of code written",
  6070. "operationId": "repoGetLanguages",
  6071. "parameters": [
  6072. {
  6073. "type": "string",
  6074. "description": "owner of the repo",
  6075. "name": "owner",
  6076. "in": "path",
  6077. "required": true
  6078. },
  6079. {
  6080. "type": "string",
  6081. "description": "name of the repo",
  6082. "name": "repo",
  6083. "in": "path",
  6084. "required": true
  6085. }
  6086. ],
  6087. "responses": {
  6088. "200": {
  6089. "$ref": "#/responses/LanguageStatistics"
  6090. },
  6091. "404": {
  6092. "$ref": "#/responses/notFound"
  6093. }
  6094. }
  6095. }
  6096. },
  6097. "/repos/{owner}/{repo}/milestones": {
  6098. "get": {
  6099. "produces": [
  6100. "application/json"
  6101. ],
  6102. "tags": [
  6103. "issue"
  6104. ],
  6105. "summary": "Get all of a repository's opened milestones",
  6106. "operationId": "issueGetMilestonesList",
  6107. "parameters": [
  6108. {
  6109. "type": "string",
  6110. "description": "owner of the repo",
  6111. "name": "owner",
  6112. "in": "path",
  6113. "required": true
  6114. },
  6115. {
  6116. "type": "string",
  6117. "description": "name of the repo",
  6118. "name": "repo",
  6119. "in": "path",
  6120. "required": true
  6121. },
  6122. {
  6123. "type": "string",
  6124. "description": "Milestone state, Recognised values are open, closed and all. Defaults to \"open\"",
  6125. "name": "state",
  6126. "in": "query"
  6127. },
  6128. {
  6129. "type": "integer",
  6130. "description": "page number of results to return (1-based)",
  6131. "name": "page",
  6132. "in": "query"
  6133. },
  6134. {
  6135. "type": "integer",
  6136. "description": "page size of results",
  6137. "name": "limit",
  6138. "in": "query"
  6139. }
  6140. ],
  6141. "responses": {
  6142. "200": {
  6143. "$ref": "#/responses/MilestoneList"
  6144. }
  6145. }
  6146. },
  6147. "post": {
  6148. "consumes": [
  6149. "application/json"
  6150. ],
  6151. "produces": [
  6152. "application/json"
  6153. ],
  6154. "tags": [
  6155. "issue"
  6156. ],
  6157. "summary": "Create a milestone",
  6158. "operationId": "issueCreateMilestone",
  6159. "parameters": [
  6160. {
  6161. "type": "string",
  6162. "description": "owner of the repo",
  6163. "name": "owner",
  6164. "in": "path",
  6165. "required": true
  6166. },
  6167. {
  6168. "type": "string",
  6169. "description": "name of the repo",
  6170. "name": "repo",
  6171. "in": "path",
  6172. "required": true
  6173. },
  6174. {
  6175. "name": "body",
  6176. "in": "body",
  6177. "schema": {
  6178. "$ref": "#/definitions/CreateMilestoneOption"
  6179. }
  6180. }
  6181. ],
  6182. "responses": {
  6183. "201": {
  6184. "$ref": "#/responses/Milestone"
  6185. }
  6186. }
  6187. }
  6188. },
  6189. "/repos/{owner}/{repo}/milestones/{id}": {
  6190. "get": {
  6191. "produces": [
  6192. "application/json"
  6193. ],
  6194. "tags": [
  6195. "issue"
  6196. ],
  6197. "summary": "Get a milestone",
  6198. "operationId": "issueGetMilestone",
  6199. "parameters": [
  6200. {
  6201. "type": "string",
  6202. "description": "owner of the repo",
  6203. "name": "owner",
  6204. "in": "path",
  6205. "required": true
  6206. },
  6207. {
  6208. "type": "string",
  6209. "description": "name of the repo",
  6210. "name": "repo",
  6211. "in": "path",
  6212. "required": true
  6213. },
  6214. {
  6215. "type": "integer",
  6216. "format": "int64",
  6217. "description": "id of the milestone",
  6218. "name": "id",
  6219. "in": "path",
  6220. "required": true
  6221. }
  6222. ],
  6223. "responses": {
  6224. "200": {
  6225. "$ref": "#/responses/Milestone"
  6226. }
  6227. }
  6228. },
  6229. "delete": {
  6230. "tags": [
  6231. "issue"
  6232. ],
  6233. "summary": "Delete a milestone",
  6234. "operationId": "issueDeleteMilestone",
  6235. "parameters": [
  6236. {
  6237. "type": "string",
  6238. "description": "owner of the repo",
  6239. "name": "owner",
  6240. "in": "path",
  6241. "required": true
  6242. },
  6243. {
  6244. "type": "string",
  6245. "description": "name of the repo",
  6246. "name": "repo",
  6247. "in": "path",
  6248. "required": true
  6249. },
  6250. {
  6251. "type": "integer",
  6252. "format": "int64",
  6253. "description": "id of the milestone to delete",
  6254. "name": "id",
  6255. "in": "path",
  6256. "required": true
  6257. }
  6258. ],
  6259. "responses": {
  6260. "204": {
  6261. "$ref": "#/responses/empty"
  6262. }
  6263. }
  6264. },
  6265. "patch": {
  6266. "consumes": [
  6267. "application/json"
  6268. ],
  6269. "produces": [
  6270. "application/json"
  6271. ],
  6272. "tags": [
  6273. "issue"
  6274. ],
  6275. "summary": "Update a milestone",
  6276. "operationId": "issueEditMilestone",
  6277. "parameters": [
  6278. {
  6279. "type": "string",
  6280. "description": "owner of the repo",
  6281. "name": "owner",
  6282. "in": "path",
  6283. "required": true
  6284. },
  6285. {
  6286. "type": "string",
  6287. "description": "name of the repo",
  6288. "name": "repo",
  6289. "in": "path",
  6290. "required": true
  6291. },
  6292. {
  6293. "type": "integer",
  6294. "format": "int64",
  6295. "description": "id of the milestone",
  6296. "name": "id",
  6297. "in": "path",
  6298. "required": true
  6299. },
  6300. {
  6301. "name": "body",
  6302. "in": "body",
  6303. "schema": {
  6304. "$ref": "#/definitions/EditMilestoneOption"
  6305. }
  6306. }
  6307. ],
  6308. "responses": {
  6309. "200": {
  6310. "$ref": "#/responses/Milestone"
  6311. }
  6312. }
  6313. }
  6314. },
  6315. "/repos/{owner}/{repo}/mirror-sync": {
  6316. "post": {
  6317. "produces": [
  6318. "application/json"
  6319. ],
  6320. "tags": [
  6321. "repository"
  6322. ],
  6323. "summary": "Sync a mirrored repository",
  6324. "operationId": "repoMirrorSync",
  6325. "parameters": [
  6326. {
  6327. "type": "string",
  6328. "description": "owner of the repo to sync",
  6329. "name": "owner",
  6330. "in": "path",
  6331. "required": true
  6332. },
  6333. {
  6334. "type": "string",
  6335. "description": "name of the repo to sync",
  6336. "name": "repo",
  6337. "in": "path",
  6338. "required": true
  6339. }
  6340. ],
  6341. "responses": {
  6342. "200": {
  6343. "$ref": "#/responses/empty"
  6344. },
  6345. "403": {
  6346. "$ref": "#/responses/forbidden"
  6347. }
  6348. }
  6349. }
  6350. },
  6351. "/repos/{owner}/{repo}/notifications": {
  6352. "get": {
  6353. "consumes": [
  6354. "application/json"
  6355. ],
  6356. "produces": [
  6357. "application/json"
  6358. ],
  6359. "tags": [
  6360. "notification"
  6361. ],
  6362. "summary": "List users's notification threads on a specific repo",
  6363. "operationId": "notifyGetRepoList",
  6364. "parameters": [
  6365. {
  6366. "type": "string",
  6367. "description": "owner of the repo",
  6368. "name": "owner",
  6369. "in": "path",
  6370. "required": true
  6371. },
  6372. {
  6373. "type": "string",
  6374. "description": "name of the repo",
  6375. "name": "repo",
  6376. "in": "path",
  6377. "required": true
  6378. },
  6379. {
  6380. "type": "string",
  6381. "description": "If true, show notifications marked as read. Default value is false",
  6382. "name": "all",
  6383. "in": "query"
  6384. },
  6385. {
  6386. "type": "string",
  6387. "format": "date-time",
  6388. "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format",
  6389. "name": "since",
  6390. "in": "query"
  6391. },
  6392. {
  6393. "type": "string",
  6394. "format": "date-time",
  6395. "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format",
  6396. "name": "before",
  6397. "in": "query"
  6398. },
  6399. {
  6400. "type": "integer",
  6401. "description": "page number of results to return (1-based)",
  6402. "name": "page",
  6403. "in": "query"
  6404. },
  6405. {
  6406. "type": "integer",
  6407. "description": "page size of results",
  6408. "name": "limit",
  6409. "in": "query"
  6410. }
  6411. ],
  6412. "responses": {
  6413. "200": {
  6414. "$ref": "#/responses/NotificationThreadList"
  6415. }
  6416. }
  6417. },
  6418. "put": {
  6419. "consumes": [
  6420. "application/json"
  6421. ],
  6422. "produces": [
  6423. "application/json"
  6424. ],
  6425. "tags": [
  6426. "notification"
  6427. ],
  6428. "summary": "Mark notification threads as read on a specific repo",
  6429. "operationId": "notifyReadRepoList",
  6430. "parameters": [
  6431. {
  6432. "type": "string",
  6433. "description": "owner of the repo",
  6434. "name": "owner",
  6435. "in": "path",
  6436. "required": true
  6437. },
  6438. {
  6439. "type": "string",
  6440. "description": "name of the repo",
  6441. "name": "repo",
  6442. "in": "path",
  6443. "required": true
  6444. },
  6445. {
  6446. "type": "string",
  6447. "format": "date-time",
  6448. "description": "Describes the last point that notifications were checked. Anything updated since this time will not be updated.",
  6449. "name": "last_read_at",
  6450. "in": "query"
  6451. }
  6452. ],
  6453. "responses": {
  6454. "205": {
  6455. "$ref": "#/responses/empty"
  6456. }
  6457. }
  6458. }
  6459. },
  6460. "/repos/{owner}/{repo}/pulls": {
  6461. "get": {
  6462. "produces": [
  6463. "application/json"
  6464. ],
  6465. "tags": [
  6466. "repository"
  6467. ],
  6468. "summary": "List a repo's pull requests",
  6469. "operationId": "repoListPullRequests",
  6470. "parameters": [
  6471. {
  6472. "type": "string",
  6473. "description": "owner of the repo",
  6474. "name": "owner",
  6475. "in": "path",
  6476. "required": true
  6477. },
  6478. {
  6479. "type": "string",
  6480. "description": "name of the repo",
  6481. "name": "repo",
  6482. "in": "path",
  6483. "required": true
  6484. },
  6485. {
  6486. "enum": [
  6487. "closed",
  6488. "open",
  6489. "all"
  6490. ],
  6491. "type": "string",
  6492. "description": "State of pull request: open or closed (optional)",
  6493. "name": "state",
  6494. "in": "query"
  6495. },
  6496. {
  6497. "enum": [
  6498. "oldest",
  6499. "recentupdate",
  6500. "leastupdate",
  6501. "mostcomment",
  6502. "leastcomment",
  6503. "priority"
  6504. ],
  6505. "type": "string",
  6506. "description": "Type of sort",
  6507. "name": "sort",
  6508. "in": "query"
  6509. },
  6510. {
  6511. "type": "integer",
  6512. "format": "int64",
  6513. "description": "ID of the milestone",
  6514. "name": "milestone",
  6515. "in": "query"
  6516. },
  6517. {
  6518. "type": "array",
  6519. "items": {
  6520. "type": "integer",
  6521. "format": "int64"
  6522. },
  6523. "collectionFormat": "multi",
  6524. "description": "Label IDs",
  6525. "name": "labels",
  6526. "in": "query"
  6527. },
  6528. {
  6529. "type": "integer",
  6530. "description": "page number of results to return (1-based)",
  6531. "name": "page",
  6532. "in": "query"
  6533. },
  6534. {
  6535. "type": "integer",
  6536. "description": "page size of results",
  6537. "name": "limit",
  6538. "in": "query"
  6539. }
  6540. ],
  6541. "responses": {
  6542. "200": {
  6543. "$ref": "#/responses/PullRequestList"
  6544. }
  6545. }
  6546. },
  6547. "post": {
  6548. "consumes": [
  6549. "application/json"
  6550. ],
  6551. "produces": [
  6552. "application/json"
  6553. ],
  6554. "tags": [
  6555. "repository"
  6556. ],
  6557. "summary": "Create a pull request",
  6558. "operationId": "repoCreatePullRequest",
  6559. "parameters": [
  6560. {
  6561. "type": "string",
  6562. "description": "owner of the repo",
  6563. "name": "owner",
  6564. "in": "path",
  6565. "required": true
  6566. },
  6567. {
  6568. "type": "string",
  6569. "description": "name of the repo",
  6570. "name": "repo",
  6571. "in": "path",
  6572. "required": true
  6573. },
  6574. {
  6575. "name": "body",
  6576. "in": "body",
  6577. "schema": {
  6578. "$ref": "#/definitions/CreatePullRequestOption"
  6579. }
  6580. }
  6581. ],
  6582. "responses": {
  6583. "201": {
  6584. "$ref": "#/responses/PullRequest"
  6585. },
  6586. "409": {
  6587. "$ref": "#/responses/error"
  6588. },
  6589. "422": {
  6590. "$ref": "#/responses/validationError"
  6591. }
  6592. }
  6593. }
  6594. },
  6595. "/repos/{owner}/{repo}/pulls/{index}": {
  6596. "get": {
  6597. "produces": [
  6598. "application/json"
  6599. ],
  6600. "tags": [
  6601. "repository"
  6602. ],
  6603. "summary": "Get a pull request",
  6604. "operationId": "repoGetPullRequest",
  6605. "parameters": [
  6606. {
  6607. "type": "string",
  6608. "description": "owner of the repo",
  6609. "name": "owner",
  6610. "in": "path",
  6611. "required": true
  6612. },
  6613. {
  6614. "type": "string",
  6615. "description": "name of the repo",
  6616. "name": "repo",
  6617. "in": "path",
  6618. "required": true
  6619. },
  6620. {
  6621. "type": "integer",
  6622. "format": "int64",
  6623. "description": "index of the pull request to get",
  6624. "name": "index",
  6625. "in": "path",
  6626. "required": true
  6627. }
  6628. ],
  6629. "responses": {
  6630. "200": {
  6631. "$ref": "#/responses/PullRequest"
  6632. },
  6633. "404": {
  6634. "$ref": "#/responses/notFound"
  6635. }
  6636. }
  6637. },
  6638. "patch": {
  6639. "consumes": [
  6640. "application/json"
  6641. ],
  6642. "produces": [
  6643. "application/json"
  6644. ],
  6645. "tags": [
  6646. "repository"
  6647. ],
  6648. "summary": "Update a pull request. If using deadline only the date will be taken into account, and time of day ignored.",
  6649. "operationId": "repoEditPullRequest",
  6650. "parameters": [
  6651. {
  6652. "type": "string",
  6653. "description": "owner of the repo",
  6654. "name": "owner",
  6655. "in": "path",
  6656. "required": true
  6657. },
  6658. {
  6659. "type": "string",
  6660. "description": "name of the repo",
  6661. "name": "repo",
  6662. "in": "path",
  6663. "required": true
  6664. },
  6665. {
  6666. "type": "integer",
  6667. "format": "int64",
  6668. "description": "index of the pull request to edit",
  6669. "name": "index",
  6670. "in": "path",
  6671. "required": true
  6672. },
  6673. {
  6674. "name": "body",
  6675. "in": "body",
  6676. "schema": {
  6677. "$ref": "#/definitions/EditPullRequestOption"
  6678. }
  6679. }
  6680. ],
  6681. "responses": {
  6682. "201": {
  6683. "$ref": "#/responses/PullRequest"
  6684. },
  6685. "403": {
  6686. "$ref": "#/responses/forbidden"
  6687. },
  6688. "409": {
  6689. "$ref": "#/responses/error"
  6690. },
  6691. "412": {
  6692. "$ref": "#/responses/error"
  6693. },
  6694. "422": {
  6695. "$ref": "#/responses/validationError"
  6696. }
  6697. }
  6698. }
  6699. },
  6700. "/repos/{owner}/{repo}/pulls/{index}.diff": {
  6701. "get": {
  6702. "produces": [
  6703. "text/plain"
  6704. ],
  6705. "tags": [
  6706. "repository"
  6707. ],
  6708. "summary": "Get a pull request diff",
  6709. "operationId": "repoDownloadPullDiff",
  6710. "parameters": [
  6711. {
  6712. "type": "string",
  6713. "description": "owner of the repo",
  6714. "name": "owner",
  6715. "in": "path",
  6716. "required": true
  6717. },
  6718. {
  6719. "type": "string",
  6720. "description": "name of the repo",
  6721. "name": "repo",
  6722. "in": "path",
  6723. "required": true
  6724. },
  6725. {
  6726. "type": "integer",
  6727. "format": "int64",
  6728. "description": "index of the pull request to get",
  6729. "name": "index",
  6730. "in": "path",
  6731. "required": true
  6732. }
  6733. ],
  6734. "responses": {
  6735. "200": {
  6736. "$ref": "#/responses/string"
  6737. },
  6738. "404": {
  6739. "$ref": "#/responses/notFound"
  6740. }
  6741. }
  6742. }
  6743. },
  6744. "/repos/{owner}/{repo}/pulls/{index}.patch": {
  6745. "get": {
  6746. "produces": [
  6747. "text/plain"
  6748. ],
  6749. "tags": [
  6750. "repository"
  6751. ],
  6752. "summary": "Get a pull request patch file",
  6753. "operationId": "repoDownloadPullPatch",
  6754. "parameters": [
  6755. {
  6756. "type": "string",
  6757. "description": "owner of the repo",
  6758. "name": "owner",
  6759. "in": "path",
  6760. "required": true
  6761. },
  6762. {
  6763. "type": "string",
  6764. "description": "name of the repo",
  6765. "name": "repo",
  6766. "in": "path",
  6767. "required": true
  6768. },
  6769. {
  6770. "type": "integer",
  6771. "format": "int64",
  6772. "description": "index of the pull request to get",
  6773. "name": "index",
  6774. "in": "path",
  6775. "required": true
  6776. }
  6777. ],
  6778. "responses": {
  6779. "200": {
  6780. "$ref": "#/responses/string"
  6781. },
  6782. "404": {
  6783. "$ref": "#/responses/notFound"
  6784. }
  6785. }
  6786. }
  6787. },
  6788. "/repos/{owner}/{repo}/pulls/{index}/merge": {
  6789. "get": {
  6790. "produces": [
  6791. "application/json"
  6792. ],
  6793. "tags": [
  6794. "repository"
  6795. ],
  6796. "summary": "Check if a pull request has been merged",
  6797. "operationId": "repoPullRequestIsMerged",
  6798. "parameters": [
  6799. {
  6800. "type": "string",
  6801. "description": "owner of the repo",
  6802. "name": "owner",
  6803. "in": "path",
  6804. "required": true
  6805. },
  6806. {
  6807. "type": "string",
  6808. "description": "name of the repo",
  6809. "name": "repo",
  6810. "in": "path",
  6811. "required": true
  6812. },
  6813. {
  6814. "type": "integer",
  6815. "format": "int64",
  6816. "description": "index of the pull request",
  6817. "name": "index",
  6818. "in": "path",
  6819. "required": true
  6820. }
  6821. ],
  6822. "responses": {
  6823. "204": {
  6824. "description": "pull request has been merged"
  6825. },
  6826. "404": {
  6827. "description": "pull request has not been merged"
  6828. }
  6829. }
  6830. },
  6831. "post": {
  6832. "produces": [
  6833. "application/json"
  6834. ],
  6835. "tags": [
  6836. "repository"
  6837. ],
  6838. "summary": "Merge a pull request",
  6839. "operationId": "repoMergePullRequest",
  6840. "parameters": [
  6841. {
  6842. "type": "string",
  6843. "description": "owner of the repo",
  6844. "name": "owner",
  6845. "in": "path",
  6846. "required": true
  6847. },
  6848. {
  6849. "type": "string",
  6850. "description": "name of the repo",
  6851. "name": "repo",
  6852. "in": "path",
  6853. "required": true
  6854. },
  6855. {
  6856. "type": "integer",
  6857. "format": "int64",
  6858. "description": "index of the pull request to merge",
  6859. "name": "index",
  6860. "in": "path",
  6861. "required": true
  6862. },
  6863. {
  6864. "name": "body",
  6865. "in": "body",
  6866. "schema": {
  6867. "$ref": "#/definitions/MergePullRequestOption"
  6868. }
  6869. }
  6870. ],
  6871. "responses": {
  6872. "200": {
  6873. "$ref": "#/responses/empty"
  6874. },
  6875. "405": {
  6876. "$ref": "#/responses/empty"
  6877. },
  6878. "409": {
  6879. "$ref": "#/responses/error"
  6880. }
  6881. }
  6882. }
  6883. },
  6884. "/repos/{owner}/{repo}/pulls/{index}/reviews": {
  6885. "get": {
  6886. "produces": [
  6887. "application/json"
  6888. ],
  6889. "tags": [
  6890. "repository"
  6891. ],
  6892. "summary": "List all reviews for a pull request",
  6893. "operationId": "repoListPullReviews",
  6894. "parameters": [
  6895. {
  6896. "type": "string",
  6897. "description": "owner of the repo",
  6898. "name": "owner",
  6899. "in": "path",
  6900. "required": true
  6901. },
  6902. {
  6903. "type": "string",
  6904. "description": "name of the repo",
  6905. "name": "repo",
  6906. "in": "path",
  6907. "required": true
  6908. },
  6909. {
  6910. "type": "integer",
  6911. "format": "int64",
  6912. "description": "index of the pull request",
  6913. "name": "index",
  6914. "in": "path",
  6915. "required": true
  6916. },
  6917. {
  6918. "type": "integer",
  6919. "description": "page number of results to return (1-based)",
  6920. "name": "page",
  6921. "in": "query"
  6922. },
  6923. {
  6924. "type": "integer",
  6925. "description": "page size of results",
  6926. "name": "limit",
  6927. "in": "query"
  6928. }
  6929. ],
  6930. "responses": {
  6931. "200": {
  6932. "$ref": "#/responses/PullReviewList"
  6933. },
  6934. "404": {
  6935. "$ref": "#/responses/notFound"
  6936. }
  6937. }
  6938. },
  6939. "post": {
  6940. "produces": [
  6941. "application/json"
  6942. ],
  6943. "tags": [
  6944. "repository"
  6945. ],
  6946. "summary": "Create a review to an pull request",
  6947. "operationId": "repoCreatePullReview",
  6948. "parameters": [
  6949. {
  6950. "type": "string",
  6951. "description": "owner of the repo",
  6952. "name": "owner",
  6953. "in": "path",
  6954. "required": true
  6955. },
  6956. {
  6957. "type": "string",
  6958. "description": "name of the repo",
  6959. "name": "repo",
  6960. "in": "path",
  6961. "required": true
  6962. },
  6963. {
  6964. "type": "integer",
  6965. "format": "int64",
  6966. "description": "index of the pull request",
  6967. "name": "index",
  6968. "in": "path",
  6969. "required": true
  6970. },
  6971. {
  6972. "name": "body",
  6973. "in": "body",
  6974. "required": true,
  6975. "schema": {
  6976. "$ref": "#/definitions/CreatePullReviewOptions"
  6977. }
  6978. }
  6979. ],
  6980. "responses": {
  6981. "200": {
  6982. "$ref": "#/responses/PullReview"
  6983. },
  6984. "404": {
  6985. "$ref": "#/responses/notFound"
  6986. },
  6987. "422": {
  6988. "$ref": "#/responses/validationError"
  6989. }
  6990. }
  6991. }
  6992. },
  6993. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}": {
  6994. "get": {
  6995. "produces": [
  6996. "application/json"
  6997. ],
  6998. "tags": [
  6999. "repository"
  7000. ],
  7001. "summary": "Get a specific review for a pull request",
  7002. "operationId": "repoGetPullReview",
  7003. "parameters": [
  7004. {
  7005. "type": "string",
  7006. "description": "owner of the repo",
  7007. "name": "owner",
  7008. "in": "path",
  7009. "required": true
  7010. },
  7011. {
  7012. "type": "string",
  7013. "description": "name of the repo",
  7014. "name": "repo",
  7015. "in": "path",
  7016. "required": true
  7017. },
  7018. {
  7019. "type": "integer",
  7020. "format": "int64",
  7021. "description": "index of the pull request",
  7022. "name": "index",
  7023. "in": "path",
  7024. "required": true
  7025. },
  7026. {
  7027. "type": "integer",
  7028. "format": "int64",
  7029. "description": "id of the review",
  7030. "name": "id",
  7031. "in": "path",
  7032. "required": true
  7033. }
  7034. ],
  7035. "responses": {
  7036. "200": {
  7037. "$ref": "#/responses/PullReview"
  7038. },
  7039. "404": {
  7040. "$ref": "#/responses/notFound"
  7041. }
  7042. }
  7043. },
  7044. "post": {
  7045. "produces": [
  7046. "application/json"
  7047. ],
  7048. "tags": [
  7049. "repository"
  7050. ],
  7051. "summary": "Submit a pending review to an pull request",
  7052. "operationId": "repoSubmitPullReview",
  7053. "parameters": [
  7054. {
  7055. "type": "string",
  7056. "description": "owner of the repo",
  7057. "name": "owner",
  7058. "in": "path",
  7059. "required": true
  7060. },
  7061. {
  7062. "type": "string",
  7063. "description": "name of the repo",
  7064. "name": "repo",
  7065. "in": "path",
  7066. "required": true
  7067. },
  7068. {
  7069. "type": "integer",
  7070. "format": "int64",
  7071. "description": "index of the pull request",
  7072. "name": "index",
  7073. "in": "path",
  7074. "required": true
  7075. },
  7076. {
  7077. "type": "integer",
  7078. "format": "int64",
  7079. "description": "id of the review",
  7080. "name": "id",
  7081. "in": "path",
  7082. "required": true
  7083. },
  7084. {
  7085. "name": "body",
  7086. "in": "body",
  7087. "required": true,
  7088. "schema": {
  7089. "$ref": "#/definitions/SubmitPullReviewOptions"
  7090. }
  7091. }
  7092. ],
  7093. "responses": {
  7094. "200": {
  7095. "$ref": "#/responses/PullReview"
  7096. },
  7097. "404": {
  7098. "$ref": "#/responses/notFound"
  7099. },
  7100. "422": {
  7101. "$ref": "#/responses/validationError"
  7102. }
  7103. }
  7104. },
  7105. "delete": {
  7106. "produces": [
  7107. "application/json"
  7108. ],
  7109. "tags": [
  7110. "repository"
  7111. ],
  7112. "summary": "Delete a specific review from a pull request",
  7113. "operationId": "repoDeletePullReview",
  7114. "parameters": [
  7115. {
  7116. "type": "string",
  7117. "description": "owner of the repo",
  7118. "name": "owner",
  7119. "in": "path",
  7120. "required": true
  7121. },
  7122. {
  7123. "type": "string",
  7124. "description": "name of the repo",
  7125. "name": "repo",
  7126. "in": "path",
  7127. "required": true
  7128. },
  7129. {
  7130. "type": "integer",
  7131. "format": "int64",
  7132. "description": "index of the pull request",
  7133. "name": "index",
  7134. "in": "path",
  7135. "required": true
  7136. },
  7137. {
  7138. "type": "integer",
  7139. "format": "int64",
  7140. "description": "id of the review",
  7141. "name": "id",
  7142. "in": "path",
  7143. "required": true
  7144. }
  7145. ],
  7146. "responses": {
  7147. "204": {
  7148. "$ref": "#/responses/empty"
  7149. },
  7150. "403": {
  7151. "$ref": "#/responses/forbidden"
  7152. },
  7153. "404": {
  7154. "$ref": "#/responses/notFound"
  7155. }
  7156. }
  7157. }
  7158. },
  7159. "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/comments": {
  7160. "get": {
  7161. "produces": [
  7162. "application/json"
  7163. ],
  7164. "tags": [
  7165. "repository"
  7166. ],
  7167. "summary": "Get a specific review for a pull request",
  7168. "operationId": "repoGetPullReviewComments",
  7169. "parameters": [
  7170. {
  7171. "type": "string",
  7172. "description": "owner of the repo",
  7173. "name": "owner",
  7174. "in": "path",
  7175. "required": true
  7176. },
  7177. {
  7178. "type": "string",
  7179. "description": "name of the repo",
  7180. "name": "repo",
  7181. "in": "path",
  7182. "required": true
  7183. },
  7184. {
  7185. "type": "integer",
  7186. "format": "int64",
  7187. "description": "index of the pull request",
  7188. "name": "index",
  7189. "in": "path",
  7190. "required": true
  7191. },
  7192. {
  7193. "type": "integer",
  7194. "format": "int64",
  7195. "description": "id of the review",
  7196. "name": "id",
  7197. "in": "path",
  7198. "required": true
  7199. }
  7200. ],
  7201. "responses": {
  7202. "200": {
  7203. "$ref": "#/responses/PullReviewCommentList"
  7204. },
  7205. "404": {
  7206. "$ref": "#/responses/notFound"
  7207. }
  7208. }
  7209. }
  7210. },
  7211. "/repos/{owner}/{repo}/raw/{filepath}": {
  7212. "get": {
  7213. "produces": [
  7214. "application/json"
  7215. ],
  7216. "tags": [
  7217. "repository"
  7218. ],
  7219. "summary": "Get a file from a repository",
  7220. "operationId": "repoGetRawFile",
  7221. "parameters": [
  7222. {
  7223. "type": "string",
  7224. "description": "owner of the repo",
  7225. "name": "owner",
  7226. "in": "path",
  7227. "required": true
  7228. },
  7229. {
  7230. "type": "string",
  7231. "description": "name of the repo",
  7232. "name": "repo",
  7233. "in": "path",
  7234. "required": true
  7235. },
  7236. {
  7237. "type": "string",
  7238. "description": "filepath of the file to get",
  7239. "name": "filepath",
  7240. "in": "path",
  7241. "required": true
  7242. }
  7243. ],
  7244. "responses": {
  7245. "200": {
  7246. "description": "success"
  7247. },
  7248. "404": {
  7249. "$ref": "#/responses/notFound"
  7250. }
  7251. }
  7252. }
  7253. },
  7254. "/repos/{owner}/{repo}/releases": {
  7255. "get": {
  7256. "produces": [
  7257. "application/json"
  7258. ],
  7259. "tags": [
  7260. "repository"
  7261. ],
  7262. "summary": "List a repo's releases",
  7263. "operationId": "repoListReleases",
  7264. "parameters": [
  7265. {
  7266. "type": "string",
  7267. "description": "owner of the repo",
  7268. "name": "owner",
  7269. "in": "path",
  7270. "required": true
  7271. },
  7272. {
  7273. "type": "string",
  7274. "description": "name of the repo",
  7275. "name": "repo",
  7276. "in": "path",
  7277. "required": true
  7278. },
  7279. {
  7280. "type": "integer",
  7281. "description": "page size of results, deprecated - use limit",
  7282. "name": "per_page",
  7283. "in": "query"
  7284. },
  7285. {
  7286. "type": "integer",
  7287. "description": "page number of results to return (1-based)",
  7288. "name": "page",
  7289. "in": "query"
  7290. },
  7291. {
  7292. "type": "integer",
  7293. "description": "page size of results",
  7294. "name": "limit",
  7295. "in": "query"
  7296. }
  7297. ],
  7298. "responses": {
  7299. "200": {
  7300. "$ref": "#/responses/ReleaseList"
  7301. }
  7302. }
  7303. },
  7304. "post": {
  7305. "consumes": [
  7306. "application/json"
  7307. ],
  7308. "produces": [
  7309. "application/json"
  7310. ],
  7311. "tags": [
  7312. "repository"
  7313. ],
  7314. "summary": "Create a release",
  7315. "operationId": "repoCreateRelease",
  7316. "parameters": [
  7317. {
  7318. "type": "string",
  7319. "description": "owner of the repo",
  7320. "name": "owner",
  7321. "in": "path",
  7322. "required": true
  7323. },
  7324. {
  7325. "type": "string",
  7326. "description": "name of the repo",
  7327. "name": "repo",
  7328. "in": "path",
  7329. "required": true
  7330. },
  7331. {
  7332. "name": "body",
  7333. "in": "body",
  7334. "schema": {
  7335. "$ref": "#/definitions/CreateReleaseOption"
  7336. }
  7337. }
  7338. ],
  7339. "responses": {
  7340. "201": {
  7341. "$ref": "#/responses/Release"
  7342. },
  7343. "409": {
  7344. "$ref": "#/responses/error"
  7345. }
  7346. }
  7347. }
  7348. },
  7349. "/repos/{owner}/{repo}/releases/{id}": {
  7350. "get": {
  7351. "produces": [
  7352. "application/json"
  7353. ],
  7354. "tags": [
  7355. "repository"
  7356. ],
  7357. "summary": "Get a release",
  7358. "operationId": "repoGetRelease",
  7359. "parameters": [
  7360. {
  7361. "type": "string",
  7362. "description": "owner of the repo",
  7363. "name": "owner",
  7364. "in": "path",
  7365. "required": true
  7366. },
  7367. {
  7368. "type": "string",
  7369. "description": "name of the repo",
  7370. "name": "repo",
  7371. "in": "path",
  7372. "required": true
  7373. },
  7374. {
  7375. "type": "integer",
  7376. "format": "int64",
  7377. "description": "id of the release to get",
  7378. "name": "id",
  7379. "in": "path",
  7380. "required": true
  7381. }
  7382. ],
  7383. "responses": {
  7384. "200": {
  7385. "$ref": "#/responses/Release"
  7386. }
  7387. }
  7388. },
  7389. "delete": {
  7390. "tags": [
  7391. "repository"
  7392. ],
  7393. "summary": "Delete a release",
  7394. "operationId": "repoDeleteRelease",
  7395. "parameters": [
  7396. {
  7397. "type": "string",
  7398. "description": "owner of the repo",
  7399. "name": "owner",
  7400. "in": "path",
  7401. "required": true
  7402. },
  7403. {
  7404. "type": "string",
  7405. "description": "name of the repo",
  7406. "name": "repo",
  7407. "in": "path",
  7408. "required": true
  7409. },
  7410. {
  7411. "type": "integer",
  7412. "format": "int64",
  7413. "description": "id of the release to delete",
  7414. "name": "id",
  7415. "in": "path",
  7416. "required": true
  7417. }
  7418. ],
  7419. "responses": {
  7420. "204": {
  7421. "$ref": "#/responses/empty"
  7422. }
  7423. }
  7424. },
  7425. "patch": {
  7426. "consumes": [
  7427. "application/json"
  7428. ],
  7429. "produces": [
  7430. "application/json"
  7431. ],
  7432. "tags": [
  7433. "repository"
  7434. ],
  7435. "summary": "Update a release",
  7436. "operationId": "repoEditRelease",
  7437. "parameters": [
  7438. {
  7439. "type": "string",
  7440. "description": "owner of the repo",
  7441. "name": "owner",
  7442. "in": "path",
  7443. "required": true
  7444. },
  7445. {
  7446. "type": "string",
  7447. "description": "name of the repo",
  7448. "name": "repo",
  7449. "in": "path",
  7450. "required": true
  7451. },
  7452. {
  7453. "type": "integer",
  7454. "format": "int64",
  7455. "description": "id of the release to edit",
  7456. "name": "id",
  7457. "in": "path",
  7458. "required": true
  7459. },
  7460. {
  7461. "name": "body",
  7462. "in": "body",
  7463. "schema": {
  7464. "$ref": "#/definitions/EditReleaseOption"
  7465. }
  7466. }
  7467. ],
  7468. "responses": {
  7469. "200": {
  7470. "$ref": "#/responses/Release"
  7471. }
  7472. }
  7473. }
  7474. },
  7475. "/repos/{owner}/{repo}/releases/{id}/assets": {
  7476. "get": {
  7477. "produces": [
  7478. "application/json"
  7479. ],
  7480. "tags": [
  7481. "repository"
  7482. ],
  7483. "summary": "List release's attachments",
  7484. "operationId": "repoListReleaseAttachments",
  7485. "parameters": [
  7486. {
  7487. "type": "string",
  7488. "description": "owner of the repo",
  7489. "name": "owner",
  7490. "in": "path",
  7491. "required": true
  7492. },
  7493. {
  7494. "type": "string",
  7495. "description": "name of the repo",
  7496. "name": "repo",
  7497. "in": "path",
  7498. "required": true
  7499. },
  7500. {
  7501. "type": "integer",
  7502. "format": "int64",
  7503. "description": "id of the release",
  7504. "name": "id",
  7505. "in": "path",
  7506. "required": true
  7507. }
  7508. ],
  7509. "responses": {
  7510. "200": {
  7511. "$ref": "#/responses/AttachmentList"
  7512. }
  7513. }
  7514. },
  7515. "post": {
  7516. "consumes": [
  7517. "multipart/form-data"
  7518. ],
  7519. "produces": [
  7520. "application/json"
  7521. ],
  7522. "tags": [
  7523. "repository"
  7524. ],
  7525. "summary": "Create a release attachment",
  7526. "operationId": "repoCreateReleaseAttachment",
  7527. "parameters": [
  7528. {
  7529. "type": "string",
  7530. "description": "owner of the repo",
  7531. "name": "owner",
  7532. "in": "path",
  7533. "required": true
  7534. },
  7535. {
  7536. "type": "string",
  7537. "description": "name of the repo",
  7538. "name": "repo",
  7539. "in": "path",
  7540. "required": true
  7541. },
  7542. {
  7543. "type": "integer",
  7544. "format": "int64",
  7545. "description": "id of the release",
  7546. "name": "id",
  7547. "in": "path",
  7548. "required": true
  7549. },
  7550. {
  7551. "type": "string",
  7552. "description": "name of the attachment",
  7553. "name": "name",
  7554. "in": "query"
  7555. },
  7556. {
  7557. "type": "file",
  7558. "description": "attachment to upload",
  7559. "name": "attachment",
  7560. "in": "formData",
  7561. "required": true
  7562. }
  7563. ],
  7564. "responses": {
  7565. "201": {
  7566. "$ref": "#/responses/Attachment"
  7567. },
  7568. "400": {
  7569. "$ref": "#/responses/error"
  7570. }
  7571. }
  7572. }
  7573. },
  7574. "/repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}": {
  7575. "get": {
  7576. "produces": [
  7577. "application/json"
  7578. ],
  7579. "tags": [
  7580. "repository"
  7581. ],
  7582. "summary": "Get a release attachment",
  7583. "operationId": "repoGetReleaseAttachment",
  7584. "parameters": [
  7585. {
  7586. "type": "string",
  7587. "description": "owner of the repo",
  7588. "name": "owner",
  7589. "in": "path",
  7590. "required": true
  7591. },
  7592. {
  7593. "type": "string",
  7594. "description": "name of the repo",
  7595. "name": "repo",
  7596. "in": "path",
  7597. "required": true
  7598. },
  7599. {
  7600. "type": "integer",
  7601. "format": "int64",
  7602. "description": "id of the release",
  7603. "name": "id",
  7604. "in": "path",
  7605. "required": true
  7606. },
  7607. {
  7608. "type": "integer",
  7609. "format": "int64",
  7610. "description": "id of the attachment to get",
  7611. "name": "attachment_id",
  7612. "in": "path",
  7613. "required": true
  7614. }
  7615. ],
  7616. "responses": {
  7617. "200": {
  7618. "$ref": "#/responses/Attachment"
  7619. }
  7620. }
  7621. },
  7622. "delete": {
  7623. "produces": [
  7624. "application/json"
  7625. ],
  7626. "tags": [
  7627. "repository"
  7628. ],
  7629. "summary": "Delete a release attachment",
  7630. "operationId": "repoDeleteReleaseAttachment",
  7631. "parameters": [
  7632. {
  7633. "type": "string",
  7634. "description": "owner of the repo",
  7635. "name": "owner",
  7636. "in": "path",
  7637. "required": true
  7638. },
  7639. {
  7640. "type": "string",
  7641. "description": "name of the repo",
  7642. "name": "repo",
  7643. "in": "path",
  7644. "required": true
  7645. },
  7646. {
  7647. "type": "integer",
  7648. "format": "int64",
  7649. "description": "id of the release",
  7650. "name": "id",
  7651. "in": "path",
  7652. "required": true
  7653. },
  7654. {
  7655. "type": "integer",
  7656. "format": "int64",
  7657. "description": "id of the attachment to delete",
  7658. "name": "attachment_id",
  7659. "in": "path",
  7660. "required": true
  7661. }
  7662. ],
  7663. "responses": {
  7664. "204": {
  7665. "$ref": "#/responses/empty"
  7666. }
  7667. }
  7668. },
  7669. "patch": {
  7670. "consumes": [
  7671. "application/json"
  7672. ],
  7673. "produces": [
  7674. "application/json"
  7675. ],
  7676. "tags": [
  7677. "repository"
  7678. ],
  7679. "summary": "Edit a release attachment",
  7680. "operationId": "repoEditReleaseAttachment",
  7681. "parameters": [
  7682. {
  7683. "type": "string",
  7684. "description": "owner of the repo",
  7685. "name": "owner",
  7686. "in": "path",
  7687. "required": true
  7688. },
  7689. {
  7690. "type": "string",
  7691. "description": "name of the repo",
  7692. "name": "repo",
  7693. "in": "path",
  7694. "required": true
  7695. },
  7696. {
  7697. "type": "integer",
  7698. "format": "int64",
  7699. "description": "id of the release",
  7700. "name": "id",
  7701. "in": "path",
  7702. "required": true
  7703. },
  7704. {
  7705. "type": "integer",
  7706. "format": "int64",
  7707. "description": "id of the attachment to edit",
  7708. "name": "attachment_id",
  7709. "in": "path",
  7710. "required": true
  7711. },
  7712. {
  7713. "name": "body",
  7714. "in": "body",
  7715. "schema": {
  7716. "$ref": "#/definitions/EditAttachmentOptions"
  7717. }
  7718. }
  7719. ],
  7720. "responses": {
  7721. "201": {
  7722. "$ref": "#/responses/Attachment"
  7723. }
  7724. }
  7725. }
  7726. },
  7727. "/repos/{owner}/{repo}/signing-key.gpg": {
  7728. "get": {
  7729. "produces": [
  7730. "text/plain"
  7731. ],
  7732. "tags": [
  7733. "repository"
  7734. ],
  7735. "summary": "Get signing-key.gpg for given repository",
  7736. "operationId": "repoSigningKey",
  7737. "parameters": [
  7738. {
  7739. "type": "string",
  7740. "description": "owner of the repo",
  7741. "name": "owner",
  7742. "in": "path",
  7743. "required": true
  7744. },
  7745. {
  7746. "type": "string",
  7747. "description": "name of the repo",
  7748. "name": "repo",
  7749. "in": "path",
  7750. "required": true
  7751. }
  7752. ],
  7753. "responses": {
  7754. "200": {
  7755. "description": "GPG armored public key",
  7756. "schema": {
  7757. "type": "string"
  7758. }
  7759. }
  7760. }
  7761. }
  7762. },
  7763. "/repos/{owner}/{repo}/stargazers": {
  7764. "get": {
  7765. "produces": [
  7766. "application/json"
  7767. ],
  7768. "tags": [
  7769. "repository"
  7770. ],
  7771. "summary": "List a repo's stargazers",
  7772. "operationId": "repoListStargazers",
  7773. "parameters": [
  7774. {
  7775. "type": "string",
  7776. "description": "owner of the repo",
  7777. "name": "owner",
  7778. "in": "path",
  7779. "required": true
  7780. },
  7781. {
  7782. "type": "string",
  7783. "description": "name of the repo",
  7784. "name": "repo",
  7785. "in": "path",
  7786. "required": true
  7787. },
  7788. {
  7789. "type": "integer",
  7790. "description": "page number of results to return (1-based)",
  7791. "name": "page",
  7792. "in": "query"
  7793. },
  7794. {
  7795. "type": "integer",
  7796. "description": "page size of results",
  7797. "name": "limit",
  7798. "in": "query"
  7799. }
  7800. ],
  7801. "responses": {
  7802. "200": {
  7803. "$ref": "#/responses/UserList"
  7804. }
  7805. }
  7806. }
  7807. },
  7808. "/repos/{owner}/{repo}/statuses/{sha}": {
  7809. "get": {
  7810. "produces": [
  7811. "application/json"
  7812. ],
  7813. "tags": [
  7814. "repository"
  7815. ],
  7816. "summary": "Get a commit's statuses",
  7817. "operationId": "repoListStatuses",
  7818. "parameters": [
  7819. {
  7820. "type": "string",
  7821. "description": "owner of the repo",
  7822. "name": "owner",
  7823. "in": "path",
  7824. "required": true
  7825. },
  7826. {
  7827. "type": "string",
  7828. "description": "name of the repo",
  7829. "name": "repo",
  7830. "in": "path",
  7831. "required": true
  7832. },
  7833. {
  7834. "type": "string",
  7835. "description": "sha of the commit",
  7836. "name": "sha",
  7837. "in": "path",
  7838. "required": true
  7839. },
  7840. {
  7841. "enum": [
  7842. "oldest",
  7843. "recentupdate",
  7844. "leastupdate",
  7845. "leastindex",
  7846. "highestindex"
  7847. ],
  7848. "type": "string",
  7849. "description": "type of sort",
  7850. "name": "sort",
  7851. "in": "query"
  7852. },
  7853. {
  7854. "enum": [
  7855. "pending",
  7856. "success",
  7857. "error",
  7858. "failure",
  7859. "warning"
  7860. ],
  7861. "type": "string",
  7862. "description": "type of state",
  7863. "name": "state",
  7864. "in": "query"
  7865. },
  7866. {
  7867. "type": "integer",
  7868. "description": "page number of results to return (1-based)",
  7869. "name": "page",
  7870. "in": "query"
  7871. },
  7872. {
  7873. "type": "integer",
  7874. "description": "page size of results",
  7875. "name": "limit",
  7876. "in": "query"
  7877. }
  7878. ],
  7879. "responses": {
  7880. "200": {
  7881. "$ref": "#/responses/StatusList"
  7882. },
  7883. "400": {
  7884. "$ref": "#/responses/error"
  7885. }
  7886. }
  7887. },
  7888. "post": {
  7889. "produces": [
  7890. "application/json"
  7891. ],
  7892. "tags": [
  7893. "repository"
  7894. ],
  7895. "summary": "Create a commit status",
  7896. "operationId": "repoCreateStatus",
  7897. "parameters": [
  7898. {
  7899. "type": "string",
  7900. "description": "owner of the repo",
  7901. "name": "owner",
  7902. "in": "path",
  7903. "required": true
  7904. },
  7905. {
  7906. "type": "string",
  7907. "description": "name of the repo",
  7908. "name": "repo",
  7909. "in": "path",
  7910. "required": true
  7911. },
  7912. {
  7913. "type": "string",
  7914. "description": "sha of the commit",
  7915. "name": "sha",
  7916. "in": "path",
  7917. "required": true
  7918. },
  7919. {
  7920. "name": "body",
  7921. "in": "body",
  7922. "schema": {
  7923. "$ref": "#/definitions/CreateStatusOption"
  7924. }
  7925. }
  7926. ],
  7927. "responses": {
  7928. "201": {
  7929. "$ref": "#/responses/Status"
  7930. },
  7931. "400": {
  7932. "$ref": "#/responses/error"
  7933. }
  7934. }
  7935. }
  7936. },
  7937. "/repos/{owner}/{repo}/subscribers": {
  7938. "get": {
  7939. "produces": [
  7940. "application/json"
  7941. ],
  7942. "tags": [
  7943. "repository"
  7944. ],
  7945. "summary": "List a repo's watchers",
  7946. "operationId": "repoListSubscribers",
  7947. "parameters": [
  7948. {
  7949. "type": "string",
  7950. "description": "owner of the repo",
  7951. "name": "owner",
  7952. "in": "path",
  7953. "required": true
  7954. },
  7955. {
  7956. "type": "string",
  7957. "description": "name of the repo",
  7958. "name": "repo",
  7959. "in": "path",
  7960. "required": true
  7961. },
  7962. {
  7963. "type": "integer",
  7964. "description": "page number of results to return (1-based)",
  7965. "name": "page",
  7966. "in": "query"
  7967. },
  7968. {
  7969. "type": "integer",
  7970. "description": "page size of results",
  7971. "name": "limit",
  7972. "in": "query"
  7973. }
  7974. ],
  7975. "responses": {
  7976. "200": {
  7977. "$ref": "#/responses/UserList"
  7978. }
  7979. }
  7980. }
  7981. },
  7982. "/repos/{owner}/{repo}/subscription": {
  7983. "get": {
  7984. "tags": [
  7985. "repository"
  7986. ],
  7987. "summary": "Check if the current user is watching a repo",
  7988. "operationId": "userCurrentCheckSubscription",
  7989. "parameters": [
  7990. {
  7991. "type": "string",
  7992. "description": "owner of the repo",
  7993. "name": "owner",
  7994. "in": "path",
  7995. "required": true
  7996. },
  7997. {
  7998. "type": "string",
  7999. "description": "name of the repo",
  8000. "name": "repo",
  8001. "in": "path",
  8002. "required": true
  8003. }
  8004. ],
  8005. "responses": {
  8006. "200": {
  8007. "$ref": "#/responses/WatchInfo"
  8008. },
  8009. "404": {
  8010. "description": "User is not watching this repo or repo do not exist"
  8011. }
  8012. }
  8013. },
  8014. "put": {
  8015. "tags": [
  8016. "repository"
  8017. ],
  8018. "summary": "Watch a repo",
  8019. "operationId": "userCurrentPutSubscription",
  8020. "parameters": [
  8021. {
  8022. "type": "string",
  8023. "description": "owner of the repo",
  8024. "name": "owner",
  8025. "in": "path",
  8026. "required": true
  8027. },
  8028. {
  8029. "type": "string",
  8030. "description": "name of the repo",
  8031. "name": "repo",
  8032. "in": "path",
  8033. "required": true
  8034. }
  8035. ],
  8036. "responses": {
  8037. "200": {
  8038. "$ref": "#/responses/WatchInfo"
  8039. }
  8040. }
  8041. },
  8042. "delete": {
  8043. "tags": [
  8044. "repository"
  8045. ],
  8046. "summary": "Unwatch a repo",
  8047. "operationId": "userCurrentDeleteSubscription",
  8048. "parameters": [
  8049. {
  8050. "type": "string",
  8051. "description": "owner of the repo",
  8052. "name": "owner",
  8053. "in": "path",
  8054. "required": true
  8055. },
  8056. {
  8057. "type": "string",
  8058. "description": "name of the repo",
  8059. "name": "repo",
  8060. "in": "path",
  8061. "required": true
  8062. }
  8063. ],
  8064. "responses": {
  8065. "204": {
  8066. "$ref": "#/responses/empty"
  8067. }
  8068. }
  8069. }
  8070. },
  8071. "/repos/{owner}/{repo}/tags": {
  8072. "get": {
  8073. "produces": [
  8074. "application/json"
  8075. ],
  8076. "tags": [
  8077. "repository"
  8078. ],
  8079. "summary": "List a repository's tags",
  8080. "operationId": "repoListTags",
  8081. "parameters": [
  8082. {
  8083. "type": "string",
  8084. "description": "owner of the repo",
  8085. "name": "owner",
  8086. "in": "path",
  8087. "required": true
  8088. },
  8089. {
  8090. "type": "string",
  8091. "description": "name of the repo",
  8092. "name": "repo",
  8093. "in": "path",
  8094. "required": true
  8095. },
  8096. {
  8097. "type": "integer",
  8098. "description": "page number of results to return (1-based)",
  8099. "name": "page",
  8100. "in": "query"
  8101. },
  8102. {
  8103. "type": "integer",
  8104. "description": "page size of results, default maximum page size is 50",
  8105. "name": "limit",
  8106. "in": "query"
  8107. }
  8108. ],
  8109. "responses": {
  8110. "200": {
  8111. "$ref": "#/responses/TagList"
  8112. }
  8113. }
  8114. }
  8115. },
  8116. "/repos/{owner}/{repo}/times": {
  8117. "get": {
  8118. "produces": [
  8119. "application/json"
  8120. ],
  8121. "tags": [
  8122. "repository"
  8123. ],
  8124. "summary": "List a repo's tracked times",
  8125. "operationId": "repoTrackedTimes",
  8126. "parameters": [
  8127. {
  8128. "type": "string",
  8129. "description": "owner of the repo",
  8130. "name": "owner",
  8131. "in": "path",
  8132. "required": true
  8133. },
  8134. {
  8135. "type": "string",
  8136. "description": "name of the repo",
  8137. "name": "repo",
  8138. "in": "path",
  8139. "required": true
  8140. },
  8141. {
  8142. "type": "string",
  8143. "description": "optional filter by user",
  8144. "name": "user",
  8145. "in": "query"
  8146. },
  8147. {
  8148. "type": "string",
  8149. "format": "date-time",
  8150. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  8151. "name": "since",
  8152. "in": "query"
  8153. },
  8154. {
  8155. "type": "string",
  8156. "format": "date-time",
  8157. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  8158. "name": "before",
  8159. "in": "query"
  8160. },
  8161. {
  8162. "type": "integer",
  8163. "description": "page number of results to return (1-based)",
  8164. "name": "page",
  8165. "in": "query"
  8166. },
  8167. {
  8168. "type": "integer",
  8169. "description": "page size of results",
  8170. "name": "limit",
  8171. "in": "query"
  8172. }
  8173. ],
  8174. "responses": {
  8175. "200": {
  8176. "$ref": "#/responses/TrackedTimeList"
  8177. },
  8178. "400": {
  8179. "$ref": "#/responses/error"
  8180. },
  8181. "403": {
  8182. "$ref": "#/responses/forbidden"
  8183. }
  8184. }
  8185. }
  8186. },
  8187. "/repos/{owner}/{repo}/times/{user}": {
  8188. "get": {
  8189. "produces": [
  8190. "application/json"
  8191. ],
  8192. "tags": [
  8193. "repository"
  8194. ],
  8195. "summary": "List a user's tracked times in a repo",
  8196. "operationId": "userTrackedTimes",
  8197. "deprecated": true,
  8198. "parameters": [
  8199. {
  8200. "type": "string",
  8201. "description": "owner of the repo",
  8202. "name": "owner",
  8203. "in": "path",
  8204. "required": true
  8205. },
  8206. {
  8207. "type": "string",
  8208. "description": "name of the repo",
  8209. "name": "repo",
  8210. "in": "path",
  8211. "required": true
  8212. },
  8213. {
  8214. "type": "string",
  8215. "description": "username of user",
  8216. "name": "user",
  8217. "in": "path",
  8218. "required": true
  8219. }
  8220. ],
  8221. "responses": {
  8222. "200": {
  8223. "$ref": "#/responses/TrackedTimeList"
  8224. },
  8225. "400": {
  8226. "$ref": "#/responses/error"
  8227. },
  8228. "403": {
  8229. "$ref": "#/responses/forbidden"
  8230. }
  8231. }
  8232. }
  8233. },
  8234. "/repos/{owner}/{repo}/topics": {
  8235. "get": {
  8236. "produces": [
  8237. "application/json"
  8238. ],
  8239. "tags": [
  8240. "repository"
  8241. ],
  8242. "summary": "Get list of topics that a repository has",
  8243. "operationId": "repoListTopics",
  8244. "parameters": [
  8245. {
  8246. "type": "string",
  8247. "description": "owner of the repo",
  8248. "name": "owner",
  8249. "in": "path",
  8250. "required": true
  8251. },
  8252. {
  8253. "type": "string",
  8254. "description": "name of the repo",
  8255. "name": "repo",
  8256. "in": "path",
  8257. "required": true
  8258. },
  8259. {
  8260. "type": "integer",
  8261. "description": "page number of results to return (1-based)",
  8262. "name": "page",
  8263. "in": "query"
  8264. },
  8265. {
  8266. "type": "integer",
  8267. "description": "page size of results",
  8268. "name": "limit",
  8269. "in": "query"
  8270. }
  8271. ],
  8272. "responses": {
  8273. "200": {
  8274. "$ref": "#/responses/TopicNames"
  8275. }
  8276. }
  8277. },
  8278. "put": {
  8279. "produces": [
  8280. "application/json"
  8281. ],
  8282. "tags": [
  8283. "repository"
  8284. ],
  8285. "summary": "Replace list of topics for a repository",
  8286. "operationId": "repoUpdateTopics",
  8287. "parameters": [
  8288. {
  8289. "type": "string",
  8290. "description": "owner of the repo",
  8291. "name": "owner",
  8292. "in": "path",
  8293. "required": true
  8294. },
  8295. {
  8296. "type": "string",
  8297. "description": "name of the repo",
  8298. "name": "repo",
  8299. "in": "path",
  8300. "required": true
  8301. },
  8302. {
  8303. "name": "body",
  8304. "in": "body",
  8305. "schema": {
  8306. "$ref": "#/definitions/RepoTopicOptions"
  8307. }
  8308. }
  8309. ],
  8310. "responses": {
  8311. "204": {
  8312. "$ref": "#/responses/empty"
  8313. },
  8314. "422": {
  8315. "$ref": "#/responses/invalidTopicsError"
  8316. }
  8317. }
  8318. }
  8319. },
  8320. "/repos/{owner}/{repo}/topics/{topic}": {
  8321. "put": {
  8322. "produces": [
  8323. "application/json"
  8324. ],
  8325. "tags": [
  8326. "repository"
  8327. ],
  8328. "summary": "Add a topic to a repository",
  8329. "operationId": "repoAddTopíc",
  8330. "parameters": [
  8331. {
  8332. "type": "string",
  8333. "description": "owner of the repo",
  8334. "name": "owner",
  8335. "in": "path",
  8336. "required": true
  8337. },
  8338. {
  8339. "type": "string",
  8340. "description": "name of the repo",
  8341. "name": "repo",
  8342. "in": "path",
  8343. "required": true
  8344. },
  8345. {
  8346. "type": "string",
  8347. "description": "name of the topic to add",
  8348. "name": "topic",
  8349. "in": "path",
  8350. "required": true
  8351. }
  8352. ],
  8353. "responses": {
  8354. "204": {
  8355. "$ref": "#/responses/empty"
  8356. },
  8357. "422": {
  8358. "$ref": "#/responses/invalidTopicsError"
  8359. }
  8360. }
  8361. },
  8362. "delete": {
  8363. "produces": [
  8364. "application/json"
  8365. ],
  8366. "tags": [
  8367. "repository"
  8368. ],
  8369. "summary": "Delete a topic from a repository",
  8370. "operationId": "repoDeleteTopic",
  8371. "parameters": [
  8372. {
  8373. "type": "string",
  8374. "description": "owner of the repo",
  8375. "name": "owner",
  8376. "in": "path",
  8377. "required": true
  8378. },
  8379. {
  8380. "type": "string",
  8381. "description": "name of the repo",
  8382. "name": "repo",
  8383. "in": "path",
  8384. "required": true
  8385. },
  8386. {
  8387. "type": "string",
  8388. "description": "name of the topic to delete",
  8389. "name": "topic",
  8390. "in": "path",
  8391. "required": true
  8392. }
  8393. ],
  8394. "responses": {
  8395. "204": {
  8396. "$ref": "#/responses/empty"
  8397. },
  8398. "422": {
  8399. "$ref": "#/responses/invalidTopicsError"
  8400. }
  8401. }
  8402. }
  8403. },
  8404. "/repos/{owner}/{repo}/transfer": {
  8405. "post": {
  8406. "produces": [
  8407. "application/json"
  8408. ],
  8409. "tags": [
  8410. "repository"
  8411. ],
  8412. "summary": "Transfer a repo ownership",
  8413. "operationId": "repoTransfer",
  8414. "parameters": [
  8415. {
  8416. "type": "string",
  8417. "description": "owner of the repo to transfer",
  8418. "name": "owner",
  8419. "in": "path",
  8420. "required": true
  8421. },
  8422. {
  8423. "type": "string",
  8424. "description": "name of the repo to transfer",
  8425. "name": "repo",
  8426. "in": "path",
  8427. "required": true
  8428. },
  8429. {
  8430. "description": "Transfer Options",
  8431. "name": "body",
  8432. "in": "body",
  8433. "required": true,
  8434. "schema": {
  8435. "$ref": "#/definitions/TransferRepoOption"
  8436. }
  8437. }
  8438. ],
  8439. "responses": {
  8440. "202": {
  8441. "$ref": "#/responses/Repository"
  8442. },
  8443. "403": {
  8444. "$ref": "#/responses/forbidden"
  8445. },
  8446. "404": {
  8447. "$ref": "#/responses/notFound"
  8448. },
  8449. "422": {
  8450. "$ref": "#/responses/validationError"
  8451. }
  8452. }
  8453. }
  8454. },
  8455. "/repositories/{id}": {
  8456. "get": {
  8457. "produces": [
  8458. "application/json"
  8459. ],
  8460. "tags": [
  8461. "repository"
  8462. ],
  8463. "summary": "Get a repository by id",
  8464. "operationId": "repoGetByID",
  8465. "parameters": [
  8466. {
  8467. "type": "integer",
  8468. "format": "int64",
  8469. "description": "id of the repo to get",
  8470. "name": "id",
  8471. "in": "path",
  8472. "required": true
  8473. }
  8474. ],
  8475. "responses": {
  8476. "200": {
  8477. "$ref": "#/responses/Repository"
  8478. }
  8479. }
  8480. }
  8481. },
  8482. "/settings/repository": {
  8483. "get": {
  8484. "produces": [
  8485. "application/json"
  8486. ],
  8487. "tags": [
  8488. "settings"
  8489. ],
  8490. "summary": "Get instance's global settings for repositories",
  8491. "operationId": "getGeneralRepositorySettings",
  8492. "responses": {
  8493. "200": {
  8494. "$ref": "#/responses/GeneralRepoSettings"
  8495. }
  8496. }
  8497. }
  8498. },
  8499. "/settings/ui": {
  8500. "get": {
  8501. "produces": [
  8502. "application/json"
  8503. ],
  8504. "tags": [
  8505. "settings"
  8506. ],
  8507. "summary": "Get instance's global settings for ui",
  8508. "operationId": "getGeneralUISettings",
  8509. "responses": {
  8510. "200": {
  8511. "$ref": "#/responses/GeneralUISettings"
  8512. }
  8513. }
  8514. }
  8515. },
  8516. "/signing-key.gpg": {
  8517. "get": {
  8518. "produces": [
  8519. "text/plain"
  8520. ],
  8521. "tags": [
  8522. "miscellaneous"
  8523. ],
  8524. "summary": "Get default signing-key.gpg",
  8525. "operationId": "getSigningKey",
  8526. "responses": {
  8527. "200": {
  8528. "description": "GPG armored public key",
  8529. "schema": {
  8530. "type": "string"
  8531. }
  8532. }
  8533. }
  8534. }
  8535. },
  8536. "/teams/{id}": {
  8537. "get": {
  8538. "produces": [
  8539. "application/json"
  8540. ],
  8541. "tags": [
  8542. "organization"
  8543. ],
  8544. "summary": "Get a team",
  8545. "operationId": "orgGetTeam",
  8546. "parameters": [
  8547. {
  8548. "type": "integer",
  8549. "format": "int64",
  8550. "description": "id of the team to get",
  8551. "name": "id",
  8552. "in": "path",
  8553. "required": true
  8554. }
  8555. ],
  8556. "responses": {
  8557. "200": {
  8558. "$ref": "#/responses/Team"
  8559. }
  8560. }
  8561. },
  8562. "delete": {
  8563. "tags": [
  8564. "organization"
  8565. ],
  8566. "summary": "Delete a team",
  8567. "operationId": "orgDeleteTeam",
  8568. "parameters": [
  8569. {
  8570. "type": "integer",
  8571. "format": "int64",
  8572. "description": "id of the team to delete",
  8573. "name": "id",
  8574. "in": "path",
  8575. "required": true
  8576. }
  8577. ],
  8578. "responses": {
  8579. "204": {
  8580. "description": "team deleted"
  8581. }
  8582. }
  8583. },
  8584. "patch": {
  8585. "consumes": [
  8586. "application/json"
  8587. ],
  8588. "produces": [
  8589. "application/json"
  8590. ],
  8591. "tags": [
  8592. "organization"
  8593. ],
  8594. "summary": "Edit a team",
  8595. "operationId": "orgEditTeam",
  8596. "parameters": [
  8597. {
  8598. "type": "integer",
  8599. "description": "id of the team to edit",
  8600. "name": "id",
  8601. "in": "path",
  8602. "required": true
  8603. },
  8604. {
  8605. "name": "body",
  8606. "in": "body",
  8607. "schema": {
  8608. "$ref": "#/definitions/EditTeamOption"
  8609. }
  8610. }
  8611. ],
  8612. "responses": {
  8613. "200": {
  8614. "$ref": "#/responses/Team"
  8615. }
  8616. }
  8617. }
  8618. },
  8619. "/teams/{id}/members": {
  8620. "get": {
  8621. "produces": [
  8622. "application/json"
  8623. ],
  8624. "tags": [
  8625. "organization"
  8626. ],
  8627. "summary": "List a team's members",
  8628. "operationId": "orgListTeamMembers",
  8629. "parameters": [
  8630. {
  8631. "type": "integer",
  8632. "format": "int64",
  8633. "description": "id of the team",
  8634. "name": "id",
  8635. "in": "path",
  8636. "required": true
  8637. },
  8638. {
  8639. "type": "integer",
  8640. "description": "page number of results to return (1-based)",
  8641. "name": "page",
  8642. "in": "query"
  8643. },
  8644. {
  8645. "type": "integer",
  8646. "description": "page size of results",
  8647. "name": "limit",
  8648. "in": "query"
  8649. }
  8650. ],
  8651. "responses": {
  8652. "200": {
  8653. "$ref": "#/responses/UserList"
  8654. }
  8655. }
  8656. }
  8657. },
  8658. "/teams/{id}/members/{username}": {
  8659. "get": {
  8660. "produces": [
  8661. "application/json"
  8662. ],
  8663. "tags": [
  8664. "organization"
  8665. ],
  8666. "summary": "List a particular member of team",
  8667. "operationId": "orgListTeamMember",
  8668. "parameters": [
  8669. {
  8670. "type": "integer",
  8671. "format": "int64",
  8672. "description": "id of the team",
  8673. "name": "id",
  8674. "in": "path",
  8675. "required": true
  8676. },
  8677. {
  8678. "type": "string",
  8679. "description": "username of the member to list",
  8680. "name": "username",
  8681. "in": "path",
  8682. "required": true
  8683. }
  8684. ],
  8685. "responses": {
  8686. "200": {
  8687. "$ref": "#/responses/User"
  8688. },
  8689. "404": {
  8690. "$ref": "#/responses/notFound"
  8691. }
  8692. }
  8693. },
  8694. "put": {
  8695. "produces": [
  8696. "application/json"
  8697. ],
  8698. "tags": [
  8699. "organization"
  8700. ],
  8701. "summary": "Add a team member",
  8702. "operationId": "orgAddTeamMember",
  8703. "parameters": [
  8704. {
  8705. "type": "integer",
  8706. "format": "int64",
  8707. "description": "id of the team",
  8708. "name": "id",
  8709. "in": "path",
  8710. "required": true
  8711. },
  8712. {
  8713. "type": "string",
  8714. "description": "username of the user to add",
  8715. "name": "username",
  8716. "in": "path",
  8717. "required": true
  8718. }
  8719. ],
  8720. "responses": {
  8721. "204": {
  8722. "$ref": "#/responses/empty"
  8723. },
  8724. "404": {
  8725. "$ref": "#/responses/notFound"
  8726. }
  8727. }
  8728. },
  8729. "delete": {
  8730. "produces": [
  8731. "application/json"
  8732. ],
  8733. "tags": [
  8734. "organization"
  8735. ],
  8736. "summary": "Remove a team member",
  8737. "operationId": "orgRemoveTeamMember",
  8738. "parameters": [
  8739. {
  8740. "type": "integer",
  8741. "format": "int64",
  8742. "description": "id of the team",
  8743. "name": "id",
  8744. "in": "path",
  8745. "required": true
  8746. },
  8747. {
  8748. "type": "string",
  8749. "description": "username of the user to remove",
  8750. "name": "username",
  8751. "in": "path",
  8752. "required": true
  8753. }
  8754. ],
  8755. "responses": {
  8756. "204": {
  8757. "$ref": "#/responses/empty"
  8758. },
  8759. "404": {
  8760. "$ref": "#/responses/notFound"
  8761. }
  8762. }
  8763. }
  8764. },
  8765. "/teams/{id}/repos": {
  8766. "get": {
  8767. "produces": [
  8768. "application/json"
  8769. ],
  8770. "tags": [
  8771. "organization"
  8772. ],
  8773. "summary": "List a team's repos",
  8774. "operationId": "orgListTeamRepos",
  8775. "parameters": [
  8776. {
  8777. "type": "integer",
  8778. "format": "int64",
  8779. "description": "id of the team",
  8780. "name": "id",
  8781. "in": "path",
  8782. "required": true
  8783. },
  8784. {
  8785. "type": "integer",
  8786. "description": "page number of results to return (1-based)",
  8787. "name": "page",
  8788. "in": "query"
  8789. },
  8790. {
  8791. "type": "integer",
  8792. "description": "page size of results",
  8793. "name": "limit",
  8794. "in": "query"
  8795. }
  8796. ],
  8797. "responses": {
  8798. "200": {
  8799. "$ref": "#/responses/RepositoryList"
  8800. }
  8801. }
  8802. }
  8803. },
  8804. "/teams/{id}/repos/{org}/{repo}": {
  8805. "put": {
  8806. "produces": [
  8807. "application/json"
  8808. ],
  8809. "tags": [
  8810. "organization"
  8811. ],
  8812. "summary": "Add a repository to a team",
  8813. "operationId": "orgAddTeamRepository",
  8814. "parameters": [
  8815. {
  8816. "type": "integer",
  8817. "format": "int64",
  8818. "description": "id of the team",
  8819. "name": "id",
  8820. "in": "path",
  8821. "required": true
  8822. },
  8823. {
  8824. "type": "string",
  8825. "description": "organization that owns the repo to add",
  8826. "name": "org",
  8827. "in": "path",
  8828. "required": true
  8829. },
  8830. {
  8831. "type": "string",
  8832. "description": "name of the repo to add",
  8833. "name": "repo",
  8834. "in": "path",
  8835. "required": true
  8836. }
  8837. ],
  8838. "responses": {
  8839. "204": {
  8840. "$ref": "#/responses/empty"
  8841. },
  8842. "403": {
  8843. "$ref": "#/responses/forbidden"
  8844. }
  8845. }
  8846. },
  8847. "delete": {
  8848. "description": "This does not delete the repository, it only removes the repository from the team.",
  8849. "produces": [
  8850. "application/json"
  8851. ],
  8852. "tags": [
  8853. "organization"
  8854. ],
  8855. "summary": "Remove a repository from a team",
  8856. "operationId": "orgRemoveTeamRepository",
  8857. "parameters": [
  8858. {
  8859. "type": "integer",
  8860. "format": "int64",
  8861. "description": "id of the team",
  8862. "name": "id",
  8863. "in": "path",
  8864. "required": true
  8865. },
  8866. {
  8867. "type": "string",
  8868. "description": "organization that owns the repo to remove",
  8869. "name": "org",
  8870. "in": "path",
  8871. "required": true
  8872. },
  8873. {
  8874. "type": "string",
  8875. "description": "name of the repo to remove",
  8876. "name": "repo",
  8877. "in": "path",
  8878. "required": true
  8879. }
  8880. ],
  8881. "responses": {
  8882. "204": {
  8883. "$ref": "#/responses/empty"
  8884. },
  8885. "403": {
  8886. "$ref": "#/responses/forbidden"
  8887. }
  8888. }
  8889. }
  8890. },
  8891. "/topics/search": {
  8892. "get": {
  8893. "produces": [
  8894. "application/json"
  8895. ],
  8896. "tags": [
  8897. "repository"
  8898. ],
  8899. "summary": "search topics via keyword",
  8900. "operationId": "topicSearch",
  8901. "parameters": [
  8902. {
  8903. "type": "string",
  8904. "description": "keywords to search",
  8905. "name": "q",
  8906. "in": "query",
  8907. "required": true
  8908. },
  8909. {
  8910. "type": "integer",
  8911. "description": "page number of results to return (1-based)",
  8912. "name": "page",
  8913. "in": "query"
  8914. },
  8915. {
  8916. "type": "integer",
  8917. "description": "page size of results",
  8918. "name": "limit",
  8919. "in": "query"
  8920. }
  8921. ],
  8922. "responses": {
  8923. "200": {
  8924. "$ref": "#/responses/TopicListResponse"
  8925. },
  8926. "403": {
  8927. "$ref": "#/responses/forbidden"
  8928. }
  8929. }
  8930. }
  8931. },
  8932. "/user": {
  8933. "get": {
  8934. "produces": [
  8935. "application/json"
  8936. ],
  8937. "tags": [
  8938. "user"
  8939. ],
  8940. "summary": "Get the authenticated user",
  8941. "operationId": "userGetCurrent",
  8942. "responses": {
  8943. "200": {
  8944. "$ref": "#/responses/User"
  8945. }
  8946. }
  8947. }
  8948. },
  8949. "/user/applications/oauth2": {
  8950. "get": {
  8951. "produces": [
  8952. "application/json"
  8953. ],
  8954. "tags": [
  8955. "user"
  8956. ],
  8957. "summary": "List the authenticated user's oauth2 applications",
  8958. "operationId": "userGetOauth2Application",
  8959. "parameters": [
  8960. {
  8961. "type": "integer",
  8962. "description": "page number of results to return (1-based)",
  8963. "name": "page",
  8964. "in": "query"
  8965. },
  8966. {
  8967. "type": "integer",
  8968. "description": "page size of results",
  8969. "name": "limit",
  8970. "in": "query"
  8971. }
  8972. ],
  8973. "responses": {
  8974. "200": {
  8975. "$ref": "#/responses/OAuth2ApplicationList"
  8976. }
  8977. }
  8978. },
  8979. "post": {
  8980. "produces": [
  8981. "application/json"
  8982. ],
  8983. "tags": [
  8984. "user"
  8985. ],
  8986. "summary": "creates a new OAuth2 application",
  8987. "operationId": "userCreateOAuth2Application",
  8988. "parameters": [
  8989. {
  8990. "name": "body",
  8991. "in": "body",
  8992. "required": true,
  8993. "schema": {
  8994. "$ref": "#/definitions/CreateOAuth2ApplicationOptions"
  8995. }
  8996. }
  8997. ],
  8998. "responses": {
  8999. "201": {
  9000. "$ref": "#/responses/OAuth2Application"
  9001. }
  9002. }
  9003. }
  9004. },
  9005. "/user/applications/oauth2/{id}": {
  9006. "get": {
  9007. "produces": [
  9008. "application/json"
  9009. ],
  9010. "tags": [
  9011. "user"
  9012. ],
  9013. "summary": "get an OAuth2 Application",
  9014. "operationId": "userGetOAuth2Application",
  9015. "parameters": [
  9016. {
  9017. "type": "integer",
  9018. "format": "int64",
  9019. "description": "Application ID to be found",
  9020. "name": "id",
  9021. "in": "path",
  9022. "required": true
  9023. }
  9024. ],
  9025. "responses": {
  9026. "200": {
  9027. "$ref": "#/responses/OAuth2Application"
  9028. }
  9029. }
  9030. },
  9031. "delete": {
  9032. "produces": [
  9033. "application/json"
  9034. ],
  9035. "tags": [
  9036. "user"
  9037. ],
  9038. "summary": "delete an OAuth2 Application",
  9039. "operationId": "userDeleteOAuth2Application",
  9040. "parameters": [
  9041. {
  9042. "type": "integer",
  9043. "format": "int64",
  9044. "description": "token to be deleted",
  9045. "name": "id",
  9046. "in": "path",
  9047. "required": true
  9048. }
  9049. ],
  9050. "responses": {
  9051. "204": {
  9052. "$ref": "#/responses/empty"
  9053. }
  9054. }
  9055. },
  9056. "patch": {
  9057. "produces": [
  9058. "application/json"
  9059. ],
  9060. "tags": [
  9061. "user"
  9062. ],
  9063. "summary": "update an OAuth2 Application, this includes regenerating the client secret",
  9064. "operationId": "userUpdateOAuth2Application",
  9065. "parameters": [
  9066. {
  9067. "type": "integer",
  9068. "format": "int64",
  9069. "description": "application to be updated",
  9070. "name": "id",
  9071. "in": "path",
  9072. "required": true
  9073. },
  9074. {
  9075. "name": "body",
  9076. "in": "body",
  9077. "required": true,
  9078. "schema": {
  9079. "$ref": "#/definitions/CreateOAuth2ApplicationOptions"
  9080. }
  9081. }
  9082. ],
  9083. "responses": {
  9084. "200": {
  9085. "$ref": "#/responses/OAuth2Application"
  9086. }
  9087. }
  9088. }
  9089. },
  9090. "/user/emails": {
  9091. "get": {
  9092. "produces": [
  9093. "application/json"
  9094. ],
  9095. "tags": [
  9096. "user"
  9097. ],
  9098. "summary": "List the authenticated user's email addresses",
  9099. "operationId": "userListEmails",
  9100. "responses": {
  9101. "200": {
  9102. "$ref": "#/responses/EmailList"
  9103. }
  9104. }
  9105. },
  9106. "post": {
  9107. "produces": [
  9108. "application/json"
  9109. ],
  9110. "tags": [
  9111. "user"
  9112. ],
  9113. "summary": "Add email addresses",
  9114. "operationId": "userAddEmail",
  9115. "parameters": [
  9116. {
  9117. "name": "body",
  9118. "in": "body",
  9119. "schema": {
  9120. "$ref": "#/definitions/CreateEmailOption"
  9121. }
  9122. }
  9123. ],
  9124. "responses": {
  9125. "201": {
  9126. "$ref": "#/responses/EmailList"
  9127. },
  9128. "422": {
  9129. "$ref": "#/responses/validationError"
  9130. }
  9131. }
  9132. },
  9133. "delete": {
  9134. "produces": [
  9135. "application/json"
  9136. ],
  9137. "tags": [
  9138. "user"
  9139. ],
  9140. "summary": "Delete email addresses",
  9141. "operationId": "userDeleteEmail",
  9142. "parameters": [
  9143. {
  9144. "name": "body",
  9145. "in": "body",
  9146. "schema": {
  9147. "$ref": "#/definitions/DeleteEmailOption"
  9148. }
  9149. }
  9150. ],
  9151. "responses": {
  9152. "204": {
  9153. "$ref": "#/responses/empty"
  9154. }
  9155. }
  9156. }
  9157. },
  9158. "/user/followers": {
  9159. "get": {
  9160. "produces": [
  9161. "application/json"
  9162. ],
  9163. "tags": [
  9164. "user"
  9165. ],
  9166. "summary": "List the authenticated user's followers",
  9167. "operationId": "userCurrentListFollowers",
  9168. "parameters": [
  9169. {
  9170. "type": "integer",
  9171. "description": "page number of results to return (1-based)",
  9172. "name": "page",
  9173. "in": "query"
  9174. },
  9175. {
  9176. "type": "integer",
  9177. "description": "page size of results",
  9178. "name": "limit",
  9179. "in": "query"
  9180. }
  9181. ],
  9182. "responses": {
  9183. "200": {
  9184. "$ref": "#/responses/UserList"
  9185. }
  9186. }
  9187. }
  9188. },
  9189. "/user/following": {
  9190. "get": {
  9191. "produces": [
  9192. "application/json"
  9193. ],
  9194. "tags": [
  9195. "user"
  9196. ],
  9197. "summary": "List the users that the authenticated user is following",
  9198. "operationId": "userCurrentListFollowing",
  9199. "parameters": [
  9200. {
  9201. "type": "integer",
  9202. "description": "page number of results to return (1-based)",
  9203. "name": "page",
  9204. "in": "query"
  9205. },
  9206. {
  9207. "type": "integer",
  9208. "description": "page size of results",
  9209. "name": "limit",
  9210. "in": "query"
  9211. }
  9212. ],
  9213. "responses": {
  9214. "200": {
  9215. "$ref": "#/responses/UserList"
  9216. }
  9217. }
  9218. }
  9219. },
  9220. "/user/following/{username}": {
  9221. "get": {
  9222. "tags": [
  9223. "user"
  9224. ],
  9225. "summary": "Check whether a user is followed by the authenticated user",
  9226. "operationId": "userCurrentCheckFollowing",
  9227. "parameters": [
  9228. {
  9229. "type": "string",
  9230. "description": "username of followed user",
  9231. "name": "username",
  9232. "in": "path",
  9233. "required": true
  9234. }
  9235. ],
  9236. "responses": {
  9237. "204": {
  9238. "$ref": "#/responses/empty"
  9239. },
  9240. "404": {
  9241. "$ref": "#/responses/notFound"
  9242. }
  9243. }
  9244. },
  9245. "put": {
  9246. "tags": [
  9247. "user"
  9248. ],
  9249. "summary": "Follow a user",
  9250. "operationId": "userCurrentPutFollow",
  9251. "parameters": [
  9252. {
  9253. "type": "string",
  9254. "description": "username of user to follow",
  9255. "name": "username",
  9256. "in": "path",
  9257. "required": true
  9258. }
  9259. ],
  9260. "responses": {
  9261. "204": {
  9262. "$ref": "#/responses/empty"
  9263. }
  9264. }
  9265. },
  9266. "delete": {
  9267. "tags": [
  9268. "user"
  9269. ],
  9270. "summary": "Unfollow a user",
  9271. "operationId": "userCurrentDeleteFollow",
  9272. "parameters": [
  9273. {
  9274. "type": "string",
  9275. "description": "username of user to unfollow",
  9276. "name": "username",
  9277. "in": "path",
  9278. "required": true
  9279. }
  9280. ],
  9281. "responses": {
  9282. "204": {
  9283. "$ref": "#/responses/empty"
  9284. }
  9285. }
  9286. }
  9287. },
  9288. "/user/gpg_keys": {
  9289. "get": {
  9290. "produces": [
  9291. "application/json"
  9292. ],
  9293. "tags": [
  9294. "user"
  9295. ],
  9296. "summary": "List the authenticated user's GPG keys",
  9297. "operationId": "userCurrentListGPGKeys",
  9298. "parameters": [
  9299. {
  9300. "type": "integer",
  9301. "description": "page number of results to return (1-based)",
  9302. "name": "page",
  9303. "in": "query"
  9304. },
  9305. {
  9306. "type": "integer",
  9307. "description": "page size of results",
  9308. "name": "limit",
  9309. "in": "query"
  9310. }
  9311. ],
  9312. "responses": {
  9313. "200": {
  9314. "$ref": "#/responses/GPGKeyList"
  9315. }
  9316. }
  9317. },
  9318. "post": {
  9319. "consumes": [
  9320. "application/json"
  9321. ],
  9322. "produces": [
  9323. "application/json"
  9324. ],
  9325. "tags": [
  9326. "user"
  9327. ],
  9328. "summary": "Create a GPG key",
  9329. "operationId": "userCurrentPostGPGKey",
  9330. "parameters": [
  9331. {
  9332. "name": "Form",
  9333. "in": "body",
  9334. "schema": {
  9335. "$ref": "#/definitions/CreateGPGKeyOption"
  9336. }
  9337. }
  9338. ],
  9339. "responses": {
  9340. "201": {
  9341. "$ref": "#/responses/GPGKey"
  9342. },
  9343. "404": {
  9344. "$ref": "#/responses/notFound"
  9345. },
  9346. "422": {
  9347. "$ref": "#/responses/validationError"
  9348. }
  9349. }
  9350. }
  9351. },
  9352. "/user/gpg_keys/{id}": {
  9353. "get": {
  9354. "produces": [
  9355. "application/json"
  9356. ],
  9357. "tags": [
  9358. "user"
  9359. ],
  9360. "summary": "Get a GPG key",
  9361. "operationId": "userCurrentGetGPGKey",
  9362. "parameters": [
  9363. {
  9364. "type": "integer",
  9365. "format": "int64",
  9366. "description": "id of key to get",
  9367. "name": "id",
  9368. "in": "path",
  9369. "required": true
  9370. }
  9371. ],
  9372. "responses": {
  9373. "200": {
  9374. "$ref": "#/responses/GPGKey"
  9375. },
  9376. "404": {
  9377. "$ref": "#/responses/notFound"
  9378. }
  9379. }
  9380. },
  9381. "delete": {
  9382. "produces": [
  9383. "application/json"
  9384. ],
  9385. "tags": [
  9386. "user"
  9387. ],
  9388. "summary": "Remove a GPG key",
  9389. "operationId": "userCurrentDeleteGPGKey",
  9390. "parameters": [
  9391. {
  9392. "type": "integer",
  9393. "format": "int64",
  9394. "description": "id of key to delete",
  9395. "name": "id",
  9396. "in": "path",
  9397. "required": true
  9398. }
  9399. ],
  9400. "responses": {
  9401. "204": {
  9402. "$ref": "#/responses/empty"
  9403. },
  9404. "403": {
  9405. "$ref": "#/responses/forbidden"
  9406. },
  9407. "404": {
  9408. "$ref": "#/responses/notFound"
  9409. }
  9410. }
  9411. }
  9412. },
  9413. "/user/keys": {
  9414. "get": {
  9415. "produces": [
  9416. "application/json"
  9417. ],
  9418. "tags": [
  9419. "user"
  9420. ],
  9421. "summary": "List the authenticated user's public keys",
  9422. "operationId": "userCurrentListKeys",
  9423. "parameters": [
  9424. {
  9425. "type": "string",
  9426. "description": "fingerprint of the key",
  9427. "name": "fingerprint",
  9428. "in": "query"
  9429. },
  9430. {
  9431. "type": "integer",
  9432. "description": "page number of results to return (1-based)",
  9433. "name": "page",
  9434. "in": "query"
  9435. },
  9436. {
  9437. "type": "integer",
  9438. "description": "page size of results",
  9439. "name": "limit",
  9440. "in": "query"
  9441. }
  9442. ],
  9443. "responses": {
  9444. "200": {
  9445. "$ref": "#/responses/PublicKeyList"
  9446. }
  9447. }
  9448. },
  9449. "post": {
  9450. "consumes": [
  9451. "application/json"
  9452. ],
  9453. "produces": [
  9454. "application/json"
  9455. ],
  9456. "tags": [
  9457. "user"
  9458. ],
  9459. "summary": "Create a public key",
  9460. "operationId": "userCurrentPostKey",
  9461. "parameters": [
  9462. {
  9463. "name": "body",
  9464. "in": "body",
  9465. "schema": {
  9466. "$ref": "#/definitions/CreateKeyOption"
  9467. }
  9468. }
  9469. ],
  9470. "responses": {
  9471. "201": {
  9472. "$ref": "#/responses/PublicKey"
  9473. },
  9474. "422": {
  9475. "$ref": "#/responses/validationError"
  9476. }
  9477. }
  9478. }
  9479. },
  9480. "/user/keys/{id}": {
  9481. "get": {
  9482. "produces": [
  9483. "application/json"
  9484. ],
  9485. "tags": [
  9486. "user"
  9487. ],
  9488. "summary": "Get a public key",
  9489. "operationId": "userCurrentGetKey",
  9490. "parameters": [
  9491. {
  9492. "type": "integer",
  9493. "format": "int64",
  9494. "description": "id of key to get",
  9495. "name": "id",
  9496. "in": "path",
  9497. "required": true
  9498. }
  9499. ],
  9500. "responses": {
  9501. "200": {
  9502. "$ref": "#/responses/PublicKey"
  9503. },
  9504. "404": {
  9505. "$ref": "#/responses/notFound"
  9506. }
  9507. }
  9508. },
  9509. "delete": {
  9510. "produces": [
  9511. "application/json"
  9512. ],
  9513. "tags": [
  9514. "user"
  9515. ],
  9516. "summary": "Delete a public key",
  9517. "operationId": "userCurrentDeleteKey",
  9518. "parameters": [
  9519. {
  9520. "type": "integer",
  9521. "format": "int64",
  9522. "description": "id of key to delete",
  9523. "name": "id",
  9524. "in": "path",
  9525. "required": true
  9526. }
  9527. ],
  9528. "responses": {
  9529. "204": {
  9530. "$ref": "#/responses/empty"
  9531. },
  9532. "403": {
  9533. "$ref": "#/responses/forbidden"
  9534. },
  9535. "404": {
  9536. "$ref": "#/responses/notFound"
  9537. }
  9538. }
  9539. }
  9540. },
  9541. "/user/orgs": {
  9542. "get": {
  9543. "produces": [
  9544. "application/json"
  9545. ],
  9546. "tags": [
  9547. "organization"
  9548. ],
  9549. "summary": "List the current user's organizations",
  9550. "operationId": "orgListCurrentUserOrgs",
  9551. "parameters": [
  9552. {
  9553. "type": "integer",
  9554. "description": "page number of results to return (1-based)",
  9555. "name": "page",
  9556. "in": "query"
  9557. },
  9558. {
  9559. "type": "integer",
  9560. "description": "page size of results",
  9561. "name": "limit",
  9562. "in": "query"
  9563. }
  9564. ],
  9565. "responses": {
  9566. "200": {
  9567. "$ref": "#/responses/OrganizationList"
  9568. }
  9569. }
  9570. }
  9571. },
  9572. "/user/repos": {
  9573. "get": {
  9574. "produces": [
  9575. "application/json"
  9576. ],
  9577. "tags": [
  9578. "user"
  9579. ],
  9580. "summary": "List the repos that the authenticated user owns or has access to",
  9581. "operationId": "userCurrentListRepos",
  9582. "parameters": [
  9583. {
  9584. "type": "integer",
  9585. "description": "page number of results to return (1-based)",
  9586. "name": "page",
  9587. "in": "query"
  9588. },
  9589. {
  9590. "type": "integer",
  9591. "description": "page size of results",
  9592. "name": "limit",
  9593. "in": "query"
  9594. }
  9595. ],
  9596. "responses": {
  9597. "200": {
  9598. "$ref": "#/responses/RepositoryList"
  9599. }
  9600. }
  9601. },
  9602. "post": {
  9603. "consumes": [
  9604. "application/json"
  9605. ],
  9606. "produces": [
  9607. "application/json"
  9608. ],
  9609. "tags": [
  9610. "repository",
  9611. "user"
  9612. ],
  9613. "summary": "Create a repository",
  9614. "operationId": "createCurrentUserRepo",
  9615. "parameters": [
  9616. {
  9617. "name": "body",
  9618. "in": "body",
  9619. "schema": {
  9620. "$ref": "#/definitions/CreateRepoOption"
  9621. }
  9622. }
  9623. ],
  9624. "responses": {
  9625. "201": {
  9626. "$ref": "#/responses/Repository"
  9627. },
  9628. "409": {
  9629. "description": "The repository with the same name already exists."
  9630. },
  9631. "422": {
  9632. "$ref": "#/responses/validationError"
  9633. }
  9634. }
  9635. }
  9636. },
  9637. "/user/starred": {
  9638. "get": {
  9639. "produces": [
  9640. "application/json"
  9641. ],
  9642. "tags": [
  9643. "user"
  9644. ],
  9645. "summary": "The repos that the authenticated user has starred",
  9646. "operationId": "userCurrentListStarred",
  9647. "parameters": [
  9648. {
  9649. "type": "integer",
  9650. "description": "page number of results to return (1-based)",
  9651. "name": "page",
  9652. "in": "query"
  9653. },
  9654. {
  9655. "type": "integer",
  9656. "description": "page size of results",
  9657. "name": "limit",
  9658. "in": "query"
  9659. }
  9660. ],
  9661. "responses": {
  9662. "200": {
  9663. "$ref": "#/responses/RepositoryList"
  9664. }
  9665. }
  9666. }
  9667. },
  9668. "/user/starred/{owner}/{repo}": {
  9669. "get": {
  9670. "tags": [
  9671. "user"
  9672. ],
  9673. "summary": "Whether the authenticated is starring the repo",
  9674. "operationId": "userCurrentCheckStarring",
  9675. "parameters": [
  9676. {
  9677. "type": "string",
  9678. "description": "owner of the repo",
  9679. "name": "owner",
  9680. "in": "path",
  9681. "required": true
  9682. },
  9683. {
  9684. "type": "string",
  9685. "description": "name of the repo",
  9686. "name": "repo",
  9687. "in": "path",
  9688. "required": true
  9689. }
  9690. ],
  9691. "responses": {
  9692. "204": {
  9693. "$ref": "#/responses/empty"
  9694. },
  9695. "404": {
  9696. "$ref": "#/responses/notFound"
  9697. }
  9698. }
  9699. },
  9700. "put": {
  9701. "tags": [
  9702. "user"
  9703. ],
  9704. "summary": "Star the given repo",
  9705. "operationId": "userCurrentPutStar",
  9706. "parameters": [
  9707. {
  9708. "type": "string",
  9709. "description": "owner of the repo to star",
  9710. "name": "owner",
  9711. "in": "path",
  9712. "required": true
  9713. },
  9714. {
  9715. "type": "string",
  9716. "description": "name of the repo to star",
  9717. "name": "repo",
  9718. "in": "path",
  9719. "required": true
  9720. }
  9721. ],
  9722. "responses": {
  9723. "204": {
  9724. "$ref": "#/responses/empty"
  9725. }
  9726. }
  9727. },
  9728. "delete": {
  9729. "tags": [
  9730. "user"
  9731. ],
  9732. "summary": "Unstar the given repo",
  9733. "operationId": "userCurrentDeleteStar",
  9734. "parameters": [
  9735. {
  9736. "type": "string",
  9737. "description": "owner of the repo to unstar",
  9738. "name": "owner",
  9739. "in": "path",
  9740. "required": true
  9741. },
  9742. {
  9743. "type": "string",
  9744. "description": "name of the repo to unstar",
  9745. "name": "repo",
  9746. "in": "path",
  9747. "required": true
  9748. }
  9749. ],
  9750. "responses": {
  9751. "204": {
  9752. "$ref": "#/responses/empty"
  9753. }
  9754. }
  9755. }
  9756. },
  9757. "/user/stopwatches": {
  9758. "get": {
  9759. "consumes": [
  9760. "application/json"
  9761. ],
  9762. "produces": [
  9763. "application/json"
  9764. ],
  9765. "tags": [
  9766. "user"
  9767. ],
  9768. "summary": "Get list of all existing stopwatches",
  9769. "operationId": "userGetStopWatches",
  9770. "parameters": [
  9771. {
  9772. "type": "integer",
  9773. "description": "page number of results to return (1-based)",
  9774. "name": "page",
  9775. "in": "query"
  9776. },
  9777. {
  9778. "type": "integer",
  9779. "description": "page size of results",
  9780. "name": "limit",
  9781. "in": "query"
  9782. }
  9783. ],
  9784. "responses": {
  9785. "200": {
  9786. "$ref": "#/responses/StopWatchList"
  9787. }
  9788. }
  9789. }
  9790. },
  9791. "/user/subscriptions": {
  9792. "get": {
  9793. "produces": [
  9794. "application/json"
  9795. ],
  9796. "tags": [
  9797. "user"
  9798. ],
  9799. "summary": "List repositories watched by the authenticated user",
  9800. "operationId": "userCurrentListSubscriptions",
  9801. "parameters": [
  9802. {
  9803. "type": "integer",
  9804. "description": "page number of results to return (1-based)",
  9805. "name": "page",
  9806. "in": "query"
  9807. },
  9808. {
  9809. "type": "integer",
  9810. "description": "page size of results",
  9811. "name": "limit",
  9812. "in": "query"
  9813. }
  9814. ],
  9815. "responses": {
  9816. "200": {
  9817. "$ref": "#/responses/RepositoryList"
  9818. }
  9819. }
  9820. }
  9821. },
  9822. "/user/teams": {
  9823. "get": {
  9824. "produces": [
  9825. "application/json"
  9826. ],
  9827. "tags": [
  9828. "user"
  9829. ],
  9830. "summary": "List all the teams a user belongs to",
  9831. "operationId": "userListTeams",
  9832. "parameters": [
  9833. {
  9834. "type": "integer",
  9835. "description": "page number of results to return (1-based)",
  9836. "name": "page",
  9837. "in": "query"
  9838. },
  9839. {
  9840. "type": "integer",
  9841. "description": "page size of results",
  9842. "name": "limit",
  9843. "in": "query"
  9844. }
  9845. ],
  9846. "responses": {
  9847. "200": {
  9848. "$ref": "#/responses/TeamList"
  9849. }
  9850. }
  9851. }
  9852. },
  9853. "/user/times": {
  9854. "get": {
  9855. "produces": [
  9856. "application/json"
  9857. ],
  9858. "tags": [
  9859. "user"
  9860. ],
  9861. "summary": "List the current user's tracked times",
  9862. "operationId": "userCurrentTrackedTimes",
  9863. "parameters": [
  9864. {
  9865. "type": "string",
  9866. "format": "date-time",
  9867. "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format",
  9868. "name": "since",
  9869. "in": "query"
  9870. },
  9871. {
  9872. "type": "string",
  9873. "format": "date-time",
  9874. "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format",
  9875. "name": "before",
  9876. "in": "query"
  9877. }
  9878. ],
  9879. "responses": {
  9880. "200": {
  9881. "$ref": "#/responses/TrackedTimeList"
  9882. }
  9883. }
  9884. }
  9885. },
  9886. "/users/search": {
  9887. "get": {
  9888. "produces": [
  9889. "application/json"
  9890. ],
  9891. "tags": [
  9892. "user"
  9893. ],
  9894. "summary": "Search for users",
  9895. "operationId": "userSearch",
  9896. "parameters": [
  9897. {
  9898. "type": "string",
  9899. "description": "keyword",
  9900. "name": "q",
  9901. "in": "query"
  9902. },
  9903. {
  9904. "type": "integer",
  9905. "format": "int64",
  9906. "description": "ID of the user to search for",
  9907. "name": "uid",
  9908. "in": "query"
  9909. },
  9910. {
  9911. "type": "integer",
  9912. "description": "page number of results to return (1-based)",
  9913. "name": "page",
  9914. "in": "query"
  9915. },
  9916. {
  9917. "type": "integer",
  9918. "description": "page size of results",
  9919. "name": "limit",
  9920. "in": "query"
  9921. }
  9922. ],
  9923. "responses": {
  9924. "200": {
  9925. "description": "SearchResults of a successful search",
  9926. "schema": {
  9927. "type": "object",
  9928. "properties": {
  9929. "data": {
  9930. "type": "array",
  9931. "items": {
  9932. "$ref": "#/definitions/User"
  9933. }
  9934. },
  9935. "ok": {
  9936. "type": "boolean"
  9937. }
  9938. }
  9939. }
  9940. }
  9941. }
  9942. }
  9943. },
  9944. "/users/{follower}/following/{followee}": {
  9945. "get": {
  9946. "tags": [
  9947. "user"
  9948. ],
  9949. "summary": "Check if one user is following another user",
  9950. "operationId": "userCheckFollowing",
  9951. "parameters": [
  9952. {
  9953. "type": "string",
  9954. "description": "username of following user",
  9955. "name": "follower",
  9956. "in": "path",
  9957. "required": true
  9958. },
  9959. {
  9960. "type": "string",
  9961. "description": "username of followed user",
  9962. "name": "followee",
  9963. "in": "path",
  9964. "required": true
  9965. }
  9966. ],
  9967. "responses": {
  9968. "204": {
  9969. "$ref": "#/responses/empty"
  9970. },
  9971. "404": {
  9972. "$ref": "#/responses/notFound"
  9973. }
  9974. }
  9975. }
  9976. },
  9977. "/users/{username}": {
  9978. "get": {
  9979. "produces": [
  9980. "application/json"
  9981. ],
  9982. "tags": [
  9983. "user"
  9984. ],
  9985. "summary": "Get a user",
  9986. "operationId": "userGet",
  9987. "parameters": [
  9988. {
  9989. "type": "string",
  9990. "description": "username of user to get",
  9991. "name": "username",
  9992. "in": "path",
  9993. "required": true
  9994. }
  9995. ],
  9996. "responses": {
  9997. "200": {
  9998. "$ref": "#/responses/User"
  9999. },
  10000. "404": {
  10001. "$ref": "#/responses/notFound"
  10002. }
  10003. }
  10004. }
  10005. },
  10006. "/users/{username}/followers": {
  10007. "get": {
  10008. "produces": [
  10009. "application/json"
  10010. ],
  10011. "tags": [
  10012. "user"
  10013. ],
  10014. "summary": "List the given user's followers",
  10015. "operationId": "userListFollowers",
  10016. "parameters": [
  10017. {
  10018. "type": "string",
  10019. "description": "username of user",
  10020. "name": "username",
  10021. "in": "path",
  10022. "required": true
  10023. },
  10024. {
  10025. "type": "integer",
  10026. "description": "page number of results to return (1-based)",
  10027. "name": "page",
  10028. "in": "query"
  10029. },
  10030. {
  10031. "type": "integer",
  10032. "description": "page size of results",
  10033. "name": "limit",
  10034. "in": "query"
  10035. }
  10036. ],
  10037. "responses": {
  10038. "200": {
  10039. "$ref": "#/responses/UserList"
  10040. }
  10041. }
  10042. }
  10043. },
  10044. "/users/{username}/following": {
  10045. "get": {
  10046. "produces": [
  10047. "application/json"
  10048. ],
  10049. "tags": [
  10050. "user"
  10051. ],
  10052. "summary": "List the users that the given user is following",
  10053. "operationId": "userListFollowing",
  10054. "parameters": [
  10055. {
  10056. "type": "string",
  10057. "description": "username of user",
  10058. "name": "username",
  10059. "in": "path",
  10060. "required": true
  10061. },
  10062. {
  10063. "type": "integer",
  10064. "description": "page number of results to return (1-based)",
  10065. "name": "page",
  10066. "in": "query"
  10067. },
  10068. {
  10069. "type": "integer",
  10070. "description": "page size of results",
  10071. "name": "limit",
  10072. "in": "query"
  10073. }
  10074. ],
  10075. "responses": {
  10076. "200": {
  10077. "$ref": "#/responses/UserList"
  10078. }
  10079. }
  10080. }
  10081. },
  10082. "/users/{username}/gpg_keys": {
  10083. "get": {
  10084. "produces": [
  10085. "application/json"
  10086. ],
  10087. "tags": [
  10088. "user"
  10089. ],
  10090. "summary": "List the given user's GPG keys",
  10091. "operationId": "userListGPGKeys",
  10092. "parameters": [
  10093. {
  10094. "type": "string",
  10095. "description": "username of user",
  10096. "name": "username",
  10097. "in": "path",
  10098. "required": true
  10099. },
  10100. {
  10101. "type": "integer",
  10102. "description": "page number of results to return (1-based)",
  10103. "name": "page",
  10104. "in": "query"
  10105. },
  10106. {
  10107. "type": "integer",
  10108. "description": "page size of results",
  10109. "name": "limit",
  10110. "in": "query"
  10111. }
  10112. ],
  10113. "responses": {
  10114. "200": {
  10115. "$ref": "#/responses/GPGKeyList"
  10116. }
  10117. }
  10118. }
  10119. },
  10120. "/users/{username}/heatmap": {
  10121. "get": {
  10122. "produces": [
  10123. "application/json"
  10124. ],
  10125. "tags": [
  10126. "user"
  10127. ],
  10128. "summary": "Get a user's heatmap",
  10129. "operationId": "userGetHeatmapData",
  10130. "parameters": [
  10131. {
  10132. "type": "string",
  10133. "description": "username of user to get",
  10134. "name": "username",
  10135. "in": "path",
  10136. "required": true
  10137. }
  10138. ],
  10139. "responses": {
  10140. "200": {
  10141. "$ref": "#/responses/UserHeatmapData"
  10142. },
  10143. "404": {
  10144. "$ref": "#/responses/notFound"
  10145. }
  10146. }
  10147. }
  10148. },
  10149. "/users/{username}/keys": {
  10150. "get": {
  10151. "produces": [
  10152. "application/json"
  10153. ],
  10154. "tags": [
  10155. "user"
  10156. ],
  10157. "summary": "List the given user's public keys",
  10158. "operationId": "userListKeys",
  10159. "parameters": [
  10160. {
  10161. "type": "string",
  10162. "description": "username of user",
  10163. "name": "username",
  10164. "in": "path",
  10165. "required": true
  10166. },
  10167. {
  10168. "type": "string",
  10169. "description": "fingerprint of the key",
  10170. "name": "fingerprint",
  10171. "in": "query"
  10172. },
  10173. {
  10174. "type": "integer",
  10175. "description": "page number of results to return (1-based)",
  10176. "name": "page",
  10177. "in": "query"
  10178. },
  10179. {
  10180. "type": "integer",
  10181. "description": "page size of results",
  10182. "name": "limit",
  10183. "in": "query"
  10184. }
  10185. ],
  10186. "responses": {
  10187. "200": {
  10188. "$ref": "#/responses/PublicKeyList"
  10189. }
  10190. }
  10191. }
  10192. },
  10193. "/users/{username}/orgs": {
  10194. "get": {
  10195. "produces": [
  10196. "application/json"
  10197. ],
  10198. "tags": [
  10199. "organization"
  10200. ],
  10201. "summary": "List a user's organizations",
  10202. "operationId": "orgListUserOrgs",
  10203. "parameters": [
  10204. {
  10205. "type": "string",
  10206. "description": "username of user",
  10207. "name": "username",
  10208. "in": "path",
  10209. "required": true
  10210. },
  10211. {
  10212. "type": "integer",
  10213. "description": "page number of results to return (1-based)",
  10214. "name": "page",
  10215. "in": "query"
  10216. },
  10217. {
  10218. "type": "integer",
  10219. "description": "page size of results",
  10220. "name": "limit",
  10221. "in": "query"
  10222. }
  10223. ],
  10224. "responses": {
  10225. "200": {
  10226. "$ref": "#/responses/OrganizationList"
  10227. }
  10228. }
  10229. }
  10230. },
  10231. "/users/{username}/repos": {
  10232. "get": {
  10233. "produces": [
  10234. "application/json"
  10235. ],
  10236. "tags": [
  10237. "user"
  10238. ],
  10239. "summary": "List the repos owned by the given user",
  10240. "operationId": "userListRepos",
  10241. "parameters": [
  10242. {
  10243. "type": "string",
  10244. "description": "username of user",
  10245. "name": "username",
  10246. "in": "path",
  10247. "required": true
  10248. },
  10249. {
  10250. "type": "integer",
  10251. "description": "page number of results to return (1-based)",
  10252. "name": "page",
  10253. "in": "query"
  10254. },
  10255. {
  10256. "type": "integer",
  10257. "description": "page size of results",
  10258. "name": "limit",
  10259. "in": "query"
  10260. }
  10261. ],
  10262. "responses": {
  10263. "200": {
  10264. "$ref": "#/responses/RepositoryList"
  10265. }
  10266. }
  10267. }
  10268. },
  10269. "/users/{username}/starred": {
  10270. "get": {
  10271. "produces": [
  10272. "application/json"
  10273. ],
  10274. "tags": [
  10275. "user"
  10276. ],
  10277. "summary": "The repos that the given user has starred",
  10278. "operationId": "userListStarred",
  10279. "parameters": [
  10280. {
  10281. "type": "string",
  10282. "description": "username of user",
  10283. "name": "username",
  10284. "in": "path",
  10285. "required": true
  10286. },
  10287. {
  10288. "type": "integer",
  10289. "description": "page number of results to return (1-based)",
  10290. "name": "page",
  10291. "in": "query"
  10292. },
  10293. {
  10294. "type": "integer",
  10295. "description": "page size of results",
  10296. "name": "limit",
  10297. "in": "query"
  10298. }
  10299. ],
  10300. "responses": {
  10301. "200": {
  10302. "$ref": "#/responses/RepositoryList"
  10303. }
  10304. }
  10305. }
  10306. },
  10307. "/users/{username}/subscriptions": {
  10308. "get": {
  10309. "produces": [
  10310. "application/json"
  10311. ],
  10312. "tags": [
  10313. "user"
  10314. ],
  10315. "summary": "List the repositories watched by a user",
  10316. "operationId": "userListSubscriptions",
  10317. "parameters": [
  10318. {
  10319. "type": "string",
  10320. "description": "username of the user",
  10321. "name": "username",
  10322. "in": "path",
  10323. "required": true
  10324. },
  10325. {
  10326. "type": "integer",
  10327. "description": "page number of results to return (1-based)",
  10328. "name": "page",
  10329. "in": "query"
  10330. },
  10331. {
  10332. "type": "integer",
  10333. "description": "page size of results",
  10334. "name": "limit",
  10335. "in": "query"
  10336. }
  10337. ],
  10338. "responses": {
  10339. "200": {
  10340. "$ref": "#/responses/RepositoryList"
  10341. }
  10342. }
  10343. }
  10344. },
  10345. "/users/{username}/tokens": {
  10346. "get": {
  10347. "produces": [
  10348. "application/json"
  10349. ],
  10350. "tags": [
  10351. "user"
  10352. ],
  10353. "summary": "List the authenticated user's access tokens",
  10354. "operationId": "userGetTokens",
  10355. "parameters": [
  10356. {
  10357. "type": "string",
  10358. "description": "username of user",
  10359. "name": "username",
  10360. "in": "path",
  10361. "required": true
  10362. },
  10363. {
  10364. "type": "integer",
  10365. "description": "page number of results to return (1-based)",
  10366. "name": "page",
  10367. "in": "query"
  10368. },
  10369. {
  10370. "type": "integer",
  10371. "description": "page size of results",
  10372. "name": "limit",
  10373. "in": "query"
  10374. }
  10375. ],
  10376. "responses": {
  10377. "200": {
  10378. "$ref": "#/responses/AccessTokenList"
  10379. }
  10380. }
  10381. },
  10382. "post": {
  10383. "consumes": [
  10384. "application/json"
  10385. ],
  10386. "produces": [
  10387. "application/json"
  10388. ],
  10389. "tags": [
  10390. "user"
  10391. ],
  10392. "summary": "Create an access token",
  10393. "operationId": "userCreateToken",
  10394. "parameters": [
  10395. {
  10396. "type": "string",
  10397. "x-go-name": "Name",
  10398. "description": "username of user",
  10399. "name": "username",
  10400. "in": "path",
  10401. "required": true
  10402. },
  10403. {
  10404. "name": "accessToken",
  10405. "in": "body",
  10406. "schema": {
  10407. "type": "object",
  10408. "required": [
  10409. "name"
  10410. ],
  10411. "properties": {
  10412. "name": {
  10413. "type": "string"
  10414. }
  10415. }
  10416. }
  10417. }
  10418. ],
  10419. "responses": {
  10420. "200": {
  10421. "$ref": "#/responses/AccessToken"
  10422. }
  10423. }
  10424. }
  10425. },
  10426. "/users/{username}/tokens/{token}": {
  10427. "delete": {
  10428. "produces": [
  10429. "application/json"
  10430. ],
  10431. "tags": [
  10432. "user"
  10433. ],
  10434. "summary": "delete an access token",
  10435. "operationId": "userDeleteAccessToken",
  10436. "parameters": [
  10437. {
  10438. "type": "string",
  10439. "description": "username of user",
  10440. "name": "username",
  10441. "in": "path",
  10442. "required": true
  10443. },
  10444. {
  10445. "type": "integer",
  10446. "format": "int64",
  10447. "description": "token to be deleted",
  10448. "name": "token",
  10449. "in": "path",
  10450. "required": true
  10451. }
  10452. ],
  10453. "responses": {
  10454. "204": {
  10455. "$ref": "#/responses/empty"
  10456. }
  10457. }
  10458. }
  10459. },
  10460. "/version": {
  10461. "get": {
  10462. "produces": [
  10463. "application/json"
  10464. ],
  10465. "tags": [
  10466. "miscellaneous"
  10467. ],
  10468. "summary": "Returns the version of the Gitea application",
  10469. "operationId": "getVersion",
  10470. "responses": {
  10471. "200": {
  10472. "$ref": "#/responses/ServerVersion"
  10473. }
  10474. }
  10475. }
  10476. }
  10477. },
  10478. "definitions": {
  10479. "APIError": {
  10480. "description": "APIError is an api error with a message",
  10481. "type": "object",
  10482. "properties": {
  10483. "message": {
  10484. "type": "string",
  10485. "x-go-name": "Message"
  10486. },
  10487. "url": {
  10488. "type": "string",
  10489. "x-go-name": "URL"
  10490. }
  10491. },
  10492. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10493. },
  10494. "AccessToken": {
  10495. "type": "object",
  10496. "title": "AccessToken represents an API access token.",
  10497. "properties": {
  10498. "id": {
  10499. "type": "integer",
  10500. "format": "int64",
  10501. "x-go-name": "ID"
  10502. },
  10503. "name": {
  10504. "type": "string",
  10505. "x-go-name": "Name"
  10506. },
  10507. "sha1": {
  10508. "type": "string",
  10509. "x-go-name": "Token"
  10510. },
  10511. "token_last_eight": {
  10512. "type": "string",
  10513. "x-go-name": "TokenLastEight"
  10514. }
  10515. },
  10516. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10517. },
  10518. "AddCollaboratorOption": {
  10519. "description": "AddCollaboratorOption options when adding a user as a collaborator of a repository",
  10520. "type": "object",
  10521. "properties": {
  10522. "permission": {
  10523. "type": "string",
  10524. "x-go-name": "Permission"
  10525. }
  10526. },
  10527. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10528. },
  10529. "AddTimeOption": {
  10530. "description": "AddTimeOption options for adding time to an issue",
  10531. "type": "object",
  10532. "required": [
  10533. "time"
  10534. ],
  10535. "properties": {
  10536. "created": {
  10537. "type": "string",
  10538. "format": "date-time",
  10539. "x-go-name": "Created"
  10540. },
  10541. "time": {
  10542. "description": "time in seconds",
  10543. "type": "integer",
  10544. "format": "int64",
  10545. "x-go-name": "Time"
  10546. },
  10547. "user_name": {
  10548. "description": "User who spent the time (optional)",
  10549. "type": "string",
  10550. "x-go-name": "User"
  10551. }
  10552. },
  10553. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10554. },
  10555. "AnnotatedTag": {
  10556. "description": "AnnotatedTag represents an annotated tag",
  10557. "type": "object",
  10558. "properties": {
  10559. "message": {
  10560. "type": "string",
  10561. "x-go-name": "Message"
  10562. },
  10563. "object": {
  10564. "$ref": "#/definitions/AnnotatedTagObject"
  10565. },
  10566. "sha": {
  10567. "type": "string",
  10568. "x-go-name": "SHA"
  10569. },
  10570. "tag": {
  10571. "type": "string",
  10572. "x-go-name": "Tag"
  10573. },
  10574. "tagger": {
  10575. "$ref": "#/definitions/CommitUser"
  10576. },
  10577. "url": {
  10578. "type": "string",
  10579. "x-go-name": "URL"
  10580. },
  10581. "verification": {
  10582. "$ref": "#/definitions/PayloadCommitVerification"
  10583. }
  10584. },
  10585. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10586. },
  10587. "AnnotatedTagObject": {
  10588. "description": "AnnotatedTagObject contains meta information of the tag object",
  10589. "type": "object",
  10590. "properties": {
  10591. "sha": {
  10592. "type": "string",
  10593. "x-go-name": "SHA"
  10594. },
  10595. "type": {
  10596. "type": "string",
  10597. "x-go-name": "Type"
  10598. },
  10599. "url": {
  10600. "type": "string",
  10601. "x-go-name": "URL"
  10602. }
  10603. },
  10604. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10605. },
  10606. "Attachment": {
  10607. "description": "Attachment a generic attachment",
  10608. "type": "object",
  10609. "properties": {
  10610. "browser_download_url": {
  10611. "type": "string",
  10612. "x-go-name": "DownloadURL"
  10613. },
  10614. "created_at": {
  10615. "type": "string",
  10616. "format": "date-time",
  10617. "x-go-name": "Created"
  10618. },
  10619. "download_count": {
  10620. "type": "integer",
  10621. "format": "int64",
  10622. "x-go-name": "DownloadCount"
  10623. },
  10624. "id": {
  10625. "type": "integer",
  10626. "format": "int64",
  10627. "x-go-name": "ID"
  10628. },
  10629. "name": {
  10630. "type": "string",
  10631. "x-go-name": "Name"
  10632. },
  10633. "size": {
  10634. "type": "integer",
  10635. "format": "int64",
  10636. "x-go-name": "Size"
  10637. },
  10638. "uuid": {
  10639. "type": "string",
  10640. "x-go-name": "UUID"
  10641. }
  10642. },
  10643. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10644. },
  10645. "Branch": {
  10646. "description": "Branch represents a repository branch",
  10647. "type": "object",
  10648. "properties": {
  10649. "commit": {
  10650. "$ref": "#/definitions/PayloadCommit"
  10651. },
  10652. "effective_branch_protection_name": {
  10653. "type": "string",
  10654. "x-go-name": "EffectiveBranchProtectionName"
  10655. },
  10656. "enable_status_check": {
  10657. "type": "boolean",
  10658. "x-go-name": "EnableStatusCheck"
  10659. },
  10660. "name": {
  10661. "type": "string",
  10662. "x-go-name": "Name"
  10663. },
  10664. "protected": {
  10665. "type": "boolean",
  10666. "x-go-name": "Protected"
  10667. },
  10668. "required_approvals": {
  10669. "type": "integer",
  10670. "format": "int64",
  10671. "x-go-name": "RequiredApprovals"
  10672. },
  10673. "status_check_contexts": {
  10674. "type": "array",
  10675. "items": {
  10676. "type": "string"
  10677. },
  10678. "x-go-name": "StatusCheckContexts"
  10679. },
  10680. "user_can_merge": {
  10681. "type": "boolean",
  10682. "x-go-name": "UserCanMerge"
  10683. },
  10684. "user_can_push": {
  10685. "type": "boolean",
  10686. "x-go-name": "UserCanPush"
  10687. }
  10688. },
  10689. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10690. },
  10691. "BranchProtection": {
  10692. "description": "BranchProtection represents a branch protection for a repository",
  10693. "type": "object",
  10694. "properties": {
  10695. "approvals_whitelist_teams": {
  10696. "type": "array",
  10697. "items": {
  10698. "type": "string"
  10699. },
  10700. "x-go-name": "ApprovalsWhitelistTeams"
  10701. },
  10702. "approvals_whitelist_username": {
  10703. "type": "array",
  10704. "items": {
  10705. "type": "string"
  10706. },
  10707. "x-go-name": "ApprovalsWhitelistUsernames"
  10708. },
  10709. "block_on_outdated_branch": {
  10710. "type": "boolean",
  10711. "x-go-name": "BlockOnOutdatedBranch"
  10712. },
  10713. "block_on_rejected_reviews": {
  10714. "type": "boolean",
  10715. "x-go-name": "BlockOnRejectedReviews"
  10716. },
  10717. "branch_name": {
  10718. "type": "string",
  10719. "x-go-name": "BranchName"
  10720. },
  10721. "created_at": {
  10722. "type": "string",
  10723. "format": "date-time",
  10724. "x-go-name": "Created"
  10725. },
  10726. "dismiss_stale_approvals": {
  10727. "type": "boolean",
  10728. "x-go-name": "DismissStaleApprovals"
  10729. },
  10730. "enable_approvals_whitelist": {
  10731. "type": "boolean",
  10732. "x-go-name": "EnableApprovalsWhitelist"
  10733. },
  10734. "enable_merge_whitelist": {
  10735. "type": "boolean",
  10736. "x-go-name": "EnableMergeWhitelist"
  10737. },
  10738. "enable_push": {
  10739. "type": "boolean",
  10740. "x-go-name": "EnablePush"
  10741. },
  10742. "enable_push_whitelist": {
  10743. "type": "boolean",
  10744. "x-go-name": "EnablePushWhitelist"
  10745. },
  10746. "enable_status_check": {
  10747. "type": "boolean",
  10748. "x-go-name": "EnableStatusCheck"
  10749. },
  10750. "merge_whitelist_teams": {
  10751. "type": "array",
  10752. "items": {
  10753. "type": "string"
  10754. },
  10755. "x-go-name": "MergeWhitelistTeams"
  10756. },
  10757. "merge_whitelist_usernames": {
  10758. "type": "array",
  10759. "items": {
  10760. "type": "string"
  10761. },
  10762. "x-go-name": "MergeWhitelistUsernames"
  10763. },
  10764. "protected_file_patterns": {
  10765. "type": "string",
  10766. "x-go-name": "ProtectedFilePatterns"
  10767. },
  10768. "push_whitelist_deploy_keys": {
  10769. "type": "boolean",
  10770. "x-go-name": "PushWhitelistDeployKeys"
  10771. },
  10772. "push_whitelist_teams": {
  10773. "type": "array",
  10774. "items": {
  10775. "type": "string"
  10776. },
  10777. "x-go-name": "PushWhitelistTeams"
  10778. },
  10779. "push_whitelist_usernames": {
  10780. "type": "array",
  10781. "items": {
  10782. "type": "string"
  10783. },
  10784. "x-go-name": "PushWhitelistUsernames"
  10785. },
  10786. "require_signed_commits": {
  10787. "type": "boolean",
  10788. "x-go-name": "RequireSignedCommits"
  10789. },
  10790. "required_approvals": {
  10791. "type": "integer",
  10792. "format": "int64",
  10793. "x-go-name": "RequiredApprovals"
  10794. },
  10795. "status_check_contexts": {
  10796. "type": "array",
  10797. "items": {
  10798. "type": "string"
  10799. },
  10800. "x-go-name": "StatusCheckContexts"
  10801. },
  10802. "updated_at": {
  10803. "type": "string",
  10804. "format": "date-time",
  10805. "x-go-name": "Updated"
  10806. }
  10807. },
  10808. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10809. },
  10810. "Comment": {
  10811. "description": "Comment represents a comment on a commit or issue",
  10812. "type": "object",
  10813. "properties": {
  10814. "body": {
  10815. "type": "string",
  10816. "x-go-name": "Body"
  10817. },
  10818. "created_at": {
  10819. "type": "string",
  10820. "format": "date-time",
  10821. "x-go-name": "Created"
  10822. },
  10823. "html_url": {
  10824. "type": "string",
  10825. "x-go-name": "HTMLURL"
  10826. },
  10827. "id": {
  10828. "type": "integer",
  10829. "format": "int64",
  10830. "x-go-name": "ID"
  10831. },
  10832. "issue_url": {
  10833. "type": "string",
  10834. "x-go-name": "IssueURL"
  10835. },
  10836. "original_author": {
  10837. "type": "string",
  10838. "x-go-name": "OriginalAuthor"
  10839. },
  10840. "original_author_id": {
  10841. "type": "integer",
  10842. "format": "int64",
  10843. "x-go-name": "OriginalAuthorID"
  10844. },
  10845. "pull_request_url": {
  10846. "type": "string",
  10847. "x-go-name": "PRURL"
  10848. },
  10849. "updated_at": {
  10850. "type": "string",
  10851. "format": "date-time",
  10852. "x-go-name": "Updated"
  10853. },
  10854. "user": {
  10855. "$ref": "#/definitions/User"
  10856. }
  10857. },
  10858. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10859. },
  10860. "Commit": {
  10861. "type": "object",
  10862. "title": "Commit contains information generated from a Git commit.",
  10863. "properties": {
  10864. "author": {
  10865. "$ref": "#/definitions/User"
  10866. },
  10867. "commit": {
  10868. "$ref": "#/definitions/RepoCommit"
  10869. },
  10870. "committer": {
  10871. "$ref": "#/definitions/User"
  10872. },
  10873. "html_url": {
  10874. "type": "string",
  10875. "x-go-name": "HTMLURL"
  10876. },
  10877. "parents": {
  10878. "type": "array",
  10879. "items": {
  10880. "$ref": "#/definitions/CommitMeta"
  10881. },
  10882. "x-go-name": "Parents"
  10883. },
  10884. "sha": {
  10885. "type": "string",
  10886. "x-go-name": "SHA"
  10887. },
  10888. "url": {
  10889. "type": "string",
  10890. "x-go-name": "URL"
  10891. }
  10892. },
  10893. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10894. },
  10895. "CommitDateOptions": {
  10896. "description": "CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE",
  10897. "type": "object",
  10898. "properties": {
  10899. "author": {
  10900. "type": "string",
  10901. "format": "date-time",
  10902. "x-go-name": "Author"
  10903. },
  10904. "committer": {
  10905. "type": "string",
  10906. "format": "date-time",
  10907. "x-go-name": "Committer"
  10908. }
  10909. },
  10910. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10911. },
  10912. "CommitMeta": {
  10913. "type": "object",
  10914. "title": "CommitMeta contains meta information of a commit in terms of API.",
  10915. "properties": {
  10916. "sha": {
  10917. "type": "string",
  10918. "x-go-name": "SHA"
  10919. },
  10920. "url": {
  10921. "type": "string",
  10922. "x-go-name": "URL"
  10923. }
  10924. },
  10925. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10926. },
  10927. "CommitUser": {
  10928. "type": "object",
  10929. "title": "CommitUser contains information of a user in the context of a commit.",
  10930. "properties": {
  10931. "date": {
  10932. "type": "string",
  10933. "x-go-name": "Date"
  10934. },
  10935. "email": {
  10936. "type": "string",
  10937. "format": "email",
  10938. "x-go-name": "Email"
  10939. },
  10940. "name": {
  10941. "type": "string",
  10942. "x-go-name": "Name"
  10943. }
  10944. },
  10945. "x-go-package": "code.gitea.io/gitea/modules/structs"
  10946. },
  10947. "ContentsResponse": {
  10948. "description": "ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content",
  10949. "type": "object",
  10950. "properties": {
  10951. "_links": {
  10952. "$ref": "#/definitions/FileLinksResponse"
  10953. },
  10954. "content": {
  10955. "description": "`content` is populated when `type` is `file`, otherwise null",
  10956. "type": "string",
  10957. "x-go-name": "Content"
  10958. },
  10959. "download_url": {
  10960. "type": "string",
  10961. "x-go-name": "DownloadURL"
  10962. },
  10963. "encoding": {
  10964. "description": "`encoding` is populated when `type` is `file`, otherwise null",
  10965. "type": "string",
  10966. "x-go-name": "Encoding"
  10967. },
  10968. "git_url": {
  10969. "type": "string",
  10970. "x-go-name": "GitURL"
  10971. },
  10972. "html_url": {
  10973. "type": "string",
  10974. "x-go-name": "HTMLURL"
  10975. },
  10976. "name": {
  10977. "type": "string",
  10978. "x-go-name": "Name"
  10979. },
  10980. "path": {
  10981. "type": "string",
  10982. "x-go-name": "Path"
  10983. },
  10984. "sha": {
  10985. "type": "string",
  10986. "x-go-name": "SHA"
  10987. },
  10988. "size": {
  10989. "type": "integer",
  10990. "format": "int64",
  10991. "x-go-name": "Size"
  10992. },
  10993. "submodule_git_url": {
  10994. "description": "`submodule_git_url` is populated when `type` is `submodule`, otherwise null",
  10995. "type": "string",
  10996. "x-go-name": "SubmoduleGitURL"
  10997. },
  10998. "target": {
  10999. "description": "`target` is populated when `type` is `symlink`, otherwise null",
  11000. "type": "string",
  11001. "x-go-name": "Target"
  11002. },
  11003. "type": {
  11004. "description": "`type` will be `file`, `dir`, `symlink`, or `submodule`",
  11005. "type": "string",
  11006. "x-go-name": "Type"
  11007. },
  11008. "url": {
  11009. "type": "string",
  11010. "x-go-name": "URL"
  11011. }
  11012. },
  11013. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11014. },
  11015. "CreateBranchProtectionOption": {
  11016. "description": "CreateBranchProtectionOption options for creating a branch protection",
  11017. "type": "object",
  11018. "properties": {
  11019. "approvals_whitelist_teams": {
  11020. "type": "array",
  11021. "items": {
  11022. "type": "string"
  11023. },
  11024. "x-go-name": "ApprovalsWhitelistTeams"
  11025. },
  11026. "approvals_whitelist_username": {
  11027. "type": "array",
  11028. "items": {
  11029. "type": "string"
  11030. },
  11031. "x-go-name": "ApprovalsWhitelistUsernames"
  11032. },
  11033. "block_on_outdated_branch": {
  11034. "type": "boolean",
  11035. "x-go-name": "BlockOnOutdatedBranch"
  11036. },
  11037. "block_on_rejected_reviews": {
  11038. "type": "boolean",
  11039. "x-go-name": "BlockOnRejectedReviews"
  11040. },
  11041. "branch_name": {
  11042. "type": "string",
  11043. "x-go-name": "BranchName"
  11044. },
  11045. "dismiss_stale_approvals": {
  11046. "type": "boolean",
  11047. "x-go-name": "DismissStaleApprovals"
  11048. },
  11049. "enable_approvals_whitelist": {
  11050. "type": "boolean",
  11051. "x-go-name": "EnableApprovalsWhitelist"
  11052. },
  11053. "enable_merge_whitelist": {
  11054. "type": "boolean",
  11055. "x-go-name": "EnableMergeWhitelist"
  11056. },
  11057. "enable_push": {
  11058. "type": "boolean",
  11059. "x-go-name": "EnablePush"
  11060. },
  11061. "enable_push_whitelist": {
  11062. "type": "boolean",
  11063. "x-go-name": "EnablePushWhitelist"
  11064. },
  11065. "enable_status_check": {
  11066. "type": "boolean",
  11067. "x-go-name": "EnableStatusCheck"
  11068. },
  11069. "merge_whitelist_teams": {
  11070. "type": "array",
  11071. "items": {
  11072. "type": "string"
  11073. },
  11074. "x-go-name": "MergeWhitelistTeams"
  11075. },
  11076. "merge_whitelist_usernames": {
  11077. "type": "array",
  11078. "items": {
  11079. "type": "string"
  11080. },
  11081. "x-go-name": "MergeWhitelistUsernames"
  11082. },
  11083. "protected_file_patterns": {
  11084. "type": "string",
  11085. "x-go-name": "ProtectedFilePatterns"
  11086. },
  11087. "push_whitelist_deploy_keys": {
  11088. "type": "boolean",
  11089. "x-go-name": "PushWhitelistDeployKeys"
  11090. },
  11091. "push_whitelist_teams": {
  11092. "type": "array",
  11093. "items": {
  11094. "type": "string"
  11095. },
  11096. "x-go-name": "PushWhitelistTeams"
  11097. },
  11098. "push_whitelist_usernames": {
  11099. "type": "array",
  11100. "items": {
  11101. "type": "string"
  11102. },
  11103. "x-go-name": "PushWhitelistUsernames"
  11104. },
  11105. "require_signed_commits": {
  11106. "type": "boolean",
  11107. "x-go-name": "RequireSignedCommits"
  11108. },
  11109. "required_approvals": {
  11110. "type": "integer",
  11111. "format": "int64",
  11112. "x-go-name": "RequiredApprovals"
  11113. },
  11114. "status_check_contexts": {
  11115. "type": "array",
  11116. "items": {
  11117. "type": "string"
  11118. },
  11119. "x-go-name": "StatusCheckContexts"
  11120. }
  11121. },
  11122. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11123. },
  11124. "CreateBranchRepoOption": {
  11125. "description": "CreateBranchRepoOption options when creating a branch in a repository",
  11126. "type": "object",
  11127. "required": [
  11128. "new_branch_name"
  11129. ],
  11130. "properties": {
  11131. "new_branch_name": {
  11132. "description": "Name of the branch to create",
  11133. "type": "string",
  11134. "uniqueItems": true,
  11135. "x-go-name": "BranchName"
  11136. },
  11137. "old_branch_name": {
  11138. "description": "Name of the old branch to create from",
  11139. "type": "string",
  11140. "uniqueItems": true,
  11141. "x-go-name": "OldBranchName"
  11142. }
  11143. },
  11144. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11145. },
  11146. "CreateEmailOption": {
  11147. "description": "CreateEmailOption options when creating email addresses",
  11148. "type": "object",
  11149. "properties": {
  11150. "emails": {
  11151. "description": "email addresses to add",
  11152. "type": "array",
  11153. "items": {
  11154. "type": "string"
  11155. },
  11156. "x-go-name": "Emails"
  11157. }
  11158. },
  11159. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11160. },
  11161. "CreateFileOptions": {
  11162. "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)",
  11163. "type": "object",
  11164. "required": [
  11165. "content"
  11166. ],
  11167. "properties": {
  11168. "author": {
  11169. "$ref": "#/definitions/Identity"
  11170. },
  11171. "branch": {
  11172. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  11173. "type": "string",
  11174. "x-go-name": "BranchName"
  11175. },
  11176. "committer": {
  11177. "$ref": "#/definitions/Identity"
  11178. },
  11179. "content": {
  11180. "description": "content must be base64 encoded",
  11181. "type": "string",
  11182. "x-go-name": "Content"
  11183. },
  11184. "dates": {
  11185. "$ref": "#/definitions/CommitDateOptions"
  11186. },
  11187. "message": {
  11188. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  11189. "type": "string",
  11190. "x-go-name": "Message"
  11191. },
  11192. "new_branch": {
  11193. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  11194. "type": "string",
  11195. "x-go-name": "NewBranchName"
  11196. }
  11197. },
  11198. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11199. },
  11200. "CreateForkOption": {
  11201. "description": "CreateForkOption options for creating a fork",
  11202. "type": "object",
  11203. "properties": {
  11204. "organization": {
  11205. "description": "organization name, if forking into an organization",
  11206. "type": "string",
  11207. "x-go-name": "Organization"
  11208. }
  11209. },
  11210. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11211. },
  11212. "CreateGPGKeyOption": {
  11213. "description": "CreateGPGKeyOption options create user GPG key",
  11214. "type": "object",
  11215. "required": [
  11216. "armored_public_key"
  11217. ],
  11218. "properties": {
  11219. "armored_public_key": {
  11220. "description": "An armored GPG key to add",
  11221. "type": "string",
  11222. "uniqueItems": true,
  11223. "x-go-name": "ArmoredKey"
  11224. }
  11225. },
  11226. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11227. },
  11228. "CreateHookOption": {
  11229. "description": "CreateHookOption options when create a hook",
  11230. "type": "object",
  11231. "required": [
  11232. "type",
  11233. "config"
  11234. ],
  11235. "properties": {
  11236. "active": {
  11237. "type": "boolean",
  11238. "default": false,
  11239. "x-go-name": "Active"
  11240. },
  11241. "branch_filter": {
  11242. "type": "string",
  11243. "x-go-name": "BranchFilter"
  11244. },
  11245. "config": {
  11246. "$ref": "#/definitions/CreateHookOptionConfig"
  11247. },
  11248. "events": {
  11249. "type": "array",
  11250. "items": {
  11251. "type": "string"
  11252. },
  11253. "x-go-name": "Events"
  11254. },
  11255. "type": {
  11256. "type": "string",
  11257. "enum": [
  11258. "dingtalk",
  11259. "discord",
  11260. "gitea",
  11261. "gogs",
  11262. "msteams",
  11263. "slack",
  11264. "telegram",
  11265. "feishu"
  11266. ],
  11267. "x-go-name": "Type"
  11268. }
  11269. },
  11270. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11271. },
  11272. "CreateHookOptionConfig": {
  11273. "description": "CreateHookOptionConfig has all config options in it\nrequired are \"content_type\" and \"url\" Required",
  11274. "type": "object",
  11275. "additionalProperties": {
  11276. "type": "string"
  11277. },
  11278. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11279. },
  11280. "CreateIssueCommentOption": {
  11281. "description": "CreateIssueCommentOption options for creating a comment on an issue",
  11282. "type": "object",
  11283. "required": [
  11284. "body"
  11285. ],
  11286. "properties": {
  11287. "body": {
  11288. "type": "string",
  11289. "x-go-name": "Body"
  11290. }
  11291. },
  11292. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11293. },
  11294. "CreateIssueOption": {
  11295. "description": "CreateIssueOption options to create one issue",
  11296. "type": "object",
  11297. "required": [
  11298. "title"
  11299. ],
  11300. "properties": {
  11301. "assignee": {
  11302. "description": "username of assignee",
  11303. "type": "string",
  11304. "x-go-name": "Assignee"
  11305. },
  11306. "assignees": {
  11307. "type": "array",
  11308. "items": {
  11309. "type": "string"
  11310. },
  11311. "x-go-name": "Assignees"
  11312. },
  11313. "body": {
  11314. "type": "string",
  11315. "x-go-name": "Body"
  11316. },
  11317. "closed": {
  11318. "type": "boolean",
  11319. "x-go-name": "Closed"
  11320. },
  11321. "due_date": {
  11322. "type": "string",
  11323. "format": "date-time",
  11324. "x-go-name": "Deadline"
  11325. },
  11326. "labels": {
  11327. "description": "list of label ids",
  11328. "type": "array",
  11329. "items": {
  11330. "type": "integer",
  11331. "format": "int64"
  11332. },
  11333. "x-go-name": "Labels"
  11334. },
  11335. "milestone": {
  11336. "description": "milestone id",
  11337. "type": "integer",
  11338. "format": "int64",
  11339. "x-go-name": "Milestone"
  11340. },
  11341. "title": {
  11342. "type": "string",
  11343. "x-go-name": "Title"
  11344. }
  11345. },
  11346. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11347. },
  11348. "CreateKeyOption": {
  11349. "description": "CreateKeyOption options when creating a key",
  11350. "type": "object",
  11351. "required": [
  11352. "title",
  11353. "key"
  11354. ],
  11355. "properties": {
  11356. "key": {
  11357. "description": "An armored SSH key to add",
  11358. "type": "string",
  11359. "uniqueItems": true,
  11360. "x-go-name": "Key"
  11361. },
  11362. "read_only": {
  11363. "description": "Describe if the key has only read access or read/write",
  11364. "type": "boolean",
  11365. "x-go-name": "ReadOnly"
  11366. },
  11367. "title": {
  11368. "description": "Title of the key to add",
  11369. "type": "string",
  11370. "uniqueItems": true,
  11371. "x-go-name": "Title"
  11372. }
  11373. },
  11374. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11375. },
  11376. "CreateLabelOption": {
  11377. "description": "CreateLabelOption options for creating a label",
  11378. "type": "object",
  11379. "required": [
  11380. "name",
  11381. "color"
  11382. ],
  11383. "properties": {
  11384. "color": {
  11385. "type": "string",
  11386. "x-go-name": "Color",
  11387. "example": "#00aabb"
  11388. },
  11389. "description": {
  11390. "type": "string",
  11391. "x-go-name": "Description"
  11392. },
  11393. "name": {
  11394. "type": "string",
  11395. "x-go-name": "Name"
  11396. }
  11397. },
  11398. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11399. },
  11400. "CreateMilestoneOption": {
  11401. "description": "CreateMilestoneOption options for creating a milestone",
  11402. "type": "object",
  11403. "properties": {
  11404. "description": {
  11405. "type": "string",
  11406. "x-go-name": "Description"
  11407. },
  11408. "due_on": {
  11409. "type": "string",
  11410. "format": "date-time",
  11411. "x-go-name": "Deadline"
  11412. },
  11413. "state": {
  11414. "type": "string",
  11415. "enum": [
  11416. "open",
  11417. "closed"
  11418. ],
  11419. "x-go-name": "State"
  11420. },
  11421. "title": {
  11422. "type": "string",
  11423. "x-go-name": "Title"
  11424. }
  11425. },
  11426. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11427. },
  11428. "CreateOAuth2ApplicationOptions": {
  11429. "description": "CreateOAuth2ApplicationOptions holds options to create an oauth2 application",
  11430. "type": "object",
  11431. "properties": {
  11432. "name": {
  11433. "type": "string",
  11434. "x-go-name": "Name"
  11435. },
  11436. "redirect_uris": {
  11437. "type": "array",
  11438. "items": {
  11439. "type": "string"
  11440. },
  11441. "x-go-name": "RedirectURIs"
  11442. }
  11443. },
  11444. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11445. },
  11446. "CreateOrgOption": {
  11447. "description": "CreateOrgOption options for creating an organization",
  11448. "type": "object",
  11449. "required": [
  11450. "username"
  11451. ],
  11452. "properties": {
  11453. "description": {
  11454. "type": "string",
  11455. "x-go-name": "Description"
  11456. },
  11457. "full_name": {
  11458. "type": "string",
  11459. "x-go-name": "FullName"
  11460. },
  11461. "location": {
  11462. "type": "string",
  11463. "x-go-name": "Location"
  11464. },
  11465. "repo_admin_change_team_access": {
  11466. "type": "boolean",
  11467. "x-go-name": "RepoAdminChangeTeamAccess"
  11468. },
  11469. "username": {
  11470. "type": "string",
  11471. "x-go-name": "UserName"
  11472. },
  11473. "visibility": {
  11474. "description": "possible values are `public` (default), `limited` or `private`",
  11475. "type": "string",
  11476. "enum": [
  11477. "public",
  11478. "limited",
  11479. "private"
  11480. ],
  11481. "x-go-name": "Visibility"
  11482. },
  11483. "website": {
  11484. "type": "string",
  11485. "x-go-name": "Website"
  11486. }
  11487. },
  11488. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11489. },
  11490. "CreatePullRequestOption": {
  11491. "description": "CreatePullRequestOption options when creating a pull request",
  11492. "type": "object",
  11493. "properties": {
  11494. "assignee": {
  11495. "type": "string",
  11496. "x-go-name": "Assignee"
  11497. },
  11498. "assignees": {
  11499. "type": "array",
  11500. "items": {
  11501. "type": "string"
  11502. },
  11503. "x-go-name": "Assignees"
  11504. },
  11505. "base": {
  11506. "type": "string",
  11507. "x-go-name": "Base"
  11508. },
  11509. "body": {
  11510. "type": "string",
  11511. "x-go-name": "Body"
  11512. },
  11513. "due_date": {
  11514. "type": "string",
  11515. "format": "date-time",
  11516. "x-go-name": "Deadline"
  11517. },
  11518. "head": {
  11519. "type": "string",
  11520. "x-go-name": "Head"
  11521. },
  11522. "labels": {
  11523. "type": "array",
  11524. "items": {
  11525. "type": "integer",
  11526. "format": "int64"
  11527. },
  11528. "x-go-name": "Labels"
  11529. },
  11530. "milestone": {
  11531. "type": "integer",
  11532. "format": "int64",
  11533. "x-go-name": "Milestone"
  11534. },
  11535. "title": {
  11536. "type": "string",
  11537. "x-go-name": "Title"
  11538. }
  11539. },
  11540. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11541. },
  11542. "CreatePullReviewComment": {
  11543. "description": "CreatePullReviewComment represent a review comment for creation api",
  11544. "type": "object",
  11545. "properties": {
  11546. "body": {
  11547. "type": "string",
  11548. "x-go-name": "Body"
  11549. },
  11550. "new_position": {
  11551. "description": "if comment to new file line or 0",
  11552. "type": "integer",
  11553. "format": "int64",
  11554. "x-go-name": "NewLineNum"
  11555. },
  11556. "old_position": {
  11557. "description": "if comment to old file line or 0",
  11558. "type": "integer",
  11559. "format": "int64",
  11560. "x-go-name": "OldLineNum"
  11561. },
  11562. "path": {
  11563. "description": "the tree path",
  11564. "type": "string",
  11565. "x-go-name": "Path"
  11566. }
  11567. },
  11568. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11569. },
  11570. "CreatePullReviewOptions": {
  11571. "description": "CreatePullReviewOptions are options to create a pull review",
  11572. "type": "object",
  11573. "properties": {
  11574. "body": {
  11575. "type": "string",
  11576. "x-go-name": "Body"
  11577. },
  11578. "comments": {
  11579. "type": "array",
  11580. "items": {
  11581. "$ref": "#/definitions/CreatePullReviewComment"
  11582. },
  11583. "x-go-name": "Comments"
  11584. },
  11585. "commit_id": {
  11586. "type": "string",
  11587. "x-go-name": "CommitID"
  11588. },
  11589. "event": {
  11590. "$ref": "#/definitions/ReviewStateType"
  11591. }
  11592. },
  11593. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11594. },
  11595. "CreateReleaseOption": {
  11596. "description": "CreateReleaseOption options when creating a release",
  11597. "type": "object",
  11598. "required": [
  11599. "tag_name"
  11600. ],
  11601. "properties": {
  11602. "body": {
  11603. "type": "string",
  11604. "x-go-name": "Note"
  11605. },
  11606. "draft": {
  11607. "type": "boolean",
  11608. "x-go-name": "IsDraft"
  11609. },
  11610. "name": {
  11611. "type": "string",
  11612. "x-go-name": "Title"
  11613. },
  11614. "prerelease": {
  11615. "type": "boolean",
  11616. "x-go-name": "IsPrerelease"
  11617. },
  11618. "tag_name": {
  11619. "type": "string",
  11620. "x-go-name": "TagName"
  11621. },
  11622. "target_commitish": {
  11623. "type": "string",
  11624. "x-go-name": "Target"
  11625. }
  11626. },
  11627. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11628. },
  11629. "CreateRepoOption": {
  11630. "description": "CreateRepoOption options when creating repository",
  11631. "type": "object",
  11632. "required": [
  11633. "name"
  11634. ],
  11635. "properties": {
  11636. "auto_init": {
  11637. "description": "Whether the repository should be auto-intialized?",
  11638. "type": "boolean",
  11639. "x-go-name": "AutoInit"
  11640. },
  11641. "default_branch": {
  11642. "description": "DefaultBranch of the repository (used when initializes and in template)",
  11643. "type": "string",
  11644. "x-go-name": "DefaultBranch"
  11645. },
  11646. "description": {
  11647. "description": "Description of the repository to create",
  11648. "type": "string",
  11649. "x-go-name": "Description"
  11650. },
  11651. "gitignores": {
  11652. "description": "Gitignores to use",
  11653. "type": "string",
  11654. "x-go-name": "Gitignores"
  11655. },
  11656. "issue_labels": {
  11657. "description": "Issue Label set to use",
  11658. "type": "string",
  11659. "x-go-name": "IssueLabels"
  11660. },
  11661. "license": {
  11662. "description": "License to use",
  11663. "type": "string",
  11664. "x-go-name": "License"
  11665. },
  11666. "name": {
  11667. "description": "Name of the repository to create",
  11668. "type": "string",
  11669. "uniqueItems": true,
  11670. "x-go-name": "Name"
  11671. },
  11672. "private": {
  11673. "description": "Whether the repository is private",
  11674. "type": "boolean",
  11675. "x-go-name": "Private"
  11676. },
  11677. "readme": {
  11678. "description": "Readme of the repository to create",
  11679. "type": "string",
  11680. "x-go-name": "Readme"
  11681. }
  11682. },
  11683. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11684. },
  11685. "CreateStatusOption": {
  11686. "description": "CreateStatusOption holds the information needed to create a new Status for a Commit",
  11687. "type": "object",
  11688. "properties": {
  11689. "context": {
  11690. "type": "string",
  11691. "x-go-name": "Context"
  11692. },
  11693. "description": {
  11694. "type": "string",
  11695. "x-go-name": "Description"
  11696. },
  11697. "state": {
  11698. "$ref": "#/definitions/StatusState"
  11699. },
  11700. "target_url": {
  11701. "type": "string",
  11702. "x-go-name": "TargetURL"
  11703. }
  11704. },
  11705. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11706. },
  11707. "CreateTeamOption": {
  11708. "description": "CreateTeamOption options for creating a team",
  11709. "type": "object",
  11710. "required": [
  11711. "name"
  11712. ],
  11713. "properties": {
  11714. "can_create_org_repo": {
  11715. "type": "boolean",
  11716. "x-go-name": "CanCreateOrgRepo"
  11717. },
  11718. "description": {
  11719. "type": "string",
  11720. "x-go-name": "Description"
  11721. },
  11722. "includes_all_repositories": {
  11723. "type": "boolean",
  11724. "x-go-name": "IncludesAllRepositories"
  11725. },
  11726. "name": {
  11727. "type": "string",
  11728. "x-go-name": "Name"
  11729. },
  11730. "permission": {
  11731. "type": "string",
  11732. "enum": [
  11733. "read",
  11734. "write",
  11735. "admin"
  11736. ],
  11737. "x-go-name": "Permission"
  11738. },
  11739. "units": {
  11740. "type": "array",
  11741. "items": {
  11742. "type": "string"
  11743. },
  11744. "x-go-name": "Units",
  11745. "example": [
  11746. "repo.code",
  11747. "repo.issues",
  11748. "repo.ext_issues",
  11749. "repo.wiki",
  11750. "repo.pulls",
  11751. "repo.releases",
  11752. "repo.ext_wiki"
  11753. ]
  11754. }
  11755. },
  11756. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11757. },
  11758. "CreateUserOption": {
  11759. "description": "CreateUserOption create user options",
  11760. "type": "object",
  11761. "required": [
  11762. "username",
  11763. "email",
  11764. "password"
  11765. ],
  11766. "properties": {
  11767. "email": {
  11768. "type": "string",
  11769. "format": "email",
  11770. "x-go-name": "Email"
  11771. },
  11772. "full_name": {
  11773. "type": "string",
  11774. "x-go-name": "FullName"
  11775. },
  11776. "login_name": {
  11777. "type": "string",
  11778. "x-go-name": "LoginName"
  11779. },
  11780. "must_change_password": {
  11781. "type": "boolean",
  11782. "x-go-name": "MustChangePassword"
  11783. },
  11784. "password": {
  11785. "type": "string",
  11786. "x-go-name": "Password"
  11787. },
  11788. "send_notify": {
  11789. "type": "boolean",
  11790. "x-go-name": "SendNotify"
  11791. },
  11792. "source_id": {
  11793. "type": "integer",
  11794. "format": "int64",
  11795. "x-go-name": "SourceID"
  11796. },
  11797. "username": {
  11798. "type": "string",
  11799. "x-go-name": "Username"
  11800. }
  11801. },
  11802. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11803. },
  11804. "DeleteEmailOption": {
  11805. "description": "DeleteEmailOption options when deleting email addresses",
  11806. "type": "object",
  11807. "properties": {
  11808. "emails": {
  11809. "description": "email addresses to delete",
  11810. "type": "array",
  11811. "items": {
  11812. "type": "string"
  11813. },
  11814. "x-go-name": "Emails"
  11815. }
  11816. },
  11817. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11818. },
  11819. "DeleteFileOptions": {
  11820. "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)",
  11821. "type": "object",
  11822. "required": [
  11823. "sha"
  11824. ],
  11825. "properties": {
  11826. "author": {
  11827. "$ref": "#/definitions/Identity"
  11828. },
  11829. "branch": {
  11830. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  11831. "type": "string",
  11832. "x-go-name": "BranchName"
  11833. },
  11834. "committer": {
  11835. "$ref": "#/definitions/Identity"
  11836. },
  11837. "dates": {
  11838. "$ref": "#/definitions/CommitDateOptions"
  11839. },
  11840. "message": {
  11841. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  11842. "type": "string",
  11843. "x-go-name": "Message"
  11844. },
  11845. "new_branch": {
  11846. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  11847. "type": "string",
  11848. "x-go-name": "NewBranchName"
  11849. },
  11850. "sha": {
  11851. "description": "sha is the SHA for the file that already exists",
  11852. "type": "string",
  11853. "x-go-name": "SHA"
  11854. }
  11855. },
  11856. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11857. },
  11858. "DeployKey": {
  11859. "description": "DeployKey a deploy key",
  11860. "type": "object",
  11861. "properties": {
  11862. "created_at": {
  11863. "type": "string",
  11864. "format": "date-time",
  11865. "x-go-name": "Created"
  11866. },
  11867. "fingerprint": {
  11868. "type": "string",
  11869. "x-go-name": "Fingerprint"
  11870. },
  11871. "id": {
  11872. "type": "integer",
  11873. "format": "int64",
  11874. "x-go-name": "ID"
  11875. },
  11876. "key": {
  11877. "type": "string",
  11878. "x-go-name": "Key"
  11879. },
  11880. "key_id": {
  11881. "type": "integer",
  11882. "format": "int64",
  11883. "x-go-name": "KeyID"
  11884. },
  11885. "read_only": {
  11886. "type": "boolean",
  11887. "x-go-name": "ReadOnly"
  11888. },
  11889. "repository": {
  11890. "$ref": "#/definitions/Repository"
  11891. },
  11892. "title": {
  11893. "type": "string",
  11894. "x-go-name": "Title"
  11895. },
  11896. "url": {
  11897. "type": "string",
  11898. "x-go-name": "URL"
  11899. }
  11900. },
  11901. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11902. },
  11903. "EditAttachmentOptions": {
  11904. "description": "EditAttachmentOptions options for editing attachments",
  11905. "type": "object",
  11906. "properties": {
  11907. "name": {
  11908. "type": "string",
  11909. "x-go-name": "Name"
  11910. }
  11911. },
  11912. "x-go-package": "code.gitea.io/gitea/modules/structs"
  11913. },
  11914. "EditBranchProtectionOption": {
  11915. "description": "EditBranchProtectionOption options for editing a branch protection",
  11916. "type": "object",
  11917. "properties": {
  11918. "approvals_whitelist_teams": {
  11919. "type": "array",
  11920. "items": {
  11921. "type": "string"
  11922. },
  11923. "x-go-name": "ApprovalsWhitelistTeams"
  11924. },
  11925. "approvals_whitelist_username": {
  11926. "type": "array",
  11927. "items": {
  11928. "type": "string"
  11929. },
  11930. "x-go-name": "ApprovalsWhitelistUsernames"
  11931. },
  11932. "block_on_outdated_branch": {
  11933. "type": "boolean",
  11934. "x-go-name": "BlockOnOutdatedBranch"
  11935. },
  11936. "block_on_rejected_reviews": {
  11937. "type": "boolean",
  11938. "x-go-name": "BlockOnRejectedReviews"
  11939. },
  11940. "dismiss_stale_approvals": {
  11941. "type": "boolean",
  11942. "x-go-name": "DismissStaleApprovals"
  11943. },
  11944. "enable_approvals_whitelist": {
  11945. "type": "boolean",
  11946. "x-go-name": "EnableApprovalsWhitelist"
  11947. },
  11948. "enable_merge_whitelist": {
  11949. "type": "boolean",
  11950. "x-go-name": "EnableMergeWhitelist"
  11951. },
  11952. "enable_push": {
  11953. "type": "boolean",
  11954. "x-go-name": "EnablePush"
  11955. },
  11956. "enable_push_whitelist": {
  11957. "type": "boolean",
  11958. "x-go-name": "EnablePushWhitelist"
  11959. },
  11960. "enable_status_check": {
  11961. "type": "boolean",
  11962. "x-go-name": "EnableStatusCheck"
  11963. },
  11964. "merge_whitelist_teams": {
  11965. "type": "array",
  11966. "items": {
  11967. "type": "string"
  11968. },
  11969. "x-go-name": "MergeWhitelistTeams"
  11970. },
  11971. "merge_whitelist_usernames": {
  11972. "type": "array",
  11973. "items": {
  11974. "type": "string"
  11975. },
  11976. "x-go-name": "MergeWhitelistUsernames"
  11977. },
  11978. "protected_file_patterns": {
  11979. "type": "string",
  11980. "x-go-name": "ProtectedFilePatterns"
  11981. },
  11982. "push_whitelist_deploy_keys": {
  11983. "type": "boolean",
  11984. "x-go-name": "PushWhitelistDeployKeys"
  11985. },
  11986. "push_whitelist_teams": {
  11987. "type": "array",
  11988. "items": {
  11989. "type": "string"
  11990. },
  11991. "x-go-name": "PushWhitelistTeams"
  11992. },
  11993. "push_whitelist_usernames": {
  11994. "type": "array",
  11995. "items": {
  11996. "type": "string"
  11997. },
  11998. "x-go-name": "PushWhitelistUsernames"
  11999. },
  12000. "require_signed_commits": {
  12001. "type": "boolean",
  12002. "x-go-name": "RequireSignedCommits"
  12003. },
  12004. "required_approvals": {
  12005. "type": "integer",
  12006. "format": "int64",
  12007. "x-go-name": "RequiredApprovals"
  12008. },
  12009. "status_check_contexts": {
  12010. "type": "array",
  12011. "items": {
  12012. "type": "string"
  12013. },
  12014. "x-go-name": "StatusCheckContexts"
  12015. }
  12016. },
  12017. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12018. },
  12019. "EditDeadlineOption": {
  12020. "description": "EditDeadlineOption options for creating a deadline",
  12021. "type": "object",
  12022. "required": [
  12023. "due_date"
  12024. ],
  12025. "properties": {
  12026. "due_date": {
  12027. "type": "string",
  12028. "format": "date-time",
  12029. "x-go-name": "Deadline"
  12030. }
  12031. },
  12032. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12033. },
  12034. "EditGitHookOption": {
  12035. "description": "EditGitHookOption options when modifying one Git hook",
  12036. "type": "object",
  12037. "properties": {
  12038. "content": {
  12039. "type": "string",
  12040. "x-go-name": "Content"
  12041. }
  12042. },
  12043. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12044. },
  12045. "EditHookOption": {
  12046. "description": "EditHookOption options when modify one hook",
  12047. "type": "object",
  12048. "properties": {
  12049. "active": {
  12050. "type": "boolean",
  12051. "x-go-name": "Active"
  12052. },
  12053. "branch_filter": {
  12054. "type": "string",
  12055. "x-go-name": "BranchFilter"
  12056. },
  12057. "config": {
  12058. "type": "object",
  12059. "additionalProperties": {
  12060. "type": "string"
  12061. },
  12062. "x-go-name": "Config"
  12063. },
  12064. "events": {
  12065. "type": "array",
  12066. "items": {
  12067. "type": "string"
  12068. },
  12069. "x-go-name": "Events"
  12070. }
  12071. },
  12072. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12073. },
  12074. "EditIssueCommentOption": {
  12075. "description": "EditIssueCommentOption options for editing a comment",
  12076. "type": "object",
  12077. "required": [
  12078. "body"
  12079. ],
  12080. "properties": {
  12081. "body": {
  12082. "type": "string",
  12083. "x-go-name": "Body"
  12084. }
  12085. },
  12086. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12087. },
  12088. "EditIssueOption": {
  12089. "description": "EditIssueOption options for editing an issue",
  12090. "type": "object",
  12091. "properties": {
  12092. "assignee": {
  12093. "type": "string",
  12094. "x-go-name": "Assignee"
  12095. },
  12096. "assignees": {
  12097. "type": "array",
  12098. "items": {
  12099. "type": "string"
  12100. },
  12101. "x-go-name": "Assignees"
  12102. },
  12103. "body": {
  12104. "type": "string",
  12105. "x-go-name": "Body"
  12106. },
  12107. "due_date": {
  12108. "type": "string",
  12109. "format": "date-time",
  12110. "x-go-name": "Deadline"
  12111. },
  12112. "milestone": {
  12113. "type": "integer",
  12114. "format": "int64",
  12115. "x-go-name": "Milestone"
  12116. },
  12117. "state": {
  12118. "type": "string",
  12119. "x-go-name": "State"
  12120. },
  12121. "title": {
  12122. "type": "string",
  12123. "x-go-name": "Title"
  12124. },
  12125. "unset_due_date": {
  12126. "type": "boolean",
  12127. "x-go-name": "RemoveDeadline"
  12128. }
  12129. },
  12130. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12131. },
  12132. "EditLabelOption": {
  12133. "description": "EditLabelOption options for editing a label",
  12134. "type": "object",
  12135. "properties": {
  12136. "color": {
  12137. "type": "string",
  12138. "x-go-name": "Color"
  12139. },
  12140. "description": {
  12141. "type": "string",
  12142. "x-go-name": "Description"
  12143. },
  12144. "name": {
  12145. "type": "string",
  12146. "x-go-name": "Name"
  12147. }
  12148. },
  12149. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12150. },
  12151. "EditMilestoneOption": {
  12152. "description": "EditMilestoneOption options for editing a milestone",
  12153. "type": "object",
  12154. "properties": {
  12155. "description": {
  12156. "type": "string",
  12157. "x-go-name": "Description"
  12158. },
  12159. "due_on": {
  12160. "type": "string",
  12161. "format": "date-time",
  12162. "x-go-name": "Deadline"
  12163. },
  12164. "state": {
  12165. "type": "string",
  12166. "x-go-name": "State"
  12167. },
  12168. "title": {
  12169. "type": "string",
  12170. "x-go-name": "Title"
  12171. }
  12172. },
  12173. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12174. },
  12175. "EditOrgOption": {
  12176. "description": "EditOrgOption options for editing an organization",
  12177. "type": "object",
  12178. "properties": {
  12179. "description": {
  12180. "type": "string",
  12181. "x-go-name": "Description"
  12182. },
  12183. "full_name": {
  12184. "type": "string",
  12185. "x-go-name": "FullName"
  12186. },
  12187. "location": {
  12188. "type": "string",
  12189. "x-go-name": "Location"
  12190. },
  12191. "repo_admin_change_team_access": {
  12192. "type": "boolean",
  12193. "x-go-name": "RepoAdminChangeTeamAccess"
  12194. },
  12195. "visibility": {
  12196. "description": "possible values are `public`, `limited` or `private`",
  12197. "type": "string",
  12198. "enum": [
  12199. "public",
  12200. "limited",
  12201. "private"
  12202. ],
  12203. "x-go-name": "Visibility"
  12204. },
  12205. "website": {
  12206. "type": "string",
  12207. "x-go-name": "Website"
  12208. }
  12209. },
  12210. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12211. },
  12212. "EditPullRequestOption": {
  12213. "description": "EditPullRequestOption options when modify pull request",
  12214. "type": "object",
  12215. "properties": {
  12216. "assignee": {
  12217. "type": "string",
  12218. "x-go-name": "Assignee"
  12219. },
  12220. "assignees": {
  12221. "type": "array",
  12222. "items": {
  12223. "type": "string"
  12224. },
  12225. "x-go-name": "Assignees"
  12226. },
  12227. "base": {
  12228. "type": "string",
  12229. "x-go-name": "Base"
  12230. },
  12231. "body": {
  12232. "type": "string",
  12233. "x-go-name": "Body"
  12234. },
  12235. "due_date": {
  12236. "type": "string",
  12237. "format": "date-time",
  12238. "x-go-name": "Deadline"
  12239. },
  12240. "labels": {
  12241. "type": "array",
  12242. "items": {
  12243. "type": "integer",
  12244. "format": "int64"
  12245. },
  12246. "x-go-name": "Labels"
  12247. },
  12248. "milestone": {
  12249. "type": "integer",
  12250. "format": "int64",
  12251. "x-go-name": "Milestone"
  12252. },
  12253. "state": {
  12254. "type": "string",
  12255. "x-go-name": "State"
  12256. },
  12257. "title": {
  12258. "type": "string",
  12259. "x-go-name": "Title"
  12260. },
  12261. "unset_due_date": {
  12262. "type": "boolean",
  12263. "x-go-name": "RemoveDeadline"
  12264. }
  12265. },
  12266. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12267. },
  12268. "EditReactionOption": {
  12269. "description": "EditReactionOption contain the reaction type",
  12270. "type": "object",
  12271. "properties": {
  12272. "content": {
  12273. "type": "string",
  12274. "x-go-name": "Reaction"
  12275. }
  12276. },
  12277. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12278. },
  12279. "EditReleaseOption": {
  12280. "description": "EditReleaseOption options when editing a release",
  12281. "type": "object",
  12282. "properties": {
  12283. "body": {
  12284. "type": "string",
  12285. "x-go-name": "Note"
  12286. },
  12287. "draft": {
  12288. "type": "boolean",
  12289. "x-go-name": "IsDraft"
  12290. },
  12291. "name": {
  12292. "type": "string",
  12293. "x-go-name": "Title"
  12294. },
  12295. "prerelease": {
  12296. "type": "boolean",
  12297. "x-go-name": "IsPrerelease"
  12298. },
  12299. "tag_name": {
  12300. "type": "string",
  12301. "x-go-name": "TagName"
  12302. },
  12303. "target_commitish": {
  12304. "type": "string",
  12305. "x-go-name": "Target"
  12306. }
  12307. },
  12308. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12309. },
  12310. "EditRepoOption": {
  12311. "description": "EditRepoOption options when editing a repository's properties",
  12312. "type": "object",
  12313. "properties": {
  12314. "allow_merge_commits": {
  12315. "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`.",
  12316. "type": "boolean",
  12317. "x-go-name": "AllowMerge"
  12318. },
  12319. "allow_rebase": {
  12320. "description": "either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging. `has_pull_requests` must be `true`.",
  12321. "type": "boolean",
  12322. "x-go-name": "AllowRebase"
  12323. },
  12324. "allow_rebase_explicit": {
  12325. "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`.",
  12326. "type": "boolean",
  12327. "x-go-name": "AllowRebaseMerge"
  12328. },
  12329. "allow_squash_merge": {
  12330. "description": "either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging. `has_pull_requests` must be `true`.",
  12331. "type": "boolean",
  12332. "x-go-name": "AllowSquash"
  12333. },
  12334. "archived": {
  12335. "description": "set to `true` to archive this repository.",
  12336. "type": "boolean",
  12337. "x-go-name": "Archived"
  12338. },
  12339. "default_branch": {
  12340. "description": "sets the default branch for this repository.",
  12341. "type": "string",
  12342. "x-go-name": "DefaultBranch"
  12343. },
  12344. "description": {
  12345. "description": "a short description of the repository.",
  12346. "type": "string",
  12347. "x-go-name": "Description"
  12348. },
  12349. "external_tracker": {
  12350. "$ref": "#/definitions/ExternalTracker"
  12351. },
  12352. "external_wiki": {
  12353. "$ref": "#/definitions/ExternalWiki"
  12354. },
  12355. "has_issues": {
  12356. "description": "either `true` to enable issues for this repository or `false` to disable them.",
  12357. "type": "boolean",
  12358. "x-go-name": "HasIssues"
  12359. },
  12360. "has_pull_requests": {
  12361. "description": "either `true` to allow pull requests, or `false` to prevent pull request.",
  12362. "type": "boolean",
  12363. "x-go-name": "HasPullRequests"
  12364. },
  12365. "has_wiki": {
  12366. "description": "either `true` to enable the wiki for this repository or `false` to disable it.",
  12367. "type": "boolean",
  12368. "x-go-name": "HasWiki"
  12369. },
  12370. "ignore_whitespace_conflicts": {
  12371. "description": "either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace. `has_pull_requests` must be `true`.",
  12372. "type": "boolean",
  12373. "x-go-name": "IgnoreWhitespaceConflicts"
  12374. },
  12375. "internal_tracker": {
  12376. "$ref": "#/definitions/InternalTracker"
  12377. },
  12378. "name": {
  12379. "description": "name of the repository",
  12380. "type": "string",
  12381. "uniqueItems": true,
  12382. "x-go-name": "Name"
  12383. },
  12384. "private": {
  12385. "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.",
  12386. "type": "boolean",
  12387. "x-go-name": "Private"
  12388. },
  12389. "template": {
  12390. "description": "either `true` to make this repository a template or `false` to make it a normal repository",
  12391. "type": "boolean",
  12392. "x-go-name": "Template"
  12393. },
  12394. "website": {
  12395. "description": "a URL with more information about the repository.",
  12396. "type": "string",
  12397. "x-go-name": "Website"
  12398. }
  12399. },
  12400. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12401. },
  12402. "EditTeamOption": {
  12403. "description": "EditTeamOption options for editing a team",
  12404. "type": "object",
  12405. "required": [
  12406. "name"
  12407. ],
  12408. "properties": {
  12409. "can_create_org_repo": {
  12410. "type": "boolean",
  12411. "x-go-name": "CanCreateOrgRepo"
  12412. },
  12413. "description": {
  12414. "type": "string",
  12415. "x-go-name": "Description"
  12416. },
  12417. "includes_all_repositories": {
  12418. "type": "boolean",
  12419. "x-go-name": "IncludesAllRepositories"
  12420. },
  12421. "name": {
  12422. "type": "string",
  12423. "x-go-name": "Name"
  12424. },
  12425. "permission": {
  12426. "type": "string",
  12427. "enum": [
  12428. "read",
  12429. "write",
  12430. "admin"
  12431. ],
  12432. "x-go-name": "Permission"
  12433. },
  12434. "units": {
  12435. "type": "array",
  12436. "items": {
  12437. "type": "string"
  12438. },
  12439. "x-go-name": "Units",
  12440. "example": [
  12441. "repo.code",
  12442. "repo.issues",
  12443. "repo.ext_issues",
  12444. "repo.wiki",
  12445. "repo.pulls",
  12446. "repo.releases",
  12447. "repo.ext_wiki"
  12448. ]
  12449. }
  12450. },
  12451. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12452. },
  12453. "EditUserOption": {
  12454. "description": "EditUserOption edit user options",
  12455. "type": "object",
  12456. "required": [
  12457. "email"
  12458. ],
  12459. "properties": {
  12460. "active": {
  12461. "type": "boolean",
  12462. "x-go-name": "Active"
  12463. },
  12464. "admin": {
  12465. "type": "boolean",
  12466. "x-go-name": "Admin"
  12467. },
  12468. "allow_create_organization": {
  12469. "type": "boolean",
  12470. "x-go-name": "AllowCreateOrganization"
  12471. },
  12472. "allow_git_hook": {
  12473. "type": "boolean",
  12474. "x-go-name": "AllowGitHook"
  12475. },
  12476. "allow_import_local": {
  12477. "type": "boolean",
  12478. "x-go-name": "AllowImportLocal"
  12479. },
  12480. "email": {
  12481. "type": "string",
  12482. "format": "email",
  12483. "x-go-name": "Email"
  12484. },
  12485. "full_name": {
  12486. "type": "string",
  12487. "x-go-name": "FullName"
  12488. },
  12489. "location": {
  12490. "type": "string",
  12491. "x-go-name": "Location"
  12492. },
  12493. "login_name": {
  12494. "type": "string",
  12495. "x-go-name": "LoginName"
  12496. },
  12497. "max_repo_creation": {
  12498. "type": "integer",
  12499. "format": "int64",
  12500. "x-go-name": "MaxRepoCreation"
  12501. },
  12502. "must_change_password": {
  12503. "type": "boolean",
  12504. "x-go-name": "MustChangePassword"
  12505. },
  12506. "password": {
  12507. "type": "string",
  12508. "x-go-name": "Password"
  12509. },
  12510. "prohibit_login": {
  12511. "type": "boolean",
  12512. "x-go-name": "ProhibitLogin"
  12513. },
  12514. "source_id": {
  12515. "type": "integer",
  12516. "format": "int64",
  12517. "x-go-name": "SourceID"
  12518. },
  12519. "website": {
  12520. "type": "string",
  12521. "x-go-name": "Website"
  12522. }
  12523. },
  12524. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12525. },
  12526. "Email": {
  12527. "description": "Email an email address belonging to a user",
  12528. "type": "object",
  12529. "properties": {
  12530. "email": {
  12531. "type": "string",
  12532. "format": "email",
  12533. "x-go-name": "Email"
  12534. },
  12535. "primary": {
  12536. "type": "boolean",
  12537. "x-go-name": "Primary"
  12538. },
  12539. "verified": {
  12540. "type": "boolean",
  12541. "x-go-name": "Verified"
  12542. }
  12543. },
  12544. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12545. },
  12546. "ExternalTracker": {
  12547. "description": "ExternalTracker represents settings for external tracker",
  12548. "type": "object",
  12549. "properties": {
  12550. "external_tracker_format": {
  12551. "description": "External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.",
  12552. "type": "string",
  12553. "x-go-name": "ExternalTrackerFormat"
  12554. },
  12555. "external_tracker_style": {
  12556. "description": "External Issue Tracker Number Format, either `numeric` or `alphanumeric`",
  12557. "type": "string",
  12558. "x-go-name": "ExternalTrackerStyle"
  12559. },
  12560. "external_tracker_url": {
  12561. "description": "URL of external issue tracker.",
  12562. "type": "string",
  12563. "x-go-name": "ExternalTrackerURL"
  12564. }
  12565. },
  12566. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12567. },
  12568. "ExternalWiki": {
  12569. "description": "ExternalWiki represents setting for external wiki",
  12570. "type": "object",
  12571. "properties": {
  12572. "external_wiki_url": {
  12573. "description": "URL of external wiki.",
  12574. "type": "string",
  12575. "x-go-name": "ExternalWikiURL"
  12576. }
  12577. },
  12578. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12579. },
  12580. "FileCommitResponse": {
  12581. "type": "object",
  12582. "title": "FileCommitResponse contains information generated from a Git commit for a repo's file.",
  12583. "properties": {
  12584. "author": {
  12585. "$ref": "#/definitions/CommitUser"
  12586. },
  12587. "committer": {
  12588. "$ref": "#/definitions/CommitUser"
  12589. },
  12590. "html_url": {
  12591. "type": "string",
  12592. "x-go-name": "HTMLURL"
  12593. },
  12594. "message": {
  12595. "type": "string",
  12596. "x-go-name": "Message"
  12597. },
  12598. "parents": {
  12599. "type": "array",
  12600. "items": {
  12601. "$ref": "#/definitions/CommitMeta"
  12602. },
  12603. "x-go-name": "Parents"
  12604. },
  12605. "sha": {
  12606. "type": "string",
  12607. "x-go-name": "SHA"
  12608. },
  12609. "tree": {
  12610. "$ref": "#/definitions/CommitMeta"
  12611. },
  12612. "url": {
  12613. "type": "string",
  12614. "x-go-name": "URL"
  12615. }
  12616. },
  12617. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12618. },
  12619. "FileDeleteResponse": {
  12620. "description": "FileDeleteResponse contains information about a repo's file that was deleted",
  12621. "type": "object",
  12622. "properties": {
  12623. "commit": {
  12624. "$ref": "#/definitions/FileCommitResponse"
  12625. },
  12626. "content": {
  12627. "type": "object",
  12628. "x-go-name": "Content"
  12629. },
  12630. "verification": {
  12631. "$ref": "#/definitions/PayloadCommitVerification"
  12632. }
  12633. },
  12634. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12635. },
  12636. "FileLinksResponse": {
  12637. "description": "FileLinksResponse contains the links for a repo's file",
  12638. "type": "object",
  12639. "properties": {
  12640. "git": {
  12641. "type": "string",
  12642. "x-go-name": "GitURL"
  12643. },
  12644. "html": {
  12645. "type": "string",
  12646. "x-go-name": "HTMLURL"
  12647. },
  12648. "self": {
  12649. "type": "string",
  12650. "x-go-name": "Self"
  12651. }
  12652. },
  12653. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12654. },
  12655. "FileResponse": {
  12656. "description": "FileResponse contains information about a repo's file",
  12657. "type": "object",
  12658. "properties": {
  12659. "commit": {
  12660. "$ref": "#/definitions/FileCommitResponse"
  12661. },
  12662. "content": {
  12663. "$ref": "#/definitions/ContentsResponse"
  12664. },
  12665. "verification": {
  12666. "$ref": "#/definitions/PayloadCommitVerification"
  12667. }
  12668. },
  12669. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12670. },
  12671. "GPGKey": {
  12672. "description": "GPGKey a user GPG key to sign commit and tag in repository",
  12673. "type": "object",
  12674. "properties": {
  12675. "can_certify": {
  12676. "type": "boolean",
  12677. "x-go-name": "CanCertify"
  12678. },
  12679. "can_encrypt_comms": {
  12680. "type": "boolean",
  12681. "x-go-name": "CanEncryptComms"
  12682. },
  12683. "can_encrypt_storage": {
  12684. "type": "boolean",
  12685. "x-go-name": "CanEncryptStorage"
  12686. },
  12687. "can_sign": {
  12688. "type": "boolean",
  12689. "x-go-name": "CanSign"
  12690. },
  12691. "created_at": {
  12692. "type": "string",
  12693. "format": "date-time",
  12694. "x-go-name": "Created"
  12695. },
  12696. "emails": {
  12697. "type": "array",
  12698. "items": {
  12699. "$ref": "#/definitions/GPGKeyEmail"
  12700. },
  12701. "x-go-name": "Emails"
  12702. },
  12703. "expires_at": {
  12704. "type": "string",
  12705. "format": "date-time",
  12706. "x-go-name": "Expires"
  12707. },
  12708. "id": {
  12709. "type": "integer",
  12710. "format": "int64",
  12711. "x-go-name": "ID"
  12712. },
  12713. "key_id": {
  12714. "type": "string",
  12715. "x-go-name": "KeyID"
  12716. },
  12717. "primary_key_id": {
  12718. "type": "string",
  12719. "x-go-name": "PrimaryKeyID"
  12720. },
  12721. "public_key": {
  12722. "type": "string",
  12723. "x-go-name": "PublicKey"
  12724. },
  12725. "subkeys": {
  12726. "type": "array",
  12727. "items": {
  12728. "$ref": "#/definitions/GPGKey"
  12729. },
  12730. "x-go-name": "SubsKey"
  12731. }
  12732. },
  12733. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12734. },
  12735. "GPGKeyEmail": {
  12736. "description": "GPGKeyEmail an email attached to a GPGKey",
  12737. "type": "object",
  12738. "properties": {
  12739. "email": {
  12740. "type": "string",
  12741. "x-go-name": "Email"
  12742. },
  12743. "verified": {
  12744. "type": "boolean",
  12745. "x-go-name": "Verified"
  12746. }
  12747. },
  12748. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12749. },
  12750. "GeneralRepoSettings": {
  12751. "description": "GeneralRepoSettings contains global repository settings exposed by API",
  12752. "type": "object",
  12753. "properties": {
  12754. "http_git_disabled": {
  12755. "type": "boolean",
  12756. "x-go-name": "HTTPGitDisabled"
  12757. },
  12758. "mirrors_disabled": {
  12759. "type": "boolean",
  12760. "x-go-name": "MirrorsDisabled"
  12761. }
  12762. },
  12763. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12764. },
  12765. "GeneralUISettings": {
  12766. "description": "GeneralUISettings contains global ui settings exposed by API",
  12767. "type": "object",
  12768. "properties": {
  12769. "allowed_reactions": {
  12770. "type": "array",
  12771. "items": {
  12772. "type": "string"
  12773. },
  12774. "x-go-name": "AllowedReactions"
  12775. }
  12776. },
  12777. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12778. },
  12779. "GitBlobResponse": {
  12780. "description": "GitBlobResponse represents a git blob",
  12781. "type": "object",
  12782. "properties": {
  12783. "content": {
  12784. "type": "string",
  12785. "x-go-name": "Content"
  12786. },
  12787. "encoding": {
  12788. "type": "string",
  12789. "x-go-name": "Encoding"
  12790. },
  12791. "sha": {
  12792. "type": "string",
  12793. "x-go-name": "SHA"
  12794. },
  12795. "size": {
  12796. "type": "integer",
  12797. "format": "int64",
  12798. "x-go-name": "Size"
  12799. },
  12800. "url": {
  12801. "type": "string",
  12802. "x-go-name": "URL"
  12803. }
  12804. },
  12805. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12806. },
  12807. "GitEntry": {
  12808. "description": "GitEntry represents a git tree",
  12809. "type": "object",
  12810. "properties": {
  12811. "mode": {
  12812. "type": "string",
  12813. "x-go-name": "Mode"
  12814. },
  12815. "path": {
  12816. "type": "string",
  12817. "x-go-name": "Path"
  12818. },
  12819. "sha": {
  12820. "type": "string",
  12821. "x-go-name": "SHA"
  12822. },
  12823. "size": {
  12824. "type": "integer",
  12825. "format": "int64",
  12826. "x-go-name": "Size"
  12827. },
  12828. "type": {
  12829. "type": "string",
  12830. "x-go-name": "Type"
  12831. },
  12832. "url": {
  12833. "type": "string",
  12834. "x-go-name": "URL"
  12835. }
  12836. },
  12837. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12838. },
  12839. "GitHook": {
  12840. "description": "GitHook represents a Git repository hook",
  12841. "type": "object",
  12842. "properties": {
  12843. "content": {
  12844. "type": "string",
  12845. "x-go-name": "Content"
  12846. },
  12847. "is_active": {
  12848. "type": "boolean",
  12849. "x-go-name": "IsActive"
  12850. },
  12851. "name": {
  12852. "type": "string",
  12853. "x-go-name": "Name"
  12854. }
  12855. },
  12856. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12857. },
  12858. "GitObject": {
  12859. "type": "object",
  12860. "title": "GitObject represents a Git object.",
  12861. "properties": {
  12862. "sha": {
  12863. "type": "string",
  12864. "x-go-name": "SHA"
  12865. },
  12866. "type": {
  12867. "type": "string",
  12868. "x-go-name": "Type"
  12869. },
  12870. "url": {
  12871. "type": "string",
  12872. "x-go-name": "URL"
  12873. }
  12874. },
  12875. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12876. },
  12877. "GitTreeResponse": {
  12878. "description": "GitTreeResponse returns a git tree",
  12879. "type": "object",
  12880. "properties": {
  12881. "page": {
  12882. "type": "integer",
  12883. "format": "int64",
  12884. "x-go-name": "Page"
  12885. },
  12886. "sha": {
  12887. "type": "string",
  12888. "x-go-name": "SHA"
  12889. },
  12890. "total_count": {
  12891. "type": "integer",
  12892. "format": "int64",
  12893. "x-go-name": "TotalCount"
  12894. },
  12895. "tree": {
  12896. "type": "array",
  12897. "items": {
  12898. "$ref": "#/definitions/GitEntry"
  12899. },
  12900. "x-go-name": "Entries"
  12901. },
  12902. "truncated": {
  12903. "type": "boolean",
  12904. "x-go-name": "Truncated"
  12905. },
  12906. "url": {
  12907. "type": "string",
  12908. "x-go-name": "URL"
  12909. }
  12910. },
  12911. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12912. },
  12913. "Hook": {
  12914. "description": "Hook a hook is a web hook when one repository changed",
  12915. "type": "object",
  12916. "properties": {
  12917. "active": {
  12918. "type": "boolean",
  12919. "x-go-name": "Active"
  12920. },
  12921. "config": {
  12922. "type": "object",
  12923. "additionalProperties": {
  12924. "type": "string"
  12925. },
  12926. "x-go-name": "Config"
  12927. },
  12928. "created_at": {
  12929. "type": "string",
  12930. "format": "date-time",
  12931. "x-go-name": "Created"
  12932. },
  12933. "events": {
  12934. "type": "array",
  12935. "items": {
  12936. "type": "string"
  12937. },
  12938. "x-go-name": "Events"
  12939. },
  12940. "id": {
  12941. "type": "integer",
  12942. "format": "int64",
  12943. "x-go-name": "ID"
  12944. },
  12945. "type": {
  12946. "type": "string",
  12947. "x-go-name": "Type"
  12948. },
  12949. "updated_at": {
  12950. "type": "string",
  12951. "format": "date-time",
  12952. "x-go-name": "Updated"
  12953. }
  12954. },
  12955. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12956. },
  12957. "Identity": {
  12958. "description": "Identity for a person's identity like an author or committer",
  12959. "type": "object",
  12960. "properties": {
  12961. "email": {
  12962. "type": "string",
  12963. "format": "email",
  12964. "x-go-name": "Email"
  12965. },
  12966. "name": {
  12967. "type": "string",
  12968. "x-go-name": "Name"
  12969. }
  12970. },
  12971. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12972. },
  12973. "InternalTracker": {
  12974. "description": "InternalTracker represents settings for internal tracker",
  12975. "type": "object",
  12976. "properties": {
  12977. "allow_only_contributors_to_track_time": {
  12978. "description": "Let only contributors track time (Built-in issue tracker)",
  12979. "type": "boolean",
  12980. "x-go-name": "AllowOnlyContributorsToTrackTime"
  12981. },
  12982. "enable_issue_dependencies": {
  12983. "description": "Enable dependencies for issues and pull requests (Built-in issue tracker)",
  12984. "type": "boolean",
  12985. "x-go-name": "EnableIssueDependencies"
  12986. },
  12987. "enable_time_tracker": {
  12988. "description": "Enable time tracking (Built-in issue tracker)",
  12989. "type": "boolean",
  12990. "x-go-name": "EnableTimeTracker"
  12991. }
  12992. },
  12993. "x-go-package": "code.gitea.io/gitea/modules/structs"
  12994. },
  12995. "Issue": {
  12996. "description": "Issue represents an issue in a repository",
  12997. "type": "object",
  12998. "properties": {
  12999. "assignee": {
  13000. "$ref": "#/definitions/User"
  13001. },
  13002. "assignees": {
  13003. "type": "array",
  13004. "items": {
  13005. "$ref": "#/definitions/User"
  13006. },
  13007. "x-go-name": "Assignees"
  13008. },
  13009. "body": {
  13010. "type": "string",
  13011. "x-go-name": "Body"
  13012. },
  13013. "closed_at": {
  13014. "type": "string",
  13015. "format": "date-time",
  13016. "x-go-name": "Closed"
  13017. },
  13018. "comments": {
  13019. "type": "integer",
  13020. "format": "int64",
  13021. "x-go-name": "Comments"
  13022. },
  13023. "created_at": {
  13024. "type": "string",
  13025. "format": "date-time",
  13026. "x-go-name": "Created"
  13027. },
  13028. "due_date": {
  13029. "type": "string",
  13030. "format": "date-time",
  13031. "x-go-name": "Deadline"
  13032. },
  13033. "html_url": {
  13034. "type": "string",
  13035. "x-go-name": "HTMLURL"
  13036. },
  13037. "id": {
  13038. "type": "integer",
  13039. "format": "int64",
  13040. "x-go-name": "ID"
  13041. },
  13042. "is_locked": {
  13043. "type": "boolean",
  13044. "x-go-name": "IsLocked"
  13045. },
  13046. "labels": {
  13047. "type": "array",
  13048. "items": {
  13049. "$ref": "#/definitions/Label"
  13050. },
  13051. "x-go-name": "Labels"
  13052. },
  13053. "milestone": {
  13054. "$ref": "#/definitions/Milestone"
  13055. },
  13056. "number": {
  13057. "type": "integer",
  13058. "format": "int64",
  13059. "x-go-name": "Index"
  13060. },
  13061. "original_author": {
  13062. "type": "string",
  13063. "x-go-name": "OriginalAuthor"
  13064. },
  13065. "original_author_id": {
  13066. "type": "integer",
  13067. "format": "int64",
  13068. "x-go-name": "OriginalAuthorID"
  13069. },
  13070. "pull_request": {
  13071. "$ref": "#/definitions/PullRequestMeta"
  13072. },
  13073. "repository": {
  13074. "$ref": "#/definitions/RepositoryMeta"
  13075. },
  13076. "state": {
  13077. "$ref": "#/definitions/StateType"
  13078. },
  13079. "title": {
  13080. "type": "string",
  13081. "x-go-name": "Title"
  13082. },
  13083. "updated_at": {
  13084. "type": "string",
  13085. "format": "date-time",
  13086. "x-go-name": "Updated"
  13087. },
  13088. "url": {
  13089. "type": "string",
  13090. "x-go-name": "URL"
  13091. },
  13092. "user": {
  13093. "$ref": "#/definitions/User"
  13094. }
  13095. },
  13096. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13097. },
  13098. "IssueDeadline": {
  13099. "description": "IssueDeadline represents an issue deadline",
  13100. "type": "object",
  13101. "properties": {
  13102. "due_date": {
  13103. "type": "string",
  13104. "format": "date-time",
  13105. "x-go-name": "Deadline"
  13106. }
  13107. },
  13108. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13109. },
  13110. "IssueLabelsOption": {
  13111. "description": "IssueLabelsOption a collection of labels",
  13112. "type": "object",
  13113. "properties": {
  13114. "labels": {
  13115. "description": "list of label IDs",
  13116. "type": "array",
  13117. "items": {
  13118. "type": "integer",
  13119. "format": "int64"
  13120. },
  13121. "x-go-name": "Labels"
  13122. }
  13123. },
  13124. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13125. },
  13126. "Label": {
  13127. "description": "Label a label to an issue or a pr",
  13128. "type": "object",
  13129. "properties": {
  13130. "color": {
  13131. "type": "string",
  13132. "x-go-name": "Color",
  13133. "example": "00aabb"
  13134. },
  13135. "description": {
  13136. "type": "string",
  13137. "x-go-name": "Description"
  13138. },
  13139. "id": {
  13140. "type": "integer",
  13141. "format": "int64",
  13142. "x-go-name": "ID"
  13143. },
  13144. "name": {
  13145. "type": "string",
  13146. "x-go-name": "Name"
  13147. },
  13148. "url": {
  13149. "type": "string",
  13150. "x-go-name": "URL"
  13151. }
  13152. },
  13153. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13154. },
  13155. "MarkdownOption": {
  13156. "description": "MarkdownOption markdown options",
  13157. "type": "object",
  13158. "properties": {
  13159. "Context": {
  13160. "description": "Context to render\n\nin: body",
  13161. "type": "string"
  13162. },
  13163. "Mode": {
  13164. "description": "Mode to render\n\nin: body",
  13165. "type": "string"
  13166. },
  13167. "Text": {
  13168. "description": "Text markdown to render\n\nin: body",
  13169. "type": "string"
  13170. },
  13171. "Wiki": {
  13172. "description": "Is it a wiki page ?\n\nin: body",
  13173. "type": "boolean"
  13174. }
  13175. },
  13176. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13177. },
  13178. "MergePullRequestOption": {
  13179. "description": "MergePullRequestForm form for merging Pull Request",
  13180. "type": "object",
  13181. "required": [
  13182. "Do"
  13183. ],
  13184. "properties": {
  13185. "Do": {
  13186. "type": "string",
  13187. "enum": [
  13188. "merge",
  13189. "rebase",
  13190. "rebase-merge",
  13191. "squash"
  13192. ]
  13193. },
  13194. "MergeMessageField": {
  13195. "type": "string"
  13196. },
  13197. "MergeTitleField": {
  13198. "type": "string"
  13199. },
  13200. "force_merge": {
  13201. "type": "boolean",
  13202. "x-go-name": "ForceMerge"
  13203. }
  13204. },
  13205. "x-go-name": "MergePullRequestForm",
  13206. "x-go-package": "code.gitea.io/gitea/modules/auth"
  13207. },
  13208. "MigrateRepoForm": {
  13209. "description": "MigrateRepoForm form for migrating repository",
  13210. "type": "object",
  13211. "required": [
  13212. "clone_addr",
  13213. "uid",
  13214. "repo_name"
  13215. ],
  13216. "properties": {
  13217. "auth_password": {
  13218. "type": "string",
  13219. "x-go-name": "AuthPassword"
  13220. },
  13221. "auth_username": {
  13222. "type": "string",
  13223. "x-go-name": "AuthUsername"
  13224. },
  13225. "clone_addr": {
  13226. "type": "string",
  13227. "x-go-name": "CloneAddr"
  13228. },
  13229. "description": {
  13230. "type": "string",
  13231. "x-go-name": "Description"
  13232. },
  13233. "issues": {
  13234. "type": "boolean",
  13235. "x-go-name": "Issues"
  13236. },
  13237. "labels": {
  13238. "type": "boolean",
  13239. "x-go-name": "Labels"
  13240. },
  13241. "milestones": {
  13242. "type": "boolean",
  13243. "x-go-name": "Milestones"
  13244. },
  13245. "mirror": {
  13246. "type": "boolean",
  13247. "x-go-name": "Mirror"
  13248. },
  13249. "private": {
  13250. "type": "boolean",
  13251. "x-go-name": "Private"
  13252. },
  13253. "pull_requests": {
  13254. "type": "boolean",
  13255. "x-go-name": "PullRequests"
  13256. },
  13257. "releases": {
  13258. "type": "boolean",
  13259. "x-go-name": "Releases"
  13260. },
  13261. "repo_name": {
  13262. "type": "string",
  13263. "x-go-name": "RepoName"
  13264. },
  13265. "uid": {
  13266. "type": "integer",
  13267. "format": "int64",
  13268. "x-go-name": "UID"
  13269. },
  13270. "wiki": {
  13271. "type": "boolean",
  13272. "x-go-name": "Wiki"
  13273. }
  13274. },
  13275. "x-go-package": "code.gitea.io/gitea/modules/auth"
  13276. },
  13277. "Milestone": {
  13278. "description": "Milestone milestone is a collection of issues on one repository",
  13279. "type": "object",
  13280. "properties": {
  13281. "closed_at": {
  13282. "type": "string",
  13283. "format": "date-time",
  13284. "x-go-name": "Closed"
  13285. },
  13286. "closed_issues": {
  13287. "type": "integer",
  13288. "format": "int64",
  13289. "x-go-name": "ClosedIssues"
  13290. },
  13291. "description": {
  13292. "type": "string",
  13293. "x-go-name": "Description"
  13294. },
  13295. "due_on": {
  13296. "type": "string",
  13297. "format": "date-time",
  13298. "x-go-name": "Deadline"
  13299. },
  13300. "id": {
  13301. "type": "integer",
  13302. "format": "int64",
  13303. "x-go-name": "ID"
  13304. },
  13305. "open_issues": {
  13306. "type": "integer",
  13307. "format": "int64",
  13308. "x-go-name": "OpenIssues"
  13309. },
  13310. "state": {
  13311. "$ref": "#/definitions/StateType"
  13312. },
  13313. "title": {
  13314. "type": "string",
  13315. "x-go-name": "Title"
  13316. }
  13317. },
  13318. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13319. },
  13320. "NotificationCount": {
  13321. "description": "NotificationCount number of unread notifications",
  13322. "type": "object",
  13323. "properties": {
  13324. "new": {
  13325. "type": "integer",
  13326. "format": "int64",
  13327. "x-go-name": "New"
  13328. }
  13329. },
  13330. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13331. },
  13332. "NotificationSubject": {
  13333. "description": "NotificationSubject contains the notification subject (Issue/Pull/Commit)",
  13334. "type": "object",
  13335. "properties": {
  13336. "latest_comment_url": {
  13337. "type": "string",
  13338. "x-go-name": "LatestCommentURL"
  13339. },
  13340. "title": {
  13341. "type": "string",
  13342. "x-go-name": "Title"
  13343. },
  13344. "type": {
  13345. "type": "string",
  13346. "x-go-name": "Type"
  13347. },
  13348. "url": {
  13349. "type": "string",
  13350. "x-go-name": "URL"
  13351. }
  13352. },
  13353. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13354. },
  13355. "NotificationThread": {
  13356. "description": "NotificationThread expose Notification on API",
  13357. "type": "object",
  13358. "properties": {
  13359. "id": {
  13360. "type": "integer",
  13361. "format": "int64",
  13362. "x-go-name": "ID"
  13363. },
  13364. "pinned": {
  13365. "type": "boolean",
  13366. "x-go-name": "Pinned"
  13367. },
  13368. "repository": {
  13369. "$ref": "#/definitions/Repository"
  13370. },
  13371. "subject": {
  13372. "$ref": "#/definitions/NotificationSubject"
  13373. },
  13374. "unread": {
  13375. "type": "boolean",
  13376. "x-go-name": "Unread"
  13377. },
  13378. "updated_at": {
  13379. "type": "string",
  13380. "format": "date-time",
  13381. "x-go-name": "UpdatedAt"
  13382. },
  13383. "url": {
  13384. "type": "string",
  13385. "x-go-name": "URL"
  13386. }
  13387. },
  13388. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13389. },
  13390. "OAuth2Application": {
  13391. "type": "object",
  13392. "title": "OAuth2Application represents an OAuth2 application.",
  13393. "properties": {
  13394. "client_id": {
  13395. "type": "string",
  13396. "x-go-name": "ClientID"
  13397. },
  13398. "client_secret": {
  13399. "type": "string",
  13400. "x-go-name": "ClientSecret"
  13401. },
  13402. "created": {
  13403. "type": "string",
  13404. "format": "date-time",
  13405. "x-go-name": "Created"
  13406. },
  13407. "id": {
  13408. "type": "integer",
  13409. "format": "int64",
  13410. "x-go-name": "ID"
  13411. },
  13412. "name": {
  13413. "type": "string",
  13414. "x-go-name": "Name"
  13415. },
  13416. "redirect_uris": {
  13417. "type": "array",
  13418. "items": {
  13419. "type": "string"
  13420. },
  13421. "x-go-name": "RedirectURIs"
  13422. }
  13423. },
  13424. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13425. },
  13426. "Organization": {
  13427. "description": "Organization represents an organization",
  13428. "type": "object",
  13429. "properties": {
  13430. "avatar_url": {
  13431. "type": "string",
  13432. "x-go-name": "AvatarURL"
  13433. },
  13434. "description": {
  13435. "type": "string",
  13436. "x-go-name": "Description"
  13437. },
  13438. "full_name": {
  13439. "type": "string",
  13440. "x-go-name": "FullName"
  13441. },
  13442. "id": {
  13443. "type": "integer",
  13444. "format": "int64",
  13445. "x-go-name": "ID"
  13446. },
  13447. "location": {
  13448. "type": "string",
  13449. "x-go-name": "Location"
  13450. },
  13451. "repo_admin_change_team_access": {
  13452. "type": "boolean",
  13453. "x-go-name": "RepoAdminChangeTeamAccess"
  13454. },
  13455. "username": {
  13456. "type": "string",
  13457. "x-go-name": "UserName"
  13458. },
  13459. "visibility": {
  13460. "type": "string",
  13461. "x-go-name": "Visibility"
  13462. },
  13463. "website": {
  13464. "type": "string",
  13465. "x-go-name": "Website"
  13466. }
  13467. },
  13468. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13469. },
  13470. "PRBranchInfo": {
  13471. "description": "PRBranchInfo information about a branch",
  13472. "type": "object",
  13473. "properties": {
  13474. "label": {
  13475. "type": "string",
  13476. "x-go-name": "Name"
  13477. },
  13478. "ref": {
  13479. "type": "string",
  13480. "x-go-name": "Ref"
  13481. },
  13482. "repo": {
  13483. "$ref": "#/definitions/Repository"
  13484. },
  13485. "repo_id": {
  13486. "type": "integer",
  13487. "format": "int64",
  13488. "x-go-name": "RepoID"
  13489. },
  13490. "sha": {
  13491. "type": "string",
  13492. "x-go-name": "Sha"
  13493. }
  13494. },
  13495. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13496. },
  13497. "PayloadCommit": {
  13498. "description": "PayloadCommit represents a commit",
  13499. "type": "object",
  13500. "properties": {
  13501. "added": {
  13502. "type": "array",
  13503. "items": {
  13504. "type": "string"
  13505. },
  13506. "x-go-name": "Added"
  13507. },
  13508. "author": {
  13509. "$ref": "#/definitions/PayloadUser"
  13510. },
  13511. "committer": {
  13512. "$ref": "#/definitions/PayloadUser"
  13513. },
  13514. "id": {
  13515. "description": "sha1 hash of the commit",
  13516. "type": "string",
  13517. "x-go-name": "ID"
  13518. },
  13519. "message": {
  13520. "type": "string",
  13521. "x-go-name": "Message"
  13522. },
  13523. "modified": {
  13524. "type": "array",
  13525. "items": {
  13526. "type": "string"
  13527. },
  13528. "x-go-name": "Modified"
  13529. },
  13530. "removed": {
  13531. "type": "array",
  13532. "items": {
  13533. "type": "string"
  13534. },
  13535. "x-go-name": "Removed"
  13536. },
  13537. "timestamp": {
  13538. "type": "string",
  13539. "format": "date-time",
  13540. "x-go-name": "Timestamp"
  13541. },
  13542. "url": {
  13543. "type": "string",
  13544. "x-go-name": "URL"
  13545. },
  13546. "verification": {
  13547. "$ref": "#/definitions/PayloadCommitVerification"
  13548. }
  13549. },
  13550. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13551. },
  13552. "PayloadCommitVerification": {
  13553. "description": "PayloadCommitVerification represents the GPG verification of a commit",
  13554. "type": "object",
  13555. "properties": {
  13556. "payload": {
  13557. "type": "string",
  13558. "x-go-name": "Payload"
  13559. },
  13560. "reason": {
  13561. "type": "string",
  13562. "x-go-name": "Reason"
  13563. },
  13564. "signature": {
  13565. "type": "string",
  13566. "x-go-name": "Signature"
  13567. },
  13568. "signer": {
  13569. "$ref": "#/definitions/PayloadUser"
  13570. },
  13571. "verified": {
  13572. "type": "boolean",
  13573. "x-go-name": "Verified"
  13574. }
  13575. },
  13576. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13577. },
  13578. "PayloadUser": {
  13579. "description": "PayloadUser represents the author or committer of a commit",
  13580. "type": "object",
  13581. "properties": {
  13582. "email": {
  13583. "type": "string",
  13584. "format": "email",
  13585. "x-go-name": "Email"
  13586. },
  13587. "name": {
  13588. "description": "Full name of the commit author",
  13589. "type": "string",
  13590. "x-go-name": "Name"
  13591. },
  13592. "username": {
  13593. "type": "string",
  13594. "x-go-name": "UserName"
  13595. }
  13596. },
  13597. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13598. },
  13599. "Permission": {
  13600. "description": "Permission represents a set of permissions",
  13601. "type": "object",
  13602. "properties": {
  13603. "admin": {
  13604. "type": "boolean",
  13605. "x-go-name": "Admin"
  13606. },
  13607. "pull": {
  13608. "type": "boolean",
  13609. "x-go-name": "Pull"
  13610. },
  13611. "push": {
  13612. "type": "boolean",
  13613. "x-go-name": "Push"
  13614. }
  13615. },
  13616. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13617. },
  13618. "PublicKey": {
  13619. "description": "PublicKey publickey is a user key to push code to repository",
  13620. "type": "object",
  13621. "properties": {
  13622. "created_at": {
  13623. "type": "string",
  13624. "format": "date-time",
  13625. "x-go-name": "Created"
  13626. },
  13627. "fingerprint": {
  13628. "type": "string",
  13629. "x-go-name": "Fingerprint"
  13630. },
  13631. "id": {
  13632. "type": "integer",
  13633. "format": "int64",
  13634. "x-go-name": "ID"
  13635. },
  13636. "key": {
  13637. "type": "string",
  13638. "x-go-name": "Key"
  13639. },
  13640. "key_type": {
  13641. "type": "string",
  13642. "x-go-name": "KeyType"
  13643. },
  13644. "read_only": {
  13645. "type": "boolean",
  13646. "x-go-name": "ReadOnly"
  13647. },
  13648. "title": {
  13649. "type": "string",
  13650. "x-go-name": "Title"
  13651. },
  13652. "url": {
  13653. "type": "string",
  13654. "x-go-name": "URL"
  13655. },
  13656. "user": {
  13657. "$ref": "#/definitions/User"
  13658. }
  13659. },
  13660. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13661. },
  13662. "PullRequest": {
  13663. "description": "PullRequest represents a pull request",
  13664. "type": "object",
  13665. "properties": {
  13666. "assignee": {
  13667. "$ref": "#/definitions/User"
  13668. },
  13669. "assignees": {
  13670. "type": "array",
  13671. "items": {
  13672. "$ref": "#/definitions/User"
  13673. },
  13674. "x-go-name": "Assignees"
  13675. },
  13676. "base": {
  13677. "$ref": "#/definitions/PRBranchInfo"
  13678. },
  13679. "body": {
  13680. "type": "string",
  13681. "x-go-name": "Body"
  13682. },
  13683. "closed_at": {
  13684. "type": "string",
  13685. "format": "date-time",
  13686. "x-go-name": "Closed"
  13687. },
  13688. "comments": {
  13689. "type": "integer",
  13690. "format": "int64",
  13691. "x-go-name": "Comments"
  13692. },
  13693. "created_at": {
  13694. "type": "string",
  13695. "format": "date-time",
  13696. "x-go-name": "Created"
  13697. },
  13698. "diff_url": {
  13699. "type": "string",
  13700. "x-go-name": "DiffURL"
  13701. },
  13702. "due_date": {
  13703. "type": "string",
  13704. "format": "date-time",
  13705. "x-go-name": "Deadline"
  13706. },
  13707. "head": {
  13708. "$ref": "#/definitions/PRBranchInfo"
  13709. },
  13710. "html_url": {
  13711. "type": "string",
  13712. "x-go-name": "HTMLURL"
  13713. },
  13714. "id": {
  13715. "type": "integer",
  13716. "format": "int64",
  13717. "x-go-name": "ID"
  13718. },
  13719. "is_locked": {
  13720. "type": "boolean",
  13721. "x-go-name": "IsLocked"
  13722. },
  13723. "labels": {
  13724. "type": "array",
  13725. "items": {
  13726. "$ref": "#/definitions/Label"
  13727. },
  13728. "x-go-name": "Labels"
  13729. },
  13730. "merge_base": {
  13731. "type": "string",
  13732. "x-go-name": "MergeBase"
  13733. },
  13734. "merge_commit_sha": {
  13735. "type": "string",
  13736. "x-go-name": "MergedCommitID"
  13737. },
  13738. "mergeable": {
  13739. "type": "boolean",
  13740. "x-go-name": "Mergeable"
  13741. },
  13742. "merged": {
  13743. "type": "boolean",
  13744. "x-go-name": "HasMerged"
  13745. },
  13746. "merged_at": {
  13747. "type": "string",
  13748. "format": "date-time",
  13749. "x-go-name": "Merged"
  13750. },
  13751. "merged_by": {
  13752. "$ref": "#/definitions/User"
  13753. },
  13754. "milestone": {
  13755. "$ref": "#/definitions/Milestone"
  13756. },
  13757. "number": {
  13758. "type": "integer",
  13759. "format": "int64",
  13760. "x-go-name": "Index"
  13761. },
  13762. "patch_url": {
  13763. "type": "string",
  13764. "x-go-name": "PatchURL"
  13765. },
  13766. "state": {
  13767. "$ref": "#/definitions/StateType"
  13768. },
  13769. "title": {
  13770. "type": "string",
  13771. "x-go-name": "Title"
  13772. },
  13773. "updated_at": {
  13774. "type": "string",
  13775. "format": "date-time",
  13776. "x-go-name": "Updated"
  13777. },
  13778. "url": {
  13779. "type": "string",
  13780. "x-go-name": "URL"
  13781. },
  13782. "user": {
  13783. "$ref": "#/definitions/User"
  13784. }
  13785. },
  13786. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13787. },
  13788. "PullRequestMeta": {
  13789. "description": "PullRequestMeta PR info if an issue is a PR",
  13790. "type": "object",
  13791. "properties": {
  13792. "merged": {
  13793. "type": "boolean",
  13794. "x-go-name": "HasMerged"
  13795. },
  13796. "merged_at": {
  13797. "type": "string",
  13798. "format": "date-time",
  13799. "x-go-name": "Merged"
  13800. }
  13801. },
  13802. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13803. },
  13804. "PullReview": {
  13805. "description": "PullReview represents a pull request review",
  13806. "type": "object",
  13807. "properties": {
  13808. "body": {
  13809. "type": "string",
  13810. "x-go-name": "Body"
  13811. },
  13812. "comments_count": {
  13813. "type": "integer",
  13814. "format": "int64",
  13815. "x-go-name": "CodeCommentsCount"
  13816. },
  13817. "commit_id": {
  13818. "type": "string",
  13819. "x-go-name": "CommitID"
  13820. },
  13821. "html_url": {
  13822. "type": "string",
  13823. "x-go-name": "HTMLURL"
  13824. },
  13825. "id": {
  13826. "type": "integer",
  13827. "format": "int64",
  13828. "x-go-name": "ID"
  13829. },
  13830. "official": {
  13831. "type": "boolean",
  13832. "x-go-name": "Official"
  13833. },
  13834. "pull_request_url": {
  13835. "type": "string",
  13836. "x-go-name": "HTMLPullURL"
  13837. },
  13838. "stale": {
  13839. "type": "boolean",
  13840. "x-go-name": "Stale"
  13841. },
  13842. "state": {
  13843. "$ref": "#/definitions/ReviewStateType"
  13844. },
  13845. "submitted_at": {
  13846. "type": "string",
  13847. "format": "date-time",
  13848. "x-go-name": "Submitted"
  13849. },
  13850. "user": {
  13851. "$ref": "#/definitions/User"
  13852. }
  13853. },
  13854. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13855. },
  13856. "PullReviewComment": {
  13857. "description": "PullReviewComment represents a comment on a pull request review",
  13858. "type": "object",
  13859. "properties": {
  13860. "body": {
  13861. "type": "string",
  13862. "x-go-name": "Body"
  13863. },
  13864. "commit_id": {
  13865. "type": "string",
  13866. "x-go-name": "CommitID"
  13867. },
  13868. "created_at": {
  13869. "type": "string",
  13870. "format": "date-time",
  13871. "x-go-name": "Created"
  13872. },
  13873. "diff_hunk": {
  13874. "type": "string",
  13875. "x-go-name": "DiffHunk"
  13876. },
  13877. "html_url": {
  13878. "type": "string",
  13879. "x-go-name": "HTMLURL"
  13880. },
  13881. "id": {
  13882. "type": "integer",
  13883. "format": "int64",
  13884. "x-go-name": "ID"
  13885. },
  13886. "original_commit_id": {
  13887. "type": "string",
  13888. "x-go-name": "OrigCommitID"
  13889. },
  13890. "original_position": {
  13891. "type": "integer",
  13892. "format": "uint64",
  13893. "x-go-name": "OldLineNum"
  13894. },
  13895. "path": {
  13896. "type": "string",
  13897. "x-go-name": "Path"
  13898. },
  13899. "position": {
  13900. "type": "integer",
  13901. "format": "uint64",
  13902. "x-go-name": "LineNum"
  13903. },
  13904. "pull_request_review_id": {
  13905. "type": "integer",
  13906. "format": "int64",
  13907. "x-go-name": "ReviewID"
  13908. },
  13909. "pull_request_url": {
  13910. "type": "string",
  13911. "x-go-name": "HTMLPullURL"
  13912. },
  13913. "updated_at": {
  13914. "type": "string",
  13915. "format": "date-time",
  13916. "x-go-name": "Updated"
  13917. },
  13918. "user": {
  13919. "$ref": "#/definitions/User"
  13920. }
  13921. },
  13922. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13923. },
  13924. "Reaction": {
  13925. "description": "Reaction contain one reaction",
  13926. "type": "object",
  13927. "properties": {
  13928. "content": {
  13929. "type": "string",
  13930. "x-go-name": "Reaction"
  13931. },
  13932. "created_at": {
  13933. "type": "string",
  13934. "format": "date-time",
  13935. "x-go-name": "Created"
  13936. },
  13937. "user": {
  13938. "$ref": "#/definitions/User"
  13939. }
  13940. },
  13941. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13942. },
  13943. "Reference": {
  13944. "type": "object",
  13945. "title": "Reference represents a Git reference.",
  13946. "properties": {
  13947. "object": {
  13948. "$ref": "#/definitions/GitObject"
  13949. },
  13950. "ref": {
  13951. "type": "string",
  13952. "x-go-name": "Ref"
  13953. },
  13954. "url": {
  13955. "type": "string",
  13956. "x-go-name": "URL"
  13957. }
  13958. },
  13959. "x-go-package": "code.gitea.io/gitea/modules/structs"
  13960. },
  13961. "Release": {
  13962. "description": "Release represents a repository release",
  13963. "type": "object",
  13964. "properties": {
  13965. "assets": {
  13966. "type": "array",
  13967. "items": {
  13968. "$ref": "#/definitions/Attachment"
  13969. },
  13970. "x-go-name": "Attachments"
  13971. },
  13972. "author": {
  13973. "$ref": "#/definitions/User"
  13974. },
  13975. "body": {
  13976. "type": "string",
  13977. "x-go-name": "Note"
  13978. },
  13979. "created_at": {
  13980. "type": "string",
  13981. "format": "date-time",
  13982. "x-go-name": "CreatedAt"
  13983. },
  13984. "draft": {
  13985. "type": "boolean",
  13986. "x-go-name": "IsDraft"
  13987. },
  13988. "html_url": {
  13989. "type": "string",
  13990. "x-go-name": "HTMLURL"
  13991. },
  13992. "id": {
  13993. "type": "integer",
  13994. "format": "int64",
  13995. "x-go-name": "ID"
  13996. },
  13997. "name": {
  13998. "type": "string",
  13999. "x-go-name": "Title"
  14000. },
  14001. "prerelease": {
  14002. "type": "boolean",
  14003. "x-go-name": "IsPrerelease"
  14004. },
  14005. "published_at": {
  14006. "type": "string",
  14007. "format": "date-time",
  14008. "x-go-name": "PublishedAt"
  14009. },
  14010. "tag_name": {
  14011. "type": "string",
  14012. "x-go-name": "TagName"
  14013. },
  14014. "tarball_url": {
  14015. "type": "string",
  14016. "x-go-name": "TarURL"
  14017. },
  14018. "target_commitish": {
  14019. "type": "string",
  14020. "x-go-name": "Target"
  14021. },
  14022. "url": {
  14023. "type": "string",
  14024. "x-go-name": "URL"
  14025. },
  14026. "zipball_url": {
  14027. "type": "string",
  14028. "x-go-name": "ZipURL"
  14029. }
  14030. },
  14031. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14032. },
  14033. "RepoCommit": {
  14034. "type": "object",
  14035. "title": "RepoCommit contains information of a commit in the context of a repository.",
  14036. "properties": {
  14037. "author": {
  14038. "$ref": "#/definitions/CommitUser"
  14039. },
  14040. "committer": {
  14041. "$ref": "#/definitions/CommitUser"
  14042. },
  14043. "message": {
  14044. "type": "string",
  14045. "x-go-name": "Message"
  14046. },
  14047. "tree": {
  14048. "$ref": "#/definitions/CommitMeta"
  14049. },
  14050. "url": {
  14051. "type": "string",
  14052. "x-go-name": "URL"
  14053. }
  14054. },
  14055. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14056. },
  14057. "RepoTopicOptions": {
  14058. "description": "RepoTopicOptions a collection of repo topic names",
  14059. "type": "object",
  14060. "properties": {
  14061. "topics": {
  14062. "description": "list of topic names",
  14063. "type": "array",
  14064. "items": {
  14065. "type": "string"
  14066. },
  14067. "x-go-name": "Topics"
  14068. }
  14069. },
  14070. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14071. },
  14072. "Repository": {
  14073. "description": "Repository represents a repository",
  14074. "type": "object",
  14075. "properties": {
  14076. "allow_merge_commits": {
  14077. "type": "boolean",
  14078. "x-go-name": "AllowMerge"
  14079. },
  14080. "allow_rebase": {
  14081. "type": "boolean",
  14082. "x-go-name": "AllowRebase"
  14083. },
  14084. "allow_rebase_explicit": {
  14085. "type": "boolean",
  14086. "x-go-name": "AllowRebaseMerge"
  14087. },
  14088. "allow_squash_merge": {
  14089. "type": "boolean",
  14090. "x-go-name": "AllowSquash"
  14091. },
  14092. "archived": {
  14093. "type": "boolean",
  14094. "x-go-name": "Archived"
  14095. },
  14096. "avatar_url": {
  14097. "type": "string",
  14098. "x-go-name": "AvatarURL"
  14099. },
  14100. "clone_url": {
  14101. "type": "string",
  14102. "x-go-name": "CloneURL"
  14103. },
  14104. "created_at": {
  14105. "type": "string",
  14106. "format": "date-time",
  14107. "x-go-name": "Created"
  14108. },
  14109. "default_branch": {
  14110. "type": "string",
  14111. "x-go-name": "DefaultBranch"
  14112. },
  14113. "description": {
  14114. "type": "string",
  14115. "x-go-name": "Description"
  14116. },
  14117. "empty": {
  14118. "type": "boolean",
  14119. "x-go-name": "Empty"
  14120. },
  14121. "external_tracker": {
  14122. "$ref": "#/definitions/ExternalTracker"
  14123. },
  14124. "external_wiki": {
  14125. "$ref": "#/definitions/ExternalWiki"
  14126. },
  14127. "fork": {
  14128. "type": "boolean",
  14129. "x-go-name": "Fork"
  14130. },
  14131. "forks_count": {
  14132. "type": "integer",
  14133. "format": "int64",
  14134. "x-go-name": "Forks"
  14135. },
  14136. "full_name": {
  14137. "type": "string",
  14138. "x-go-name": "FullName"
  14139. },
  14140. "has_issues": {
  14141. "type": "boolean",
  14142. "x-go-name": "HasIssues"
  14143. },
  14144. "has_pull_requests": {
  14145. "type": "boolean",
  14146. "x-go-name": "HasPullRequests"
  14147. },
  14148. "has_wiki": {
  14149. "type": "boolean",
  14150. "x-go-name": "HasWiki"
  14151. },
  14152. "html_url": {
  14153. "type": "string",
  14154. "x-go-name": "HTMLURL"
  14155. },
  14156. "id": {
  14157. "type": "integer",
  14158. "format": "int64",
  14159. "x-go-name": "ID"
  14160. },
  14161. "ignore_whitespace_conflicts": {
  14162. "type": "boolean",
  14163. "x-go-name": "IgnoreWhitespaceConflicts"
  14164. },
  14165. "internal": {
  14166. "type": "boolean",
  14167. "x-go-name": "Internal"
  14168. },
  14169. "internal_tracker": {
  14170. "$ref": "#/definitions/InternalTracker"
  14171. },
  14172. "mirror": {
  14173. "type": "boolean",
  14174. "x-go-name": "Mirror"
  14175. },
  14176. "name": {
  14177. "type": "string",
  14178. "x-go-name": "Name"
  14179. },
  14180. "open_issues_count": {
  14181. "type": "integer",
  14182. "format": "int64",
  14183. "x-go-name": "OpenIssues"
  14184. },
  14185. "open_pr_counter": {
  14186. "type": "integer",
  14187. "format": "int64",
  14188. "x-go-name": "OpenPulls"
  14189. },
  14190. "original_url": {
  14191. "type": "string",
  14192. "x-go-name": "OriginalURL"
  14193. },
  14194. "owner": {
  14195. "$ref": "#/definitions/User"
  14196. },
  14197. "parent": {
  14198. "$ref": "#/definitions/Repository"
  14199. },
  14200. "permissions": {
  14201. "$ref": "#/definitions/Permission"
  14202. },
  14203. "private": {
  14204. "type": "boolean",
  14205. "x-go-name": "Private"
  14206. },
  14207. "release_counter": {
  14208. "type": "integer",
  14209. "format": "int64",
  14210. "x-go-name": "Releases"
  14211. },
  14212. "size": {
  14213. "type": "integer",
  14214. "format": "int64",
  14215. "x-go-name": "Size"
  14216. },
  14217. "ssh_url": {
  14218. "type": "string",
  14219. "x-go-name": "SSHURL"
  14220. },
  14221. "stars_count": {
  14222. "type": "integer",
  14223. "format": "int64",
  14224. "x-go-name": "Stars"
  14225. },
  14226. "template": {
  14227. "type": "boolean",
  14228. "x-go-name": "Template"
  14229. },
  14230. "updated_at": {
  14231. "type": "string",
  14232. "format": "date-time",
  14233. "x-go-name": "Updated"
  14234. },
  14235. "watchers_count": {
  14236. "type": "integer",
  14237. "format": "int64",
  14238. "x-go-name": "Watchers"
  14239. },
  14240. "website": {
  14241. "type": "string",
  14242. "x-go-name": "Website"
  14243. }
  14244. },
  14245. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14246. },
  14247. "RepositoryMeta": {
  14248. "description": "RepositoryMeta basic repository information",
  14249. "type": "object",
  14250. "properties": {
  14251. "full_name": {
  14252. "type": "string",
  14253. "x-go-name": "FullName"
  14254. },
  14255. "id": {
  14256. "type": "integer",
  14257. "format": "int64",
  14258. "x-go-name": "ID"
  14259. },
  14260. "name": {
  14261. "type": "string",
  14262. "x-go-name": "Name"
  14263. },
  14264. "owner": {
  14265. "type": "string",
  14266. "x-go-name": "Owner"
  14267. }
  14268. },
  14269. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14270. },
  14271. "ReviewStateType": {
  14272. "description": "ReviewStateType review state type",
  14273. "type": "string",
  14274. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14275. },
  14276. "SearchResults": {
  14277. "description": "SearchResults results of a successful search",
  14278. "type": "object",
  14279. "properties": {
  14280. "data": {
  14281. "type": "array",
  14282. "items": {
  14283. "$ref": "#/definitions/Repository"
  14284. },
  14285. "x-go-name": "Data"
  14286. },
  14287. "ok": {
  14288. "type": "boolean",
  14289. "x-go-name": "OK"
  14290. }
  14291. },
  14292. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14293. },
  14294. "ServerVersion": {
  14295. "description": "ServerVersion wraps the version of the server",
  14296. "type": "object",
  14297. "properties": {
  14298. "version": {
  14299. "type": "string",
  14300. "x-go-name": "Version"
  14301. }
  14302. },
  14303. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14304. },
  14305. "StateType": {
  14306. "description": "StateType issue state type",
  14307. "type": "string",
  14308. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14309. },
  14310. "Status": {
  14311. "description": "Status holds a single Status of a single Commit",
  14312. "type": "object",
  14313. "properties": {
  14314. "context": {
  14315. "type": "string",
  14316. "x-go-name": "Context"
  14317. },
  14318. "created_at": {
  14319. "type": "string",
  14320. "format": "date-time",
  14321. "x-go-name": "Created"
  14322. },
  14323. "creator": {
  14324. "$ref": "#/definitions/User"
  14325. },
  14326. "description": {
  14327. "type": "string",
  14328. "x-go-name": "Description"
  14329. },
  14330. "id": {
  14331. "type": "integer",
  14332. "format": "int64",
  14333. "x-go-name": "ID"
  14334. },
  14335. "status": {
  14336. "$ref": "#/definitions/StatusState"
  14337. },
  14338. "target_url": {
  14339. "type": "string",
  14340. "x-go-name": "TargetURL"
  14341. },
  14342. "updated_at": {
  14343. "type": "string",
  14344. "format": "date-time",
  14345. "x-go-name": "Updated"
  14346. },
  14347. "url": {
  14348. "type": "string",
  14349. "x-go-name": "URL"
  14350. }
  14351. },
  14352. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14353. },
  14354. "StatusState": {
  14355. "description": "StatusState holds the state of a Status\nIt can be \"pending\", \"success\", \"error\", \"failure\", and \"warning\"",
  14356. "type": "string",
  14357. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14358. },
  14359. "StopWatch": {
  14360. "description": "StopWatch represent a running stopwatch",
  14361. "type": "object",
  14362. "properties": {
  14363. "created": {
  14364. "type": "string",
  14365. "format": "date-time",
  14366. "x-go-name": "Created"
  14367. },
  14368. "issue_index": {
  14369. "type": "integer",
  14370. "format": "int64",
  14371. "x-go-name": "IssueIndex"
  14372. }
  14373. },
  14374. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14375. },
  14376. "SubmitPullReviewOptions": {
  14377. "description": "SubmitPullReviewOptions are options to submit a pending pull review",
  14378. "type": "object",
  14379. "properties": {
  14380. "body": {
  14381. "type": "string",
  14382. "x-go-name": "Body"
  14383. },
  14384. "event": {
  14385. "$ref": "#/definitions/ReviewStateType"
  14386. }
  14387. },
  14388. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14389. },
  14390. "Tag": {
  14391. "description": "Tag represents a repository tag",
  14392. "type": "object",
  14393. "properties": {
  14394. "commit": {
  14395. "$ref": "#/definitions/CommitMeta"
  14396. },
  14397. "id": {
  14398. "type": "string",
  14399. "x-go-name": "ID"
  14400. },
  14401. "name": {
  14402. "type": "string",
  14403. "x-go-name": "Name"
  14404. },
  14405. "tarball_url": {
  14406. "type": "string",
  14407. "x-go-name": "TarballURL"
  14408. },
  14409. "zipball_url": {
  14410. "type": "string",
  14411. "x-go-name": "ZipballURL"
  14412. }
  14413. },
  14414. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14415. },
  14416. "Team": {
  14417. "description": "Team represents a team in an organization",
  14418. "type": "object",
  14419. "properties": {
  14420. "can_create_org_repo": {
  14421. "type": "boolean",
  14422. "x-go-name": "CanCreateOrgRepo"
  14423. },
  14424. "description": {
  14425. "type": "string",
  14426. "x-go-name": "Description"
  14427. },
  14428. "id": {
  14429. "type": "integer",
  14430. "format": "int64",
  14431. "x-go-name": "ID"
  14432. },
  14433. "includes_all_repositories": {
  14434. "type": "boolean",
  14435. "x-go-name": "IncludesAllRepositories"
  14436. },
  14437. "name": {
  14438. "type": "string",
  14439. "x-go-name": "Name"
  14440. },
  14441. "organization": {
  14442. "$ref": "#/definitions/Organization"
  14443. },
  14444. "permission": {
  14445. "type": "string",
  14446. "enum": [
  14447. "none",
  14448. "read",
  14449. "write",
  14450. "admin",
  14451. "owner"
  14452. ],
  14453. "x-go-name": "Permission"
  14454. },
  14455. "units": {
  14456. "type": "array",
  14457. "items": {
  14458. "type": "string"
  14459. },
  14460. "x-go-name": "Units",
  14461. "example": [
  14462. "repo.code",
  14463. "repo.issues",
  14464. "repo.ext_issues",
  14465. "repo.wiki",
  14466. "repo.pulls",
  14467. "repo.releases",
  14468. "repo.ext_wiki"
  14469. ]
  14470. }
  14471. },
  14472. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14473. },
  14474. "TimeStamp": {
  14475. "description": "TimeStamp defines a timestamp",
  14476. "type": "integer",
  14477. "format": "int64",
  14478. "x-go-package": "code.gitea.io/gitea/modules/timeutil"
  14479. },
  14480. "TopicName": {
  14481. "description": "TopicName a list of repo topic names",
  14482. "type": "object",
  14483. "properties": {
  14484. "topics": {
  14485. "type": "array",
  14486. "items": {
  14487. "type": "string"
  14488. },
  14489. "x-go-name": "TopicNames"
  14490. }
  14491. },
  14492. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14493. },
  14494. "TopicResponse": {
  14495. "description": "TopicResponse for returning topics",
  14496. "type": "object",
  14497. "properties": {
  14498. "created": {
  14499. "type": "string",
  14500. "format": "date-time",
  14501. "x-go-name": "Created"
  14502. },
  14503. "id": {
  14504. "type": "integer",
  14505. "format": "int64",
  14506. "x-go-name": "ID"
  14507. },
  14508. "repo_count": {
  14509. "type": "integer",
  14510. "format": "int64",
  14511. "x-go-name": "RepoCount"
  14512. },
  14513. "topic_name": {
  14514. "type": "string",
  14515. "x-go-name": "Name"
  14516. },
  14517. "updated": {
  14518. "type": "string",
  14519. "format": "date-time",
  14520. "x-go-name": "Updated"
  14521. }
  14522. },
  14523. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14524. },
  14525. "TrackedTime": {
  14526. "description": "TrackedTime worked time for an issue / pr",
  14527. "type": "object",
  14528. "properties": {
  14529. "created": {
  14530. "type": "string",
  14531. "format": "date-time",
  14532. "x-go-name": "Created"
  14533. },
  14534. "id": {
  14535. "type": "integer",
  14536. "format": "int64",
  14537. "x-go-name": "ID"
  14538. },
  14539. "issue": {
  14540. "$ref": "#/definitions/Issue"
  14541. },
  14542. "issue_id": {
  14543. "description": "deprecated (only for backwards compatibility)",
  14544. "type": "integer",
  14545. "format": "int64",
  14546. "x-go-name": "IssueID"
  14547. },
  14548. "time": {
  14549. "description": "Time in seconds",
  14550. "type": "integer",
  14551. "format": "int64",
  14552. "x-go-name": "Time"
  14553. },
  14554. "user_id": {
  14555. "description": "deprecated (only for backwards compatibility)",
  14556. "type": "integer",
  14557. "format": "int64",
  14558. "x-go-name": "UserID"
  14559. },
  14560. "user_name": {
  14561. "type": "string",
  14562. "x-go-name": "UserName"
  14563. }
  14564. },
  14565. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14566. },
  14567. "TransferRepoOption": {
  14568. "description": "TransferRepoOption options when transfer a repository's ownership",
  14569. "type": "object",
  14570. "required": [
  14571. "new_owner"
  14572. ],
  14573. "properties": {
  14574. "new_owner": {
  14575. "type": "string",
  14576. "x-go-name": "NewOwner"
  14577. },
  14578. "team_ids": {
  14579. "description": "ID of the team or teams to add to the repository. Teams can only be added to organization-owned repositories.",
  14580. "type": "array",
  14581. "items": {
  14582. "type": "integer",
  14583. "format": "int64"
  14584. },
  14585. "x-go-name": "TeamIDs"
  14586. }
  14587. },
  14588. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14589. },
  14590. "UpdateFileOptions": {
  14591. "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)",
  14592. "type": "object",
  14593. "required": [
  14594. "sha",
  14595. "content"
  14596. ],
  14597. "properties": {
  14598. "author": {
  14599. "$ref": "#/definitions/Identity"
  14600. },
  14601. "branch": {
  14602. "description": "branch (optional) to base this file from. if not given, the default branch is used",
  14603. "type": "string",
  14604. "x-go-name": "BranchName"
  14605. },
  14606. "committer": {
  14607. "$ref": "#/definitions/Identity"
  14608. },
  14609. "content": {
  14610. "description": "content must be base64 encoded",
  14611. "type": "string",
  14612. "x-go-name": "Content"
  14613. },
  14614. "dates": {
  14615. "$ref": "#/definitions/CommitDateOptions"
  14616. },
  14617. "from_path": {
  14618. "description": "from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL",
  14619. "type": "string",
  14620. "x-go-name": "FromPath"
  14621. },
  14622. "message": {
  14623. "description": "message (optional) for the commit of this file. if not supplied, a default message will be used",
  14624. "type": "string",
  14625. "x-go-name": "Message"
  14626. },
  14627. "new_branch": {
  14628. "description": "new_branch (optional) will make a new branch from `branch` before creating the file",
  14629. "type": "string",
  14630. "x-go-name": "NewBranchName"
  14631. },
  14632. "sha": {
  14633. "description": "sha is the SHA for the file that already exists",
  14634. "type": "string",
  14635. "x-go-name": "SHA"
  14636. }
  14637. },
  14638. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14639. },
  14640. "User": {
  14641. "description": "User represents a user",
  14642. "type": "object",
  14643. "properties": {
  14644. "avatar_url": {
  14645. "description": "URL to the user's avatar",
  14646. "type": "string",
  14647. "x-go-name": "AvatarURL"
  14648. },
  14649. "created": {
  14650. "type": "string",
  14651. "format": "date-time",
  14652. "x-go-name": "Created"
  14653. },
  14654. "email": {
  14655. "type": "string",
  14656. "format": "email",
  14657. "x-go-name": "Email"
  14658. },
  14659. "full_name": {
  14660. "description": "the user's full name",
  14661. "type": "string",
  14662. "x-go-name": "FullName"
  14663. },
  14664. "id": {
  14665. "description": "the user's id",
  14666. "type": "integer",
  14667. "format": "int64",
  14668. "x-go-name": "ID"
  14669. },
  14670. "is_admin": {
  14671. "description": "Is the user an administrator",
  14672. "type": "boolean",
  14673. "x-go-name": "IsAdmin"
  14674. },
  14675. "language": {
  14676. "description": "User locale",
  14677. "type": "string",
  14678. "x-go-name": "Language"
  14679. },
  14680. "last_login": {
  14681. "type": "string",
  14682. "format": "date-time",
  14683. "x-go-name": "LastLogin"
  14684. },
  14685. "login": {
  14686. "description": "the user's username",
  14687. "type": "string",
  14688. "x-go-name": "UserName"
  14689. }
  14690. },
  14691. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14692. },
  14693. "UserHeatmapData": {
  14694. "description": "UserHeatmapData represents the data needed to create a heatmap",
  14695. "type": "object",
  14696. "properties": {
  14697. "contributions": {
  14698. "type": "integer",
  14699. "format": "int64",
  14700. "x-go-name": "Contributions"
  14701. },
  14702. "timestamp": {
  14703. "$ref": "#/definitions/TimeStamp"
  14704. }
  14705. },
  14706. "x-go-package": "code.gitea.io/gitea/models"
  14707. },
  14708. "WatchInfo": {
  14709. "description": "WatchInfo represents an API watch status of one repository",
  14710. "type": "object",
  14711. "properties": {
  14712. "created_at": {
  14713. "type": "string",
  14714. "format": "date-time",
  14715. "x-go-name": "CreatedAt"
  14716. },
  14717. "ignored": {
  14718. "type": "boolean",
  14719. "x-go-name": "Ignored"
  14720. },
  14721. "reason": {
  14722. "type": "object",
  14723. "x-go-name": "Reason"
  14724. },
  14725. "repository_url": {
  14726. "type": "string",
  14727. "x-go-name": "RepositoryURL"
  14728. },
  14729. "subscribed": {
  14730. "type": "boolean",
  14731. "x-go-name": "Subscribed"
  14732. },
  14733. "url": {
  14734. "type": "string",
  14735. "x-go-name": "URL"
  14736. }
  14737. },
  14738. "x-go-package": "code.gitea.io/gitea/modules/structs"
  14739. }
  14740. },
  14741. "responses": {
  14742. "AccessToken": {
  14743. "description": "AccessToken represents an API access token.",
  14744. "headers": {
  14745. "id": {
  14746. "type": "integer",
  14747. "format": "int64"
  14748. },
  14749. "name": {
  14750. "type": "string"
  14751. },
  14752. "sha1": {
  14753. "type": "string"
  14754. },
  14755. "token_last_eight": {
  14756. "type": "string"
  14757. }
  14758. }
  14759. },
  14760. "AccessTokenList": {
  14761. "description": "AccessTokenList represents a list of API access token.",
  14762. "schema": {
  14763. "type": "array",
  14764. "items": {
  14765. "$ref": "#/definitions/AccessToken"
  14766. }
  14767. }
  14768. },
  14769. "AnnotatedTag": {
  14770. "description": "AnnotatedTag",
  14771. "schema": {
  14772. "$ref": "#/definitions/AnnotatedTag"
  14773. }
  14774. },
  14775. "Attachment": {
  14776. "description": "Attachment",
  14777. "schema": {
  14778. "$ref": "#/definitions/Attachment"
  14779. }
  14780. },
  14781. "AttachmentList": {
  14782. "description": "AttachmentList",
  14783. "schema": {
  14784. "type": "array",
  14785. "items": {
  14786. "$ref": "#/definitions/Attachment"
  14787. }
  14788. }
  14789. },
  14790. "Branch": {
  14791. "description": "Branch",
  14792. "schema": {
  14793. "$ref": "#/definitions/Branch"
  14794. }
  14795. },
  14796. "BranchList": {
  14797. "description": "BranchList",
  14798. "schema": {
  14799. "type": "array",
  14800. "items": {
  14801. "$ref": "#/definitions/Branch"
  14802. }
  14803. }
  14804. },
  14805. "BranchProtection": {
  14806. "description": "BranchProtection",
  14807. "schema": {
  14808. "$ref": "#/definitions/BranchProtection"
  14809. }
  14810. },
  14811. "BranchProtectionList": {
  14812. "description": "BranchProtectionList",
  14813. "schema": {
  14814. "type": "array",
  14815. "items": {
  14816. "$ref": "#/definitions/BranchProtection"
  14817. }
  14818. }
  14819. },
  14820. "Comment": {
  14821. "description": "Comment",
  14822. "schema": {
  14823. "$ref": "#/definitions/Comment"
  14824. }
  14825. },
  14826. "CommentList": {
  14827. "description": "CommentList",
  14828. "schema": {
  14829. "type": "array",
  14830. "items": {
  14831. "$ref": "#/definitions/Comment"
  14832. }
  14833. }
  14834. },
  14835. "Commit": {
  14836. "description": "Commit",
  14837. "schema": {
  14838. "$ref": "#/definitions/Commit"
  14839. }
  14840. },
  14841. "CommitList": {
  14842. "description": "CommitList",
  14843. "schema": {
  14844. "type": "array",
  14845. "items": {
  14846. "$ref": "#/definitions/Commit"
  14847. }
  14848. },
  14849. "headers": {
  14850. "X-HasMore": {
  14851. "type": "boolean",
  14852. "description": "True if there is another page"
  14853. },
  14854. "X-Page": {
  14855. "type": "integer",
  14856. "format": "int64",
  14857. "description": "The current page"
  14858. },
  14859. "X-PageCount": {
  14860. "type": "integer",
  14861. "format": "int64",
  14862. "description": "Total number of pages"
  14863. },
  14864. "X-PerPage": {
  14865. "type": "integer",
  14866. "format": "int64",
  14867. "description": "Commits per page"
  14868. },
  14869. "X-Total": {
  14870. "type": "integer",
  14871. "format": "int64",
  14872. "description": "Total commit count"
  14873. }
  14874. }
  14875. },
  14876. "ContentsListResponse": {
  14877. "description": "ContentsListResponse",
  14878. "schema": {
  14879. "type": "array",
  14880. "items": {
  14881. "$ref": "#/definitions/ContentsResponse"
  14882. }
  14883. }
  14884. },
  14885. "ContentsResponse": {
  14886. "description": "ContentsResponse",
  14887. "schema": {
  14888. "$ref": "#/definitions/ContentsResponse"
  14889. }
  14890. },
  14891. "DeployKey": {
  14892. "description": "DeployKey",
  14893. "schema": {
  14894. "$ref": "#/definitions/DeployKey"
  14895. }
  14896. },
  14897. "DeployKeyList": {
  14898. "description": "DeployKeyList",
  14899. "schema": {
  14900. "type": "array",
  14901. "items": {
  14902. "$ref": "#/definitions/DeployKey"
  14903. }
  14904. }
  14905. },
  14906. "EmailList": {
  14907. "description": "EmailList",
  14908. "schema": {
  14909. "type": "array",
  14910. "items": {
  14911. "$ref": "#/definitions/Email"
  14912. }
  14913. }
  14914. },
  14915. "EmptyRepository": {
  14916. "description": "EmptyRepository",
  14917. "schema": {
  14918. "$ref": "#/definitions/APIError"
  14919. }
  14920. },
  14921. "FileDeleteResponse": {
  14922. "description": "FileDeleteResponse",
  14923. "schema": {
  14924. "$ref": "#/definitions/FileDeleteResponse"
  14925. }
  14926. },
  14927. "FileResponse": {
  14928. "description": "FileResponse",
  14929. "schema": {
  14930. "$ref": "#/definitions/FileResponse"
  14931. }
  14932. },
  14933. "GPGKey": {
  14934. "description": "GPGKey",
  14935. "schema": {
  14936. "$ref": "#/definitions/GPGKey"
  14937. }
  14938. },
  14939. "GPGKeyList": {
  14940. "description": "GPGKeyList",
  14941. "schema": {
  14942. "type": "array",
  14943. "items": {
  14944. "$ref": "#/definitions/GPGKey"
  14945. }
  14946. }
  14947. },
  14948. "GeneralRepoSettings": {
  14949. "description": "GeneralRepoSettings",
  14950. "schema": {
  14951. "$ref": "#/definitions/GeneralRepoSettings"
  14952. }
  14953. },
  14954. "GeneralUISettings": {
  14955. "description": "GeneralUISettings",
  14956. "schema": {
  14957. "$ref": "#/definitions/GeneralUISettings"
  14958. }
  14959. },
  14960. "GitBlobResponse": {
  14961. "description": "GitBlobResponse",
  14962. "schema": {
  14963. "$ref": "#/definitions/GitBlobResponse"
  14964. }
  14965. },
  14966. "GitHook": {
  14967. "description": "GitHook",
  14968. "schema": {
  14969. "$ref": "#/definitions/GitHook"
  14970. }
  14971. },
  14972. "GitHookList": {
  14973. "description": "GitHookList",
  14974. "schema": {
  14975. "type": "array",
  14976. "items": {
  14977. "$ref": "#/definitions/GitHook"
  14978. }
  14979. }
  14980. },
  14981. "GitTreeResponse": {
  14982. "description": "GitTreeResponse",
  14983. "schema": {
  14984. "$ref": "#/definitions/GitTreeResponse"
  14985. }
  14986. },
  14987. "Hook": {
  14988. "description": "Hook",
  14989. "schema": {
  14990. "$ref": "#/definitions/Hook"
  14991. }
  14992. },
  14993. "HookList": {
  14994. "description": "HookList",
  14995. "schema": {
  14996. "type": "array",
  14997. "items": {
  14998. "$ref": "#/definitions/Hook"
  14999. }
  15000. }
  15001. },
  15002. "Issue": {
  15003. "description": "Issue",
  15004. "schema": {
  15005. "$ref": "#/definitions/Issue"
  15006. }
  15007. },
  15008. "IssueDeadline": {
  15009. "description": "IssueDeadline",
  15010. "schema": {
  15011. "$ref": "#/definitions/IssueDeadline"
  15012. }
  15013. },
  15014. "IssueList": {
  15015. "description": "IssueList",
  15016. "schema": {
  15017. "type": "array",
  15018. "items": {
  15019. "$ref": "#/definitions/Issue"
  15020. }
  15021. }
  15022. },
  15023. "Label": {
  15024. "description": "Label",
  15025. "schema": {
  15026. "$ref": "#/definitions/Label"
  15027. }
  15028. },
  15029. "LabelList": {
  15030. "description": "LabelList",
  15031. "schema": {
  15032. "type": "array",
  15033. "items": {
  15034. "$ref": "#/definitions/Label"
  15035. }
  15036. }
  15037. },
  15038. "LanguageStatistics": {
  15039. "description": "LanguageStatistics",
  15040. "schema": {
  15041. "type": "object",
  15042. "additionalProperties": {
  15043. "type": "integer",
  15044. "format": "int64"
  15045. }
  15046. }
  15047. },
  15048. "MarkdownRender": {
  15049. "description": "MarkdownRender is a rendered markdown document",
  15050. "schema": {
  15051. "type": "string"
  15052. }
  15053. },
  15054. "Milestone": {
  15055. "description": "Milestone",
  15056. "schema": {
  15057. "$ref": "#/definitions/Milestone"
  15058. }
  15059. },
  15060. "MilestoneList": {
  15061. "description": "MilestoneList",
  15062. "schema": {
  15063. "type": "array",
  15064. "items": {
  15065. "$ref": "#/definitions/Milestone"
  15066. }
  15067. }
  15068. },
  15069. "NotificationCount": {
  15070. "description": "Number of unread notifications",
  15071. "schema": {
  15072. "$ref": "#/definitions/NotificationCount"
  15073. }
  15074. },
  15075. "NotificationThread": {
  15076. "description": "NotificationThread",
  15077. "schema": {
  15078. "$ref": "#/definitions/NotificationThread"
  15079. }
  15080. },
  15081. "NotificationThreadList": {
  15082. "description": "NotificationThreadList",
  15083. "schema": {
  15084. "type": "array",
  15085. "items": {
  15086. "$ref": "#/definitions/NotificationThread"
  15087. }
  15088. }
  15089. },
  15090. "OAuth2Application": {
  15091. "description": "OAuth2Application",
  15092. "schema": {
  15093. "$ref": "#/definitions/OAuth2Application"
  15094. }
  15095. },
  15096. "OAuth2ApplicationList": {
  15097. "description": "OAuth2ApplicationList represents a list of OAuth2 applications.",
  15098. "schema": {
  15099. "type": "array",
  15100. "items": {
  15101. "$ref": "#/definitions/OAuth2Application"
  15102. }
  15103. }
  15104. },
  15105. "Organization": {
  15106. "description": "Organization",
  15107. "schema": {
  15108. "$ref": "#/definitions/Organization"
  15109. }
  15110. },
  15111. "OrganizationList": {
  15112. "description": "OrganizationList",
  15113. "schema": {
  15114. "type": "array",
  15115. "items": {
  15116. "$ref": "#/definitions/Organization"
  15117. }
  15118. }
  15119. },
  15120. "PublicKey": {
  15121. "description": "PublicKey",
  15122. "schema": {
  15123. "$ref": "#/definitions/PublicKey"
  15124. }
  15125. },
  15126. "PublicKeyList": {
  15127. "description": "PublicKeyList",
  15128. "schema": {
  15129. "type": "array",
  15130. "items": {
  15131. "$ref": "#/definitions/PublicKey"
  15132. }
  15133. }
  15134. },
  15135. "PullRequest": {
  15136. "description": "PullRequest",
  15137. "schema": {
  15138. "$ref": "#/definitions/PullRequest"
  15139. }
  15140. },
  15141. "PullRequestList": {
  15142. "description": "PullRequestList",
  15143. "schema": {
  15144. "type": "array",
  15145. "items": {
  15146. "$ref": "#/definitions/PullRequest"
  15147. }
  15148. }
  15149. },
  15150. "PullReview": {
  15151. "description": "PullReview",
  15152. "schema": {
  15153. "$ref": "#/definitions/PullReview"
  15154. }
  15155. },
  15156. "PullReviewComment": {
  15157. "description": "PullComment",
  15158. "schema": {
  15159. "$ref": "#/definitions/PullReviewComment"
  15160. }
  15161. },
  15162. "PullReviewCommentList": {
  15163. "description": "PullCommentList",
  15164. "schema": {
  15165. "type": "array",
  15166. "items": {
  15167. "$ref": "#/definitions/PullReviewComment"
  15168. }
  15169. }
  15170. },
  15171. "PullReviewList": {
  15172. "description": "PullReviewList",
  15173. "schema": {
  15174. "type": "array",
  15175. "items": {
  15176. "$ref": "#/definitions/PullReview"
  15177. }
  15178. }
  15179. },
  15180. "Reaction": {
  15181. "description": "Reaction",
  15182. "schema": {
  15183. "$ref": "#/definitions/Reaction"
  15184. }
  15185. },
  15186. "ReactionList": {
  15187. "description": "ReactionList",
  15188. "schema": {
  15189. "type": "array",
  15190. "items": {
  15191. "$ref": "#/definitions/Reaction"
  15192. }
  15193. }
  15194. },
  15195. "Reference": {
  15196. "description": "Reference",
  15197. "schema": {
  15198. "$ref": "#/definitions/Reference"
  15199. }
  15200. },
  15201. "ReferenceList": {
  15202. "description": "ReferenceList",
  15203. "schema": {
  15204. "type": "array",
  15205. "items": {
  15206. "$ref": "#/definitions/Reference"
  15207. }
  15208. }
  15209. },
  15210. "Release": {
  15211. "description": "Release",
  15212. "schema": {
  15213. "$ref": "#/definitions/Release"
  15214. }
  15215. },
  15216. "ReleaseList": {
  15217. "description": "ReleaseList",
  15218. "schema": {
  15219. "type": "array",
  15220. "items": {
  15221. "$ref": "#/definitions/Release"
  15222. }
  15223. }
  15224. },
  15225. "Repository": {
  15226. "description": "Repository",
  15227. "schema": {
  15228. "$ref": "#/definitions/Repository"
  15229. }
  15230. },
  15231. "RepositoryList": {
  15232. "description": "RepositoryList",
  15233. "schema": {
  15234. "type": "array",
  15235. "items": {
  15236. "$ref": "#/definitions/Repository"
  15237. }
  15238. }
  15239. },
  15240. "SearchResults": {
  15241. "description": "SearchResults",
  15242. "schema": {
  15243. "$ref": "#/definitions/SearchResults"
  15244. }
  15245. },
  15246. "ServerVersion": {
  15247. "description": "ServerVersion",
  15248. "schema": {
  15249. "$ref": "#/definitions/ServerVersion"
  15250. }
  15251. },
  15252. "Status": {
  15253. "description": "Status",
  15254. "schema": {
  15255. "$ref": "#/definitions/Status"
  15256. }
  15257. },
  15258. "StatusList": {
  15259. "description": "StatusList",
  15260. "schema": {
  15261. "type": "array",
  15262. "items": {
  15263. "$ref": "#/definitions/Status"
  15264. }
  15265. }
  15266. },
  15267. "StopWatch": {
  15268. "description": "StopWatch",
  15269. "schema": {
  15270. "$ref": "#/definitions/StopWatch"
  15271. }
  15272. },
  15273. "StopWatchList": {
  15274. "description": "StopWatchList",
  15275. "schema": {
  15276. "type": "array",
  15277. "items": {
  15278. "$ref": "#/definitions/StopWatch"
  15279. }
  15280. }
  15281. },
  15282. "StringSlice": {
  15283. "description": "StringSlice",
  15284. "schema": {
  15285. "type": "array",
  15286. "items": {
  15287. "type": "string"
  15288. }
  15289. }
  15290. },
  15291. "Tag": {
  15292. "description": "Tag",
  15293. "schema": {
  15294. "$ref": "#/definitions/Tag"
  15295. }
  15296. },
  15297. "TagList": {
  15298. "description": "TagList",
  15299. "schema": {
  15300. "type": "array",
  15301. "items": {
  15302. "$ref": "#/definitions/Tag"
  15303. }
  15304. }
  15305. },
  15306. "Team": {
  15307. "description": "Team",
  15308. "schema": {
  15309. "$ref": "#/definitions/Team"
  15310. }
  15311. },
  15312. "TeamList": {
  15313. "description": "TeamList",
  15314. "schema": {
  15315. "type": "array",
  15316. "items": {
  15317. "$ref": "#/definitions/Team"
  15318. }
  15319. }
  15320. },
  15321. "TopicListResponse": {
  15322. "description": "TopicListResponse",
  15323. "schema": {
  15324. "type": "array",
  15325. "items": {
  15326. "$ref": "#/definitions/TopicResponse"
  15327. }
  15328. }
  15329. },
  15330. "TopicNames": {
  15331. "description": "TopicNames",
  15332. "schema": {
  15333. "$ref": "#/definitions/TopicName"
  15334. }
  15335. },
  15336. "TrackedTime": {
  15337. "description": "TrackedTime",
  15338. "schema": {
  15339. "$ref": "#/definitions/TrackedTime"
  15340. }
  15341. },
  15342. "TrackedTimeList": {
  15343. "description": "TrackedTimeList",
  15344. "schema": {
  15345. "type": "array",
  15346. "items": {
  15347. "$ref": "#/definitions/TrackedTime"
  15348. }
  15349. }
  15350. },
  15351. "User": {
  15352. "description": "User",
  15353. "schema": {
  15354. "$ref": "#/definitions/User"
  15355. }
  15356. },
  15357. "UserHeatmapData": {
  15358. "description": "UserHeatmapData",
  15359. "schema": {
  15360. "type": "array",
  15361. "items": {
  15362. "$ref": "#/definitions/UserHeatmapData"
  15363. }
  15364. }
  15365. },
  15366. "UserList": {
  15367. "description": "UserList",
  15368. "schema": {
  15369. "type": "array",
  15370. "items": {
  15371. "$ref": "#/definitions/User"
  15372. }
  15373. }
  15374. },
  15375. "WatchInfo": {
  15376. "description": "WatchInfo",
  15377. "schema": {
  15378. "$ref": "#/definitions/WatchInfo"
  15379. }
  15380. },
  15381. "empty": {
  15382. "description": "APIEmpty is an empty response"
  15383. },
  15384. "error": {
  15385. "description": "APIError is error format response",
  15386. "headers": {
  15387. "message": {
  15388. "type": "string"
  15389. },
  15390. "url": {
  15391. "type": "string"
  15392. }
  15393. }
  15394. },
  15395. "forbidden": {
  15396. "description": "APIForbiddenError is a forbidden error response",
  15397. "headers": {
  15398. "message": {
  15399. "type": "string"
  15400. },
  15401. "url": {
  15402. "type": "string"
  15403. }
  15404. }
  15405. },
  15406. "invalidTopicsError": {
  15407. "description": "APIInvalidTopicsError is error format response to invalid topics",
  15408. "headers": {
  15409. "invalidTopics": {
  15410. "type": "array",
  15411. "items": {
  15412. "type": "string"
  15413. }
  15414. },
  15415. "message": {
  15416. "type": "string"
  15417. }
  15418. }
  15419. },
  15420. "notFound": {
  15421. "description": "APINotFound is a not found empty response"
  15422. },
  15423. "parameterBodies": {
  15424. "description": "parameterBodies",
  15425. "schema": {
  15426. "$ref": "#/definitions/SubmitPullReviewOptions"
  15427. }
  15428. },
  15429. "redirect": {
  15430. "description": "APIRedirect is a redirect response"
  15431. },
  15432. "string": {
  15433. "description": "APIString is a string response",
  15434. "schema": {
  15435. "type": "string"
  15436. }
  15437. },
  15438. "validationError": {
  15439. "description": "APIValidationError is error format response related to input validation",
  15440. "headers": {
  15441. "message": {
  15442. "type": "string"
  15443. },
  15444. "url": {
  15445. "type": "string"
  15446. }
  15447. }
  15448. }
  15449. },
  15450. "securityDefinitions": {
  15451. "AccessToken": {
  15452. "type": "apiKey",
  15453. "name": "access_token",
  15454. "in": "query"
  15455. },
  15456. "AuthorizationHeaderToken": {
  15457. "description": "API tokens must be prepended with \"token\" followed by a space.",
  15458. "type": "apiKey",
  15459. "name": "Authorization",
  15460. "in": "header"
  15461. },
  15462. "BasicAuth": {
  15463. "type": "basic"
  15464. },
  15465. "SudoHeader": {
  15466. "description": "Sudo API request as the user provided as the key. Admin privileges are required.",
  15467. "type": "apiKey",
  15468. "name": "Sudo",
  15469. "in": "header"
  15470. },
  15471. "SudoParam": {
  15472. "description": "Sudo API request as the user provided as the key. Admin privileges are required.",
  15473. "type": "apiKey",
  15474. "name": "sudo",
  15475. "in": "query"
  15476. },
  15477. "Token": {
  15478. "type": "apiKey",
  15479. "name": "token",
  15480. "in": "query"
  15481. }
  15482. },
  15483. "security": [
  15484. {
  15485. "BasicAuth": []
  15486. },
  15487. {
  15488. "Token": []
  15489. },
  15490. {
  15491. "AccessToken": []
  15492. },
  15493. {
  15494. "AuthorizationHeaderToken": []
  15495. },
  15496. {
  15497. "SudoParam": []
  15498. },
  15499. {
  15500. "SudoHeader": []
  15501. }
  15502. ]
  15503. }